03-12-2023, 06:48 PM
Unfortunately, this is a well-known issue that has not been fixed yet. To mitigate this, I run the following shell script as a systemd service with root privileges:
This will restart the eg25-manager service if the modem disappears, as well as restarting mobile data connection if it drops. The latter issue seems to occur often during calls (at least, on my OG PP).
Remember to replace "internet" with whatever name is used by your APN.
I hope you find this useful!
Code:
#! /bin/sh
is_modem_available()
{
if [ -z "$(lsusb | grep "2c7c:0125")" ]; then
return 1
fi
return 0
}
is_data_available()
{
if ! nmcli c show --active | grep -e internet -e gsm > /dev/null; then
return 1
fi
return 0
}
TRY=0
while :; do
if ! is_modem_available ; then
TRY=$((TRY + 1))
echo $(date) Restarting modem, $TRY try
systemctl restart eg25-manager
systemd-inhibit --what=sleep --why="Modem reset" sleep 60
elif [ $TRY -ne 0 ]; then
echo $(date): Modem restarted successfully
TRY=0
elif ! is_data_available; then
echo $(date): Restarting mobile data
systemd-inhibit --what=sleep --why="Restart mobile data" sleep 5
nmcli c up internet
fi
sleep 5
done
This will restart the eg25-manager service if the modem disappears, as well as restarting mobile data connection if it drops. The latter issue seems to occur often during calls (at least, on my OG PP).
Remember to replace "internet" with whatever name is used by your APN.
I hope you find this useful!