Uniostar
Published © GPL3+

Sending Data from Mobile Phone to Arduino using HC-05

Learn how to use your phone to receive and display data on an OLED using an Arduino and HC-05 Bluetooth module.

BeginnerProtipOver 1 day120
Sending Data from Mobile Phone to Arduino using HC-05

Things used in this project

Hardware components

Arduino Nano R3
Arduino Nano R3
×1
HC-05 Bluetooth Module
HC-05 Bluetooth Module
×1
0.96" OLED 64x128 Display Module
ElectroPeak 0.96" OLED 64x128 Display Module
×1
Breadboard (generic)
Breadboard (generic)
×1
Jumper wires (generic)
Jumper wires (generic)
×1

Software apps and online services

Arduino IDE
Arduino IDE
Arduino Bluetooth Controller

Story

Read more

Schematics

Schematic

Code

Main Code

Arduino
#include <SoftwareSerial.h>
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define STATEPIN 2
#define OLED_RESET 4

Adafruit_SSD1306 display(OLED_RESET);
SoftwareSerial bluetooth(10, 11);

String data = "";

void setup() {
  Serial.begin(9600);
  bluetooth.begin(9600);
  pinMode(STATEPIN, INPUT);
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  display.clearDisplay();
  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(0, 0);
  display.println("Data Recieved: ");
  display.display();
}

void loop() {
  if (digitalRead(STATEPIN) == 1) 
  {
    Serial.println("Client Connected");

    while (bluetooth.available() > 0) 
    {
      data = bluetooth.readString();
      Serial.println(data);    
      bluetooth.stopListening();
      bluetooth.println("read");
      bluetooth.listen();
    }
    display.clearDisplay();
    display.setCursor(0, 0);
    display.println("Data Recieved: ");
    display.setCursor(0, 20);
    display.println(data);
    display.setCursor(0, 10);
    display.println("Connected");
    display.display();
  } 
  else 
  {
    data = "";
    Serial.println("Disconnected");
    display.clearDisplay();
    display.setCursor(0, 0);
    display.println("Data Recieved: ");
    display.setCursor(0, 10);
    display.println("Not Connected");
    display.display();
  }
}

Credits

Uniostar
10 projects • 8 followers
Electrical Engineering Undergrad Student specialized in low-level programming, IoT projects, and microcontroller electronics.

Comments