Professional Documents
Culture Documents
# WARNINGS
# cooldownRatio=(cooldown_charge cooldown_pause)
# resetBattStats=(reset_batt_stats_on_pause reset_batt_stats_on_unplug)
# loopDelay=(loop_delay_charging loop_delay_discharging)
# chargingSwitch=charging_switch=(ctrl_file1 on off ctrl_file2 on off)
# applyOnBoot=apply_on_boot=(ctrl_file1::value1::default1
ctrl_file2::value2::default2 ... --exit)
# applyOnPlug=apply_on_plug=(ctrl_file1::value1::default1
ctrl_file2::value2::default2 ...)
# maxChargingCurrent=max_charging_current=([value] ctrl_file1::value::default1
ctrl_file2::value::default2 ...)
# maxChargingVoltage=max_charging_voltage=([value] ctrl_file1::value::default1
ctrl_file2::value::default2 ...) --exit)
# rebootOnPause=reboot_on_pause=seconds
# switchDelay=switch_delay=seconds
# language=lang=language_code
# prioritizeBattIdleMode=prioritize_batt_idle_mode=true/false
# forceChargingStatusFullAt100=force_charging_status_full_at_100=status_code
# runCmdOnPause=run_cmd_on_pause=(. script)
# autoShutdownAlertCmd=auto_shutdown_alert_cmd=(. script)
# chargDisabledNotifCmd=charg_disabled_notif_cmd=(. script)
# chargEnabledNotifCmd=charg_enabled_notif_cmd=(. script)
# errorAlertCmd=error_alert_cmd=(. script)
# ampFactor=amp_factor=[multiplier]
# voltFactor=volt_factor=[multiplier]
# ctrlFileWrites=ctrl_file_writes=(times interval)
# loopCmd=loop_cmd=(. script)
# VARIABLE ALIASES/SORTCUTS
# cc cooldown_capacity
# rc resume_capacity
# pc pause_capacity
# cft capacity_freeze2
# sc shutdown_capacity
# ct cooldown_temp
# cch cooldown_charge
# cp cooldown_pause
# mt max_temp
# mtp max_temp_pause
# ccu cooldown_custom
# rbsp reset_batt_stats_on_pause
# rbsu reset_batt_stats_on_unplug
# ldc loop_delay_charging
# ldd loop_delay_discharging
# s charging_switch
# ab apply_on_boot
# ap apply_on_plug
# mcc max_charging_current
# mcv max_charging_voltage
# rp reboot_on_pause
# sd switch_delay
# l lang
# wu wake_unlock
# pbim prioritize_batt_idle_mode
# ff force_charging_status_full_at_100
# rcp run_cmd_on_pause
# asac auto_shutdown_alert_cmd
# cdnc charg_disabled_notif_cmd
# cenc charg_enabled_notif_cmd
# eac error_alert_cmd
# af amp_factor
# vf volt_factor
# cfw ctrl_file_writes
# lc loop_cmd
# COMMAND EXAMPLES
# acc 85 80
# acc -s pc=85 rc=80
# acc --set pause_capacity=85 resume_capacity=80
# acc -s sd=5
# acc -s switch_delay=5
# acc -s amp_factor=1000
# acc -s volt_factor=1000000
# configVerCode #
# This is checked during updates to determine whether config should be patched. Do
NOT modify.
# shutdown_capacity (sc) #
# When the battery is discharging and its capacity <= sc, acc daemon turns the
phone off to reduce the discharge rate and protect the battery from potential
damage induced by voltages below the operating range.
# On capacity <= shutdown_capacity + 5, accd enables Android battery saver,
triggers 5 vibrations once - and again on each subsequent capacity drop.
# cooldown_capacity (cc) #
# Capacity at which the cooldown cycle starts.
# Cooldown reduces battery stress induced by prolonged exposure to high temperature
and high charging voltage.
# It does so through periodically pausing charging for a few seconds (more details
below).
# resume_capacity (rc) #
# Capacity at which charging should resume.
# pause_capacity (pc) #
# Capacity at which charging should pause.
# capacity_freeze2 (cft) #
# This prevents Android from getting capacity readings below 2%.
# It's useful on systems that shutdown before the battery is actually empty.
# cooldown_temp (ct) #
# Temperature (°C) at which the cooldown cycle starts.
# Cooldown reduces the battery degradation rate by lowering the device's
temperature.
# Refer back to cooldown_capacity for more details.
# max_temp (mt) #
# mtp or max_temp_pause #
# These two work together and are NOT tied to the cooldown cycle.
# On max_temp (°C), charging is paused for max_temp_pause (seconds).
# Unlike the cooldown cycle, which aims at reducing BOTH high temperature and high
voltage induced stress - this is ONLY meant specifically for reducing high
temperature induced stress.
# Even though both are separate features, this complements the cooldown cycle when
environmental temperatures are off the charts.
# cooldown_charge (cch) #
# cooldown_pause (cp) #
# These two dictate the cooldown cycle intervals (seconds).
# When not set, the cycle is disabled.
# Suggested values are cch=50 and cp=10.
# If charging gets a bit slower than desired, try cch=50 and cp=5.
# Note that cooldown_capacity and cooldown_temp can be disabled individually by
assigning them values that would never be reached under normal circumstances.
# cooldown_custom (ccu) #
# When cooldown_capacity and/or cooldown_temp don't suit your needs, this comes to
the rescue.
# It takes precedence over the regular cooldown settings.
# Refer back the command examples.
# reset_batt_stats_on_pause (rbsp) #
# Reset battery stats after pausing charging.
# reset_batt_stats_on_unplug (rbsu) #
# Reset battery stats after unplugging the charger AND loop_delay_discharging
(seconds) have passed.
# If the charger is replugged within loop_delay_discharging (seconds) after
unplugging it, the operation is aborted.
# loop_delay_charging (ldc) #
# loop_delay_discharging (ldd) #
# These are delays (seconds) between loop iterations.
# Lower values translate to quicker acc responsiveness - but at the cost of
slightly extra CPU time.
# Don't touch these (particularly ldd), unless you know exactly what you're doing.
# charging_switch (s) #
# If unset, acc cycles through its database and sets the first working switch/group
that disables charging.
# If the set switch/group doesn't work, acc unsets chargingSwitch and repeats the
above.
# If all switches fail to disable charging, chargingSwitch is unset, switchDelay is
reverted to 1.5 and acc/d exit with error code 7.
# apply_on_boot (ab) #
# Settings to apply on boot or daemon start/restart.
# The --exit flag (refer back to applyOnBoot=...) tells the daemon to stop after
applying settings.
# If the --exit flag is not included, default values are restored when the daemon
stops.
# apply_on_plug (ap) #
# Settings to apply on plug
# This exists because some /sys files (e.g., current_max) are reset on charger re-
plug.
# Default values are restored on unplug and when the daemon stops.
# max_charging_current (mcc) #
# max_charging_voltage (mcv) #
# Only the current/voltage value is to be supplied.
# Control files are automatically selected.
# Refer back to the command examples.
# reboot_on_pause (rp) #
# If this doesn't make sense to you, you probably don't need it.
# Essentially, this is a timeout (seconds) before rebooting - after pausing
charging.
# This reboot is a workaround for a firmware issue that causes abnormally fast
battery drain after charging is paused on certain devices.
# The issue has reportedly been fixed by the OEMs. This feature will eventually be
removed.
# switch_delay (sd) #
# This is a delay (seconds) between charging status checks after toggling charging
switches. It exists because some switches don't react immediately after being
toggled.
# Most devices/switches work with a value of 1.
# Some may require a delay as high as 3. The optimal max is probably 3.5.
# If a charging switch seems to work intermittently, or fails completely,
increasing this value may fix the issue.
# You absolutely should increase this value if "acc -t" reports total failure.
# Some MediaTek devices require a delay as high as 15!
# accd manages this setting dynamically.
# lang (l) #
# acc language, managed with "acc --set --lang" (acc -s l).
# wake_unlock (wu) #
# This is an attempt to release wakelocks acquired after disabling charging.
# It's totally experimental and may or may not work (expect side effects).
# prioritize_batt_idle_mode (pbim) #
# Several devices can draw power directly from the external power supply when
charging is paused. Test yours with "acc -t".
# This setting dictates whether charging switches that support such feature should
take precedence.
# force_charging_status_full_at_100 (ff) #
# Some Pixel devices were found to never report "full" status after the battery
capacity reaches 100%.
# This setting forces Android to behave as intended.
# For Pixel devices, the status code of "full" is 5 (ff=5).
# The status code is found through trial and error, with the commands "dumpsys
battery", "dumpsys battery set status #" and "dumpsys battery reset".
# run_cmd_on_pause (rcp) #
# Run commands* after pausing charging.
# * Usually a script ("sh some_file" or ". some_file")
# auto_shutdown_alert_cmd (asac) #
# charg_disabled_notif_cmd (cdnc) #
# charg_enabled_notif_cmd (cenc) #
# error_alert_cmd (eac) #
# As the names suggest, these properties dictate commands acc/d/s should run at
each event.
# The default command is "vibrate <number of vibrations> <interval (seconds)>"
# Termux APIs can be used for notifications, TTS, toasts and more. For details,
refer to https://wiki.termux.com/wiki/Termux:API .
# amp_factor (af) #
# volt_factor (vf) #
# Unit multiplier for conversion (e.g., 1V = 1000000 Microvolts)
# ACC can automatically determine the units, but the mechanism is not 100%
foolproof.
# e.g., if the input current is too low, the unit is miscalculated.
# This issue is rare, though.
# Leave these properties alone if everything is running fine.
# ctrl_file_writes (cfw) #
# This determines how many times each ctrl file should be written to, as well as
the interval (seconds) between these writes.
# That's an attempt to force changes that don't take effect immediately or at all.
# loop_cmd (lc) #
# This is meant for extending accd's functionality.
# It is periodically executed by is_charging() - which is called regularly, within
the main accd loop.
# The boolean isCharging is available.
# Refer back to COMMAND EXAMPLES.