BENCHLAB Firmware v0.7.2: Fault Protection, Software DFU, and some QoL

BENCHLAB Firmware v0.7.2: Fault Protection, Software DFU, and some QoL

Following the launch of BENCHLAB 2, we worked on porting some features over to BENCHLAB 1. These are now available in FW v0.7.2.

We unified the firmware development tree for both boards, so some improvements we make for BENCHLAB 2 can now flow back to BENCHLAB ORIGINAL (BL1). This is the biggest BL1 update yet: new protection features, new ways to connect, and a long list of accuracy and reliability fixes.

If you're upgrading from the legacy BL1 firmware, nothing here is a regression. Everything below is new to you.


How to Update

If you're on older firmware, follow our guide: Upgrading your BENCHLAB firmware to version 2. You can also use the flash tool in benchlab-pytools, which walks you through the process. Once you're on firmware v0.5.0 or later, you can use BENCHLAB Dashboard v2.1 to update as well.

Example 1: BENCHLAB 1 flash from v2 (legacy) to v0.7.2 with BENCHLAB PyTools. In this process, the tool prompts you to manually switch the board into DFU mode by moving the physical switch.

Example 2: BENCHLAB 1 flash from v0.7.1 to v0.7.2 with BENCHLAB PyTools. In this process, the tool automatically switches to DFU mode and executes the flash. It prompts you to re-plug the board to re-enumerate the device.

Example 3: BENCHLAB 1 flash from v0.7.1 to v0.7.2 with BENCHLAB PyTools. In this process, the tool automatically switches to DFU mode and executes the flash. It may also prompt you to re-plug the board to re-enumerate the device.


Legacy vs. v0.7.2

Here is what you gain by moving from the legacy BL1 firmware to v0.7.2.

Area

BL1 legacy

BL1 FW v0.7.2

OTP & OCP

None

Monitors the chip, thermistors TS1 to TS4, and 11 power rails. Can light the LED, shut down the PC, or reset the system

Entering firmware update mode

Required a jumper

Done over USB, no jumper needed

Data Connection

USB only

USB or I2C

Calibration

Factory and user calibration were swapped

Loads the one you ask for

Power readings

Used the previous reading's current, and could spike to about 4295 W near zero load

Uses fresh readings, with no false spikes

Extended temperature range

B3380 range: -18.0°C ~ 86.7°C

B3950 range: -12.5°C ~ 76.3°C

B3380 range: -54.4°C ~ 196.7°C

B3950 range: -45.6°C ~ 160.7°C

Fan speed

Could report more than 100%

Never above 100%

Firmware version

Major and minor only

Full version number, including the patch

 

 

For Developers

The new firmware is supported in downstream tools which you can find on our Downloads page:

  • BENCHLAB Dasboard: v2.1.0 and up
  • BENCHLAB PyCore: v0.9.1 and up
  • BENCHLAB PyTools: v3.5.0 and up
  • BENCHLAB Service: v2.7.3 and up


The bottom line

No regressions, and a lot more protection and polish for BENCHLAB ORIGINAL. Update, open BENCHLAB Dashboard v2.1, and enjoy. 

 

Addendum: Install DFU Driver

If you use the PyTools Flash tool or Dashboard for the first time, you may encounter the following error:

"Flashing failed: Timed out waiting for 1 DFU device(s) to appear. On Windows, check Device Manager: the DFU device may need a WinUSB driver bound via Zadig before pyusb can see it."

In that case, you can check Device Manager and you'll likely find STM32 BOOTLOADER under Other Devices. To proceed, you can use Zadig to install the WinUSB driver.

Image 1: DFU driver not installed.

Image 2: Use Zadig to install USB driver.
Image 3: DFU driver now installed.
Back to blog