How I Made a Non-Wi-Fi Mitsubishi AC Smart with an ESP32

How I Made a Non-Wi-Fi Mitsubishi AC Smart with an ESP32

I moved into a house with ducted ACs controlled by a wired wall thermostat without Wi-Fi. Instead of buying a $200 MelCloud adapter that sends data to Mitsubishi's servers, I used an ESP32 and the CN105 port to connect the AC to Home Assistant locally. The setup costs under €10, keeps full control of mode, fan speed, and temperature, and even adds energy monitoring and outdoor temperature sensors.

Mitsubishi cannot update the units remotely, so our configuration should remain valid (the units don’t have Wi-Fi connectivity).
  1. akifbayram

    I’ve been working on a similar setup using the M5Stack NanoC6 and AtomS3 Lite, and put together a parts list and wiring guide on my site: https://serin-labs.com/parts.html.

    I also built a web flasher with firmware configured for those boards, so you can install directly from your browser without any fiddling or configuring. The ESPHome option uses the same echavet/MitsubishiCN105ESPHome project mentioned in the article. I also included a YAML generator for that project so you can more simply customize the config. There are also separate firmware options for HomeKit and Matter.

    https://serin-labs.com/flash.html

    https://serin-labs.com/esphome/generate-yaml.html

    I run Serin Labs and sell assembled kits and the cable separately.

    For anyone with City Multi, P series, or M series systems with a branch box, you may also be interested in a multi zone controller I’m developing: https://serin-labs.com/multi-zone-controller.html. It connects to the system’s communication bus, allowing one device to control all zones without needing a CN105 adapter at each indoor unit. It also exposes operating data such as refrigerant pressures, temperatures, power, compressor frequency, and fault codes, with everything running locally. Software is still in development.

  2. usagisushi

    Mitsubishi AC units that support M-NET have a CN105 port. IIRC, my specific model uses a JST PA 5-pin connector rather than a JST PH 5-pin.

    As a small hack, I used the Python scripting interface in Home Assistant to replicate this [1] feature from Panasonic HVAC that gradually raises the cooling set point towards the morning. It is quite comfortable during the summer.

    [1]: http://getnavi.jp/appliances/681340/ (ja)

  3. acyou

    These mini split inverter units seem to be good for +/- 1 C, but the 2 C swing can feel quite substantial.

    PID control seems to be lacking overall, the control laws seem to be more basic. In particular, my unit waits until temperature deviation from setpoint exceeds 1C before cycling on. If I want finer control, there are a few options I can think of:

    1. Spoof the temperature, add a TEC , heater, cooler or something to the sensor on the remote

    2. Manipulate the controller buttons, change the setpoint down or up by 0.5 degrees so the unit kicks on after a 0.5 degree change instead of a 1 degree change

    3. Spoof the temperature sensor itself, hack into the wiring with some transistor based circuit

    4. Hack into the actual unit, fully take over the compressor and fan control

    5. Buy a better unit or off the shelf controller

    6. Spoof the remote control, reverse engineer the IR communication temperature signal

    This last option seems the least intrusive and cleanest, I see other people have done it, it's definitely a lot of work even with AI.

  4. nemosaltat

    I did a similar thing, heavily aided by Claude, after seeing the protart modules posted here on HN last year. https://github.com/samstevenm/minisplit-local-public

    Apologies for the Claudish, especially if anyone wades through the blog posts. I cringe when I reread them, but having some documentation on a working system is better than the ~none I was publishing before.

  5. hattmall

    If anyone is looking for something similar it's worth looking into A somewhat less complex solution that preserves all functionality. Use the IR receiver plus a broadlink IR Hub. You can meet all the goals here, run it all locally the only downside is no 2 way communication. So if you do change the thermostat via the wall it won't be reflected in your app.

  6. xx__yy

    For those of us with Panasonic systems, see:

    https://github.com/DomiStyle/esphome-panasonic-ac/blob/maste...

    https://github.com/DomiStyle/esphome-panasonic-ac/issues/63

  7. sippingabonedry

    For anyone wondering why he would ever do this, it seems to be a type of hidden mini-split system used in euro-style shoebox flats, with a super-proprietary thermostat. Wi-Fi capability is an option at additional cost, but was not purchased.

    In the USA, wired thermostats tend to use standardized 24V wiring schemes, or 208V/240V for mains voltage heaters (electric heat, common on the west coast, especially in shitty apartments, central hot water/steam heating with 24V controls is more common on the east coast).

  8. scosman

    I've done this exact mode on my Mitsubishi ACs. Despite being old units that came with the house, they are instantly responsive and report back current temperature flawlessly.

    ESPHome device are consistently faster and more reliable than any smart home tech I buy at 10x the price (not hard with $3 boards).

More from this day

2026-09-13