Introduction: LCD & Bluetooth - Arduino

About: Hi! I'm Hugo, 15 yo student from the Alps. I spend most of my spare time programming, tinkering, building electronic stuff, observing planets through my telescope, learning to pilot airplanes, reading and day…

In this Instructable, you will learn how to write a text on your smartphone and print it on an LCD via Bluetooth, using an Arduino.

Step 1: Hardware Needed

For this project, you will need:

-an Arduino UNO

-an LCD (Liquid Crystal Display)

-a breadboard

-a 10K potentiometer

-a BT module (I use an HC-05)

-jumper wires

-a Bluetooth app. For Android users, I recommend BlueTerm. Sorry iOS users, BlueTerm is only available for Android... But you can still download equivalent apps.

No tools required

Step 2: Build the Circuit

The image above corresponds to the following guidelines:

First, pin your LCD on the breadboard and power the breadboard by connecting a wire from "5V" (power) on your Arduino to the positive row on the breadboard and another one from "GND" (ground or 0V) to the negative row.

Then connect the LCD to the Arduino:

LCD pin 4 - Arduino pin 2

Pin 6 - pin 3

Pin 11 - pin 4

Pin 12 - pin 5

Pin 13 - pin 6

Pin 14 - pin 7

After that, power the LCD:

LCD pin 1 = GND on the breadboard

Pin 2 = 5V

Pin 5 = GND

Pin 15 = 5V

Pin 16 = GND

Then connect pin 3 on your LCD to the central pin of the 10K potentiometer and power the potentiometer with one pin on GND and the other one on 5V (on the breadboard).

Then connect the Tx(Transmit) pin on your Bluetooth module to the Rx (Receive) on the Arduino, and connect the Rx pin on your BT module to the Tx on the Arduino.

Finally, power the BT module by connecting the VCC (or 5V) to the positive row on the breadboard an connect the GND to the negative one on the breadboard.

Step 3: Code

Now let's write the code:

#include <LiquidCrystal.h> //Include the library that enables you to use the LCD

LiquidCrystal lcd(2,3,4,5,6,7);//Declare that your LCD is connected to pins 2,3,4,5,6 & 7 on your Arduino

void setup() {
lcd.begin(16,2);//16 by 2 are the dimensions of the LCD (in number of characters)
Serial.begin(9600);//launch the process of receiving serial data (via bluetooth) at 9600 bits/s

void loop() {
lcd.write(;//these two lines mean that if there is data coming from the BT module, the Arduino prints it on the LCD.

//Before uploading the code to the Arduino, disconnect the Tx and Rx pins, otherwise you won't be able to upload. Once the code uploaded, reconnect them.

Now open BlueTerm, put BlueTooth on and connect HC-05. Then simply write your text and it should be printed on the LCD!