I dont checked the Code you use but If you are not only read the communifation of other Bus devices you request some values.
So reduce that poll rate. Or reduce the amount of values you request.
I get similar Problems if I read to much in too short time frame.
Hi Oggy512,
I had a similar issue. In my case, the WPC04 heat pump stopped running the compressor and heating the domestic water and floor.
I thought there was a problem with the ESP32 and the code itself, so I bought an ISG Gateway (however, the cost is ridiculous considering most appliances of this type have this interface built-in). To my surprise, the ISG behavior was the same as the ESP32 and generated the same problem.
Luckily, together with a guy from service (a clever guy), we figured it out. The service guy sent me another ISG to eliminate a hardware problem with the first device. In the end, it was a problem with the control board in the heat pump. The board was replaced, and after that, there have been no issues.
I didnāt check the ESP32 after the board replacement as I have the ISG (which I assume has the same functionality), but I can run the ESP32 for testing purposes. Who knows, maybe the ESP32 reads more device parameters.
Thanks for the Update. In the meantime I got the THZ controller working. I forked the project and adapted some config, here is my (working) version:
Hi!
I have a LWZ 8 CS - will this also work? I purchased an ESP with integrated can bus (ESP32-S3-RS485-CAN) ā¦
I found an old library but the signals wonāt match wit the new heatpump (most of it). I only get the current warmwater temp and some other temperatures but other than that only errors ā¦
In general if you already got valid values it looks good.
Now you have to find the right can IDs for your heat pumpnof all parameters you are interested in.
Hi!
Thanks for the fast reply!
I am happy to invest my time and i already tried for a few hours but i have no clue at all on how to log it. Do i need to log the whole bus and change one thing at a time to hopefully get a value change i can characterize? I have no idea hot to find the can idās as well. i have the heatpump (maybe multiple idās) for now still the ISG and a room controller that also has a unique id. For now i use this: GitHub - bullitt186/ha-stiebel-control: An ESPhome / Home Assistant configuration to monitor & configure Stiebel Eltron Heating Pumps via a CAN Interface
I think your project supports newer heat pumps so I think i will give it a shot.
Changing values and listening on the bus for that changes is a way you can go.
But you have to understand how the packages are encoded.
In ealier posts in this thread you will find projects/exaples that help here.
It looks like the project you use bruteforce the bus with all know ids like the isg.
āFeatures automatic MQTT discovery for 3800+ signalsā
So in theorie it could run out of the box for you.
But its not my project.
And it uses the same ID the ISG use 0x680.
So maybe you start disconnecting the ISG while using this project or try other IDs. For me 0x6a2 is working for exaple.
Than you could have the ISG connected too.
But be warned to much traffic on the bus can get you errors like non funtional Display.
You may also have a look at this project
his heat pump looks like beeing closer to yours like the one in bullits project.
Maybe if you need more infos or you not getting his project running.
If I remember right he also got the emulation of the room controller running.
Goddamned.
Everything was running decently for 1,5 years and then I just had to update ESPHome stuff and after that pretty much nothing works. I get only compressor starts and COP values, nothing else.
I gave the yaml, that is roberreiterās base translated + some additions and cleaning a glance and noticed Iāve forgot everything about how this mess was supposed to work.
Compiler gave few errors and not sure how those parts ever worked, as they were so clear syntax errors, like in compressor starts there were id() method call issues like (id(VD_starts_t>0). Fixed those but that didnāt help.
I am getting some CAN error, yet those COP and start vales seem to work, but like said nothing else is.
E: Ok those values that I cat might be calculated from some buffered values and maybe the whole CAN is now broken. I noticed a mention not to use GPIO15 so I switched my CS to GPIO17 but didnāt help. Also tried setting SPI speed to match my CAN module (8Mhz) but no go. Any ideas what else has changed in ESPHome CAN interface since 2024?
Could it just be that something in FW ruined the combo of my specific ESP32 model and MCP25215? I tried playing with different bit rates too (20, 50, 125, 500 kbps).
Did someone go through this already and could point me what to search for as apparently something in ESPHome or its CAN implementation has changed.
[20:34:45.913][C][template.sensor:456]: Update Interval: 60.0s
[20:34:45.925][C][template.sensor:016]: Template Sensor 'Aux heater for heating total"'
[20:34:45.925][C][template.sensor:016]: State Class: 'total_increasing'
[20:34:45.925][C][template.sensor:016]: Unit of Measurement: 'kWh'
[20:34:45.925][C][template.sensor:016]: Accuracy Decimals: 3
[20:34:45.925][C][template.sensor:026]: Device Class: 'energy'
[20:34:45.949][C][template.sensor:030]: Icon: 'mdi:water-boiler'
[20:34:45.949][C][template.sensor:456]: Update Interval: 60.0s
[20:34:45.949][C][canbus:020]: config standard id=0x680
[20:34:45.995][E][component:226]: canbus is marked FAILED: unspecified
[20:34:46.470][C][template.binary_sensor:016]: Template Binary Sensor 'update_sensor'
[20:34:46.480][C][restart.button:014]: Restart Button 'Stiebel ESP restart'
[20:34:46.485][C][restart.button:017]: Icon: 'mdi:restart'
[20:34:46.519][C][captive_portal:128]: Captive Portal:
[20:34:46.582][C][wifi:1304]: WiFi:
set the data_rate under canbus:
canbus:
- id: ...
platform: mcp2515
...
data_rate: 2MHZ
you can try 1MHZ, 2MHZ, 4MHZ. With 8MHZ it will probably not work.
Thanks. I donāt think I tried below 8MHz which is what my module crystal says and while I didnāt have data_rate specified earlier, I thought also earlier ESPhome versions defaulted to 8MHz but maybe you know better? Couldnāt find default rate from docs.
Anyway I only started playing with this value due to it not working so maybe the default value got changed.
I cannot thank you enough! It was just plug and play! ![]()
Right, I was mixing clock and data_rate. Lib docs says clock defaults to 8Mhz but no default value mentioned for data_rate, neither in online manual.
Anyway works fine setting data_rate to 2MHz at least.
Many thanks you little red thing!