VFD Clock

Since a long time I had an old soviet vacuum fluorescent display IVL2-7/5 VFD laying in my cabinet drawer. I wanted to make some device, where it could be used. I found this project in the Instrucatbles and GitHub, and decided to make something similar, powered not by a battery but by the mains. In this article I will describe how I did it.
The project is sponsored by PCBWay. It is very reliable PCB maker and provider of different other services : PCB Assembling, CNC Machining, 3D printing, PCB Design...etc.
Supplies






- I wanted to place the clock in some suitable housing. I found the box on the picture above in Aliexpress and decided to use it for that purpose.
- For the power supply I used small AC/DC 3W 5V converter module
- The controller used is ESP32-WROOM-32 38pin development board
- The main part : IVL2-5/7 vacuum fluorescent display I had, but it can be found in eBay for 5-10 USD.
- To make the device safe I used also fuse holder placed in the high voltage mains input
- For the 24V generation circuit is used "cdrh3d16" type inductors (4.7uH). Can be found in Aliexpress.
- All other parts can be extracted from the schematic and the reference design
The Circuit


The circuit is almost the same as in the reference project. It is shown on the picture above. In the attached PDF file you can look at it in higher resolution.
The main differences are:
- Instead the ESP32 module I use the whole ESP32 development board - this makes the design easier to build and debug - the functionality of the board can be tested preliminary and the probability of malfunction is smaller
- To save power in the reference design was used switched mode DC/DC converter to make the needed 3.3V supply from the 5V input voltage. This approach requires using a proper inductor in the circuit. When making experiments I had to change some chokes, because some of them were heating reaching extremely high temperatures. Also the chip was very warm. So, I decided to use the simplest approach - Linear voltage regulator type AMS1117-3.3.
- For the heating of the cathode filament in the reference design is used PWM signal generated from the microcontroller and buffered by an integrated motor driver chip DRV8837C. I tried this solution, but the result was bad - the VFD was not working. I changed few chips without success. The problem with this chip is that it is very small (WSON (8) 2mmx2mm) and difficult to solder. Even soldered after full check of it connections it was not working. I suppose that the problem could be also in the code: in the file Vfd_Display.cpp in the function vfdDisplay the row "digitalWrite(HEAT_INT2, LOW);" should be "digitalWrite(HEAT_INT2, HIGH);", but I did not try it because I went to a hardware solution: The DC voltage over cathodes have to be around 2.4V. I used the 3.3V supply generated by the LDO AMS1117 and reduced it by the use of few serial connected diodes ( D2,D3,D4,D5 see the circuit). In my case they are Schottky diodes and have a voltage drop around 0.2V. Bridging some of them will bring higher luminosity of the VFD. When the diodes are placed, the DRV8837C chip must be omitted. If you want, you could try to use it instead the diodes. The PCB allows both variants.
On the picture above can be seen my temporary experiment with a diode and external LDO board.
Downloads
The PCB




The PCB was designed double sided to make it smaller. It can be ordered here. As said it was produced and shipped by PCBway . I had 10 nice looking high quality boards in 10 days after the ordering for the incredible price of 12 USD (including the delivery expenses). On the pictures you can see two versions of the boards. The difference is the number of the control buttons. In the first version they are three : hour/min, up, down. In the second I have added the ESP32 reset. In the real life these buttons are practically not needed. The clock connects to the wifi network and sets the time automatically. You will need them only if you intend to use the clock outside your WLAN coverage. If you use it at home, you can simply omit them.
Assembling




The soldering of the board is easy (only the motor driver chip requires more experience). The parts are placed on both sides. I would suggest after soldering of each subblock to make a functional test (presence of 24V supply, presence of 3.3V supply .. etc). The ESP32 I put on headers. This gives more flexibility in the debugging and it is easier to handle.
Put It in the Box








- As first step I mount the fuse holder and the mains cable.
- I glued inside the power module.
- Using a PVC sheet I cut PCB holder in the form of internal shape of the box
- On the box walls I glued PVC spacers to support the PCB holder
- Finally the PCB holder plate was fixed by the use of epoxy glue
The final result of these operations can be seen on the last two pictures.
Additional Assembling Works





When trying to mount the the front cover of the box I faced a problem. This can be seen on the last picture in the previous step. The VFD was sticking out and preventing me from installing the lid. There was a distance of about 4mm between the lid and the box. After thought I decided to put a 3D printed spacer. Here came to my aid again PCBway through its 3D printing service. They printed the part from ABS in very high quality. On the picture above can be seen how smooth their professional 3D printers work.
The use of the spacer solved my problem. (Its STL file is included for your use if needed)
To finish the design and make the clock looking better, I wrapped the box in vinyl sheet.
On the front glass I glued a black transparent foil - it covers the electronic parts and makes the clock to look better. Of course it is a matter of taste. You can leave the clock transparent.
Now the clock stays on the bureau of my daughter and counts the time.