hannah mishin

Portfolio and Blog of artist and technologist Hannah Mishin.  

Russian Tricolor VFD Indicator Clock

This is an ongoing project.

I found these Soviet new-old stock tri-color indicators on Ebay, ILV2-5x7M.  

I am interested in making a clock - one which is not necessarily for telling THE time, but indicating the passing of time and the unique configuration of this display presents an interesting challenge.


The datasheet came in Russian, so I google translated the text.

HERE is a PDF of my graphical translation (likely crude, but the requisite information is available).

I mocked up a straight driver circuit using only PNP/NPN to test the wiring.

See this blog post about troubleshooting VFDs here: 


The above linked blog post explains a great deal of the logic of VFD displays. That blog incorrectly drives the filaments and does not control for the multiplex rate properly. Part of the troubleshooting of this post will be in developing the hardware for the filament driver and properly controlling the code.

This display has 3 colors: Blue, Red, and Green.  There are 5 lines with 7 of each color in each line - therefore, I have 35 Blue segments, 35 Red segments, and 35 Green segments.

This makes 105 individual segments.

There are 5 Grids, representing one (in the image below) horizontal row.

The 21 addressable pins are for the vertical rows (called "lines" in the datasheet), 1 pin per color, per row.   


By turning on the blue line 1 and grid row 1, I can individually turn on the top left most blue segment. I will want to use other lines and grids - I will send a binary code through a micro-controller [0, 0, 0, 0, 1].  This would bypass the first 4 blue segments (those on the left most side of the VFD) and only light the last blue segment - while enabling other grid (row) activity on the first vertical line. 

(I think that paragraph might make sense, if unclear, send me a message.)

The Datasheet Provides Electrical Parameters as Follows:

Current Glow: 225mA

Voltage Glow: 2.8v

Impulse current of elements of no more than mA     

        green glow: 7mA           

        red glow: 10mA           

        blue glow: 10mA

Impulse (pulsed) elements of voltage - the voltage of the elements pulsed     

        green glow:  25v           

        red, blue glow: 50v

Impulse GRID current of no more than: 10mA

Impulse GRID voltage: 25v


Beginning the wiring and coding.  I tested the transistor circuitry to control the grids with some LEDs.


The Russian VFD has five lines of segments of colors.  By switching the grids on and off I can multiplex the component.

Each Grid gets a circuit which is comprised of one TIP120 - (NPN), two 10K resistors, and an IRF9510 - (Here is a nice write up of a Mosfet PNPs). 

The below graphic is the circuit driving each element (grid, green, red, and blue).

Because of size constraints for the enclosure, I purchased some SMD IRF9510s in the form of D2Paks.(this footprint is HUGE) I attempted to transition the TIP120 to a ULN Darlington Array. However, perhaps user error, I could not get the Darlington Array to function.

Therefore, as (sadly!) the TIP120 is now an outdated, no longer manufactured component (to my knowledge).  There are no SMD versions of TIP120s. I purchased several N-type BJTs which have similar electrical attributes. The FZT851CT-ND worked just fine.  

I air wired these and tested output coming from the teensy - to confirm the current from the Teensy would trigger this NPN.

2018-09-08 12.09.03.jpg

So I laid out my board with these components.


Because of the enclosure I am planning, I rearranged the components and the enclosure shape is the board shape.



After wiring up each connection, I am still tight on space. However, I have decided to make each unit contain two VFDs

Therefore, all further discussion of the circuit will contend with driving two VFDs. 

I am using a MAX6921 20 output VFD driver chip. 

Two MAX6921 ICs will handle the Blue and Red Segments (both driven with 50 volts at 10mA).  There are seven of each, totaling 14 Outs from the 6921 IC.  To drive two VFDs I double this number and have a total of 28 segments to drive, requiring 2 MAX6921 chips. 

The Green Segments accept 25 volts and cannot be driven by the same MAX6921 chip driving the other segments and thus need to be driven from a separate IC with its own VBB.  I will have 14 total green segments to drive (driving 2 VFDs per clock). 

I have decided, for ease of coding coupled with the electrical parameters requiring the Green Segments to be driven by a separate chip, to segregate these three MAX6921 ICs to handle colors only.  (one MAX6921 for Blue, one for Red, and one for Green)  

The Grids (5 rows, 5 Grids) will be directly driven from the Teensy 3.6, using the NPN / PNP graphic above. 

I could have coupled the Grids to be driven to the green segment 6921 IC, but for a myriad of reasons (mostly testing), I have chosen to keep the grids independent of the segments.

Here is a link to the pinout of the Teensy 3.6. 

I made the below graphic to help navigate the myriad of pins and arrays of components. 

  There is a great deal of small print (pinouts etc.) in this image. See    THIS    link for a pdf for higher resolution.

There is a great deal of small print (pinouts etc.) in this image. See THIS link for a pdf for higher resolution.

I have most of the circuit configured. The only thing remaining is the Filament. With a circuit like this, breadboarding is a nightmare and can be prone (at least for me) to wires loosening and errors in hooking up components, so I went ahead and made a board with pins in and out for breadboarding the filament driver. Below is the schematic of the board at this stage.

   Here   is a link to a larger file

Here is a link to a larger file


The Filament is likely the most difficult item to drive.  It is finicky - and should be considered in great detail if you are driving a VFD. Driving the filament improperly will case permanent damage to the device (if not egregious, it will occur over a longer period of time).

The filament should be thought of as an Incandescent light bulb.


These VFDs are no longer available (or vary in their availability). As such, I need to know that when I drive the VFDs I can reliably do so without causing damage to the components. The breadboard adaptable circuit above will allow me to quickly prototype and verify different methodologies for driving the filament.

Once I am certain that the Filament is being driven in a healthy way, I will run a random sequence on a single VFD for an extended period of time to ensure that the way the component is being driven is safe for the component.


For the VFD to run, it requires that the grids, filaments must turn on before the segments power on.  Else, the VFD malfunctions.

Therefore, I have incorporated a relay to cut the 48 volts to the 6921 until ready to power the segments.

I sourced a PCB mounted Relay and wired it as normally open.

I have coded a “set-up” routine in the code.




I toyed with using a transistor switch the 48VDC on to the board, but then logic kicked in and I used the relay outlined in the above description.  That being said:

Here is an excellent tutorial using a P-channel MOSFET as a power switch -  HERE -



EasyMold Silicone Rubber – Platinum Cure Silicone
Platinum required for Super Sap CCR.

45 Minute to 1 hour working time, 24 hour cure. Cure rate can be adjusted by applying heat. No Shrinkage.

Entropy Resins - Super Sap CCR - Bio Based crystal clear casting resin.