Ankündigung

Einklappen
Keine Ankündigung bisher.

openHAB2 MQTT-Command

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    openHAB2 MQTT-Command

    Hallo,
    ich möchte eine NodeMCU 1.0 mit EasyESP eingestellt auf "OpenHAB MQTT" aus openHAB steuern. Über MQTTLens kann ich alle GPIOs gezielt ansprechen und ändern.
    Mir gelingt es allerdings nicht aus openHAB heraus die entsprechenden Anweisungen zu erzeugen.

    In mqtt.cfg steht:
    mosquitto.url=tcp://192.168.178.31:1883
    mosquitto.clientId=openHAB2
    mosquitto.user=***
    mosquitto.pwd=***
    mosquitto.qos=1
    mosquitto.retain=true
    mosquitto.async=false
    In mqtt-eventbus.cfg steht:
    broker=mosquitto
    commandPublishTopic=/NodeMCU/gpio/13
    commandSubscribeTopic=/NodeMCU/gpio/15
    service.pid=org.openhab.mqtt-eventbus
    #statePublishTopic=
    stateSubscribeTopic=/NodeMCU/gpio/14
    Unter items steht:
    Switch Switch1 {mqtt=">[mosquitto:/NodeMCU/gpio/12:command:ON:1],>[mosquitto:/NodeMCU/gpio/12:command:OFF:0]"}
    Switch Switch2 {mqtt=">[mosquitto:/NodeMCU/gpio/13:command:ON:1],>[mosquitto:/NodeMCU/gpio/13:command:OFF:0]"}
    Switch Switch3 {mqtt=">[mosquitto:/NodeMCU/gpio/14:command:ON:1],>[mosquitto:/NodeMCU/gpio/14:command:OFF:0]"}
    Switch Switch4 {mqtt=">[mosquitto:/NodeMCU/gpio/15:command:ON:1],>[mosquitto:/NodeMCU/gpio/15:command:OFF:0]"}
    Damit erhalte ich im Mosquitto-Protokoll:
    1495568882: New connection from 192.168.178.31 on port 1883.
    1495568882: New client connected from 192.168.178.31 as openHAB2 (c1, k60, u'***').
    1495568882: Sending CONNACK to openHAB2 (0, 0)
    1495568891: Received SUBSCRIBE from openHAB2
    1495568891: /NodeMCU/gpio/14 (QoS 0)
    1495568891: openHAB2 0 /NodeMCU/gpio/14
    1495568891: Sending SUBACK to openHAB2
    1495568891: Received SUBSCRIBE from openHAB2
    1495568891: /NodeMCU/gpio/15 (QoS 0)
    1495568891: openHAB2 0 /NodeMCU/gpio/15
    1495568891: Sending SUBACK to openHAB2
    Wenn ich noch statePublishTopic=... angebe, werden massenhaft Ausgaben produziert, aber auch dann fehlen die MQTT-Switches.

    Habe auch 1.8.3 ohne Erfolg probiert. Hat jemand einen Tipp?
    Zuletzt geändert von hr3; 24.05.2017, 22:24.

    #2
    Ich habe ungefähr das gleiche Setup.
    In deiner Log fehlt das finale publish, als Vergleich eines meiner Logs:
    1495686310: New connection from 192.168.2.182 on port 1883.
    1495686310: New client connected from 192.168.2.182 as ESPClient2 (c1, k15).
    1495686310: Sending CONNACK to ESPClient2 (0, 0)
    1495686310: Received SUBSCRIBE from ESPClient2
    1495686310: /esp8266two/# (QoS 0)
    1495686310: ESPClient2 0 /esp8266two/#
    1495686310: Sending SUBACK to ESPClient2
    1495686310: Sending PUBLISH to ESPClient2 (d0, q0, r1, m0, '/esp8266two/gpio/12', ... (1 bytes))
    Brauchst du unbedingt den Event Bus? Ich würde den sonst mal testhalber auskommentieren, für ESP Easy ist er nicht notwendig.
    Hast du ev. das MQTT Action Binding installiert? Es gibt einige User im englischen Forum die dadurch Probleme bekamen.

    Ansonsten kann ich an deiner Config nichts falsches erkennen (außer vielleicht das ganze User/Password Gedöns, welches bei einer TCP connection gar nicht benötigt wird).

    Kommentar


      #3
      Ach ja, eines fällt mir gerade noch ein: MQTT (und ggf. noch andere Bindings) hat die unschöne Angewohnheit, bei Änderungen in der mqtt.cfg diese zu cachen und somit nicht korrekt anzuwenden.
      Als letzte Möglichkeit würde ich dazu mal die /userdata/config/org/openhab/mqtt.config löschen (vorher ein Backup machen), diese wird dann nach einem openHAB Neustart neu angelegt mit den dann hoffentlich korrekten Inhalten aus deiner aktuellen mqtt.cfg.

      Kommentar


        #4
        Danke, dein Beitrag hat bei mir die Erkenntnis geweckt, dass es nicht an den MQTT-Definitionen liegt. War ein Problem der generellen Item-Definition.
        Manchmal fixiert man sich auf die falsche Perspektive und braucht den Austausch.
        Zuletzt geändert von hr3; 25.05.2017, 14:44.

        Kommentar

        Lädt...
        X