Introduction: A Simple Driver for VFD Displays

About: Maker | Electronics Engineer | Full-stack Software Developer | Build, Automate, Innovate |

VFD displays have been replaced by the new display technologies today.

But the quality of display, a VFD gives is unbeatable.

You may find one in your Car, DVDs, Radios, Casette Players,etc..

Also, there are may kinds of VFD display modules available in the market.

This instructable deals with the use of a VFD Display scavenged from an old instrument and making a simple driver for it.

Step 1: Parts of a VFD

A VFD display consists of filaments(heater), Grids, and Phosphor Anodes sealed in a rectangle vacuum tube.

All the VFDs differ from each other only in the number of anode and grid pins and operating voltage.

A VFD has filaments in it for the generation of electrons. The Filaments act as a Hot Cathode.Filaments generate Electrons, when they get heated, by an electric current.

It also has (phosphor) anodes, which form the digits and letters in it.

Over the Anodes, there are thin metal grids which controls the diffusion of electrons from the filaments to the anodes.

When these emitted electrons from the filaments strike the phosphor, it glows.

Step 2: Operating Specs of a VFD

A VFD requires a High Voltage (12V to 30V or more), for its proper operation.

The Filament (heater) of a VFD display requires around 3V - 3.3V for its operation.

The Anodes and Grids have to be supplied a positive voltage of around 12V to 30V or even more.

But this becomes difficult when on a 5V control system.

In order to operate the VFD on 5V supply we need a DC - DC Boost converter to boost 5V to 12V and above.

You can search the Internet for ready made DC - DC Converters to boost the voltage.

Here, in this instructable, I am using a LT1070 based step-up voltage circuit.

Step 3: Driver Circuit for VFD

This driver circuit makes us able to use the VFD with Arduino or any MCU of our choice (running at 5V).

1) The filaments of the VFD requires a maximum voltage of 3.3V.
So, to be on a safer side, we keep it at 3V. Or else the filaments may get Red Hot...!!
You can check the resistance of the filaments using a multi-meter and calculate the value of resistance as per as your need and hook it up as shown in the above image.
But be sure that the voltage drop across the filament may not exceed 3V !!!.

2)The Anodes and the Grids of the VFD have to be searched by applying voltages to the pins of the VFD,in case if you don't know the pin-outs.

After finding out the pins for Anodes and Grids -

We know that we need a positive high voltage on both the Anode and Grid for turning it on.
For this purpose, hook up the pins of the Anodes and Grids separately to the resistors and transistors as show in the circuit above.
To minimize the number of transistors, you can use a Darlington Transistor Array - ULN2803 or ULN2003, for easy interfacing with Arduino or any MCU.
Alternately, you can use Resistor Arrays instead of single resistors as the Pull-up resistors.

*Note - A logic HIGH on each pin of ULN2803 / ULN2003 will turn the respective pin OFF. So, in order to turn it ON, Apply a logic LOW on the required pins of ULN2803 / ULN2003 .


3)After finishing the circuit construction, connect the DC-DC step up circuit/module output to the pull up resistors as shown & also connect the module to 5V supply.

4) Power the circuit and Program....!!!

Step 4: Completed VFD Driver

I made the driver using old resistors, 2x ULN2803 & 1xULN2003.
The filament resistor I connected is a 10ohm resistor.
The Step up voltage converter circuit is based on the LT1070, which is set to convert 5V to 25V.
The MCU used, is a ATMEGA16 clocked at internal oscillator of 1MHz.
The ULN2003 controls the segments and the ULN2803 controls the digits and the other Grids of the VFD.

Remember -

  • Applying logic 0 (LOW) on the pins of ULN2803 / ULN2003 turns the respective anodes and grids ON.
  • Applying logic 1 (HIGH) on the pins of ULN2803 / ULN2003 turns the respective anodes and grids OFF.


NOTE- Your VFD display might be different from mine and it may have less or more number of pins. Plan the circuit according to your need. Leave the Grids unconnected that you don't need.

* You can also interface the grid and anode pins using Demultiplexers and Decoders. Just connect them between the ULN2803/ULN2003 and the Arduino or MCU. This may reduce the number of pins of Arduino or MCU required for getting it on. Design your code accordingly. *

* If your application has the need of displaying digits, then you can also prefer BCD-to-7 segment decoder ICs as per as your need. Plan your code. *

Step 5: VFD in Action...!!!

Check out the video for the VFD display in action....

Happy Hacking...!!!