Introduction
This page describes how to update the software used in the modular Preamplifier v2.0. The PreampController uses the Tiny PIC bootloader to make upgrading the firmware easy. When it starts up, the bootloader is first started and reads the UART port for 1s. If a specific command is received, the bootloader enters the firmware upgrade process. If nothing is received, the normal preamp software is started. If the firmware upgrade process fails for some reason, it can usually simply be repeated by rebooting the PreampController and starting over again.
Updating the firmware can be done from Linux (Raspberry Pi, native Linux computer) or Windows.
Files
Firmware update from Linux (or Raspberry Pi)
To upgrade the firmware from Linux, the UnixTinyBootloaderLoader binary (utbll) is needed. Also the firmware file (DjukePreampV2.hex) is needed. Firmware upgrade process is started with the following command.
./utbll -d /dev/ttyAMA0 -b 115200 -f DjukePreampV2.hex
Again, from linux with USB-serial use the corresponding /dev/ttyUSB0 device. If everything goes fine, the output will be similar to:
Loading hex file
Hex file OK
Please (re)boot the microcontroller now!!
[Identification try #1] Ok
[Found] 18F2620/18F4620
Send hex file to microcontroller
[0xf900 - 0xf93f] OK
Patch the bootloader to start the program
[0xff38 - 0xff77] OK
[SendHex succesfully] DjukePreampV2.hex
Firmware update from Windows
The Windows GUI for the firmware update can be installed from the Tiny PIC bootloader site. Install it using the instructions from the site. Then choose the firmware file (DjukePreampV2.hex) and select the correct COM port and baudrate (115200).