braindead1 / ioBroker.robonect

ioBroker.robonect is an ioBroker adapter for your Robonect HX enabled lawn mower.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

iObroker Log "JSON not valid" after install Version 0.0.9

creecool opened this issue · comments

Hi,

nach dem Update auf Version 0.0.9 heute habe ich im iObroker LOG dauerhaft folgende Einträge

robonect.0 2020-03-21 21:37:16.307 info (27506) Polling done (Initial)
robonect.0 2020-03-21 21:37:16.250 error (27506) JSON not valid
robonect.0 2020-03-21 21:37:15.982 error (27506) JSON not valid
robonect.0 2020-03-21 21:37:15.958 error (27506) JSON not valid
robonect.0 2020-03-21 21:37:15.912 error (27506) JSON not valid
robonect.0 2020-03-21 21:37:15.886 error (27506) JSON not valid
robonect.0 2020-03-21 21:37:15.728 info (27506) Done
robonect.0 2020-03-21 21:37:15.676 info (27506) starting. Version 0.0.9 in /opt/iobroker/node_modules/iobroker.robonect, node: v10.19.0
robonect.0 2020-03-21 21:36:59.105 warn (27399) Got terminate signal. Checking desired PID: 27506 vs own PID 27399
robonect.0 2020-03-21 21:36:59.101 info (27399) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
robonect.0 2020-03-21 21:36:59.100 info (27399) terminating
robonect.0 2020-03-21 21:36:59.099 info (27399) cleaned everything up...
robonect.0 2020-03-21 21:36:59.097 warn (27399) Got terminate signal. Checking desired PID: 0 vs own PID 27399
robonect.0 2020-03-21 21:36:45.926 info (27399) Polling done (Initial)
robonect.0 2020-03-21 21:36:45.895 error (27399) JSON not valid
robonect.0 2020-03-21 21:36:45.677 error (27399) JSON not valid
robonect.0 2020-03-21 21:36:45.652 error (27399) JSON not valid
robonect.0 2020-03-21 21:36:45.601 error (27399) JSON not valid
robonect.0 2020-03-21 21:36:45.577 error (27399) JSON not valid
robonect.0 2020-03-21 21:36:45.403 info (27399) Done
robonect.0 2020-03-21 21:36:45.360 info (27399) starting. Version 0.0.9 in /opt/iobroker/node_modules/iobroker.robonect, node: v10.19.0

Ich Frage alles bis auf die Punkte "Erweiterungen, Portal und Push" ab.

Habe schon mal geschaut ob es einen Unterschied gibt, wenn ich nur eine Option wie Batterie oder Fehler abfrage, jedoch ohne Änderung.

Folgende Werte bekomme ich vom Roli bei der normalen Status Abfrage

{"name": "R70Li", "id": "53C8D6", "status": {"status": 16, "distance": 0, "stopped": true, "duration": 264889, "mode": 2, "battery": 96, "hours": 131}, "timer": {"status": 0}, "blades": {"quality": 17, "hours": 0, "days": 151}, "wlan": {"signal": -64}, "health": {"temperature": 26, "humidity": 0}, "clock": {"date": "2020-03-21", "time": "21:26:26", "unix": 1584825986}, "successful": true}

System Infos
ioBroker.admin 4.0.4
Raspi 4
robonect 0.0.9

grafik

Gruß & Danke

Der Adapter ist seit ein paar Tagen im ioBroker latest Repository. Hast Du ihn daher installiert oder direkt über GitHub?

Nach dem starten des Adapters spielt es keine Rolle welche Abfragen Du aktivierst, weil grundsätzlich alle Abfragen einmal laufen. Laut Fehlermeldung werfen 5 davon einen Fehler. Kannst Du bitte die folgenden API Calls einmal testen und das JSON posten? ROBONECTIP natürlich ersetzen. :-)

http://ROBONECTIP/json?cmd=battery
http://ROBONECTIP/json?cmd=error
http://ROBONECTIP/json?cmd=ext
http://ROBONECTIP/json?cmd=hour
http://ROBONECTIP/json?cmd=motor
http://ROBONECTIP/json?cmd=portal
http://ROBONECTIP/json?cmd=push
http://ROBONECTIP/json?cmd=status
http://ROBONECTIP/json?cmd=timer
http://ROBONECTIP/json?cmd=version
http://ROBONECTIP/json?cmd=weather
http://ROBONECTIP/json?cmd=wlan

Was mir aufgefallen ist: Deine WLAN und ZeroConf Versionen sind älter als meine. Ob das eine Auswirkung auf die API hat, weiß ich leider nicht.

Install via GitHub URL https://github.com/braindead1/ioBroker.robonect.git

http://ROBO-IP/json?cmd=battery (Update)
{"batteries": [{"id": 0, "charge": 96, "voltage": 17618, "current": -126, "temperature": 203, "capacity": {"full": 1200, "remaining": 1156}}], "successful": true}

