Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pixel 8 Pro Android 15 Idle Mode No Longer Work #275

Open
magi44ken opened this issue Jan 2, 2025 · 6 comments
Open

Pixel 8 Pro Android 15 Idle Mode No Longer Work #275

magi44ken opened this issue Jan 2, 2025 · 6 comments

Comments

@magi44ken
Copy link

magi44ken commented Jan 2, 2025

I upgraded from the stock Android 14 to Android 15 with December Update that supports charging limit and bypass charging. If I enable the charging limit in the OS settings, it will also enable bypass charging and it works.

I tried using ACC v2025.12.29 and v2025.12.15 versions, acc -t reported most of the switches doesn't work and only find one switch support idle mode (/sys/devices/platform/google,charger/charge_stop_level 100 battery/capacity). This switch doesn't enable idle mode in auto mode or manually using acc -d. In Android 14, it works but not reliable and doesn't recommend using this switch.

Instead I use this switch "gcpm/constant_charge_current_max 5940000 0" for idle mode in Android 14 but in Android 15, acc -t stated it doesn't support it. In acc idle mode auto mode doesn't work but if I enable it using acc -d, it will support idle mode. But if you reconnect the USB power cable, it disable idle mode and start charging normally.

Note: I disable all power management in OS settings.

Here is the acc -t log.

acc-t_output-husky_2025-01-01_15-48-07.txt

@VR-25
Copy link
Owner

VR-25 commented Jan 4, 2025

What's the output of su -c grep . /sys/class/power_supply/*/present while the device is unplugged?

@VR-25
Copy link
Owner

VR-25 commented Jan 4, 2025

@magi44ken
Copy link
Author

What's the output of su -c grep . /sys/class/power_supply/*/present while the device is unplugged?

/sys/class/power_supply/battery/present:1
/sys/class/power_supply/dc-mains/present:1
/sys/class/power_supply/dc/present:0
/sys/class/power_supply/gcpm/present:0
/sys/class/power_supply/gcpm_pps/present:0
/sys/class/power_supply/main-charger/present:0
/sys/class/power_supply/maxfg/present:1
/sys/class/power_supply/usb/present:0
/sys/class/power_supply/wireless/present:0

@magi44ken
Copy link
Author

acc_v2025.1.4-rc_202501040_2129.zip

This version fixes the idle issue. It enable idle when marches the pause capacity and also enable it when you reconnect the power cable. I will report back if anything changes.

There is a small issue related to Pixel idle switch.

The 386000 value in the idle switch (gcpm/constant_charge_current_max 3860000 0) sometimes changes to other value like 586000, etc. when you reconnect the power cable even if it is the same power source. It happens more frequent if different power source.

The problem is if the value is below 386000, idle mode doesn't work. Another problem is if you force the idle switch instead of auto select it, it will not recognize the idle switch anymore since the value is changed.

Is it possible to make some changes to recognize the idle switch even if the value changes because it is the same idle switch with a different vaule? I believe this value might a mcc value.

@VR-25
Copy link
Owner

VR-25 commented Jan 5, 2025

The value is provided by the kernel itself.
If you force a working switch with acc -s s="gcpm/constant_charge_current_max 3860000 0 --", it'll still work, even if it's no longer on the list of available switches.

@magi44ken
Copy link
Author

If you set the charging switch to auto mode, it will work even if the value changes when reconnecting the USB cable.

But it doesn't work if you force to use the switch. Idle mode will not recognize and enable it. I have to re-select the switch with the new value.

Maybe you can implement a check if the switch uses mcc. If it does, it will check the charging switch if the mcc value changes when power cable is connected to the device. Then it automatically re-select the same charging switch with the new mcc value.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants