Verschiedenes > MySensors

[gelöst]Probleme mit receive (alte Daten werden geladen)

<< < (2/4) > >>

Beta-User:
Umfangreicher Sketch, ist nicht so einfach...

Bin nicht sicher, ob es daran liegt, aber es scheint eine gewisse Überschneidung bei den Relay-ChildId's und den PIR-ChildId's zu geben, so dass es sein könnte, dass FHEM auf die Anfrage den aktuellen Status des PIR als Sollstatus des Relays zurückgibt.
Vermutlich kannst du das im Sketch einfacher nachvollziehen und ggf. dann mal testweise die ID's entzerren (ggf. einfach die Logik z.B. auf: PID-ID=Relay-ID+10 umstellen?)

frober:

--- Zitat von: Beta-User am 09 Juli 2021, 10:00:18 ---Umfangreicher Sketch, ist nicht so einfach...

Bin nicht sicher, ob es daran liegt, aber es scheint eine gewisse Überschneidung bei den Relay-ChildId's und den PIR-ChildId's zu geben, so dass es sein könnte, dass FHEM auf die Anfrage den aktuellen Status des PIR als Sollstatus des Relays zurückgibt.
Vermutlich kannst du das im Sketch einfacher nachvollziehen und ggf. dann mal testweise die ID's entzerren (ggf. einfach die Logik z.B. auf: PID-ID=Relay-ID+10 umstellen?)

--- Ende Zitat ---

Ich dachte die IDs hängen am "Namen" und wären in soweit eindeutig. Kann ich aber gerne testen.

Wobei  die PIR Wasserstandpegelschalter sind, wenn der Teich voll ist, sind alle auf Off.
Desweiteren wäre das auch kein Problem, wenn percentage auf 0 bleibt, dann wird das Relay direkt wieder ausgeschaltet.

Allgemein wg. receive, ich sende die empfangenen Daten in der Node ja nicht wieder zurück an Fhem. D.h. die Readings werden in Fhem beim Senden gesetzt. Soweit ich deinen Code im MysensorsDevice verstanden habe, auch bei receive!?

Beta-User:

--- Zitat von: frober am 09 Juli 2021, 10:39:53 ---Ich dachte die IDs hängen am "Namen" und wären in soweit eindeutig. Kann ich aber gerne testen.

--- Ende Zitat ---
Das MySensors-Protokoll arbeit intern für die Zuordnung nur mit den Nummern. _Könnte_ also schon sein, dass da was durcheinanderkommt, ist nur ohne passende Devices und deren jeweilige Darstellung in FHEM etwas schwierig, das von hier aus zu beurteilen.

Gilt auch für die Pegelsschalter und die Zeit...


--- Zitat ---Allgemein wg. receive, ich sende die empfangenen Daten in der Node ja nicht wieder zurück an Fhem. D.h. die Readings werden in Fhem beim Senden gesetzt. Soweit ich deinen Code im MysensorsDevice verstanden habe, auch bei receive!?

--- Ende Zitat ---
Nein, aber das GW sendet vermutlich die mit Ack-Request versendeten Daten autonom zurück an die Node. Kannst du mal Testen, ob der Effekt auch auftritt, wenn das GW gar nicht mit FHEM verbunden ist, wenn die Node startet? Dann kannst du auch (z.B. in der Arduino-IDE) sehen, was da in FHEM an Infos zum Status der PIR ankommt usw..

Generell habe ich ein ungutes Gefühl, dass in dem Sketch die Ack-Behandlung "hinten" ist, mAn. sollte das zuerst abgehandelt werden und der eigentliche Anweisungs-Code nur dann angesteuert, wenn es kein Ack ist, was eingeht.

frober:
Nach einigen Versuchen, bin ich auch nicht schlauer... :(

Betreffend dem anhängenden Sketch, es wird immer percentage auf 20 und Status auf on gesetzt, das ist der letzte Beregnerkreis der gestartet war.
Ein Neustart von Fhem oder vom Raspi bringt keine Änderung. Auch das GW hatte ich neugestartet.
Percentage auf einen anderen Wert gesetzt, Relais geöffnet, geschlossen, percentage auf 0, Neustart -> percentage wieder auf 20, hmm

Irgendwo hat sich das verbissen...

Du warst jetzt schneller mit schreiben, ich werde versuchen heute Abend zu testen.

frober:

--- Zitat von: Beta-User am 09 Juli 2021, 11:09:25 ---Nein, aber das GW sendet vermutlich die mit Ack-Request versendeten Daten autonom zurück an die Node. Kannst du mal Testen, ob der Effekt auch auftritt, wenn das GW gar nicht mit FHEM verbunden ist, wenn die Node startet? Dann kannst du auch (z.B. in der Arduino-IDE) sehen, was da in FHEM an Infos zum Status der PIR ankommt usw..

--- Ende Zitat ---

Ohne Fhem passiert nicht, also es wird nicht beregnet.
Das GW habe ich im laufenden Betrieb umgesteckt, kein Reset etc.
Im Anhang das Log, ich habe doppelte Daten, die nicht von Bedeutung sind, gelöscht und die Payloads kommentiert.
Ich sehe hier nichts, dass weiterhelfen könnte.
Was mir aber aufgefallen ist, beim Brunnenschacht ist aktuell alles ok und nur der Pumpenschacht bekommt die "fehlerhaften" Daten. Es scheint wirklich der zuletzt aktive Beregnerkreis zu sein.

Durch das Einstellen der Beregnerdüsen (Beregnung wurde abgebrochen und die Zeit wurde manuell genullt), Abbruch bei Regen etc. hatte ich hier auch andere Phänomene.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln