Es gibt einen interessanten neuen Ansatz die random Firmware Resets zu umgehen...
Der Roboter macht jede Nacht im Zeitraum 3 bis 03:30 Uhr einen Reboot, sofern er im Idle ist. Es wird vermutet, dass zu viele Reboots das Dateisystem beschädigen. [
Edit: Eine weitere Vermutung ist, dass der disk space volläuft, womöglich durch Log Dateien.] Der fsck schlägt dadurch fehl, was den Reset auslöst.
Ob der Roboter einen nächtlichen Reboot macht, kann man einmal mit dem Befehl
uptime überprüfen, er sollte einen Wert unter 24h zurückgeben. Zum Anderen wird täglich ein Logfile-Verzeichnis unter
/mnt/data/roborock/rrlog angelegt. Hier findet man auch Infos zum möglichen fsck error, gefolgt vom Factory Reset.
So kam ein User auf die Idee die Reboots mit einem Cronjob und einem kleinen Script zu unterdrücken und ein Housekeeping Konzept einzuführen. Das sieht wie folgt aus:
Code:
# nano /etc/crontab
0 23 * * * root service rrwatchdoge stop
10 23 * * * root rm /mnt/data/rockrobo/rrlog/*REL -R
15 23 * * * root /root/check_all
0 4 * * * root service rrwatchdoge start
# nano /root/check_all
umount /mnt/updbuf
umount /mnt/data
umount /mnt/reserve
umount /mnt/default
fsck -y /dev/mmcblk0p10
fsck -y /dev/mmcblk0p1
fsck -y /dev/mmcblk0p11
fsck -y /dev/mmcblk0p6
mount /dev/mmcblk0p10 /mnt/updbuf
mount /dev/mmcblk0p1 /mnt/data
mount /dev/mmcblk0p11 /mnt/reserve
mount -o ro /dev/mmcblk0p6 /mnt/default
# service cron restart
Dadurch werden die wichtigsten Services des Roboters in dem oben genannten Zeitraum gestoppt und die Partitionen unmounted. Das verhindert die Reboots und den fsck.