Winegard satellite dish control for amateur radio sky tracking
Find a file
Ryan Malloy 6c1e9da773 Add Craft mode — direct satellite tracking via space.warehack.ing API
New F2 Control sub-mode that searches the Craft orbital catalog (22k+
objects), displays pass predictions, and drives the dish in real-time
using server-computed AZ/EL positions from /api/sky/up.

Tracking loop polls at ~1Hz, filters for the tracked target by
target_type + target_id (str, not int — handles satellites, planets,
stars, comets), and issues motor commands through the existing serial
bridge. Verified end-to-end with Carryout G2 hardware tracking NOAA 17.

New files:
- craft_client.py — stdlib HTTP client (urllib only, no deps)
- widgets/craft_panel.py — search table, pass info, tracking status
- tests/test_craft_mode.py — 5 unit tests with mocked API
- tests/test_craft_integration.py — 3 hardware integration tests
2026-02-16 02:07:42 -07:00
docs Add hardware reference docs (A3981, K60, RYS352A) 2026-02-14 18:36:42 -07:00
firmware/ble-bridge Parse GGA/GSA fix quality from NMEA, add PAIR command init sequence 2026-02-11 18:28:59 -07:00
scripts Add G2 bootloader and EEPROM exploration scripts 2026-02-14 18:05:03 -07:00
src Add console-probe package for firmware console discovery 2026-02-14 18:05:15 -07:00
Trav-ler-Rotor-For-HAL-2.05 Initial travler-rotor library scaffolding 2026-02-11 04:10:17 -07:00
tui Add Craft mode — direct satellite tracking via space.warehack.ing API 2026-02-16 02:07:42 -07:00
.gitattributes Configure git-lfs for binary assets 2026-02-14 18:36:23 -07:00
.gitignore Ignore site/ directory — now its own repo (warehack.ing/birdcage-docs) 2026-02-13 05:20:34 -07:00
CLAUDE.md Document birdcage.warehack.ing deployment in CLAUDE.md 2026-02-13 15:17:00 -07:00
pyproject.toml Rename project from travler-rotor to birdcage 2026-02-13 05:16:00 -07:00
uv.lock Rename project from travler-rotor to birdcage 2026-02-13 05:16:00 -07:00