Library needed?

Hello I have here a 1x16 Starburst type VFD that I have been trying to get running for ages now and with little to no help I have gotten no where but lighting the thing up with gibberish letters and symbols. I’m completely lost and need help.

The display uses a 10937P-50 driver chip. I’ll post the datasheet for it. What I’m looking to do exactly is to make this display able to work with LCD Smartie using the Arduino Nano I have as some sort of pass though. It is limited though, the display can only display upper case letter, numbers and some symbols. This needs to be taken in to account when making the library so this way it will automatically take all lower case letters and make them upper case letters, whilst ignoring any symbols the display cannot handle.

If any other information is needed about this display like pictures and such, just let me know and I’ll reply as soon as I can because I really need to get this thing running. Kind of holding up a project from completion.

datasheet.pdf (368 KB)

I think it's the driver chip you care about rather than the exact display.

I just read the data sheet - it looks like it has all the info needed to write a driver for it. You're going to need a clock signal and a separate data signal, it's some kind of serial protocol, but almost certainly a non-standard one so this is not going to be a quicky.

It sounds like a really old-fashioned thing, especially if you use fluorescent tubes for it. Also I'm a bit confused on the voltage level it expects to work with on the control side. At least the chips are quite inexpensive and appear readily available.

Short of having the actual hardware to test it out, I'd be glad to try and write a driver for this chip, based purely on the info in the data sheet, and hopefully get it to work the first time around or with some minor fixes.

Do you have any code already? You mention you did manage to at least get something on the display.

wvmarle:
I think it's the driver chip you care about rather than the exact display.

I just read the data sheet - it looks like it has all the info needed to write a driver for it. You're going to need a clock signal and a separate data signal, it's some kind of serial protocol, but almost certainly a non-standard one so this is not going to be a quicky.

It sounds like a really old-fashioned thing, especially if you use fluorescent tubes for it. Also I'm a bit confused on the voltage level it expects to work with on the control side. At least the chips are quite inexpensive and appear readily available.

Short of having the actual hardware to test it out, I'd be glad to try and write a driver for this chip, based purely on the info in the data sheet, and hopefully get it to work the first time around or with some minor fixes.

Do you have any code already? You mention you did manage to at least get something on the display.

Yeah I tried a few from the GIT which I can link you to as well as the original forum that I asked for help in

Forum post Here
Other library on the GIT

There is already a lot of information on the thread as well. It is three pages long.

That is the primary chip on the display. There is no other information on the actual module because it was made by ROWE whom makes (made) jukeboxes in the 90s. This one is actually out of one of the jukeboxes at my work and I have a bunch more of these because we have been parting out some of the really bad shape ones. So I was able to score some of them.

Just read that thread.
Probably the driver you tried is for a similar but incompatible chip.
The tricky bit is to figure out the protocol - that's going to be bit banging - after which it should be pretty straightforward to handle the characters themselves. Upper/lowercase is just one bit difference, the other characters are a matter of mapping. It seems there are a handful of non-letter images available as well.

wvmarle:
Just read that thread.
Probably the driver you tried is for a similar but incompatible chip.
The tricky bit is to figure out the protocol - that's going to be bit banging - after which it should be pretty straightforward to handle the characters themselves. Upper/lowercase is just one bit difference, the other characters are a matter of mapping. It seems there are a handful of non-letter images available as well.

See the problem is that I know little to nothing about programming in this aspect. Something I do know is that if I were to send the display a lower case letter it will go crazy. I was reading that somewhere a while back (can't remember where). So it needs to change all lower case letters to upper case letters and ignore any "symbols" that aren't in the original character set specified in the datasheet.

The main goal of this is to make LCD smartie talk to the display just like any other display I would hook to that program. Using an existing driver from LCD Smartie like the crystal.dll or the matrix.dll. Are you familiar with that program for windows?

That'd be an error of the library, or maybe a sign that it's really a different protocol.
The spec sheet you provided shows only uppercase and a bunch of other characters can be displayed. It's of course trivial to change lower case to upper case before processing.
It's also of course not the character itself that's sent to the display, but rather a binary code that the driver chip then translates into a representation on the display.
The chip is designed to handle both 14 and 16 segment displays, I suppose it needs to be told what kind of display it's connected to. I don't see that in the library you linked to.

hydrolisk1792:
The main goal of this is to make LCD smartie talk to the display just like any other display I would hook to that program. Using an existing driver from LCD Smartie like the crystal.dll or the matrix.dll. Are you familiar with that program for windows?

Windows... not at all.
Having a hard enough time dealing with it on my laptop.
How is that connecting to the Arduino? Via USB/Serial?

wvmarle:
Windows… not at all.
Having a hard enough time dealing with it on my laptop.
How is that connecting to the Arduino? Via USB/Serial?

The arduino will be connected to the PC via USB. Then via the USB to Serial protocol that the arduino uses I can then get LCD smartie to send data to the serial port. So in short this would be set up as a Serial display. So basically all that needs to be done with the arduino is the programming for the computer’s hyper terminal or simular program to send serial data to the display and the display will display the respective information.

Computer to Arduino - that's the easy part.
Arduino to display - that's the tricky bit :slight_smile:

wvmarle:
Computer to Arduino - that's the easy part.
Arduino to display - that's the tricky bit :slight_smile:

Yeah I hear ya there mate lol

I think we can use this (attached) to make LCD Smartie talk to the display. I have used this code with a few HD44780 displays to make them USB and make the matrix.dll driver in LCD Smartie talk to it with little to no problems. The only issue with the sketch is that it requires me to upload the sketch in Arduino 0023 IDE instead of the new versions lol. I think it is because of the configurations in the newer versons of the LiquidCrystal library bundled with the new versions of Arduino. At least that is what I was reading someplace.

HD44780_to_USB.pde (8.4 KB)

What format is that? Can't open it.

So what you're looking for is basically a sketch for your Arduino that lets your PC send text (to the Arduino, which then relays it) to the display.

wvmarle:
What format is that? Can't open it.

So what you're looking for is basically a sketch for your Arduino that lets your PC send text (to the Arduino, which then relays it) to the display.

That is the way older versions of Arduino IDE. I think you can rename it with .ino at the end to open it in the newer versions of the IDE.

Yeah that is basically what I'm looking for from the library.

Yeah I just tried it with the newer version of Arduino IDE. Rename the file with a .ino at the end (have to make sure you have "show file extentions" enabled in folder settings in windows). That is if you are a windows user.

Ah, my Firefox/Linux is a bit smarter than Chrome/Windows.

That sketch works correctly for LCD displays?

I noticed some characters that are not relevant for the VFD, and there are probably some characters for the VFD that are not handled in this sketch. Probably an hour or two of carefully going through the data sheet to map it all correctly.

That getchar() function is blocking - you can't do anything else while waiting for the next character. Should be fixed as well.

The driver itself is probably a few hours work, carefully implementing the description in the data sheet, and having a look at the Samsung display library to see how they did it. Maybe the differences are small, maybe not. You do seem to get something on the display so it's not completely off.

wvmarle:
Ah, my Firefox/Linux is a bit smarter than Chrome/Windows.

That sketch works correctly for LCD displays?

I noticed some characters that are not relevant for the VFD, and there are probably some characters for the VFD that are not handled in this sketch. Probably an hour or two of carefully going through the data sheet to map it all correctly.

That getchar() function is blocking - you can't do anything else while waiting for the next character. Should be fixed as well.

The driver itself is probably a few hours work, carefully implementing the description in the data sheet, and having a look at the Samsung display library to see how they did it. Maybe the differences are small, maybe not. You do seem to get something on the display so it's not completely off.

Yes, that sketch does work correctly for the HD44780 type or equivalent displays. I have used it on a few different one now with a Nano and no problems so far.

Yeah the display does have stuff on it. But it is just rubbish and artifacting. Primarily just:

@
(
)
&
%

symbols. Very rarely does an actual letter come across the display.