[Magisk] sic0048:
Edit - I think I have answered my own question (see Original Message below)..... It seems that restarting the Daemon while the phone is plugged in will cause the BatteryIdleMode to work as expected. So I guess my next question is what is the best method to make this happen automatically. I'm assuming I can put in some sort of command in the "appl_on_plug" action, but I don't know what that might be offhand (although I will continue to research myself now that I have a potential solution to my problem).

EDIT 2 - Alright, I think I have found a solution that works reliably. I have set up a tasker event that fires off anytime "power" is applied. This task does two things. First, it sends a shell command (using root) "ACC -e". This enables charging via ACC. The second command sends a shell command (using root) "accd". This restarts the ACC daemon. After these two commands fire, it takes about 10-20 seconds, but the battery idle mode will eventually kick in. In total, it takes about 20-30 seconds after plugging the phone into power for the phone to be in battery idle mode.

Originally I tried to simply restart the ACC daemon, but it would not reliably turn on the battery idle mode. Sometimes it would and sometimes the battery would continue discharging even when the battery level was below the pause setting, but above the resume setting. By forcing the system to start charging and only then resetting the ACC daemon, it seems to reliably force battery idle mode on.

I'll keep watching this over the next few days to ensure it works in ALL situations, but it seems to work in my limited testing (ie only when battery idle mode is suppose to be on) so far.

Original Message......

I could use some help. I have a Pixel 8 Pro. I am running the latest developer version of ACC (Edit 3 - turns out I wasn't on the latest verion - there was one released last night. Now when I run acc -t, none of the 6 switches tested come back with "BatteryIdleMode=True" The switch that use to report this now reports it as "False"). When I test the different switches, only two both "work" and have "BatteryIdleMode=true". I have manually set the switch to both of these options and have the same results.....

My results: The system works correctly and BatteryIdleMode will hold the charge once the battery reaches my stated pause capacity (75%). However once I unplug the phone, the battery idle mode will not work again when the phone is plugged in until the battery reaches the resume capacity and starts charging again.

For example, I leave my phone plugged in overnight (wall charger) and wake up to the phone holding a charge at 75% as expected. I then unplug my phone and get in my car to drive to work. I plug my phone in (car charger) and the battery continues to drain at what I would consider "normal" levels based on my usage . I get to work and plug my phone in there (wall charger) and my battery continues to drain at normal levels based on usage. During these discharge periods, there is a notification stating "Charging is being optimized". Once I hit my resume capacity (45%) the phone will start charging again and will hold a charge at the pause capacity until it is unplugged.

So my question is, are there any tricks or tips to try to get the battery idle mode to work all of the time? I don't know what else to try! I'm hoping there is some "trick" I can implement that will make BatteryIdleMode work consistently.

Thanks!

PS - I am currently using the charging switch "/sys/devices/platform/google.charger/charge_stop_level 100 battery/capacity"

The other switch that both "works" and has BatteryIdleMode=True is "gcpm/constant_charge_current_max 594000 0"

Here is a screen shot of my acc -s output.