Skip to main content

ROS2 Explorer TUI

A Terminal User Interface (TUI) app for exploring ROS2 nodes, topics, services, actions, and message types.

Requirements

  • ROS2 Humble, Iron, or Jazzy already installed on system
  • pipx (sudo apt install pipx)

Installation

Install with pipx:

pipx install ros2-term --system-site-packages

Note: The --system-site-packages flag is required because ros2-term needs access to ROS2 Python packages (rclpy, ros2topic, etc.) which are installed at the system level and not available via PyPI.

Usage

Source your ROS2 installation, then run:

source /opt/ros/humble/setup.bash   # or iron, jazzy, etc.
ros2-term

Note: ROS2 must be sourced in any shell where you run ros2-term.

Command Line Options

ros2-term [--profile NAME] [--continue] [--refresh-rate SECONDS]
  • --profile NAME - Load specific profile on startup
  • --continue - Resume last used profile
  • --refresh-rate SECONDS - Set refresh interval (default: 2.0)
  • --help - Show available profiles and config location

Troubleshooting

If you have multiple Python versions installed and see import errors related to ROS2 packages, force pipx to use the system Python explicitly:

pipx install ros2-term --python $(which python3)

Features

  • Tree views for nodes/topics with expandable details
  • Topic watching (w) with spinning propeller showing publish rate
  • Topic inspection: Hz (h), echo (e), sample (s)
  • Profile system: Auto-save/load watched topics and views
  • Clickable links between entities (node → topic → type)
  • History navigation (b/f)
  • Search with regex support
  • Native rclpy integration (no subprocess overhead)

Key Components

  • ros2_client.py - Native rclpy integration with background executor
  • topic_watcher.py - Hz tracking and propeller animation
  • config.py - Profile persistence
  • widgets.py - In-place tree updates (no flicker)

Keyboard Shortcuts

Key Action Visible in Footer
? Show help screen
w Watch/unwatch topic
h Show Hz for topic
e Echo topic (continuous)
s Sample topic (single msg)
a Toggle array visibility
r Reload current view
b Navigate back in history
f Navigate forward in history
v Toggle verbose mode
c Collapse all tree nodes
p Save profile
1 View nodes
2 View topics
3 View services
4 View actions
5 View message types
q Quit

Navigation

  • Arrow keys navigate tree, Enter expands/collapses
  • Click entity names in info panel to navigate
  • b/f for history navigation
  • Tree state preserved when switching views

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ros2_term-0.1.3.tar.gz (45.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ros2_term-0.1.3-py3-none-any.whl (36.4 kB view details)

Uploaded Python 3

File details

Details for the file ros2_term-0.1.3.tar.gz.

File metadata

  • Download URL: ros2_term-0.1.3.tar.gz
  • Upload date:
  • Size: 45.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for ros2_term-0.1.3.tar.gz
Algorithm Hash digest
SHA256 8b0c36b009970461cd9fab9b24d89b850284ab3af816e1b416eadd7125dec990
MD5 f9002fbc06cb9ff7ddbd8c4263884ad8
BLAKE2b-256 b377937574d701f96d6f7a15d1a882bd361cb00f769a0710b08eb35d7034fe8c

See more details on using hashes here.

File details

Details for the file ros2_term-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: ros2_term-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 36.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for ros2_term-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e9c52af4fc70092b8e96ae731d474a6f3853b68ded6bf584f4c993cc4eb36de6
MD5 33a9b138ba24cd658271868f6c2ee084
BLAKE2b-256 85248c45bf590c3e8c2b80bddb5f832586b2e1ece139bc232e79f04faf1744a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page