Viessmann OpenV vcontrold Client (Optolink)

Had an opportunity to try this out with a Viessman optolink. It is very good at getting values, but I haven’t had success in setting values. There also is a disparity in the get & set on the mode control in particular. This is what my mqtt/select looks like:

  - name: "Viessmann Operating Mode"
    unique_id: "vcontroldgetOperatingMode"
    state_topic: "openv/getBetriebArt"
    icon: mdi:water-boiler
    device:
      identifiers: vcontrold
      manufacturer: Viessmann
    command_topic: "openv/setBetriebArt"
    options:
      - "Heating & Domestic Hot Water"
      - "Domestic Hot Water"
      - "Reduced"
      - "Normal"
      - "Antifreeze"
      - "Shutdown"
    command_template: |-
      {% if value == 'Heating & Domestic Hot Water' %}
        H+WW
      {% elif value == 'Domestic Hot Water' %}
        WW
      {% elif value == 'Reduced' %}
        RED
      {% elif value == 'Normal' %}
        NORM
      {% elif value == 'Antifreeze' %}
        H+WW FS
      {% elif value == 'Shutdown' %}
        ABSCHALT
      {% endif %}
    value_template: |-
      {% if value == 'H+WW' %}
        "Heating & Domestic Hot Water"
      {% elif value == 'WW' %}
        "Domestic Hot Water"
      {% elif value == 'RED' %}
        Reduced
      {% elif value == 'NORM' %}
        Normal
      {% elif value == 'H+WW FS' %}
        Antifreeze
      {% elif value == 'ABSCHALT' %}
        Shutdown
      {% endif %}

This is based off the example (and translated to English) here.

Unfortunately, it does nothing. I also noticed that there is a disparity in the vito.xml in regards to setBetriebArt. There is “setBetriebArtM1” and also a “getBetriebArtM2” and “getBetriebArt”, but no “getBetriebArtM1”. Unfortunately, modifying my select to use “getBetriebArt” and “setBetriebArtM1” still has no effect on changing the mode of the Viessmann.

It would be nice if someone adapted the Vicare Integration to use vcontrold and optolink. The Vicare API has been notoriously unreliable for me. Right now it can’t connect at all, and of course, I hate using the cloud altogether.