arnemauer / Ducobox-ESPEasy-Plugin

Plugin voor ESPEasy om een Ducobox Silent / Focus / WTW Energy Comfort aan te sturen en sensoren uit te lezen. Er zijn twee plugins: een ducobox RF gateway en ducobox serial gateway.
73 stars 16 forks source link

Home-Assistant integration #24

Open arcangel321 opened 4 years ago

arcangel321 commented 4 years ago

Reading CO2: Add below to Configuration.yaml sensor:

Gibletron commented 2 years ago

Heb je alle mqtt berichten even verwijderd? Als je hebt zitten prutsen met de retain flag, dan kan er onbedoeld wat blijven hangen.

Hoe verwijder ik berichten?

https://lmgtfy.app/?q=home+assistant+mqtt+remove+retained+messages

broekieman commented 2 years ago

Helaas! Ik heb alles aangepast naar jouw configuratie, maar alle entiteiten blijven "niet beschikbaar". Hoe kan ik testen of het überhaupt wel bij Home Assistant aankomt?

Dit gaat allemaal VEEL verder dan hulp bij Ventilation Gateway, en ik zou je aanraden om zeker eens uit te zoeken hoe HA nou echt werkt

We weten dankzij MQTT explorer dat de VentGW informatie naar MQTT stuurt, en deze wordt ontvangen Uit jouw screenshot maak ik tevens op dat er een aantal shelly en sonoff devices op mqtt zit, ik ga er van uit dat die vanuit HA wel werken, als dat het geval is werkt de mqtt integratie tussen HA en MQTT ook

Ga nu naar home assisstant -> integrations en klik op de "configure" knop in de mosquitto integration image

Vul dan een Topic in bij het "start listening" veld: Bijvoorbeeld: VENTILATION_GATEWAY/VENTILATION_GATEWAY/Ventilationmode En verander de ventilatie mode via bijvoorbeeld het muurkastje image

Je zou nu meldingen moeten zijn dat er iets veranderd als de berichten door Home Assistant worden gezien

Verdraaid man, er gebeurt wat. Moest ik die integratie aanmaken, of.....? De addon zegt nl. dat er een verbinding is. Ik heb nu switches en als ik daarop klik verandert de waarde van de gateway, mooi dus. Deze schakelaar gaat gelijk weer op uit, maar de gateway blijft gewoon op de geschakelde stand vanuit Home Assistant? De sensors zijn van niet beschikbaar naar onbekend gegaan, maar geven dus géén waarde.

Gibletron commented 2 years ago

Helaas! Ik heb alles aangepast naar jouw configuratie, maar alle entiteiten blijven "niet beschikbaar". Hoe kan ik testen of het überhaupt wel bij Home Assistant aankomt?

Dit gaat allemaal VEEL verder dan hulp bij Ventilation Gateway, en ik zou je aanraden om zeker eens uit te zoeken hoe HA nou echt werkt We weten dankzij MQTT explorer dat de VentGW informatie naar MQTT stuurt, en deze wordt ontvangen Uit jouw screenshot maak ik tevens op dat er een aantal shelly en sonoff devices op mqtt zit, ik ga er van uit dat die vanuit HA wel werken, als dat het geval is werkt de mqtt integratie tussen HA en MQTT ook Ga nu naar home assisstant -> integrations en klik op de "configure" knop in de mosquitto integration image Vul dan een Topic in bij het "start listening" veld: Bijvoorbeeld: VENTILATION_GATEWAY/VENTILATION_GATEWAY/Ventilationmode En verander de ventilatie mode via bijvoorbeeld het muurkastje image Je zou nu meldingen moeten zijn dat er iets veranderd als de berichten door Home Assistant worden gezien

Verdraaid man, er gebeurt wat. Moest ik die integratie aanmaken, of.....? De addon zegt nl. dat er een verbinding is. Ik heb nu switches en als ik daarop klik verandert de waarde van de gateway, mooi dus. Deze schakelaar gaat gelijk weer op uit, maar de gateway blijft gewoon op de geschakelde stand vanuit Home Assistant? De sensors zijn van niet beschikbaar naar onbekend gegaan, maar geven dus géén waarde.

Lees dit topic, dat de schakelaar direct weer naar uit gaat, inclusief oplossing, wordt besproken Als je mijn config gebruikt zou je hier in principe geen last van moeten hebben

broekieman commented 2 years ago

Shit, moet ik weer terug naar jouw configuratie. Doe ik morgen. Allemaal bedankt en jullie horen vast nog van me want ik wil de sensoren nog zien werken. Moet ik de integratie Mqtt dus configureren om het werkend te houden?

Gibletron commented 2 years ago

Home Assistant moet verbinding hebben met MQTT, de Moaquitto broker is niet meer dan een addon, een extra docker container op je Home Assistant host, maar je moet wel zorgen dat Home Assistant tegen die container aan gaat praten.. Dus ja.. je moet de integration hebben zodat Home Assistant ook MQTT gaat praten

broekieman commented 2 years ago

LETOP onderstaande config gebruikt custom:button-card en werkt dus NIET out of the box! Gebruik dezelfde sensoren/switches maar niet EXACT deze config, tenzij je weet hoe de custom button-card werkt!

Lovelace Config:

cards:
  - type: entities
    title: Ventilatie
    entities:
      - entity: sensor.duco_gateway_status
      - entity: sensor.duco_current_fan_percentage
      - entity: sensor.duco_fan_speed
      - entity: sensor.duco_ventilation_mode
      - entity: sensor.duco_ventilation_percentage
      - entity: sensor.duco_ventilation_countdown
      - entity: sensor.duco_box_1_temp
      - entity: sensor.duco_box_1_co2_ppm
      - entity: sensor.duco_box_2_temp
    show_header_toggle: false
  - type: grid
    columns: 1
    square: false
    cards:
      - type: custom:button-card
        entity: switch.duco_ventilation_auto
        name: Auto Mode
        styles:
          card:
            - height: 75px
      - type: grid
        columns: 3
        square: false
        cards:
          - type: custom:button-card
            entity: switch.duco_ventilation_low
            name: Low
            styles:
              card:
                - height: 50px
          - type: custom:button-card
            entity: switch.duco_ventilation_middle
            name: Mid
            styles:
              card:
                - height: 50px
          - type: custom:button-card
            entity: switch.duco_ventilation_high
            name: High
            styles:
              card:
                - height: 50px
          - type: custom:button-card
            entity: switch.duco_ventilation_low_perm
            name: P. Low
            styles:
              card:
                - height: 50px
          - type: custom:button-card
            entity: switch.duco_ventilation_mid_perm
            name: P. Mid
            styles:
              card:
                - height: 50px
          - type: custom:button-card
            entity: switch.duco_ventilation_high_perm
            name: P. High
            styles:
              card:
                - height: 50px

Als ik de button-card van Haccs gebruik en jouw code plak gebeurt er niets. Ik heb het in de Layout-card plak krijg ik iets leuks.

Button card

Heb je ook iets leuks voor andere sensoren/switches?

Gibletron commented 2 years ago

Ziet er redelijk uit, lijkt er op dat de sensoren werken! Neem aan dat de knoppen het ook doen. Wel zie ik dat de knoppen te laag zijn en daardoor de icons verborgen zijn, je kunt ze wat hoger maken als je die graag wil zien Ik heb een redelijk uitgebreide HA setup, maar is niet echt de scope van wat er op deze github besproken moet worden, daarvoor zijn de HA forums ;)

broekieman commented 2 years ago

Als ik de knoppen hoger maak krijg ik nog steeds geen icon in de onderste rij.

broekieman commented 2 years ago

Ik probeer een automation te maken voor de badkamer. Switch permanent on als humidity boven 83 komt. Switch off als humidity onder 60 komt.

Dit werkt nl. niet.:

badkamer ventilatie

JJ-82 commented 2 years ago

Afgelopen week de gateway ontvangen en vanochtend de meest verse firmware erop gezet. Spullenboel netjes aangesloten/ingesteld en met behulp van wat info hierboven de schakelaars in Home Assistant aan kunnen maken. Ik loop alleen vast op de stand van de schakelaars.

Hoog/Midden/Laag gaat goed, maar '15min' of 'permanent' wordt niet opgepakt. Dat wil zeggen, als ik voor een 'permanent hoog' kies, dan:

Maar in Home Assistant zie ik na enkele seconden de schakelaar van 'permanent hoog' uitgaan en de schakelaar van '15 min hoog' aangaan.

Een snelle blik in MQTT Explorer leert dat 'Ventilationmode' VENTILATION_GATEWAY/Ventilation_gateway_RF/Ventilationmode), een single digit teruggeeft. Dit is altijd een 1/2/3. De voorlopende 1 die de status 'permanent' zou moeten duiden, komt niet voor. :-(

Wat zie ik over het hoofd?

Dust-E commented 2 years ago

Afgelopen week de gateway ontvangen en vanochtend de meest verse firmware erop gezet. Spullenboel netjes aangesloten/ingesteld en met behulp van wat info hierboven de schakelaars in Home Assistant aan kunnen maken. Ik loop alleen vast op de stand van de schakelaars.

Hoog/Midden/Laag gaat goed, maar '15min' of 'permanent' wordt niet opgepakt. Dat wil zeggen, als ik voor een 'permanent hoog' kies, dan:

  • gaat de box keurig naar permanent hoog
  • de wandbediening geeft ook blauwe golfjes

Maar in Home Assistant zie ik na enkele seconden de schakelaar van 'permanent hoog' uitgaan en de schakelaar van '15 min hoog' aangaan.

Een snelle blik in MQTT Explorer leert dat 'Ventilationmode' VENTILATION_GATEWAY/Ventilation_gateway_RF/Ventilationmode), een single digit teruggeeft. Dit is altijd een 1/2/3. De voorlopende 1 die de status 'permanent' zou moeten duiden, komt niet voor. :-(

Wat zie ik over het hoofd?

Krijg je een blauw is de afwezigheids stand, je zou een paars golfje(s) moeten krijgen, zie handleiding pagina 9: https://www.duco.eu/Wes/CDN/1/Attachments/uitgebreide-gebruikershandleiding-duco-systemen-(nl)_637085671824656669.pdf

Kan je je script eens laten zien?

Dust-E commented 2 years ago

Hi Gents,

Ik ben overgestapt van Domoticz naar HA en in Domoticz had ik ook een stand UIT. Nu zou ik die ook willen hebben in HA. Is er iemand die dit al heeft?

Misschien denk je, waarom zou je dat willen? Eigenlijk 3 reden:

Is het ook mogelijk om de bedieningsschakelaars ui te lezen. Hier kan je de luchtvochtigheid, Co2 en temp uitlezen namelijk.

Gibletron commented 2 years ago

Allereerst: Gefeliciteerd met je keuze voor het beste Home Automation platform :P

Maar joking aside:

De schakelaars uitlezen kan, zie hiervoor de wiki Voor de vochtsensor bijvoorbeeld: https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/wiki/Configureren---Vocht-Ruimtesensor

Voor de "UIT" stand, zie ik zo bij Domoticz wiki ook geen mogelijkheid Als ik hier kijk: https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/wiki/Domoticz En dan onder het kopje: Configureren van de schakelaar Dan zie ik daar staan: Level 0 => OFF (NA) en in de afbeelding die er op volgt wordt geen commando ingevoerd voor "OFF"

Wel zie ik een mode "NOTHOME" Deze zet de schakelaars van de muurunits op één groen golfje Zelf ken ik deze mode niet en heb ik hem nooit gebruikt, hij zet de ventilatie op 15% en de fan op 9% voor mijn unit

EDIT: Na de handleiding gelezen te hebben is dit zo te zien de Afwezigheidsstand met één blauw golfje De Ducobox kent volgens de handleiding geen volledige UIT stand, enkel deze afwezigheidsstand

Gibletron commented 2 years ago

Krijg je een blauw is de afwezigheids stand, je zou een paars golfje(s) moeten krijgen, zie handleiding pagina 9: https://www.duco.eu/Wes/CDN/1/Attachments/uitgebreide-gebruikershandleiding-duco-systemen-(nl)_637085671824656669.pdf

Kan je je script eens laten zien?

Dit is een bug (zie: https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/issues/97) Wordt opgelost in een nieuwe firmware

Gibletron commented 2 years ago

Ik probeer een automation te maken voor de badkamer. Switch permanent on als humidity boven 83 komt. Switch off als humidity onder 60 komt.

Dit werkt nl. niet.: #badkamer ventilatie

* id: badkamer_ventilatie
  alias: 'Badkamer ventilatie'
  trigger:
  platform: numeric_state
  entity_id: sensor.prologue_90d2_hum
  above: 83
  for:
  minutes: 2
  action:

  * service: switch.turn_on
    entity_id: switch.duco_ventilation_high_perm

OP basis van deze informatie kan ik het probleem niet vinden Probeer de HA automation debug tools eens om te zien waar het mis gaat Ik heb een soortgelijke automation, welke ook de luchtvochtigheid van buiten meeneemt als condition, maar verder vrijwel exact hetzelfde doet.. heb er zelf geen issues mee

Dust-E commented 2 years ago

Allereerst: Gefeliciteerd met je keuze voor het beste Home Automation platform :P

Maar joking aside:

De schakelaars uitlezen kan, zie hiervoor de wiki Voor de vochtsensor bijvoorbeeld: https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/wiki/Configureren---Vocht-Ruimtesensor

Voor de "UIT" stand, zie ik zo bij Domoticz wiki ook geen mogelijkheid Als ik hier kijk: https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/wiki/Domoticz En dan onder het kopje: Configureren van de schakelaar Dan zie ik daar staan: Level 0 => OFF (NA) en in de afbeelding die er op volgt wordt geen commando ingevoerd voor "OFF"

Wel zie ik een mode "NOTHOME" Deze zet de schakelaars van de muurunits op één groen golfje Zelf ken ik deze mode niet en heb ik hem nooit gebruikt, hij zet de ventilatie op 15% en de fan op 9% voor mijn unit

EDIT: Na de handleiding gelezen te hebben is dit zo te zien de Afwezigheidsstand met één blauw golfje De Ducobox kent volgens de handleiding geen volledige UIT stand, enkel deze afwezigheidsstand

Thanks, ik ga eens kijken. UIT stand is inderdaad NOTHOME, ik was het even kwijt :-) NOTHOME is al prima voor mij

