Anyone used this LCD display

Some time ago i purchased some serial dual display lcds from a USA seller to use in a project i was building using another microcontroller. I have a considerable number of these displays left and was wondering if they ok to use with the arduino UNO which i am now learning how to use (beginner). They where manufactured by Data vision type DV-16215-1-S2RB and look like the image attached. If any member as used any of these displays with the Arduino can they please show me some sample code so that i can see how it has been done.

I'd start here..

It may be similar

I would start here...

This was the first hit on a Google search for DV-16215-1-S2RB . Your results may be different if your ISP is not in the US.


The second hit takes you here . . .

which then leads to here . . .

which, if you scroll down has a description of how to interface the display serially. You could adapt this description and use the serial interface on your Arduino instead of Hyperterm (which is obsolete) on a PC.


I’d start here…

It may be similar

It very clearly is not in any way whatsoever, similar. :roll_eyes:

Took me a little while to figure out where on that breadboard was the regulator! :grinning:

It's serial, although not I2C.


Thanks for the replies, i have already found all of these examples but still struggling to get the display to work correctly with the arduino uno. The topic on the display previously ended before anyone had a useful solution. As i said i have no problem making the display work on a old project using a picaxe microcontroller writing the program in their version of basic, however after attempts of converting my basic code to arduino code i cannot get the display to work and it just displays garbage. The line of code i use in basic is:- serout MONITOR,BAUD,(17,204,18,#airtemp) the numbers relate to the lcd commands where monitor = output pin for serial out, baud = 4800, 17 = upper display 204 = cursor position 18 = top line of upper display. I have tried numerous ways to get this to work on the arduino uno but with no success can anyone give me a clue.

Forgot to say how i am trying it. Using some modified code from the forum as follows:-

// * // * ------------ // * Control a Serial LCD Display // * // * Tested on a Matrix Orbital model LCD0821 display. // * Other diplays will work but may have slightly different // * command codes and hardware setups. // * // * Copyleft 2006 by djmatic // * Updated to be Arduino 1.0 compatible by Dave Hrynkiw, Solarbotics // * July 17 2013 // * // * ------------ // * // *

// Declare your program variables here

// Arduino and LCD setup //DataVision: ' LCD stuff for Data Vision Dual 2x16 display Firmware 16215-1 S2RB Philco P345A // ;COMMAND = 0 ' CLEAR ALL 4 LINES // ;COMMAND = 1 ' GOTO Top Display // ;COMMAND = 2 ' CLEAR Top Display // ;COMMAND = 3 ' GOTO Lower Display // ;COMMAND = 4 ' CLEAR Lower Display // ;COMMAND = 5 ' Split-Line Filler Characters (16 spaces) // ;COMMAND = 6 ' Lower Display OFF // ;COMMAND = 7 ' Lower Display ON // ;COMMAND = 8 ' Home without Clearing Top // ;COMMAND = 9 ' Home without Clearing Lower /* Example: clear screens ;initialise display, clear screens and place static text serout MONITOR,BAUD,(21,1) ;clear top display serout MONITOR,BAUD,(17,1) ;clear bottom display Commands used in basic to Print to displays ;serout MONITOR,BAUD,(17,128,18,"Pool L H ");to top line top display ;serout MONITOR,BAUD,(17,192,18," Air L H ");to bottom line top display substitute 21 for 17 to change displays */

void setup() { Serial.begin(4800); // era beginSerial



void loop() { //backlightOn(0); // turn the backlight on all the time

//clearLCD(); serial.write(17); serial.write(128); serial.write(8); Serial.print(" Hello"); // print text to the current cursor position Serial.print(" Arduino"); delay(1000); }

I was just in the process of asking you to provide your code when you did just that.

Now go back and, instead of putting the code in quotes, use the code button (at the very left) to put your code in a 'code box'. That will make it easier to read and also get rid of the smiley face.


Well I can see this much even with the current formatting --- you want to take your code out of loop() and put it in setup(). Loop() should really be empty while you are troubleshooting an LCD setup.