Digital Solutions
iDigole Buyer ProtectioniDigole Buyer
My shopping cart
0 Items:
Secure Checkout
Visit Our Live Auctions
Search store:

✨✨✨How does Digole display work?Try Display Emulate Tool ✨✨✨
Please select DHL as shipping from China due to most international flights cancels

Home : Digole Serial Display : Mono LCD :

UART/I2C/SPI 2004 Black/Yellow LCD

Price: US $7.99

Item Location:Shanghai China
In stock: yes
add to cart
or BUY it from eBay  
All prices are in US $
Price Break Unit Price Extended Price
1 7.990 7.99
5 7.590 37.95
50 7.190 359.50
100 6.950 695.00
300 6.630 1,989.00
1000 6.390 6,390.00


Unlike other "Serial Display" which just convert serial input to parallel, Digole's Serial displays and adapters embedded a powerful MCU to process the commands received, display characters and control back light as you want, all commands are simple, high level and easy to remember!

Did you:
   1, Hate to write code to drive LCD?
   2, Don't have enough I/O pins to connect with LCD?

This unique module is your solution, it
is for any kinds of microcontroller, has 3 communication mode, with the easy remember commands set or Arduino lib, you can use the LCD in couple of minutes!

Download Programing Manual
Download Arduino lib and demo code

mbed  Library (Thanks for Michael Shimniok to contribute code)


What benefit you if using these products in your electronic projects?

  • Save lots of the I/O resources: these products only need 1 to 3 I/O pins from your controller that depends on the communication type you want.
  • Easy to use: the commands sending to products are easy to remember and understand.


  • Power Supply: 4.75V to 5.5V
  • Power consumption: <23mA (@ Backlight on)
  • Communication mode: UART/I2C/SPI, detect your setting automatically
  • Receiving buffer: 64 bytes
  • Work with all microcontroller and microprocessor
  • Communication signal can work on 3.3V and 5.0V TTL
  • Screen size: 71x21mm
  • Product size: (WxHxD):104x60x20mm
  • Simple command sets, easy to remember
  • Simple graphic engine integrated
  • Default setting: UART baud 9600bps, I2C 0x27 address
  • UART baud (bps): 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200

Connect with your master circuit:

Arduino Sample Code(download here):

new version of lib will save your compiled code size for the sample
The size for 2 version(@Arduino V1.0.1):
            UART  I2C    SPI
OLD   8998  8988   9132
NEW  6966  7566   6354
#define _Digole_Serial_UART_  //To tell compiler compile the special communication only,
//other available is: _Digole_Serial_I2C_ and _Digole_Serial_SPI_
#include <DigoleSerial.h>
//--------UART setup, if you don't use UART, use // to comment following line
DigoleSerialDisp mydisp(&Serial, 9600); //UART:Pin 1(TX)on arduino to RX on module
//--------I2C setup, if you don't use I2C, use // to comment following 2 lines
//#include <Wire.h>
//DigoleSerialDisp mydisp(&Wire,'\x27');  //I2C:SDA (data line) is on analog input pin 4, and SCL (clock line) is on analog input pin 5
//--------SPI setup, if you don't use SPI, use // to comment following line
//DigoleSerialDisp mydisp(8,9,10);  //SPI:Pin 8: data, 9:clock, 10: SS, you can assign 255 to SS, and hard ground SS pin on module
#define LCDCol 16
#define LCDRow 2

int ptr;
const char a[] = "disp char array";
const char b = 'Q';
int c = 3456;
String d = "I'm a string";
float pi = 3.1415926535;
double lg10;

void setup() {
    /*----------for text LCD adapter and graphic LCD adapter ------------*/
    mydisp.clearScreen(); //CLear screen
    //mydisp.displayConfig(1);    //set config display ON, 0=off
    //mydisp.setI2CAddress(0x29);  //this function only working when you connect using I2C, from 1 to 127
    //mydisp.setLCDColRow(16,2);  //set LCD Col and Row, only time set up is OK
    mydisp.disableCursor(); //disable cursor, enable cursore use: enableCursor();
    mydisp.drawStr(4, 0, "Demo now"); //display string at: x=4, y=0

    //Test print function
    mydisp.setPrintPos(0, 1);
    mydisp.print(a); // display a char array
    mydisp.print("display a char:");
    mydisp.print(b); //display a char
    mydisp.print("int as DEC:");
    mydisp.print(c); //display 3456 in Dec
    mydisp.print("as HEX:");
    mydisp.print(c, HEX); //display 3456 in Hex
    mydisp.print("as OCT:");
    mydisp.print(c, OCT); //display 3456 in Oct
    mydisp.print(c, BIN); //display 3456 in Bin
    mydisp.print(d); //display String object
    mydisp.print("float pi=");
    mydisp.print(pi); //display float of PI
    mydisp.print(pi, 6); //display PI in 6 Accuracy
    mydisp.print(pi * 3, 6); //display PI time 3 in 6 Accuracy
    mydisp.print(log(5), 8); //display log(5) in 8 Accuracy
    for (uint8_t j = 0; j < 4; j++) //making "Hello" string moving
        for (uint8_t i = 0; i < 10; i++) //move string to right
            mydisp.setPrintPos(i, 1);
            mydisp.print(" Hello ");
            delay(100); //delay 100ms
        for (uint8_t i = 0; i < 10; i++) //move string to left
            mydisp.setPrintPos(9 - i, 1);
            mydisp.print(" Hello ");
    mydisp.print("Enjoy it!");
    mydisp.enableCursor(); //enable cursor

void resetpos(void) //for demo use, reset display position and clean the demo line
    mydisp.setPrintPos(0, 1);
    delay(2000); //delay 2 seconds
    mydisp.println("                "); //display space, use to clear the demo line
    mydisp.setPrintPos(0, 1);
void loop() {

  • We will send payment cleared orders out of our facility within 2 working days to HongKong/ShangHai Post Office, the post office needs 1 to 3 working days to sort and process international parcels,
  • We ship to your Paypal address only!!, please verify your Paypal address before sending payment,
  • Estimate Delivery time, except public holiday in China and your country
    If you can't wait the described time, please don't buy it from us):
    Ship to Estimated weeks
    Ship to Estimated weeks


    USA 1 to 3 Asia HK, Japan
    1 to 3
    Canada 2 to 5
    Others 2 to 5
    Europe Germany 1 to 3 Australia 2 to 4
    UK 1 to 4

    Other Country
    in the World

    2 to 6
    Others 2 to 5







 Return to top

Return/Warranty Policy
  • Return with no reason:
    • Item must be sent out in original condition within 7 days since item received,
    • Buyer can return item to our Service Department in Canada or China by buyer's convenience,
    • Buyer pay the return shipment fee,
    • Same way money refund as you paid.
  • Return/exchange if defective or wrong item buyer received:
    • Buyer must contact with us using ebay message system within 4 days since item received,
    • WE pay the return shipment fee,
    • Replacement or money refund are available upon buyer request.
  • Please contact us using ebay message system in advance before leaving feedback if there were any problem with your items.
  • E-care service: Click here to report problems/return items and more
Return to top
  • We accept Paypal, and almost all other credit cards
Return to top
About us
  • This is Canadian operating company, the quality of all products and service are comply with American Standard,
  • We try our best to help buyers to pick out the QUALIFIED products from dazzling market with reasonable price,
  • Our goal is to be one of the best seller on ebay, buyer's satisfaction is our #1 concern
Return to top


Copyright Digole Digital Solutions, 2008-2020. All rights reserved.
Powered by Digole