Dust-E commented 2 years ago

Ik probeer een automation te maken voor de badkamer. Switch permanent on als humidity boven 83 komt. Switch off als humidity onder 60 komt. Dit werkt nl. niet.: #badkamer ventilatie

* id: badkamer_ventilatie
  alias: 'Badkamer ventilatie'
  trigger:
  platform: numeric_state
  entity_id: sensor.prologue_90d2_hum
  above: 83
  for:
  minutes: 2
  action:

  * service: switch.turn_on
    entity_id: switch.duco_ventilation_high_perm

OP basis van deze informatie kan ik het probleem niet vinden Probeer de HA automation debug tools eens om te zien waar het mis gaat Ik heb een soortgelijke automation, welke ook de luchtvochtigheid van buiten meeneemt als condition, maar verder vrijwel exact hetzelfde doet.. heb er zelf geen issues mee

Gebruik je een externe sensor of de Duco bedieningsschakelaar? Indien het laatste kan je ook je laptop pakken en die even aan de Duco box aansluiten en dan kan je die waarders ook aanpassen naar wens.

Gibletron commented 2 years ago

Thanks, ik ga een kijken. UIT stand is inderdaad NOTHOME, ik was het even kwijt :-) NOTHOME is al prima voor mij

Dan moet dit voldoende zijn voor een switch/knop in HA

- platform: mqtt
  unique_id: duco_vent_nothome
  name: Duco Ventilation Not Home
  state_topic: "VENTILATION_GATEWAY/VENTILATION_GATEWAY/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,NOTHOME,0"
  payload_off: "VENTMODE,AUTO,0"
  value_template: "{{ '100' if value == '4' else '99' }}"
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 1
  retain: true
  icon: mdi:fan-speed-1
Dust-E commented 2 years ago

Bedankt, ik heb er nu alles instaan.

image

arcangel321 commented 2 years ago

Bedankt, ik heb er nu alles instaan.

image

Kan je de hele code posten zodat iedereen dit kan toevoegen?

Dust-E commented 2 years ago

Bedankt, ik heb er nu alles instaan. image

Kan je de hele code posten zodat iedereen dit kan toevoegen?

Hierbij de config:

DUCO

switch:

sensor:


Let op: ik gebruik andere (oude) benamingen dan wat in dit topic staat

arcangel321 commented 2 years ago

Hebben de oude benaming impact of het is puur de naam die je gegeven hebt?

Dust-E commented 2 years ago

Hebben de oude benaming impact of het is puur de naam die je gegeven hebt?

Je zou dan alleen de volgende regels moeten aanpassen:

Van: state_topic: "DUCO_GATEWAY/rf/Ventilationmode" command_topic: "DUCO_GATEWAY/cmd"

Naar: state_topic: "VENTILATION_GATEWAY/VENTILATION_GATEWAY/Ventilationmode" command_topic: "VENTILATION_GATEWAY/cmd"

ect.

Je kan dit nakijken wat je zelf hebt in MQTT-Explorer

JJ-82 commented 2 years ago

Breaking change per HA-relase 2022.9. MQTT-devices moeten gespecificeerd worden onder de configuration key.

switch:
  - platform: mqtt
    name: "Duco Afzuiging Hoog (15 min)"
    unique_id: duco_afzuiging_hoog_15_min
    icon: hass:fan
    state_topic: "DUCO_GATEWAY/rf/Ventilationmode"
    command_topic: "DUCO_GATEWAY/cmd"
    payload_on: "VENTMODE,HIGH,0"
    payload_off: "VENTMODE,AUTO,0"
    state_on: "3"
    state_off: "0"
    optimistic: false
    qos: 0
    retain: true

wordt

mqtt:
  switch:
    - name: "Duco Afzuiging Hoog (15 min)"
      unique_id: duco_afzuiging_hoog_15_min
      icon: hass:fan
      state_topic: "DUCO_GATEWAY/rf/Ventilationmode"
      command_topic: "DUCO_GATEWAY/cmd"
      payload_on: "VENTMODE,HIGH,0"
      payload_off: "VENTMODE,AUTO,0"
      state_on: "3"
      state_off: "0"
      optimistic: false
      qos: 0
      retain: true
