Log from interrupt via Queue. Incomming message processing via Queue.
ESPHome truma_inetbox component
ESPHome component to remote control Truma CP Plus Heater by simulating a Truma iNet box.
See 1 and 2 for great documentation about how to connect an CP Plus to an ESP32 or RP2040.
Acknowledgements
This project is based on the work of the WomoLIN project and mc0110 inetbox.py, especially the initial protocol decoding and the inet box log files.
Example configuation
This example is just for connecting ESPHome to the CP Plus. See truma.yaml for an example config with all possible things configured.
esphome:
name: "esphome-truma"
external_components:
- source: github://Fabian-Schmidt/esphome-truma_inetbox
esp32:
board: mhetesp32devkit
uart:
- id: lin_uart_bus
baud_rate: 9600
stop_bits: 2
truma_inetbox:
uart_id: lin_uart_bus
binary_sensor:
- platform: truma_inetbox
name: "CP Plus alive"
type: CP_PLUS_CONNECTED
sensor:
- platform: truma_inetbox
name: "Current Room Temperature"
type: CURRENT_ROOM_TEMPERATURE
- platform: truma_inetbox
name: "Current Water Temperature"
type: CURRENT_WATER_TEMPERATURE
- platform: truma_inetbox
name: "Target Room Temperature"
type: TARGET_ROOM_TEMPERATURE
- platform: truma_inetbox
name: "Target Water Temperature"
type: TARGET_WATER_TEMPERATURE
ESPHome components
This project contains the following ESPHome components:
uartwill overwrite the default uart component to expose internal fields.truma_inetboxhas the following settings:cs_pin(optional) if you connect the pin of your lin driver chip.fault_pin(optional) if you connect the pin of your lin driver chip.on_heater_message(optional) ESPHome Trigger when a message from CP Plus is recieved.
Binary sensor
Binary sensors are read-only.
binary_sensor:
- platform: truma_inetbox
name: "CP Plus alive"
type: CP_PLUS_CONNECTED
The following type values are available:
CP_PLUS_CONNECTEDHEATER_ROOMHEATER_WATERHEATER_GASHEATER_MIX_1HEATER_MIX_2HEATER_ELECTRICITYTIMER_ACTIVETIMER_ROOMTIMER_WATER
Climate
Climate components support read and write.
climate:
- platform: truma_inetbox
name: "Truma Room"
type: ROOM
- platform: truma_inetbox
name: "Truma Water"
type: WATER
The following type values are available:
ROOMWATER
Number
Number components support read and write.
number:
- platform: truma_inetbox
name: "Target Room Temperature"
type: TARGET_ROOM_TEMPERATURE
The following type values are available:
TARGET_ROOM_TEMPERATURETARGET_WATER_TEMPERATUREELECTRIC_POWER_LEVEL
Sensor
Sensors are read-only.
sensor:
- platform: truma_inetbox
name: "Current Room Temperature"
type: CURRENT_ROOM_TEMPERATURE
The following type values are available:
CURRENT_ROOM_TEMPERATURECURRENT_WATER_TEMPERATURETARGET_ROOM_TEMPERATURETARGET_WATER_TEMPERATUREHEATING_MODEELECTRIC_POWER_LEVELENERGY_MIXOPERATING_STATUS
Actions
The following ESP Home actions are available:
truma_inetbox.heater.set_target_room_temperaturetemperature- Temperature between 5C and 30C. Below 5C will disable the Heater.heating_mode- Optional set heating mode:"OFF",ECO,HIGH,BOOST.
truma_inetbox.heater.set_target_water_temperaturetemperature- Set water temp as number:0,40,60,80.
truma_inetbox.heater.set_target_water_temperature_enumtemperature- Set water temp as text:"OFF",ECO,HIGH,BOOST.
truma_inetbox.heater.set_electric_power_levelwatt- Set electricity level to0,900,1800.
truma_inetbox.heater.set_energy_mixenergy_mix- Set energy mix to:GAS,MIX,ELECTRICITY.watt- Optional: Set electricity level to0,900,1800
truma_inetbox.timer.disable- Disable the timer configuration.truma_inetbox.timer.activate- Set a new timer configuration.start- Start time.stop- Stop time.room_temperature- Temperature between 5C and 30C.heating_mode- Optional: Set heating mode:"OFF",ECO,HIGH,BOOST.water_temperature- Optional: Set water temp as number:0,40,60,80.energy_mix- Optional: Set energy mix to:GAS,MIX,ELECTRICITY.watt- Optional: Set electricity level to0,900,1800.
truma_inetbox.clock.set- Update CP Plus from ESP Home. You must have another clock source configured like Home Assistant Time, GPS or DS1307 RTC.
TODO
- This file
- Testing of Combi 4E / Combi 6E and Alde devices (I only have access to an Combi 4)
- More Testing