openv / vcontrold

:fire: vcontrold Daemon for control and logging of Viessmann® type heating devices
https://github.com/openv/openv/wiki
GNU General Public License v3.0
103 stars 58 forks source link

wrong value in parsed result #86

Open dasfuu opened 3 years ago

dasfuu commented 3 years ago

When I execute the following: vclient -J -c getBetriebArt I get this result: [{"command":"getBetriebArt","value":0.000000,"raw":"H+WW","error":""}]

But according to my config the value should be 3. It always stays at 0 with different raw values.

    <unit name="BetriebsArt">
      <abbrev>BA</abbrev>
      <type>enum</type>
      <enum bytes="00" text="WW"/>
      <enum bytes="01" text="RED"/>
      <enum bytes="02" text="NORM"/>
      <enum bytes="04" text="H+WW FS"/>
      <enum bytes="03" text="H+WW"/>
      <enum bytes="05" text="ABSCHALT"/>
      <enum text="UNKNOWN"/>
    </unit>
    <command name="getBetriebArt" protocmd="getaddr">
      <addr>2301</addr>
      <len>1</len>
      <unit>BA</unit>
      <description>Betriebsart</description>
      <device ID="2053"/>
    </command>
speters commented 2 years ago

Reading raw values outside the range of 0..5 might be a hint that your device expresses its "BetriebsArt" (mode) on a different address than 0x2301. Make sure your configuration matches your device.