MQTTDevice Version 2 & Platine

Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#151

Beitrag von Innuendo »

Prima! Auch der Tipp von Frudel ist gut. Die Lösung hinterlege ich in der Anleitung auf gitpages.

Die vielen Steps Plugins habe ich in ein plugin zusammengefasst.
Lowine
Neuling
Neuling
Beiträge: 8
Registriert: Freitag 23. Oktober 2020, 14:20

Re: MQTTDevice Version 2 & Platine

#152

Beitrag von Lowine »

Ich wollte der Reihe nach vorgehen. Dabei hat war der erste Vorschlag schon erfolgreich.
Benutzeravatar
Frudel
Posting Freak
Posting Freak
Beiträge: 1251
Registriert: Donnerstag 28. April 2016, 22:12

Re: MQTTDevice Version 2 & Platine

#153

Beitrag von Frudel »

Lowine hat geschrieben: Freitag 19. Februar 2021, 13:45 Jetzt funktioniert es !
Ich habe ein Reinstall mit Upgrade von paho-mqtt gamacht.

hier der Ordner plugins
plugins.jpg

Super, danke an alle.
Jetzt geht es weiter, bis zur nächsten Hürde

Lowine
Wir erwarten diese mit Spannung!
Viele Menschen benutzen Informationen und Fakten wie ein Betrunkener einen Laternenpfahl :
Vor allem zur Stütze ihres Standpunktes und weniger zum Beleuchten eines Sachverhaltes.
klauslilie
Posting Junior
Posting Junior
Beiträge: 19
Registriert: Sonntag 21. Februar 2016, 17:03
Wohnort: Ascheberg

Re: MQTTDevice Version 2 & Platine

#154

Beitrag von klauslilie »

Hallo ich hatte die gleichen Probleme wie #142...
Nachdem ich die Schritte durchgeführt habe, stehe ich jetzt vor dieser Hürde..
2021-03-14 16_01_51-Window.png
2021-03-14 16_01_51-Window.png (8.83 KiB) 6528 mal betrachtet
Ich hoffe jemand hat eine Idee ...

Viel Grüße
KlausLilie
Benutzeravatar
Jannis0711
Posting Junior
Posting Junior
Beiträge: 26
Registriert: Donnerstag 23. Januar 2020, 15:58
Wohnort: Ludwigsburg

Re: MQTTDevice Version 2 & Platine

#155

Beitrag von Jannis0711 »

Hi Innu,

ich habe gerade gesehen, dass CBPI 4 läuft und gleich installiert.... (auch ohne pi)... funktionieren die MQTT-Plugins auch auf darauf?

Grüße
Jannis
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#156

Beitrag von Innuendo »

Es gibt eine erste MQTT Implementierung in CBPi4. Ich habe es mir aber noch nicht angesehen. CBPi4 ist soweit ich mitgelesen habe noch im Status "nur gucken nicht brauen". Sobald CBPi4 einsatzfähig ist, werde ich versuchen die Firmware anzupassen.
klauslilie
Posting Junior
Posting Junior
Beiträge: 19
Registriert: Sonntag 21. Februar 2016, 17:03
Wohnort: Ascheberg

Re: MQTTDevice Version 2 & Platine

#157

Beitrag von klauslilie »

Info zu meinen Problem mit dem fehlenden Modul eventlet https://hobbybrauer.de/forum/viewtopic. ... 51#p420351
Vielleicht hilft es ja jemandem mit dem gleichen Problem :Bigsmile

Das Modul eventlet war auf dem raspi installiert und auch mit pip list sichtbar.
eventlet 0.30.2

In der ./craftbeerpi3/requirements.txt musste ich den entsprechenden Eintrag bzgl. Version anpassen...
eventlet==0.30.2

Nach einem reboot war der Fehler immer noch vorhanden :Waa

Dann habe ich als letzten Versuch einfach eventlet neu installiert..
sudo pip install eventlet==0.30.2

Nach einem Reboot funktioniert es jetzt wunderbar! :thumbsup
Ich kann nun die MQTTActor und MQTTSensor in der CBPI3.0 auswählen

Da werde ich nun im weiteren Schritt mal versuchen den MQTTDevice auf der Platine zu verbinden...

Gruß
KlausLilie
brilli_willi
Posting Klettermax
Posting Klettermax
Beiträge: 109
Registriert: Montag 7. Dezember 2020, 08:31

Re: MQTTDevice Version 2 & Platine

#158

Beitrag von brilli_willi »

Ich habe heute mein MQTT in Betrieb genommen.
Strom via IDS2 funktioniert und nach Einrichtung des WLAN kam ich auch auf die Weboberfläche. Danach habe ich das Display aktiviert und meinen Temperaturfühler (Dallas DS18B20 vom Sensorshop24 in Einschraubhülse) angeschlossen.
Nachdem ich den Sensor hinzugefügt habe zeigt dieser mir eine Zimmertemperatur von 127,8 Grad an.
Hat irgendjemand eine Idee woran das liegen kann? Verkabelung hab ich mehrfach geprüft, der Widerstand unter dem Wemos ist auch vorhanden.
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#159

Beitrag von Innuendo »

Häng das Device bitte mal per USB an Deinen PC und schließe nur den DS18B20 an.
Hast Du ein Voltmeter? Mess bitte mal die Spannung an GND-VCC und GND-DATA an den Sensor Schraubklemmen.

Innu
brilli_willi
Posting Klettermax
Posting Klettermax
Beiträge: 109
Registriert: Montag 7. Dezember 2020, 08:31

Re: MQTTDevice Version 2 & Platine

#160

Beitrag von brilli_willi »

GND-VCC 5,09V
GND-DATA 3,3V
brilli_willi
Posting Klettermax
Posting Klettermax
Beiträge: 109
Registriert: Montag 7. Dezember 2020, 08:31

Re: MQTTDevice Version 2 & Platine

#161

Beitrag von brilli_willi »

Kurios ist auch das der Sensor 127,8 Grad bei Strom via IDS2 anzeigt und nur 85 Grad bei Strom über ein Netzteil via USB.
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: MQTTDevice Version 2 & Platine

#162

Beitrag von JackFrost »

brilli_willi hat geschrieben: Sonntag 28. März 2021, 09:31 Kurios ist auch das der Sensor 127,8 Grad bei Strom via IDS2 anzeigt und nur 85 Grad bei Strom über ein Netzteil via USB.
85 °C ist der Wert wenn noch keine Wandlung durchgeführt wurde.
Bei den 127,8 müsste man mal in der Lib schauen, es könnte aber ein CRC Fehler, damit wird die Temperatur ungültig.
Da der DS18B20 nur bis 125°C senden kann, müsst das der Wert der Lib für einen Fehler sein.

Der Pullup für den 1Wirebus ist sicher ein 4k7 und kein deutlich abweichender Wert ?

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
brilli_willi
Posting Klettermax
Posting Klettermax
Beiträge: 109
Registriert: Montag 7. Dezember 2020, 08:31

Re: MQTTDevice Version 2 & Platine

#163

Beitrag von brilli_willi »

Kann ich das mit dem Widerstand irgendwie messen?

Der Fühler ist auch vom Sensorshop24. Da hast du deinen doch auch her, oder? Kann es etwas mit der Kabellänge zu tun haben? Habe einen 3-Leiter mit 3m Kabel.
JackFrost
Posting Freak
Posting Freak
Beiträge: 2983
Registriert: Dienstag 15. Mai 2018, 18:10

Re: MQTTDevice Version 2 & Platine

#164

Beitrag von JackFrost »

brilli_willi hat geschrieben: Sonntag 28. März 2021, 12:25 Kann ich das mit dem Widerstand irgendwie messen?

Der Fühler ist auch vom Sensorshop24. Da hast du deinen doch auch her, oder? Kann es etwas mit der Kabellänge zu tun haben? Habe einen 3-Leiter mit 3m Kabel.
Du kannst den Widerstand mit dem Multimeter messen. Platine von der IDS oder Netzteil trennen, den DS18B20 abstecken und den Wemos abstecken.
Dann direkt am Widerstand messen.

Ich hatte hier im Haus mal 3 Messtellen wo ich in Summe 8m Kabel hatte. Das alles mit 3,3V. Die 3 Meter sollten also nicht stören. Wenn du jemand mit einem Logic Analyser kennst, dann mal messen was auf dem 1-Wire bus ist.

Zur Not kannst du mir die Platine, Netzteil und den Sensor schicken, dann schau ich mir das an.

Gruß JackFrost
Meine Hardware:
eManometer
IDS2 ohne CBPi
Magnetrührer
Ss-Brewtech 10 Gal Topf
IDS2 Induktionsplatte
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#165

Beitrag von Innuendo »

brilli_willi hat geschrieben: Sonntag 28. März 2021, 09:18 GND-VCC 5,09V
GND-DATA 3,3V
das ist ok. Der Widerstand oder Kabellänge.
127 Grad ist connected aber keine Adresse. Die Adresse wird dir aber anhezeigt?
brilli_willi
Posting Klettermax
Posting Klettermax
Beiträge: 109
Registriert: Montag 7. Dezember 2020, 08:31

Re: MQTTDevice Version 2 & Platine

#166

Beitrag von brilli_willi »

Ja, Adresse kann ich beim Hinzufügen eines Sensors auswählen, Name und Topic vergeben und speichern.
Benutzeravatar
skybandit
Posting Klettermax
Posting Klettermax
Beiträge: 216
Registriert: Mittwoch 22. Januar 2020, 16:07
Wohnort: Kreis Soest

Re: MQTTDevice Version 2 & Platine

#167

Beitrag von skybandit »

Liebe Leute, ich bräuchte mal Hilfe bei der Konfiguration der IDS2 im Device und im CBPi3.
Geplant ist ein Setup mit nur einem Kessel auf der IDS2.

Zunächst habe ich in der Device-Gui die IDS aktiviert, die Topic gesetzt und die Pinbelegung angepasst und gespeichert.
Um die Pinbelegung noch mal zu überprüfen, habe ich die Einstellungen noch mal geöffnet und festgestellt, dass das Textfeld für die Topic wieder leer ist. Scheinbar geht der gespeicherte Topic-Eintrag verloren? Oder funktioniert die Konfiguration das nur mit angeschlossener IDS2?
2021-04-07 14_31_04-MQTTDevice2.png
Wie geht es dann im CBPi weiter?
Den Sensor habe ich entsprechend der Doku angelegt. Nur beim Induktionskochfeld bin ich mir unsicher.
Zunächst müsste ich ja die IDS2 als Aktor mit der gleichen Topic wie im Device als Type= MQTTActor anlegen?
Damit würde ich dann den Kessel anlegen und da verstehe ich jetzt nicht so ganz wie es weiter geht.
2021-04-07 15_07_59-CraftBeerPi 3.0.png
Beim Kessel Setup ist dann der Actor und der Agitator der zuvor angelegte Actor?
Wie ist das mit der Logic? Wie ermittle ich die PID Werte? Topf mit 20l füllen und dann??
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#168

Beitrag von Innuendo »

Hallo,
hast Du ein Update auf Version 2.5 von einer Version 2.2x gemacht? Meine Vermutung ist, dass Du das Update auf dem alten SPIFFS Dateisystem gemacht hast. Es dürften dann aber gar keine Einstellungen bzw Veränderungen gespeichert werden. Wenn dem so ist: bitte komplett neu flashen. Das Dateisystem muss im Format LittleFS erstellt werden. Falls das nicht so ist, sende mir per PN bitte deine config.txt

Im CBPi3 wird der Aktor vom Typ MQTT erstellt - das stimmt. Dafür habe ich im github repository das Addon cbpi-mqttPub hinterlegt. Das Addon unterstützt auch die Visualisierung. Die Logic kannst Du je nach Kessel auf Hysteresis oder PID einstellen. Fir die PID Logic liegen im github cbpi-PIDArduinoPowerOutput und cbpi_PIDAutoTunePowerOutput. Mit der AutoTune Logic ermittelst Du P, I und D für Deinen Kessel mit einer typischen Füllmenge.
Innu
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#169

