A Gatcha with PCB Panel
Recently I started panelizing my own PCB designs to speed up SMT production.
I used to ask PCB fab house to panelize my designs, but Altium Designer has a board array feature that makes panelization very simple. Also PCBWay, my go-to PCB fab accepts panelized gerbers the same way single board designs. So I have become comfortable panelizing my own designs.
This PCB was for JT Filament – the through hole design has been available as kits, but I started offering pre-assembled version as well, so I wanted to produce SMT version for that.
The panels and the stencil were produced in two days and delivered via DHL Total turnaround was only 5 days. This is crazy fast. (No rush fees paid. Note that it’s not always so quick, but sometimes you get lucky.)
I ran the first batch of 4 panels as a test. Stenciling, pick & place, and reflow went without a hitch. I was very happy.
After testing each circuit on the panels, I went on to break them apart… That’s when it hit me – those V-scores are not snapping like I expected. After trying out some forceful ways to break the panels and only getting two boards successfully separated, I started to panic.
I talked to the support person at PCBWay and realized that my panelization had two problems;
- The boards were too close together (the support between the V-score lines needed wider).
- The inner cutouts left only thin strips next to the V-score line. This part can break or twisted during the depaneling.
#2 seemed to be the major issue, and since I can’t change the board design itself, I had to change the panelization. I decided to use tab-route instead of V-scoring. Which means I will have to file away the mouse bite residue after depanelization. Oh well…
I am now waiting for the delivery of the new panels (while keeping my fingers crossed). Will post the result soon.
Pocket High Voltage Generator Upgrade

HV Generator open output voltage – limited internally to under 200V. The red LED lit up to indicate the voltage limit has reached.
The Pocket High Voltage Generator that I made a few weeks ago proved to be a very handy tool. I have been testing Zener diodes very often since I use many Zeners in 12V to 91V range.
However I wanted to give it a bit more power so that I can test Nixie tubes clearly – the previous design can only give less than 0.5 mA through most Nixie tubes, some digits don’t lit up completely.
I made some upgrades to the components to give it a modest 2 – 5 mA (depending on the voltage) output. While still keeping the same form factor.
Now this circuit has enough oomph to shock you if you accidentally touch the output! Not the dangerous level, but it IS shocking. Perhaps one can use this as an electric Jack-in-the-box…
I’m sharing the PCB design of this project. Which can be purchased or downloaded via OSH Park.
A60 Source Code Published
After receiving many requests, I finally decided to publish/share the firmware source code of A60.
I was put off by the cheap clone made available, but I now think there can be something good in sharing the firmware, so that others might learn something from my code – not that my coding skill is that good, but the way you can use a simple MCU like a PIC24Fxx to directly control the individual brightness of 180 LEDs (60 x (R+G+B)) is pretty cool, because you can same money and space by not using PWM controller ICs.
You can find the code here: https://github.com/theledartist/A60
Pocket High Voltage Generator Quick Build
- There’s an update to this post, including PCB design files. -
There are times you find yourself looking for a relatively high voltage (100V to 200V often in my case) but low current DC power supply. I have zener diodes that are higher than 30V, which makes the lab supply useless, and filament LEDs with forward voltage over 60V. When I need to test them quickly, I used to hook up a simple rectifier circuit to a variable AC power supply (nothing more than a slidac with isolation transformer). While this gets job done, the setup is capable of supplying much too high current (1A or more), so I was always very nervous and extra careful in handling the circuit. All I need is a little HV generator that gives me around 200V DC and only capable of supplying a milliamp or less. Realizing that I do have such design available – one of the Nixie supply circuit – I just decided to put one together to use.
A single AA battery seems to be enough to generate over 200V on the output with no load. But the output quickly lowers when you draw 0.4mA. So it feels pretty safe to handle this casually, and I can only feel a bit of tingling, not electric shock when I touch the output terminals. The tool proved to be quite handy and useful in testing variety of things:
- Zener diodes (zener voltage)
- Switching diodes (reverse breakdown voltage)
- Filament LEDs (forward voltage)
- Regular LEDs (forward voltage – yes it’s ok to use this tool, since it’ll only give less than 1mA even at 2-3V)
- BJTs (breakdown voltages)
- Neon & Nixie tubes (not very bright, but you can tell if one works or not)
This is one of the most useful tools that I’ve made. And it only took a couple of hours to put it together.
Mini Headphone Amp /w Bass Boost
Added a new project to Instructables on headphone amp. This is something that I have made to improve my music listening experience during my subway commute.
Variations on Nixie Power Supply Design
Since I started tinkering with Nixie and other Neon tubes, I found the need for simple (read: inexpensive) high voltage power supply capable of generating over 170V from 5V DC.
After a bit of research I found that most of the high voltage power supply designs use boost converter driven by a PWM controller IC such as MC34063, with a high voltage MOSFET switching an inductor. (Here’s an example of the design.)
Those designs looked a bit overkill to me, so I started designing my own from scratch.
Since I’m familiar with transistor based blocking oscillator circuit to boost voltage (i.e. Joule Thief), I wanted to see if I can use a similar circuit. The switching transistor has to withstand the output voltage of 180V so I picked some high voltage transistors and experimented. Turned out that typical high voltage transistors (C-E breakdown of more than 200V) were too wimpy for the purpose, and the simple two transistor circuit that I was using was not capable of very high duty cycle demanded by high input/output voltage ratio (over 90%).
One way to reduce requirement for the boost converter is to add voltage multiplier at the output. I added a 3 stage voltage multiplier to a circuit using pretty ordinary (inexpensive) transistors. This circuit was able to provide required voltage (about 170V) and up to around 3 to 4mA of driving current to medium sized Nixie like IN-12.
After building a couple of prototype Nixie clocks using this circuit, I found a very nice transistor capable of handling 100V and 1A current.
With this new transistor, I can now reduce the voltage multiplier stage to only one, since the boost circuit itself can produce up to 100V (ok, with safety margin, more like 90V). This circuit outperformed the prior version, producing about 8mA at 170V.

