Fibra_Zio Grazie!
a sto punto non conviene fare un watchdog con il ping classico?
ti rimando lo script è migliorabile sotto molti aspetti in caso volessi spenderci tempo ...
se noti è variata la parte iniziale prima rilevava solo le "disconnessioni" ed eseguiva qualcosa
adesso rileva se è connesso e allora prova prima il ping e logga in caso di valori diversi da "connected" allora esegue ifdown wan e ifup wan
fammi sapere che ne pensi e/o altro, se ne crei una versione migliorata postamela grazie
potresti anche fornirmi le informazioni sulla tua sim contratto con esempio Iliad, Vodafone, ecc
versione firmware in uso OEM e versione modulo LTE in uso v. 8 / 11 / 12 / 13
è solo per capire la tua situazione di partenza, ho letto alcuni tuoi post ed hai affermato che con il cell-lock rilevi molte disconnessioni ma il band lock a te funziona correttamente è solo per ottenere informazioni che potrebbero essere utili ...
se non vuoi pubblicare le informazioni su questo forum sentiti libero di contattarmi sul forum di Openwrt
https://forum.openwrt.org/search?expanded=true&q=ncompact&search_type=users
cat /etc/crontab/root
`
#min hour day month day-week command
#0-59 0-23 1-31 1-12 0-6(0=Sunday) exec
- * * * * /root/wan_connect
`
cat /root/wan_connect
`
#!/bin/sh
#log into this file
LTEFILE="/tmp/wan_connect"
LTEPROTO=$(cat /etc/config/network | grep "proto 'qmi'" | wc -l)
if [ ${LTEPROTO} -eq "1" ]; then
LTESTATUS=$(uqmi -d /dev/cdc-wdm0 --get-data-status | grep "\"connected\"" | wc -l)
if [ ${LTESTATUS} -eq "0" ]; then
logger "exec /root/wan_connect: lost connection detected"
logger "exec /root/wan_connect: exec ifdown wan; ifup wan"
ifdown wan
ifup wan
else
#cd /tmp; wget -q --spider https://google.com
ping -c 1 -w 2 1.1.1.1 >/dev/null 2>&1
if [ $? -ne 0 ]; then
logger "exec /root/wan_connect: status connect but not response form internet"
file1=$(mktemp)
file2=$(mktemp)
picocom -t "$(echo -ne 'AT+CGPADDR\r\n')" /dev/ttyUSB2 --nolock --exit-after 300 --quiet --logfile $file1 >/dev/null
cat $file1 | awk '{while ( match($0,/([0-9]+.){3}[0-9]+/) ) { print substr($0,RSTART,RLENGTH); $0=substr($0,RSTART+RLENGTH) } }' > $file2
IPADDRESS1=$(cat $file2)
logger "exec /root/wan_connect: log to file $LTEFILE"
date >> ${LTEFILE}
echo "uqmi -d /dev/cdc-wdm0 --get-data-status" >> ${LTEFILE}
uqmi -d /dev/cdc-wdm0 --get-data-status >> ${LTEFILE}
echo "uqmi -d /dev/cdc-wdm0 --get-current-settings" >> ${LTEFILE}
uqmi -d /dev/cdc-wdm0 --get-current-settings >> ${LTEFILE}
echo "ifconfig wwan0" >> ${LTEFILE}
ifconfig wwan0 >> ${LTEFILE}
echo "route -n" >> ${LTEFILE}
route -n >> ${LTEFILE}
echo "ipaddress on lte module: $IPADDRESS1" >> ${LTEFILE}
cat $file1 >> ${LTEFILE}
echo "nslookup www.google.com" >> ${LTEFILE}
nslookup www.google.com >> ${LTEFILE}
rm $file1
rm $file2
echo "-----------------------------------------------" >> ${LTEFILE}
#effettua un reset del modulo LTE per ora solo ipotizzato
#prima vorrei capire quante volte succede questo
#usbreset 2c7c:0512
fi
fi
fi
`