Bus Pirate high voltage supply with only 6 parts

Posted on Friday, December 4th, 2009 in Bus Pirate, Development by Ian

We used the Bus Pirate and 6 common components to multiply 5volts to over 120volts with a boost converter, a type of switched-mode power supply. Similar circuits are commonly used to power 180volt nixie tubes from low voltage power supplies. This circuit is a simple way to build your first SMPS, but be careful because it could potentially output hundreds of volts!

This post was inspired by Robots and Dinosaurs Bus Pirate-driven high voltage Geiger tube power source, and the need for a 13volt supply for the Bus Pirate PIC programmer. We’ve got a detailed writeup after the break.

You can buy a Bus Pirate for $30, including worldwide shipping.


We won’t give a lengthy technical explanation of a boost converter, see Wikipedia, Google, and the Switchmode group. In short, a boot converter is a sort of pump. When the transistor (T1) is on, a field builds in the inductor (L1).  When T1 is off, the field in L1 collapses though diode D1 and into capacitor C2. By switching the transistor on and off, with a pulse-width modulator for example, a voltage higher than the supply builds in C2.


The boost converter can be built on a bread board with only 6 parts, but the two optional parts (ZD1 and R2) make the circuit somewhat safer. The maximum voltage rating of C2 must be sufficiently high, all other values are open for experimentation:

  • C1 is an electrolytic capacitor. We used a 47uF cap rated for 16volts max. Any value from 10uF to 100uF should work. Power rushes into the inductor (L1) when it switches on, C1 is an extra reservoir that feeds the hungry inductor.
  • L1 is an inductor, probably the hardest part to find locally. We used a 680uH inductor, but any value from 100uH to 680uH should work.
  • T1 is a common BC547B transistor. SMPS usually use a MOSFET, but for this demonstration an NPN transistor works fine. The transistor needs a base resistor (R1) of around 1000 ohms.
  • D1 is a common 1N4148 diode.
  • C2 must store the high voltage output, we used a 1uF capacitor rated for 63volts. The SMPS has no feedback, so the output voltage isn’t controlled. Our supply quickly rose to 83volts, well beyond the capacitor’s specifications. We’d recommend a capacitor rated for 100volts+.
  • ZD1 is an optional zener diode that can clamp the output voltage below a certain level. For example, use a 12volt zener to prevent output greater than 12volts. This is a safety measure to prevent runaway high voltages.
  • R2 is an optional resistor to drain C2 when the circuit is not in use. C2 might otherwise store a high voltage for a long time, ready to shock you unexpectedly. Use a very high value, such as 100K – 300K ohms.

Using the Bus Pirate to drive a boost converter

We’ll use the Bus Pirate’s 5volt power supply as the input voltage, and the pulse-width modulator/frequency generator mode on the AUX pin to drive the transistor.

HiZ>m<<<configure mode
1. HiZ
2. 1-WIRE

10. LCD
(1) >2<<<choose any mode (not HiZ)
Mode selected
1WIRE routines Copyright (C) 2000 Michael Pearce
Released under GNU General Public License

Start the Bus Pirate, enter any mode to get access to the power supplies (we used 1-Wire).

1-WIRE>W <<<power supplies on
1-WIRE>v <<<get voltage monitor report
Voltage monitors: 5V: 4.9 | 3.3V: 3.2 | VPULLUP: 0.0 |

Turn the power supplies on with a capital ‘W’. Get a voltage monitor report (v) to make sure the power supply is working.

1-WIRE>g<<<setup PWM
1KHz-4,000KHz frequency generator/PWM (beta)
Frequency in KHz (50) >1 <<<1KHz
Duty cycle in % (50) >25 <<<25% duty cycle
PWM active

Now activate the pulse-width modulator (g). We used a low speed (1KHz) and short duty cycle (25%) to limit the potential current produced. See this instructable to learn about calculating the most efficient boost converter switching frequency and duty cycle.

Using a multimeter, we measured the output form the booster to be 85volts. Higher PWM frequencies make more efficient use of the inductor and transistor, and produce higher voltages with greater potential output current (to a limit). At 50KHz and 50% duty cycle our output was over 120volts. Use only an appropriate multimeter, never use the Bus Pirate probe to measure high voltage, it’s limited to 6volts max!

1-WIRE>g<<<g again to deactivate
PWM disabled

Press g again to disable the PWM and shut down the boost converter.

Taking it further

Our circuit is about the simplest boost converter possible. In most cases we’d want to limit the output voltage. A zener diode is one way to clamp the voltage, but it’s wasteful. A better way is to measure the output voltage and activate the PWM just enough to maintain the desired level. This is commonly called a feedback loop. More on this when we introduce the Bus Pirate PIC programming adapter.

This entry was posted on Friday, December 4th, 2009 at 1:22 pm and is filed under Bus Pirate, Development. You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.

One Response to “Bus Pirate high voltage supply with only 6 parts”

  1. Ian says:

    I was pretty cavalier about choosing parts, but as someone on the switchmode list pointed out, these voltages are probably higher than the breakdown voltages of the 1n4148 diode and the BC547 transistor. I didn’t have any problems, but consider using the optional parts to prevent damage to the Bus Pirate.

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Recent Comments

  • Inyaki: Hi, Would you si king to point me the corsair's single 12v rail supplies? I am interested on it but I can't find it.....
  • peter: In the middle of the geek reading I get a tweet. Here I am
  • icserny: Unfortunately the DIY PCB no longer available. Something happened...
  • Lukas: Yes, that's also how I do it, use an extension cable or ar least a 'spacer', i.e. a male and female header soldered directly together....
  • Ja: This looks very interesting. Unfortunatelly looks like the website Is not working now.