LinkIt ONE Display Only 4 Wires

Introduction: LinkIt ONE Display Only 4 Wires

About: One of my hobbies is taking stuff apart and seeing how I can customize it.

The LinkIt One board is a lot like an Arduino but with 10 times the power. Many projects require some sort of way to communicate to the world. A great way of doing this is with a 16x2 LCD Display. Great!

But there is a drawback. These displays will consume more than half the pins on an Arduino Uno leaving no room for your project to connect to the world!

Not any more! You can attach what's called an I2C backpack to your display and tap into the I2C protocol. This uses only 4 wires including power and ground!

The LinkIt ONE board supports I2C and is great for developing projects that require lots of ways to communicate. This project is a base for any project needing to communicate with the least amount of wires possible. Let's get started!


LinkIt ONE Developement Board

I2C Display

Let's get started!

Step 1: Software

Assuming you have your board setup you will only need the library I attached below. This library takes care of setting up the I2C part of the screen and is based on the original Liquid Crystal Display library.

Download it, extract it, and stick it in your Arduino library folder. Now, there is one thing you must note. The address of your screen may be different from the address in the example. See the picture above. The default is 0x27 but change this to what your vendor says the address is. If your having problems comment and I will help you.

Now, re-open the Arduino IDE and go to File>Examples>LiquidCrystal_I2C>Hello World. Once this opens proceed to the next step.

Step 2: Wiring

Like I said, wiring is very simple! All you need to do is attach the following:

LCD --------- Board

SDA --------- SDA

SCL --------- SCL

VCC --------- VCC

GND --------- GND

The picture above shows it all. Make sure to check, double check, and triple check your power wires. If you accidentally connect power to ground and ground to power you won't see hello world; you will smell goodbye world!

Sarcasm aside, do be careful because I fried an LCD doing that.

Step 3: Results

Now that you've got it wired right, plug in the board and select the port from Tools>Port. Now, upload the code! You should be greeted by the board!

This instructable was aimed at begginners so feel free to ask all your questions! I usually get back fairly quickly!

Epilog Contest VII

Participated in the
Epilog Contest VII

Be the First to Share


    • 3D Printed Student Design Challenge

      3D Printed Student Design Challenge
    • Sewing Challenge

      Sewing Challenge
    • Unusual Uses Contest

      Unusual Uses Contest



    5 years ago

    Tried this and all that happens is my LCD flashes on and off again and then nothing...


    5 years ago

    Ya corregí el error anterior, pero no me muestra nada en lCD


    5 years ago

    Tengo un error, al tratar de cargar un programa es el siguiente:

    Arduino: 1.5.7 (Windows 7), Board: "LinkIt ONE"

    Build options changed, rebuilding all

    C:\Users\Documents\Arduino\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'virtual void LiquidCrystal::setBacklight(uint8_t)':

    C:\Users\Documents\Arduino\libraries\LiquidCrystal\LiquidCrystal.cpp:173:41: error: 'digitalPinToTimer' was not declared in this scope

    if(digitalPinToTimer(_backlightPin) != NOT_ON_TIMER)


    C:\Users\Documents\Arduino\libraries\LiquidCrystal\LiquidCrystal.cpp:173:46: error: 'NOT_ON_TIMER' was not declared in this scope

    if(digitalPinToTimer(_backlightPin) != NOT_ON_TIMER)


    This report would have more information with

    "Show verbose output during compilation"

    enabled in File > Preferences.