Beitrag von Innuendo »

Version 2.52 liegt auf github

- Fixed: MQTT Topic IDS2 wurde nicht angezeigt (Tippfehler)
- Fixed: Display Update Intervall wurde fehlerhaft angezeigt (Zahlendreher)
- Fixed: Sommerzeit wurde nicht geprüft (die letzte Optimierung hat die Überprüfung Sommerzeit wegoptimiert)

Danke für die Hinweise. Das Update kann ab Version 2.5x per WebUpdate eingespielt werden.
Innu
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#170

Beitrag von chrs1978 »

Ich habe folgenden Fehler nachdem ich das angepasste MQTT Plugin in den Plugins ordner gecloned habe :

Failed to load plugin cbpi-mqttPub
Missing parentheses in call to 'print'. Did you mean print("payload " + msg.payload)? (__init__.py, line 110)

Kann es sein, dass dieses Plugin nicht mit der Python3 Version von cbpi3 zusammenpasst ?
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#171

Beitrag von Innuendo »

Hast Du die Datei editiert und möglicherweise die Tab Ordnung verändert? Die print Anweisung steckt in einem try catch Block.

Code: Alles auswählen

            try:
                print "payload " + msg.payload
Zweite Möglichkeit: hast Du noch ein anderes MQTT Plugin aktiv? Bitte das Verzeichnis Plugins prüfen.
Innu
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#172

Beitrag von chrs1978 »

Habe kein weiteres Plugin im Ordner. Am Code vom plugin habe ich nichts gemacht. Frisch gecloned.

Edit:

Ich habe diese Version von CBPI3 installiert "https://github.com/jpgimenez/craftbeerpi3".

Leider kennt man sich mit den ganzen Forks und Python3 umsetzungen nicht mehr aus. In den md Files stehn dann wieder Links zum originalen cbpi3 welches auf Python 2.7 basiert.

Ich hoffe, ich habe das richtige cbpi3 installiert.
Hatte auch mal eines von Brewchef installiert und da war wieder einiges mit python 2.7 in den Pip Meldungen.

Edit2 : Ich habe vergessen zu sagen, dass cbpi3 bei mir in einen venv läuft. Vielleicht fehlt da noch was.
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#173

Beitrag von Innuendo »

Dem Script sollte es mit der print Anweisung egal sein, ob es auf Python 2.7 oder 3.x läuft. Exceptions werden bei Versionskonflikten beim import module geworfen. Es gibt viele User mit dem genannten Fork. Einige haben hier berichtet, dass die MQTT Module nochmals installiert werden mussten. Insbesondere das paho.mqtt war bei einigen zickig - siehe weiter oben. Dein venv kenne ich aber gar nicht. Wenn Du ganz sicher kein anderes MQTT Plugin im Verzeichnis hast (auch das original mqtt plugin nicht!), dann habe ich keinen guten Tipp. Gffs. mal die ppy Datei löschen und reboot oder die print Zeile auskommentieren.
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#174

Beitrag von chrs1978 »

Ich habe es jeztz zum Laufen gebracht, indem ich die zwei print Zeilen verändert habe :

Zeile 110 print("payload " + msg.payload)
Zeile 121 print (e)

Mein Plugins Ordner war komplett leer. Ich hatte nur das MQTT Plugin von hier im Ordner. Aber mit dem ändern der zwei Zeilen, läuft es. Der ESP schaltet das Relais.
Benutzeravatar
skybandit
Posting Klettermax
Posting Klettermax
Beiträge: 216
Registriert: Mittwoch 22. Januar 2020, 16:07
Wohnort: Kreis Soest

Re: MQTTDevice Version 2 & Platine

#175

Beitrag von skybandit »

chrs1978 hat geschrieben: Montag 12. April 2021, 15:35 Ich habe es jeztz zum Laufen gebracht, indem ich die zwei print Zeilen verändert habe :

Zeile 110 print("payload " + msg.payload)
Zeile 121 print (e)

Mein Plugins Ordner war komplett leer. Ich hatte nur das MQTT Plugin von hier im Ordner. Aber mit dem ändern der zwei Zeilen, läuft es. Der ESP schaltet das Relais.
So hab ich das auch mit dem CBPi3 BrewChef Fork auf einem Raspian Strech von 08.04.2019 machen müssen, damit es funktioniert.
Das Paho Problem hatt ich nur mit neueren linux versionen.
Bei mir wurde während der Installation von flask_socketio ein Fehler bei der dafür notwendigen bidict installation bidict>=0.21.0 geschmissen. Das deutet auf ein Phyton Versionsproblem hin, was ich aber nicht lösen konnte. Das Device läuft aber trotzdem auf dem cbpi3.. zumindest habe ich damit am Samstag gebraut, ohne das es ersthafte Software-Probleme gab...

Von meinem allerersten Katastrophensud direkt mit IDS2 und CBPi3 werde ich mal in Ruhe im anderen Fred berichten..
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#176

Beitrag von chrs1978 »

Mit flask_socketio hatte ich auch Probleme. Ich weiß aber nicht mehr, was ich dann erst nachinstalliert habe. Ich glaube, es war python3-dev. Aber bin mir nicht mehr sicher. Python3-dev hat aber definitiv irgendwo gefehlt.
Das MQTT-Plugin konnte ich easy abändern, weil Python3 eine Lösung im CraftbeerPi gezeigt hat :-)

Wenn ich damit das erste Mal braue, werde ich eine Überbrückung der Automatik vorbereiten, damit ich den Sud manuell fertig bekomme, falls was buggt.
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#177

Beitrag von chrs1978 »

Mittlerweile habe ich Onewire auch auf dem PI in Gang gesetzt. So eine Dämliche Anleitung, die das mit 5V macht, hat mir den GPIO4 gekillt. Aber GPIO 10 geht jetzt.
Aber zurück zum MQTT_Device. Durch die Code Anpassungen funktioniert es jetzt soweit, dass ich das Relais schalten kann. Aber die Temperatur kommt nicht im CBPI3 an. Topics passen und Dictionary auch "Sensor.Value". Mosquitto_Sub zeigt mir, dass die Sensordaten per MQTT verfügbar sind.
Nur will cbpi die nicht anzeigen.
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#178

Beitrag von Innuendo »

Bitte mal mit MQTTExplorer oder ähnlichem Tool alle Topics subscriben (#). Wenn hier alles ankommt, ist noch ein Fehler in Deinem System vorhanden.
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#179

Beitrag von chrs1978 »

Unbenannt.png
Unbenannt2.png
Per MQTT kommen die Sensordaten an. Das Relais funktioniert.

Irgendwo wird noch eine exeption geworfen. Ich vermute, wenn CBPI die Temperatur vom Kocher senden will.
Aber mir geht es erstmal um das Topic "Wasser"

Nicht über die Namen und Topics wundern. Das ganze liegt noch lose hier auf dem Tisch und wird nur getestet :-)
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#180

Beitrag von Innuendo »

Wenn in der Verarbeitung der JSON Pakete aus dem MQTT Protokoll in CBPi3 Exceptions geworfen werden, liegt die Vermutung nahe, dass in Deinem System weiterhin Abhängigkeiten fehlen bzw. erforderliche Module sind nicht vorhanden. Damit würde ich nicht arbeiten! Bei Deinem System weiß ich leider keine Hilfe.
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#181

Beitrag von chrs1978 »

Ja, irgendwas ist da faul. Ich habe zudem bemerkt, dass man PidBoil auch nicht installieren kann. Es verweist auf ein totes git.

Ich werde dieses Setup löschen und ein anderes Git Repo verwenden und dann nochmal testen.
Die ESPs werde ich zwar eh nicht verwenden, das habe ich eigentich schon wieder über den Haufen geworfen. Aber PidBoil ist schon ziemlich wichtig. Werde dann mal das Brewchef git probieren.
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#182

Beitrag von Innuendo »

Bzgl. der print Anweisung schu bitte mal hier: https://hobbybrauer.de/forum/viewtopic. ... 56#p424556
klauslilie
Posting Junior
Posting Junior
Beiträge: 19
Registriert: Sonntag 21. Februar 2016, 17:03
Wohnort: Ascheberg

