NetBurner 3.5.6
PDF Version |
Applicable Hardware Platforms: SOMRT1061
Device recovery in the event of an errant application running on the device is an important part of the development process. This document describes recovery procedures for a device stuck in a repeating trap/reset condition, or a totally unresponsive device.
An overview of the key components and features of the boot process are listed below. The remainder of this article will provide further details and usage on each.
<device IP>:20034
For a properly running application. Boot Monitor starts, decompresses application to RAM, performs system checks, then jumps to the start of the application.
Symptom:** The application boots and runs, but the network IP settings are such that the device cannot communicate. Resolution:** Abort to the Configuration Server and modify network settings with serial console interface.
Symptom:** The application boots and can run to the point of initialization (the init() function in UserMain()), but traps afterwards.
Resolution:** Abort to the Configuration Server and upload corrected application.
Symptom:** The application traps immediately upon boot. The Configuration Server is not accessible.
Resolution:** Abort to the Alternate Boot Monitor and upload corrected application. Access through the serial console interface or telnet.
Abort the boot sequence and run the Configuration Server, accessible on the web interface and serial console interface.
Type "A" to Abort
is displayed. Note that "A" is the default abort command, but the command is configurable in the Configuration Server settings. If the abort command is different, use that command instead of "A".>
prompt you can now type serial console commands, or use the web interface if you have network connectivity.
The following application update methods can be used from the Configuration Server or Alternate Boot Monitor.
<device IP>:20034
. For example, 192.168.1.10:20034
.nbupdate <file name> <device IP>
TTY > Flow Control
and uncheck both Xon/Xoff Input Control and Xon/Xoff Input Control. Otherwise the data stream will be corrupted.>
prompt, type fla
into the serial prompt and then hit enter.F5
key)..bin
application file that you want to load.
There are three instances in which the Alternate Boot Monitor is needed for device recovery. A new application can be uploaded as described in the Uploading a New Application section.
If no application had been programmed into the device, or the checksum verification fails when an application is decompressed from Flash to RAM, the Boot Monitor will automatically jump to the Alternate Boot Monitor.
If the Configuration Server can run but code updates are not working correctly, the "ABOOT" command can be used on the Serial Console Interface to invoke the Alternate Boot Monitor without having to perform the jumper recovery procedure.
If the application is crashing before UserMain() starts, such as a crashing global constructor, access to the Configuration Server is not possible as it is part of the application. Your only choice will be to access the Alternate Boot monitor with the recovery jumper. Please see the recovery jumper procedure section.
In a situation in which the device is completely unresponsive, continually trapping prior to the "Type A to Abort" prompt, or if there is no access to the device's serial console interface, shorting the recovery pad to ground on the device (referred to as "jumper recovery") can be used to abort the boot process and run the Alternate Boot Monitor. The device will then be ready to receive a new application using any of the procedures described in the download a New Application section.
The recovery pad can be shorted with a jumper in two ways:
Erase All
command in the Alternate Boot Monitor. After erasing Flash memory, the next time the device boots it will reset to factory defaults.
The recovery pad and ground pad are located on the corner of the module between P2 and P3. Using a pair of tweezers may be easiest for shorting the two pads. Alteratively, the recovery pad can be shorted to any ground pin to achieve the same result, which may be easier, especially if using the DEV-SOMRT1061 development board.