]> gitweb.fluxo.info Git - scripts.git/commitdiff
Adding limbat
authorSilvio Rhatto <rhatto@riseup.net>
Mon, 12 May 2014 20:45:31 +0000 (17:45 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Mon, 12 May 2014 20:45:31 +0000 (17:45 -0300)
limbat [new file with mode: 0755]

diff --git a/limbat b/limbat
new file mode 100755 (executable)
index 0000000..5541d05
--- /dev/null
+++ b/limbat
@@ -0,0 +1,60 @@
+#!/bin/sh
+
+function usage() {
+  echo "Usage: ${0} [--help | option]"
+  echo "Options are:"
+  echo "  show            show current charge thresholds."
+  echo "  limit           start charging at 30% and stop at 85%."
+  echo "  normal          start charging at 96% and stop at 100%."
+  exit ${1}
+}
+
+# validate command line options
+if [[ (${#} -eq 1            \
+       && "${1}" != "--help" \
+       && "${1}" != "normal" \
+       && "${1}" != "limit"  \
+       && ${1} != "show") ]]; then
+  usage 1
+fi
+
+# show help
+if [ "${1}" == "--help" ]; then
+  usage 0
+fi
+
+# get action
+action="show"
+if [ "${1}" != "" ]; then
+    action=${1}
+fi
+
+function show_thresholds() {
+  echo -n "Low threshold: "
+  cat /sys/devices/platform/smapi/BAT0/start_charge_thresh
+  echo -n "High threshold: "
+  cat /sys/devices/platform/smapi/BAT0/stop_charge_thresh
+}
+
+function set_thresholds() {
+  START_THRESH=${1}
+  STOP_THRESH=${2}
+  sudo sh -c "echo ${START_THRESH} > /sys/devices/platform/smapi/BAT0/start_charge_thresh"
+  sudo sh -c "echo ${STOP_THRESH} > /sys/devices/platform/smapi/BAT0/stop_charge_thresh"
+}
+
+# do your thang
+sudo modprobe tp_smapi
+
+THRESHOLDS=""
+if [ "${action}" == "normal" ]; then
+  THRESHOLDS="96 100"
+elif [ "${action}" == "limit" ]; then
+  THRESHOLDS="30 85"
+fi
+
+if [ ! -z "${THRESHOLDS}" ]; then
+  set_thresholds ${THRESHOLDS}
+fi
+
+show_thresholds