NEWS
[fixed] Mysensors time request from Controller funktioniert nicht.
-
Hallo,
ich probiere es schon eine ganze weile, auch mit verschiedene Scripte. Ich erhalte aber keine Zeit zurück.
Zum Test hatte ich zuletzt das Original Script benutzt, aber ohne Erfolg.
Das Script ist hier zu finden:
<url url="https://github.com/mysensors/MySensorsArduinoExamples/tree/master/examples/TimeAwareSensor">
[https://github.com/mysensors/MySensorsArduinoExamples/tree/master/examples/TimeAwareSensor " target="_blank">](</s><LINK_TEXT text=)[<link_text text="
https://github.com/mysensors/MySensors … areSensor
">https://github.com/mysensors/MySensorsArduinoExamples/tree/master/examples/TimeAwareSensor</link_text>](</s><LINK_TEXT text=)</url>Schöne Grüße
ThomasD
-
Wo willst du die Zeit haben?
-
Hallo,
ich brauche die Zeit auf dem Arduino auf dem der Sketch läuft.
Ich sehe noch nicht den genauen Zusammenhang, aber wenn der Sketch mit requestTime läuft habe ich im IOBroker Logeinträge wie diese:
mysensors.0 Time from 192.168.0.243 : und mysensors.0 Battery level from 192.168.0.243 :1480525087
192.168.0.243 ist das Gateway.
Leider ist der Log nicht genauer, kann man den Log Level noch erhöhen?
Schöne Grüße
ThomasD
-
Hallo,
kann es sein das bei den Internen messages falsch gezählt wird?
I mache einen Time req sub-typ 1, finde im log aber battery level sub-typ 0.
Schöne Grüße
Thomas
-
Hallo,
in den Adapter source auf git habe ich gesehen das die I-TIME Funktion noch nicht eingebunden ist. Hat jemand einen Tipp wie die Vorgehensweise währe und welche Bereiche geändert werden müssten. Dann könnte ich vielleicht auch die anderen fehlenden Funktionen einbinden.
Schöne Grüße
ThomasD
Gesendet von meinem LIFETAB_P831X mit Tapatalk
-
4 Monate später stehe ich vor der gleichen Herausforderung: das LCD an meinem Arduino soll unter anderem die aktuelle Uhrzeit anzeigen - und diese vorher vom Controller=ioBroker abrufen.
Offenbar hat sich hier etwas getan:
Mein Arduino bittet mit einem requestTime() um die aktuelle Zeit…
Die Console des Gateways im Debug Modus zeigt Folgendes:
0;255;3;0;9;TSF:MSG:READ,20-20-0,s=255,c=3,t=1,pt=0,l=0,sg=0: 0;255;3;0;9;Eth: 20;255;3;1;I_TIME;1491770622 0;255;3;0;9;TSF:MSG:SEND,0-0-20-20,s=255,c=3,t=0,pt=0,l=10,sg=0,ft=0,st=OK:1491770622 0;255;3;0;9;TSF:MSG:READ,20-20-0,s=255,c=3,t=0,pt=0,l=10,sg=0:1491770622 0;255;3;0;9;TSF:MSG:ACK
Der Parser auf https://www.mysensors.org/build/parser half bei der Interpretation:
- 1. Anfrage von Node20 (der Arduino) mit t=1 (=I_TIME)
2\. Gateway erhält vom Controller (ioBroker) die Epoch Zeit 3\. Gateway sendet Info an Node 20\. ABER: plötzlich mit t=0 (=I_BATTERY_LEVEL)!!!!!!!!!!!!!!! 4\. Node20 bestätigt den Batterie Level (und weiß immer noch nicht die Uhrzeit)
Hä? Ich nutzte das normale Ethernet Gateway für W5100 von https://www.mysensors.org/build/ethernet_gateway. Sensordaten Übermittlung funktioniert, aber irgendwie scheint die Umsetzung bei der Beantwortung der Zeitanfrage falsch zu laufen.
… offenbar hatte auch schon ThomasD dieses Problem. Ich denke der Fehler muss im Gateway liegen, oder?
Kann mir jemand helfen? Danke.
-
Hallo,
ich habe das Problem erst einmal gelöst indem ich die Zeit einfach als String an das Node sende.
in der getmeta.js lib fehlt die I_Time, ich weiß nicht in wie weit das relevant ist.
'I_BATTERY_LEVEL': {index: 0, role: 'value', type: 'number', read: true, write: false, def: 100, min: 0, max: 100, unit: '%' }, //battery load 'I_VERSION': {index: 2, role: 'state', type: 'string', read: true, write: false, def: ''}, // gateway version
Schöne Grüße
ThomasDr
-
Die Zeit sollte eigentlich funktionieren:
-
Hm, das hatte ich auch so interpretiert:
0;255;3;0;9;TSF:MSG:READ,20-20-0,s=255,c=3,t=1,pt=0,l=0,sg=0:
0;255;3;0;9;Eth: 20;255;3;1;I_TIME;1491770622
ioBroker reagiert ja, aber das Gateway setzt die eingehende Info offenbar falsch um i=1 -> i=0. Oder entspricht die Antwort von ioBroker nicht der Definition die das Gateway erwartet?
-
Konnte ein Fehler mit I_TIME finden. Bitte testen
-
Scheint astrein zu laufen!
Ich wiederhole: requesttime läuft reibungslos!
Vielen Dank an Bluefox: lass Dich knuddeln!
Von meiner Seite aus erledigt…