Re: MQTTDevice Version 2 & Platine

#183

Beitrag von klauslilie »

Hallo, ich habe mal ne ganz blöde Frage...

Mein MQTTDevice funzt hervorragend :thumbsup
Aber ich habe noch irgendwie die Winterzeit im Display :Waa
01.jpg
01.jpg (32.77 KiB) 4773 mal betrachtet
Was mache ich falsch bzw. wie kann ich die Zeit ändern?
Auf dem Raspi und in der CBPI 3.0 stimmt die Zeit :Grübel
Benutzeravatar
skybandit
Posting Klettermax
Posting Klettermax
Beiträge: 216
Registriert: Mittwoch 22. Januar 2020, 16:07
Wohnort: Kreis Soest

Re: MQTTDevice Version 2 & Platine

#184

Beitrag von skybandit »

Du solltest sicherstellen das Du die neueste Firmware installiert hast, da war ein Fix genau dafür integriert.
Innuendo hat geschrieben: Donnerstag 8. April 2021, 12:04 Version 2.52 liegt auf github

- Fixed: MQTT Topic IDS2 wurde nicht angezeigt (Tippfehler)
- Fixed: Display Update Intervall wurde fehlerhaft angezeigt (Zahlendreher)
- Fixed: Sommerzeit wurde nicht geprüft (die letzte Optimierung hat die Überprüfung Sommerzeit wegoptimiert)

Danke für die Hinweise. Das Update kann ab Version 2.5x per WebUpdate eingespielt werden.
Innu
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#185

Beitrag von Innuendo »

Beim Update bitte beachten, dass 2.2x oder älter NICHT per Webupdate aktualisiert werden können.

Habe heute eine neue SD für den RasberryPi geliefert bekommen. Ein ganz frisches OS ist aufgespielt. Werde Pyth3 mit CBPi3 und CBPi4 testen.
Benutzeravatar
skybandit
Posting Klettermax
Posting Klettermax
Beiträge: 216
Registriert: Mittwoch 22. Januar 2020, 16:07
Wohnort: Kreis Soest

Re: MQTTDevice Version 2 & Platine

#186

Beitrag von skybandit »

Innuendo hat geschrieben: Donnerstag 15. April 2021, 17:56 Habe heute eine neue SD für den RasberryPi geliefert bekommen. Ein ganz frisches OS ist aufgespielt. Werde Pyth3 mit CBPi3 und CBPi4 testen.
Das ist spannend, kommt als nächsten dann vielleicht ein MQTT Device Plugin für das CBPi4 von Dir? :Smile
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: MQTTDevice Version 2 & Platine

#187

Beitrag von mrhyde »

skybandit hat geschrieben: Donnerstag 15. April 2021, 18:14
Das ist spannend, kommt als nächsten dann vielleicht ein MQTT Device Plugin für das CBPi4 von Dir? :Smile
Ich kenne mich mit MQTT nicht so aus. Aber hat Manuel nicht bereits einen 'native' MQTT support für CBPIv4 integriert?
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
skybandit
Posting Klettermax
Posting Klettermax
Beiträge: 216
Registriert: Mittwoch 22. Januar 2020, 16:07
Wohnort: Kreis Soest

Re: MQTTDevice Version 2 & Platine

#188

Beitrag von skybandit »

Bei meinem letzten Versuch war es leider noch nicht funktional.
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#189

Beitrag von Innuendo »

mrhyde hat geschrieben: Donnerstag 15. April 2021, 18:49 Ich kenne mich mit MQTT nicht so aus. Aber hat Manuel nicht bereits einen 'native' MQTT support für CBPIv4 integriert?
Ja, auf facebook habe ich vor einiger Zeit ein Posting von Manuel zum Thema MQTT gesehen. Den aktuellen Status kenne ich nicht. Aber damit sollte das MQTTDevice2 bereits funktionieren. Für die Anbindung an Grafana fehlen Informationen, wie bspw. Ziel Temperatur oder aktueller Power Level. Das wird vermutlich nicht soo viel Aufwand sein.
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: MQTTDevice Version 2 & Platine

