Dobiss lights integration

Ik ben de canbus weg opgegaan. Krijg in mijn ESPHome logs mooi de states binnen per adres (00 voor uit, 01 voor aan).

[22:27:03][D][canbus:069]: received can message (#1) extended can_id=0x100ff00 size=4
[22:27:03][V][canbus:079]:   can_message.data[0]=00
[22:27:03][V][canbus:079]:   can_message.data[1]=41
[22:27:03][V][canbus:079]:   can_message.data[2]=06
[22:27:03][V][canbus:079]:   can_message.data[3]=00
[22:27:03][D][canbus:069]: received can message (#1) extended can_id=0x100ff00 size=4
[22:27:03][V][canbus:079]:   can_message.data[0]=00
[22:27:03][V][canbus:079]:   can_message.data[1]=41
[22:27:03][V][canbus:079]:   can_message.data[2]=06
[22:27:03][V][canbus:079]:   can_message.data[3]=01

Maar op welke manier toggle jij de lichten precies? Je stuurt datzelfde bericht terug op de can bus? bv. 00410600. Hieronder een voorbeeld met een switch in de ESPHome config.

switch:
  - platform: template
    name: "CAN Bus Switch"
    id: canbus_switch
    turn_on_action:
      - canbus.send: 
          canbus_id: first_canbus
          data: !lambda return {00, 41, 06, 01};
          remote_transmission_request: true
    turn_off_action: []
    optimistic: true

canbus:
  - platform: esp32_can
    id: first_canbus
    tx_pin: GPIO5
    rx_pin: GPIO4
    bit_rate: 125kbps
    can_id: 16842496
    use_extended_id: true

Dit werkt ook gewoon volgens de logs, al valt het mij wel op dat er een extra 0 is toegevoegd aan het extID.

[22:14:06][D][switch:012]: 'CAN Bus Switch' Turning ON.
[22:14:06][D][canbus:032]: send extended id=0x0100ff00 rtr=TRUE size=4

Het zou 0x100ff00 moeten zijn, niet 0x0100ff00.

Deze toggle heeft dan ook geen enkel effect.

Hmm, dat weet ik niet van buiten meer zal morgen eens zien in de code… Ik denk dat ik nog stuur via TCP, maar wel de States lees via canbus…

Maar ik heb wel wat example codes voor canbus te sturen

1 Like

Alvast bedankt! Ik weet ondertussen ook hoe je een SX-kabel maakt. Kan wel interessant zijn om dit hier te delen, aangezien er verder geen informatie over beschikbaar is.

Sx kabel? Je bedoelt voor de relais te programmeren met sx tool?

Hier heb ik trouwens mijn code geshared:

Klopt maar in mijn geval ook om de max200 uit te lezen, via een ethernetkabel krijg ik er geen concrete informatie uit. Ze wisten bij Dobiss ook niet waaraan dat precies lag…

Dus als ik het goed voor heb kan je via de canbus enkel de states uitlezen maar niks manueel gaan aansturen? Dat doe je dan eerder via tcp of over serial? Maxtool reversen dus…?

Kan beide, de link die ik post, was voor canbus…
Maar via TCP ken je ook States uitlezen en sturen

Serial lukt niet, maar wel TCP of canbus

Vreemd dat mijn switch dan niks doet, ook al stuur ik het correcte commando. Is er een reden dat je cansend gebruikt en niet de ingebouwde canbus.send functie van ESPHome?

Ah, maar ik gebruik geen esphome, ik gebruik de canable USB adapter, ik vind dat een mooiere oplossing dat zo ESP bordjes :slight_smile:

Daarom ook de canutils … via python zou het ook kunnen

Maar 01 sturen is geen toggle he, dat is het ON commando en 00 is OFF… Als je echt wilt togglen , probeer dan eens 02

Ik gebruik geen toggle commando, want ik lees de States uit, zodat HA ook de status weet van de lamp, ik gebruik dus de toggle feature van HA zelf

Ik ben trouwens ook gestart met de ESP, maar dat bordje heeft mijn max200 kapot gemaakt, maar wellicht eigen fout, ik had alleen maar de H en L aangesloten, en geen GND

Maar ik weet niet of ik die code nog heb ervan, zal nog eens moeten zoeken

Hmm, ik zie dat ik heel wat gepost heb destijds in de dobiss2mqtt thread, ook de ESP code, maar was al.lang geleden , ik heb de ESP nooit gebruikt om iets te sturen, gewoon om te lezen… Ik wou vooral de drukschakelaars uitlezen, om dan andere acties te kunnen doen in HA…
Maar je hebt problemen met die extra 0?

Mss helpt dit: use_extended_id: true
Of false ?

Dat lijkt idd het probleem te zijn. Een 02 doet ook niks trouwens. Terwijl het commando wel weer correct is. Wat bedoelde je indertijd trouwens met die ghost programma’s? Want ik kon de drukknoppen direct uitlezen van de canbus.

Heb je wel de evolution SX? Want als je op een drukknop klikt, dat commando staat niet op de canbus… Je ziet alleen wat de lamp/schakelaar doet op de canbus (de state)

Ik wou dus bv via een drukknop een stofzuiger aanzetten bv, wat ik nu doe, via een drukknop zet ik een programma aan (Ghost programma dat niks doet) , deze state lees ik uit, en dan doe ik mijn actie in HA

Als je je dus baseert op de messages die op de canbus verschijnen, dat zijn niet dezelfde als de commandos om iets te sturen

Die prefix is normaal anders probeer dit eens?

cansend can0 00800102#00410401
cansend can0 00800102#00410400

Ja ik verwar de state dus met aan/uit commando’s… Zou je een voorbeeld kunnen geven van zo een ghost programma? Hoe je dat precies opsteld in Maxtool?

Thanks, ik probeer het even :slight_smile:

Ik heb een programma gemaakt dat iets doet met een temperatuur regime, iets aan / uit zetten… Maar ik heb helemaal geen temp sensor op mijn dobiss , dus dat doet niks :slight_smile:

Maar het programma gaat wel aan/uit, die state vang ik op en dan schakel ik iets in HA