Dobiss lights integration

EN probeer even door te zetten, canbus is VEEL beter dan sturen via TCP, met TCP heb je helaas een polling nodig, dus je hebt geen instant verkeer, en je kan je polling niet op bv 1 sec zetten, dan is te veel data voor de max200

Heb mij een Mcp2515 besteld, eens kijken of het daar wel mee werkt. Ik hou je op de hoogte :slight_smile:

Waarom geen canable USB adapter? Staat je HA niet in de buurt van je kast?

Klopt, staat momenteel aan de andere kant van het huis. Zal misschien later kijken om de boel te verplaatsen en het via een canable te doen.

Nuja, denk nog steeds dat je ergens een foutje in de code hebt

Het is gelukt :slight_smile:

switch:
  - platform: template
    name: "Bureel Midden"
    optimistic: true
    id: bureel_midden
    turn_on_action:
      - canbus.send:
          canbus_id: dobiss_canbus
          data: [0x00, 0x41, 0x06, 0x01]
    turn_off_action:
      - canbus.send:
          canbus_id: dobiss_canbus
          data: [0x00, 0x41, 0x06, 0x00]

canbus:
  - platform: esp32_can
    id: dobiss_canbus
    can_id: 0x00800102
    tx_pin: GPIO5
    rx_pin: GPIO4
    bit_rate: 125kbps
    use_extended_id: true
    on_frame:
      - can_id: 0x100ff00
        use_extended_id: true
        then:
          - lambda: |-
              if (x.size() ==4 and x[0] == 0x00 and x[1] == 0x41 and x[2] == 0x06) {
                if (x[3] == 0x01) {
                  id(bureel_midden).publish_state(true);
                } else {
                  id(bureel_midden).publish_state(false);
                }
              }

Ik ben wel fan van die switches, is direct duidelijk of ze aan of uit staan. Zou jij hier nog iets aan aanpassen?

Is er een canbus commando om alle states op te vragen? (zo kan ik alles goedzetten bij het opstarten).

je kan ook het light domain gebruiken voor je lampen en switch domain voor je schakelaars, is mooier toch in HA … Heb je ook dimmers op je dobiss? Die kan je dan ook in je canbus zetten, moet je wel berekingen maken met de hex waardes , om die om te zetten naar 0…255

Anyway, wat je nog mist in je code , is je value template, want stel dat je de lamp aan doet via een drukknop, dat weet je dat niet in HA

De message om de status op te vragen van alle relays, is onderstaande

cansend can0 00800101#00

Dit commando heb ik in een automation gezet bij elke herstart van HA, zodat alle states goed gezet worden adhv een sensor… Bij de herstart van HA, dump ik alle states in een template sensor zoals je kan zien in de screenshot; en ik gebruik dan bv deze value_template voor een lamp/schakelaar
Ook als er een nieuwe state op canbus gezet wordt, dan update mijn sensor

Als de waarde 01 is, dan is de lamp aan, alsook in HA

    keukeneiland:
      friendly_name: "Keuken Eiland"
      value_template: "{{ state_attr('sensor.dobiss', '4104') == '01' }}"
      turn_on:
      ....

Wat was nu trouwens het probleem?

Edit: was nu even aan het kijken in je code, en je hebt idd geen value template nodig, je doet dan in die lambda

Netjes :slight_smile:

Het foute can_id op de canbus, waardoor de verzonden frames niet het juiste extended ID hadden :stuck_out_tongue: stom maar ben blij dat het nu werkt :slight_smile:
Ik heb idd ook dimmers, dat wordt nog even zoeken…
Bedankt voor je hulp!

Ja, als je kijkt naar mijn code, dan weet je hoe je de omzetting kan doen…
De dimmers sturen van 0 … 90 (maar dan Hex) in waarden van 10 … Dus 00…10…20…90

Maar 90 is eigenlijk 100% brightness
Die hex waarden zet je om naar 0…255
En omgekeerd dus ook als je het wilt sturen…
Enfin de voorbeelden staan in mijn code :slight_smile:

Hmm, ik heb de code precies niet shared van een dimmer, anyway, zie hieronder, bespaart je al wat opzoekwerk en formules… Momenteel zitten er nog input_numbers in als helpers, maar zoo ook perfect zonder kunnen

Input_number:


dimmer1:
    name: Eethoek Raam
    initial: 0
    min: 0
    max: 255
    step: 1

lights:


    dimmer1:
      friendly_name: "Eethoek Raam"
      value_template: "{{ state_attr('sensor.dobiss', '4500') != '00' }}" 
      level_template: "{{ ( state_attr('sensor.dobiss', '4500') | int(base=16,default=0) / 90 * 255 ) | int(default=0) }}"      
      turn_on:
        - service: input_number.set_value
          data:
            entity_id: input_number.dimmer1
            value: 255
        - service: shell_command.dobiss
          data_template:
            module: 45
            id: 00
            power: "{{ '%02.f'%((((states('input_number.dimmer1') | float / 255 ) * 90) // 10) * 10) }}"     
      turn_off:
        - service: input_number.set_value
          data:
            entity_id: input_number.dimmer1
            value: 0
        - service: shell_command.dobiss
          data_template:
            module: 45
            id: 00
            power: "{{ '%02.f'%((((states('input_number.dimmer1') | float / 255 ) * 90) // 10) * 10) }}"       
      set_level:
        - service: input_number.set_value
          data_template:
            entity_id: input_number.dimmer1
            value: "{{ brightness }}"
        - service: shell_command.dobiss
          data_template:
            module: 45
            id: 00
            power: "{{ '%02.f'%((((states('input_number.dimmer1') | float / 255 ) * 90) // 10) * 10) }}"

Hierbij zonder input_number helper, weer wat code minder :slight_smile:

    dimmer1:
      friendly_name: "Eethoek Raam"
      value_template: "{{ state_attr('sensor.dobiss', '4500') != '00' }}" 
      level_template: "{{ ( state_attr('sensor.dobiss', '4500') | int(base=16,default=0) / 90 * 255 ) | int(default=0) }}"      
      turn_on:
        - service: shell_command.dobiss
          data_template:
            module: 45
            id: 00
            power: 90
      turn_off:
        - service: shell_command.dobiss
          data_template:
            module: 45
            id: 00
            power: 00     
      set_level:
          data_template:
            module: 45
            id: 00
            power: "{{ '%02.f'%(((( brightness | float / 255 ) * 90) // 10) * 10) }}"

Hiermee zou je mij enorm uit de nood kunnen helpen. Heb je een schema of iets dergelijks? Ik heb een paar relais die zijn ingesteld voor rolluiken, maar die zijn ofwel weggehaald ofwel er nooit gekomen bij vorige eigenaars. Ik zou die heel graag herbestemmen maar dat lukt dus niet zonder sx kabel.

Ik heb een huis gekocht waarbij Dobiss volledig geïntegreerd is. Ik zou heel graag HA gebruiken en vraag me af of het gewoon niet eenvoudiger is alle lichten en sensoren te vervangen door HA compatibele lichten en sensoren en in feite Dobiss er van tussen te laten. Wat is de reden dat jullie persé Dobiss houden? Totale kost om alles te vervangen? Of is het technisch gezien niet mogelijk? Of willen jullie de Dobiss app (naast HA)nog blijven gebruiken?

Waarom dobiss wegdoen? Het is een goed systeem… Welk dobiss systeem heb je?

Verlichting vind ik iets cruciaal, stel dat je HA er uit licht, dan werkt je verlichting/schakelaars niet meer?

Ik vind dat verlichting ten alle tijden moet werken, en niet afhankelijk moet zijn van HA , wi-fi, ZigBee, …

PS : ik heb de dobiss app nog nooit gebruikt, alles naar HA gezet :slight_smile:

1 Like

We verhuizen pas binnen enkele weken. Dus momenteel nog niet heel zeker welk systeem het is.

Hoe oud is het huis?

Hey, sorry voor het late antwoord. Heb je dit nog steeds nodig?

7-8 jaar oud… Kan je zo ongeveer weten welk systeem het juist is?

Dan denk ik niet dat het de nieuwste NXT is, maar eerder de evolution pro