#190

Beitrag von mrhyde »

Innuendo hat geschrieben: Donnerstag 15. April 2021, 19:18
Ja, auf facebook habe ich vor einiger Zeit ein Posting von Manuel zum Thema MQTT gesehen. Den aktuellen Status kenne ich nicht. Aber damit sollte das MQTTDevice2 bereits funktionieren. Für die Anbindung an Grafana fehlen Informationen, wie bspw. Ziel Temperatur oder aktueller Power Level. Das wird vermutlich nicht soo viel Aufwand sein.
ok,

power hat er aktuell noch nicht integriert. Aber die Zieltemperatur zu integrieren ist kein Prolbem. Das haben ich bereits in einigen meiner Plugins mit integriert. Wenn das Device aber das Power Level selber regelt und nur eine Info benötigt, dann sollte das auch funktionieren.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#191

Beitrag von Innuendo »

Ne, es ist wie beim TCPServer nur eine Info für eine Visualisierung.
Dein CBPi3 fork funktioniert auf Anhieb auf einem aktuellen Buster (pyth3). Ist Dein Fork für BM eingeschränkt?
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: MQTTDevice Version 2 & Platine

#192

Beitrag von mrhyde »

Innuendo hat geschrieben: Donnerstag 15. April 2021, 20:06 Ne, es ist wie beim TCPServer nur eine Info für eine Visualisierung.
Dein CBPi3 fork funktioniert auf Anhieb auf einem aktuellen Buster (pyth3). Ist Dein Fork für BM eingeschränkt?
Nur die Rezepterstellung ist etwas auf den Braumeister mit meinen Step Plugin fokussiert. (beerxml und kbh).
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#193

Beitrag von chrs1978 »

Ich habe jetzt auch das cbpi3 von MrHyde getestet. Auch dieses läuft problemlos in einem Venv. Aber auch hier bekomme ich keine Sensordaten über MQTT. (Habe es einfach Interessehalber mal dort auch probiert)

Im Log taucht dieser Fehler auf "can only concatenate str (not "bytes") to str" Dieser ist direkt auf das MQTT Plugin zurückzuführen und nur auf die Sensor Class im Code. Ich habe die einfach mal auskommentiert, dann war der Fehler weg.

Der Zweite Fehler "ERROR - Exception mqtt_pub: 'topic'" Hängt mit den letzten Zeilen im MQTT Plugin zusammen und ist weg, wenn ich diesen Teil auskommentiere.

Habe das nur mal gemacht um zu sehen, wo die Probleme entstehen. Leider sind meine Python Kenntnisse zu gering um das rauszufinden. Vorallem wenn ein str zu bytes Fehler auftaucht :-D

Die Print Errors kommen daher, weil Python3 das nicht mehr so haben will, wie es in Python2 funktioniert. Python3 will das in Klammer serviert bekommen.
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: MQTTDevice Version 2 & Platine

#194

Beitrag von mrhyde »

chrs1978 hat geschrieben: Donnerstag 15. April 2021, 20:53
Im Log taucht dieser Fehler auf "can only concatenate str (not "bytes") to str" Dieser ist direkt auf das MQTT Plugin zurückzuführen und nur auf die Sensor Class im Code. Ich habe die einfach mal auskommentiert, dann war der Fehler weg.
Wird beim Fehler auch eine Zeile angegeben oder ein teil des codes?

Man muss zum teil .encode() bzw. .decode() am Ende einiger Variablen anhängen. Irgendwo versucht der Code strings zusammenzufügen, erhält aber mit python3 jetzt bytes.

Das waren eigentlich die wesentlichen Änderungen, die in den Plugins vorgenommen werdne musste, damit sie unter python3 laufen.

Gruß,
Alex
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#195

Beitrag von Innuendo »

Mit Pyth3 gibt es weiterhin Problemchen mit dem Modul paho-mqtt
Bitte probiere mal folgendes:

Code: Alles auswählen

