Page 1 of 1

coding a firmware update for SMC-router

Posted: Sun Nov 05, 2006 9:59 am
by PyroMathic
hey,

this might be a bit of a weird question, but well...

Would it be possible to write or modify a firmware (driver) for a router, in my case a wire-less SMC router. So you get more flexabilaty and more security.

I did google a bit, but some how cant find a compiler or a hardware doc for my device, so dont even know what kind of CPU is in there (or how the firmware *.bin file is formatted).

Did any one ever try anything like this?

Regards
PyroMathic

Posted: Sun Nov 05, 2006 12:47 pm
by Dex
Yes sorte of i am working on a project like this, working on getting Dex4u on.
http://www.prism54.org/mustumbler.html

Re: coding a firmware update for SMC-router

Posted: Tue Nov 07, 2006 4:40 am
by JoeKayzA
PyroMathic wrote: I did google a bit, but some how cant find a compiler or a hardware doc for my device, so dont even know what kind of CPU is in there (or how the firmware *.bin file is formatted).
That's a big problem you'll encounter with most of these devices. Manufacturers hardly give out infos about these details (because they usually don't want people to hack or create custom firmware). I discovered that most routers are somehow based on a reference design by another company, which produces the Microcontrollers used. Those often offer software development kits for their development boards - and chances are that these also work for the final product. But this is only an option when you know which system your router was based on.....

Besides this, some routers have been mostly reverse engineered (such as the famous Linksys WRT54G), and custom firmware projects are around. If so, chances are that you'll get detailed information from those projects.

Maybe I could help you if I knew the brand and type of your specific router!

cheers
Joe

Re: coding a firmware update for SMC-router

Posted: Tue Nov 07, 2006 10:43 am
by PyroMathic
lo

nice link dex, just wasnt planning on going that low level ;), but cool anyway.


JoeKayzA wrote: That's a big problem you'll encounter with most of these devices. Manufacturers hardly give out infos about these details (because they usually don't want people to hack or create custom firmware).
Kinda already thougt something like that, or the Manufacturers simply dont care about people like us...

well i got the following model: SMCWBR14-G2, 54 MBit wireless router

Regards
PyroMathic

Posted: Tue Nov 07, 2006 11:06 am
by Brynet-Inc
I've also looked into this, I for example have a D-Link DI-604(E) router and I've found some fairly detailed specifications. :wink:

CPU: Marvell 88E6208 - LGO (ARM9 CPU at 133 MHz with an enhanced 5-port FE switch and one UART interface for debugging and for backup phone line WAN connection)
Flash Memory: MX 29LV800BTC-90 (1MB - 3 Volt)
SDRAM Memory: IC-Mart G416SD54P-6 (4Mx16 Synchronous DRAM (SDRAM))
PLD: Altera EPM3032A (600 gates / 32 macrocells)

Board Connectors:
JP1: 8 pin connector - It's likely to be the Altera JTAG connector, but seems to be connected to a few missing parts (resistors).
JP2: 20 (2x10) pins - It's likely to be the ARM9 JTAG connector.
JP3: 2 pins connector - Reset Maybe? seems to be connected to a missing part (U10).
JP4: 10 (2x5) connector - Assumed to be an UART connector, but seems to be connected to a few missing parts (resistors).

It also has an additional built in TFTP server and the firmware is a modified ThreadX OS. (http://www.expresslogic.com/txtech.html)

But for example I still have no idea what chipset the on-board Ethernet uses. :cry:

The D-Link DI-604(A) model is really different:
CPU: ARM7 - Conexant CX84200/ADMTek ADM5106
Ethernet: VIA VT6103
This one has some of it's boot sequence reverse engineered!
http://home.comcast.net/~staskh/project ... g_map.html
http://home.comcast.net/~staskh/project ... h_mem.html

Places to find information about routers..
http://www.google.ca/ (Or your respective other Google mirror 8))
http://hri.sourceforge.net/hw/
http://www.seattlewireless.net/FrontPage (Wireless mostly..)