I found a regression in power consumption on the TNC4 2.5.9 firmware when testing a new batch of PCBs. The issue is high current consumption, ~900uA, when powered off.

The cause is due to undefined behavior in the STM32 USB controller when SysClock is below 16MHz.

Firmware version 2.5.7 is OK. The only change between it and 2.5.9 is an unrelated change to the power-off LED indicator. 😲

The fix requires ensuring that SysClock is >= 16MHz when making USB power changes.

Looks much better now.