Skip to content

Latest commit

 

History

History
111 lines (90 loc) · 6.07 KB

File metadata and controls

111 lines (90 loc) · 6.07 KB

Control Electronics

Status: PoC design, Sprint 0. Schematic capture (KiCad) is Sprint 1 work.

Block diagram

                                    ┌──────────────────────────────┐
 12 V DC in ──┬── buck 5V ── LDO 3V3│          ESP32-S3            │
              │                     │  WiFi (AP+STA) · BLE · USB   │
              │                     └──┬──────┬──────────┬─────────┘
              │                        │ UART │ ADC×2    │ GPIO
              │                   ┌────▼───┐  │      ┌───▼────────┐
              └───────────────────│TMC2209 │  │      │ EN/relay   │
                                  │stepper │  │      │ interlocks │
                                  │driver  │  │      └────────────┘
                                  └────┬───┘  │
                                       │      │
                              NEMA17 + 50:1   │
                              → butterfly C   │
                                              │
 RIG ──── coax ───┬───────────────────────────┼───────────► coupling loop
                  │                           │
            ┌─────▼──────────┐   FWD   ┌──────┴───────┐
            │ tandem match   ├────────►│ 2× AD8307    │
            │ (Stockton)     │  REFL   │ log detector │
            │ coupler        ├────────►│ + RC filter  │
            └────────────────┘         └──────────────┘

Module choices and rationale

MCU: ESP32-S3 (module: ESP32-S3-WROOM-1)

  • WiFi + BLE 5 in one part, plenty of flash/PSRAM for the embedded web UI
  • Native USB for flashing/debug
  • PoC uses a dev board (ESP32-S3-DevKitC-1); product gets a custom PCB
  • Alternative kept open: plain ESP32-WROOM-32 (classic BT + BLE) if BT Classic SPP compatibility with older Android apps is ever wanted — decision S1-D2

Stepper driver: TMC2209

Chosen specifically for RF hygiene and mechanics, not just convenience:

  • StealthChop voltage PWM → far less broadband switching noise than A4988/DRV8825
  • StallGuard sensorless homing → no endstop switches / wiring in the RF field
  • UART-configurable current; driver disabled (EN high) whenever not tuning so there is zero switching activity during RX and TX
  • Microstepping (16×) gives the required capacitor resolution (see antenna-design.md)

SWR sensing: tandem match coupler + 2× AD8307

  • Tandem match (Stockton) bridge: two FT50-43 binocular/toroid transformers, ~30 dB coupling, flat across 1–30 MHz, handles 100 W through-line — the same topology proven in the N7DDC ATU-100 and countless QRP tuners
  • AD8307 logarithmic detectors on FWD and REFL ports: ~80 dB dynamic range means the autotuner works from 100 mW tuning carrier up to 100 W, and return loss can be computed as a simple subtraction of two log voltages
  • RC-filtered outputs into two ESP32 ADC channels; calibrate both channels against a known source (2-point cal stored in NVS)
  • Diode-detector fallback (1N5711) documented for the simplest DIY build, at the cost of needing ≥1 W to tune

Power — designed for a quiet receiver

The loop hears everything near it, including our own electronics. Rules:

  1. 12 V in → buck converter (≥500 kHz switching, shielded inductor) → 5 V, placed on the far side of the PCB from the detectors, with input/output π-filters
  2. 5 V → 3.3 V LDO for ESP32 and all analog (AD8307 gets its own RC-decoupled rail)
  3. Stepper runs from filtered 12 V directly; driver disabled outside tune cycles
  4. Common-mode chokes (ferrite) on: 12 V input, motor leads, any cable leaving the box
  5. Entire controller in a shielded metal box at the loop; only coax, 12 V, and (optionally) nothing else penetrate the shield — WiFi/BLE make the control link cable-free by design
  6. Firmware contribution: WiFi TX power reduced to minimum needed; modem-sleep in idle; all PWM/stepper activity is frozen while the rig transmits (TX sensed via FWD detector threshold — an "RF present" flag)

Interlocks & protection

  • Tune-power interlock: autotune refuses to move the capacitor above a configurable forward-power threshold (default 15 W) — protects capacitor and motor gears from hot-switching arcs; UI tells the user to drop power / use tune carrier
  • Gas discharge tube across the feed at the coupler, TVS on 12 V input
  • Thermal: motor current off after move complete (TMC2209 auto power-down)
  • Watchdog reboot-safe: capacitor position stored in NVS after every move; a reboot re-homes only on checksum mismatch

PoC parts list (bench prototype, Sprint 1)

Item Part ~Cost (EUR)
MCU board ESP32-S3-DevKitC-1 12
Stepper driver TMC2209 breakout (BigTreeTech) 8
Motor NEMA17 + 50:1 planetary (e.g. 17HS13 + PG50) 35
Directional coupler 2× FT50-43, PTFE coax, enclosure 10
Detectors 2× AD8307 module or bare IC + passives 14
Butterfly capacitor ~10–250 pF ≥5 kV (surplus/DIY) 30–80
Coupling: DC-DC, LDO, ferrites, box, misc 30
Total electronics (excl. loop copper & mast) ~140–190

Full structured BOM: hardware/bom/poc-bom.md

Product-stage deltas (not PoC)

  • Custom 4-layer PCB, coupler + detectors + MCU + driver integrated, shielded cans
  • Vacuum variable capacitor, 10–15 kV, worm-gear drive
  • Optional bias-tee: DC power + control over the coax (single-cable install)
  • Weatherproof (IP65) enclosure, conformal coating
  • CE/FCC pre-compliance EMC test — budget for one lab iteration