Netcruzer Library API  V2.03
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Groups Pages
USB Bootloader

The Netcruzer USB Bootloader application is used to update the firmware on SBC boards via the USB port.


Procedure

 Picture 1. Jumper in "Firmware Upgrade" position


 Picture 2. Jumper in "Park" position
The procedure for updating the firmware on current Netcruzer SBC boards with a USB port is:

  1. Power off the SBC board, and start the Netcruzer USB Bootloader application.
  2. On connector X1 of the SBC board, place the jumper in the "F" position. See Picture 1.
  3. Connect the SBC board to the PC via a USB cable, and power the SBC board.
  4. The Netcruzer USB Bootloader should show "Device Attached" in it's message window.
  5. Use <File><Import Firmware Image> menu to load the firmware hex file.
  6. Select <Program><Erase/Program/Verify Device> from menu. This will upload the new firmware to the external Flash chip of the SBC board. Only after the download has been verified, the new firmware is marked as "new firmware". This ensures that no error occurs if the download is not successful.
  7. Power off the SBC board, and place the jumper back in the "Park" position. See Picture 2. Jumper can also be removed.
  8. At the next power up, the SBC board will be programmed with the firmware. The previous firmware is marked as "previous firmware", allowing a roll-back to previous firmware.

Alternatively, a button can be connected between the T1 port and VCC (3.3V) of the SBC board. At power-up, if this button is pressed, the board will enter bootloader mode, and can be programmed as described in steps 6 to 8 above. Some prototype boards have this button, and can be programmed as descibed here.


Secure Method

The firmware is updated in a very secure manner. Even a power failure during the firmware update process will not result in the board being programmed with faulty firmware. For details, click here.


System LED

The system LED will indicate the state of the board when in bootloader mode (jumper on "F"). There will always be two long flashes, followed by 1 to 3 short flashes. The state of the bootloader is:


Bootloader Mode, USB unplugged

When the board is in bootloader mode, but the USB connection is not active, the LED will have 2 long flashes, followed by 1 short flash every 3.2 seconds.

3.2 Seconds (times below in ms)
400 On 400 Off 400 On 400 Off 100 On 1500 Off

LED flash pattern is 400ms ON, 400ms OFF, 400ms ON, 400ms OFF, 100ms ON, 1500ms OFF.


Bootloader Mode, USB plugged in

When the board is in bootloader mode, and the USB port is plugged in and initialized, the LED will have 2 long flashes, followed by 2 short flashes every 3.2 seconds. New firmware can be uploaded via the Netcruzer USB Bootloader application.

3.2 Seconds (times below in ms)
400 On 400 Off 400 On 400 Off 100 On 100 Off 100 On 1500 Off

LED flash pattern is 400ms ON, 400ms OFF, 400ms ON, 400ms OFF, 100ms ON, 200ms OFF, 100ms ON, 1200ms OFF.


Details

The USB Bootloader is a project, located in the ".../src/projects/usb_hid_boot" folder of the Netcruzer Download. This folder contains all source code, MPLAB projects and documentation for the USB Bootloader. Details about the USB Bootloader project is available here.


Troubleshooting

LED not blinking as described when placing jumper in "F" position

It is possible that a SBC66 Boards board is not programmed with the USB Bootloader, or it got deleted.

If this is the case, a PIC programmer is required to restore it, as described here.