Skip to main content

firmware-lifter

Semi-automated firmware transfer to a target device.

Usage

Place these files in your project root:

.firmware-lifter-profiles.yaml

profiles:
  debug:
    image: build/debug.bin
    pre_transfer: make build-debug
  release:
    image: build/release.bin

.firmware-lifter-transport.yaml

transport:
  type: gdb
  details:
    gdb_binary: arm-none-eabi-gdb
    target: localhost:3333

Run firmware-lifter list to show available profiles and firmware-lifter run debug to execute one.

Standalone Uploads

Upload an image without project configuration using firmware-lifter upload:

firmware-lifter upload gdb firmware.elf --target localhost:3333
firmware-lifter upload openocd firmware.bin --openocd-binary openocd --config-file board.cfg --config-file target.cfg
firmware-lifter upload stm32flash firmware.bin --stm32flash-binary stm32flash --device /dev/ttyUSB0 --baudrate 115200
firmware-lifter upload custom firmware.bin --template 'my-flasher --image "{{image}}"'

gdb accepts optional --gdb-binary (default: gdb-multiarch), and custom accepts optional --shell (default: /bin/sh). Custom templates support the placeholders listed below; the standalone profile name is standalone.

Supported transports:

  • gdb: target, optional gdb_binary defaulting to gdb-multiarch
  • openocd: openocd_binary, config_files
  • stm32flash: stm32flash_binary, device, baudrate
  • custom: template, optional shell

Custom templates support placeholders like {{image}}, {{profile}}, {{project_root}}, and transport detail keys.

See examples/ for complete configurations for different transports. The profile example file examples/.firmware-lifter-profiles.yaml is usable for all transports.

Contributing

See CONTRIBUTING.md for developer-related documentation.

License

This project is licensed under GNU GPL v3 or later. See LICENSE for the full text.

Metadata

Release files for firmware-lifter 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 firmware-lifter 0.2.0
File Size Uploaded Provenance
firmware_lifter-0.2.0.tar.gz 22.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for firmware-lifter 0.2.0
File Interpreter ABI Platform
firmware_lifter-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 41.5 kB

Release files / firmware_lifter-0.2.0.tar.gz

Download URL firmware_lifter-0.2.0.tar.gz
Size 22.2 kB
Tags Source
SHA-256 checksum
How to use checksums
da2f0d883495dfcdb4904d4db252af85c6b057f9c6844fd0e8a871fafeb1c6c6
BLAKE2b-256 checksum
How to use checksums
c268e634f763a303799f580d04cba4bea3166d410f6d1c1057df37169b401330
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

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

Download URL firmware_lifter-0.2.0-py3-none-any.whl
Size 19.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
27ec4aae9931ca548e7c339eda9638376f3f3a79dc3521dc24eb7ab41a5dc935
BLAKE2b-256 checksum
How to use checksums
961a50be1b69c1e3e0f8cedaf6841a9cdc694a2ca9326d07b8a6249b3a09963e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Security for firmware-lifter 0.2.0

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