Hallo Zusammen,
das Debugging ist
(noch?) etwas mühsam. Aktuell verwende ich diverse "prints" im Script
und kontrolliere die Ausgabe im Web GUI des Shellys. Leider läuft mein Script
stundenlang völlig unauffällig und korrekt, um dann den Shelly scheinbar zum Absturz
zu bringen.
Tritt der Fall ein,
wird das Script in der Übersicht als "Running" geführt, aber klickt
man auf das Script, ist der Editor leer und auch der Scriptname wird nicht
angezeigt. Es ist so, als gäbe es das Script nicht. Lediglich das "Stop"
deutet darauf hin, dass das Script noch zu laufen scheint. Klickt man wieder
auf die Scriptübersicht, taucht das Script wieder in der Übersicht als
"Running" auf. Auffällig ist auch, dass in dieser Situation die
Verbindung zum Shelly ständig neu aufgebaut werden muss. Das Problem lässt sich
dann nur durch einen Reboot beheben.
Nachdem ich mein
Script xmal kontrolliert habe, keinen Fehler finden konnte, bin ich der Sache
mit dem ShellyScanner (sehr nützliches Tool!) nachgegangen und habe folgenden
Hinweis im Log gefunden:
1676459656 - L2:
shelly_scripts_rpc.:332 Sending "script_2.js"
1676459656 - L-1:
E:M 19339
1676459656 - L-1:
Heap summary for capabilities 0x00001800:
1676459656 - L-1: At
0x3ffb6388 len 7288 free 4 allocated 6048 min_free 4
1676459656 - L-1:
largest_free_block 0 alloc_blocks 78 free_blocks 0 total_blocks 78
1676459656 - L-1: At
0x3ffb9a20 len 16648 free 4 allocated 15436 min_free 4
1676459656 - L-1:
largest_free_block 0 alloc_blocks 71 free_blocks 0 total_blocks 71
1676459656 - L-1: At
0x3ffcc678 len 80264 free 396 allocated 75764 min_free 4
1676459656 - L-1:
largest_free_block 112 alloc_blocks 795 free_blocks 6 total_blocks 801
1676459656 - L-1: At
0x3ffe0440 len 129984 free 42616 allocated 86340 min_free 26120
1676459656 - L-1:
largest_free_block 17408 alloc_blocks 26 free_blocks 9 total_blocks 35
1676459656 - L-1: At
0x3ff80000 len 8192 free 7268 allocated 0 min_free 7268
1676459656 - L-1:
largest_free_block 7168 alloc_blocks 0 free_blocks 1 total_blocks 1
1676459656 - L-1:
Totals:
1676459656 - L-1:
free 49644 allocated 184232 min_free 33400 largest_free_block 17408
Für mich sieht es so
aus, dass nicht mein Script, sondern das Web GUI die Ursache für das
merkwürdige Verhalten ist. Scheinbar verursacht der Aufruf des Editors das
Problem? Ein Temperaturproblem ist es nicht, weil die Shelly Temperatur laut
ShellyScanner unter 45 Grad bleibt. Kann man den Fehlercode (Firmware 0.13.0,
Shelly Plus1) irgendwo nachlesen?
Gruß Martin