Environmental Control Kit

About the project

Smart Home Automation (Smartha) is a total home automation solution. Environmental Control Kit is a part of it. This kit maintains a controlled environment inside the home. Controlling parameters: Room temperature and Humidity.

Project info

Difficulty: Difficult

Platforms: ArduinoBlynkCypressM5Stack

Estimated time: 5 days

License: GNU General Public License, version 3 or later (GPL3+)

Items used in this project

Hardware components

M5Stack Atom Lite Esp32 Development kit M5Stack Atom Lite Esp32 Development kit x 1
M5stack Atom Matrix Esp32 Development Kit M5stack Atom Matrix Esp32 Development Kit x 1
ENV Unit with Temperature Humidity Pressure Sensor (DHT12+BMP280) ENV Unit with Temperature Humidity Pressure Sensor (DHT12+BMP280) from m5stack x 1
HG7881 dc motor driver HG7881 dc motor driver generic motor driver x 1
Linear movement gearbox with motor Linear movement gearbox with motor x 1
PSoC6 WiFi- BT ultra-low-power kit PSoC6 WiFi- BT ultra-low-power kit Brain of the project. x 1

Software apps and online services

Blynk Blynk User interface app to control the Environment Control Kit
Blynk Server Blynk Server Implemented Blynk local server.
ModusToolbox™ Software Environment ModusToolbox™ Software Environment IDE to program SmartHAserver
Arduino Arduino To program Esp32 based EnvSense_IoT_Node and EnvControl_IoT_Node

Hand tools and fabrication machines

Glue gun Glue gun x 1


Hello Friends,

As a hobbyist and passionate about Embedded Systems/Electronics, when we think about IoT our imagination goes directly to the Home Automation ideas. Same for me and started building the Smart Home Automation (Smartha) solution.

About PSoC 6 WiFi-BT Prototyping Kit (CY8CPROTO-062-4343W), I am not aware of the cypress controllers before but experience in other microcontrollers. Have knowledge about WiFi and Bluetooth.  ModusToolbox and its tools are user-friendly and learned very quickly and implemented this project. Example programs are very useful to the beginner.

Current project Environmental Control Kit is a part of the Smartha.

Environmental Control Kit:

The idea originated from my personal experience. Room heaters inside the room convert the air dry, this will creates problems like breathing, eye dryness. Because I & my family experienced the problem. Control the heater knob with a motor solves the expensive problem. Turning On the humidifier when is required.

The master controller gets the Temperature and Humidity details of the room from the EnvSense node and transferred them to the Mobile app over WiFi. The mobile app will communicate with the Master controller and the master controller triggers the EnvControl node(actuator).  In the future, it can be extended to everything in the home to monitor and control i.e light control and water usage. This project will reduce energy source consumption, spares some money, and provide a healthy environment.

Kit contains 4 individual units named as:

          1. Master Controller IoT node (PSoC 6 WiFi-BT Prototyping Kit)
          2. EnvSense IoT node (m5stack Atom Lite).
          3. EnvControl IoT node (m5stack Atom Matrix).
          4. Android Blynk App.

          Master Controller IoT node:  ModusToolbox and its tools helped a lot in the development of the master node. Implementation is done in the iterative method by taking the BLE Server template application. configured the Bluetooth module in multi-role both Client and Server with the help of   ModusToolbox Bluetooth configurator tool. Tested with EnvSense IoT node(Server mode) and EnvControl IoT node(Client mode).  Integrated WiFi module with TCP client application. Programmed minimal Blynk protocol functionalities i.e login, read, write, data message encode, and decode. 

          EnvSense IoT node: Node contains an m5stack atom lite development kit and sensor to measure temperature and humidity. Using Arduino tool programmed as BLE Server application. This node connected to the Master node, measures and transmits current Temperature and Humidity periodically. 

          EnvControl IoT node: Node contains an m5stack atom development kit and a linear movement gearbox with a DC motor. Initially, it was planned to develop with servo motor, but not able to get proper gearbox. m5stack atom will display the valve pin position, humidifier state, connection state, and status with the master controller. The gearbox mechanism will push or release the room heater valve pin. Control information will be received from the master controller over Bluetooth periodically.

          Android Blynk App: Blynk app provides an interface between the user and the hardware kit. The app contains two sections 1) A section to display measured values and controlled values. 2) Control section will provide an option for the user to control the EnvControl node manually. Options i.e 1) Increase/decrease temperature by changing the Knobposition bar. 2) Turn On/Off humidifier. 3) Setting operational mode to Auto/Manual. 4) Range settings to temperature and humidity values, valid only in Auto mode operation. 5) Option to save the settings.

          Blynk local server developed and the app will connect to the local server.

          To setup local Blynk Server link:  docs.blynk.cc/#security-use-local-blynk-server

          Here you can find Blynk app settings. This file will use to recreate the Blynk app.

          Blynk app settings: https://github.com/Thinker-In/Smart_Home_Automation.git 

          file name YOURMAILID.Blynk.user, replace YOURMAILID with your own mail id and a few changes inside the file.

          The Final working Demos:

          Automated working Demo:

          Manual working Demo:


          *Videos were edited to reduce the video length. 

          Schematics, diagrams and documents

          EnvControl IoT node

          Simple and easy connections.

          EnvSense IoT node

          Simple plugin connection


          Environmental Control Kit Source Code


          Photo of thinker-in


          Embedded Systems Engineer and a Hobbyist with a passion for Electronics and Technologies.


          Leave your feedback...