Simple two transistor HVPS on a Nixie clock controller PCBA. (Inside yellow rectangle – fits in 12mm x 32mm)
While I was happy with this design – especially the size and cost – and built a couple of Nixie clocks and IN-13 Neon indicator tube projects with it, I still wanted to make it better (mostly wanted more power).
If I can find a transistor capable of withstanding over 200V with a reasonably low loss, I can forgo the voltage multiplier. However the only options that I can find were MOSFETs.
After checking the prices of high voltage MOSFETs such as IRF740, I concluded that it can be more cost effective if I can make it work, since I’ll be removing two diodes and capacitors from the voltage multiplier.
After a bit of experimentation, I got it to work! Here’s the MOSFET based circuit. Note that this design needs at least 9V of input voltage to work (due to the MOSFETs gate voltage). So for the 5V powered projects, I’d still use BJT based design.
This MOSFET based design is capable of delivering at least 50mA at 200V.
Nixie Clocks – Early Designs

I got my first Nixie tubes in early 2016 and started experimenting. I didn’t know anything about then at the time, but quickly realized that they were pretty simple devices to use.
Only part that needed developing was the high voltage power supply. I did not want to use mains AC as the power source, and ideally wanted to use 5V DC so that the clock can be powered from USB.
After a bit of research I found that most of the high voltage power supply designs use boost converter driven by a PWM controller IC such as MC34063. A large MOSFET switching a good size inductor. Those designs looked a bit overkill to me, so I started designing my own from scratch.
Since I’m familiar with transistor based blocking oscillator circuit to boost voltage, I wanted to see if I can use similar circuit. The switching transistor has to withstand the output voltage of 180V so I picked some high voltage transistors and experimented. Turned out that typical high voltage transistors (C-E breakdown of more than 200V) were too wimpy for the purpose, and the simple two transistor circuit that I was using was not capable of very high duty cycle demanded by high input/output voltage ratio (I’d estimate close to 99%).
One way to reduce requirement for the boost converter is to add voltage multiplier at the output. I added a 3 stage Cockcroft–Walton multiplier to a circuit using pretty ordinary (inexpensive) transistors. This circuit was able to provide required voltage and up to around 3 to 4 mA of driving current to medium sized Nixie like IN-12.
While this power supply was not quite powerful enough for larger Nixie tubes, I went ahead and designed a clock circuit to get my feet wet.
First design was a 4 digit clock using ATMEGA328 – I wanted to make the software easy to develop, so I loaded Arduino boot-loader. I also wanted to use the clock as a multipurpose numerical display so I added a V-USB port.
This prototype had some stupid bugs, but the basic functions such as multiplexing worked. I made a revision of this prototype right after.
Here I experimented with a tapped inductor to effectively double the boost converter output voltage and do away with voltage doubler instead of tripler.
Prototype PCB Giveaway!
As a part of developing new projects, I make PCBs for prototypes. I usually use OSH Park to have my prototype PCBs made. They are great – sophisticated web ordering page compete with full preview of the PCB design, which has helped me notice the errors before ordering. Low, no-gimmick pricing – just $5/sq. inch for a set of three PCBs.
Since I don’t always use all prototype PCBs, I have a few PCBs laying around. Some of them contain errors (that’s the point of prototyping, right?), but most of them (lucky for me) are perfectly functional.
So I want to give away those good prototype PCBs. The schematics and BOMs are provided on this site or instructables already, so you can gather parts and build them!
The qualification is simple – give me/my site a mention and a link on your web site, or if you have made any of my designs, put up a project at instructables (with pictures or/and video). Let me know what you did by either leaving a comment here or email, and I will send you a PCB. (Free shipping within USA only – sorry, international shipping will cost $5.)
I have more than a few good PCBs for the published and unpublished designs. Offer is limited to while PCBs last.
Aurora 48 Preview
Here’s the new project that I’ve been working on.
Aurora 48 has 48 full-color/RGB LEDs, each individually controlled. Each and every 48 LEDs has 7 bit per channel = 2,097,152 possible colors. Like other Auroras brightness curve is gamma corrected so the fades are very smooth.
Using all SMT components, Aurora 48 is compact and low profile. 2.68 inch (68 mm) in diameter and only 0.137 inch (3.5 mm) thick.
Aurora 48 inherits most of its circuit from other Auroras before it. The controller is PIC24FV16KA304 (same as Aurora 18×18), however doubling the RGB bus by the help of a binary decoder chip (74HC238).
Rustybolt.info mention of JT Blinker
Mr. Watson of Rustybolt.info blog wrote about the LED blinker circuit using Joule Thief. I’ve sent him a PCB of my prototype, named JT Blinker – multivibrator and Joule Thief combined to blink LEDs with one 1.5V battery.
He had designed a similar circuit years ago, and has some insights about this type of circuits…
USB Blinky!
Every now and then, I feel like designing something really simple and basic. Blinkies are my go to circuit for the simple LED joy. Just ten parts and the two LEDs blink back & forth…
However I always find powering the circuit a bit of pain – if I use battery, I’d have to change the battery all the time. But using an AC adaptor is kind of messy. Then I realize that USB ports are everywhere – on my computer, on the side of my keyboard, phone chargers, etc. Being able to just plug a blinky into any of USB ports around would be fun.
So here it is, USB Blinky. I used thicker PCB material so that the PCB will fit into USB port nicely making the simplest possible USB plug.
- view detailed technical info and assembly instructions @ instructables
Wave JT – LED chaser with Joule Thief
Wave JT is a multi-function LED chaser/scanner/sequencer. Wave JT incorporates Joule Thief to power the LEDs, so it operates on just a single AA battery.
Wave JT has over 16 sequence patterns, and speed can be adjusted by double/triple tapping the button. It’s the most compact yet versatile LED chaser.
Sequence patterns include many variation of the classic “Larson Scanner” from “Knight Rider”, random sparks, fade in/out, flashing, etc.
Even though there is only one button switch on Wave JT, you can control many things with it.
Poorman’s Buck Schematic and BOM
Here are the schematic and the BOM (Bill Of Material) for the Poorman’s Buck LED driver.
Poormans_Buck_schematic-rev2a (PDF)
BOM
- 1 or 2x 1 ohm 1W – R10, R11 (use only one to get 350mA, or 500mA (with R2=2.7k) output current)
- 1x 10 ohm – R8
- 2x 1k ohm – R3, R9
- 3x 4.7k ohm – R1, R4, R7
- 3x 10k ohm – R2, R5, R6 (change R2 to 2.7k ohm to get 1A output current)
- 1x 10k ohm Potentiometer – VR1
- 1x 22pF – C5 (optional)
- 2x 0.1uF – C2, C3 (optional)
- 1x 2.2uF – C1
- 1x 100uF / 35V – C4
- 1x 47-100uH / 1.2A – L1
- 1x GPN (5551, 2222, 3904, etc.) – Q1
- 1x GPP (5401, 2907, 3906, etc.) – Q2
- 1x P-ch MOSFET (NTD2955 or IRFU9024) – Q3
- 2x 1N4148 – D1, D2
- 1x SB140 – D3
- 1x LM393 – IC1
For more information including assembly instructions, please view my instructables.
Poorman’s Buck – High Power LED driver
Poorman’s Buck is a simple, constant-current high power LED driver capable of driving 350mA to 1A of output current. It is compact (footprint is 1 x 1.5 inches) and easy to build, yet very versatile.
Input power supply voltage can be anywhere between 5 to 20V (must be higher than the connected LED’s forward voltage drop). Up to 5 LEDs can be connected in series, and by parallel connecting the series connected LEDs, up to 18W total of LEDs can be driven (with 20V power supply).
Output current is configurable; 350mA, 700mA, or 1A using included parts. In board potentiometer can lower the output current down to about 9% level – which can be used as a dimmer. Full dimming control can also be done via the PWM input, making Poorman’s Buck a perfect building block for Arduino or other microcontroller projects.
For technical details please view my instructables.
You can purchase full kits or just the PCBs. Please use the buttons below to purchase.
*** Poorman’s Buck Kits and PCBs are sold out and discontinued. ***
Aurora 9×18 mk2 & 18×18 Technical Info
Here are some technical information on the new Aurora 9×18 mk2 and Aurora 18×18.
Aurora 9×18 mk2
Assembly Details
Will be posted on Instructables (instructables.com). Meanwhile please view my Instructables for Aurora 9×18.
Schematics
Parts List
- 4x 47 ohm (0603)
- 162x 150 ohm (0603)
- 9x 220 ohm (0603)
- 13x 1k ohm (0603)
- 4x 10k ohm (0603)
- 2x 0.1uF (0603)
- 2x 10uF (1206)
- 1x 22uF (1210)
- 3x DMP3098L (P-ch MOSFET)
- 9x MMBT2222A (NPN transistor)
- 1x PIC24FV16KA301
- 1x GP1UX311QS or equivalent (IR remote receiver)
- 1x Tactile Switch
- 162x Tricolor LED (common-cathode)
Firmware
Aurora 18×18
Assembly Details
View my Instructables
Schematics
Parts List
- 4x 47 ohm (0603)
- 324x 150 ohm (0603)
- 18x 220 ohm (0603)
- 21x 1k ohm (0603)
- 4x 10k ohm (0603)
- 3x 0.1uF (0603)
- 2x 10uF (1206)
- 1x 47uF (1210)
- 3x DMP3098L (P-ch MOSFET)
- 18x MMBT2222A (NPN transistor)
- 1x PIC24FV16KA304
- 1x GP1UX311QS or equivalent (IR remote receiver)
- 1x Tactile Switch
- 324x Tricolor LED (common-cathode)
Firmware
“Colour Night Joule Thief” LED Mood Light
Detailed information including building instructions: http://www.instructables.com/id/Colour-Changing-Night-Joule-Thief/
Universal High-Power LED Driver Kit & PCB
Universal High-Power LED Driver is a PIC microcontroller based switch-mode LED driver. This driver can boost or reduce the supply voltage to drive wide range of high power LEDs efficiently.
You can find the detailed information here:
http://www.instructables.com/id/Universal-High-Power-LED-Driver-with-3D-printable-/
*** Sorry, this product has been SOLD OUT and retired. ***
* If you live in Australia, you can purchase this kit from LED Sales.
Universal High-Power LED Driver
For the last 4 months, I’ve been working on “practical” side of things, and finally released this.
It’s a “universal” LED driver that supply constant current to high power (1 – 3W) LEDs. With remote controllable dimming and up to 3A of peak output current makes this a “one size fits all” kind of driver for many of your LED lighting projects.
Detailed information is posted at instructables. (http://www.instructables.com/id/Universal-High-Power-LED-Driver-with-3D-printable-/)
“Joule Thief” LED Night Light
“Joule Thief” circuit is an inductor based voltage booster circuit to light LEDs with low supply voltage. The circuit was published in 1999 and has been quite popular. You can see the principle of the circuit here: http://en.wikipedia.org/wiki/Joule_thief
My version is a variation that uses single coil inductor, to make the inductor easily obtainable. I design the circuit using readily available parts only, to make it an ideal DIY project.
Please see the full article on Instructables (http://www.instructables.com/id/Joule-Thief-LED-Night-Light/)
Aurora 9×18 assembled
Just finished assembling Aurora 9×18. Based on the prototype aurora 9, this unit has 18 tri-color LEDs in each of 9 circles.
Because of the number of components (162 LEDs), assembly was quite a chore. Tri-color LED has pins that are close together, very narrow for a through-hole component. Solder bridging can happen very easily. (I’ve been soldering for over 30 years now, and thought I had good enough skill to get through the soldering, but I had a bit of a struggle…)
Now it’s done, and the hard work is worth it. It’s beautiful… LEDs are controlled in 9 groups of 18 each. Each group of LEDs are forming a circle. Each RGB component is controlled by PWM, with effective resolution of about 13 bits.
The colors produced by those LEDs are beautiful, the transitions between colors are smooth. To me this is fascinating…
Aurora 18 prototype
New project using RGB/tricolor LEDs. Tricolor means triple the number of LEDs to control – more load on the processor. I decided to move up to 16 bit PIC, 24F series for the increased processing speed (MIPS) and memory. 16 MIPS and 4 KB of RAM and still had to resort to multiplexing RGB channels. 18 LEDs color/brightness individually controlled in gamma-corrected 8 bit levels (equivalent to about 14 bit linear PWM).
Countless software tweaks later I’m getting 200 Hz refresh rate. Hard to tell from the video, but the fades are truly smooth.