Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Home Assistant ESPHome Rotex CAN Integration #5

Open
Cicatr1x opened this issue Feb 24, 2025 · 2 comments
Open

Home Assistant ESPHome Rotex CAN Integration #5

Cicatr1x opened this issue Feb 24, 2025 · 2 comments

Comments

@Cicatr1x
Copy link

Maybe you want to take a look at this work as well. We do have a direct integration into HA with an ESP32.

https://github.com/Trunks1982/Daikin-Rotex-HPSU-CAN-Seriell

@Cicatr1x Cicatr1x changed the title Home Assistant ESHHome CAN Integration Home Assistant ESPHome Rotex CAN Integration Feb 24, 2025
@bikeshedder
Copy link
Owner

That's pretty cool. I didn't know about that project. ❤️

A bit of history on Thermagate...

I had a look at ESPAltherma but in the end wanted something that was easy to hack. I got myself a few ESP32 micro controllers but ultimately decided that I don't like developing on such limited hardware.

With Thermagate I can connect to my Raspberry (or Rotex G1) via SSH, change the binary and the update is done. It all takes just a couple of seconds and doesn't require me to flash the device. That just made developing the software so much simpler. The way I built the software requires a full Linux system though (with a socketcan device) and therefore doesn't run on a micro controller at all.

I've been working on this project for almost 2 years. I only recently made the repository public as I first tried my best to get into contact with Daikin and sort things out. In the end I filed a complaint at the BSI because of the obvious issues the G1 gateway has: https://github.com/bikeshedder/thermagate/blob/main/docs/ROTEX_RoCon_G1_Gateway.md


Regarding the serial port. In an earlier version I ran some experiments with it but ultimately found that the CAN bus already provides basically all of the data I'm looking for: 311f48b

I do consider adding that back in though. Some parameters - especially some from the outdoor unit - can't be accessed via the can bus at all.


I'd summarize the differences between Thermagate and Daikin-Rotex-HPSU-CAN-Seriell as following:

  • Thermagate is written in Rust and doesn't run on ESP32 but requires a RPI (or Rotex G1) or any other kind of linux capable PC/SoC. For me personally DX (developer experience) is king and I'm willing to pay a tad more for the hardware and energy.
  • All data is sent to an MQTT broker with auto discovery topics. No integration for HA is necessary because of that. The data can be easily consumed from outside of HomeAssistant.
  • Thermagate has a modern web interface with live updates via web sockets.

It's merely technical but Thermagate does implement an actual protocol parser and doesn't rely on premade commands but understands devices and parameters as they are implemented. This allows me to parse the protocol in its entirety without having to rely on premade commands. I did document that here: https://github.com/bikeshedder/thermagate/blob/main/docs/CAN-Bus_Protocol.md

e.g. this is how the CAN bus monitor looks like:

Image

The parameter pages are still a bit work in progress. In the next update I plan on replicating the menu structure of the Rocon interface:

Image


I did license everything under GPL-3.0 including the parameter lists. I'm happy to change this to a more permissable license such as MIT if you want to integrate those in your software:

https://github.com/bikeshedder/thermagate/tree/main/data

It does actually require that you either implement the proper protocol or generate the command and data_offset/data_size using the protocol description I attached earlier.

I only have access to a quite recent "Altherma 3 H HT ECH2O" system so with older systems it's possible that some parameters are different and or missing for other systems.

@Cicatr1x
Copy link
Author

Cicatr1x commented Feb 24, 2025

Interesting apporach as well, i came from using ioBroker with the same hardware setup as you are running right now.

I have to admit the default ESPHome WebServer isnt as nice looking as your frontend, so a direct integration to HA is an addon and not a must have. Feel free to join the group as well, we now have a pretty wide set of heat pumps from old Rotex V3/4 to newer Altherma models and some really crazy guys understanding the heat pump mechanisms in and out.

Its funny that for you the limiting hardware is the ESP32 and not the internal controlls of the heat pump that already start with hiccups if you poll for states to often.

Overall its good to have alternatives depending on the usecases and available hardware/software.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants