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

    [HowTo] Alternate way of saving battery when using 4G/LTE

    Scheduled Pinned Locked Moved Support
    89 Posts 16 Posters 28.1k Views 9 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.
      • D Offline
        davedanger @c4pp4
        last edited by

        @c4pp4 I'm using OS Ubuntu 16.04 (2021-09-02/2) on a Pixel 3a

        c4pp4C 1 Reply Last reply Reply Quote 0
        • c4pp4C Offline
          c4pp4 @davedanger
          last edited by

          @davedanger I think it's Halium 9 device therefore it can be affected by https://github.com/ubports/ubuntu-touch/issues/1816

          Would you be more specific what you mean by "doesn't seem to work when put in upstart"?

          D 1 Reply Last reply Reply Quote 0
          • D Offline
            davedanger @c4pp4
            last edited by

            @c4pp4 I mean to have the script run at startup through either nano or chrontab @reboot. When I try "start batterysaver" after reboot, it says it's already running. I think the issue is on my end, because I've also tried running a vpn-autoconnect with the same results. It works fine when I copy/paste into the terminal, but when I nano or chrontab @reboot, the vpn switch automatically moves to "on" every 5 secs as scheduled but immediately fails and turns off. So I'm pretty sure the battery saver script is doing the same thing, trying to work but can't quite execute. Hope this was helpful.

            c4pp4C 1 Reply Last reply Reply Quote 0
            • c4pp4C Offline
              c4pp4 @davedanger
              last edited by

              @davedanger The command "start batterysaver" starts upstart job after its created, after restart it starts automatically, you don't have to start it manually again - that's why "it's already running" message appears. If you see the "L" icon when the screen is unlocked and "2G" when locked, its working.

              L.jpg

              2G.jpg

              D 1 Reply Last reply Reply Quote 1
              • D Offline
                davedanger @c4pp4
                last edited by

                @c4pp4 I understand that, I only tried to manually start it after reboot because it didn't seem to be working, that's when it said it was already running. And if I copy/paste the script into the terminal it goes to 2g when locked and L when unlocked, no problem. It's just when I try to run it as a startup script, then it's running just not executing, and that's any script, not just this one, and I can't figure out why.

                1 Reply Last reply Reply Quote 0
                • KenedaK Keneda referenced this topic on
                • Y Offline
                  Yoni @c4pp4
                  last edited by

                  @c4pp4
                  Hello c4pp4
                  I had made some battery tests to see how efficient your method is (I didn't actually use your script), and I had found that going down to 2G does increase battery life but that having the data connection turned off is actually more efficient, and I was wonderring if you are able to create a similar script that could enable/disable the data connection, preferebley without the need to actually unlock the phone, so that when the screen is turned on it will connect to the internet so that communications could come through?
                  I would had made one myself but I have no idea how to.
                  Here are the battery tests, starting with 4G with data on:
                  badtest.JPG
                  2G with data on:
                  2gbatest.JPG
                  And 4G with data turned off:
                  batest.JPG
                  You can see further details here: https://forums.ubports.com/topic/6971/wifi-mobile-data-on-off-according-to-screen-state/29

                  c4pp4C P 2 Replies Last reply Reply Quote 1
                  • c4pp4C Offline
                    c4pp4 @Yoni
                    last edited by c4pp4

                    @yoni said in [HowTo] Alternate way of saving battery when using 4G/LTE:

                    enable/disable the data connection

                    Do you mean turn it off at all? No connection to receive a call? What is sim slot number in your case?

                    without the need to actually unlock the phone

                    I think that's no problem.

                    Y 1 Reply Last reply Reply Quote 0
                    • Y Offline
                      Yoni @c4pp4
                      last edited by Yoni

                      @c4pp4
                      I didn't mean flight mode, rather just to have the mobile data turned on and off accordingf to the screen state if possible, if not then according to the phone being locked/unlocked.
                      That will be so amzing if you can create such a script!
                      Sim slot 1 out of 2 (Xiaomi mi A2)

                      c4pp4C 1 Reply Last reply Reply Quote 0
                      • c4pp4C Offline
                        c4pp4 @Yoni
                        last edited by c4pp4

                        @Yoni
                        After all I didn't need to know the sim slot number. šŸ™‚
                        Here is your script for testing:

                        #!/bin/bash
                        
                        interface=com.canonical.Unity.Screen
                        member=DisplayPowerStateChange
                        
                        dbus-monitor --system "type=signal,interface='${interface}',member='${member}'" |
                        while read -r line; do
                        	if [[ ${line} == *"int32 0" ]]; then
                        		read
                        		dbus-send --type=method_call --dest=com.ubuntu.connectivity1 /com/ubuntu/connectivity1/Private org.freedesktop.DBus.Properties.Set string:com.ubuntu.connectivity1.Private string:MobileDataEnabled variant:boolean:false
                        	elif [[ ${line} == *"int32 1" ]]; then
                        		read
                        		dbus-send --type=method_call --dest=com.ubuntu.connectivity1 /com/ubuntu/connectivity1/Private org.freedesktop.DBus.Properties.Set string:com.ubuntu.connectivity1.Private string:MobileDataEnabled variant:boolean:true
                        	fi
                        done
                        
                        D KenedaK 2 Replies Last reply Reply Quote 1
                        • D Offline
                          domubpkm @c4pp4
                          last edited by

                          @c4pp4 Hello. I tested your script : it works half for me (Volla OTA-20) ;

                          1. Cellular data is not disabled when the screen locks (and turns off) AUTOMATICALLY after the inactivity time set in the system settings.

                          2. The script works when you MANUALLY lock the phone by pressing the dedicated side switch.

                          Tested and verified by sending an email to myself: case 1: email received black screen ; case 2: email received only when the screen is turned back on by pressing the side switch, which is normal šŸ™‚

                          c4pp4C 1 Reply Last reply Reply Quote 1
                          • D Offline
                            domubpkm
                            last edited by domubpkm

                            screenshot20211204_085533538.png

                            I don't like to press the side switch unnecessarily (so as to save it) to turn off the screen. It make me think that, in my opinion, it lacks the option in the "system" drop down menu: "lock and turn off screen", there is only currently the "lock" option (there is a delay before the screen turns off
                            ), or a small .click program, for example like Lock it : Screen off on android, which would be very useful if a developer is able to build that šŸ˜‰

                            1 Reply Last reply Reply Quote 1
                            • KenedaK Offline
                              Keneda @c4pp4
                              last edited by

                              @c4pp4
                              Could you make an app your scripts ?
                              I mean a "battery saver" app on openstore would have success šŸ˜‰

                              2015-2023 : Meizu MX4 ā˜ ļøāš°ļøāœļø
                              2023-2024 : Nexus 5 ā˜ ļøāš°ļøāœļø
                              2024-***** : FPOS Fairphone 5 waiting UT for freedom šŸ˜‰
                              šŸ‡²šŸ‡«šŸ‡¬šŸ‡§

                              c4pp4C 1 Reply Last reply Reply Quote 1
                              • c4pp4C Offline
                                c4pp4 @domubpkm
                                last edited by

                                @domubpkm said in [HowTo] Alternate way of saving battery when using 4G/LTE:

                                1. Cellular data is not disabled when the screen locks (and turns off) AUTOMATICALLY after the inactivity time set in the system settings.

                                fixed

                                D 1 Reply Last reply Reply Quote 2
                                • c4pp4C Offline
                                  c4pp4 @Keneda
                                  last edited by

                                  @keneda said in [HowTo] Alternate way of saving battery when using 4G/LTE:

                                  Could you make an app your scripts ?

                                  I'm sorry, I'm not going to do it now. Maybe someone else.

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

                                    @c4pp4 Thank you. It is fully functional now. Mails are retrieved automatically once the screen is turned on and combined with the work of @jezek , any mms not received when the screen is off should also be retrievable (untested) once the screen is turned back on. And that's saving battery: useful script šŸ‘

                                    c4pp4C 1 Reply Last reply Reply Quote 1
                                    • c4pp4C Offline
                                      c4pp4 @domubpkm
                                      last edited by

                                      @domubpkm @Yoni
                                      I've tried the latest script and found out turning cellular data off is not saving battery in my case. I've stopped the script and turned it off from menu and it was the same - not saving. šŸ¤”
                                      I've switched back to saving with 2G script and it works without problem. :man_shrugging_light_skin_tone:

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

                                        @c4pp4 ??? šŸ¤”šŸ™‚ Weird. In any case, for the Volla, it is the cellular data that consumes battery power. And your script can help.

                                        1 Reply Last reply Reply Quote 1
                                        • Y Offline
                                          Yoni @c4pp4
                                          last edited by

                                          @c4pp4
                                          Sorry for the late reply.
                                          I didn't have time to check the script yet, and I'm quite surprised by your results, but I would like to thank you very much for your script!
                                          Are you able to see the signal strengths of 2G and 4G in your area to see if that might account for the lack of battery savings?
                                          As you could see in my test turning off the data in 4G quadrupled my battery life when I manually turned it off.

                                          c4pp4C 1 Reply Last reply Reply Quote 0
                                          • c4pp4C Offline
                                            c4pp4 @Yoni
                                            last edited by

                                            @yoni There is no lack of battery savings when on 2G. In my case it saves the battery power when using the first script to switch between 4G and 2G. It doesn't save battery power when I turn cellular data off completely. It's weird and I don't know why.

                                            Y 2 Replies Last reply Reply Quote 0
                                            • Y Offline
                                              Yoni @c4pp4
                                              last edited by

                                              @c4pp4
                                              If you have another Android or iPhone to check the signal strength with the same Sim that you use on your UT, there are apps that can show you the actual reception in dBm, so for me at home 4G is at around -90dBm and 2G is around -70dBm.

                                              1 Reply Last reply Reply Quote 0
                                              • Y Yoni referenced this topic on
                                              • First post
                                                Last post