iot-firmware

WARNING: Package under development…

It provides a set of tools to simplify the creation, configuration of and IoT Firmware in the most robust and easy way. It uses async for all its operations. It requires Python 3.8+.

All notable changes to this project will be documented in the CHANGELOG.md file.

Documentation is available at Read the Docs.

Install

Library can be installed in many ways.

Python Package

PyPI

Install the latest pip package from GitHub.

pip install git+ssh://git@github.com/bonastreyair/iot-firmware.git

Local

It is required to clone the repo and then install from local.

pip install .

Usage

CLI - Command-line Interface

iot-firmware -h
usage: iot-firmware [-h] [-v] [-c CONFIG]

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -c CONFIG, --config CONFIG
                        path to the configuration

Python Code

from iot_firmware import Controller

config = {}

fw = Controller(config)
fw.start()

Contribute

Pre-commit

Make sure to run pre-commit run --all-files before any Pull Request. If you want you can set it up automatically in local before any commit with the following command.

pre-commit install

Tests

Make sure to run the tests using pytest. You can install the package dependencies with the [test] option so that you can run the test in local.

pip install .[test]

Docs

To build the docs in local you will need to install the package with the [docs] option.

pip install .[docs]

Then you can build it with

cd docs
python generate_graphs.py
make html
open build/html/index.html