Skip to main content

Curses- and Tkinter-based tool for configuring STM32 pins.

This tool uses a fork of the amazing curated .xml from the modm-devices project. The modm-devices project provides metadata about all STM32 devices in machine-parseable .xml format and is really what makes any tool like this one possible.

Installing:

pip3 install stm_layout

Usage:

stm_layout -c <chip_name>

If chip_name is not fully-specified (i.e. ‘stm32g474’ is only a partial chip name), then a list of available chips matching that part will be printed to stdout. If the chip name is fully-specified, (i.e. ‘stm32g474cet6’), then a curses UI will be brought up for browsing/searching pins and configuring them.

Navigate using the arrow keys and the tab key. Search using standard regex queries in the search bar. In any pane but the search pane:

q - quits
w - writes /tmp/stm32_pinout.txt
r - resets the current pin

The stm32_pinout.txt is an attempt to configure all the GPIO registers for your chip; it is woefully incomplete for anything except the H7 and G4 chips I have access to.

Usage:

stm_layout_tk -c <chip_name>

This command launches a Tkinter-based version of stm_layout that allows mouse navigation and a more compact display for larger MCUs. It does not attempt to implement the pin-configuration “feature” that the curses-based tool does and is more useful as a simple reference.

Metadata

Release files for stm-layout 0.1.4

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

Source distribution (sdist)

Source distribution for stm-layout 0.1.4
File Size Uploaded Provenance
stm_layout-0.1.4.tar.gz 15.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for stm-layout 0.1.4
File Interpreter ABI Platform
stm_layout-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 34.9 kB

Release files / stm_layout-0.1.4.tar.gz

Download URL stm_layout-0.1.4.tar.gz
Size 15.9 kB
Tags Source
SHA-256 checksum
How to use checksums
0ce9d735c349bb16fb2d7f99bd4cfd5824c55aedebf54204b5fcba8343d780fb
BLAKE2b-256 checksum
How to use checksums
473b919b3679a6fe0c30b479c5207c64e778188518fe1fab0db51967c73aa8a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

Release files / stm_layout-0.1.4-py3-none-any.whl

Download URL stm_layout-0.1.4-py3-none-any.whl
Size 19.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cb7fb436ad350d9dc53ca7831ef6d28d0bdea23281c0bd80bb8c134f3f928d69
BLAKE2b-256 checksum
How to use checksums
ee9ea3e98007f9167a41637054611d9f6b0d9ea5ce0afe56949508430d51639f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

Security for stm-layout 0.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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