Zigbee2mqtt

Hallo zusammen,

Ich probiere jetzt schon eine Weile, bekomme es aber irgendwie nicht ganz hin.

Ich hab IPS 5.5, Raspi4, mqtt Server installiert, mqtt-server in IPS (läuft bisher nur für shelly)

  1. kann ich das webinterface nicht aufrufen (bestimmt ein misverständlicher config-Fehler)

meine configuration…yaml sieht wie folgt aus:

homeassistant: false
permit_join: true
mqtt:
  base_topic: zigbee2mqtt
  server: '//192.168.10.21'
serial:
  port: /dev/ttyUSB0
'\n\nadvanced:\n    network_key': GENERATE
frontend:
  # Optional, default 8080
  port: 8080
  # Optional, default 0.0.0.0
  host: 192.168.10.21
  # Optional, enables authentication, disabled by default
  #auth_token: your-secret-token

  1. ich hatte eigentlich vor den mqtt Server außerhalb von IPS laufen zu lassen, welche Weg haltet ihr für einfacher/zuverlässiger?

Gruß oekomat

Guten Morgen,

deine configuration.yaml besitzt tatsächlich einen kleinen Fehler, lasse den Host mal bitte auf 0.0.0.0. (Siehe meine Config, letzte Zeile)

homeassistant: false
permit_join: true
mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://localhost:1883'
  include_device_information: true
  keepalive: 60
  reject_unauthorized: true
  version: 4
serial:
  port: >-
    /dev/serial/by-id/usb-Silicon_Labs_slae.sh_cc2652rb_stick_-_slaesh_s_iot_stuff_00_12_4B_00_21_CC_4B_D3-if00-port0
frontend:
  port: 8080
  host: 0.0.0.0

Den Aufruf des Webfronts erledigst Du dann mit:

[IP Deines Zigbee2mqtt-PI]:8080

Wenn Du über einen externen MQTT-Server gehen willst, dann nutze am Besten Mosquitto und installiere es auf dem PI, wo auch zigbee2mqtt installiert ist. Als Server gibst Du dann ‚mqtt://localhost:1883‘ an.

Mosquitto installierst Du auf dem PI ganz einfach mit:
pi@raspberry:~ $ sudo apt update
pi@raspberry:~ $ sudo apt install -y mosquitto mosquitto-clients
pi@raspberry:~ $ sudo systemctl enable mosquitto.service

Die letzte Zeile sorgt für den automatischen Start von Mosquitto.

In Symcon legst Du Dir dann einen Client Socket an und hinterlegst dort die Daten vom Mosquitto-Server.

Wenn Du in Symcon das zigbee2mqtt Modul von @KaiS nutzt, gebe im entsprechenden Konfigurator bitt nicht ‚zigbee2mqtt‘ als topic an, sondern ‚bridge‘.

Mosquitto läuft bei mir extrem stabil und zigbee2mqtt ist inzwischen mit knapp 140 Devices bestückt. Bisher das stabilste, was ich in Symcon je zu laufen hatte. An Funksystemen logischer Weise.

Gruß

Burkhard

P.S.: Es wäre sinnvoll, Deine privat genutzten IPs beim nächsten Post etwas zu verstümmeln. Die muss nicht Jeder sehen. :wink:

klappt.
Ich habe mqtt lt. Empfehlung auf dem pi installiert wie hier.
Habe gesehen, du hast auch einen 2652rb-Stick wie ich.

DAs zigbee2mqtt Modul von @Kai hab ich installiert. Was brauche ich noch, wenn ich den unter ips laufenden mqtt-server lösche, der durch den externen auf dem pi laufenden server ja nun ersetzt werden soll?

Wich in IPS unter I/O Instanzen ein Client-Socket anlege, mit IP des eigenen pi und Port 1883, erscheint ab und zu, dass die Schnittstelle fehlerhaft markiert ist und wechselt dann wieder auf Schnittstelle ist geöffnet. Sieht noch! so aus:

Befürchte da beisst sich was, da ich einige shellys ja noch mit dem internen laufen habe.

Gruß oekomat

Splitter: Anstelle des MQTT-Servers nimmst Du einen MQTT-Clienten (ich nutze hier den von Symcon).
I/O Instanz: Client Socket mit den Einstellungswerten des Mosquitto (IP und Port).

