Repository
Munin (contrib)
Last change
2020-10-05
Graph Categories
Capabilities
Keywords
Language
Shell
License
GPL-2.0-only
Authors

battery_

Name

battery_ - monitor battery status via the uevent API

Configuration

It is a wildcard plugin, symlink it into the plugins directory.

[battery_*]
env.percent no

By default the charge current is displayed as mAh, but you can also use percentage if you prefer, by setting the environment variable “percent” to “yes”.

Authors

Copyright 2015 Steve Schnepp steve.schnepp@pwkf.org

License

GNU Library General Public License v2 only

SPDX-License-Identifier: GPL-2.0-only

#! /bin/sh

: <<=cut

=head1 NAME

battery_ - monitor battery status via the uevent API


=head1 CONFIGURATION

It is a wildcard plugin, symlink it into the plugins directory.

 [battery_*]
 env.percent no

By default the charge current is displayed as mAh, but you can also use percentage if you
prefer, by setting the environment variable "percent" to "yes".


=head1 AUTHORS

Copyright 2015 Steve Schnepp <steve.schnepp@pwkf.org>


=head1 LICENSE

GNU Library General Public License v2 only

SPDX-License-Identifier: GPL-2.0-only

=cut

battery_name=${0##*_}
percent=${percent:-"no"}

if [ "$1" = "config" ]
then
	echo "graph_title Battery $battery_name"
  echo "graph_category sensors"
	if [ "$percent" = "yes" ]
	then
		echo "graph_vlabel %"
	else
		echo "graph_vlabel mAh"
	fi

	echo "charge_design.label Design charge"
	echo "charge_design.draw AREA"
	[ "$percent" = "yes" ] && echo "charge_design.cdef charge_design,charge_design,/,100,*"

	echo "charge_full.label Full charge"
	echo "charge_full.draw AREA"
	[ "$percent" = "yes" ] && echo "charge_full.cdef charge_full,charge_design,/,100,*"
	echo "charge_now.label Current charge"
	echo "charge_now.draw AREA"
	[ "$percent" = "yes" ] && echo "charge_now.cdef charge_now,charge_design,/,100,*"

	exit 0
fi

# Crudely read all the vars into the current namespace
. /sys/class/power_supply/$battery_name/uevent

echo "charge_design.value $(( $POWER_SUPPLY_CHARGE_FULL_DESIGN / 1000 )) "
echo "charge_full.value $(( $POWER_SUPPLY_CHARGE_FULL / 1000 ))"
echo "charge_now.value $(( $POWER_SUPPLY_CHARGE_NOW / 1000 ))"

exit 0


:<< DATA
cat /sys/class/power_supply/$1/uevent
POWER_SUPPLY_NAME=CMB1
POWER_SUPPLY_STATUS=Charging
POWER_SUPPLY_PRESENT=1
POWER_SUPPLY_TECHNOLOGY=Li-ion
POWER_SUPPLY_CYCLE_COUNT=0
POWER_SUPPLY_VOLTAGE_MIN_DESIGN=10800000
POWER_SUPPLY_VOLTAGE_NOW=11418000
POWER_SUPPLY_CURRENT_NOW=2668000
POWER_SUPPLY_CHARGE_FULL_DESIGN=5200000
POWER_SUPPLY_CHARGE_FULL=5000000
POWER_SUPPLY_CHARGE_NOW=100000
POWER_SUPPLY_CAPACITY=2
POWER_SUPPLY_CAPACITY_LEVEL=Normal
POWER_SUPPLY_MODEL_NAME=CP293570
POWER_SUPPLY_MANUFACTURER=Fujitsu
DATA