Integration of heatpump „iDM Terra ML Complete HGL“

Hi All,
I just managed to solve my problem recently:

Problem was to get the water source pump to start and stop via modbus… in the docu there were no hints which message to send to the modbus register…

Solution was “1” for start and “-1” for stop :slight_smile: :slight_smile: sounds quite easy :slight_smile:
here my current working scripts.yaml:

#########################################

idm_start_brunnenpumpe:
  alias: idm_start_brunnenpumpe
  sequence:
  - service: modbus.write_register
    data:
      hub: idm_wp
      unit: 1
      address: 1714
    data_template:
      value: >
         [ {{ unpack(pack("1" |float, ">f"), ">B", offset=2) }}, 
           {{ unpack(pack("1" |float, ">f"), ">B") }} ]
  mode: single
  
idm_stop_brunnenpumpe:
  alias: idm_stop_brunnenpumpe
  sequence:
  - service: modbus.write_register
    data:
      hub: idm_wp
      unit: 1
      address: 1714
    data_template:
      value: >
         [ {{ unpack(pack("-1" |float, ">f"), ">B", offset=2) }}, 
           {{ unpack(pack("-1" |float, ">f"), ">B") }} ]
  mode: single
  

Thanks, @yeti0815, that’s interesting. I have managed to instruct my IDM heatpump to use PV surplus, too. For now at least by the help of a similar script. But, my plan is to automate this either through HA or alternatives (evcc, openWB).

I see that You’re using a {{ unpack(pack("-1" |float, ">f"), ">B", offset=2) }}, {{ unpack(pack("-1" |float, ">f"), ">B") }} in order to set the array, which my scripts currently are setting with hard-coded values, which in turn were manually determined by the help of some online calculators.

Assuming that this is working the same way (conversion of decimal value to a hex-based float32) is there no simpler way to determine the array’s tuples or the array itself?

Hi to all IDM users,
I created a post with quite detailed infos here:

I bet there is something interesting for you.
Bernd.

Hallo BombusAlpinus,
ist es möglich, dass du die config.yaml files zur Verfügung stellst. Irgendwie komme ich nicht weiter… Danke im Voraus.
Mfg