« Close

Datasheets and User Guides

App Notes

Software & Driver

 

Python Firmware Upgrader

For upgrading U3, U6, and UE9 using Linux and Mac OS X

Windows users should upgrade firmware using LJSelfUpgrade (U3, U6, UE9), or Kipling (T7, T4), or Otero (Digit).

Linux and Mac OS X users can use a Python firmware upgrader from the list below. (Grab the correct one for your version of Python, Python 2.7, 2.6 or 2.5.)

- Requires Internet access during programming.

- If you have UE9 Control firmware older than 1.78, you must use LJSelfUpgrade.

- If you have a U3A or U3B (hardware revisions 1.20 or 1.21), you can use the Python upgrader by manually downloading and specifying the proper firmware file (see README file), but it is lightly tested. If you run into problems, find a Windows machine and use LJSelfUpgrade to attempt to recover as described in Section 1.2.

Note: The Python Firmware Upgrader requires httplib2. It can be downloaded from its Google code page. Python 2.5 also requires simplejson, which can be downloaded here.

Warning to Linux and U6 Users: Linux with kernels 3.0.0 and above have problems with upgrading U6 firmware. Older kernels, such as 2.6.32, can upgrade a U6 with no issue. It is uncertain exactly what kernel version the problem starts at, if only certain distributions are affected or if higher versions of the Linux kernels 3.x still have this issue (Ubuntu with kernel 3.5 still has the issue). To be safe or if your upgrade fails on Linux and your U6 continually reenumerates, upgrade your U6 firmware on Mac OS X or Windows.

3 comments

drdanwoodard's picture

The following command worked to upfrade U6 firmware under mint with a 3.19 kernel, however this is not exactly what the website recommended. The selupgrader did not work.

python u36Upgrade.pyc U6firmware_144_11282015.hex

LabJack Support's picture

Currently the option that automatically downloads the firmware file from our website and updates the firmware is broken.

python selfUpgrader.py 6

When we switched to our new website last year it broke that functionality and we just became aware of it recently. At this time, the firmware file will need to downloaded manually from our site and selfUpgrader needs to be ran with the "-f" option to specify the file to use locally on your computer. The documented way to do that is (your way is undocumented but works as well):

python selfUpgrader.py -f U6firmware_144_11282015.hex 6

LabJack Support's picture

The downloads on this page have been updated (python2.x-firmware-upgrader-2016-01-07.zip) with a fixed version of the firmware upgrader. The "python selfUpgrader.py 6" command should now work and download firmware from our current website properly.

Also, the following Windows functionality was fixed:
    * U3-LV/HV firmware upgrades.
    * Recovery mode.