Files
video-setup/docs/cli/transport_cli.md
mikael-lovqvists-claude-agent 44090c1d6d docs: write CLI docs for all 12 previously undocumented tools
Add docs/cli/ entries for:
  transport_cli, discovery_cli, config_cli, protocol_cli, query_cli,
  test_image_cli, xorg_cli, v4l2_view_cli, stream_send_cli,
  stream_recv_cli, reconciler_cli, controller_cli

Each doc covers: description, build instructions, full usage with all
options and defaults, example output, and a relationship note pointing
to related tools. controller_cli includes the display control IDs table
and notes its temporary status.

README.md: convert all CLI tool entries to links.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 00:45:27 +00:00

1.3 KiB

transport_cli

A development tool for exercising the transport layer. Starts a framed-TCP server (which echoes received frames) or a client that connects and sends a sequence of test frames.


Build

From the repository root:

make cli

The binary is placed in build/cli/.


Usage

Server mode

Listen on a port and echo back every frame received:

./transport_cli server <port> [max_connections]

Example:

./transport_cli server 8000

Output (per received frame):

received frame: type=0x0001 len=8

Client mode

Connect to a server and send three test frames:

./transport_cli client <host> <port>

Example:

./transport_cli client 127.0.0.1 8000

Each frame carries a fixed payload with a counter:

frame 0: payload = deadbeef 00000000
frame 1: payload = deadbeef 00000001
frame 2: payload = deadbeef 00000002

Relationship to the Video Routing System

transport_cli exercises the transport module, which provides the framed TCP stream used by all node-to-node communication. The frame header (message type + payload length) and single-write send are the building blocks for the protocol layer.

See also: protocol_cli.md for typed message-level testing.