Update README.md
This commit is contained in:
parent
a145035838
commit
1152fd9647
1 changed files with 41 additions and 1 deletions
42
README.md
42
README.md
|
@ -1,2 +1,42 @@
|
||||||
# boincAutoDischarger
|
# boincAutoDischarger
|
||||||
Use BOINC to artificially increase the number of battery cycles in your Mac
|
Use BOINC to artificially increase the number of battery cycles in your Mac.
|
||||||
|
|
||||||
|
# Installation requirements
|
||||||
|
- BOINC (of course);
|
||||||
|
- `boinccmd` (the CLI manager for BOINC), make sure that is is in your PATH;
|
||||||
|
- Python3 (`brew install python3`);
|
||||||
|
- [terminal-notifier](https://github.com/julienXX/terminal-notifier), for notifications;
|
||||||
|
- [iStats](https://github.com/Chris911/iStats) (optional), for integrated nice stats.
|
||||||
|
|
||||||
|
# Usage
|
||||||
|
- `./autodischarger.py` runs with a default refresh timeout of 10 seconds and no iStats;
|
||||||
|
- `./autodischarger.py [timeout] stats` runs with a refresh timeout of `[timeout]` seconds and iStats.
|
||||||
|
|
||||||
|
# Why?
|
||||||
|
My university provides all students with Macbooks with a free of charge (other than the tuition fee) lease. Since
|
||||||
|
if you have [AppleCare](https://www.apple.com/support/products/mac/) you are entitled to a free battery replacement when
|
||||||
|
your it reaches 80% of the original factory capacity, I have created this tool to moderately degrade the battery on my Mac
|
||||||
|
in order to get a free replacement just about when the AppleCare coverage will end.
|
||||||
|
|
||||||
|
If you have AppleCare and for some reason you too want to get a "free" battery, this is the tool for you.
|
||||||
|
|
||||||
|
# What
|
||||||
|
This is a ~200 line Python 3 script that uses `boinccmd` in order to change automatically the settings of BOINC in order to
|
||||||
|
maximize resource usage (and thus battery consumption) while your Mac is using battery power. BOINC will run with a 80% CPU
|
||||||
|
limit when your Macbook is on battery power with at least a 20% charge. Once the charge runs out, BOINC will slow down to 10% CPU usage and the script will send a notification telling you to plug the charger. Once you are charging, the script will start waiting for the battery to be at least 90% charged, and then will prompt you to disconnect the charger and the cycle will start again.
|
||||||
|
|
||||||
|
My setup uses a power strip to turn the charger manually on and off. I think the process can be entirely automated by using a smartplug and automating its activation from this script (e.g the TP-LINK HS100 has [this](https://github.com/GadgetReactor/pyHS100) open source python control library), but unfortunately I am currently not able to buy such a product both in a physical store or online and therefore I am tediously switching on and off the charger myself every hour (_I know_)
|
||||||
|
|
||||||
|
# This is not a finished product
|
||||||
|
Please feel free the hardcoded constant values for the charging thresholds and various BOINC config files. I have created this
|
||||||
|
script for personal use and I am just sharing it here for someone that is curious enough to hack it to their needs.
|
||||||
|
|
||||||
|
Another quick note: my AppleCare expiration date is hardcoded as well, feel free to change that.
|
||||||
|
|
||||||
|
I might be able polish this script in the following days, but I have a quite busy class schedule (albeit remote). So, if you
|
||||||
|
want, just create a pull request to tidy up this mess and I will accept it.
|
||||||
|
|
||||||
|
# Use at your own risk
|
||||||
|
I am not responsible if your Mac will be damaged in any way by using this script. Please be careful since this is a fairly
|
||||||
|
resource intensive setup and Macbooks are not exactly known for their amazing cooling system. Use at your own risk
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue