Connect ME -C Bootloader Code on LxNETES (µClinux)

Hi everybody!

I works on a “Connect ME 4MB -C” module under LxNETES (µClinux).

I have successefully tested a linux.bin image on the Connect ME like in the -S moduleJTAG module. I have also succeessed in flashing my “firmware fresh” -C module with these image by the native naftpapp. But the module has never restarted.

I have failed to recover it by a BOOTP/TFTP procedure provided by Digi because the module passed the image crc checksum at startup. It seems that all that i can do is to RMA’d :frowning:

For a safe boot, i want to include a bootstrap code in the image to have eventually a recovery menu (like in the -S module) when crashed. But i don’t knonw where to find bootloader code.

  1. Does somebody help?
  2. Where can i get the Connect ME -C bootloader source files?
  3. Is there a LxNETES (µClinux) naftpapp package?

LxNETES on Connect ME is booting with the NetOS bootloader.
The bootloader is comming with the modules and is doing the initial hardware setup like SDRAM, FLASH initialization.

Since the hardware might change (other SDRAM, other FLASH) the bootloader keeps those changes transparent for end users. E.g. newer modules might be shipped with a different bootloader version.

=> the bootloader is “part of the hardware” and not intended to be changed by customers. If you would change it and you are getting newer Connect ME modules, your modified bootloader might not match the hardware.

If you need some custom hardware to be initialized, you can do this in the linux startup code.

The NetOS naftpapp is intended to update BIG ENDIAN images in into flash, and can also load uClinux images if they are BIG ENDIAN! The Digi Linux Toolchain creates image.bin (BIG ENDIAN) and linux.bin (LITTLE ENDIAN).
image.bin is for updateing with naftpapp, linux.bin is for updating from a running linux.

So you crashed your module by using the wrong endianess image.

There is no naftpapp under linux. However you can update a little endian linux.bin from a running linux via the update_flash tool. You only need to copy the linux.bin somehow into RAM, e.g. via ethernet, PPP, serial, or whatever interface you have connected.