Autor Thema: Modul-Vorstellung: MQTT_GENERIC_BRIDGE  (Gelesen 5768 mal)

Offline choetzu

  • Sr. Member
  • ****
  • Beiträge: 899
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #90 am: 01 Oktober 2018, 19:56:02 »
herzlichen dank. ich mache grad die ersten Schritte.

Auf Master-Raspi habe ich nun mosquitto, mqtt Modul und Mqtt_generic_bridge modul installiert

gemäss Bally muss ich auf dem RemoteRaspi (also Raspi2) kein mosquitto installieren. Ich gehe aber davon aus, dass ich dort ebenfalls die generic bridge installieren muss mit der IP des Master-Raspi, damit ich auch die attr für die Devices erhalte. ist dies korrekt? Ich habe kein testsystem, deshalb die Frage ;)
Interesse an Schweizer Usertreffen? https://forum.fhem.de/index.php/topic,88308.0.html

Raspi3, EnOcean, Zwave, Homematic

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #91 am: 01 Oktober 2018, 20:22:04 »
Richtig, auf beiden Systemen je ein MQTT Modul (mit der IP von mosquitto) und je eine GenericBrigde.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Phantomato

  • New Member
  • *
  • Beiträge: 18
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #92 am: 07 Oktober 2018, 21:45:21 »
Hallo,
ich habe das gleiche Problem wie SamNitro und NodeRed. Damit sind wir schon mal 2.

PS: Danke für das tolle Modul.

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #93 am: 07 Oktober 2018, 22:39:09 »
Meinst Du, dass die Schalter in NoeRED nicht funktionieren? Sollte mit der aktuellen Version richtig laufen. Tut es bei mir auch. Ansonsgten poste mal die relevante Konfiguration.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Phantomato

  • New Member
  • *
  • Beiträge: 18
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #94 am: 08 Oktober 2018, 20:01:56 »
ja, genau das. Hatte vorher eine wahrscheinlich recht ältere Entwicklungsversion die ich über Fhem "update" aktualisiert habe. Danach haben die Rückmeldungen in Nodered wie von SamNitro beschrieben, nicht mehr funktioniert.
Ist irgendwo eine Konfigurationsleiche übrig geblieben?

version 0.9.9 by hexenmeister
$Id: 10_MQTT_GENERIC_BRIDGE.pm 17444 2018-09-30 21:30:54Z hexenmeister $

define MqttGenericBridge MQTT_GENERIC_BRIDGE
attr MqttGenericBridge IODev MQTTBroker
attr MqttGenericBridge room System

define SzEnableMotionDetection dummy
attr SzEnableMotionDetection devStateIcon on:on:off off:off:on
attr SzEnableMotionDetection genericDeviceType switch
attr SzEnableMotionDetection mqttPublish state:topic={"stat/$device/$reading"}  *:retain=1
attr SzEnableMotionDetection mqttSubscribe state:stopic={"cmnd/$device/$reading"}
attr SzEnableMotionDetection room Schlafzimmer
attr SzEnableMotionDetection webCmd on:off

Auch wenn ich mit MQTT.fx ein "off" oder "on" auf "cmnd/SzEnableMotionDetection/state" publishe erhalte ich auf die topic "stat/SzEnableMotionDetection/state" keine Rückmeldung.

