Skip to main content

py-reg-map

PyPI Python CI License: MIT

Register map generator for embedded firmware. A YAML file describes the device registers; regmap generates the C storage and Modbus RTU sources for the firmware (reg_map.h/.c, mb_rtu_app.h/.c) and the JSON definitions for the LeBin and Modbus RTU communication software.

Installation

Python 3.12 or newer. Install from PyPI:

pip install py-reg-map
pip install "py-reg-map[xlsx]"   # with Excel import

The latest development version comes straight from GitHub:

pip install "py-reg-map @ git+https://github.com/LogicElements/py-reg-map"

Usage

Start a new register map:

regmap init MyDevice                              # -> mydevice.yaml

Migrate an existing Excel register map (once):

regmap import-xlsx Documents/Vms1511.xlsm        # -> Documents/vms1511.yaml

Generate all outputs after editing the map, then commit them:

regmap generate Documents/vms1511.yaml
regmap generate Documents/vms1511.yaml --check              # CI: are the committed outputs current?
regmap generate Documents/vms1511.yaml --allow-id-change    # accept intended ID/Modbus changes

Add the firmware communication library (LeBin, Modbus RTU slave) to the firmware project:

regmap export-lib Core/RegMap

Editor completion for the YAML format:

regmap schema -o Documents/regmap.schema.json

Documentation

Start at doc/index.md: YAML format, command line, outputs, firmware library and development guide.

License

MIT © 2026 Logic Elements s.r.o

Metadata

Release files for py-reg-map 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for py-reg-map 0.2.0
File Size Uploaded
py_reg_map-0.2.0.tar.gz 489.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for py-reg-map 0.2.0
File Interpreter ABI Platform
py_reg_map-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 566.4 kB

Release files / py_reg_map-0.2.0.tar.gz

Download URL py_reg_map-0.2.0.tar.gz
Size 489.3 kB
Tags Source
SHA-256 checksum
How to use checksums
192ef17de881a6b70b70c63012af9272f58bb8083c0f38baa14d05122dbeea64
BLAKE2b-256 checksum
How to use checksums
cd9d2aed1b8b1d544c47bfb7cd74c87063e8c8e4261507589146256c3b456034
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / py_reg_map-0.2.0-py3-none-any.whl

Download URL py_reg_map-0.2.0-py3-none-any.whl
Size 77.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9e5447df19c916f60e1c5c883fbbad5db7e30c8d58cbf8e6edfbd27bc504459f
BLAKE2b-256 checksum
How to use checksums
e720beac5a74abf6e3acb3f37eaa59997c46de897e04d9fe0c18de298de6d722
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page