I'm working on my first nixie clock which will be running with Arduino, using a 74141 nixie driver for the cathodes (common for 6 tubes) and multiplexing the anodes.

I am using a MPSA42 NPN transistor with the collector connected to +170VDC, the base driven by the Arduino output, and the emitter connects to the tube's anode. The problem is that the switching with the MPSA42 doesn't seem to work (doesn't turn ON): enter image description here

I also saw some other design which used both MPSA42 and MPSA92 each of the six anodes like this:

enter image description here.

  1. What might be the reason why the single MPSA42 configuration would not switch ON?

  2. Why would the other design add the MPSA92 and whats the logic behind using the MPSA42 + MPSA92 combination?

  • 3
    \$\begingroup\$ Because the transistor is connected wrong. You need current to flow from base to emitter to turn the transistor on, with the emitter held at +170 V, there is no way that will happen. With an NPN transistor the collector should be at a higher potential than the emitter. The schematic you show uses the NPN transistor in a common emitter configuration to turn on the PNP, also a common emitter to power the load. \$\endgroup\$
    – Colin
    Commented Sep 26, 2017 at 7:48
  • 1
    \$\begingroup\$ @uhoh - I edited the question. In the current configuration the collector is connected to the positive HV and the emitter is connected to the tubes anod. No resistors are used since the current is very low (2-5ma) and the MPSA42 should be able to handle the current and voltage. \$\endgroup\$ Commented Sep 26, 2017 at 8:22
  • 2
    \$\begingroup\$ @Colin__s - isn't that what the transistor is meant do when used as a switch? why it is rated 300V if ~200 is too much for it? Maybe I got it all wrong, and I'll be happy learn. \$\endgroup\$ Commented Sep 26, 2017 at 8:35
  • 1
    \$\begingroup\$ It's quite possible to stay within the maximum voltage and maximum current, but still exceed the maximum power rating. \$\endgroup\$
    – Finbarr
    Commented Sep 26, 2017 at 9:10
  • 1
    \$\begingroup\$ So why other design used both MPSA42 and MPSA92 and it probably worked as it should? \$\endgroup\$ Commented Sep 26, 2017 at 12:47

4 Answers 4


What might be the reason why the single MPSA42 configuration would not switch ON?

Actually the transistor switches on, but the voltage you can reach on the emitter is smaller that the voltage at the base. This configuration is called "emitter follower".

An NPN transistor will "conduct" if the base-emitter junction is forward biased. Therefore it must be \$V_b-V_e>V_f\$, where \$V_f\$ is the base-emitter junction forward voltage (between 0.6V and 0.7V).

Since your Arduino output is 5V, the maximum voltage at the emitter will be \$V_e=V_b - V_f= 4.3\ V\$ (assuming a negligible \$I_b\$).

Why would the other design add the MPSA92 and whats the logic behind using the MPSA42 + MPSA92 combination?

This circuit has a big problem: you must put a resistor in series to the base MPSA92, as follows (othewise the both BJT will likely be destroyed). OR you can change the MPSA92 with an MPSA42 (NPN).


simulate this circuit – Schematic created using CircuitLab

Assuming you use the circuit on the left: The first transistor (MPSA42) acts as a level translator. When it's OFF, the collector voltage is pulled high (to +HV). When it's ON, the collector voltage is about 0 V.

The second transistor, in turn, (MPSA92) is a PNP BJT. It will be OFF when the collector of the first BJT is at high voltage (Because its base-emitter junction is 0V), and it will turn ON, when the collector of the first BJT is at 0 V (because there will be a current being injected into the base of the MPSA92).

If you use the circuit on the right: the first transistor is a level translator, the second one in an emitter follower. The difference with with your first single-transistor circuit, is that now the base voltage can go high. At this purpose, knowing the anode current you should properly calculate the resistor values (watch-out for power dissipation too!)


In your first example with a MPSA42 (NPN BJT), when the arduino switches high (5V), your NPN does turn ON. However the voltage presented to the anode of your nixie tube is only \$5-1V_{be}\$ which is approximately 4.3 V. No good, for a high-voltage nixie tube.

As you can see, to use an NPN transistor as a high-side switch you need to pull the base 1Vbe above the supply rail you want to switch on. Additionally you need to pull the base all the way back to ground to turn it off. Because of these requirements, an NPN is rarely used as a high-side switch.

In your second example, you are using a PNP as a high-side switch. In this case all you need to worry about is current. When you want to switch on the PNP, pull \$ I_c /10 \$ current out the base terminal for good saturation.

To switch off the PNP don't pull any current out of the base of the PNP. The pull-up in parallel with the base & emitter terminals of the PNP is discharge base charge and potential base leakage current.

Note: One resistor is missing from your second schematic.

Sample schematic of a high-side PNP switch for a nixie tube is shown below,


simulate this circuit – Schematic created using CircuitLab

To select components \$R_x\$ & \$ R_2\$ we start from the load and work backwards towards the control signal.

We will assume that max load current of a nixie tube is 20 mA. To ensure good saturation of Q2 we desire a base current of,

$$ I_{B2} = \dfrac{20 \text{mA}}{10} = 2 \text{mA} $$

When Q2 is conducting we know \$V_{B2}\$ will be one \$V_{BE}\$ below the supply rail \$ \approx 169.3 \$ V (170 is also just as good of an approximation here).

The pull-up current through R1 is, $$ I_P = \dfrac{0.7}{100\text{k}\Omega} = 7 \mu \text{A} $$

The collector current of Q1 is the sum of \$ I_{B2} + I_P \$ which is approximately just \$ I_{B2} \$ = 2 mA.

Resistor \$R_x\$ is a dropper/ballast resistor used to set the base current drive of Q2. We know \$V_{B2} = 169.3\$ V. The collector voltage of Q1 (\$V_{C1}\$) can be approximated as 0 V (typically 200 mV is used as an approximate Vce,sat however its negligible in this circuit).

By ohms law, we can find Rx as, $$ R_X = \dfrac{ 169.3}{2 \text{mA} } = 84.650 \text{k}\Omega $$

Selecting the next lowest value in EIA24 resistor series would be 82 kOhms.

Select \$R_2\$ for at least 200 uA of base drive. Anything lower than 25 kOhms would be fine for \$R_2\$. Personally, I would just use a 10k resistor for \$R_2\$.

  • 1
    \$\begingroup\$ I think you should create a schematic showing the missing resistor. I can't imagine how the OP will know (1) where to put it and (2) what value it should have. (I agree with you, but don't imagine the OP can make things out of whole cloth, so to speak, or else they would not have been able to post that question.) \$\endgroup\$
    – jonk
    Commented Sep 26, 2017 at 16:43
  • \$\begingroup\$ @Jonk, Yes, I agree a schematic and sample calculation would improve the answer for OP. Thanks \$\endgroup\$
    – sstobbe
    Commented Sep 26, 2017 at 17:38
  • \$\begingroup\$ Much improved. (One thing to keep in mind is that deep saturation probably isn't needed for the high-side BJT, so the base drive probably can be relaxed a bit. \$R_X\$ in your design will suffer from nearly \$400\:\textrm{mW}\$ of dissipation and it probably isn't necessary. But thanks and +1! \$\endgroup\$
    – jonk
    Commented Sep 26, 2017 at 17:55
  • \$\begingroup\$ Very true! But if Q2 falls out of saturation Pd of to-92 will high (say multiple digits lit simultaneously) magic smoke may make a guest appearance :). \$\endgroup\$
    – sstobbe
    Commented Sep 26, 2017 at 18:02
  • \$\begingroup\$ @sstobbe - thanks for detailed, l believe you answered what i needed to know and learn. But just to be sure: the npn transistor can't be used as a switch (like physical switch orcrelay) for high voltage circuut because it can output only as much as Vbe is, true? And I couldn't understand why Vb2 will be minus one Vbe, can you please explain? Is it because thatls the minimum voltage required to turn on Q1? \$\endgroup\$ Commented Sep 27, 2017 at 16:09

