UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    Bug: data mobile interface looses ip

    Scheduled Pinned Locked Moved OS
    25 Posts 5 Posters 1.5k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • pparentP Offline
      pparent @gpatel-fr
      last edited by pparent

      Here is the script that I currently use, it improves greatly the usability of my phone, because it reduces dramatically the need to go in the settings to restart cellular connexion, in order to get access to the Internet.

      Though it's not perfect and might have side effects, use at your own risks!

      #!/bin/bash
      
      MODEM="/ril_0"
      HOST_TO_PING="8.8.8.8 www.google.com ubports.com 1.1.1.1 9.9.9.9 cloudflare.com amazon.com microsoft.com wikipedia.org apple.com"
      
      function get_modem_iface()
      {
      /usr/share/ofono/scripts/list-contexts |awk -v target="$1" '
      /^\[ \/ril_/ { r=$2 }
      
      /Type = internet/ { i=1 }
      
      /Interface=ccmni/ && r==target && i {
          sub(/^.*Interface=/, "")
          sub(/ .*/, "")
          print
          exit
      }
      '
      }
      
      IFACE=$(get_modem_iface $MODEM)
      
      i=0;
      
      while true; do
          if [ "$IFACE" = "" ]; then
              IFACE=$(get_modem_iface $MODEM)
          fi
          ifconfig $IFACE | grep -v inet6 | grep inet > /dev/null 2>&1
          if [ "$?" -ne "0" ]; then
              gdbus call --system --dest org.ofono --object-path "$MODEM" --method org.ofono.NetworkRegistration.GetProperties | grep "'Technology': <'lte'>" > /dev/null 2>&1
              if [ "$?" -eq "0" ]; then
                  date
                  echo "IFACE: $IFACE";
                  echo "IP loss detected"
                  /usr/share/ofono/scripts/offline-modem $MODEM
                  /usr/share/ofono/scripts/online-modem $MODEM
                  sleep 5;
                  IFACE=$(get_modem_iface $MODEM)
              fi
          else
              route=$(ip route show default)
              if [ "$route" = "" ]; then 
                  gdbus call --system --dest org.ofono --object-path "$MODEM" --method org.ofono.NetworkRegistration.GetProperties | grep "'Technology': <'lte'>" > /dev/null 2>&1
                  if [ "$?" -eq "0" ]; then
                      date
                      echo "IFACE: $IFACE";
                      echo "Route loss detected"
                      /usr/share/ofono/scripts/offline-modem $MODEM
                      /usr/share/ofono/scripts/online-modem $MODEM
                      sleep 5;
                      IFACE=$(get_modem_iface $MODEM)
                  fi
              fi
          fi
          
          i=$((i+1))
          if [ "$i" -gt "15" ]; then
              i=0;
              gdbus call --system --dest org.ofono --object-path "$MODEM" --method org.ofono.NetworkRegistration.GetProperties | grep "'Technology': <'lte'>" > /dev/null 2>&1
              if [ "$?" -eq "0" ]; then
                  internetaccess=0;
                  for host in $HOST_TO_PING ; do
                      ping -W 1 -c 1 $host >/dev/null 2>&1
                      if [ "$?" -eq "0" ]; then
                          internetaccess=1;
                          break;
                      else
                          echo "Ping to $host failed, trying next one in 4s ...."
                          sleep 4;
                      fi
                  done
                  if [ "$internetaccess" -eq "0" ]; then
                          date
                          echo "IFACE: $IFACE";
                          echo "Internet access loss detected"
                          /usr/share/ofono/scripts/offline-modem $MODEM
                          /usr/share/ofono/scripts/online-modem $MODEM
                          sleep 5;
                          IFACE=$(get_modem_iface $MODEM)
                  fi
              fi
          fi
          sleep 20;
      done
      
      D 1 Reply Last reply Reply Quote 0
      • lduboeufL Offline
        lduboeuf
        last edited by

        did you reported the issue to the porter ?.
        i personaly have some issues on FP4 regrding network too:
        e.g Noticed that QNetworkConfigurationManager doesn't report isOnline properly

        pparentP 1 Reply Last reply Reply Quote 0
        • pparentP Offline
          pparent @lduboeuf
          last edited by

          @lduboeuf said:

          did you reported the issue to the porter ?.

          I plan to do so when I have time.

          1 Reply Last reply Reply Quote 0
          • J Offline
            jojumaxx
            last edited by

            I just read through this post and want to add that lately, I have that exact issue on my Volla X (24.04-1.2 stable).
            I'll test the script and report back.

            In my case this goes hand in hand with not being able to receive calls. I can initiate calls, but it takes around a minute until a call is established (until the ring sound).

            Happily running Ubuntu Touch:

            • BQ Aquaris E5 HD (Retired)
            • BQ Aquaris M10 HD (Retired)
            • Meizu MX4 Pro (Retired)
            • Meizu Pro 5 (Retired)
            • PinePhone UBPorts Edition
            • Volla Phone
            • Volla Phone X
            1 Reply Last reply Reply Quote 0
            • D Offline
              domubpkm @pparent
              last edited by

              @pparent Hello. Thanks for the script. Did you notice side effects (you said that, i have a Volla 22 too) ?
              May you please suggest a complete procedure to test (as done here https://forums.ubports.com/topic/6211/howto-alternate-way-of-saving-battery-when-using-4g-lte ) ?
              Thanks in advance.

              pparentP 2 Replies Last reply Reply Quote 1
              • pparentP Offline
                pparent @domubpkm
                last edited by

                @domubpkm said:

                Did you notice side effects (you said that, i have a Volla 22 too) ?

                The only thing that I've noted so far, is that If I enable airplane mode with a wrong timing (bad luck), it might go into a loop of disabling / re-eabling the modem. But then I switch off and on, the airplane mode it goes fine.

                1 Reply Last reply Reply Quote 0
                • pparentP Offline
                  pparent @domubpkm
                  last edited by pparent

                  @domubpkm said:

                  May you please suggest a complete procedure to test

                  1°) With adb create the script with

                  nano /home/phablet/backup-ip.sh
                  

                  and paste the content

                  2°) Give execution rights:

                  chmod +x /home/phablet/backup-ip.sh
                  

                  3°) Start the script with:

                  sudo su -c "/home/phablet/backup-ip.sh > /home/phablet/log-backupip 2>&1 &"
                  

                  It will then be running until next reboot.

                  pparentP 1 Reply Last reply Reply Quote 1
                  • pparentP Offline
                    pparent @pparent
                    last edited by

                    I've reported the bug here:

                    https://gitlab.com/ubports/porting/reference-device-ports/android11/volla-phone-22/volla-mimameid/-/work_items/26

                    D 2 Replies Last reply Reply Quote 1
                    • D Offline
                      domubpkm @pparent
                      last edited by

                      @pparent added some comments.

                      1 Reply Last reply Reply Quote 0
                      • D Offline
                        domubpkm @pparent
                        last edited by

                        @pparent i test the script in train..

                        1 Reply Last reply Reply Quote 0

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better 💗

                        Register Login
                        • First post
                          Last post