Arduino Bluetooth Serial Connections

This is an introduction on how to setup, make a basic connection, and send data to and from an Arduino using Bluetooth!

Bluetooth is great for transmitting data over medium distances and what’s more, Arduino just treats it like a serial data connection. This means that we can use the Serial Library. That’s a nice thing to have.

But what to pair the bluetooth to? And how do we do that? This covers all that. What you use the new found connective abilities for is up to you.
Arduino Bluetooth Serial Connections
Here are some ideas though:

Wireless programming.
Wireless switches.
Wireless custom remotes.
Pairing with Android for some real power behind it.
Simple alarm system (someone is at the door or in room X)

As always, I made this at TechShop

Step 1: Materials

Since this is just connectivity, there are very few parts

1. Arduino Uno $40

2. Arduino Shield $10

3. Bluetooth Modem $40-60
Here’s the one I’m using from sparkfun

Step 2: Arduino Side Setup

Setting up the hardware is really easy.

Hook everything up between the shield and the modem and the uno.

Modem        ->            Uno
V++                              V++
GND                            GND
RX-I                             TX-O
TX-O                            RX-I

optional Flow Control
CTS-I            High tells modem when arduino is sending
RTS-O          High tells arduino when bluetooth is receiving

Now load this Test Program onto the arduino
By default the baud rate is 115200 NOT 9600. Use the higher one to communicate on the bluetooth.

WHEN YOU LOAD THE PROGRAM DO NOT HAVE THE MODEM ATTACHED. You will not be able to communicate on the serial lines when the bluetooth is plugged in which means that uploading won’t work and neither will the serial monitor. If you want to upload and monitor while it is in use, leave RX and TX open and either use SoftwareSerial with an Uno or another Serial Port with a Mega.
Arduino Bluetooth Serial Connections setup
Bluetooth test program

Upload this to board without the modem attached
-Make sure the baud rate is 115200 as that is what the bluetooth is (and serial port)

int counter = 0;
int incomingByte;

void setup() {

void loop() {
// see if there’s incoming serial data:
if (Serial.available() > 0) {
// read the oldest byte in the serial buffer:
incomingByte =;
// if it’s a capital R, reset the counter
if (incomingByte == ‘R’) {

//only count to 100 then stop aka don’t count to infinity
Serial.println(counter); //displays the ACSII number/letter
//Serial.write(counter); //writes the data AS IS


[box color=”#985D00″ bg=”#FFF8CB” font=”verdana” fontsize=”14 ” radius=”20 ” border=”#985D12″ float=”right” head=”Major Components in Project” headbg=”#FFEB70″ headcolor=”#985D00″]1. Arduino Uno
2. Arduino Shield
3. Bluetooth Modem[/box]


For more detail: Arduino Bluetooth Serial Connections

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top