Unattended debug of the Neo 1973 hardware

Rod Whitby rod at whitby.id.au
Sun Mar 11 10:42:58 CET 2007


I have a goal of setting up my phase 0 Neo 1973 for full unattended
debug operation in these initial stages of reflashing kernels, getting
command line utilities and functionality working, and getting bluetooth
networking to my NSLU2 working.

Here's a photo of my current test rig:

  http://www.flickr.com/photos/rwhitby/413452216/

For others who might want to do the same, here are some tips:

1) To get (and keep) /dev/ttyACM0 serial access to the bootloader, you
need to interrupt the bootloader before it boots Linux.  The easy way to
do this is to hold in the AUX button on power-up, but of course that's
not easy to do remotely.  So the next best thing is to set the bootdelay
uboot environment variable to -1, which makes the Neo always stop at the
bootloader on power-up.  Then you can connect to /dev/ttyACM0 and type
"boot" to continue booting Linux, or you can interact with uboot of DFU
before booting into Linux.

Note that /dev/ttyACM0 disappears as soon as u-boot starts Linux, which
 is why you need to interrupt it (or have it not autoboot) if you want
to talk to u-boot.

2) The only way I can find to get out of uboot DFU Mode back to uboot
Runtime Mode is to do a dummy download (e.g. download a file to RAM)
which puts uboot back into Runtime Mode (from which you can reset or boot).

It would be good to have a dfu-util option which just resets back to
runtime mode without having to do a scary dummy download.

3) Once you execute the "neo1973 power-off" command, there is obviously
no way to power it back up again remotely :-)  So don't do that.

My other goal is to be able to do all these things (ttyACM0, dfu-util,
openocd, etc) from an NSLU2 mokoslug gateway machine.  So I've been
adding these things to MokoSlug as I go, and am doing it as a set of
OpenEmbedded tasks (task-mokogateway-*) so that they can be ipkg
installed in other OE distros (like SlugOS or Angstrom) too.

-- Rod



More information about the openmoko-devel mailing list