In this Arduino IoT cloud project, I have explained how to make Arduino IoT Cloud ESP8266 NodeMCU Alexa Home Automation system. With this NodeMCU ESP8266 project, you can control 4 home appliances with Arduino IoT Cloud dashboard, Alexa, and manual switches. You can also control the relays from Amazon Alexa App from anywhere in the world. You can control the appliances from the manual switches if there is no internet available.
I have used all the FREE tools and you don’t need any Alexa devices or Amazon Echo Dot for this voice control home automation project.
So if you follow all the steps, you can easily make this Smart Home System with Arduino IoT Cloud and Amazon Alexa to control the appliances with voice commands.
Circuit of the Arduino IoT Cloud projects
The circuit is very simple, I have used D1, D2, D5 & D6 GPIO pins to control the 4-channel relay module.
And the GPIO SD3, D3, D7 & RX connected with the pushbuttons to control the relay module manually.
I have used the INPUT_PULLUP function in Arduino IDE instead of using the pull-up resistors with each switch.
As per the source code, when the control pins of the relay module receive the LOW signal the respective relay will turn on and the relay will turn off for the HIGH signal in the control pin.
I have used a 5V 2Amp mobile charger to supply the circuit.
Required Components for the NodeMCU projects
- 4-channel 5V SPDT Relay Module
- Amazon Echo Dot (optional)
Tutorial video on Arduino IoT Cloud ESP8266
In the Arduino Cloud tutorial video, I have covered the following steps in details.
- Create an account and add things in Arduino IoT Cloud.
- How to set up Arduino IoT Cloud Dashboard.
- How to set up Arduino IoT Cloud for ESP8266.
- Programming the NodeMCU with Arduino IDE
- Connect Arduino IoT Cloud with Amazon Alexa App.
Arduino IoT Cloud FREE account setup
For this smart house project, I have used the Arduino Cloud Free plan. First, you have to add 4 variables to the Arduino Cloud account.
Please click on the following link for Arduino IoT Cloud setup.
Program NodeMCU with Arduino IDE
In the Tutorial video, I have explained all the steps to program the NodeMCU using Arduino IDE.
- Update the Preferences –> Aditional boards Manager URLs: https://dl.espressif.com/dl/package_esp32_index.json, http://arduino.esp8266.com/stable/package_esp8266com_index.json
- Then install the ESP8266 board from the Board manager or Click Here to download the ESP8266 board.
- Install all the required libraries in Arduino IDE:
- ArduinoIoTCloud by Arduino and all the dependencies.
Go to Sketch -> Include Libraries -> Manage Libraries in Arduino IDE.
When you try to install the ArduinoIoTCloud library, it will ask you to install all the dependencies. Then Click on Install All.
Code for Arduino IoT Cloud ESP8266 home automation
After uploading the code to NodeMCU, please refer to the following articles for connecting the Arduino IoT Cloud Account with Amazon Alexa App.
After doing all these steps, now you control the appliances with Alexa.
NodeMCU control Relays with Alexa App
If the NodeMCU is connected with WiFi, then you can ask Alexa, to turn on the light [“Alexa, Turn ON Room Light“]. Thus, you can control the appliances like light, fan, etc with voice commands using Amazon Alexa App from anywhere in the world.
Control Relays with Arduino IoT Cloud App
You can also control the relays from Arduino IoT Cloud Remote App. Just download and install the Arduino IoT Cloud Remote app from Google Play Store or App Store, then login your Arduino Cloud account and select the dashboard.
Control Relays manually with Push Buttons
You can always control the appliances manually with push buttons. and if the NodeMCU is not connected with the Wi-Fi, still you can control the appliances with push buttons.
PCB for the NodeMCU Smart Home Project
If you want, you can also use this PCB to make the circuit compact and give the project a professional look.
I hope you like this Smart house IoT projects idea with the Arduino Cloud NodeMCU ESP8266.
Click Here for more such ESP8266 projects.
Please do share your feedback on this IoT project. Thank you for your time.