Your first circuit

won't work because the base needs to be a little higher voltage than the desired output. This is the emitter follower configuration. It gives you current gain, but not voltage gain. It is not appropriate for what you are trying to do.

Your second circuit

is closer to the right idea, but is flawed as shown. There is nothing to limit the current thru E-B of the top transistor and C-E of the bottom transistor. Since you can't rely on some maximum gain, these transistors will likely blow up.

Here is a better way to do what you want with very minimum parts:

With the resistor on its emitter, Q1 becomes a controlled current sink. It is off when the digital signal is at 0 V, and sinks about 1 mA when 5 V. Most of that 1 mA goes thru the base of Q2, turning it on. That causes OUT to be pulled high. R2 makes sure Q2 is solidly off when Q1 is off. Otherwise, Q2 would amplify the little leakage thru Q1, and its base would also be more susceptible to stray noise.

This circuit can source about 1 mA times the gain of Q2. That amount of current should be well more than required for normal nixie tubes.

The load on the digital output is the 1 mA divided by the gain of Q1. Any remotely ordinary digital output can handle that.

Note that both transistors need to be rated for 200 V or more.

Q1 will dissipate about 170 mW when on. That's about the limit for a SOT-23 package. Most likely you don't need 1 mA of base current thru Q2. Increasing R1 lowers the Q2 base current, and also the dissipation of Q1. Find the current you really need to source, divide that by the minimum guaranteed gain of Q2 after some derating, then adjust R1 to get that current. That will likely be less than ½ mA, in which case pretty much any transistor you can find for Q1 can handle the dissipation.


