Nxscope CLI client
Project description
Nxscli
Nxscli is a command-line client package for the Apache NuttX NxScope real-time logging module.
It is also a reusable Python runtime layer for NxScope streaming, channel
control, triggers, and plugin orchestration. The nxscli internals are used
by other tools (for example GUI applications) to build more advanced workflows
without re-implementing NxScope communication logic.
Compatible with Python 3.10+.
Features
- Plugins architecture, extendable through
nxscli.extensionsentrypoint - Client-based triggering (global and per-channel triggers)
- Save data to CSV files
- Save data to Numpy files (
pnpsave) and memmap files (pnpmem) - Print samples
- Stream data over UDP (compatible with PlotJuggler)
- NxScope protocol via serial port or Segger RTT interface
- Virtual channels and math operations on channels data
- Optional control server (
--control-server) for extensions
Features Planned
- More triggering types
- Boolean operations on triggers
- Improve
pdevinfooutput (human-readable prints) - Interactive mode
Plugins
By default, nxscli ships with core plugins including CSV, printer, UDP,
and NumPy file capture (pnpsave and pnpmem).
Additional functionality is expanded by installing optional plugins.
Plugins are automatically detected by Nxscli.
Available plugins:
- nxscli-mpl - Matplotlib extension
- nxscli-pqg - PyQtGraph extension
Plugins Planned
- Stream data as audio (inspired by audio knock detection systems)
Installation
Nxscli can be installed by running pip install nxscli.
To install latest development version, use:
pip install git+https://github.com/railab/nxscli.git
Usage
Look at docs/usage.
Reuse as a Library
nxscli is not only a CLI frontend. It can be imported and reused by external
applications that need:
- NxScope connection handling (serial/RTT and compatible interfaces)
- channel configuration and stream lifecycle control
- plugin loading and runtime execution
- trigger and data-processing orchestration
This makes nxscli the integration layer for higher-level tools such as
custom dashboards, GUIs, and automation scripts.
Contributing
All contributions are welcome to this project.
To get started with developing Nxscli, see CONTRIBUTING.md.
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 nxscli-1.0.1.tar.gz.
File metadata
- Download URL: nxscli-1.0.1.tar.gz
- Upload date:
- Size: 68.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c749b207fbe3ce8db13f4623cb7a7fac59719f14c3d8f7385b43e439f4895e89
|
|
| MD5 |
85082a598146f3327810168456b7921b
|
|
| BLAKE2b-256 |
492db383f0286bafaaf6f58a8b46fdde5aaf8718a848f5fe1048ec23b2196ff8
|
File details
Details for the file nxscli-1.0.1-py3-none-any.whl.
File metadata
- Download URL: nxscli-1.0.1-py3-none-any.whl
- Upload date:
- Size: 72.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1b9dffff0e607fcef2ea365feb3d236c791ab2cd465ae3441f62c9acdc6b94b
|
|
| MD5 |
ddc99313003ffb8704f46a0a77f9e09e
|
|
| BLAKE2b-256 |
887bdb1b2330a7e52ba4f89ddce98abde9eddb03c26fa4221a8f9de4ded45f47
|