There are words, in Italian, that are not very polite, who becomes funny and acceptable when they change gender. That’s the case for “minchio” (pronounced minkio), used to give a name to something that does not have a name or for which you don’t know it.
A friend of mine bought, few weeks ago, a device to control remotely the air conditioners in his house on the beach. The device was supposed to learn from any remote controller and replicate its behaviour. It can be controlled from a phone using SMS. Sadly, that device did not work for my friend. In fact it works fine with all other appliances (TV, VCR, etc.), but for the air conditioners.
I then proposed to build it from scratch using an Arduino, an IR sensor, an IR LED and a GSM shield. We tested a prototype of it as follows: after a bit of hacking of the Shirriff’s libraries for IR remotes, we were able to read the whole set of codes produced by the air conditioner remote controller (air conditioners’ codes are much longer than TV ones); we then tried to mimic them using our LED, but unfortunately it didn’t work, too. Hard to say why.
However, a maker never gives up: failure is not an option! Hence I switched to plan B. I opened the remote controller and found the contacts corresponding to each key. A picture of the remote controller board is on the left: pressing a key makes a short circuit between two tracks on the board (the black ones). Such tracks are made of a conductive paint on top of the copper tracks behind them. They are separated from them by means of a thin isolation layer. I then carefully removed, using sand paper, both the conductive tracks and the isolation layer in order to access the copper tracks. You can see the result in the photo on the right. The conductive paint connects with copper tracks where you can see those small copper dots in the picture: making a short circuit between two appropriate contacts produces the same effect of pressing a key.
This way, I could solder wires on the board. Since the tracks are quite fragile, I fixed the wires along the tracks using some wax dropped from a candle (quite smart, uh? See pictures). Each pair of wires were connected to the pins of a CD4066, an integrated circuit with four switches that can be controlled by means of a digital signal. I used two CD4066 (I needed to switch the air conditioners on to heat and to cool, to switch it off, to increase and decrease the temperature).
The inputs for the CD4066 is driven by an Arduino YUN. It also reads an LM35 sensor to get the current temperature. The YUN is the ideal board because it connects to WiFi, that is available in my friend’s home. It also run a custom Linux version on which I can run a python script. We called such a system: the minchioduino.
Using the techniques explained in a previous post of mine, I was able to do the following: the Arduino continuously polls the twitter timeline of my friend. A command for the minchioduino consists of a tweet starting with “
#minchio“, followed by the command that can be
- (whose meaning is obvious). You can even start heating or cooling for a given amount of time, then the system automatically stops after the specified time (e.g.
#minchio heat 0.2 switches on heating for 12 minutes: 0.2 hours). Once a command is got, it is removed from the twitter timeline, while the current status is posted. This way the user knows if the system accepted the command and what is the actual status.