USRobotics USR8200

From DD-WRT Wiki

Revision as of 09:17, 21 September 2010 by Sash (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

Contents


THX to OpenWRT for parts of the instruction


[edit] Flashing

Flashing the U.S. Robotics USR8200


[edit] Installing Redboot

Be sure to have the latest firmware installed (Version 3.10.20.19).
Reset the device to defaults.

Since the device has the Jungo loader installed by default we have to change it to Redboot to get DD-WRT up and running. But keep cool its easy to handle as you will see below.

You will need a lil .py script that will do the backup of the orig flash content and flash the new redboot. A backup of this script can be found here: Jungo-image.jpg (You will have to rename it to jungo-image.py!).

The 2nd thing that is needed is the Redboot itself. The latest version can be downloaded here: Redboot . You should verify what each MAC address for WAN/LAN is, and write them down somewhere, before installing DD-WRT. The MAC address for the WAN should be on a sticker on the bottom, and the LAN is +1 hex.

From here it is partially taken from the OpenWRT Wiki:
Installation of RedBoot can be accomplished with the jungo-image.py script. The script uses the telnet interface into the router to accomplish it's task.

The standard password for the USR software is: admin/"leave emty". If that fails set it to: admin/admin.

The script will first make a backup of the current flash image; this procedure takes about 4 minutes. Use -h to get help on all the options. If there's some failure, the only recourse is to install a JTAG header and restore the firmware via JTAG; so, use at your own risk!

For Windows: You will need to download and install python located here http://python.org/ftp/python/2.6.2/python-2.6.2.msi (for windows) and enter then at the DOS command line you will enter the info below. You may need to put your files in the install directory of python (ex. c:\python26)

Note: Windows 7 users must enable telnet under Control Panel -> Programs -> Turn Windows features on or off

For Linux: You may have to install Python from your respective distribution's repository if you do not have it, but so long as you can point to the redboot image you should be able to have the files anywhere.

Basic Usage:

  • Help: python jungo-image.py -h
  • Backup existing image: python jungo-image.py -d -p <password> <router ip address>
  • Write new redboot: python jungo-image.py -p <password> <router ip address> <redboot file>

The RedBoot prompt is accessible via telnet 192.168.1.1 9000 on the Wan and LAN ports. After establishing the 1st telnet session to RedBoot, the flash must be initialized and configured:

  • Initialize flash: fis init -f


[edit] Configure MAC addresses (initial setup only)

  • fconfig npe_eth0_esa 0x00:0x01:0x02:0x03:0x04:0x05 (The "0x" tell's the redboot that its hex code.). Use the MAC address at the bottom of the unit plus 3. The one printed on the bottom is for the WAN, but we need to tell RedBoot what the LAN port MAC address is.
  • fconfig npe_eth1_esa 0x00:0x01:0x02:0x03:0x04:0x05 tells Redboot the LAN mac. You can use the MAC printed on the bottom label +1 hex.

[edit] Upgrade RedBoot

With this guide you can upgrade your RedBoot if there is a newer version available.

  • Plug your LAN cable into the WAN port.
  • Connect to the RedBoot.
  • Check the correct RedBoot length with
fis list
  • Load the RedBoot ram file to the device
load -r -b %{FREEMEMLO} usr8200.ram
  • Execute the RedBoot with
go
  • Load the new RedBoot rom file to the device
load -r -b %{FREEMEMLO} usr8200.ram
  • Unlock the flash partition (set -l the length of the RedBoot part)
fis unlock -f 0x50000000 -l 0x00060000
  • Write the new RedBoot (set -l the length of the RedBoot part)
fis write -b %{FREEMEMLO} -f 0x50000000 -l 0x00060000
  • Powercycle your device
  • Do
fis init -f
  • Reflash DD-WRT

[edit] Installing DD-WRT

The RedBoot prompt is accessible via telnet 192.168.1.1 9000 on one of the LAN ports.

[edit] Flashing/recovery

This may take a while, be patient. Proceed to the next step when you get the redboot prompt back.

[edit] w. RedBoot 02.2009

  • Install and configure your favorite TFTP server to serve the dd-wrt image as linux.bin
  • Load linux.bin into memory: load -r -b 0x600000 -h <hostip> linux.bin
  • Write linux.bin to flash: fis create linux

[edit] w. RedBoot 03.20010

  • Install and configure your favorite TFTP server to serve the dd-wrt image as linux.bin
  • Load linux.bin into memory: load -r -b 0x400000 -h <hostip> linux.bin
  • Write linux.bin to flash: fis create linux

[edit] Configure Redboot

In order to autonomously boot to the DD-WRT kernel you just installed, you need to add a boot script to RedBoot:

  • Open RedBoot's configuration: fconfig -d
  • When prompted with Run script at boot, change the value to true
  • Enter the following to the script:
mfill -b 0xc8004004 -l 4 -p 0x1ff0 -4
mfill -b 0xc8004000 -l 4 -p 0x600f -4
fis load linux
exec
  • Hit enter to finish the script with an empty line.
  • Change the timeout setting for loading the script to about 5 sec.
  • Keep hitting enter until you get this prompt: Update RedBoot non-volatile configuration - continue (y/n)?.
  • Type y and enter.
  • Power cycle the router and dd-wrt should boot.

[edit] Hardware

  1. Intel® XScale® IXP422 266MHz Processor
  2. 64Mbytes SDRAM
  3. 16Mbytes Flash
  4. 10/100 Base-TX Ethernet "WAN" Port (Altima AC101LKQT)
  5. 10/100 Base-TX 4-port switch (Marvel 88E6060)
  6. IEEE1394 FireWire port
  7. 1 RS-232 Serial Port (internal)
  8. Battery Powered Real Time Clock
  9. Dual Type A USB 2.0 Host Ports

[edit] Serial port

A standard 9-way ribbon cable for serial port can be used for serial port login.

USR - Serial 
  1 - 1 
  2 - 6  
  3 - 2 
  4 - 7 
  5 - 3 
  6 - 8 
  7 - 4 
  8 - 9 
  9 - 5

USR Pinout:

1  2 |  NC NC
3  4 |  TX NC
5  6 |  RX NC
7  8 |  NC NC
9 10 | GND NC

3 = tx ( to rx pin of PC serial port )
5 = rx ( to tx pin of PC serial port )
9 = Serial port ground is ground between the 2 ports... not to chassis ground.

[edit] External links

http://oldwiki.openwrt.org/OpenWrtDocs%282f%29Hardware%282f%29USRobotics%282f%29USR8200.html#head-e0357e843dedd4a31fb1392bb98e64fba0315a19
http://wiki.openwrt.org/oldwiki/openwrtdocs/hardware/usrobotics/usr8200