Skip to content

Post-v1.0: GridFPV native timer-server (reuse RH node firmware, strip the RMS) #238

Description

@ryan-johnson2

Two-tier timer strategy. GridFPV today depends on RotorHazard as both the timer and the race-management system (RMS). RH only streams scalar RSSI aggregates on the wire — the dense per-tick signal history needs a post-race pull — and we do not control that wire protocol. This issue tracks the post-v1.0 path to owning the server half of the stack.

Tier 1 (now, non-negotiable) — RH adapter stays primary

The RotorHazard adapter remains the primary timer path. It works with any existing RH install at zero friction — that is the adoption path. We never gate GridFPV on a GridFPV timer. This tier is not replaced by Tier 2; it is the floor.

Tier 2 (post-v1.0.0) — GridFPV native timer-server

A lightweight, fully remote-controlled GridFPV timer-server running on the same Pi + RX5808 hardware:

  • Reuse the RH node firmware — the proven RX5808 driver plus node-level RSSI crossing detection (hysteresis / calibration / start-of-race tuning). RH's real moat is the detection, not the radio driver; reuse the node firmware rather than re-earning it.
  • Strip the RH RMS — replace only the server / RMS layer with GridFPV's. Same hardware, software swap.
  • Owning the server gives us the dense signal natively (no post-race pull), which solves the marshaling fidelity gap and enables full re-detection marshaling (the deferred RH-style recalculate).
  • The mock-timer protocol is the first draft of this server's wire protocol.

Sequencing

Sequence after the core RMS + marshaling are proven. This is post-v1.0.0, not a near-term dependency — Tier 1 (the RH adapter) carries us until then.

See decision D15 in docs/decisions.html, the Post-1.0 note in docs/roadmap.html, and docs/timer-adapters.html.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions