pig-monkey.com

You are currently viewing all posts tagged with os x.

Recovering the Linksys WRT54GL via TFTP

Last May, DD-WRT released the (long in development) v24 of their firmware. I had been running one of the release candidates for it on my Linksys WRT54GL, but decided today to upgrade to the stable release. I downloaded the appropriate file (dd-wrt.v24_std_generic.bin), followed the instructions for flashing through the web GUI, and promptly bricked the router.

It wasn’t totally destroyed. I could still ping the router, but couldn’t access it in any other way. The power light would flash repeatedly, and no other lights came on. No amount of hard resets would fix it.

According to DD-WRT’s wiki article on bad flashes, the repetitive blinking of the power light means that the bootloader is defective, but that the problem might be solved using a TFTP recovery. The idea is that when the router first boots up, there’s a brief moment where it will accept an upload. By pushing through firmware, you are able to temporarily boot the router.

On older Linksys routers, this only works with the official Linksys firmware, so I downloaded the latest version from Linksys’ support page for the WRT54GL. Because the router will only accept the firmware at the very start of the boot process, I first unplugged the router, turning it off. To monitor the router during the process, I started a ping from my machine.

$ ping 192.168.1.1

Then, using the TFTP client that ships with OS X, I executed the upload

$ echo "put FW_WRT54GL_4.30.12.3_US_EN_code.bin" | tftp -e 192.168.1.1
and immediately plugged the router back in. In 10 seconds, TFTP reported that the file had been sent.

At this point, the router stopped responding to my pings for about 30 seconds. When it began replying again, I was able to access the default Linksys web GUI. The first thing I did in the GUI was to hit the “reset to factory defaults” button, which clears the NVRAM of my bad DD-WRT image and installs the fresh Linksys image. After that, I installed a new DD-WRT “mini” image (the WRT54GL requires you flash with “mini” before upgrading to “standard” when moving from the default firmware), by uploading dd-wrt.v24_mini_generic.bin via the upgrade page. This worked without a hitch.

In the DD-WRT web interface, I tried to flash the router with the standard firmware, but was greeted by a vague error message that told me only that the upgrade had failed. I went back to the wiki to see what the differences were between mini and standard and decided that it would be find to leave the router with mini. All I needed was for the router to act as a wireless repeater with a virtual interfaces. The mini firmware supports this, so I was able to setup the router just as before.

An Update

It’s been brought to my attention — repeatedly — that I neglected to post anything for the last month and a half. Oops.

I upgraded my macbook to 10.5.3 earlier tonight. Upon reboot, everything was shiny till I attempted to launch Firefox. It did one little bounce in the dock and gave up. Attempting to run it from the terminal in safe mode was no better.

Of course, OS X does its best to insulate the user from the system, so finding useful logs was out of the question. All /var/log/system.log told me was that Firefox exited with error code 1.

In a fit of desperation, I deleted my version of Firefox and downloaded Firefox 3 RC1. After the install, it launched. So now I’m running that less-than-polished software.

I’ve been running the Firefox 3 betas on my Ubuntu machine at work since February or so. Each release seems to get progressively worse: they’re all of them unstable, slow, and have an annoying new address bar. Now that I made the mistake of updating the work machine to Ubuntu 8.04, I’m stuck with using Beta 5 everyday. (Dear Canonical: Please don’t ship stable releases with beta software. Thanks.) I’ve enjoyed coming home to the stable, usable, and speedy Firefox 2.

To be fair, my Firefox 3 experience up to now was limited only to the Linux versions, and I’d not used the release candidate on any platform. So far, RC1 on OS X doesn’t seem too bad.

TrueCrypt Now Cross-Platform

TrueCrypt is finally available for OS X! Though my primary OS was Linux up till just last November, I’ve been waiting on this for a while longer. Last year I used a Mac at work, and would frequently want to decrypt TrueCrypt disks that I carry around on my flash drive.

I’m plan to donate to the project when my next paycheck comes in.