Die Shellys liest Du auch per MQTT ein?
Ist da Tasmota drauf?
Wenn, dann musst Du die Shellys auf den Mosquitto einstellen und kannst die Daten ebenso per Client in Symcon rein holen. (MQTT-Host, MQTT Port werden angepasst, User,Client und Topic NICHT ändern).

Letztendlich habe ich bei mir alle Symcon-eigenen MQTT-Server entfernt und gehe derzeitig komplett mit allen Devices an den Mosquitto und hole mir die Daten dann per Client in Symcon rein.

Gruß

Burkhard

Danke vorab für deine Unterstützung.

Meine Shellys haben standardfirmware ohne cloud drauf. Die habe ich mittels Kais Shelly Modul und MQTT-Server verbunden. Ist das Gateway für die Shelly Configurator jetzt der MQTT-Client?

Für den Zigbee2MQTT Configurator hab ich Gateway auf MQTT-Client umgestellt und bekomme bei eingebundenen Devices jetzt auch Daten :+1:

Wenn ich eine vorher bei einer Hue Bridge entfernte Lampe lösche, muss ich dann nur per mqtt Server auf meinem pi koppeln und seh die dann direkt im zigbee2MQTT Kongurator, vergebe eine ID und kann die mit Skripten dann ansprechen? Weiter nichts?

Gruß oekomat

Wenn Du die Shellyys so eingestellt hast, dass sie über den Mosquitto-Server gehen, dann sollten die Daten über den MQTT-Klienten abrufbar sein.

Wenn Du eine Hue an Zigbee2MQTT (z2m) anbinden willst, machst Du das über das Frontend von z2m. Dort änderst Du auch den Namen des Gerätes.


Dann wird in Smycon der MQTT-Konfigurator aufgerufen. Die Device-List bitte ZWEIMAL aktualisieren.

Dann sollte die Hue auch unter dem Namen erscheinen, den Du ihr im z2m-Frontend gegeben hast.

Wenn Du das Gerät angelegt hast, musst Du Dir noch die Variablen holen:

Das sollte es dann gewesen sein und die Hue sollte in Symcon zur Verfügung stehen.

Gruß

Burkhard

Anlernen klappt, umbenennen klappt.

Ich habe ein Gerät angelegt „Zigbee2MQTT Device“, MQTT Topic ist dann der im webfront vergebene Name (bei mir osram60w) - da passt irgendwas nicht. Wo hast du den letzten Screenshot gemacht, bzw. mit welcher Instanz legst du die Geräte an?

In Kais Doku steht was von einem Befehlt Z2M_SwitchMode, der in dem Modull zigbee2mqtt enthalten sein soll?!

Gruß oekomat

PS: danke für deine Geduld.

Edit: habs gefunden, Screenshot imKonfigurator. Variablen abgerufen. Dann bekomm ich bei dem oben beschriebene angelegen Gerät eine Integer Variable. Die versuche ich mal irgendwie zu schalten…

ich glaube die vorerst letzte Frage zu meinem Fall:
Um Geräte in IPS schalten zu können, brauche ich das Modul MQTTSync oder geht das auch anders. Ganz einfach mit SetValue die Variablen anzupassen, pusht nichts an den MQTT-Server.

Edit: Statt SetValue einfach RequestAction, schaltet alle beliebigen Variablen des Device (Tipp: im Webfront müssen die einzelnen Variablen mal geschalten werden, damit IPS eine Variable anlegt)

Aber Wozu dann das MQTTSync Modul?

Gruß oekomat

Das Sync Modul nutze ich gar nicht. Habs auch nicht installiert.

Befehle die funktionieren kannst Du im Script-Editor abrufen.

Dazu einfach den Script-Editor öffnen und auf das Feld „Befehl Einfügen“ klicken. Dann kannst Du die Device aussuchen und siehst, welche Befehle alle gehen. Das Meiste wird inzwischen allerdings mit „RunActionWait“ z. B. durchgeführt.

IPS_RunActionWait('{E616C2B2-A827-1712-4AE0-841C57B3DD74}', 31094, json_decode('{"IDENT":"STATE","ACTION":"{\"actionID\":\"{A7A928A3-86AB-4FFA-AECA-39C0A2E4933D}\",\"parameters\":{\"VISIBLE\":false}}"}', true));//Start writing your code here

Gruß

Burkhard

ok, danke für die info. eine Osram Lampe und einen Hue Dimmschalter habe ich problemlos integrieren und schalten/auswerten können.
Eben hab ich hue calla und lily von der HueBridge entfernt und ein Werksreset gemacht, im Webfront von zigbee2mqtt die join Funktion aktiviert, aber Lampe wird keine einzige gefunden…das kann doch nicht so schwer sein?!

