cyme

Cross-platform USB device lister and profiler that extends lsusb with modern features and better output formatting.

install

Cyme is a cross-platform USB device profiler that serves as a modern replacement for the traditional lsusb command. It lists system USB buses and devices while providing full device descriptor information across Linux, macOS, and Windows platforms. The tool maintains compatibility with lsusb through the --lsusb flag while adding enhanced functionality.

The tool uses native Rust libraries (nusb for device profiling, udevrs for Linux device information) by default, eliminating external dependencies that plague traditional USB tools on non-Linux platforms. It supports multiple profiling backends including libusb and macOS system_profiler for different use cases. Cyme provides improved tree visualization with configurable verbosity levels that show devices, configurations, interfaces, and endpoints in a hierarchical format.

Key features include advanced filtering options (by name, serial, class, vendor ID), customizable display blocks for different descriptor types, colored output with UTF-8 characters and device icons, JSON export functionality, and a watch subcommand for monitoring USB hotplug events. The tool automatically scales output to terminal width and includes options for masking serial numbers when sharing device information.

Cyme targets embedded developers and system administrators who frequently work with USB devices and need reliable cross-platform USB enumeration. It addresses common limitations of existing tools like verbose output being too cluttered, poor tree formatting, and unreliable operation on non-Linux systems.

Installation

# via Homebrew
brew install cyme
# via Pacman
pacman -S cyme
# via Cargo
cargo install cyme

Cyme CLI tree output

Cyme demo

Alternatives & related tools

add a badge to your README

Maintain cyme? Show that it's featured on trmn. The badge links back to this page.

Featured on trmn
Markdown
[![Featured on trmn](https://www.trmn.sh/badge/cyme.svg)](https://www.trmn.sh/tools/cyme?utm_source=badge)
HTML
<a href="https://www.trmn.sh/tools/cyme?utm_source=badge"><img src="https://www.trmn.sh/badge/cyme.svg" alt="Featured on trmn" height="20"></a>