Skip to main content

axp209 is a pure python library for getting information from AXP209 Power Management Unit

Project description

AXP209 is a pmu that is used on quite few Allwinner embeded boards, like C.H.I.P and Cubietruck.

Because currently the sysfs api for AXP209 is in flux I wrote this library that bypasses the kernel and directly talks to the AXP209 over I2C bus using smbus2 library.

This library runs on both Python 2.7 and Python 3

Installation

pip install axp209

SMBus bus number/object

The default SMBus object set in this library is an integer 0. You might need to change to another integer[like 1] depending on your system, or pass an object. e.g. axp = AXP209(1) for the Olimex A20-SOM204.

Examples

>>> from axp209 import AXP209
>>> axp = AXP209()
>>> axp.battery_voltage
4144.8
>>> axp.battery_discharge_current
269.0
>>>

Read and print out all the battery status values

from axp209 import AXP209

axp = AXP209()
print("internal_temperature: %.2fC" % axp.internal_temperature)
print("battery_exists: %s" % axp.battery_exists)
print("battery_charging: %s" % ("charging" if axp.battery_charging else "done"))
print("battery_current_direction: %s" % ("charging" if axp.battery_current_direction else "discharging"))
print("battery_voltage: %.1fmV" % axp.battery_voltage)
print("battery_discharge_current: %.1fmA" % axp.battery_discharge_current)
print("battery_charge_current: %.1fmA" % axp.battery_charge_current)
print("battery_gauge: %d%%" % axp.battery_gauge)
axp.close()

Blink CHIP status led

from time import sleep
from axp209 import AXP209

with AXP209() as axp:
    while True:
        axp.gpio2_output = False
        sleep(1)
        axp.gpio2_output = True
        sleep(1)

There is also a commandline utility than you can use after installing it

root@sumochip1:~# axp209
internal_temperature: 67.00C
battery_exists: True
battery_charging: charging
battery_current_direction: discharging
battery_voltage: 3974.3mV
battery_discharge_current: 0.0mA
battery_charge_current: 0.0mA
battery_gauge: 76%
root@sumochip1:~#

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

axp209-0.1.tar.gz (4.7 kB view hashes)

Uploaded Source

Built Distribution

axp209-0.1-py2.py3-none-any.whl (5.7 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page