HARDWARIO Real Time Transfer Terminal Console
Project description
HARDWARIO Real Time Transfer Terminal Console
Overview
HARDWARIO Real Time Transfer Terminal Console (rttt) is a Python package that provides an interface for real-time data transfer using SEGGER J-Link RTT (Real-Time Transfer) technology. It enables efficient data communication between an embedded system and a host computer via RTT channels.
This package is particularly useful for debugging, logging, and real-time data visualization in embedded applications.
Features
- Real-time communication with embedded devices via RTT.
- Support for multiple RTT buffers (console and logger).
- Adjustable latency for optimized readout.
- J-Link support with configurable serial numbers, device types, and speeds.
- Command-line interface (CLI) for quick and easy access.
- Easy installation via PyPI.
Installation
To install the package, use:
pip install rttt
To verify the installation, run:
rttt --help
Usage
Basic Command
To start the RTT console:
rttt --device <DEVICE_NAME>
Available Options
Usage: rttt [OPTIONS]
HARDWARIO Real Time Transfer Terminal Console.
Options:
--version Show the version and exit.
--serial SERIAL_NUMBER J-Link serial number.
--device DEVICE J-Link Device name.
--speed SPEED J-Link clock speed in kHz. [default: 2000]
--reset Reset application firmware.
--address ADDRESS RTT block address.
--terminal-buffer INTEGER RTT Terminal buffer index. [default: 0]
--logger-buffer INTEGER RTT Logger buffer index. [default: 1]
--latency INTEGER Latency for RTT readout in ms. [default: 50]
--history-file PATH Path to history file. [default: ~/.rttt_history]
--console-file PATH Path to console file. [default: ~/.rttt_console]
--mcp / --no-mcp Enable MCP server. [default: no-mcp]
--mcp-listen TEXT MCP server listen address [host:]port. [default: 127.0.0.1:8090]
--help Show this message and exit.
Examples
Connect to a device (replace NRF52840_xxAA with your actual device name):
rttt --device NRF52840_xxAA
Use a specific J-Link serial number:
rttt --device NRF52840_xxAA --serial 123456789
Configuration File
RTTT supports configuration via a .rttt.yaml file, which can be placed in the working directory, the home directory (~/.rttt.yaml), or the user configuration directory (~/.config/rttt.yaml). The file is loaded from the first available location in this order—working directory first, then home, then config. If no configuration file is found, default settings are used.
Example Configuration:
device: NRF9151_XXCA
console_file: "test.log"
With this configuration, simply running:
rttt
MCP Server (AI Integration)
RTTT includes a built-in Model Context Protocol (MCP) server that allows AI tools (Claude, Cursor, etc.) to interact with your embedded device via RTT.
MCP server is enabled by default. Start RTTT as usual:
rttt --device NRF52840_xxAA --mcp
Claude Code Configuration
Add to your .mcp.json:
{
"mcpServers": {
"rttt": {
"type": "http",
"url": "http://127.0.0.1:8090/mcp"
}
}
}
Available MCP Tools
| Tool | Description |
|---|---|
send_command(command, timeout) |
Send a shell command to the device and wait for response |
read_terminal(lines) |
Read recent terminal output (device responses and sent commands) |
read_log(lines, after_cursor, pattern) |
Read log output from the device ring buffer, with optional regex filter |
status() |
Get session statistics (line counts, buffer usage, cursors) |
flash(file_path, addr) |
Flash a firmware file (.hex, .bin, .elf, .srec) to the target device |
License
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤ by HARDWARIO a.s. in the heart of Europe.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rttt-1.4.0.tar.gz.
File metadata
- Download URL: rttt-1.4.0.tar.gz
- Upload date:
- Size: 18.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9db7ecde22b57b33254f6ebc009107f32c3ebcb2ffe67828b782086df2c47df7
|
|
| MD5 |
a7785b4c068f717305d93e33e0947b56
|
|
| BLAKE2b-256 |
b5e9554ddb59df905bebd1dbab4a75b6b4fcda0d498e6ba523606fe204616aa7
|
Provenance
The following attestation bundles were made for rttt-1.4.0.tar.gz:
Publisher:
publish.yaml on hardwario/py-rttt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
rttt-1.4.0.tar.gz -
Subject digest:
9db7ecde22b57b33254f6ebc009107f32c3ebcb2ffe67828b782086df2c47df7 - Sigstore transparency entry: 954779671
- Sigstore integration time:
-
Permalink:
hardwario/py-rttt@40653970e62167b27fe4d5dc6d22c5873a0346ec -
Branch / Tag:
refs/tags/v1.4.0 - Owner: https://github.com/hardwario
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yaml@40653970e62167b27fe4d5dc6d22c5873a0346ec -
Trigger Event:
push
-
Statement type:
File details
Details for the file rttt-1.4.0-py3-none-any.whl.
File metadata
- Download URL: rttt-1.4.0-py3-none-any.whl
- Upload date:
- Size: 21.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c039cc2a72688524e2e4b678dce626775f55900a5b5ce49eb3980aedd18fd958
|
|
| MD5 |
5a44620838b085fad7720f4005f59d17
|
|
| BLAKE2b-256 |
8a671a8133a380b35b2e216f597c05a9ac19516f65768a4704d082400b1b43a3
|
Provenance
The following attestation bundles were made for rttt-1.4.0-py3-none-any.whl:
Publisher:
publish.yaml on hardwario/py-rttt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
rttt-1.4.0-py3-none-any.whl -
Subject digest:
c039cc2a72688524e2e4b678dce626775f55900a5b5ce49eb3980aedd18fd958 - Sigstore transparency entry: 954779729
- Sigstore integration time:
-
Permalink:
hardwario/py-rttt@40653970e62167b27fe4d5dc6d22c5873a0346ec -
Branch / Tag:
refs/tags/v1.4.0 - Owner: https://github.com/hardwario
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yaml@40653970e62167b27fe4d5dc6d22c5873a0346ec -
Trigger Event:
push
-
Statement type: