Our new official repo is on github
LCD Smartie version 5.6 is released!
Download it now: https://github.com/LCD-Smartie/LCDSmartie/releases

1x16 Alphanumeric display 10937 driver chip

Place your requests for plugins here

Moderators: _X7JAY7X_, caesar, IFR, mattcro, limbo

Post Reply
hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

Is there any plugin out there that will control this chip. These chips are used on 1x16 Starburst type Alphanumeric displays. Also there needs to be an arduino in between the display and the host computer because it uses the SPI interface. I'm having a lot of trouble programming the arduino as a passthru for my display. These are commonly used in Fruit Machines and Jukeboxes. I got mine from a Rowe Jukebox.

Datasheet for display driver chip
http://www.alldatasheet.com/datasheet-p ... 7P-50.html

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

This looks straightforward enough to write a display driver for but as you say it's SPI so can't be driven driectly from a PC.

If I were doing this there would be 2 options:

1. Write a display driver and use the Arduino to convert directly from serial to SPI
2. Use the Matrix orbital driver that comes with lcd_smartie and decode those commands and convert to your display on the Arduino (I already have code to do this on the Arduino for other displays which is why this is an option.)

On reflection I think I'd go with option 1. Happy to write something for this - although I couldn't test it.

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

Having dug a bit further, I said this was SPI but actually I think it's an i2c interface.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

dperrow wrote:This looks straightforward enough to write a display driver for but as you say it's SPI so can't be driven driectly from a PC.

If I were doing this there would be 2 options:

1. Write a display driver and use the Arduino to convert directly from serial to SPI
2. Use the Matrix orbital driver that comes with lcd_smartie and decode those commands and convert to your display on the Arduino (I already have code to do this on the Arduino for other displays which is why this is an option.)

On reflection I think I'd go with option 1. Happy to write something for this - although I couldn't test it.

Thank you for the reply. I had the display hooked up to an Arduino Nano with the Samsung_16LF01_VFD library, which I thought was similar, but all I got on the display was rubbish characters. I've attached a picture of it for you to see. It was just a simple "Hello World" script, but it was a lot more than that lol. With that library, they said it was a SPI interface and it was lighting up and all, just rubbish though. I tried a few other ones, but those did nothing, just a blank display :( I know little to nothing about programming the arduino on this level of things lol. I thought I damaged the module by sending that code to it, so I took it back to work and plugged it back into my test Jukebox, and sure enough, it still worked, dodged a bullet there. The pins on the board are SDA, SCLK, POR, 8VDC, and GND if that helps at all. I've attached a few of the pictures I took of the device as well. Another thing I noticed is that only capital letters can be displayed on this display so any lower case letters need to be somehow automatically converted to uppercase letters. Also I'd assume any other "special" characters that aren't in the datasheet need to just be ignored or else it might mess up the display? Not sure how this thing works like that lol...
You do not have the required permissions to view the files attached to this post.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

Dave,

Would it be better if I sent you the display and an arduino nano so you can test it out there? The only problem I see with that though is sending it back. I know it can be a bit expensive to send items to where you are located. I've still been fiddling around with it and can't seem to get any other results other than the rubbish or nothing at all. I know I've got to be doing something wrong lol. :?:

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

If you've only got the one then it's not worth sending it.

After a bit of digging I think I discovered that the driver you are using is for a 'compatible' chip to the 10937 but that the issue with compatability is something to do with the character bit patterns being back to front. This could explain your problems.

More likely though is the timing on the connection (is it I2C or SPI?). Try slowing it down.

Haven't had much spare time to look at this and won't for a few weeks. Pressure of work!

Regards

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

dperrow wrote:If you've only got the one then it's not worth sending it.

After a bit of digging I think I discovered that the driver you are using is for a 'compatible' chip to the 10937 but that the issue with compatability is something to do with the character bit patterns being back to front. This could explain your problems.

More likely though is the timing on the connection (is it I2C or SPI?). Try slowing it down.

Haven't had much spare time to look at this and won't for a few weeks. Pressure of work!

Regards
would i slow down the baud rate of the serial port? To my understanding it uses SPI interface because of the POR pin on the display. No problem i know how work can get in the way of pleasure. Thank you again for your help so far with this little project.

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

By baud rate I assume you mean the SPI clock rate and yes, that can be a problem if it's too high.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

