Post

Visualizzazione dei post da 2016

ESP8266 - Air Conditioner Command and Control Unit

Immagine
This is part 2 of a series of posts where I'll try to show how I am trying to set up a home control and monitoring system using open source tools and network enabled sensors.
In Part 1 I illustrated how I decoded my Toshiba Air Conditioner AC signal, in this part I'll build on that to show how I built and ESP8266 based unit that is able to control five separate AC units in (hopefully in the near future) different rooms by receiving commands from a central server. The ESP8266 unit has also five DS18B20 temperature sensors that will be used to monitor real temperatures in the different rooms


Parts List:
one ESP8266 based dev board, powered from USB, it has seven output pins available to control various sensors/modules, wifi capabilities and the NodeMcu firmware that allows normal arduino sketches to run on it



SendIR module: an arduino/esp8266 controllable module that has two high power/high range IR emitters, used to control AC units in different rooms Each module needs one pin…

Toshiba Air Conditioner IR signal Reverse Engineering

Immagine
Introduction I am in the process of installing some Toshiba air conditioners in my house, and am planning to control them remotely using OpenHab (http://www.openhab.org/). The first step to be able to control the air conditioner is to be able to emulate IR signals as they are sent by the AC remote.
In order to do that I have modified an open source IR library (https://github.com/r45635/HVAC-IR-Control) to add support for the Toshiba AC units.
Air Conditioning remotes work in a slightly different way than standard remotes as they usually transmit a packet containing all information related to the AC as opposed to, say, TV remotes where every keypress transmits only a single information like a button press. This is a typical packet sent from a Toshiba Remote (in Hexadecimal): #KeyHex# Bits1fan1F20D03FC0100400041F20D03FC0100400041144 it is a 72 bit packet that is transmitted twice (I imagine to rule out transmission errors), this is the binary representation:
11110010 00001101 00000011 11…