Controlling an Inventer sMove decentralized ventilation system via HA and Shelly

Hi guys,

i wanted to show you how i integrated my decentral ventilation system from german company Inventer into my Homeassistant using the 0-10v interface on the sMove Controller.

Only thing you need is a Shelly Dimmer 0/1-10V PM Gen3, make sure NOT to get the other Shelly 0-10v, since we need an analog 0-10v output from the shelly.

  1. You connect the Shelly 0-10v output to Interface 2 of the sMove controller:
    image
  2. In the Manual of the sMove Controller there is a table which shows, the voltages to apply for each ventilation mode/speed.
  3. Create a select-template in HA for all Ventilation modes.
  4. Since the Shelly Integration in HA does not fully support the Shelly Dimmer 0/1-10V PM Gen3 yet, you cannot control the output voltage via HA directly. So you need an automation that issues rest_commands to the Shelly like so:
automation
  • id: ‘1732023327688’
    alias: Lüftung Waschkelller Bridge
    description: ‘’
    triggers:
    • trigger: state
      entity_id:
      • input_select.luftungsstufen_waschkeller
        conditions:
        actions:
    • choose:
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Aus
          sequence:
        • action: rest_command.waschkelller_lueftung_aus
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Durchlüftung 1
          sequence:
        • action: rest_command.waschkelller_lueftung_druchlueften_1
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Durchlüftung 2
          sequence:
        • action: rest_command.waschkelller_lueftung_druchlueften_2
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Durchlüftung 3
          sequence:
        • action: rest_command.waschkelller_lueftung_druchlueften_3
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Durchlüftung 4
          sequence:
        • action: rest_command.waschkelller_lueftung_druchlueften_4
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Wärmerückgewinnung 1
          sequence:
        • action: rest_command.waschkelller_lueftung_rueckgewinnung_1
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Wärmerückgewinnung 2
          sequence:
        • action: rest_command.waschkelller_lueftung_rueckgewinnung_2
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Wärmerückgewinnung 3
          sequence:
        • action: rest_command.waschkelller_lueftung_rueckgewinnung_3
          metadata: {}
          data: {}
      • conditions:
        • condition: state
          entity_id: input_select.luftungsstufen_waschkeller
          state: Wärmerückgewinnung 4
          sequence:
        • action: rest_command.waschkelller_lueftung_rueckgewinnung_4
          metadata: {}
          data: {}
          mode: single
  • id: ‘1732027557304’
    alias: Lüftung Waschkeller
    description: Ändert die Lüftungsanlage je nach Luftfeuchtigkeit
    triggers:
    conditions:
    actions:
    mode: single

you also need the rest_command configuration, which also does the conversion from ventilation mode to voltage:

This is a sample for rest_command config:

rest_commands

rest_command:
waschkelller_lueftung_aus:
url: “http://192.168.178.77/light/0?turn=off
method: get
waschkelller_lueftung_druchlueften_1:
url: “http://192.168.178.77/light/0?turn=on&brightness=30
method: get