What to build
Point a bounded pan-tilt antenna at a selected vehicle using surveyed tracker origin and current telemetry.
Acceptance criteria
- Validate geodetic transforms, north/reference calibration, angular wrap and mechanical travel limits in a modeled mount.
- Handle stale target, lost telemetry, cable twist and manual override in simulation.
- Demonstrate pointing accuracy on a physical bench mount and correlate measured signal/link quality.
Implemented simulation slice
d91a014 adds WGS84 geodetic pointing and bounded pan/tilt trajectories for one explicitly selected vehicle/session. Selection and engagement are explicit. Stale/replayed fixes, clock resets, source changes, cable/travel limits, poor link, manual lease expiry and emergency stop halt trajectories and require supervised recovery.
Native Stacks antenna:bench (antenna:simulate alias) runs ten modeled scenarios with bounded traces. Public helpers live in resources/functions/drone/antenna/. Settings and admitted telemetry are copied.
The default 12-second synthetic mount has 100 ms lag, about 3.07 degrees maximum pointing error and 1.94 degrees RMS against independent local N/E/U truth. Synthetic RSSI correlation is negative one by construction, not measured RF evidence. Software stop is not a physical brake guarantee.
Read antenna semantics and hardware gates and ADR 16.
Validation evidence
Eleven antenna tests cover analytic transforms, calibration/wrap, limits, lifecycle/freshness/replay/manual/emergency handling, the modeled mount and native CLI. The integrated suite passed 248 Bun tests with 21,254 assertions and zero failures, plus 13 Python bridge tests. Buddy lint, application/runtime/view typechecks, roadmap/audit gates, all 25 audit selectors and standalone navigation/antenna CLI checks passed. Linux CI passed for the pushed commit: full application suite, standalone CLI scenarios and both Pico 2 cross-builds.
Remaining work
Physical actuator/encoder and authenticated telemetry adapters, surveyed calibration, measured backlash/travel/braking and independent emergency/power-loss behavior, timestamped pointing truth and measured RSSI/SNR/packet-loss correlation. Physical actuation remains disabled.