Gruß oekomat

Moment, Du musst die Join-Funktion nicht aktivieren. Bei z2m ist die immer aktiv, es sei denn, Du schaltest sie ab. Das hab ich erst gemacht, nachdem Alles angelernt war.

Gruß

Burkhard

lt. configuration.yaml ist die pairing funktion auch immer auf auf true, das stimmt, nur im log (sudo journalctl -u zigbee2mqtt.service -f) wechselt der Status dann von „Zigbee: allowing new devices to join.“ zu „Zigbee: disabling joining new devices.“
Wie auch immer, ich schalte die HUEs ein, gefunden werden sie nicht., in der HUE Bridge sind sie auch nicht mehr, würden aber (hab ich getestet) gefunden werden und könnten neu eingerichtet werden.
Reichweite schließe ich aus, 8m entfernt.

PS: einen Ikea Soundcontroller findet zigbee auf Anhieb.

NICHT ausschliessen. Zum Anlernen an den Stick bitte so nah wie möglich an den Stick bringen. Ich hab mir extra ne E27, E14 und nen GU10 mit Kabel (Baustellenfassung) besorgt. Bei mir gab es schon bei 4 Metern Probleme beim Anlernen. Nach dem Anlernen läuft es dann ohne Probleme.

Philips und Osram sind ein wenig zickig, wenn man nicht die original Bridge nutzen will.

Gruß

Burkhard

und ich probiere ich ewig…steht nirgendwo, dass ich mit meinem pi jetzt mit 30m LAN durch den Garten stiefeln kann :joy:
Danke für den Tipp. Ich habe jetzt sofort 2 Lampen anlernen können.

Ich muss aber immer den Button im Webfront drücken „Join enable“, der dann für ca 4min aktiv ist.

Welche Version von z2m nutzt Du denn? Bei mir ist das dauerhaft an mit dem Joinen.

Jetzt weißt Du, warum ich im Büro die Baustellenfassungen in E27, E14 und GU10 habe. Erst anlernen, dann in die vorgesehene Position bringen. :grinning:

Gerade bei den GU10 sehr wichtig, die sitzen im Dachkasten und jedesmal Leiter hoch und runter, das wäre zuviel des guten.

Aber nen Foto von Dir mit nem PI am 30m Kabel durch den Garten rennend würde ich ja gerne mal sehen wollen. :stuck_out_tongue_closed_eyes:

Gruß

Burkhard

Mir fällt gerade ein, schaue mal, ob in deiner Configuration.yaml der Punkt: Permit_Join noch auf true steht

Ich habe 1.18.3 / Frontend 0.4.0 - ja, configuration.yaml passt, das hab ich laut Doku als erstes und schon mehrmals geprüft.

Das Foto werde ich dir senden, wenn ich an der letzten Lampe bin :rofl:

Wenn du so viele Devices hast, hast du auch Zigbee Wandschalter, die nicht von Hue sind?
Ich hab einen EltakoFT55H, der mit Tastendruck Energie erzeugt und keinen Strom braucht. Den bekomm ich nicht ins Zigbee Netzwerk. An der Hue Bridge funktionierte der sehr gut. Aber ist sicher eher ein anderes Thema. :hugs:

Ich nutze eigentlich keine Wandschalter, ausser für die Markise (Wunsch der Frau). Da nutze ich einen Aqara Opple Taster.

image

Hab mal geschaut. Der Eltako ist KEIN ZigBee Taster. Er gehört zur Reihe der „Friends of HUE“ basiert auf Enocean und ist mit den frühen Hue-Protokollen kombinierbar. ZigBee ist ja ein offener Standard. Das heißt, mache Hersteller (vor Allem Philips und Osram) haben ihre Eigenheiten in das Protokoll mit eingepflegt, was zu Problemen bei normalen ZigBee Netzwerken führt.

ok, dann hat sich das Thema ja auch erledigt - Dank dir für die info… Da ich an der Einsatzstelle keinen Strom liegen habe, werd ich nach einem anderen Schalter gucken, den ich da einbinden kann - notfalls auch batteriebetrieben.
Ich konfiguriere gerade schön, bin gerade bei der Gruppensteuerung. Gruppe im Webfront angelegt, aber Gruppenschalter suche ich noch…