USRobotics USR9108 serial console access

Bookmark and Share

I had to debug my USRobotics router recently (a good old USR9108) as it ceased to respond completely to any network traffic. The CFE was working fine (192.168.1.1 could be pinged), so I thought a tftp firmware flash would do the trick, but to no avail (I got timeouts all the time). Accessing the serial console seemed to be the only way left, so I had to practise some PCB soldering the hard way.

A good tutorial would have been really reassuring at the moment. There’s a lot of material on Linksys routers (due to its OpenWrt popularity), but I couldn’t find much about USR9108, so I had to pick and guess the proper pinout. Now I know, doing it with a properly working multimeter (mine is probably appropriate for battery testing only) would have been much easier.

The USR9108 has a 4-pin pad next to the Broadcom BCM6348 CPU. It’s 3.3V transistor-transistor logic (TTL), so a special USB converter (or some reworked USB Nokia data cable) is a must (mine is FT232R based, and works flawlessly). The proper connection sequence is TX, RX, NC, GND as seen below:

Router’s TX and RX have to be connected with RX and TX on the PC side correspondingly, and GND with GND (it’s data/signal ground, so just grounding it is not the best idea). Connection settings which worked in my case are as follows:

Baud rate: 115200
Data bits: 8
Stop bits: 1
Parity control: none
Flow control: software (XON/XOFF)

I was having some problems with RealTerm (though I don’t know why), but PuTTy worked a treat.

More technical details about the router can be found in the OpenWrt wiki.

 

Similar posts:

