Home Automation Using Arduino With Wifi, Bluetooth and IR Remote Control

75,393

730

30

Introduction: Home Automation Using Arduino With Wifi, Bluetooth and IR Remote Control

About: An Electronics and communication engineer !!!

This is a tutorial to show how to build a home automation system using arduino with Wifi [ESP8266-01], bluetooth (HC-05) and IR remote control. Home automation results in a smarter home and is used to provide a higher and healthier standard of living. The beauty of a home automation system is that it is highly scalable, flexible and its capabilities are limited only by our imagination.

Step 1: Overview of the Home Automation System

This systems consists of 3 custom built arduino uno boards, two of which are connected to each other via I2C bus, one of which acts as a "master sender" and the other a "slave reciever". Home automation system can be controlled using Internet, which is achieved by using ESP8266-01 and blynk libraries. It also allows us to control the system by giving voice commands using HC-05 bluetooth module and AMR voice app.

I have explained interfacing each of the components to the microcontroller.

Materials needed:

* 3x arduino uno or Atmega328 / Atmega328p

*ESP8266-01,

*HC-05

*TSOP IR receiver

*IR remote.

*nokia 5110 display

* RTC (DS1307) real time clock

To build your own 5V Power supply from 230v / 110v ac-

*12-0-12 1A step down transformer

*Bridge rectifier / 4x diodes(1N4001)

*1000uF, 25v capacitor

*DC-DC stepdown buck convertor

*LM1117 or LM317 to get 3.3V power supply for ESP8266-01

SENSORS

*PIR (passive infrared)

*DHT11(Temperature and humidity)

* other materials such as breadboard, strippers, wires, jumpers, glue, sticky tapes etc..

Step 2: Circuit Diagram

The main control center of system are the three ATmega328p microcontroller. This part of the system manages the controllers and gets the commands from the user. It also sends temperature and humidity measurement to the mobile application. ATmega328p also gets sensor data and processes them to perform useful functions. The microcontroller also switches the relays to turn on/off the electrical devices when required. It displays the date and time using the RTC and the LCD display device.

Step 3: POWER SUPPLY

The micro controllers need 5V DC power supply, this is obtained from 230V AC supply.

* A 12-0-12, 1A STEP DOWN transformer converts 230v AC to 12V AC.

*12V AC is converted to unregulated DC by passing it through a BRIDGE RECTIFIER and A 1000uF capacitor.

*12V DC (unregulated) is applied at the inputs of a DC-DC step down BUCK CONVERTER.The buck converter is adjusted to get output voltage of 5V DC.

* Buck converters are highly efficient over linear regulators(LM7805).

Step 4: Connecting ESP8266-01 to Arduino Uno

The following tutorial by me shows how to flash firmware and upload code to ESP8266-01 using uno and mega.

https://www.instructables.com/id/Connecting-ESP8266...

and then create a project in Blynk app

I've used DHT11 data to be transmitted to blynk app and used 3 buttons to control the 230v bulbs using relay.

Use the DHT11 files to send data via esp-01 to blynk app.

Step 5: Bluetooth Voice Control

Android Meets Robots: Voice Recognition, Uses android phone’s internal voice recognition to send voice commands to the microcontroller via bluetooth module. It pairs with Bluetooth Serial Modules and sends in the recognized voice as a string. The voice to text conversion requires an internet connection to the android device. For example if you say Hello the android phone will return a sting *Hello# to your bluetooth module *and # indicate the start and stop bits

check out this tutorial for connections

https://www.instructables.com/id/Voice-Activated-Ar...

Step 6: IR Controller

Use this library and the hex codes given in the image to program the uno to perform specific functions when key is the pressed.

https://github.com/z3t0/Arduino-IRremote

Step 7: Connecting Nokia 5110 LCD and RTC

Connections

display---arduino

clk-- 8

MOSI/Din- 9

DC-- 10

RST -- 11

CS -- 12

RTC -- arduino

SCL --- A5

SDA-- A4

Then use the code given to display the time from RTC on nokia 5110.

Step 8: RELAYS

A relay is basically an electrically controlled mechanical switch. Inside that harmless looking plastic box is an electromagnet that, when it gets a jolt of energy, causes a switch to trip. The microcontroller provides 5V signal to the relay it is converted to a 12V signal by the driver circuit which consists of a transistor and a diode.