Das hier funktioniert allerdings wie vorgesehen:
define HM_2F66F2 CUL_HM 2F66F2
attr HM_2F66F2 IODev nanoCUL868
attr HM_2F66F2 IOgrp VCCU:nanoCUL868
attr HM_2F66F2 alias LED_Lampe
attr HM_2F66F2 autoReadReg 4_reqStatus
attr HM_2F66F2 expert 2_raw
attr HM_2F66F2 firmware 2.4
attr HM_2F66F2 group Licht
attr HM_2F66F2 model HM-LC-SW1-PL2
attr HM_2F66F2 mqttPublish *:topic={"stat/$device/$reading"} *:retain=1
attr HM_2F66F2 mqttSubscribe *:stopic={"cmnd/$device/$reading"}
attr HM_2F66F2 room Alexa,Licht,Schlafzimmer
attr HM_2F66F2 serialNr LTK0069478
attr HM_2F66F2 subType switch
attr HM_2F66F2 webCmd statusRequest:toggle:on:off

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #95 am: 08 Oktober 2018, 21:53:54 »
Hm....ja. Das hier ist das selbe Problem nur andersrum.
Wenn man an zweien Instanzen zwei Geräte verbindet, dürfen nicht beide alle ankommende Nachrichten gleich weiter durchleiten - das führt zu einer Endlosschleife. Daher ist das jetzt so implementiert, dass alle Geräte außer Dummies die Nachrichten weiterleiten können. Dummy eignet sich al 'Schalter', daher solcher Hack. Ich überlege immer noch, wie ich es saubersten einstellbar machen kann.
Bei Dir ist aber Dummy als eine Art Aktor verwendet (falls ich Deine Logik richtig verstanden habe)... Ich habe paar Ideen, fürchte aber mit vielen zusätzlichen Parameter nur den Benutzer zu verwirren :/
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Phantomato

  • New Member
  • *
  • Beiträge: 18
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #96 am: 08 Oktober 2018, 22:12:29 »
Bei Dir ist aber Dummy als eine Art Aktor verwendet (falls ich Deine Logik richtig verstanden habe)...

joah.. kommt hin. Mein Dummy dient als Merker und ist an sich ein Aktor. Dieser wird uber mqtt/nodeRed ein und ausgeschaltet. DOIF Schleifen fragen den Zustand ab und werten somit aus ob für den Bewegungsmelder eine Freigabe vorliegt oder nicht.

Vielleicht kann man das als default so lassen aber das alte Verhalten über irgendein Parameter (zb Attribut "mqttDoAllways") auswählbar lassen. Ein Parameter mehr oder weniger kompliziert die Sache nicht viel mehr wenn es gut dokummentiert ist.

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #97 am: 08 Oktober 2018, 22:29:00 »
Meine Überlegungen bis jetzt:

1. einen neuen "Topic"-Typ einführen. So wie atopic, stopic etc. Finde jedoch nicht wirklich intuitiv.
2. An der Bridge selbst Typen der Geräte angeben, die so oder anders agieren. Ist jedoch nicht flexibel genug.
3. Ein Parameter an der Gerät. So wie Dein Vorschlag.
4. Wie 3. nur für jedes Topic getrennt. Vermutlich oversized.

Bin derzeit eher bei 3.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Master_Nick

  • Sr. Member
  • ****
  • Beiträge: 632
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #98 am: 11 Oktober 2018, 14:41:36 »
Frage 1:  Probleme bzw Hilfeanfrage hier oder in nem anderen Thread?

Erledigt -> Hilfe/Probleme etc Thread zum MQTT_GENERIC_BRIDGE Modul: https://forum.fhem.de/index.php/topic,91984.0.html

Frage2: Der folgende Device will auf einmal (es ging vor Tagen noch) nicht mehr auf Befehle von NodeRed auf dem /state/set topic hören:

--> Moved https://forum.fhem.de/index.php/topic,91984.msg844833.html#msg844833

Internals:
   CFGFN     
   NAME       Streifen
   NR         94
   STATE      on
   TYPE       dummy
   READINGS:
     2018-10-11 14:37:58   newstate        on
     2018-10-11 14:37:58   state           on
Attributes:
   alexaName  Streifen
   alexaRoom  Wohnzimmer
   genericDeviceType light
   group      Licht
   homebridgeMapping Brightness=state,cmd=
   icon       light_led_stripe_rgb
   mqttDefaults base={"homeland/haushalt/elektrik/wohnzimmer/$device"} pub:qos=2 sub:qos=2 retain=1
   mqttPublish state:topic={"$base/$name"} state:qos=2 state:retain=1
   mqttSubscribe state:stopic=homeland/haushalt/elektrik/wohnzimmer/Streifen/state/set state:qos=2
   room       Echo,Wohnzimmer
   setList    state:slider,0,1,100 on off
   userattr   mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttPublish:textField-long mqttSubscribe:textField-long
   webCmd     state

