Support » Pololu Isolated USB-to-I²C Adapter User’s Guide »
9. Upgrading firmware
The Pololu Isolated USB-to-I²C Adapter runs open source firmware that you can replace with new versions from Pololu or third-party developers.
Currently, the only official firmware version is version 1.00.
Determining firmware version
You can determine what firmware version the adapter is running using the “Get device info” command documented in Section 7.
On a computer running Microsoft Windows, you can find the firmware version by double-clicking on the adapter’s port in the Device Manager, opening the Details tab, and selecting “Hardware Ids”. The firmware version appears after “REV_” in one of the hardware IDs. For example, “REV_0102” indicates firmware version 1.02. On Linux, you can find the firmware version by installing the lsusb
utility, running lsusb -d 1ffb:
, and looking for the bcdDevice value.
Getting into bootloader mode
To update the firmware on the adapter, you must first get it into bootloader mode, which means it is running the bootloader in the STM32’s system memory instead of the usual firmware.
The simplest way to start the bootloader is to open the adapter’s virtual serial port with a serial terminal program, set the baud rate to 600, and then close it. Some general-purpose terminal programs that work for this are Google Chrome Labs serial terminal, Tera Term, and PuTTY.
If that method does not work, you can short together the two exposed pads labeled “Boot” in the diagrams below while powering up the adapter to force it into bootloader mode. Hold a screwdriver or other conductive tool across the pads while plugging the adapter into USB. If this works, you will see the bootloader turn the red LED turn on briefly and then it off, and the other LEDs on the USB side of the adapter will not turn on.
|
|
Upgrade instructions
- Download the latest official firmware from Pololu: firmware version 1.00 (21k elf). This single file works for both versions of the adapter.
- Install the STM32CubeProgrammer software from ST.
- Get the adapter into bootloader mode as described above.
- Run the STM32CubeProgrammer software.
- In the upper right corner of the window, select “USB” in the blue dropdown box. The software should automatically detect the board and display “USB1” in the “Port” dropdown box.
- Click “Connect”.
- Click the menu icon in the upper left and then select “Erasing & programming”.
- Click the “Browse” button and select the ELF firmware file you downloaded earlier.
- Check the “Run after programming” checkbox and then click “Start Programming”.
- You might see a warning box that says “Warning: Connection to device 0x493 is lost”. If the log pane says “Start operation achieved successfully”, then this message is normal and expected.
If the update was successful, the new firmware should now be running. The adapter’s green LED should be on and the computer should recognize it.
Alternatively, you can also update the firmware using ST’s command-line utility with a command like this:
STM32_Programmer_CLI -c port=USB1 -w firmware.elf --go