Step 9: I2C Communication

This library allows you to communicate with I2C / TWI devices. On the Arduino boards with the R3 layout (1.0 pinout), the SDA (data line) and SCL (clock line) are on the pin headers close to the AREF pin.

use the master writer and slave receiver codes. The Uno with WIFI and DHT acts as master sender and the uno with bluetooth, IR receiver acts as slave receiver.

https://www.arduino.cc/en/Reference/Wire

Step 10: Home Automation System

The final system is as shown.

Step 11: Code

You can find the code to this project in the following link

Code

Automation Contest 2016

Runner Up in the
Automation Contest 2016

Be the First to Share

    Recommendations

    • For the Home Contest

      For the Home Contest
    • Game Design: Student Design Challenge

      Game Design: Student Design Challenge
    • Make It Bridge

      Make It Bridge

    30 Comments

    0
    gunnakuntla
    gunnakuntla

    Question 1 year ago

    can i have the links of videos please

    0
    jaykhunt
    jaykhunt

    Question 4 years ago on Step 11

    how can i purchase this projet
    i need full code and circuit diagram
    can you help me?
    and if i purchase it then it will success?

    0
    kavish laxkar
    kavish laxkar

    6 years ago

    Great bro
    Keep it up.:)
    I think you made it as a final year project.:D

    0
    MD UzairS
    MD UzairS

    Reply 4 years ago

    lojo

    0
    SampreetG
    SampreetG

    5 years ago

    can you add the videos

    0
    SampreetG
    SampreetG

    Question 5 years ago on Step 4

    can you addthe youtube videos

    0
    cw1000
    cw1000

    5 years ago

    Very Nice.

    0
    gelooooooow07
    gelooooooow07

    6 years ago

    Great bro! but where are the codes?

    0
    Amith MP
    Amith MP

    Reply 5 years ago

    https://github.com/Amitmp/Home-Automation-project

    0
    HaseebS10
    HaseebS10

    6 years ago

    can we access in this WiFi (arduino) from other network or from anywhere??

    0
    Amith MP
    Amith MP

    Reply 5 years ago

    Yes

    0
    zoha imran
    zoha imran

    6 years ago

    Aoa sir my project is remote control of home appliance with arduino through webpage for interfacing arduino with webpage i am using esp8266 esp 12...in project i am using master slave technique ...which means webpage will interface with master arduino through esp8266 then that master arduino will send signal to slave arduino through rf module ..and this slave will now light up the appliances....now main issue is i have made webpage communication between master slave has been done ...but interfacing of arduino with webpage is making problem ....my code is correct connections are correct but the code is not burning in wifi module it is giving error "
    Error : failed to open com6
    Error: espcom_open failed
    Error: espcom_upload_mem failed "
    Do you have some idea about it ?
    Moreover sir i wana ask we have to remove arduino chip when we are buring code in esp8266 ?
    Or we have to write the code in the same arduino file which we have developed while communication between master and slave ?

    0
    Amith MP
    Amith MP

    Reply 5 years ago

    https://github.com/Amitmp/Home-Automation-project

    0
    VinuthaV
    VinuthaV

    5 years ago

    nice explanation.. also plz give me the code and circuit diagram for voice controlled home automation using arduino uno and esp8266 01..thanku

    0
    Amith MP
    Amith MP

    Reply 5 years ago

    https://github.com/Amitmp/Home-Automation-project

    0
    Amith MP
    Amith MP

    6 years ago

    ESP8266-1 needs 3.3v power supply. The whole system is running on 5V supply so I've used a Linear voltage regulator LM317.

    0
    AdelbertD
    AdelbertD

    Reply 6 years ago

    sir can you show us the LM317 connection or show atleast a circuit diagram how will I connect the LM317.. i think there is 2 resistor connected and a capacitor? what are the value of used components?

    0
    AdelbertD
    AdelbertD

    6 years ago

    why it is that the ESP8266-1 on the video it has capacitor and resistors,, that is not on the circuit diagram? I want to make this as my project i just need your help.

    0
    AdelbertD
    AdelbertD

    6 years ago

    another thing sir you said you used 3 atmega328 but i can only see a 2 atmega328 on the circuit diagram.