http://ROBO-IP/json?cmd=error (Update)
{"errors": [{"error_code": 11, "error_message": "Batterie schwach", "date": "2020-03-15", "time": "12:23:27", "unix": 1584275007}, {"error_code": 11, "error_message": "Batterie schwach", "date": "2019-12-22", "time": "14:49:46", "unix": 1577026186}, {"error_code": 12, "error_message": "Batterie leer", "date": "2019-12-22", "time": "14:30:28", "unix": 1577025028}, {"error_code": 11, "error_message": "Batterie schwach", "date": "2019-12-12", "time": "21:08:34", "unix": 1576184914}, {"error_code": 15, "error_message": "R70Li ist angehoben", "date": "2019-11-24", "time": "22:12:55", "unix": 1574633575}, {"error_code": 11, "error_message": "Batterie schwach", "date": "2019-11-24", "time": "22:11:44", "unix": 1574633504}, {"error_code": 11, "error_message": "Batterie schwach", "date": "2019-11-03", "time": "18:04:50", "unix": 1572804290}], "successful": true}

http://ROBO-IP/json?cmd=ext
{"ext": {"gpio1": {"flashonerror": false, "inverted": false, "status": false}, "gpio2": {"flashonerror": false, "inverted": false, "status": false}, "out1": {"flashonerror": false, "inverted": false, "status": false}, "out2": {"flashonerror": false, "inverted": false, "status": false}}, "successful": true}

http://ROBO-IP/json?cmd=hour (Update)
{"general": {"run": 131, "mow": 125, "search": 6, "charge": 129, "charges": 137, "errors": 37, "since": "2016-11-23 10:51:07"}, "seek": [{"duration": 4}, {"duration": 2}, {"duration": 1}, {"duration": 2}, {"duration": 2}, {"duration": 2}, {"duration": 2}, {"duration": 2}, {"duration": 3}, {"duration": 3}, {"duration": 3}, {"duration": 4}, {"duration": 2}, {"duration": 3}, {"duration": 3}, {"duration": 1}, {"duration": 4}, {"duration": 5}, {"duration": 4}, {"duration": 2}], "mowing": [{"duration": 51}, {"duration": 46}, {"duration": 37}, {"duration": 70}, {"duration": 66}, {"duration": 98}, {"duration": 62}, {"duration": 136}, {"duration": 80}, {"duration": 71}, {"duration": 62}, {"duration": 102}, {"duration": 54}, {"duration": 52}, {"duration": 49}, {"duration": 74}, {"duration": 52}, {"duration": 76}, {"duration": 72}, {"duration": 70}], "successful": true}

http://ROBO-IP/json?cmd=motor (Update)
{"drive": {"left": {"power": 0, "speed": 0, "current": -12}, "right": {"power": 0, "speed": 0, "current": 0}}, "blade": {"speed": 0, "current": -26, "average": 2316}, "successful": true}

http://ROBO-IP/json?cmd=portal
{"enabled": false, "connected": false, "address": {"domain": "", "url": "", "host": {"default": "7f53c8d6", "friendly": ""}}, "successful": true}

http://ROBO-IP/json?cmd=push
{"push": {"server": {"url": ""}, "trigger": {"interval": 60, "trigger0": {"name": "Parked", "enter": true, "leave": false}, "trigger1": {"name": "Mowing", "enter": true, "leave": false}, "trigger2": {"name": "Way home", "enter": true, "leave": false}, "trigger3": {"name": "Charging", "enter": true, "leave": false}, "trigger4": {"name": "Searching", "enter": true, "leave": false}, "trigger5": {"name": "Fault", "enter": true, "leave": false}, "trigger6": {"name": "Lost loop", "enter": true, "leave": false}, "trigger7": {"name": "Off", "enter": true, "leave": false}, "trigger8": {"name": "Sleeping", "enter": true, "leave": false}, "trigger9": {"name": "Door opens", "enter": true, "leave": false}}}, "successful": true}

http://ROBO-IP/json?cmd=status
{"name": "R70Li", "id": "53C8D6", "status": {"status": 16, "distance": 0, "stopped": true, "duration": 268643, "mode": 2, "battery": 96, "hours": 131}, "timer": {"status": 0}, "blades": {"quality": 16, "hours": 0, "days": 152}, "wlan": {"signal": -65}, "health": {"temperature": 26, "humidity": 0}, "clock": {"date": "2020-03-21", "time": "22:29:00", "unix": 1584829740}, "successful": true}

