Intro: IntelliVent - the Smart Vent Controlled by REST Api
The Nest thermostat was a leap in automated home climate control.
However did you ever wonder why do you need to heat or cool unoccupied rooms, like the kitchen or office during the night? IntelliVent is a Smart vent built using Intel Edison which can sense if there is someone in each room, its temperature, optimize home climate control and save energy. Intellivent exposes a REST api to the local network allowing either manual control for each vent using mobile and smartwatches but also allows to setup schedules or automatically control the vents so that we do not heat or cool rooms that are not occupied.
The lcd is there mostly for debugging and showing the different statuses and ip address. it's not mandatory for the final product.
IntelliVent acts both as an http client and server to interact with local clients and the cloud. An Intel IoT Analytics agent has been integrated to report sensor data.The vent can be controlled:- Manually from different clients: mobile and pebble watch.- Following a schedule loaded to the vent- Automatically based on temperature and motion information.
Want to build one ? lets start ...
Step 1: Parts
The following parts are needed to build the smart vent. I will list them top to bottom and left to right.
1. Intel Edison board . You can view the getting started guide here:
you can get it here:
2. Grove base shield v2, you can get it here ($8.90):
3. L9110 Dual Channel Motor Driver Module ($2.99):
4. Grove - Temperature Sensor ($2.90):
5. Grove - PIR Motion Sensor ($8.90):
6. Automatic vent Vent-Miser 91667-BR Programmable Energy Saving Vent, 10-by-6-Inches, whooping price of $6.99 !!!!
Step 2: Assembling the Parts
To assemble all the parts, we used the "L9110 Dual Channel Motor Driver Module" to control the vent.
The two contacts at the bottom of the enclosure connects to the motor when it's plugged in. The hot glue is to prevent the thin wires from breaking
The output of the module will be connected inside the vent control box, instead of the original electronics, like in the picture above.
All the rest can be connected as instructed in the drawing.
Step 3: The Software
Please see below the code for the Arduino that implements the REST server.
The code implements a REST server that respond to few basic commands:
http://serverip:8080/O open the vent
http://serverip:8080/C close the vent
http://serverip:8080/status get the current status of the vent
http://serverip:8080/auto set the vent to automatic mode
http://serverip:8080/manual set the vent to manual mode
These commands can be called from a browser, ipad, android tablet, smart watch or any other application that can send http requests