13 Responses to “USRobotics USR9108 serial console access”


  1. Gravatar Icon 1 Karol

    Just another point. Yesterday I had some problems with the serial connection. All the incoming messages were OK, but transferred commands got totally garbled on the way. Probably it’s my clumsy soldering – don’t know. But I’ve managed to interrupt the CFE boot process with some random characters, and that’s all I needed.

    The built-in bootloader has a very nice feature – if you pass through this stage and manage to abort the auto run:
    *** Press any key to stop auto run (1 seconds) ***

    the CFE should write:
    web info: waiting for connection on socket 0

    From that moment a crash recovery web interface is available through the default IP address (192.168.1.1) where it’s possible to reflash the router.

    USR9108 recovery web interface

  2. Gravatar Icon 2 Rajitha Liyanage

    hey thanks a lot for your article. it helped a ton for recovering my usr9108

    actually i used your comment to send the FW file via web interface.
    and i used a simple ttl to rs232 cable that i built to for the process.
    but i got some wierd problem with that because what ever i typed into putty came displayed like some stupid characters. in fact i couldnt type in any meaningful thing into the console.

    again. thanks form SRI LANKA

  3. Gravatar Icon 3 Karol

    Glad to hear it helped.

    Those garbled characters are either some configuration issue or, more probably, a problem with the hardware connection. In my case I knew it was the latter, as it stopped working by itself and pin soldering wasn’t of highest quality to start with. ;-)

  4. Gravatar Icon 4 Rajitha Liyanage

    yeah. perhaps it has something to do with my connection to the router.

    i have some questions about OpenWrt on my USR9108. i tried to flash my router twice with different FW images of open wrt, that are supposed to be working with my router, but so far no luck. it just keeps on bricking my router. do you know a way of installing open wrt on USR9108?

  5. Gravatar Icon 5 Karol

    My struggle with OpenWrt and Debian package support on USR9108 has been recorded here, at least the major parts:
    http://blog.dvl.pl/article/2009/11/21/debianwrt-usr9108/

    Theoretically, openwrt-96348GW-A-squashfs-bc300-cfe.bin precompiled firmware image should work. But I’m not sure if everything is baked in. If not, you would have to go through compiling it by yourself.

  6. Gravatar Icon 6 Rajitha Liyanage

    thanks for the quick reply. i checked that debian wrt link.

    this openwrt-96348GW-A-squashfs-bc300-cfe.bin is the exact fw that bricked my router. openwrt backfire was even worse on the router.(i tried it yesterday). and now my serial connection is not working as it should too. serial console doesnt display a thing :(

    by the way can you give me some small clarification about the file name format of these firmware images? what is meant by bc300 for an instance.

    and i’d appriciate if you could put an article about USR9108/OpenWRT.

    i forgot to mention, im totally new to this routers and third party firmware thing.

  7. Gravatar Icon 7 Karol

    I used Kamikaze as a base. To be honest, I’m not up to date on what’s going on currently (once I got it working, I didn’t want to tinker more with it) – so I’m not sure how Backfire behaves on this hardware.

    As to the naming:
    96348GW-A – board ID
    squashfs – filesystem type
    bc300 – imagetag
    cfe – bootloader type

    Though as to some more elaborate explanation – I don’t feel capable enough in this field. You’ll probably have more chances on getting a decent answers in the OpenWrt forums from the devs.

    From what I remember, there were some problems when flashing the pre-made images on USR9108 (only 3rd or 4th custom image worked in my case). I think it’s still not officially supported either. But I remember having problems with X-Wrt at first (when not using bare OpenWrt) and some QoS packages which resulted in constant reboots – though you should be able to debug this kind of errors through the serial console. I’m not sure why you can’t access it.

    My general impression is, reflashing is a hard business where too many things can go wrong. And even though most of the time it’s not that easy to brick the router irrecoverably, the steps to debrick can get more complicated (simple reflash through web interface -> tftp reflash -> serial console -> JTAG -> ultimately hardware repair – like when you accidentally provide 9V to the wrong place as I did once on my old USR9106 ;-)). So, I hope you’re aware of the risks.

    Back to the matter – I suppose your best bet is to look for support in the OpenWrt forums. Maybe there are more active USR9108 OpenWrt users. If you drop me a link here to the discussion, maybe I will be able to participate in some way. I’m sorry I can’t help more specifically, but this would require going once again through the process of flashing USR9108 with OpenWrt, which I don’t recall with such details any longer. And doing it on a working installation seems a bit too risky as long as it does it job. :-)

  8. Gravatar Icon 8 Rajitha Liyanage

    thank you very much for the detailed explanation.

  9. Gravatar Icon 9 Karol

    No problem. If you come up with something, please keep me posted.

  10. Gravatar Icon 10 matteo

    hello
    let me understand a quick thing: I remember that when i looked for installing openwrt on the usr9108, it wasn’t 100% working ’cause the adsl drivers (from broadcom) weren’t available. Did you manage to have a full functional adsl and router capable 9108?

  11. Gravatar Icon 11 Karol

    My goal was to port some application relying heavily on multiple Debian packages to my USR9108 mini-server (it’s around 10W + HDD, so way more friendly on a 24/7 basis). I used OpenWrt only as a base system (much easier to install than trying to create a custom pure-Debian firmware). Basically, it’s not a router anymore – rather a low-performance Linux appliance from a refurbished old router.

    I don’t know what’s the status of ADSL/Wi-Fi support at the moment. I didn’t need Broadcom drivers as I don’t use ADSL functionality in this case (it’s a spare router, I thought tinkering that much on my main “production” gateway is not the best idea). I checked Wi-Fi though, and I had problems with some crashing, but that’s quite a time ago, so maybe something has changed here.

    Looking at OpenWrt website, I suppose it’s still not officially supported. From my side I can say that general system, USB storage support and switching work fine.

  12. Gravatar Icon 12 Rajitha Liyanage

    @matteo : i managed to install openwrt on my usr9108, but no ADSL. :(
    but hey, i saw that backfire (the latest version of openwrt) saying that they have added support for broadcom adsl chipsets! (which gave me some hope)

    *

    New platforms

    *…..
    * Broadcom ADSL modem/router chipsets (brcm63xx)
    * ………
    https://dev.openwrt.org/milestone/Backfire%2010.03?by=version

    but when i install openwrt backfire in the web interface it says “Kamikaze”!!! not backfire :D

    if you manage to do get openwrt with adsl running on your router, or any updates please contact me. coz i really really need to get openwrt running on my usr9108.

    llrajitha@gmail.com

    ps : after you install open wrt did you notice that “WAN” LED is always lit, even though the phone line is disconnected?

  13. Gravatar Icon 13 roberto

    hello
    sorry. anyone knows a program to jtag for usr9108?

Leave a Reply




Subscribe without commenting