Simple environment variable loader for MicroPython board.
Project description
micropython-env
Simple environment variable loader for MicroPython board.
The loader could load environment variables from the one of file format as below:
- JSON (default) : The file name is "env.json" (text mode).
- MessagePack: The file name is "env" or "env.msgpack" (binary mode).
MessagePack
Note:
- MessagePack Array corresponds to Python Tuple, not List
Change in v0.2.0
MessagePack predefined extension types:
Name | Type | Support? |
---|---|---|
Timestamp | -1 |
X |
MessagePack application-specific extension types:
Name | Type | Support? | Description |
---|---|---|---|
List | 1 |
O | Python List, legth limit: 65535. New in v0.2.0 |
How to Use
from mpy_env import load_env, get_env, put_env
# Loading `env.json` at once as default.
# You can invoke below function in `boot.py`
load_env()
# or
load_env(0)
# You can loading environment variables from MessagePack as below.
load_env(1)
# In `main.py` or the other,
# You can invoke below function to get environment variable.
get_env('key')
# You can invoke below function to set environment variable in-memory.
put_env('tuple', ('a', 1))
Testing
Currentl testing environment:
- Python 3.7
- MicroPython unix port 1.12 & 1.13
- MicroPython esp32 port 1.12& 1.13
Before tesing, you need to compile Micopython unix port executable first, see offcial GitHub Wiki to setup.
After setup, you must set environment variable MPY_PATH
as path of local MicroPython repository.
Environment variable
MPY_PATH
is used in shell scriptbin/build_micropython.sh
We use mpfshell to interactive with MicroPython board, please install the latest release from PyPi.
pip install mpfshell
We use offcial MessagePack package to validate custom msgpack
module, please install the latest release from PyPi.
pip install msgpack
Next, clone the repository to your local machine.
git clone https://github.com/ShenTengTu/micropython-env.git
cd micropython-env
You can execute the follow command to build muitiple versions of MicroPython unix port.
export MPY_PATH=<local_micropython_repo> && make build-mpy
It will create symbolic links into user binaries directory after building.
To test on Python & MicroPython unix port, execute the command as below.
make testing
It will run testing on multiple MicroPython unix port versions.
To test on ESP32 board, execute the follow command.
make mpy-testing-esp32
It will run testing on multiple MicroPython esp32 port versions.
Development
See "Development guide" in CONTRIBUTING.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file micropython-mpy-env-0.2.0.tar.gz
.
File metadata
- Download URL: micropython-mpy-env-0.2.0.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 124a3e69e621dbc03ef22d9aee99b5961dc5b3bd3296a0d70d64ae0fd346cfe8 |
|
MD5 | 9590f141474b1286f36dec441bae89e3 |
|
BLAKE2b-256 | 63c9eeb7bdad09576530443af5ca5af24060ab87e7462727e15b45febab36f92 |