Skip to main content

Low level library for communication with the Batlab V1.0 Battery Testing System by Lexcelon

Project description

[master] master-build [develop] develop-build

https://badge.fury.io/py/batlab.svg Documentation Status

batlab-software-python is a Python library and example command line script to interact with a pool of Batlabs over USB. This tool is designed for hobbyists and more advanced users who would like to incorporate the Batlab hardware in their own cell testing workflow or environment.

Requirements

Python >=3.4 is supported by this module.

Python 2 is not supported.

Installation

To install the latest release you can use pip:

$ pip install batlab

To upgrade, you can run either of:

$ pip install batlab --upgrade
$ pip install batlab -U

Documentation

Documentation for this library is hosted at Read the Docs. Please go there to find this README as well as the available documentation for classes and methods within this library.

Usage

The library can be imported into your own programs, or you may use the provided example Batlab Utility Script.

Batlab Utility Script

The Batlab Utility Script allows users to perform basic interactions with a pool of connected Batlab units through a simple command-line interface.

To run the script, make sure the batlab package is installed and then run:

$ batlabutil

Type help to display the list of commands in the script and how to use them. The intention for the script is to serve as an example for users to write their own battery cell test software using the Batlab library.

Contributing

When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository.

Git branching model

We follow the development model described here. Anything in the master branch is considered production. Most work happens in the develop branch or in a feature branch that is merged into develop before being merged into master.

Documenting

Please document code (notably functions and classes) using doc strings according to the Google Python Style Guide standards. This will ensure that your notes are automatically picked up and included in the generated documentation.

Running tests

To run the unit tests, from the root directory run:

$ python setup.py test

Deployment

This library is deployed to PyPi. Builds are generated with Travis CI with each pushed commit. When a new tag is pushed or merged into master, that build is automatically deployed to end users through PyPi.

To publish a new version, the workflow might look like this. First make your changes:

$ git commit -am "some changes to the develop branch"

Then, update setup.py and docs/source/conf.py with the new version number (in this case we will use the example 0.100.56). Make a commit with these changes and push it to GitHub:

$ git commit -am "rev version number to 0.100.56"
$ git push origin develop

Then you must wait a couple of minutes to make sure the build passes on Travis. If the build fails, you will not be able to merge the commit into master. Once the build passes, you can merge into master, create a tagged release and push. When merging, use --no-ff to preserve the commit and branching history:

$ git checkout master
$ git merge --no-ff develop
$ git tag v0.100.56
$ git push origin master
$ git push --tags

Changes should automatically roll out to PyPi, and any documentation included in your code will automatically roll out to Read the Docs.

License

This library is licensed under LGPL-3.0 - see LICENSE for details.

Acknowledgements

Thank you to our backers on Kickstarter who made this project possible.

Documentation created with guide from Sam Nicholls.

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

batlab-0.5.36.tar.gz (41.4 kB view details)

Uploaded Source

Built Distribution

batlab-0.5.36-py2.py3-none-any.whl (33.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file batlab-0.5.36.tar.gz.

File metadata

  • Download URL: batlab-0.5.36.tar.gz
  • Upload date:
  • Size: 41.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.20.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.3

File hashes

Hashes for batlab-0.5.36.tar.gz
Algorithm Hash digest
SHA256 53250cb9d91f7ec40fea9f2461aebe9513406bf7f56b70ecc60c7e174319e810
MD5 8c320dd7b425e14d4773d8cc6bbb38b5
BLAKE2b-256 276f87e35b7c10a1e45a798de740f014d39560f66d97415e83940fd14c03346e

See more details on using hashes here.

File details

Details for the file batlab-0.5.36-py2.py3-none-any.whl.

File metadata

  • Download URL: batlab-0.5.36-py2.py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.20.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.3

File hashes

Hashes for batlab-0.5.36-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9912dc26b20e49cdad8017b1be95a0ff4d5c8d751c398ca692bbcb2374f5c789
MD5 f21fb619a951129ae08254536a3c1d64
BLAKE2b-256 9612d7d66adda6cd9275876c1547d2526ccfa980d6f7bb99d9d8ac4ab7660c91

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