openHAB2 und MQTT 2.4
-
- Beiträge: 277
- Registriert: 15. Apr 2018 17:09
Re: openHAB2 und MQTT 2.4
Hallo Udo,
Klammern habe ich in der Items Datei gesetzt on/off ist nun weg, wobei ich nicht verstehe das es vorher nicht wahr aber gut bleibt die Frage nach dem Neustart.
danke und einen schönen Abend
Micha
Klammern habe ich in der Items Datei gesetzt on/off ist nun weg, wobei ich nicht verstehe das es vorher nicht wahr aber gut bleibt die Frage nach dem Neustart.
danke und einen schönen Abend
Micha
- udo1toni
- Beiträge: 13989
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: openHAB2 und MQTT 2.4
Wenn ein Item an einen Channel gelinkt ist, bekommt es sein Label über andere Mechanismen (openHAB Entwickler Voodoo), was zur Folge hat, dass automatisch ein dynamischer Label Teil eingebaut wird, eben [%s], was dann ON bzw. OFF ergibt. Wenn man das nicht will, muss man es weg konfigurieren.
Ich persönlich halte einen Großteil der "Verbesserungen" für nicht so gelungen, aber ich bin seit OH1.0 dabei und ein alter Text-Konfigurations-Hase
, also, was weiß ich schon?
Was den Neustart betrifft, kommt es sehr darauf an, welche exakte Version von openHAB Du gerade einsetzt. Zu einem bestimmten Zeitpunkt im OH2.5 Nightly Build wurde dieses Problem gefixt. Das konkrete Problem lautet:
Werden Änderungen an einer bestehenden MQTT2 Konfiguration über *.things Dateien vorgenommen, muss das MQTT Bundle neu gestartet werden.
Das geht z.B. von der Karaf Konsole aus:
Dies sollte ausreichen.
Alternativ kannst Du auch openHAB2 neu starten:
Das Problem momentan ist, dass der Nightly-Zweig immer noch broken ist, was mit dem Merge des Eclipse Smarthome Zweigs zusammen hängt.
Eine alte Nightly kann man nur installieren, wenn man sie im eigenen Cache hat, der aktuelle Build läuft, funktioniert aber anwesentlichen Stellen nicht (z.B. #1519: Paper UI->Configuration->System führt direkt zu einem 500 - internal Server Error)
Kai hat vermutlich "aufgegeben", jedenfalls plädiert er dafür, OH2 nicht weiter zu entwickeln, und stattdessen die Energie in OH3 zu stecken. Natürlich soll OH2.5 zumindest wieder sauber funktionieren, es wird also nicht im broken Zustand bleiben. Aber OH2 ist ein Stück weit broken-by-design, warum das so ist, kann ich nur vermuten.
Die Vorschläge für OH3 im englischen Forum (welches nun offiziell Threads für Entwickler enthält) gehen von "Oh Gott, nicht noch mehr kaputt optimieren" bis zu "Ja wie geil wäre dass denn" (aus meiner Sicht). Bleibt zu hoffen, dass es mehr in die letztgenannte Richtung geht...![Smile :)](./images/smilies/icon_e_smile.gif)
Ich persönlich halte einen Großteil der "Verbesserungen" für nicht so gelungen, aber ich bin seit OH1.0 dabei und ein alter Text-Konfigurations-Hase
![Wink ;)](./images/smilies/icon_e_wink.gif)
Was den Neustart betrifft, kommt es sehr darauf an, welche exakte Version von openHAB Du gerade einsetzt. Zu einem bestimmten Zeitpunkt im OH2.5 Nightly Build wurde dieses Problem gefixt. Das konkrete Problem lautet:
Werden Änderungen an einer bestehenden MQTT2 Konfiguration über *.things Dateien vorgenommen, muss das MQTT Bundle neu gestartet werden.
Das geht z.B. von der Karaf Konsole aus:
Code: Alles auswählen
openhabian@openhab2:~$ openhab-cli console
Logging in as openhab
__ _____ ____
____ ____ ___ ____ / / / / | / __ )
/ __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __ |
/ /_/ / /_/ / __/ / / / __ / ___ |/ /_/ /
\____/ .___/\___/_/ /_/_/ /_/_/ |_/_____/
/_/ 2.5.0-SNAPSHOT
Build #1502
Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.
openhab> bundle:restart org.eclipse.smarthome.binding.mqtt
Alternativ kannst Du auch openHAB2 neu starten:
Code: Alles auswählen
sudo systemctl restart openhab2.service
Eine alte Nightly kann man nur installieren, wenn man sie im eigenen Cache hat, der aktuelle Build läuft, funktioniert aber anwesentlichen Stellen nicht (z.B. #1519: Paper UI->Configuration->System führt direkt zu einem 500 - internal Server Error)
Kai hat vermutlich "aufgegeben", jedenfalls plädiert er dafür, OH2 nicht weiter zu entwickeln, und stattdessen die Energie in OH3 zu stecken. Natürlich soll OH2.5 zumindest wieder sauber funktionieren, es wird also nicht im broken Zustand bleiben. Aber OH2 ist ein Stück weit broken-by-design, warum das so ist, kann ich nur vermuten.
Die Vorschläge für OH3 im englischen Forum (welches nun offiziell Threads für Entwickler enthält) gehen von "Oh Gott, nicht noch mehr kaputt optimieren" bis zu "Ja wie geil wäre dass denn" (aus meiner Sicht). Bleibt zu hoffen, dass es mehr in die letztgenannte Richtung geht...
![Smile :)](./images/smilies/icon_e_smile.gif)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 277
- Registriert: 15. Apr 2018 17:09
Re: openHAB2 und MQTT 2.4
Hallo Udo,
danke für Deine Antwort ich habe gesehen meine Version ist das Openhab 2 2.4.0 Release Build.
Vielen Dank für die Infos, ich freue mich einen spannenden Weg des Openhab zu gehen.
mfg
Micha
danke für Deine Antwort ich habe gesehen meine Version ist das Openhab 2 2.4.0 Release Build.
Vielen Dank für die Infos, ich freue mich einen spannenden Weg des Openhab zu gehen.
mfg
Micha
-
- Beiträge: 277
- Registriert: 15. Apr 2018 17:09
Re: openHAB2 und MQTT 2.4
Hallo Udo,
ich habe noch eine Frage zur Darstellung in der PaperUI.
Ich habe gelernt, das wenn ich zum Beispiel "Aquarium" @ "MQTT" in die Topiczeile des Things schreibe, wird in der PaperUI unter dem Punkt Controls ein Reiter MQTT erzeugt unter dem wiederum eine Kachel erzeugt wird mit dem Titel Aquarium und hier finde ich die entsprechenden Links mit Schalt- oder Abfrageoption. Das funktioniert und ist logisch.
Da ich eigentlich nie die PaperUI nutze viel mir auf das ich unter Controls drei Reiter zum einen Mqtt alles meine Schalter drin, others da finde ich meine Wetterdaten und Astrodaten auch ok und letztlich finde ich Wohnzimmer wo nichts drin ist. Wie bekomme ich das raus, um mir nicht selbst einen Fehler eingebaut zu haben, oder ist es letztlich egal was da steht ??
Anbei ein Bild:
download/file.php?mode=view&id=608
Danke für Deine Unterstützung
Micha
ich habe noch eine Frage zur Darstellung in der PaperUI.
Ich habe gelernt, das wenn ich zum Beispiel "Aquarium" @ "MQTT" in die Topiczeile des Things schreibe, wird in der PaperUI unter dem Punkt Controls ein Reiter MQTT erzeugt unter dem wiederum eine Kachel erzeugt wird mit dem Titel Aquarium und hier finde ich die entsprechenden Links mit Schalt- oder Abfrageoption. Das funktioniert und ist logisch.
Da ich eigentlich nie die PaperUI nutze viel mir auf das ich unter Controls drei Reiter zum einen Mqtt alles meine Schalter drin, others da finde ich meine Wetterdaten und Astrodaten auch ok und letztlich finde ich Wohnzimmer wo nichts drin ist. Wie bekomme ich das raus, um mir nicht selbst einen Fehler eingebaut zu haben, oder ist es letztlich egal was da steht ??
Anbei ein Bild:
download/file.php?mode=view&id=608
Danke für Deine Unterstützung
Micha
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
- udo1toni
- Beiträge: 13989
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: openHAB2 und MQTT 2.4
Die Tabs werden immer über die Angabe der Location erzeugt. Wenn Du bei irgendeinem Thing oder irgendeiner Bridge ein @ "Wohnzimmer" dabei stehen hast, wird das Tab erzeugt. Das gilt auch, wenn keine Channel mit Items verlinkt sind und somit auch keine Kachel für ein Thing angezeigt wird.
Die Location kann auch in Paper UI gesetzt werden, falls Du ein Thing hier definiert haben solltest.
Unter dem Tab Other werden alle Things gelistet, die keine gesetzte Location haben. Du könntest also Dein Wetter leicht auf ein Tab Wetter bringen.
Da openHAB alle sichtbaren Dinge eines Tabs auch rendern muss, ist es durchaus sinnvoll, unterschiedliche Locations zu setzen, falls man jemals Paper UI Control aufruft, einfach, damit die Seite zügig dargestellt wird. Das ist aber natürlich kein Muss![Smile :)](./images/smilies/icon_e_smile.gif)
Die Location kann auch in Paper UI gesetzt werden, falls Du ein Thing hier definiert haben solltest.
Unter dem Tab Other werden alle Things gelistet, die keine gesetzte Location haben. Du könntest also Dein Wetter leicht auf ein Tab Wetter bringen.
Da openHAB alle sichtbaren Dinge eines Tabs auch rendern muss, ist es durchaus sinnvoll, unterschiedliche Locations zu setzen, falls man jemals Paper UI Control aufruft, einfach, damit die Seite zügig dargestellt wird. Das ist aber natürlich kein Muss
![Smile :)](./images/smilies/icon_e_smile.gif)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 38
- Registriert: 29. Dez 2018 10:17
Re: openHAB2 und MQTT 2.4
Hallo, ich habe auch ein Problem und komme seit Tagen nicht weiter.
Ich ich schaffe es nicht, die Verbrauchsdaten eines Sonoff Pow darzustellen.
Das Schalten des POW funktioniert einwandfrei. Dazu habe ich folgendes gemacht.
a)Das MQTT Binding 2.4 installiert. ---> Der Broker wird in PaperUI als online angezeigt.
b)Über Inbox->MQTTBinding->Generic MQTT Thing habe ich den POW angelegt.---> Der POW mit dem Namen 'Sonoff_P1' ist online.
c)ich habe über PaperUI einen Channel hinzugefügt. Dabei habe ich als MQTT State Tonic 'stat/Sonoff_P1/POWER' eingegeben und als
MQTT command topic 'cmnd/Sonoff_P1/POWER'
d)unter Linked Item habe ich in PaperUI ein neues Item definiert mit Select a Profile = default und create a new item.
e) damit ist das Item vorhanden.
---> ich kann es schalten und auch die Anzeige in der Sitemap funktioniert einwandfrei. Bis hier ist also alles ok.
Jetzt will ich aber die Verbrauchsdaten des POW auslesen und darstellen. An dieser Stelle bin ich erfolglos.
Wenn ich in mqtt.fx nachsehe, sehe ich auch, dass der POW alle paar Sekunden Sensordaten sendet. Das sieht in mqtt.fx folgendermaßen aus:
Meine erfolglosen Versuche sind:
1. Rein über PaperUI
a)Definition eines zusätzlichen Channels für das Thing 'Sonoff_P1' mit 'tele/Sonoff_P1/SENSOR' als MQTT State Topic. MQTT command Topic habe ich leer
gelassen.
b)unter Linked Item habe ich in PaperUI ein neues Item definiert (genauso wie oben beschrieben)
Das neue Item erscheint auch in PaperUI. In der Sitemap werden aber keine Werte angezeigt.Im Nachhinein ist es auch verständlich, dass dieser Weg nicht funktionieren kann, da der POW ja unter tele/Sonoff_P1/SENSOR mehrere Daten liefert. Ich hab aber keine Ahnung wie ich das rein in PaperUI schaffen kann.
2. Ich habe dann den Channel und das verlinkte Item gelöscht und versucht ein Item manuell anzulegen.
a) In einer Items Datei habe ich folgendes definiert:
Ich erhalte aber auch damit keine Anzeige der Verbrauchsdaten.
Ich denke, ich mache hier einen grundsätzlichen Fehler. Vielleicht kann mir hier jemand weiterhelfen.
LG Konrad
Ich ich schaffe es nicht, die Verbrauchsdaten eines Sonoff Pow darzustellen.
Das Schalten des POW funktioniert einwandfrei. Dazu habe ich folgendes gemacht.
a)Das MQTT Binding 2.4 installiert. ---> Der Broker wird in PaperUI als online angezeigt.
b)Über Inbox->MQTTBinding->Generic MQTT Thing habe ich den POW angelegt.---> Der POW mit dem Namen 'Sonoff_P1' ist online.
c)ich habe über PaperUI einen Channel hinzugefügt. Dabei habe ich als MQTT State Tonic 'stat/Sonoff_P1/POWER' eingegeben und als
MQTT command topic 'cmnd/Sonoff_P1/POWER'
d)unter Linked Item habe ich in PaperUI ein neues Item definiert mit Select a Profile = default und create a new item.
e) damit ist das Item vorhanden.
---> ich kann es schalten und auch die Anzeige in der Sitemap funktioniert einwandfrei. Bis hier ist also alles ok.
Jetzt will ich aber die Verbrauchsdaten des POW auslesen und darstellen. An dieser Stelle bin ich erfolglos.
Wenn ich in mqtt.fx nachsehe, sehe ich auch, dass der POW alle paar Sekunden Sensordaten sendet. Das sieht in mqtt.fx folgendermaßen aus:
Code: Alles auswählen
{"Time":"2019-03-03T11:38:59","ENERGY":{"TotalStartTime":"2019-02-26T07:59:15","Total":0.001,"Yesterday":0.000,"Today":0.001,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":218,"Current":0.000}}
1. Rein über PaperUI
a)Definition eines zusätzlichen Channels für das Thing 'Sonoff_P1' mit 'tele/Sonoff_P1/SENSOR' als MQTT State Topic. MQTT command Topic habe ich leer
gelassen.
b)unter Linked Item habe ich in PaperUI ein neues Item definiert (genauso wie oben beschrieben)
Das neue Item erscheint auch in PaperUI. In der Sitemap werden aber keine Werte angezeigt.Im Nachhinein ist es auch verständlich, dass dieser Weg nicht funktionieren kann, da der POW ja unter tele/Sonoff_P1/SENSOR mehrere Daten liefert. Ich hab aber keine Ahnung wie ich das rein in PaperUI schaffen kann.
2. Ich habe dann den Channel und das verlinkte Item gelöscht und versucht ein Item manuell anzulegen.
a) In einer Items Datei habe ich folgendes definiert:
Code: Alles auswählen
Number Sonoff_P1_VCC "Sonoff_P1_Volt [%.0f V]" <energy> {mqtt="[MQTT Broker Konrad:tele/Sonoff_P1/SENSOR:state:JSONPATH($.ENERGY.Voltage)]"}
Ich denke, ich mache hier einen grundsätzlichen Fehler. Vielleicht kann mir hier jemand weiterhelfen.
LG Konrad
-
- Beiträge: 277
- Registriert: 15. Apr 2018 17:09
Re: openHAB2 und MQTT 2.4
Hallo Konrad,
ich habe alle Things und Items über VSC angelegt. Da sehe die Abfragen wie folgt aus:
Thing:
Als Item habe ich den Schalter und die Temperaturanzeige so definiert:
Und last not least die Sitemap:
Du müßtest nur Deine Daten entsprechend eintragen.
So sollte es auch bei Dir funktionieren nur das Du nicht temp abfragst sondern energy voltage.
Wichtig ist, was ich Deinem Text nicht entnehmen kann, das Du das du als Addon das JSONPath transforming installiert hast. Findest Du in der Paper UI unter ADDons - Transformation.
Du müßtest nur Deine Daten entsprechend eintragen.
Ich hoffe das ich Dir helfen konnte
Madmike
ich habe alle Things und Items über VSC angelegt. Da sehe die Abfragen wie folgt aus:
Thing:
Code: Alles auswählen
Thing topic Aquarium "Aquarium" @ "MQTT" {
Channels:
Type switch : ch1 "Aquarium Beleuchtung" [ stateTopic="stat/Aquarium/POWER", commandTopic="cmnd/Aquarium/POWER" ]
Type number : temp "Aquarium Temperatur" [ stateTopic="tele/Aquarium/SENSOR", transformationPattern="JSONPATH:$.DS18B20.Temperature" ]
Code: Alles auswählen
Switch Aquarium "Aquarium-Beleuchtung []" <light> ["Switchable"] { channel="mqtt:topic:OH2mqtt:Aquarium:ch1" }
Number Aqua_Temp "Aquarium-Temperatur [%.1f °C]" <heating> { channel="mqtt:topic:OH2mqtt:Aquarium:temp" }
Code: Alles auswählen
Frame label="Aquarium" {
Switch item=Aquarium
Text item=Aqua_Temp valuecolor=[>27="red",>21="green",<=21="blue"]
}
So sollte es auch bei Dir funktionieren nur das Du nicht temp abfragst sondern energy voltage.
Wichtig ist, was ich Deinem Text nicht entnehmen kann, das Du das du als Addon das JSONPath transforming installiert hast. Findest Du in der Paper UI unter ADDons - Transformation.
Du müßtest nur Deine Daten entsprechend eintragen.
Ich hoffe das ich Dir helfen konnte
Madmike
-
- Beiträge: 277
- Registriert: 15. Apr 2018 17:09
Re: openHAB2 und MQTT 2.4
Hallo Konrad,
eins habe ich fast vergessen:
Nach Änderungen an der Thing-Dateien einmal mit:
neu starten, dann gehen auch alle Things wieder online und funktionieren.
Das war ein Fallstrick auf den ich am Anfang auch reingefallen bin.
mfg
Madmike
eins habe ich fast vergessen:
Nach Änderungen an der Thing-Dateien einmal mit:
Code: Alles auswählen
sudo systemctl restart openhab2.service
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
mfg
Madmike
-
- Beiträge: 38
- Registriert: 29. Dez 2018 10:17
Re: openHAB2 und MQTT 2.4
Dank dir schon mal Madmike, werd das gleich morgen früh probieren... vielleicht klappt es ja
-
- Beiträge: 38
- Registriert: 29. Dez 2018 10:17
Re: openHAB2 und MQTT 2.4
Ganz vielen Dank Madmike, ich habe es tatsächlich mit deiner Hilfe geschafft. Ich habe jetzt auch alle Things und Items über VSC eingetippt. Das war mir eine Lehre. Ich werde künftig PaperUI meiden, wo immer es möglich ist. Für mich ist die Konfiguration über PaperUI undurchsichtig und noch unausgereift. Bei der direkten Eingabe von Code sind die Verbindungen übersichtlicher.