Category Archives: OpenWrt

Fresh install of OpenWrt Backfire from Mac OS X 10.6 by tftp

 

This article documents flashing OpenWrt Backfire on Linksys WRT54g v2 and on Asus WL-500g Deluxe and Premium. It uses OS X's built-in tftp to transmit the firmware to the router while it's in recovery mode. Recovery mode is active only for a few seconds in the beginning of the router's boot process.

Firmware retrieval

As of today, the most recent and solid firmware version is Backfire 10.03.1-rc4. The according download links are the following:

Network configuration of OS X

Disregarding the router's network setup before the following installation process, during rescue mode it will always fall back to 192.168.1.1/24. Therefore, if you do not already use a 192.168.1.0/24 subnet, you will have to to add a virtual interface to your Mac.

Therefore, in "System Preferences" open "Network" and follow these steps:

  • Click the little "plus"-sign in the lower left corner
  • Choose "Ethernet" and some random name for the interface
  • Click "Create"
  • Then, from the "Configure IPv4"-dropdown, choose "manually" as network setup
  • Enter "192.168.1.2" as "IP Address" and "255.255.255.0" as "Subnet Mask"
  • Confirm with "Apply" in the lower right corner

Now, you have an addition virtual interface on your shiny OS X-system by which you can feed the router with the new firmware.

Transmitting the firmware

Luckily, OS X comes with the tftp command, so there is no further setup on that part. Simply open a terminal window and type (or copy'n paste):

tftp 192.168.1.1
binary
rexmt 1
timeout 60
trace
Flashing the Linksys WRT54g

Now, type the following line but do not execute yet:

put 

Just before hitting "Enter", unplug and replug the router's power cable. After only a few seconds you should get a lot of output like this:

[...]
sent DATA 
received ACK 
[...]
Flashing the Asus WL-500g Deluxe/Premium

With the Asus routers, the process is basically the same. The difference is that while plugging in the router's power, the reset button has to be pressed. Also important to notice is that Asus routers keep their previous network setup in recovery mode, i.e. you don't have to adjust your network setup to 192.168.1.1. Yet, after flashing, the Asus devices will turn to 192.168.1.1.

First contact with the new system

The above output confirms the successful transmission of your firmware. If nothing went wrong, you will be able to reach your router by web access on http://192.168.1.1. Also, you can already use telnet to gain shell access:

telnet 192.168.1.1

Beware that in case you upgrade from a previous OpenWrt setup, the router might have recovered some of the old setting and therefore starts with the previous networking setup.

Now, you may follow the hints on http://wiki.openwrt.org/doc/howto/basic.config about basic configuration immedately after flashing OpenWrt.

OpenWrt System Upgrade

There are two ways of easily upgrading an OpenWrt system. The old and nowadays deprecated way is:

mtd -r write [image_name] linux

Newer versions (I assume version > backfire) come with the sysupgrade tool:

sysupgrade [image_name] 

Fix for unreadable File System of OpenWrt

If the OpenWrt system reports an unreadable file system try the following:

mtd unlock rootfs_data