Jemand eine Idee?  :o
Ich habe noch genau son Teil und da geht alles - unterschied ist nur die homebridge Sache und es ist kein dummy..
« Letzte Änderung: 11 Oktober 2018, 17:25:10 von Master_Nick »
RasPi 3 mit nanoCUL (a-culfw) | IT(V1&V3), IT-PIR, THGR122NX |Co² | alexa-fhem 0.3.0 | WOL | NFC | Harmony UltimateHub | Homestate | Roomba | 10" Touch mit Node-Red | SonOff S20 | Und ganz viel anderes tolles Gerödel.... ;-)

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #99 am: 11 Oktober 2018, 14:49:08 »
zu 1.: ist mir relativ egal. vlt. wäre sogar ein neuer 'Problem-Thread' angebracht...
zu 2.: Das Device ist ja eigentlich ein Dummy. Was soll dabei geschehen? Nur state im Dummy umgesetzt, oder auch die Nachricht weitergeleitet? Letzteres habe ich für Dummies erstmal unterdrückt, da sonst bei der Verwendung der Dummies als Schalt-Element (analog Deinem Dashboard im NodeRed) Endlosklreise entstehen. Ich überlege immer noch, wie man das am besten konfigurierbar macht.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Master_Nick

  • Sr. Member
  • ****
  • Beiträge: 632
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #100 am: 11 Oktober 2018, 15:02:10 »
Verstehe den Endlos Gedanken nicht gerade.

Ich habe zum schalten und antworten 2 Topics.
NodeRed zeigt am Schalter an was im topic /state anliegt und schaltet selber das topic /state/set
FHEM subscribed das topic /state/set und published in /state

Wo ist das nun der Loop? Genau so hab ich es bei allen Geräten :-)

Und vorhaben - was bisher auch ging bis zum Update zu einer der letzten Versionen (es fällt ja immer erst nach ner Weile auf) war eben, dass der Dummy im STATE auf on/off geschaltet wird.

Richtig hart trifft mich das bei meinem Dummy "Heizungssteurung" - der ist ein rein logischer Schalter für einige DOIFs :-D und nun geht er nicht mehr.
« Letzte Änderung: 11 Oktober 2018, 15:04:35 von Master_Nick »
RasPi 3 mit nanoCUL (a-culfw) | IT(V1&V3), IT-PIR, THGR122NX |Co² | alexa-fhem 0.3.0 | WOL | NFC | Harmony UltimateHub | Homestate | Roomba | 10" Touch mit Node-Red | SonOff S20 | Und ganz viel anderes tolles Gerödel.... ;-)

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #101 am: 11 Oktober 2018, 15:09:12 »
Vermutlich wird dein Dummy schon geschaltet, nur meldet es sein Status nicht mehr.
Kreise entstehen bei dir nicht. Aber in dem Fall, wenn man einen Aktor mit einem Dummy als Schaltelement verwendet. In deinem Fall müssen empfangene Nachrichten weiter geleitet werden, in dem anderen Fall eben nicht. Daher muss das konfiguriert werden können. Bin dran.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Master_Nick

  • Sr. Member
  • ****
  • Beiträge: 632
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #102 am: 11 Oktober 2018, 15:10:41 »
 ;D Mich wundert, dass es in einer alten Version (ich hab leider echt keine Ahnung welche Sprünge ich gemacht habe in den Versionen) tadellos funktionierte :-D

Es war ja laufendes System hier. 8)

Danke dir!  :-*
RasPi 3 mit nanoCUL (a-culfw) | IT(V1&V3), IT-PIR, THGR122NX |Co² | alexa-fhem 0.3.0 | WOL | NFC | Harmony UltimateHub | Homestate | Roomba | 10" Touch mit Node-Red | SonOff S20 | Und ganz viel anderes tolles Gerödel.... ;-)

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4312
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #103 am: 11 Oktober 2018, 15:13:19 »
Wegen entstandenen Endlosschleifen habe ich die Speere für Dummies eingebaut. Früher ging das, dafür was anderes nicht.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Master_Nick

  • Sr. Member
  • ****
  • Beiträge: 632
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #104 am: 11 Oktober 2018, 15:16:10 »
Wäre ne schaltbare Sperre nen Deal  8) ?
RasPi 3 mit nanoCUL (a-culfw) | IT(V1&V3), IT-PIR, THGR122NX |Co² | alexa-fhem 0.3.0 | WOL | NFC | Harmony UltimateHub | Homestate | Roomba | 10" Touch mit Node-Red | SonOff S20 | Und ganz viel anderes tolles Gerödel.... ;-)

 

decade-submarginal