Skip to main content

Programmable Power Supply Unit


Bus Pirate 5 has a single 'Programmable Power Supply Unit' (PPSU) that can power devices from the VOUT/VREF pin of the main connector.

  • 1-5volts adjustable output, 400mA max
  • 0-500mA current sense
  • 0-500mA current limit with digital fuse
  • Backflow prevention to protect the PPSU when an external voltage is applied to the VREF/VOUT pin


Bus Pirate [/dev/ttyS0]
I2C> W
Power supply
Volts (0.80V-5.00V)

x to exit (3.30) > 2.1
2.10V requested, closest value: 2.10V
Set current limit?

Maximum current (0mA-500mA)
x to exit (100.00) > 50
50.0mA requested, closest value: 50.0mA

Power supply:Enabled

Vreg output: 2.1
V, Vref/Vout pin: 2.1V, Current sense: 7.3mA


Type uppercase W followed by enter to enable the power supply.

  • Enter the desired output in volts, for example 2.1 followed by enter.
  • Press y and enter to enable the current limit system.
  • Enter the desired current limit in milliamps, for example 50 followed by enter.

The Bus Pirate will calculate the closest possible values and enable the PPSU.


Enter any protocol mode (m) to use the power supply. The power supply is always disabled in HiZ safe mode.

Check voltage and current

Check the voltage and current in the live view statusbar if active, or show the power supply voltage report using the v command followed by enter.

  • The top line indicates the power supply is set at 2.1volts with a 50mA current limit.
  • The third line shows that 9.2mA is being consumed on VOUT/VREF. Since nothing is connected this is the current leakage, offset error and noise in the RP2040 analog to digital converter.
  • The last line shows that VOUT currently measures 2.1volts, and other pins measure 0 volts.

The difference in voltages (2.1, 2.19) is due to some code inconsistencies in float handling. It will be fixed shortly.


400mA is the rated maximum of the PPSU, but we added some headroom in the current limit to account for current spikes.

Current limit

Bus Pirate [/dev/ttyS0]
Error: Current over limit, power supply disabled


When the programmed current limit is exceeded the PPSU hardware fuse disables the power supply. The terminal colors invert repeatedly, an alarm bell will sound, an error message is shown and command execution is halted. Use the W command to restart the PPSU again.


Bus Pirate [/dev/ttyS0]
Power supply: Disabled

Lowercase w disables the PPSU.