Hoval MODBUS uint8

Good evening,
I am trying to establish a Modbus TCP connection to my Hoval heat pump and ventilation system. I can read many values, for values which are defined by the manufacturer as uint8 I get the following error in the log.

2022-12-18 22:20:25.758 DEBUG (SyncWorker_7) [pymodbus.client.sync] New Transaction state 'SENDING'.
2022-12-18 22:20:25.898 ERROR (MainThread) [homeassistant.components.modbus.base_platform] Received 2 bytes, unpack error unpack requires a buffer of 1 bytes

Here is my config:
configuration.yaml

# Modbus
modbus: !include_dir_merge_list integration/modbus/

integration/modbus/hoval.yaml

# Hoval
- name: hoval
  type: tcp
  host: 192.168.1.208
  port: 502
  close_comm_on_error: true
  delay: 5
  timeout: 5
  sensors:
    - name: hoval_hv_lueftungsmodulation_normal
      unit_of_measurement: "%"
      slave: 1
      address: 23610
      data_type: uint8
      scale: 1
      precision: 0
      count: 1
      scan_interval: 180

What can i do to get data for this address from modbus?

Here my solution:

- name: hoval_hv_lueftungsmodulation_normal
      slave: 1
      count: 1
      data_type: int16
      address: 23610
      scale: 1
      precision: 0
      scan_interval: 66
1 Like

Hi ibot,

which Hoval heat pump did you integrate and which modbus tcp gateway did you use?

I have a Belaria pro compact and a PV system with a Huawei inverter which I would like to integrate. The most straightforward way seems to connect the heat pump to Homeassistant using the Hoval Modbus Gateway (9049501).

Could you share your full Hoval modbus configuration? Thanks!

Hi,
I have made a dedicated pcb and esphome firware to link hoval. (all is open)
More info at GitHub - nliaudat/esp_canbus: Esp32 Canbus Shield

For now, you can have all sensor value, and update humidity and modulation in “Constant mode”
Regards