cd /usr/lib/python3/dist-packages
sudo ln -s /home/pi/.local/lib/python2.7/site-packages/paho
Anschließend den cbpi service neu starten (oder reboot). Mit dem Link habe ich bei den Aktoren und Sensoren den Typ MQTT.
Edit: Bitte Pfad oder User entsprechend anpassen, wenn es kein RaspberryPi ist.

Edit: typo korrigiert - lib/python2.7/site-
Zuletzt geändert von Innuendo am Freitag 16. April 2021, 17:39, insgesamt 2-mal geändert.
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#196

Beitrag von chrs1978 »

Leider nicht. Mehr als diese Meldung taucht nicht im log auf. Ich konnte es nur auf die Sensor Class einschränken.

Da ich das im Venv laufen habe, wird das keine Auswirkungen haben.
Aber, im Venv ist in dem Pfad paho-mqtt vorhanden.

Code: Alles auswählen

pi@raspberrypi:~/craftbeerpi3/py3/lib/python3.7/site-packages/paho $ ls
__init__.py  mqtt  __pycache__
pi@raspberrypi:~/craftbeerpi3/py3/lib/python3.7/site-packages/paho $
mrhyde
Posting Senior
Posting Senior
Beiträge: 468
Registriert: Mittwoch 7. Juni 2017, 14:16

Re: MQTTDevice Version 2 & Platine

#197

Beitrag von mrhyde »

Auch die json.dumps können ein Problem verursachen.

Ich musste dahinter beim iSPindle TCP server immer noch ein .encode('utf-8') anhängen, als ich auf python3 bin

Beilspiel von iSpindle TCP Server Script:

Code: Alles auswählen

out = json.dumps(outdata).encode('utf-8')
Es könnte auch mit .encode() gehen.

Aber cbpi4 ist nicht mehr so weit in der Ferne. Also würde ich keinen großen Aufwand da reinstecken.
Braumeister 20 | Gärung: SS Brewtech 7 Gal BME | Speidel 30 Liter (Konus)
https://github.com/PiBrewing
https://openbrewing.gitbook.io/craftbeerpi4_support/
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#198

Beitrag von chrs1978 »

Ich Vermute, dass einige Python3 Umsetzungen nicht komplett auf Python3 laufen. Der Brewchef Branch z.B. zieht immernoch Python2.7 Dinge heran.
Deswegen bekomme ich das im Venv nicht zum laufen. Der Fork von MrHyde hingegen ist komplett auf Python3 und läuft im Venv.

Venv deswgen, um die Differenzen rauszubekommen und Python2.7 loszuwerden.
chrs1978
Posting Junior
Posting Junior
Beiträge: 88
Registriert: Samstag 20. März 2021, 13:15

Re: MQTTDevice Version 2 & Platine

#199

Beitrag von chrs1978 »

mrhyde hat geschrieben: Donnerstag 15. April 2021, 21:33 Auch die json.dumps können ein Problem verursachen.

Ich musste dahinter beim iSPindle TCP server immer noch ein .encode('utf-8') anhängen, als ich auf python3 bin

Beilspiel von iSpindle TCP Server Script:

Code: Alles auswählen

out = json.dumps(outdata).encode('utf-8')
Es könnte auch mit .encode() gehen.

Aber cbpi4 ist nicht mehr so weit in der Ferne. Also würde ich keinen großen Aufwand da reinstecken.
Klar, soviel braucht man da nimmer dran machen. Aber vllt hilft es bei der Migration zu V4, wenn man gleich mal sieht, wo es hakt. Nicht dass man sich in V4 wieder mit Python2 rumschlagen muss :Bigsmile
Benutzeravatar
Innuendo
Posting Freak
Posting Freak
Beiträge: 1938
Registriert: Freitag 2. März 2018, 09:43

Re: MQTTDevice Version 2 & Platine

#200

Beitrag von Innuendo »

Also der Fork von mrhyde, der Link für paho nach usr und die Korrektur für die print Anweisung funktionieren. Die Fehlermeldung no module namend paho ist weg. Ich habe noch vom alten Raspian Strech (python 2.7) die craftbeerpi.db und die Plugins auf das System neue Buster kopiert und alle Settings (Kettles, Actors, Sensor, Steps) sind da.
Antworten