Kosmetyka,mmiikk wrote: Mon Nov 14, 2022 9:07 am A jakie dokładnie zmiany należy poczynić aby działało jak w Twoim przypadku?
1. Nie dodajesz do supervisiora wpisów odpowiedzilanych za uruchomienie LYWSD03MMC.py z parametrem dla konkretnego termometru. mi-th-0, mi-th-1, itd.
Code: Select all
[program:mi-th-0]
command=python3 ./LYWSD03MMC.py --device xx:xx:xx:xx:xx:xx --battery --round --debounce --name th0 --callback save-to-file.sh
directory=/home/pi/supla-mi-th
autostart=true
autorestart=true
user=piCode: Select all
sudo crontab -eCode: Select all
#opis pomieszczenia opcjonalnie by było łatwiej się połapać
*/10 * * * * /usr/bin/python3 /home/pi/supla-mi-th/LYWSD03MMC.py --device xx:xx:xx:xx:xx:xx --battery --round --debounce --name th2 -c 1 --callback save.sh
4. Reset crontaba
Code: Select all
sudo service cron reloadPS
Jest jeszcze jedna kwestia, zdarza się, że procesów ble robi się za dużo, kolejka zabija mi procka. Dlatego codziennie o 2 w nocy profilaktycznie ubijam wszystkie, które żyją dłużej niż 300 sek.
Code: Select all
* */2 * * * /home/pi/supla-mi-th/kill.shCode: Select all
#!/bin/bash
for PID in $(ps -ef | egrep "(/bin/sh -c /home/pi/supla-mi-th/LYWSD03MMC.py)|(bluepy-helper)" | grep -v grep | awk {'print $2'}); do
RUNTIMESEC=$(ps -o etimes= -p "$PID")
if [ "$RUNTIMESEC" -gt "300" ]; then kill -9 $PID; fi
done
exit 0
