skywalker-1/tools
Ryan Malloy a9dcf84c38 Add Phase 1 experimenter tools: MCP server, H21cm, beacon logger, arc survey
Four new tools transforming the SkyWalker-1 from satellite TV receiver into
a general-purpose RF observatory:

- skywalker-mcp: FastMCP server exposing 20 tools, 4 resources, 2 prompts.
  Thread-safe DeviceBridge with motor safety (continuous drive opt-in),
  input validation on all frequency/symbol rate/step parameters,
  try/finally on TS capture, path traversal sanitization, and reduced
  lock scope so emergency motor halt isn't blocked during long surveys.

- h21cm.py: Hydrogen 21 cm drift-scan radiometer at 1420.405 MHz with
  Doppler velocity calculation, control band comparison, and CSV output.

- beacon_logger.py: Long-term Ku-band beacon SNR/AGC logger with auto-relock,
  dual CSV/JSONL output, signal handlers, and systemd unit generation.

- arc_survey.py: Multi-satellite orbital arc census with USALS motor control,
  per-slot catalog persistence, resume support, and defensive motor halt
  on all error/interrupt paths.

Documentation: experimenter's roadmap guide + 4 tool reference pages (48 pages total).
2026-02-17 14:45:02 -07:00
..
arc_survey.py Add Phase 1 experimenter tools: MCP server, H21cm, beacon logger, arc survey 2026-02-17 14:45:02 -07:00
beacon_logger.py Add Phase 1 experimenter tools: MCP server, H21cm, beacon logger, arc survey 2026-02-17 14:45:02 -07:00
carrier_catalog.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
eeprom_dump.py Extract real FX2 firmware from I2C EEPROM 2026-02-11 05:08:20 -07:00
eeprom_probe.py Extract real FX2 firmware from I2C EEPROM 2026-02-11 05:08:20 -07:00
eeprom_write.py Add EEPROM flash tool, TS analyzer, DVB-S2 investigation, and tune.py bugfix 2026-02-11 14:46:20 -07:00
fw_dump.py Add FX2 firmware dumps and USB probe tool 2026-02-11 04:51:34 -07:00
fw_load.py Add custom FX2 firmware and RAM loader for open-source development 2026-02-11 19:46:50 -07:00
h21cm.py Add Phase 1 experimenter tools: MCP server, H21cm, beacon logger, arc survey 2026-02-17 14:45:02 -07:00
motor.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
qo100.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
signal_analysis.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
skywalker.py Add alternative operating modes: spectrum, scan, monitor, lband, track 2026-02-12 17:29:00 -07:00
skywalker_lib.py Add I2C hot-plug detection and streaming diagnostics (firmware v3.04.0) 2026-02-15 18:24:45 -07:00
survey.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
survey_engine.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
test_boot.py Fix BCM4500 boot: spurious I2C STOP corrupted FX2 controller 2026-02-12 10:34:15 -07:00
test_boot_debug.py Fix BCM4500 boot: spurious I2C STOP corrupted FX2 controller 2026-02-12 10:34:15 -07:00
test_hamilton.py Add Hamilton adversarial test suite for firmware safety validation 2026-02-17 13:46:14 -07:00
test_i2c_debug.py Fix BCM4500 boot: spurious I2C STOP corrupted FX2 controller 2026-02-12 10:34:15 -07:00
test_i2c_isolate.py Fix BCM4500 boot: spurious I2C STOP corrupted FX2 controller 2026-02-12 10:34:15 -07:00
test_i2c_pinpoint.py Fix BCM4500 boot: spurious I2C STOP corrupted FX2 controller 2026-02-12 10:34:15 -07:00
ts_analyze.py Add DiSEqC motor control, QO-100 DATV reception, and carrier survey 2026-02-15 17:01:11 -07:00
tune.py Add alternative operating modes: spectrum, scan, monitor, lband, track 2026-02-12 17:29:00 -07:00
wine_memdump.py Extract firmware from official Genpix updater EXEs via Wine memory dump 2026-02-11 06:05:13 -07:00