IR-controlled A/C (8/many) - Landing

2 minute read

Here we are, I’m sending a signal that seems perfectly good, it’s modulated, I’m checking with piscope that it’s on time … if it doesn’t work, I’m done with this project.

It works!

And so still using a breadboard, I point the LED and the A/C unit, and I hear the most wonderful sound ever: beep beep.

I’m not going to lie, I tried it 30 times in a row, and I felt really good after it worked every single time!

Oh boy, oh boy, victory!

A bit of hardware

The IR cirtuit was not exactly how I want it, so I had to push the LED a little closer to the board, and bend the pins differently, and cut all the exta bits.

Board with LED pushed all the way

Final result

I’m actually really happy with the final result.

PiZero open with the IR led

PiZero closed IR led

It all works really well with the little web site as a UI, I get the beeps, oh what a feeling :-)

Drawbacks & next steps

There were a few things I added:

  • An offset (see below) for each unit.
  • Cron-like calendar: essentially, I hard code a set of commands in a json file, that part I will not do on the web (becuse I have no intention of working on a UI for a calendar editor) but i can turn it on or off from the UI
  • Presets: it’s just nice to set things in one click.
  • New limits for high and low temperatures, including pretty low temperature for heating more, used when we’re away.
  • Validation for the calendar and preset: don’t set a room to cold and one to warm, those kinds of things

As the system was ready for the winter, just in time, it became apparent that the A/C unit were not well calibrated. I would sometimes set one to 19°C, and it would be blowing warm air while the room was already at 21°C.
So I added an offset (actually two, one for heating mode, one for cooling mode).

And then as winter get more or less intense, it also seemed like with a constant target temperature, the actual temperature in the apartment was varying quite a bit. The place is a little drafty and not well insulated, there’s not much we can do about that. On windy cold days when I’m working from home, mostly sitting, I’ll just have to set a higher target temperature.

I could have looked into a solution with a temperature sensor in each room, and a way to basically drive the A/C units on/off (by setting them to a very high or very low temperature), but I really didn’t want to have to do that, and the units would beep each time.

At this point, I’m happy wiht the result, it’s already way better than using the IR remotes.

The presets

Todo

What remains now is mostly

  • Getting in touch with the daikin-pi project to send my patch
  • Publish the source code - it will need some tidying up, and there’s probaby limited interest in that.