JDunnio commented 1 year ago

Hoi,

Na het vanaf scratch inrichten van HA en problemen rondom mijn ventilatie dit mooie stuk werk van @arnemauer maar eens afgestoft, geupdate en van met bovenstaande opgezet.

Hierbij geef ik mijn setup graag terug als dank.

image image image
JDunnio commented 1 year ago

duco.yaml (/packages/duco.yaml)

Let op inspringing hieronder van switch: en sensor: die moet ingesprongen worden met twee spaties. Github vind the trema's niet heel leuk ook al staat het in een code block...

` mqtt: switch:

- name: "Duco Ventilation High (15 min)"
  unique_id: duco_ventilation_high_15_min
  icon: mdi:fan-speed-3
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,HIGH,0"
  value_template: "{{ '100' if value == '3' else '99' }}" 
  state_on: 100
  state_off: 99
  optimistic: false
  qos: 0
  retain: true

- name: "Duco Ventilation Medium (15 min)"
  unique_id: duco_ventilation_medium_15_min
  icon: mdi:fan-speed-2
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,MIDDLE,0"
  payload_off: "VENTMODE,AUTO,0"
  value_template: "{{ '100' if value == '2' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 0
  retain: true

- name: "Duco Ventilation Low (15 min)"
  unique_id: duco_ventilation_low_15_min
  icon: mdi:fan-speed-1
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,LOW,0"
  value_template: "{{ '100' if value == '1' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 0
  retain: true

- name: "Duco Ventilation Auto (Permanent)"
  unique_id: duco_ventilation_auto_permanent
  icon: mdi:fan-auto
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,AUTO,0"
  value_template: "{{ '100' if value == '0' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 1
  retain: true

- name: "Duco Ventilation High (Permanent)"
  unique_id: duco_ventilation_high_perm
  icon: mdi:fan-speed-3
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,PERMANENTHIGH,0"
  value_template: "{{ '100' if value == '13' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 1
  retain: true

- name: "Duco Ventilation Medium (Permanent)"
  unique_id: duco_ventilation_medium_perm
  icon: mdi:fan-speed-2
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,PERMANENTMIDDLE,0"
  value_template: "{{ '100' if value == '12' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 1
  retain: true

- name: "Duco Ventilation Low (Permanent)"
  unique_id: duco_ventilation_low_perm
  icon: mdi:fan-speed-1
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,PERMANENTLOW,0"
  value_template: "{{ '100' if value == '11' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 1
  retain: true
- name: "Duco Ventilation Not Home"
  unique_id: duco_ventilation_nothome
  icon: mdi:fan-remove
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  command_topic: "VENTILATION_GATEWAY/cmd"
  payload_on: "VENTMODE,NOTHOME,0"
  value_template: "{{ '100' if value == '4' else '99' }}" 
  state_on: "100"
  state_off: "99"
  optimistic: false
  qos: 1
  retain: true

sensor:

- unique_id: duco_gateway_status
  name: Duco Gateway Status
  icon: mdi:chart-box-outline
  state_topic: "VENTILATION_GATEWAY/status/LWT"

- unique_id: duco_ventilation_mode
  name: Duco Ventilation Mode
  icon: mdi:tune
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
  value_template: >-
    {% set status = value | int %}
    {% if status == 13 %}
    {{'Perm. Hoog'}}
    {% elif status == 12 %}
    {{'Perm. Middel'}}
    {% elif status == 11 %}
    {{'Perm. Laag'}}
    {% elif status == 4 %}
    {{'Niet Thuis'}}
    {% elif status == 3 %}
    {{'Hoog'}}
    {% elif status == 2 %}
    {{'Middel'}}
    {% elif status == 1 %}
    {{'Laag'}}
    {% elif status == 0 %}
    {{'Auto'}}
    {% else %}
    {{'Undefined'}}
    {% endif %}

- unique_id: duco_fan_percentage
  name: Duco Fan Percentage
  icon: mdi:percent-box-outline
  state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_PERCENTAGE/Ventilation_Percentage"
  unit_of_measurement: "%"

- unique_id: duco_fan_speed
  icon: mdi:speedometer
  name: Duco Fan Speed
  state_topic: "VENTILATION_GATEWAY/SERGW_FANSPEED/FanSpeed"
  unit_of_measurement: "rpm"

- unique_id: duco_countdown
  icon: mdi:timer-sand
  name: Duco Count Down
  state_topic: "VENTILATION_GATEWAY/SERGW_COUNTDOWN/Countdown"
  unit_of_measurement: "s"

- unique_id: duco_livingroom_co2_Sensor
  icon: mdi:molecule-co2
  name: Duco Livingroom CO2 Sensor
  state_topic: "VENTILATION_GATEWAY/REMOTE_LIVINGROOM_CO2/CO2_PPM"
  device_class: temperature
  unit_of_measurement: "CO2"

- unique_id: duco_livingroom_temp_Sensor
  icon: mdi:home-thermometer-outline
  name: Duco Livingroom Temperature Sensor
  state_topic: "VENTILATION_GATEWAY/REMOTE_LIVINGROOM_TEMPERATURE/Temperature"
  device_class: temperature
  unit_of_measurement: "°C"

`

JDunnio commented 1 year ago

Debug-card

type: vertical-stack cards:

` type: vertical-stack cards:

JDunnio commented 1 year ago

Mushroom-cards

type: vertical-stack cards:

JDunnio commented 1 year ago

Hier nu op uitgekomen voor nu. Alle sensoren staan er in. De timer wordt met een conditional card alleen weergegeven als hij hoger dan 0 is.

Benodigd: card_mod stack in card mushroom cards

image

======================================================

image

`

type: vertical-stack cards:

