• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
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
      domubpkm @jezek
      last edited by 29 May 2021, 18:29

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

      which handles all the trouble when receiving MMS while cellular data is off

      Hello. You done a huge work..! congratulations.

      Does it mean that the main purpose of the work is that MMS could be received normally with cellular data OFF ?

      K 1 Reply Last reply 29 May 2021, 20:15 Reply Quote 1
      • K Offline
        Keneda @domubpkm
        last edited by Keneda 29 May 2021, 20:15

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

        Does it mean that the main purpose of the work is that MMS could be received normally with cellular data OFF ?

        No the purpose is to not loose MMS in any cases and being able to download them when data is back on.
        You can't receive MMS without data on, no software tweak can change this.
        See there if not already done for full story : https://forums.ubports.com/topic/5100/the-mms-lost-story

        2015-2023 : Meizu MX4 ☠️⚰️✝️
        2023-2024 : Nexus 5 ☠️⚰️✝️
        2024-***** : FPOS Fairphone 5 waiting UT for freedom 😉
        🇲🇫🇬🇧

        1 Reply Last reply Reply Quote 3
        • D Offline
          domubpkm
          last edited by domubpkm 29 May 2021, 20:45

          It's not a story, it's a ''bible'' (which I hadn't read) like the amount of work (and surely headaches) put in by @jezek .. Yes, the aim is, rather, to have a delayed download (or to be able to delay downloading the MMS) when the cellular data is reactivated which is great. In short, the idea is to ensure that the MMS is not lost. I think it's more exact.

          ....and this would be good as it would allow the cellular data to be turned off to save battery power and turned back on when needed to download the MMS. 🙂

          1 Reply Last reply Reply Quote 1
          • M Offline
            Mario.CH @c4pp4
            last edited by 4 Jun 2021, 20:55

            @c4pp4
            Hello c4pp4,
            so, my device has been running with this customization for almost a week now.
            Still, I can't say yet if it causes any improvement in battery life.
            But for sure I can confirm that it does not contribute to any degradation.
            Thank you again.

            Translated with www.DeepL.com/Translator (free version)

            📱 Oneplus Nord N100 UT20.40 (OTA5); then Xperia X (since 2020) at last UT 20.04(OTA5), now out of service due to defective camera
            🐎 When you realize you are riding a dead horse, get off!
            My languages skill: 🇨🇭🇦🇹 🇩🇪, and only orally: 🇬🇧 🇹🇭

            C 1 Reply Last reply 5 Jun 2021, 15:56 Reply Quote 1
            • C Offline
              c4pp4 @Mario.CH
              last edited by 5 Jun 2021, 15:56

              @mario-ch Maybe there is no such difference between G3 and G4 consumption.

              K T 2 Replies Last reply 5 Jun 2021, 18:54 Reply Quote 0
              • K Offline
                Keneda @c4pp4
                last edited by 5 Jun 2021, 18:54

                @c4pp4
                I don't use the script but i can tell you that there is a big difference on my phone in battery consumption between 3G and 4G.

                2015-2023 : Meizu MX4 ☠️⚰️✝️
                2023-2024 : Nexus 5 ☠️⚰️✝️
                2024-***** : FPOS Fairphone 5 waiting UT for freedom 😉
                🇲🇫🇬🇧

                1 Reply Last reply Reply Quote 1
                • T Offline
                  TotalRando @c4pp4
                  last edited by TotalRando 19 Jun 2021, 22:31

                  @c4pp4 Ok, so just to confirm (because I have already messed up Anbox and will probably have to reinstall anyway just for that), this script defaults to 3G/4G? So it won't go back to 2G? Because that's what I want. It annoys me to have to switch back to 3G/4G every time I turn my phone back on (2G is virtually unusable where I live but if the phone sleeps too long, it's back on 2G.) I only need the last script from before the "note for the further investigation" part? Just copy into a Seabass, save script and run in terminal?

                  NOTE: I don't care about battery consumption-- my phone is plugged in a lot-- but I do like my calls crystal clear when I dial without having to be like "ugh, it's on 2G again". Also, I can't get MMS on 2G but on 3G/4G, works fine.


                  Nerd with UT on a OnePlus One. OnePlus 6T waiting in the wings for VoLTE.

                  C 1 Reply Last reply 19 Jun 2021, 23:12 Reply Quote 0
                  • C Offline
                    c4pp4 @TotalRando
                    last edited by 19 Jun 2021, 23:12

                    @totalrando use the walkthrough from the first post, just change variables to:

                    primary_preference="lte"
                    saving_preference="umts"
                    
                    1 Reply Last reply Reply Quote 2
                    • D Offline
                      davedanger
                      last edited by 3 Sept 2021, 23:03

                      Script works good running in the terminal but doesn't seem to work when put in upstart

                      C 1 Reply Last reply 4 Sept 2021, 07:57 Reply Quote 0
                      • C Offline
                        c4pp4 @davedanger
                        last edited by 4 Sept 2021, 07:57

                        @davedanger What version of UT? There is a regression when using 2G now.

                        D 1 Reply Last reply 4 Sept 2021, 17:17 Reply Quote 0
                        • D Offline
                          davedanger @c4pp4
                          last edited by 4 Sept 2021, 17:17

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

                          C 1 Reply Last reply 4 Sept 2021, 19:05 Reply Quote 0
                          • C Offline
                            c4pp4 @davedanger
                            last edited by 4 Sept 2021, 19:05

                            @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 4 Sept 2021, 19:42 Reply Quote 0
                            • D Offline
                              davedanger @c4pp4
                              last edited by 4 Sept 2021, 19:42

                              @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.

                              C 1 Reply Last reply 4 Sept 2021, 20:08 Reply Quote 0
                              • C Offline
                                c4pp4 @davedanger
                                last edited by 4 Sept 2021, 20:08

                                @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 4 Sept 2021, 20:25 Reply Quote 1
                                • D Offline
                                  davedanger @c4pp4
                                  last edited by 4 Sept 2021, 20:25

                                  @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
                                  • K Keneda referenced this topic on 12 Nov 2021, 06:36
                                  • Y Offline
                                    Yoni @c4pp4
                                    last edited by 30 Nov 2021, 17:26

                                    @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

                                    C P 2 Replies Last reply 3 Dec 2021, 18:24 Reply Quote 1
                                    • C Offline
                                      c4pp4 @Yoni
                                      last edited by c4pp4 12 Mar 2021, 18:29 3 Dec 2021, 18:24

                                      @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 3 Dec 2021, 21:55 Reply Quote 0
                                      • Y Offline
                                        Yoni @c4pp4
                                        last edited by Yoni 12 Mar 2021, 21:56 3 Dec 2021, 21:55

                                        @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)

                                        C 1 Reply Last reply 4 Dec 2021, 02:42 Reply Quote 0
                                        • C Offline
                                          c4pp4 @Yoni
                                          last edited by c4pp4 12 Apr 2021, 11:33 4 Dec 2021, 02:42

                                          @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 K 2 Replies Last reply 4 Dec 2021, 06:07 Reply Quote 1
                                          • D Offline
                                            domubpkm @c4pp4
                                            last edited by 4 Dec 2021, 06:07

                                            @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 🙂

                                            C 1 Reply Last reply 4 Dec 2021, 11:34 Reply Quote 1
                                            • First post
                                              Last post