Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Want dynamic tx-eq tuning

Open
#353 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
28/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Active
Tech stack
rust
Domain
networking

Research direction

Start with dpd/misc/xcvr_defaults.csv and trace how Dendrite uses these transceiver transmit-equalization defaults. Determine whether the transceiver exposes feedback for tx loss of lock or signal, then define and validate a dynamic tuning approach that preserves explicit operator overrides and replaces static values with initial conditions.

Written by the indexing model from the issue text.

Description

We have a static set of default values that we ship with Dendrite for determining what the transmit equalization settings should be for a given transceiver. However, experience has shown that these do not always work.

For transceivers that do not have explicit tx-eq settings override from the operator, we should use these values as initial conditions rather than a static specification. When a link does not come up due to tx loss of lock or tx loss of signal, we should have an algorithm to tune the link dynamically. Ideally this could be a feedback-based control if we can get said feedback from the transceiver module. We had an issue recently where I manually did this based on intuition on how the tx-eq circuit works and the fact that we were seeing loss of lock. But to the extent possible this should be automatic based FIR circuit models and feedback based observations.

Dominant language
Rust
Stars
21
Forks
3
Avg merge
10h 45m
Merged PRs (30d)
2

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

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.

More from oxidecomputer/dendrite

All issues in oxidecomputer/dendrite

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.