http://ROBO-IP/json?cmd=timer
{"timer": [{"id": 1, "enabled": false, "start": "07:00", "end": "09:00", "weekdays": {"mo": true, "tu": false, "we": true, "th": false, "fr": true, "sa": false, "su": true}}, {"id": 2, "enabled": false, "start": "20:00", "end": "22:00", "weekdays": {"mo": true, "tu": false, "we": true, "th": false, "fr": true, "sa": false, "su": true}}, {"id": 3, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 4, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 5, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 6, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 7, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 8, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 9, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 10, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 11, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 12, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 13, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}, {"id": 14, "enabled": false, "start": "08:00", "end": "18:00", "weekdays": {"mo": false, "tu": false, "we": false, "th": false, "fr": false, "sa": false, "su": false}}], "successful": true}

http://ROBO-IP/json?cmd=version
{"mower": {"hardware": {"serial": 00000000, "production": "2016-11-23 10:51:00"}, "msw": {"title": "R70Li", "version": "6.12.00", "compiled": "2016-09-15 15:57:53"}, "sub": {"version": "6.01.00"}}, "serial": "12345678-12345678-12345678", "bootloader": {"version": "V0.4", "compiled": "2016-10-22 01:12:00", "comment": ""}, "wlan": {"at-version": "V1.4.0", "sdk-version": "V2.1.0"}, "application": {"version": "V1.1", "compiled": "2019-09-25 08:54:00", "comment": "V1.1b"}, "successful": true}

http://ROBO-IP/json?cmd=weather
{"service": {"enable": true, "location": {"zip": "47312", "country": "de"}, "config": {"maxrain": 40, "mintemp": 10, "maxtemp": 30, "minhumidity": 0, "maxhumidity": 90, "dontmowduringday": false, "dontmowduringnight": false}}, "weather": {"break": true, "rain": 0, "temperature": 3, "humidity": 51, "sunrise": 1584771875, "sunset": 1584815937, "day": false, "city": "CITY", "icon": "https://openweathermap.org/img/w/04n.png", "remaining": 7200, "condition": {"toorainy": false, "toocold": true, "toowarm": false, "toodry": false, "toowet": false, "day": false, "night": false}, "timestamp": {"date": "2020-03-21", "time": "22:26:11", "unix": 1584829571}}, "successful": true}

http://ROBO-IP/json?cmd=wlan
{"ap": {"enable": false, "mac": "xx-xx-xx-xx-x-xx"}, "station": {"enable": true, "mac": "xx-xx-xx-xx-xx-xx", "signal": -65, "ssid": "SSID-R", "password": "********", "dhcp": true, "ping": false, "ip": "ROBO-IP"}, "successful": true}

Habe den Roli gerade mal neugestartet wegen der Infos auf die er nicht zugreifen konnte ...jetzt kommt im Log...

grafik

Danke. In Deinem Log erscheint 5x die Meldung "JSON not valid" und die API Calls battery, error, hour, motor und version geben "successful: false" zurück. Genau deshalb werden die Fehler ausgegeben. Ich tippe darauf, dass das daran liegt, dass Deine ZeroConf ziemlich alt ist.

Im Robonect Forum habe ich einen Thread für die Firmware Version V1.0a gefunden in dem beschrieben wird, dass die ZeroConf aktualisiert werden muss:
https://forum.robonect.de/viewtopic.php?f=39&t=2596

Im Robonect Forum habe ich einen Thread für die Firmware Version V1.0a gefunden in dem beschrieben wird, dass die ZeroConf aktualisiert werden muss:

https://forum.robonect.de/viewtopic.php?f=39&t=2596

Hi,
Update auf Version ZeroConf 1.4 ist gerade erfolgt. Test läuft

Hi,
Rückmeldung zum „Problem“

Über Nacht gab es wieder einige Einträge mit „Json not valid“ die kamen aber daher, dass Roli in den Status 16 (Mäher abgeschaltet) gegangen ist und somit einige Daten nicht mehr abgerufen werden können.
Wäre es möglich im Programm ggf. eine Prüfung einzubauen, wenn der Status auf „16“ geht, das Loggen für „JSON Not valid“ zu unterbinden?

Seit dem Roli aber im Status Laden/Parkt/Mäht ist kommen Keine Fehler mehr im Log!

Ich habe gerade ein Commit erstellt, damit die Abfragen nicht mehr im Status "abgeschaltet" laufen. Kannst Du das bitte nochmal prüfen?

Also im Zustand „abgeschaltet“ ist im Log alles ruhig.
Hate jetzt nur das Phänomen, dass Roli ca alle 10 - 15 Minuten den Status von Schlafen auf Parkt gewechselt hat.
Kann das vom Abfragen den Stadien kommen?

Das Robonect Modul hält bestimmte Informationen im Speicher vor (API Call "status"). Diese Informationen können ohne aufwecken des Mähroboters abgefragt werden. Für alle anderen Abfragen muss der Roboter geweckt werden, was dieser mit einem Piepton bestätigt.

Wenn Du alle Abfragen auf "Status" stellst, dann werden diese Informationen zum einen weniger oft aktualisiert und zum anderen dürfte der Mähroboter dann nicht mehr zwischen schlafen und parken wechseln.

Issue closed due to inactivity.