`

phoenix-blue commented 1 year ago

vraagje, is de eerste keer dat ik met een "card" werk. Wanneer ik de code plak in de editor van mijn dashboard krijg ik de volgende melding:

Configuratiefouten ontdekt: duplicated mapping key (4:1)

1 | type: vertical-stack 2 | cards: 3 | 4 | type: markdown -----^ 5 | content: ' ' 6 | title: DEBUG

Heb de code op verschillende manieren geprobeerd te plakken maar krijg vrijwel altijd dit soort meldingen, waar zou dit vandaan komen?

Gibletron commented 1 year ago

Controlleer goed de indentation (hoeveel spaties er voor iedere regel staan) Dat is iets wat bij kopieren/plakken vaak mis gaat

ruurdsanders commented 1 year ago

@JDunnio dank voor het delen van je yaml. Ik loop namelijk vast met het fixen van de waarschuwing in HA en dus dacht ik eens hier te kijken hoe jullie dit hebben opgelost. image

Zo zag mijn yaml er nu uit: ` switch:

sensor:

En als ik het verander naar de het nieuwe format weigert HA de instelling rondom switch te accepteren. Wanneer ik "check configuration" probeer te doen blijft ie in een infinite loop steken. Hetzelfde gebeurd als ik jouw yaml laad.

mqtt: switch:

Enig idee wat hier fout gaat?

bartlauwers53 commented 1 year ago

Als ik het zo zie ik je mqtt sectie leeg en daarna begin je een (bijna deprecated) switch sectie. De indentation klopt niet, bij mij begint het zo: KNIP Dus, let op, twee spaties vóór die “switch:”. Hopelijk kom je er uit. (Ps. Ik(noob)weet niet zeker of het sectie heet maar daar kunnen anderen mij vast op verbeteren :) ) EDIT: aha GitHub haalt die spaties bij mij weg en klooit aan de opmaak 🤓. Dit is een retry:

mqtt:
  switch: 
   - name: "Afzuiging Auto"
     unique_id: duco_afzuiging_auto_perm
     icon: mdi:fan-auto 

Gebruik voor de code ```yaml en daarna ``` om het netjes weer te laten geven.

ruurdsanders commented 1 year ago

@bartlauwers53 dank voor je reactie. Ik ben er inmiddels achter dat de yaml code helemaal niet fout was. Ik gebruik namelijk nog een yaml file voor een watermeter en dat bijt elkaar. Wanneer ik die file verwijder werkt de duco integratie gewoon

arcangel321 commented 1 year ago

Bedankt @JDunnio voor je code, hierbij mijn code mocht iemand hier gebruik van willen maken hierbij. Deze post omdat ik zelf ook uren bezig was om de code goed te krijgen :)

Benodigd: card_mod stack in card mushroom cards

LETOP de benaming welke moet matchen met de config in duco image

Configuration.yaml

mqtt:
  switch:
    - name: "Duco Ventilation High (15 min)"
      unique_id: duco_ventilation_high_15_min
      icon: mdi:fan-speed-3
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,HIGH,0"
      value_template: "{{ '100' if value == '3' else '99' }}" 
      state_on: 100
      state_off: 99
      optimistic: false
      qos: 0
      retain: true

    - name: "Duco Ventilation Medium (15 min)"
      unique_id: duco_ventilation_medium_15_min
      icon: mdi:fan-speed-2
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,MIDDLE,0"
      payload_off: "VENTMODE,AUTO,0"
      value_template: "{{ '100' if value == '2' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 0
      retain: true

    - name: "Duco Ventilation Low (15 min)"
      unique_id: duco_ventilation_low_15_min
      icon: mdi:fan-speed-1
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,LOW,0"
      value_template: "{{ '100' if value == '1' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 0
      retain: true

    - name: "Duco Ventilation Auto (Permanent)"
      unique_id: duco_ventilation_auto_permanent
      icon: mdi:fan-auto
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,AUTO,0"
      value_template: "{{ '100' if value == '0' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 1
      retain: true

    - name: "Duco Ventilation High (Permanent)"
      unique_id: duco_ventilation_high_perm
      icon: mdi:fan-speed-3
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,PERMANENTHIGH,0"
      value_template: "{{ '100' if value == '13' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 1
      retain: true

    - name: "Duco Ventilation Medium (Permanent)"
      unique_id: duco_ventilation_medium_perm
      icon: mdi:fan-speed-2
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,PERMANENTMIDDLE,0"
      value_template: "{{ '100' if value == '12' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 1
      retain: true

    - name: "Duco Ventilation Low (Permanent)"
      unique_id: duco_ventilation_low_perm
      icon: mdi:fan-speed-1
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,PERMANENTLOW,0"
      value_template: "{{ '100' if value == '11' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 1
      retain: true
    - name: "Duco Ventilation Not Home"
      unique_id: duco_ventilation_nothome
      icon: mdi:fan-remove
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,NOTHOME,0"
      value_template: "{{ '100' if value == '4' else '99' }}" 
      state_on: "100"
      state_off: "99"
      optimistic: false
      qos: 1
      retain: true

  sensor:
    - unique_id: duco_gateway_status
      name: Duco Gateway Status
      icon: mdi:chart-box-outline
      state_topic: "VENTILATION_GATEWAY/status/LWT"

    - unique_id: duco_ventilation_mode
      name: Duco Ventilation Mode
      icon: mdi:tune
      state_topic: "VENTILATION_GATEWAY/SERGW_VENTILATION_MODE/Ventilationmode"
      value_template: >-
        {% set status = value | int %}
        {% if status == 13 %}
        {{'Perm. Hoog'}}
        {% elif status == 12 %}
        {{'Perm. Middel'}}
        {% elif status == 11 %}
        {{'Perm. Laag'}}
        {% elif status == 4 %}
        {{'Niet Thuis'}}
        {% elif status == 3 %}
        {{'Hoog'}}
        {% elif status == 2 %}
        {{'Middel'}}
        {% elif status == 1 %}
        {{'Laag'}}
        {% elif status == 0 %}
        {{'Auto'}}
        {% else %}
        {{'Undefined'}}
        {% endif %}

    - unique_id: duco_fan_percentage
      name: Duco Fan Percentage
      icon: mdi:percent-box-outline
      state_topic: "VENTILATION_GATEWAY/VentilationPercentage/Ventilation_Percentage"
      unit_of_measurement: "%"

    - unique_id: duco_fan_speed
      icon: mdi:speedometer
      name: Duco Fan Speed
      state_topic: "VENTILATION_GATEWAY/SerialGW_Fanspeed/FanSpeed"
      unit_of_measurement: "rpm"

    - unique_id: duco_countdown
      icon: mdi:timer-sand
      name: Duco Count Down
      state_topic: "VENTILATION_GATEWAY/Countdown/Countdown"
      unit_of_measurement: "s"

    - unique_id: duco_livingroom_co2_Sensor
      icon: mdi:molecule-co2
      name: Duco Livingroom CO2 Sensor
      state_topic: "VENTILATION_GATEWAY/serialgw_CO2/CO2_PPM"
      device_class: temperature
      unit_of_measurement: "CO2"

    - unique_id: duco_livingroom_temp_Sensor
      icon: mdi:home-thermometer-outline
      name: Duco Livingroom Temperature Sensor
      state_topic: "VENTILATION_GATEWAY/REMOTE_LIVINGROOM_TEMPERATURE/Temperature"
      device_class: temperature
      unit_of_measurement: "°C"

