Note:
This project is obsolete. There are several other projects which are much
more promising because they build on devices that already run uClinux
when shipped, so you don't have the hassle with JTAG or similar.
Here are some links to the different projects so you have a starting
point:
- Greg Boehnlein
found out
that the
Actiontec Dual PC Modem
runs uClinux. The device has 2 MB of flash, 8 MB of RAM, two independent
100 MBit ethernet ports and a 56k Modem. Very nice for broadband access with
PSTN backup, or even as dialin server (even though it's limited to 33k6
then).
- The
Linksys WRT54G
runs uClinux. Very powerful with 4 MB of flash, 16 MB of RAM, 100 MBit WAN
interface, 4-port LAN switch (said to be VLAN capable, i.e. you can have 4+1
routed interfaces!) and 802.11g WLAN (2.4 GHz, 54 MBit). There are several
projects which work on alternative firmware, e.g.:
- The guys at seattlewireless.net
also tried
also tried to get uClinux onto some AP. They were much close than me, but
the project seems to be dead now. They have plenty of information on
their site though!
I will leave this page online for reference purposes only.
The long-term goal of this project was to run
uClinux (which is a
Linux version suited for small, embedded devices) on some common SOHO router
(also called broadband/DSL router). Most of the firmware which
comes with this kind of routers works fine for basic things. However,
often it's buggy and advanced features (such as layer 4 proxying, IPSEC
etc.) are missing. Linux would allow really everything you can think of
in the networking area. I don't have succeeded in running uClinux on
such a device yet, as it's not an easy task to compile a kernel
fitting the CPU and put that kernel into the flash ROM. So I've started
collecting all information I can can about available hardware first. I think
1 MB of flash ROM and 4 MB of RAM should be enough to run uClinux. Generally
speaking, the older the router, the easier it is to get uClinux on it as the
older devices often have debugging facilities and serial ports. On
embedded devices, the initial console is on the serial port. Recent devices
often don't have an serial port and you have to use the JTAG port to
do the debugging, which is not an easy task as you don't have the
chance to see the kernel boot messages.
This is an overview with what I've go so far and some photos showing all the
boards in detail:
| Manufacturer |
Type |
CPU |
Flash |
RAM |
Pics |
| Linksys |
BEFSR11 |
ARM7 Samsung S3C4500X |
512 kB |
2 MB |
Components side
Back side |
| Linksys |
BEFVP41 |
ARM7 Samsung S3C4510B |
1 MB |
4 MB |
Components side
Components side with JTAG mod
Back side |
| Netgear |
MR314 |
ARM7 Samsung S3C4510B |
1 MB |
4 MB |
Components side
Back side |
| Netgear |
RT314 |
ARM7 Samsung S3C4500X |
1 MB |
4 MB |
Components side
Back side |
|