#real-time #copper #middleware #task

cu-consolemon

A monitoring TUI for Copper. See the main Copper repository for more information.

9 unstable releases (3 breaking)

0.6.2 Jan 30, 2025
0.6.1 Jan 30, 2025
0.5.1 Dec 5, 2024
0.4.1 Nov 15, 2024
0.3.1 Oct 12, 2024

#326 in Robotics

Download history 121/week @ 2024-11-13 23/week @ 2024-11-20 138/week @ 2024-11-27 203/week @ 2024-12-04 28/week @ 2024-12-11 6/week @ 2024-12-18 7/week @ 2025-01-08 63/week @ 2025-01-15 56/week @ 2025-01-22 368/week @ 2025-01-29 52/week @ 2025-02-05 47/week @ 2025-02-19 10/week @ 2025-02-26

127 downloads per month
Used in 4 crates (3 directly)

Apache-2.0 and maybe GPL-3.0-only

150KB
1.5K SLoC

ConsoleMon

Tasks

Note: This is part of the Copper project. See the main project page for context.

The ConsoleMon is a simple monitor that display the current state of the robot to the console in an TUI. It is useful for monitoring a robot quickly over ssh or in a terminal.

Usage

Add it as a dependency in your Cargo.toml:

[dependencies]
cu-consolemon = "*"

And in you copperconfig.ron:

(
    tasks: [
        ( ...
        ),
     ],
    cnx: [
        ( ... ),
    ],
    
    monitor: (
        type: "cu_consolemon::CuConsoleMon", // <== Here
    )
)

The monitor has 4 screens:

  • SysInfo: A quick system information screen (CPU, Memory, Distrib ...)
  • DAG: A Directed Acyclic Graph of the tasks with their real time error status and short string info.
  • Latencies: A list of the tasks with their real time latencies & assorted statistics (Jitter, Min, Max, Avg).
  • Debug Output debug_pane: A pane that displays debug logs in real-time.

debug_pane feature

Enabled by default. Disable with default-features = false. Displays real-time logs from log, cu29-log and stderr.

Dependencies

~28–63MB
~1M SLoC