Table of Contents
Someone had to be brave enough to take on the creation of a 3rd party firmware for this thing. I'm Scott Nicholas, aka neutronscott. This wiki describes my work of porting Linksys' GPL sources to a modern Linux kernel, and subsequently plugging that into the OpenWRT system.
2013: Official build seems available: http://downloads.openwrt.org/attitude_adjustment/12.09-rc2/adm8668/generic/
April 7th, 2011: Created a snapshot directory – http://wrt.scottn.us/snapshots/
(insert the hardware device table showing progress again..)
Working: serial port, ethernet ports (WAN and LAN are separate but identical), wifi.
Everything below here is ancient.
From official firmware
Just use Firmware Upgrade under Administration in the web interface.
From previous release
I recall keeping configuration not working before. Do so at your own risk! If you have the backfire b1 or b2 try this or you need to edit /lib/upgrade/platform.sh and use PART_NAME=linux:rootfs:rootfs_data since things were partitioned differently then.
root@OpenWrt:~# cd /tmp root@OpenWrt:/tmp# wget http://wrt.scottn.us/latest.bin root@OpenWrt:/tmp# sysupgrade -v -i ./latest.bin Keep config files over reflash (y/N): n Switching to ramdisk... mount: mounting mini_fo:/overlay on /mnt failed: Function not implemented Performing system upgrade... Unlocking linux ... Writing from <stdin> to linux ... Upgrade completed Reboot (Y/n): y Rebooting system...
From a broken state
If things go sour and you need to start fresh, you can also reflash an entire firmware from the bootloader. The bootloader doesn't offer a TFTP server, but a TFTP client, and access to the serial console is required. The procedure is documented here.
If you break the bootloader as well, you will want to learn about JTAG.
If you got this far, you may find http://openwrt.org/ to have resources on basic usage. Only things device specific are dealt with here. This includes my binary builds being broken, as they usually are. It's worth noting though that your router is now at 192.168.1.1 instead of 192.168.0.1, and the default build includes no web interface! You can use telnet to set a password, and afterwords you'll need to use SSH.
The only device specific function is that during bootup you may hold the SES button to activate fail-safe mode. This is useful for example if: you forgot your password, broke your configuration, or the writable filesystem is corrupted. It boots without mounting the writable system and you can telnet in, and if needed 'firstboot && reboot' to start fresh.
If you need more packages, the user applications from nearly any other mipsel target should work, given that the libraries are at the same version. Replace /etc/opkg.conf with the following:
src/gz adm8668 http://wrt.scottn.us/packages src/gz snapshots http://downloads.openwrt.org/snapshots/trunk/brcm47xx/packages dest root / dest ram /tmp lists_dir ext /var/opkg-lists option overlay_root /overlay arch all 5 arch brcm47xx 10 arch adm8668 20
Failing that, you'll have to build your own or ask on the mailing list.
Building from source
If you require functionality that is not included in a basic build (i.e. IPv6 or PPPoE), then you may have to build it yourself. This is because I don't have a full package repository yet.
It's not too complicated.
I tried building _all_ of the packages feed, and it didn't workout. We really need the OpenWRT guys to include our platform in their buildbot snapshots. :(
I can't make these things more simple! ;)
You can contact me personally by methods described here.