|Monday, January 15th 2018, 18:29||
-- A basic general purpose USB enabled display
When ordering at Pollin Electronic, there is this unwritten rule of at least throwing in one probably useless item, one that you might never even get to work (or that is broken in the first place). In my last order, this was a Samsung HCS-12SS59T vacuum fluorescent display. I absolutely love this kind of display and they were cheap at only EUR 1.75 a piece. So why not?
In this post, I will showcase the project that this display became.
After some initial research and the code and schematics from
As the target was to make this a simple USB-powered gadget, I needed to power it all from a single 5 V supply. To generate the 24 VDC for the VFD anodes, I used a cheap DC-DC converter module which can be bought on, for example, eBay by searching for "dc dc boost". For the filament, VFDs usually require an AC current. This display module, however, also accepts DC without any visual penalties (might decrease the lifespan of the filament though). To generate a constant current, a simple single transistor current sink has been used. It is important to use a current sink here instead of a current source as the filament voltage needs to be offset from ground by about 1 to 2 V. All of teh remaining logic can be powered directly from the USB port.
The processor on the design is an Atmega8, mainly because it supports V-USB and has plenty of memory for most applications.
After some tinkering, this resulted in the following -- let's call it -- schematic:
- Set text:
- Set raw:
- Set brightness:
b<0\15> / B<RAW>
- Shift text:
- Set character RAM:
- Reset LCD:
- Reset board:
- Enable progress bar mode:
- Set progress bar:
x<0-60> <0-60> / X<2b progress>
By pushing the button on the back, the board can also enter a USB bootloader mode for easy firmware updates.
All source code and other information can be found in my git repository: https://git.notsyncing.net:8080/firmware/vfdboard. When cloning it, make to to also download the embedded Git submodules.
If you are interested in only the C driver for the VFD, but not the USB part, take a look at my GitHub: https://github.com/cclassic/hcs12ss59t
I have one more of these displays lying around. The aim for that one is to give it an analog input and create a VFD based VU meter. I will update you should this project really take shape.