OpenCyphal / OpenCyphal/yakut

Add a command for port configuration

Open
#75 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature
Dominant language
Python
Stars
65
Forks
14
PR merge metrics
No merged PRs in 30d

Description

Currently, to set up a port or to check its configuration, one has to type a lot of characters:

$ y r 125 uavcan.pub.dynamics.id
65535

$ y r 125 uavcan.pub.dynamics.id 120
120

This should be improved with a dedicated helper command ("L" is for "link"):

$ y l 125 p dynamics            # Displays the port:type tuple per standard notation
65535:zubax.physics.dynamics.DoF3rdTs.1.0

$ y l 125 p dynamics 120        # Changes and displays the result
120:zubax.physics.dynamics.DoF3rdTs.1.0

$ y l 125 p                     # Display all publishers on this node as a dict
dynamics: 120:zubax.physics.dynamics.DoF3rdTs.1.0
dq: 65535:zubax.telega.DQ.1.0
...

$ y l 125                       # Display all ports on this node
pub:
  dynamics: 120:zubax.physics.dynamics.DoF3rdTs.1.0
  dq: 65535:zubax.telega.DQ.1.0
sub: ...
cln: []
srv: ...
...

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the existing y r command and its port-configuration handling, then trace the CLI entry point for adding the proposed y l helper. Done means the examples work for individual publishers, all publishers, and all port categories, including displaying and updating port:type values in the shown formats.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.