Page 326 - Hacking Roomba
P. 326
Chapter 14 — Putting Linux on Roomba 307
Within the White Russian RC5 release are three main variants: bin, micro, and pptp. The only
difference between them is the standard packages that come pre-installed. The bin variety is
the standard release, whereas micro is the smallest possible release, and pptp is just like the
standard but adds PPTP protocol handling ability. PPTP is a method for creating virtual pri-
vate networks between two networks. Many people use PPTP to securely join two network
that are physically separated. OpenWrt includes it for this reason but it’s not used here because
these projects are not meant to replace your main network router. The micro version lacks sev-
eral tools needed, so the bin variant of OpenWrt is used.
In the standard bin release you’ll find firmware files for many different wireless routers. The
ones you want for the WL-HDD are labelled openwrt-brcm-2.4-<type>.trx, where
<type> is the type and size of the flash file system. For the WL-HDD, which has only 4 MB
of flash, you need either the jffs2-4MB or squashfs versions. The SquashFS variant creates
a read-only file system and saves space but is harder to use. For this project, I use the 4 MB
JFFS firmware.
Thus the firmware you want for the WL-HDD is openwrt-brcm-2.4-jffs2-4MB.trx.
Download the file to your PC:
% wget http://downloads.openwrt.org/whiterussian/rc5/bin/ i
openwrt-brcm-2.4-jffs2-4MB.trx
The brcm variant is for any generic Broadcom-based CPU. All supported Asus routers use
this type.
Installing the Firmware
You could install the OpenWrt firmware via the stock Asus web interface, but the TFTP
method is often easier. Plus it’s good to know how to do it in case something goes cata-
strophically wrong. Firmware installation on Asus routers is a little different than the normal
method with Linksys routers. Instead of a straight TFTP transfer, the WL-HDD must be sent
a special TFTP command to enable it to accept new firmware. The details of that command
are described at http://wiki.openwrt.org/OpenWrtDocs/Hardware/Asus/Flashing.
On that page is a link to flash.sh, a script to encapsulate those details. It’s written for the
WL-500g but can be easily modified for the WL-HDD (by changing all occurrences of
192.168.1.1 to 192.168.1.220). The Roombahacking.com site has this modified ver-
sion, called flash-wl-hdd.sh, available for download, and that’s what is used in the steps
below.
To install OpenWrt on the WL-HDD:
1. Disable all network interfaces on your PC except the one Ethernet port that is to be con-
nected to the WL-HDD.
2. Configure your PC to be on the 192.168.1/24 network.
3. Plug the Ethernet cable between your PC and the WL-HDD.