Dashboard:

type: vertical-stack
cards:
  - type: custom:stack-in-card
    mode: horizontal
    cards:
      - type: custom:mushroom-chips-card
        chips:
          - type: template
            content: >-
              {{(states('sensor.duco_fan_percentage'))}}%
              ({{(states('sensor.duco_fan_speed'))}} rpm)
            icon: mdi:speedometer
            icon_color: green
          - type: template
            content: '{{(states(''sensor.duco_livingroom_co2_sensor''))}}'
            icon: mdi:molecule-co2
            icon_color: green
          - type: template
            content: '{{(states(''sensor.duco_livingroom_temperature_sensor''))}} °C'
            icon: mdi:home-thermometer-outline
            icon_color: green
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_auto_permanent
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        name: Auto
        layout: vertical
        fill_container: false
      - square: false
        columns: 1
        type: grid
        cards:
          - type: conditional
            conditions:
              - entity: sensor.duco_count_down
                state_not: '0'
            card:
              type: custom:mushroom-chips-card
              chips:
                - type: template
                  icon: mdi:timer-sand
                  entity: sensor.duco_count_down
                  icon_color: green
                  content: '{{(states(''sensor.duco_count_down''))}} s '
                  alignment: end
  - square: false
    columns: 3
    type: grid
    cards:
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_low_permanent
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        layout: vertical
        primary_info: name
        name: ' '
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_medium_permanent
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        layout: vertical
        primary_info: name
        name: ' '
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_high_permanent
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        layout: vertical
        primary_info: name
        name: ' '
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_low_15_min
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        layout: vertical
        primary_info: name
        name: 15 min.
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_medium_15_min
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        layout: vertical
        primary_info: name
        name: 15 min.
      - type: custom:mushroom-entity-card
        entity: switch.duco_ventilation_high_15_min
        icon_color: green
        tap_action:
          action: toggle
        secondary_info: none
        layout: vertical
        primary_info: name
        name: 15 min.

Resultaat: image

JDunnio commented 1 year ago

Nog wat zitten sleutelen. Begint wat te worden. Code misschien in een bestand door Arne laten plaatsen?

ACCDD271-FACC-4B86-946D-E7C1B85EF53F BC8ED8CB-8FC9-450B-ADA3-AACC065B8534 48493C1C-1405-465F-B535-8EC1BF64341B 34D020F1-6168-4B5D-ABFE-8DD234911A22

JDunnio commented 1 year ago

Duco iconen in de maak:

https://github.com/elax46/custom-brand-icons/issues/273

JDunnio commented 1 year ago

met icoontjes 🥳

morgen even wat code opschonen dan zal ik hem delen

DE39E017-181A-4F16-8BBA-9779D1EE7E11 CDB84753-FD19-47AF-AB85-EA635CDCFA3B DEFC0B47-AAD0-4783-8C99-1AC95EF9D983 293BF582-FC3D-40C1-8F63-90C197DD607F 6E123BA5-4D2F-4B82-81FB-3515F37524AB

dutchronnie commented 1 year ago

Ziet er allemaal mooi uit, Ik heb de duco silent ook geintregeerd in HA, en werkt tot nu toe perfect.

Zou je de iconen en de HA code voor de cards kunnen delen?

JDunnio commented 1 year ago

Ziet er allemaal mooi uit, Ik heb de duco silent ook geintregeerd in HA, en werkt tot nu toe perfect.

Zou je de iconen en de HA code voor de cards kunnen delen?

image

Benodigd:

Vanuit HACS:

Stap 1: zorg dat de gateway verbonden is met mqtt. let op de namen van de sensoren en de naam van de gateway. Anders zal je dit later in duco_package moeten aanpassen.

Stap 2: Packages: https://www.home-assistant.io/docs/configuration/packages/

Maak in de root van home-assistant een map met de naam "packages" aan en zet hier de duco_packages.txt in. Geef hem de naam duco.yaml of een andere naam, als het maar op .yaml eindigd.

De hygrostat onderaan in optioneel. Verwijder deze als je hem niet gebruikt, als je hem wel gebruikt pas hem aan naar een eigen humidity-sensor. Zie automation_hygrostat_bathroom.txt voor de automation om vanuit de hygrostat de duco ventilatie aan en uit te zetten. Ik doe na het bereiken van het target nog een extra 15min de ventilatie aan.

Maak in je configuration.yaml de onderstaande regel aan. Als je al een kop "homeassistant" hebt, plaats dan de "packages"-regel hierin

homeassistant:
  packages: !include_dir_named packages

Stap 3: Show time. Maak in een test dashboard een nieuw item aan en plak hierin de inhoud van "debug_lovelace.txt"

Als je alle mqtt-topics en het package goed hebt ingeladen hebt krijg je alle informatie te zien. Zie je niet alle informatie dan heeft het weinig zin om verder te gaan. Deze code is zonder alle HACS componenten en zou moeten werken. Test of je duco reageert op alle switches en of alle template sensors mee van status veranderen.

image image

