Smart room with NodeMCU along with Google Assistant and Alexa integration using free software which can add up to 8 devices for free.
- Use the latest ESP Arduino Core 3.0.2.
- Use the latest WebSocktes library 2.3.5.
- Use Sinric Pro if you want only 3 devices.
- Use SmartNest if you want to use 5 devices.
- You can use paid version for any or both of the above softwares if you want more devices.
Anything which can be connected to NodeMCU (If you can code it to work) and following devices out of the box:
- Switch
- Dimmable Switch
- Light
- TV
- Speaker
- Thermostat
- Fan (US and non US version)
- Lock
- Doorbell
- Temperature Sensor
- Motion Sensor
- Contact Sensor
- Windows Air Conditioner
- Interior Blinds
- Garage Door
- Custom devices
- Download and Install Arduino IDE.
- Open File / Preferences and add the link http://arduino.esp8266.com/stable/package_esp8266com_index.json
- Open Tools / Board / Board Manager... and search for ESP8266 and add the latest from ESP8266 Community.
- Open Library Manager (Tools / Manage Libraries) and add the dependent libraries.
- For upto 3 devices SinricPro by Sinricpro (minimum version 2.9.10).
- For more than 3 devices upto 8 or upto 5 devices using SmartNest PubSubClient by Knolleary (minimum version 2.8.0).
- ArduinoJson by Benoit Blanchon (minimum version 6.12.0).
- WebSockets by Markus Sattler (minimum version 2.3.5).
- If not found in Arduino IDE Library Manager then use Sketch / Include Library / Add .Zip Library... to add the libraries the packages from Dependencies Folder.
- Create Sinric Pro account.
- Create SmartNest account.
There are 3 examples with following configulations. The sample is for a simple on off of built-in LED light on NodeMCU:
- Login to SmartNest.
- Click on All Devices.
- Click on New Device.
- Give device name, type and group (if any).
- Click on Done.
- Click on three dots on the device card just created.
- On top on the new window, in green device ID will be present, copy it for reference.
- Devices can be edited, deleted using the pen icon in the above opened window.
- Login to SinricPro.
- Click on Devices.
- Click on Add Device.
- Give device name, description and type leave the rest to as it is and keep on pressing Next and Save at last.
- After saving the details like Device Id, App Key and App Secret will be shown, copy these for refrence in co>de.
- Devices can be edited, deleted from the Devices tab.
- App Key and App Secret will be available in Credentials tab.
- Device Id will be available in the Devices tab.
- On Google Home app or Alexa app link accouts created on SinricPro and SmartNest.
- Devices added on either applications will be automatically added to the device list and can be edited for different name and rooms.
Visit respective websites for full user documentations:
- ESP8266 Core by ESP8266.
- SinricPro by Sinricpro.
- SmartNest by Aososam.
- PubSubClient by Knolleary.
- ArduinoJson by Benoit Blanchon.
- WebSockets by Markus Sattler.
- See SinricPro Examples on GitHub.
- See SmartNest Examples on GitHub.
- 1 unit of NodeMCU
- 2 units of LM7805S/TR 5V Regulator (SMD DPAK package)
- min 3, max 10 units (3 per RGB LED and 1 for single color LED) of n channel logic level power mosfet with low level gate trigger (preferabaly below 3V), example as follows:
- AOD4184A / D4184 : 40V 50A
- FR120N : 100v 9A
- LR7843 : 30V 161A
- P105n3LL : 30V 150A
- 4 units of 4 pin JST connector
- 1 unit of 2 pin JST connector
- 2 units of 2 pin screw terminals
- max 3 units of 12V +RGB LED strips (5050 led strip with 4 connections)
- max 1 unit of 12V warm white or cool white or any single color led strip (with 2 connections)
- 1 unit of power adapter with minimun of 12V 2A power output (amperage will increase with increase in number of LED strips, max cap will be based on power mosfet)