mirror of
https://github.com/srlabs/blue-merle.git
synced 2024-06-30 16:11:24 +00:00
![Tobias Mueller](/assets/img/avatar_default.png)
When toggling the switch, a lock is held for a relatively long time, preventing another toggling of the switch to be noticed. With this change, I hope we can first shutdown the modem, wait for a toggle, and then continue. We're losing the abort function but I currently don't know how we would be able to keep that functionality given that the toggle is queued and we don't get the notification.
69 lines
1.2 KiB
Bash
69 lines
1.2 KiB
Bash
#!/bin/sh
|
|
|
|
. /lib/blue-merle/functions.sh
|
|
. /lib/functions/gl_util.sh
|
|
|
|
rm -f /tmp/blue-merle-stage1
|
|
|
|
mcu_send_message "Switch pulled. Continuing..."
|
|
sleep 1
|
|
sim_switch on
|
|
|
|
leak=0
|
|
|
|
until gl_modem AT AT+CFUN=0 | grep -q OK
|
|
do
|
|
mcu_send_message "CFUN=0 failed. Trying again."
|
|
sleep 1
|
|
done
|
|
|
|
until gl_modem AT AT+CFUN=4 | grep -q OK
|
|
do
|
|
leak=1
|
|
mcu_send_message "CFUN=4 failed. Trying again."
|
|
sleep 1
|
|
done
|
|
|
|
if [[ $leak -eq 1 ]]; then
|
|
mcu_send_message "WARNING: Reset took longer than expected."
|
|
sleep 3
|
|
fi
|
|
|
|
sleep 1
|
|
|
|
new_imsi=$(READ_IMSI)
|
|
|
|
if [[ "$old_imsi" == "$new_imsi" ]]; then
|
|
mcu_send_message "WARNING: Old IMSI equals new IMSI."
|
|
sleep 3
|
|
fi
|
|
|
|
mcu_send_message "Setting random IMEI"
|
|
python3 /lib/blue-merle/imei_generate.py -r
|
|
|
|
new_imei=$(READ_IMEI)
|
|
|
|
if [[ "$old_imei" == "$new_imei" ]]; then
|
|
mcu_send_message "WARNING: Old IMEI equals new IMEI."
|
|
sleep 3
|
|
else
|
|
mkdir -p /tmp/modem.1-1.2
|
|
echo "$new_imei" > /tmp/modem.1-1.2/modem-imei
|
|
fi
|
|
|
|
|
|
mcu_send_message "The device will shutdown now."
|
|
sleep 3
|
|
mcu_send_message "You should change your location before booting again."
|
|
sleep 5
|
|
|
|
|
|
i=5
|
|
/sbin/poweroff -d $i
|
|
until [[ $i -eq 0 ]]
|
|
do
|
|
i=$((i-1))
|
|
mcu_send_message "Shutting down... ($i)"
|
|
sleep 1
|
|
done
|