Stap 4: Bij stap 3 gaan ik er vanuit dat je alle HACS componenten hebt ingeladen. Nu kun je de code vanuit lovelace.txt inladen en kijken of het werkt met de custom HACS componenten. Als je de hygrostat niet gebruik moet je die op tabbladen 2 -> 1 nog verwijderen. Hij staat als conditional card zodat je hem alleen ziet als hij aan staat.

duco_package.txt debug_lovelace.txt lovelace.txt automation_hygrostat_bathroom.txt

dutchronnie commented 1 year ago

Top, bedankt JDunnio👍

Ik ga er mee aan de slag, dat gaat vast goedkomen met deze heldere uitleg.

Ik denk dat er nog een foutje in is geslopen, het bestand automation_hygrostat_bathroom.txt is een leeg bestand 😉

JDunnio commented 1 year ago

Top, bedankt JDunnio👍

Ik ga er mee aan de slag, dat gaat vast goedkomen met deze heldere uitleg.

Ik denk dat er nog een foutje in is geslopen, het bestand automation_hygrostat_bathroom.txt is een leeg bestand 😉

Succes! Automation file was idd leeg, nu gevuld.

dutchronnie commented 1 year ago

Alles functioneert nu, maar heb nog wel een vraag. misschien heeft iemand daar een antwoordt op.

Ik heb in de configuratie de temperatuur en vochtigheid opgenomen, en die wil ik zichtbaar maken in een grafiek samen met de momenten dat de Duco inschakeld. Dat lukt ook, maar van alle waarden komen er regelmatig enorme spikes langs, waardoor de gafiek eigenlijk niet meer te lezen is. van de temperatuur b.v. komt regelmatig een waarde van 1000 graden langs. Weet iemand hoe dit er uit kan worden gefilterd?

JDunnio commented 1 year ago

Ik zou zeggen een min Max template sensor, maar in de docs van min Max staat dat je spikes moet verwijderen met de statistics de statistics sensor. verder geen ervaring mee..

https://www.home-assistant.io/integrations/min_max/

https://www.home-assistant.io/integrations/statistics/

pmkruyen commented 1 year ago

Ik probeer de gateway te koppelen aan HA, maar dat lukt helaas niet: het is mij gelukt om switches te maken, maar die staan uit (grayed out).

Ik heb alle aanwijzingen van @Jandokus gevolgd—waarvoor dank.

1) ik heb in HA een nieuwe user gemaakt met password. 2) ik heb Mosquitto broker geïnstalleerd in HA. 3) in de gateway heb ik een nieuwe controller aangemaakt met het ip adres van HA, port 1883, use extended credentials (met username en password eerder aangemaakt); ‘enable’ aangevinkt, 4) send to controller aangevinkt. 5) vervolgens in de config file van HA onderstaande toegevoegd. —-

mqtt:
  switch:
    - name: "Duco Afzuiging Hoog (15 min)"
      unique_id: duco_afzuiging_hoog
      icon: hass:fan
      state_topic: "VENTILATION_GATEWAY/Ventilation_Gateway_RF/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,HIGH,0"
      payload_off: "VENTMODE,AUTO,0"
      state_on: "3"
      state_off: "0"
      optimistic: false
      qos: 0
      retain: true
    - name: "Duco Afzuiging Middel (15 min)"
      unique_id: duco_afzuiging_middel
      icon: hass:fan
      state_topic: "VENTILATION_GATEWAY_0/Ventilation_Gateway_RF/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,MIDDLE,0"
      payload_off: "VENTMODE,AUTO,0"
      state_on: "2"
      state_off: "0"
      optimistic: false
      qos: 0
      retain: true
    - name: "Duco Afzuiging Laag (15 min)"
      unique_id: duco_afzuiging_laag
      icon: hass:fan
      state_topic: "VENTILATION_GATEWAY/Ventilation_Gateway_RF/Ventilationmode"
      command_topic: "VENTILATION_GATEWAY/cmd"
      payload_on: "VENTMODE,LOW,0"
      payload_off: "VENTMODE,AUTO,0"
      state_on: "1"
      state_off: "0"
      optimistic: false
      qos: 0
      retain: true

In de logs zie ik vervolgens onderstaande (patroon), waarbij de switches in HA op non actief staan (grayed out).

2023-01-26 19:03:13: Client VENTILATION_GATEWAY_0 has exceeded timeout, disconnecting.
2023-01-26 19:03:15: New connection from 192.168.1.39:64859 on port 1883.
2023-01-26 19:03:15: New client connected from 192.168.1.39:64859 as VENTILATION_GATEWAY_0 (p2, c0, k10, u'duco').
2023-01-26 19:03:44: New connection from 172.30.32.1:49331 on port 1883.
2023-01-26 19:03:44: Client <unknown> disconnected, not authorised.
2023-01-26 19:03:53: New connection from 172.30.32.2:52138 on port 1883.
2023-01-26 19:03:53: Client <unknown> closed its connection.
2023-01-26 19:05:45: New connection from 172.30.32.1:37265 on port 1883.

Wat ik nog aangepast heb is VENTILATION_GATEWAY_0, (de current client ID, die ik ook zie staan bij de controller) aangepast als static topic en command_topic maar dat heeft geen effect.

Ik hoop dat iemand een tip voor mij heeft. Ik hoor het ook graag als verdere toelichting nodig is.

Dank!

pmkruyen commented 1 year ago

O, ik zie dat er hierboven nog een aantal extra aanwijzingen worden gegeven (comments waren ingeklapt in deze draad). Daar ga ik eerst mee aan de slag.

pmkruyen commented 1 year ago

Opgelost. Werkt als een bus.

Wat ik nog moest doen in HA:

Instellingen --> core-mosquitto [configureer] --> [MQTT herconfigureer] --> gebruikersnaam en ww instellen, gelijk aan de gebruikersnaam en ww (eigenlijk aanpassen, want daar stond iets anders) die ik in stap 1 had aangemaakt.

Voor zover ik het begrijp is het ander IP adres (172. etc) van HA zelf.

julesvaes commented 1 year ago

Ziet er allemaal mooi uit, Ik heb de duco silent ook geintregeerd in HA, en werkt tot nu toe perfect. Zou je de iconen en de HA code voor de cards kunnen delen?

image

Benodigd:

