Forum

Bitte oder Registrieren, um Beiträge und Themen zu erstellen.

Githubversion: Anregungen, Bugs

Zitat von madmartin am 4. Juni 2018, 10:08 Uhr

Das macht Sinn. Werd ich demnächst in Angriff nehmen. Ich selbst benutze bisher ja nur Geräte zum Einbau  in die Wanddosen, da ist das Anlernen ja kein Problem. So richtig blöd ist so eine Anlern-Runde bei Funk-Motoren, oder?

Den Serial einfach im Topic als Payload mitschicken. Würde es Sinn machen das dann jsonifiziert auszugeben in der Stat-Meldung?

stat/jarolift/shutter/0 100

stat/jarolift/shutter/0 {"100":"zähler"}

Oder unabhängig davon alle x Minuten so eine Art Lebenszeichen absenden wo solche Daten drin stecken.

Bei fhem könnte man das sicher als Reading irgendwie mitloggen. Bei anderen Systemen wie nodered, hassio geht das vermutlich noch einfacher.

Neu Anlern-Modus ist oben-unten (gleichzeitig) dann 8 Mal Stop. Rollo ruckt und dann hat man 5 Sekunden Zeit. Evtl. kann man das auch noch im Sketch mit anbieten.

 

Ja, bei FHEM ist das auch leicht realisierbar, kann man ja mit dem Parameter "subscribeReading" einfach einlesen, der Wert der dann im Reading steht ist immer der letzte, das heißt raucht der ESP ab, steht der letzte Zählwert immer noch im FHEM. Den könnte ich dann in meinen neuen ESP setzen und alles geht wieder ohne das ich etwas anderes anlangen muss.

Ich werde heute Abend auch nochmal den MQTT-Reconnect anschauen, da gibt es anscheinend noch Probleme wie ich dem Readme entnommen habe. Da hätte ich nämlich schon eine Idee was man noch verändern könnte.

Mal so ein Gedanke, wenn man den Zähler übermittelt dann ist das dann  ein Zähler für alle Rollos oder hat jeder Channel einen eigenen?

Wodrauf ich hinaus will, der Status wäre dann doch nicht state/jarolift/0..16 sondern eigentlich state/jarolift/counter . Sofern das ein gobaler Zähler ist und man hier wirklich Erbsen zählen möchte 🙂

Oder man trägt einfach das Reading bei allen Rollos ein, das wäre ja auch egal.

Hi,

der Zähler von dem Ihr sprecht ist in der Source die Variable "devcnt", den gibt es nur einmal pro Sender. Also auch nur einmal für den Jarolift-Dongle. Und dann versendet man dann natürlich auch als "state/<devicetopic>/devcnt" und nicht für jeden Channel extra. Das wäre unlogisch. Und Erbsen zählen ist in der IT ein Grundsatz, ich sage immer "Die IT ist eine Präzisionswissenschaft". Mit "ungefähr" kommt man im Internet so gut wie nie ans Ziel, und kommt mir nicht mit Suchmaschinen und künstlicher Intelligenz, das sind im inneren auch ganz präzise Teile...

Nebenbei gesagt wäre ein versenden des "devcnt" mit gesetzem "retain-bit" dann eine einfache Möglichkeit den letzten Zählerstand dem MQTT Server so nebenbei speichern zu lassen, denn "retain"ed Nachrichten muß der MQTT Broker abspeichern und später auf verlangen (wenn es jemand subscribed) wieder aussenden.... Das wäre das einfachste und funktioniert einfach immer, egal welches Home-X dahinter hängt.

Zitat von madmartin am 4. Juni 2018, 17:09 Uhr

Hi,

"state/<devicetopic>/devcnt" und nicht für jeden Channel extra. Das wäre unlogisch. Und Erbsen zählen ist in der IT ein Grundsatz, ich sage immer "Die IT ist eine Präzisionswissenschaft". Mit "ungefähr" kommt man im Internet so gut wie nie ans Ziel, und kommt mir nicht mit Suchmaschinen und künstlicher Intelligenz, das sind im inneren auch ganz präzise Teile...

 

Naja, es gibt auch noch den anderen Grundsatz works for me. Ich wollte nur keinesfalls pädantisch erscheinen 🙂

Ich finde es auch besser möglichst präzise zu arbeiten. Gerade in der Haustechnik soll sowas möglichst mehrere Jahre (Jahrzehnte??) laufen.

Über retain müssten mqtt-broker UND der dongle gleichzeitig abfackeln, aber ich glaub wenn das passiert hat man wohl ein anderes Problem.

 

Naja, es gibt auch noch den anderen Grundsatz works for me.

Die Arbeitsmethode "works for me" finde ich extrem übel, sowohl in der IT als auch sonst wo. Das ist meistens eine Mischung aus Egoismus und Desinteresse am Rest der Welt und ist genau das Gegenteil von dem was Entwickler Freier Software tun. In dem Zusammenhang muß ich mal sagen daß mir beim Gedanken daß Microsoft die Github-Plattform kaufen wird ganz schlecht wird.

"Works for me" ist ja z.B. auch wenn ein Einbrecher,  Autodieb oder Drogenproduzent sein "Einkommensmodell" beschreiben soll.

 

Ich wollte nur keinesfalls pädantisch erscheinen

Ich finde Pedanterie beim Programmieren oder Administrieren keinesfalls deplatziert, nur nervt sie manchmal, und kostet einen Haufen Zeit. Aber da muß man durch, sonst verbraucht man später selbst (oder andere... siehe meine Meinung zu "works for me"...) viel Zeit beim Fehler suchen oder Workarounds basteln...

So, die Anregung mit dem Devicecounter per MQTT stat zu verschicken ist implementiert. Dann ist als nächstes die Möglichkeit der Eingabe in der WebUI dran.

Guten Abend!

Das geht ja flott! Ich habe das gerade eingebaut, funktioniert einwandfrei. Hätte gar nicht gedacht das ich schon 50x geklickt habe.

Muss ich auch gleich nachher mal ausprobieren.

Habe gestern Abend mal etwas bezüglich der MQTT-Reconnect Probleme geschaut, ist zur Zeit so das sobald die Verbindung zum Broker weggeht der ESP ja nicht mehr erreichbar ist da er in der Reconnect-Schleife hängt, deswegen auch nur der 5malige Verbindungsversuch. Habe mal etwas rumprobiert und festgestellt das die Lösung eigentlich schon im Ordner /PubSubClient-2.6.09/examples/mqtt_reconnect_nonblocking vorhanden ist. Hier wird durchgehend versucht die Verbindung wieder aufzubauen ohne die Schleife zu blockieren.

Könnte ja Martin mal einchecken zum testen, kann mich aber auch gerne heute Abend mal ans testen machen.

etwas rumprobiert und festgestellt das die Lösung eigentlich schon im Ordner /PubSubClient-2.6.09/examples/mqtt_reconnect_nonblocking vorhanden ist.

Sehr gute Anregung, hatte ich noch nicht gesehen.

Ist drin, funktioniert hervorragend.

 

Rock stable würde ich sagen, sofern man das nach 2 Stunden behaupten kann.