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 details)

Uploaded Source

Built Distribution

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

Uploaded Python 2 Python 3

File details

Details for the file axp209-0.1.tar.gz.

File metadata

  • Download URL: axp209-0.1.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3

File hashes

Hashes for axp209-0.1.tar.gz
Algorithm Hash digest
SHA256 7e6664766954cfad99500e58399cc1f826e5423a91ed41970abb0fb38f40fd3b
MD5 583df4d0e82235a7221a2d544869b06c
BLAKE2b-256 87388ba45c4669d3c0af6790e206c81491a7987883b5abe9105d6f1878c35f89

See more details on using hashes here.

File details

Details for the file axp209-0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: axp209-0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3

File hashes

Hashes for axp209-0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8a9381838de4bc683ec7dc574057438f4974f742d1cae238e1bebddb38fdccfb
MD5 34740b9695d38fb7ec61612f1c452dc6
BLAKE2b-256 aaa0798e9f09365b33194494aaa0fb6a6c23ea061f00c7eb29c987a61fb919a9

See more details on using hashes here.

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