PIC firmware updates

From DP

Jump to: navigation , search


This week there should be a major update for the Open Logic Sniffer that fixes a communication problem on some boards when alternate bitstreams are loaded. This fix implements the SPI connection between the PIC and FPGA. The update improved sample download speeds in our tests, even without any other modifications to the SUMP client software.

Right now we'd like to invite beta testers to try the update. You can download an update package in the forum. Keep reading for a short overview of the upgrade process.


Get started

Stuff you'll need:

  • An upgrade package
  • Windows PC

Update the FPGA ROM bitstream

Use pump-loader to load the new Logic_Sniffer.mcs bitstream into the ROM. Follow these instructions. Pump-loader is available for multiple operating systems, this step can be done on any system supported by pump-loader or the pump-loader.pl Perl Script.


In this step you'll see output like the example above. If your version line reads BOOT:255, your Logic Sniffer does not have a bootloader. Stop here, you cannot test the upgrade.

If you don't have a bootloader, we are working on several ways to install it. First, a utility to use the Bus Pirate to reprogram the OLS PIC chip should be available within the week. Second, we'll setup repair centers worldwide to provide reflashes if you don't have a Bus Pirate. Finally, there's the option of using the FPGA to reprogram the PIC with a crafty bitstream.

Update the PIC firmware

Next, we need to install a new firmware in the PIC using the bootloader. We used a custom compile of the Diolan bootloader utility that is only available for Windows, this step currently requires a Windows PC until someone compiles the bootloader utility for other platforms. Use only our custom from the update package with the OLS, do not use the unmodified utilities from Diolan, the USB IR Toy, or the Flash_Destroyer.

Trigger the bootloader

The bootloader can be triggered two ways:

Enter bootloader with a jumper - Place a jumper between the PGC and PGD pins and then press the reset button. The ACT LED will light and the OLS will enumerate as a USB HID device (no driver needed).


Enter bootloader with pump-loader - Enter ROM update mode by pressing the RESET button while holding the UPDATE button. The ACT LED will light and the OLS will enter ROM update mode. Use the pump-loader application with the -boot flag to jump to bootloader mode.The ACT LED stays lit and the OLS enumerates as a USB HID device.

Firmware update procedure

  • Trigger the bootloader as described above.

Upload the firmware

C:\firmware>fw_update -e -w -vid 0x04D8 -pid 0xFC90 -ix v1-firmware-v0a.hex
U2IO flash erasing: DONE.
U2IO flash programming: DONE.
RESET Device
Operation successfully completed.
Press any key to continue . . .

  • Run the firmware loader as shown above, or just use the OLS-program.bat included in the update archive.
  • The chip is erased and then programmed.
  • Remove the jumper (if you used one earlier), and reset the board by pressing the RESET button.

The update is now complete. Please test the OLS and report any improvements (or lack of improvement) in the forum.

Special thanks to Piotr Pawluczuk for getting the firmware update utility to compile for us.