Grove - 16x2 LCD Series

The Grove - LCD RGB Backlight has been well received since its inception. Based on customer feedback, now, we bring more cost-effective monochrome backlight derivative for you, i.e.,

The Grove - 16 x 2 LCD (Black on Yellow)
The Grove - 16 x 2 LCD (Black on Red)
The Grove - 16 x 2 LCD (White on Blue)

Except for RGB backlights, these three products are almost identical to the the Grove - LCD RGB Backlight, they are all 16 characters wide, 2 rows with high brightness backlight.


  • Display construction: 16 Characters * 2 Lines
  • Display mode: STN(Yellow Green )
  • On board MCU
  • I2C-bus interface
  • Support English and Japanese fonts


Item Value
Operating Voltage 3.3V / 5V
Operating temperature 0 to 50℃
Storage temperature -10 to 60℃
Driving method 1/16 duty, ⅕ bias
Interface I2C
I2C Address 0X3E

Typical Applications

  • Temperature display
  • Time display
  • Any project that requires a simple display

Hardware Overview

I2C Pull-Up Resistor

The first version of Grove - 16 x 2 LCD series does not have a built-in pull-up resistor, nor does it provide a pad to solder the optional pull-up resistor. We have redesigned the module, and the new version has built-in pull-up resistors.

If you have an older version on your hand, you can solder a 10kΩ DIP resistor yourself on the back pad of the Grove connector. Please follow the picture below, solder a 10kΩ DIP resistor between VCC and SCL pins and a 10kΩ DIP resistor between VCC and SDA pins.


Platforms Supported

Arduino Raspberry ArduPy


The platforms mentioned above as supported is/are an indication of the module's software or theoritical compatibility. We only provide software library or code examples for Arduino platform in most cases. It is not possible to provide software library / demo code for all possible MCU platforms. Hence, users have to write their own software library.

Getting Started

Play With Arduino


Materials required

Seeeduino V4.2 Base Shield Grove - 16 x 2 LCD
enter image description here enter image description here enter image description here
Get One Now Get One Now Get One Now


1 Please plug the USB cable gently, otherwise you may damage the port. Please use the USB cable with 4 wires inside, the 2 wires cable can't transfer data. If you are not sure about the wire you have, you can click here to buy

2 Each Grove module comes with a Grove cable when you buy. In case you lose the Grove cable, you can click here to buy.

  • Step 1. Connect the Grove - 16 x 2 LCD to port I2C of Grove-Base Shield.

  • Step 2. Plug Grove - Base Shield into Seeeduino.

  • Step 3. Connect Seeeduino to PC via a USB cable.


If we don't have Grove Base Shield, We also can directly connect this module to Seeeduino as below.

Seeeduino Grove Cable Grove - 16 x 2 LCD
5V or 3.3V Red VCC
SCL Yellow SCL



If this is the first time you work with Arduino, we strongly recommend you to see Getting Started with Arduino before the start.


The Grove - 16 x 2 LCD shares the same library with the Grove-LCD RGB Backlight. Their usage is almost the same, except that the Grove - 16 x 2 LCD does not support the RGB color API, such as setRGB().

  • Step 2. Refer to How to install library to install library for Arduino.

  • Step 3. Restart the Arduino IDE. Open the example, you can open it in the following three ways:

    1. Open it directly in the Arduino IDE via the path: File → Examples → Grove - LCD RGB Backlight → HelloWorld.

    2. Open it in your computer by click the HelloWorld.ino which you can find in the folder XXXX\Arduino\libraries\Grove_LCD_RGB_Backlight-master\examples\HelloWorld, XXXX is the location you installed the Arduino IDE.

    3. Or, you can just click the icon in upper right corner of the code block to copy the following code into a new sketch in the Arduino IDE.

#include <Wire.h>
#include "rgb_lcd.h"

rgb_lcd lcd;

const int colorR = 255;
const int colorG = 0;
const int colorB = 0;

void setup() 
    // set up the LCD's number of columns and rows:
    lcd.begin(16, 2);

    //lcd.setRGB(colorR, colorG, colorB);

    // Print a message to the LCD.
    lcd.print("hello, world!");


void loop() 
    // set the cursor to column 0, line 1
    // (note: line 1 is the second row, since counting begins with 0):
    lcd.setCursor(0, 1);
    // print the number of seconds since reset:




1 The library file may be updated. This code may not be applicable to the updated library file, so we recommend that you use the first two methods.
2 Since the Grove - 16 x 2 LCD series are all monochrome backlight, you need to comment out the RGB color related code. In the demo code above, i.e., line 6 and line 17.

  • Step 4. Upload the demo. If you do not know how to upload the code, please check How to upload code.


If every thing goes well, you will see the LCD shows the classic sentence: hello world.

Play With Wio Terminal (ArduPy)


  • Step 1. Prepare the below stuffs:
Wio Terminal Grove - 16 x 2 LCD
enter image description here enter image description here
Get One Now Get One Now
  • Step 2. Connect Grove - 16 x 2 LCD to I2C port of Wio Terminal.

  • Step 3. Connect the Wio Terminal to PC through USB Type-C cable.


  • Step 1. Follow ArduPy Getting Started to configure the ArduPy development environment on Wio Terminal.

  • Step 2. Make sure that the ArduPy firmware contains the Grove - 16 x 2 LCD ArduPy library using the following commands. For more information, please follow here.

aip install Seeed-Studio/seeed-ardupy-lcd1602
aip build
aip flash
  • Step 3. Copy the following code and save it as ArduPy-LCD1602.py:
from arduino import grove_lcd1602
import time

lcd = grove_lcd1602()

def main():
    lcd.print("hello, world!")
    lcd.is_blink_cursor = True
    i = 0
    while True:
        lcd.set_cursor(1, 2) #column 1, row 2
        i = i + 1

if __name__ == "__main__":

Note: For more API reference, please refer to here.

  • Step 4. Save the ArduPy-LCD1602.py in a location that you know. Run the following command and replace <YourPythonFilePath> with your ArduPy-LCD1602.py location.
aip shell -n -c "runfile <YourPythonFilePath>"
# Example:
# aip shell -n -c "runfile /Users/ansonhe/Desktop/ArduPy-LCD1602.py"
  • Step 5. We will see the results on the Grove - 16 x 2 LCD.



This is the introduction Video of this product, simple demos, you can have a try.

Transportation data visualization with Google Map:We use the Wio LTE cat.1 to monitor transportation GPS and other info. For cold chain, we can monitor the GPS location together with temperature and humidity. For the bicycling, we can monitor the GPS location together with the hear rate.

Atmospheric Pollution Visualization:The air pollution problem attracts more and more attention. This time we tried to monitoring PM2.5 with Wio LTE and new Laser PM2.5 Sensor.

Tech Support

Please do not hesitate to submit the issue into our forum