Vanuit HACS:

  • card_mod.Gebruikt om de icons van bepaalde mushroom-cards the vergroten / verkleinen.
  • stack in card. Om de lijnen / afscheiding tussen cards te verwijderen zodat ze er uitzien als één geheel.
  • mushroom cards. Mijn standaard cards voor het bouwen van de GUI.
  • custom-brand-icons. Hier zijn de duco-iconen op verzoek gemaakt!

Stap 1: zorg dat de gateway verbonden is met mqtt. let op de namen van de sensoren en de naam van de gateway. Anders zal je dit later in duco_package moeten aanpassen.

Stap 2: Packages: https://www.home-assistant.io/docs/configuration/packages/

Maak in de root van home-assistant een map met de naam "packages" aan en zet hier de duco_packages.txt in. Geef hem de naam duco.yaml of een andere naam, als het maar op .yaml eindigd.

De hygrostat onderaan in optioneel. Verwijder deze als je hem niet gebruikt, als je hem wel gebruikt pas hem aan naar een eigen humidity-sensor. Zie automation_hygrostat_bathroom.txt voor de automation om vanuit de hygrostat de duco ventilatie aan en uit te zetten. Ik doe na het bereiken van het target nog een extra 15min de ventilatie aan.

Maak in je configuration.yaml de onderstaande regel aan. Als je al een kop "homeassistant" hebt, plaats dan de "packages"-regel hierin

homeassistant:
  packages: !include_dir_named packages

Stap 3: Show time. Maak in een test dashboard een nieuw item aan en plak hierin de inhoud van "debug_lovelace.txt"

Als je alle mqtt-topics en het package goed hebt ingeladen hebt krijg je alle informatie te zien. Zie je niet alle informatie dan heeft het weinig zin om verder te gaan. Deze code is zonder alle HACS componenten en zou moeten werken. Test of je duco reageert op alle switches en of alle template sensors mee van status veranderen.

image image

Stap 4: Bij stap 3 gaan ik er vanuit dat je alle HACS componenten hebt ingeladen. Nu kun je de code vanuit lovelace.txt inladen en kijken of het werkt met de custom HACS componenten. Als je de hygrostat niet gebruik moet je die op tabbladen 2 -> 1 nog verwijderen. Hij staat als conditional card zodat je hem alleen ziet als hij aan staat.

duco_package.txt debug_lovelace.txt lovelace.txt [automation_hygrostat_bathroom.txt](https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/files/10211892/automation_hygrostat_bathroom.txt

Ik heb hier een begin gemaakt met een stappenplan: https://github.com/arnemauer/Ducobox-ESPEasy-Plugin/wiki/Home-Assistant

Ik heb zelf geen HA dus heb wat geknipt en geplakt :) Graag hoor ik jullie wijzigingen/aanvullingen zodat we hem compleet kunnen maken.

Kan dit met de Duco box silent?

YoYoost commented 1 year ago

Ik krijg meldingen 'Issue with template: No default was specified.' in mijn log voor de templates. Als ik https://community.home-assistant.io/t/updating-templates-with-the-new-default-values-in-2021-10-x/346198 goed begrijp dan moeten alle int aangepast worden naar int(0) omdat ze een default moeten hebben.

Ik heb dit getest en mijn HA geeft geen foutmeldingen meer zonder dat ik functionaliteit verlies.

martijntinus commented 2 weeks ago

Hallo,

Ik zag deze topic en dacht dit heb ik anders, ik had alles in een "preset mode" maar dat was wat onhandig. Nu dacht ik, dit moet toch ook met persentages kunnen. Ik ben geen programmeur, kenner of iets maar na wat prutsen, googelen en proberen met wat hulp van chatgpt kwam ik tot het volgende.

Voor de gui gebruik ik een custum mushroom card:

type: custom:mushroom-fan-card
entity: fan.duco_fan
icon_animation: true
show_oscillate_control: false
show_percentage_control: false
collapsible_controls: false

image

image (waarbij de fan draait als ie aan staat)

voor de code in \config\packages\duco.yaml :

mqtt:
  sensor:
    - unique_id: 11303
      name : Snelheid
      state_topic: "VENTILATION_GATEWAY/State"
      value_template: >
        {% if value|float==0 %}Auto{% endif %}
        {% if value|float==1 %}Laag{% endif %}
        {% if value|float==2 %}Medium{% endif %}
        {% if value|float==3 %}Hoog{% endif %}
        {% if value|float==4 %}Full{% endif %}
        {% if value|float==11 %}LOW(T){% endif %}
        {% if value|float==12 %}Medium(T){% endif %}
        {% if value|float>=13 %}Hoog(T){% endif %}

  fan:
    command_topic: "VENTILATION_GATEWAY/cmd"
    state_topic: "VENTILATION_GATEWAY/State"
    name: "DUCO_Fan"
    unique_id: 11304
    payload_on: "VENTMODE,HIGH,0"
    payload_off: "VENTMODE,AUTO,0"
    percentage_command_topic: "VENTILATION_GATEWAY/cmd"
    percentage_command_template: >
      {% if value == 0 %}
        VENTMODE,AUTO,0
      {% elif value > 1 and value <= 33 %}
        VENTMODE,LOW,0
      {% elif value > 33 and value <= 66 %}
        VENTMODE,MIDDLE,0
      {% elif value > 66 and value <= 99 %}
        VENTMODE,HIGH,0
      {% elif value > 99 %}
        VENTMODE,PERMANENTHIGH,0
      {% endif %}
    percentage_state_topic: "VENTILATION_GATEWAY/State"
    percentage_value_template: >
      {% if value == '0' %}
        0
      {% elif value == '1' %}
        33
      {% elif value == '2' %}
        66
      {% elif value == '3' %}
        99
      {% elif value == '4' %}
        100
      {% endif %}
    optimistic: true

De permanent low en medium gebruik ik nooit dus heb ik ook niet toegevoegd. Indien gewenst kan je die er zo bij zetten. De sensor is niet perse nodig maar vind ik persoonlijk wel handig. Mocht iemand dit ook leuk/mooi/handig vinden of nog mooier kunnen doe dat vooral.

ps. de kaart kan je ook zo maken: image