dperrow wrote:By baud rate I assume you mean the SPI clock rate and yes, that can be a problem if it's too high.
So I looked at the data clock in the datasheet of the chip and matched that up to the program on the arduino and still the same thing :(

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

Have a poke about the internet and see if you can find the thing about the Samsung version of the chip having a slight incompatibility. If I get a chance I'll have a look too.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

dperrow wrote:Have a poke about the internet and see if you can find the thing about the Samsung version of the chip having a slight incompatibility. If I get a chance I'll have a look too.
I had a poke around but couldn't locate anything on that :(

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

hydrolisk1792 wrote:
dperrow wrote:Have a poke about the internet and see if you can find the thing about the Samsung version of the chip having a slight incompatibility. If I get a chance I'll have a look too.
I had a poke around but couldn't locate anything on that :(
I don't think any one has tried this library with this chip before sadly.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

The only thing I have found is this and the link is broken :(

https://www.findbestopensource.com/product/mic10937

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

So I've been working day and night on this and have gotten no where u fortunatly. Have you maybe come up with anything? I'm lost lol.

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

Sorry, no. but to be fair I haven't spent a lot of time looking.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

dperrow wrote:Sorry, no. but to be fair I haven't spent a lot of time looking.
Oh okay that sucks lol. I'll see if I can mess around with it a bit more.

dperrow
Plugin Author
Posts: 276
Joined: May 27th, 2011, 2:13 pm
Location: Stirling, Scotland

Re: 1x16 Alphanumeric display 10937 driver chip

Post by dperrow »

Done a wee bit of searching over lunch....

Does this help:
The segmented displays are quite old and demand that data is sent at a slow rate. Too fast and the display chokes.
from: http://www.clock-it.net/samsung-approximation-clock/

You could try this: https://github.com/derpston/vfd_vaf1613

or there's this:
Display

The 16-character, 16-segment VFD is powered by a Micrel 10937 display controller. It supports upper-case letters, digits 0-9, and a small selection of symbols.


The controller is connected to the CPU through a serial interface, using port $0 bits 6-4. Data bytes must be shifted in to the controller one bit at a time. The serial clock must also be toggled via software for each bit. Data bytes are 8 bits, and are transmitted MSB first. An MSB of 1 indicates a control byte, and an MSB of 0 indicates a data byte to be displayed.

After a reset, the display is turned off by default. Before printing anything, it must first be turned on by setting the display duty cycle to something higher than zero.

display_init:
IN A,(0x00) ; get current port state
AND 0xEF ; clear bit 4 (display reset)
OUT (0x00),A
LD B,0x1C ; wait 0x1C cycles
.L1 DJNZ .L1
OR 0x10 ; set bit 4 (display reset)
OUT (0x00),A
LD C,0xFF ; set the display duty cycle to 31 (maximum brightness)
CALL display_send_byte
RET

Sending a control or data byte to the display requires shifting it out one bit at a time on port $0 bit 5, while toggling the serial clock on port $0 bit 6:

display_send_byte:
; byte to be sent is in C
; note the display controller does not support lower-case letters!
LD B,0x08 ; 8 bits to send
.L1 IN A,(0x00) ; get current port state
RLA ; rotate the port word until the data bit is in the carry flag
RLA
RLA
RL C ; shift the next output data bit into the carry flag
RRA ; rotate the port word until the data bit is in bit 5
RRA
RRA
OUT (0x00),A ; setup the data output (bit 5)
OR 0x40 ; set clock high (bit 6)
OUT (0x00),A
AND 0xBF ; set clock low (bit 6)
OUT (0x00),A
DJNZ .L1 ; continue with the next bit
RET

on: https://www.bigmessowires.com/2011/05/

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

I don't know where you found " https://github.com/derpston/vfd_vaf1613: from but that is awesome. By looking at the code it looks promising. However I have no idea how to use it because all that is there is the .cpp and the .h files. No usage instructions or examples or nothing. I'm trying to mix that one with the Samsung library but I keep getting a slew of errors :( So frustrating lol. I also tried modifying the Samsung library again and it has gotten worse lol. :evil:

I have also seen the post on Big mess o wires, that really won't help because all I have are the Arduinos so that is kind of what I'm restricted to with this project unfortunately.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

hydrolisk1792 wrote:I don't know where you found " https://github.com/derpston/vfd_vaf1613: from but that is awesome. By looking at the code it looks promising. However I have no idea how to use it because all that is there is the .cpp and the .h files. No usage instructions or examples or nothing. I'm trying to mix that one with the Samsung library but I keep getting a slew of errors :( So frustrating lol. I also tried modifying the Samsung library again and it has gotten worse lol. :evil:

I have also seen the post on Big mess o wires, that really won't help because all I have are the Arduinos so that is kind of what I'm restricted to with this project unfortunately.

Okay so I sorted out how to use the library, but when I upload it to the display, it is a mess again just like the samsung one.

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: 1x16 Alphanumeric display 10937 driver chip

Post by hydrolisk1792 »

This has since been solved by using a custom library I made for the arduino and using the matrix.dll smartie plugin. I've even took it a step farther and made some custom LED 14 segment displays with the same chip and it is working like a charm! Probably the first LED style display running smartie!

Post Reply