NEWS
[gelöst] Blockly Problem mit MQTT-Adapter
-
Derzeit ist er auf "Publish nur bei Änderung" eingestellt.
Den Haken nimm mal raus ! Dann sollte auch bei kurzem Tastendruck ("hit") getriggert werden.
Das mit dem Trigger auf Taster betätigen funktioniert jetzt.
Habe jetzt einmal bei relay/0/10/5 bzw. relais/0/10/5_state sowohl "0/1", "wahr/falsch" und "true/false" ausprobiert.
Leider bleibt das Licht immer noch aus.
Der Taster kommt jedesmal an im Script steht dan auch "1" oder "0" aber im MQTT-Log kommt nur der Taster an.
Kann das noch ein Fehler in der MQTT-Adaptereinstellungen sein?
4819_0_10_a4_ein-aus.jpg
4819_script-0_10_a4.jpg -
Habe jetzt einmal bei relay/0/10/5 bzw. relais/0/10/5_state sowohl "0/1", "wahr/falsch" und "true/false" ausprobiert. `
Dann bleibt noch relais/0/10/5_state: ON/OFF.EDIT: Und immer mit bestätigt: false abschicken, sonst wird nicht gesendet.
-
Wo muss ich das noch bestätigen?
-
Wenn der Wert im Reiter "Objekte" geändert wird, wird bestätigt automatisch auf false gesetzt.
In Blockly muss man den Baustein "steuere" nehmen, damit das der Fall ist, was Du gemacht hast.
Das Licht schaltet nicht ein ? Dann probiere in Blockly ausserhalb des Triggers folgende 3 Varianten aus (andere sind sinnlos):
steuere relay/0/10/5 mit wahr (aus Logik-Block)
steuere relay/0/10/5 mit 1 (Zahl aus Mathe-Block)
steuere relay/0/10/5_state mit "ON" (Text)
Eine Variante sollte beim Skriptstart zum Einschalten führen.
Die Frage nach dem Datenpunkttyp (common.type) von relay/0/10/5 hast Du noch nicht beantwortet.
-
Kann das noch ein Fehler in der MQTT-Adaptereinstellungen sein? `
Hast Du die MQTT-Instanz als Server konfiguriert ? -
Der Type ist imer "state".
4819_type.jpg -
Der Type ist imer "state". `
Das ist der Objekttyp (state = Datenpunkt). Klicke rechts den Bleistift an, dann siehst Du den Datenpunkttyp (Zahl / Logikwert / Zeichenkette). -
Aktuell ist bei "relay/0/10/5 und relay/0/10/5_state" Zeichenkette eingestellt.
4819_type_1.jpg -
Schaltet das Licht ein bei ?
steuere relay/0/10/5 mit "1" (Text)
Ich lese: mqtt client variable
Also ist der MQTT-Adapter als Client konfiguriert und die Gegenstelle ist ein Server (MQTT broker) ?
-
Schaltet das Licht ein bei ?
steuere relay/0/10/5 mit "1" (Text)
Ich lese: mqtt client variable
Also ist der MQTT-Adapter als Client konfiguriert und die Gegenstelle ist ein Server (MQTT broker) ? `
Auch bei steuere relay/0/10/5 mit "1" (Text) passiert nichts.
Der MQTT-Adapter ist als Client konfiguriert, hier wird er als verbunden wahr angezeigt.
-
Was ist der MQTT-Broker (Server) ? Läuft darauf Mosqitto als Broker-Software ?
Ist der Server in der Adapter-Konfiguration unter URL eingetragen ?
-
Der MQTT-Broker (Server) ist ein Raspberry auf dem die ioBroker Software und auch Mosqitto als Broker-Software läuft.
In der Server URL ist die IP des Raspberry eingetragen.
Im Log-File sieht man auch das er sich verbindet.
-
Aus der Doku für Client-Konfiguration:
@Doku:Mask to publish own states - Mask for states, that must be published to broker. '' - to publish all states. `
Das ist ein Leerstring (kein *).Da ich kein MQTT verwende, bin ich an dieser Stelle mit meinem Latein am Ende
-
Kanne es vielleicht sein das ich im javascript-Adapter noch eine Einstellung falsch habe?
Das vielleicht hier nichts ausgegeben wird.
Das sind meine aktuellen Einstellungen.
4819_einstellungen_javascript-adapter.jpg -
Ich meine set object muss erlaubt sein.
Enrico
-
Kanne es vielleicht sein das ich im javascript-Adapter noch eine Einstellung falsch habe? `
Nein. Für setState() muss man nichts weiter erlauben. -
Ich meine set object muss erlaubt sein.
Enrico `
Ich habe nun setObject eingeschalten. Nun kommen auch Daten im MQTT-Logfiele an.
Leider habe ich immer noch das Problem, das die Lampe nicht schalten.
Mane
4819_kein_licht.jpg