[HN Gopher] ESP32-Faikin: ESP32 based module to control Daikin a...
___________________________________________________________________
ESP32-Faikin: ESP32 based module to control Daikin aircon units
Author : todsacerdoti
Score : 139 points
Date : 2025-07-21 03:41 UTC (19 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| twtran wrote:
| This project has been a godsent! The latest Daikin indoor units
| have a built-in WiFi module which only allows control through
| their cloud infrastructure. Besides it being a privacy and/or
| security issue, it's very slow and buggy (e.g. I've had two units
| reset their credentials after a power outage).
|
| There are two caveats to going the Faikin way: you need to source
| or build your own cable that's compatible with your unit, and
| there's no access control (that I could find) for the web
| interface so you need to firewall and proxy it properly.
| ragingroosevelt wrote:
| There's an esphome config for them and esphome let's you set a
| password. I believe it supports encryption but I can't
| remember.
|
| The faikins are really awesome. I have mine set up in Home
| Assistant and I have automations for them to do stuff to turn
| off if the outdoor and indoor temps are both pleasant. I also
| have it set up to turn off if any of my windows or exterior
| doors are left open for more than five minutes. But you can
| program them to do so much. The stock firmware does mqtt so
| it's quite versatile.
| ohopton wrote:
| These things are great, I've managed to get them into all my
| indoor units without too much trouble. If you've already got
| them integrated into Home Assistant check out Versatile
| Thermostat (you can find it in HACS), if you've got temp
| sensors in the rooms with your AC you'll get very good target
| temperature tracking, much better than the auto functionality
| built into Faikin.
| denismi wrote:
| > The latest Daikin indoor units have a built-in WiFi module
| which only allows control through their cloud infrastructure.
|
| Which ones?
|
| My Alira X from a couple of years ago is currently talking
| directly to Home Assistant over WiFi. For a year or so I've
| been unable to update firmware without losing the
| functionality, but it looks like the community has a fix
| pending verification: https://github.com/home-
| assistant/core/issues/99251
|
| I have another old unit that I'll have to replace eventually,
| and ideally it could be Daikin and would work natively without
| involving external hardware.
| twtran wrote:
| My experience is strictly with Daikin Stylish units bought a
| few months ago in the EU. They still have both the S21 port
| and a compartment for an external WiFi module, and for all
| intents and purposes it's plug and play. Their standard WiFi
| module is built in the internal unit motherboard AFAICT, and
| it only works with their Daikin Onecta platform (no local API
| whatsoever).
| timthorn wrote:
| I hear so many complaints about ISPs, but Andrews & Arnold really
| do make the world a better place.
| dns_snek wrote:
| As a more general approach for making any air conditioner
| "smarter", there is a SmartIR integration [1] for Home Assistant.
| It requires an IR blaster and a configuration file that defines
| IR code sequences for every possible AC state (temperature + fan
| speed + swing + etc) that you might want to use. Many models are
| already configured or you can try a few models from the same
| manufacturer and sometimes the codes are similar enough that
| you'll find one that works.
|
| Once it's set up you get a nice climate control in Home
| Assistant, the only drawback is that the state displayed in HA
| will go out of sync if you use the physical remote.
|
| [1]
| https://github.com/smartHomeHub/SmartIR/blob/master/docs/CLI...
| mianos wrote:
| I just have some IR LEDs on an esp8266 in the same room as my
| Daikin and run tasmota. It works perfectly. I have temp control
| and fully remote automation.
| darkwater wrote:
| How did you teach it the IR language it has to speak?
| sambf wrote:
| If it is like ESPHome, the IR sequences are included. Mostly
| from databases like IRDB [0]
|
| [0] https://github.com/probonopd/irdb
| mianos wrote:
| It's built in: DAIKIN200
| https://tasmota.github.io/docs/Tasmota-IR/#sending-irhvac-
| co... I didn't do anything. It just worked.
| snickerdoodle12 wrote:
| I've done the same for an AC that wasn't supported by IRDB at
| the time. Just went through recording every possible
| combination, was a boring 30 minutes but it's worked
| perfectly ever since.
| saidinesh5 wrote:
| I used one of the broadlink devices with this library a few
| years ago: https://github.com/mjg59/python-broadlink
|
| You just point your remote to it and it can capture the data
| that you can just replay..
| stavros wrote:
| I tried that but the IR LEDs were too directional. In the end I
| got a little $7 device off Ali that connects to the Tuya API.
| The API works passably well (I'd rather connect directly, but
| eh), but the hardware is great, it works from any position in
| the room, even without line of sight.
| RebeccaTheDev wrote:
| This is what I did to control an DeLonghi electric oil radiator
| in my home office. And since it takes a couple hours to warm
| up, I have it connected to Home Assistant to turn on a couple
| hours before my workday starts - and also sync'd to my work
| calendar so it doesn't do it on days I'm not working. And then
| turn off again at the end of the day.
|
| Ended up setting it up as a virtual thermostat along with a
| Zigbee temperature sensor and letting HA manage the the whole
| thing. After a few months of hacking and tweaking, it works
| pretty well!
|
| But, there were a few problems with this approach:
|
| * The IR code to turn on and turn off were the same code (which
| makes sense if you look at the unit, there's just an on-off
| toggle button)
|
| * No temperature control. On the heater itself, you can adjust
| the temperature as well as a high/medium/low setting. The
| remote didn't have these settings, so I couldn't capture them
| using an IR receiver sensor. Thankfully, these settings persist
| when the unit is off so I just set them once and called it good
| enough. And I eventually got around the need for this by
| setting up the virtual thermostat with a Zigbee temperature
| sensor in the room.
|
| But the biggest problem is that _I had no way to know if the
| unit was actually ON._
|
| The codes sometimes wouldn't work unless the IR blaster was
| pointed _directly_ at the unit, and even then they will
| sometimes randomly fail. I ended up plugging it into a Zigbee
| plug with power monitoring, so I could tell from the power draw
| if it was on, and try to re-send the commands a few times if it
| failed to turn on.
|
| Overall, it was kind of a fun way to make a dumb device smart,
| but what OOP is doing is way cooler.
| brk wrote:
| Home Assistant supports a variety of plug-in watt meters. I
| have some smart plugs that have a current meter built in, you
| wouldn't need to use the On/Off of the plug, just have Home
| Assistant read the current power consumption value and branch
| your logic from there.
| RebeccaTheDev wrote:
| Exactly what I'm doing. I even set it up as a separate
| binary sensor using a template.
| darkwater wrote:
| How convenient, I just got installed a Daikin not even knowing it
| could have WLAN capabilities, discovered that it has, that is
| cloud-only but it wasn't like that til long ago. Currently I'm
| using this bridge to their cloud Onecta for Home Assistant
| (https://github.com/jwillemsen/daikin_onecta) and so far it's
| working great.
|
| But this project is definitely nicer! But I don't fully
| understand how do I connect the ESP32 to the aircon. I see you
| can buy a cable on Tindie but... oh wait, I know see a badly
| illuminated part of the attached YouTube video where he does open
| the thing up and connect the cable but really, it's not that
| clear to me (especially considering there are a gazillion
| slightly different Daikin split models out there).
|
| Any help appreciated (even if it's just a pointer to RTFM)
| woleium wrote:
| using the S21 port (iirc). my units had a trailing wire that
| just plugged directly into the faikin board
| twtran wrote:
| The project has a page about "wiring" [1] which also has a
| table with the needed parts to make your own cable (that's what
| I ended up doing).
|
| In my case it was more hassle to look up how to dismantle the
| unit to get to the motherboard (I recommend looking up your
| unit's service manual), attaching the module and routing the
| cable are trivial.
|
| [1] https://github.com/revk/ESP32-Faikin/wiki/Wiring
| blutack wrote:
| RevK's blog has a lot of interesting posts on it.
|
| https://www.revk.uk/
|
| He also runs an excellent ISP in the UK called AAISP which I can
| highly recommend (https://www.aa.net.uk)
|
| AAISP build their own core & customer networking devices/routers
| from scratch (not Linux based) in the UK. They are fascinating to
| use - a completely different evolutionary tree to any other
| networking kit I've used. Some unique features.
|
| https://www.firebrick.co.uk/fb9000/
| MaKey wrote:
| > AAISP build their own core & customer networking
| devices/routers from scratch (not Linux based) in the UK.
|
| Which kernel are they using?
| EvanAnderson wrote:
| Their site says:
|
| - Every line of code in the firmware, including building an
| operating system from the ground up with device drivers and
| IP stack.
|
| - The FireBrick's hardware platform is not used in any other
| devices and the FireBrick's codebase / firmware is not used
| in any other hardware.
|
| Given the feature set I'm a little dubious that it's all in-
| house. There are a ton of man-years of code in there.
|
| It would be interesting to know the history of the software.
| masfuerte wrote:
| This blog post has a few hints [1]. Apparently they had to
| rewrite a load of code when they moved to a multicore
| processor, so it definitely seems to be in-house software.
|
| [1]: https://www.firebrick.co.uk/about/news/version-20/
| EvanAnderson wrote:
| Thanks for that link.
|
| It's absolutely wild to think about a suite of software
| this sophisticated that exists outside the realm of Unix,
| Windows, or any of the long-term players in the embedded
| networking device market. I know there are boutique
| embedded IP stacks out there but it still boggles my mind
| that a small company like this has had sufficient revenue
| to keep up with the "churn" in the networking space for
| 20+ years w/o leaning on free/open-source software.
| kova12 wrote:
| I'm considering a new heat pump (ducted) and daikin seems to
| require One+ Smart Thermostat to run it in most efficient way, so
| - cloud. I don't think this project supports plugging into it,
| but perhaps it's possible?
| intothemild wrote:
| Over in Panasonic land we have a similar setup.
|
| https://github.com/DomiStyle/esphome-panasonic-ac
|
| I've got two of these running in my Panasonic Heat Pumps and it's
| excellent.
| rcdemski wrote:
| For those with Midea manufactured units (They white label so many
| brands) a great turnkey option is this dongle made by SMLight (1)
| that comes preloaded with ESPHome.
|
| 1 - https://smlight.tech/product/slwf-01/
| drnick1 wrote:
| Yes, I use this with my Midea window AC and it works great.
| Completely removes the need for a cloud account. It's hard to
| believe appliance manufacturers (and cars and others) are
| making privacy conscious users jump through such hoops in order
| to sever the devices they own from the cloud.
| vsviridov wrote:
| I wish there was something similar for ThinQ, as I prefer not to
| have Cloud-based smart devices, but alas, had to purchase some
| floor AC units during a heat wave.
| somehnguy wrote:
| If you're interested in home automation it looks like Home
| Assistant has an integration (https://www.home-
| assistant.io/integrations/lg_thinq/).
|
| There is also a project for the esp32 which allows you to
| control it locally from Home assistant instead of the cloud
| based integration (https://github.com/JanM321/esphome-lg-
| controller)
| vsviridov wrote:
| I'm running HomeAssistant and I've tried the native
| integration, which works fine but is missing power
| consumption, or there's a HACS-based integration, that is a
| bit painful to set up, is able to see power consumption, but
| cannot enable sleep mode... So it's a bit of a hit and miss
| with either of those. Will take a look at the ESP variant,
| thank you.
|
| Edit:
|
| Looks like the ESP32 project is mostly tailored for hard-
| wired installations, but I just have a couple of floor
| units...
| codingminds wrote:
| Nice project. I'm not sure about the latest models (because I
| don't get the Daikin naming), but usually Intesis provides a huge
| range of connectivity modules:
| https://compatibility.intesis.com/search?reference=daikin
| sowbug wrote:
| Anything similar for Della? I don't even know who their OEM is.
| sowbug wrote:
| Some recent work here:
| https://www.elektroda.com/rtvforum/topic4119999.html
|
| At least some Della mini splits are manufactured by Align, and
| they use a Tuya networking module.
| hn8726 wrote:
| This is very interesting, I've been increasingly frustrated with
| Daikin's approach to mobile control and the incredibly poor
| execution of the original wifi module/automation:
|
| - the wifi module and temperature sensor are right next to each
| other, which was causing the unit to read temperature 2-3 celcius
| higher than actual due to wifi sensor heat (measured by another
| temperature sensor on the other side of the unit). This was fixed
| in a software update, but seems like poor design
|
| - it looks like the original wifi module uses a lot of power, at
| least according to the app readings. Didn't verify this one, but
| it tracks with how much it heats up even if the unit is
| completely off
|
| - no way to connect an external temperature sensor, so even with
| a software fix to the temperature sensor reading, my room is
| consistently 2-3 degree celcius colder than the set temperature
|
| - there are no release notes for the official firmware updates so
| you never know what can break if you update (but an update did
| fix the wifi module heating issue)
|
| - the (new) app had power usage data for the past couple of
| years. Now they decided to only store a year? Or maybe just
| deleted the old data. Either way, now it's lost without any
| notice or way to archive it
|
| ---
|
| That said, how likely is it that Faikin causes a hardware failure
| in an indoor or outdoor unit in case of a software bug? I'll
| definitely try it but I'm a bit uneasy with an open source
| software designed for what seems like a massive range of devices,
| and no way for the maintainers to accurately test against each
| one
| cek wrote:
| I want this, but for MrCool units!
| kbuck wrote:
| I was very happy to find that there are similar libraries for
| Mitsubishi units as well:
|
| 1: https://github.com/SwiCago/HeatPump
|
| 2: https://github.com/echavet/MitsubishiCN105Esphome
|
| I've got this running on several units and it works great. If you
| buy ESP32 development boards with pre-soldered pins, you can even
| build the boards without soldering.
| psunavy03 wrote:
| Is there any documentation on what Mitsubishi's own MHK2 units
| can do, how well these libs replicate it, and how third-party
| thermostats factor into that equation?
|
| I recently had a Mitsubishi heat pump installed, and I'm
| underwhelmed by the 1999-esque stock thermostat, but the vendor
| swore on the proverbial stack of Bibles that it was the only
| one that could properly run the unit as it was designed given
| all the proprietary control laws and so on.
| bschwindHN wrote:
| Almost 10 years ago (damn...) I reverse engineered my air
| conditioner IR protocol and wrote a lengthy article about it.
| That being said, I was new to electronics and was doing it all on
| a raspberry pi instead of something embedded. Since then I've
| also made an ESP32 version, and many others have as well. If
| you're interested in more of the actual reverse engineering part,
| I tried to explain it from more of a beginner's perspective,
| because I was a beginner at electronics then:
|
| https://blog.bschwind.com/2016/05/29/sending-infrared-comman...
___________________________________________________________________
(page generated 2025-07-21 23:01 UTC)