Wednesday, January 26, 2005

 

Digi Boot Loader

The S-type Digi boot loader is not the same as the one in the NetOS source tree. Digi has not published the source but, according to Digi tech support, there are two ways to recover bad-download modules using the Digi Boot Loader:

1. Upon module power up, if the boot loader determines that the application image is missing or corrupted it attempts to retrieve a replacement image, via TFTP, using the TFTP server address of 192.168.0.128 and a filename of 82000856. I have not observed this behavior. My Ethereal shows no activity on TFTP port 69; however, there could be a problem with netmask, etc., keeping me from seeing these packets.

2. If ConnectMe pin 18 is grounded at powerup, the boot loader puts out a menu at 9600N81 on the normal serial port. The menu lets you set up IP and netmask, retrieve a file by tftp and load it to Flash. This system works, I have used it on an S-type module that I know to have had its application erased.

Notice that neither of these behaviors is described in the "The Digi CM disaster recovery procedure" which I described in my last post.

Larry Martin
www.GlueLogix.com
Copyright (c) 2005 Larry Martin. All Rights reserved.

Comments:
Actually method two works on old and new digi's.

In our case once the digi is placed in a production board there is nothing I can do, because the serial port is conencted to our dsp.

However, once removed, you can place the digi on the development board and short out pin 1 and pin 4 of header P5 on power up. Of course on my development board, there was no header there, so I had to solder one on.

What I do is place tftp in the same directory on my PC as my digi image. Start it. Then when I start the digi give it the IP address of my pc running tftp.

You start by hitting t for tftp options. 2 to set tcp settings. 3 to download image. Hit esc to get to higher menu, then hit 4 to write image to flash, press 5 to run OS. Then the digi should respond on the new IP address if you have set it static from your image.

David K
 
I just ran across this today when looking for how to do firmware recovery on a device we purchased and I accidentally bricked during a firmware upgrade (sent the firmware to it via ASCII mode ftp.. whoops)

At least on the device I have it will make a DHCP request when the firmware is corrupt. So you have to attach a machine running a DHCP server and TFTP server. The 'filename' option has to be set on the DHCP server and it will contact this same machine via TFTP to download this image file. In my case if the file was named anything other than 'image.bin' it would boot it but leave it stored in ram. Naming the file 'image.bin' caused it to be directly flashed.
 
Good point. Digi has improved the boot loader over time.

I like tftpd32 for TFTP and DHCP on Windows:

http://tftpd32.jounin.net/

Thanks for reading,
Larry
 
Your blog keeps getting better and better! Your older articles are not as good as newer ones you have a lot more creativity and originality now keep it up!
 
Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?