Skip to main content

tycmd-wrapper

A thin Python wrapper for tycmd by Niels Martignène - a tool for managing Teensy USB Development Boards by PJRC.

Installation

pip install tycmd-wrapper

This will install tycmd-wrapper along with the necessary tycmd binary for your system.

tycmd-wrapper requires Python 3.10 or later. Supported platforms are:

  • Linux (x86_64, arm64)
  • macOS (Intel, Apple Silicon)
  • Windows (x86_64)

Examples

Identifying a firmware file

To identify which models are compatible with a specific firmware file, use the identify() method.

import tycmd
compatible_models = tycmd.identify('blink.hex')

Models compatible with the firmware file will be returned as a list of strings:

['Teensy 4.0', 'Teensy 4.0 (beta 1)']

List Available Boards

To list all available boards, use the list_boards() method.

import tycmd
boards = list_boards()

Details for the available boards will be returned as a list of python dictionaries.

[
    {
        'action': 'add',
        'tag': '3576040-Teensy',
        'serial': '3576040',
        'description': 'USB Serial',
        'model': 'Teensy 3.1',
        'location': 'usb-1-4',
        'capabilities': ['unique', 'run', 'reboot', 'serial'],
        'interfaces': [['Serial', '/dev/ttyACM1']],
    },
    {
        'action': 'add',
        'tag': '14014980-Teensy',
        'serial': '14014980',
        'description': 'USB Serial',
        'model': 'Teensy 4.0',
        'location': 'usb-1-3',
        'capabilities': ['unique', 'run', 'rtc', 'reboot', 'serial'],
        'interfaces': [['Serial', '/dev/ttyACM0']],
    },
]

Uploading a firmware file

To upload a firmware file to a board, use the upload() method. You can specify a board by its port or by its serial number.

import tycmd
import logging

logging.basicConfig(level=logging.INFO)
tycmd.upload('blink.hex', port='/dev/ttyACM0')

The upload progress will be logged:

INFO:tycmd:Uploading to board '14014980-Teensy' (Teensy 4.0)
INFO:tycmd:Triggering board reboot
INFO:tycmd:Firmware: blink40.hex
INFO:tycmd:Flash usage: 19 kiB (1.0%)
INFO:tycmd:Uploading...
INFO:tycmd:Sending reset command (with RTC)

Full Documentation

The full API documentation is available here.

License Coverage CI PyPI

Metadata

Release files for tycmd-wrapper 0.3.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 tycmd-wrapper 0.3.0
File Size Uploaded
tycmd_wrapper-0.3.0.tar.gz 41.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for tycmd-wrapper 0.3.0
File
tycmd_wrapper-0.3.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
tycmd_wrapper-0.3.0-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
tycmd_wrapper-0.3.0-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details
tycmd_wrapper-0.3.0-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
tycmd_wrapper-0.3.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 991.1 kB

Release files / tycmd_wrapper-0.3.0.tar.gz

Download URL tycmd_wrapper-0.3.0.tar.gz
Size 41.2 kB
Tags Source
SHA-256 checksum
How to use checksums
6cfb0f52c2d7da81c343ecac6b810d3b2b0221058877216a2bf890253521f591
BLAKE2b-256 checksum
How to use checksums
278bf117c49113aab6c470acc8bfc54326c8b1d08c869da1d991fa8977f8d793
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / tycmd_wrapper-0.3.0-py3-none-win_amd64.whl

Download URL tycmd_wrapper-0.3.0-py3-none-win_amd64.whl
Size 340.8 kB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
ac6dd7db99af29ec2e0c8b59f598fbd676ddc097de595c2375b515a48b819c59
BLAKE2b-256 checksum
How to use checksums
610a49d83522584a838471a34bbba7fcf1262423d58011b91d3b6014f9044d6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / tycmd_wrapper-0.3.0-py3-none-manylinux_2_28_x86_64.whl

Download URL tycmd_wrapper-0.3.0-py3-none-manylinux_2_28_x86_64.whl
Size 238.7 kB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
05b3a24d9b9097da0eba8ff6855848ccc402500ac41171257a6b275076cca517
BLAKE2b-256 checksum
How to use checksums
e96575cc999be21bad52acafdbb9d3266a874c9d8751223c5a1689efdf81e5ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / tycmd_wrapper-0.3.0-py3-none-manylinux_2_28_aarch64.whl

Download URL tycmd_wrapper-0.3.0-py3-none-manylinux_2_28_aarch64.whl
Size 240.0 kB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
29d319a673587c66d35a35870bb82832ee15a49b21c92a9c0082aaf9cb5f321e
BLAKE2b-256 checksum
How to use checksums
fe5f92e71424c1d0a7ae5a15195e46a9cd7d4da84eef684c6556a6f75a4ffc90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / tycmd_wrapper-0.3.0-py3-none-macosx_11_0_x86_64.whl

Download URL tycmd_wrapper-0.3.0-py3-none-macosx_11_0_x86_64.whl
Size 66.2 kB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
499e6406e61580acb8f543f2cb1c8cb99edf50a9eff779e476f49602f2524180
BLAKE2b-256 checksum
How to use checksums
4e704076e797f05afa47901cdd148588133e330c1a310b0dd3139546f6f989ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / tycmd_wrapper-0.3.0-py3-none-macosx_11_0_arm64.whl

Download URL tycmd_wrapper-0.3.0-py3-none-macosx_11_0_arm64.whl
Size 64.1 kB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6c5eac21273a8175c8b8efce37b2e9c553788ca24fed6858dc61c4f2729515af
BLAKE2b-256 checksum
How to use checksums
8de799df3a5f654f9916d8f0b86ac7a56ec2185618a8bf089b44c04d56a45067
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.1

6 release files

This release

0.3.0 This release

6 release files

0.2.1

3 release files

0.2.0

3 release files

0.1.2

3 release files

0.1.1

3 release files

0.1.0

3 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