In the following schematic, you can see a design that I've noticed at this "instructables" site, Simple User-adjustable DIY Nixie Clock.


simulate this circuit – Schematic created using CircuitLab

Here, \$Q_2\$ is operated as a saturated switch, pulling it's collector down towards ground and causing almost the entire high voltage supply to appear across \$R_2\$ in order to provide base current to operate \$Q_1\$ also as a switch. In this design, \$R_2\$ can yield nearly \$400\:\mu\textrm{A}\$ of base drive current to \$Q_1\$ (with a supply rail of \$+190\:\textrm{V}\$), which means it can support perhaps as much as \$15\:\textrm{mA}\$ of anode current to the Nixie (probably not more.) \$R_3\$ provides perhaps \$100\:\mu\textrm{A}\$ of base drive current for \$Q_2\$, which is more than enough.

There is a risk remaining. \$Q_2\$'s collector will be exposed to the full HV rail voltage of \$+190\:\textrm{V}\$. There's a capacitor, in effect, between that collector and the base. Even with \$R_3\$ and a grounded emitter, it still represents a possible one-component failure path to the MCU's I/O pin.

Opto-isolation is one way to add some protection. But another is found in the schematic below.


simulate this circuit

Here, I've used \$Q_2\$ as part of a cascoded driver design and a resistive divider from the I/O pin. (\$R_3\$ could be saved by shorting it out, but I've added it to allow me the freedom to make adjustments here in case there is an oscillation problem; given the high voltage swings present.) \$Q_3\$ is operated as an emitter follower, generating about \$400\:\mu\textrm{A}\$ of base drive for \$Q_1\$ with a \$5\:\textrm{V}\$ I/O pin voltage. This arrangement is a little safer, I think, and may be an approach I'd try.

If I were being paranoid, though, I might also add a BAV99 at the base of \$Q_3\$. As shown below:


simulate this circuit

That's about it.

You can now choose your complexity depending on your own considerations. But your original thoughts about just using a single BJT by itself really could not have worked. Which is why it didn't. It's also rather unsafe to even try.

Added note: I've included a resistor called \$R_A\$, which is needed with a Nixie tube, which have strike and sustain voltages that are markedly different. The value of this resistor varies and will need to be calculated for the specific Nixie tube being driven and the specific anode rail voltage being applied. Also, you need to be aware of necessary blanking times while muxing and also not to leave the cathode end of a digit floating when not active (needs to be pulled to high enough of a voltage that it doesn't "ghost.")


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.