Repository navigation
SatMe PC Polarisation
← SatMe-PC guide · October 2026
A satellite's signal does not always arrive in the polarisation of your antenna: a tumbling cubesat, Faraday rotation, a pass low on the horizon. With a WiMo remote polarisation switch on the yagi and a small ESP32 box on USB, SatMe-PC chooses the polarisation for you — vertical, horizontal, right-hand or left-hand circular — at AOS, and learns pass after pass which one works best for each satellite.
Where: Réglages › Poste et rotor › Polarisation d'antenne (the box), and the Polarisation panel of the Suivi tab (the buttons, the state, the profiles, the probes). The module can be unticked in Réglages › Modules.

Status (October 2026): the SatMe-PC side is written and tried against the virtual ESP32. The firmware in
materiel/esp32-polarisationhas not yet been compiled and run on a real board, nor tried on a real WiMo switch. Check the box on the bench, with a voltmeter on the WiMo socket, before connecting the antenna.
- WiMo switches: UHF 18082 / 18083 (four positions: V, H, right, left), VHF 18080 / 18081; or, in VHF, a single H / V relay.
- The WiMo's 6-pin socket: pin 1 right-hand circular, pin 2 left-hand circular, pin 5 horizontal, pin 4 ground. No voltage = vertical. +12 V goes on one pin only at a time.
- The box: an ESP32 DevKit (WROOM module) on USB, a TBD62083A (or ULN2803A) driver, three 12 V relays, a five-position rotary selector (V, H, D, G, AUTO) on the front, and the rig's SEND line.
Three relays in a tree, KA → KB → KC, take the +12 V to one pin of the WiMo. Each relay can only pass it on to the next one or to one output: whatever the software does, two pins can never be fed together.
+12 V (from the selector, on AUTO only)
│
KA ── at rest ──────────────────────────── (nothing) → V vertical
│ worked
KB ── at rest ─────────────────────────── pin 5 → H horizontal
│ worked
KC ── at rest ─────────────────────────── pin 1 → D right-hand circular
│ worked
└─────────────────────────────────────── pin 2 → G left-hand circular
| Polarisation | WiMo pin at 12 V | KA | KB | KC |
|---|---|---|---|---|
| V (vertical) | none | 0 | – | – |
| H (horizontal) | 5 | 1 | 0 | – |
| D (right-hand circular) | 1 | 1 | 1 | 0 |
| G (left-hand circular) | 2 | 1 | 1 | 1 |
The front selector has two circuits. On V, H, D or G, its circuit A feeds the right WiMo pin directly and the relay tree gets no power: SatMe can do nothing, the box says so. On AUTO, it powers the tree and SatMe chooses. Its circuit B tells the ESP32 where it stands.
A change always goes through "no voltage": KA is released first, KB and KC set behind it, KA last. At power-up every relay is at rest (vertical). While the rig's SEND line is active, the box refuses every change.
The full wiring (ESP32 pins, driver, relays, selector, SEND through 1 kΩ), the firmware's rules and its USB dialogue (POL U H, ETAT?, ID?, 115200 baud) are in materiel/esp32-polarisation. Compile with the Arduino IDE 2 or arduino-cli (ESP32 package, board « ESP32 Dev Module »).

Réglages › Poste et rotor › Polarisation d'antenne:
-
Boîtier (box): its USB port. Nothing is opened until a port is chosen; the rig's, the rotator's or the KISS radio's port is never taken. The box is found again by its serial number if its name changes; lost, it is looked for every 5 s. On Linux, your user must be in the
dialoutgroup. - Tester la liaison (test the link): who answers, the selector's position, the answer time.
- UHF: WiMo 4 positions or nothing. VHF: rien à commuter (circulaire fixe) (nothing), WiMo, or an H / V relay.
- Inverser droite et gauche (swap right and left): the sense of rotation depends on the wiring and on which way the antenna looks. Check once on a satellite whose polarisation you know.
- À l'AOS, mettre la polarisation du profil du satellite (at AOS, set the satellite's profile) and the Sonder H/V settings (below).
The virtual ESP32 (in the list of ports, ESP32 virtuel (essai, démonstration)) follows exactly the firmware's rules, with the box's front panel on screen (selector, SEND) and a simulated pass: to try everything before soldering. Its made-up measurements are marked as such and never feed a real box's predictions (Oublier les mesures simulées, forget the simulated measurements).
- The buttons V / H / D / G for each fitted band (UHF, VHF), RX on the receiving antenna of the followed satellite.
- The real state: what the antenna is on, « manuel (sélecteur) » when the front selector is not on AUTO, « bloqué : émission » (blocked: transmitting) when a change is refused.
- The satellite's profile at AOS, per band: la meilleure connue (sondages) (the best known, from the probes), ne rien changer (change nothing), or a fixed polarisation. Kept per satellite, applied at AOS (or when the satellite is chosen during a pass) if the selector is on AUTO.
Sonder H/V (probe H/V; ticked apart, in AUTO): on the receiving antenna only, SatMe tries H then V (the one in place first), lets the relays and the rig's AGC settle, and measures each with the rig's S-meter (IC-9700, IC-9100, IC-910H, TS-2000) or the SDR's level when it listens to the followed satellite. The better one is kept if it beats the other by at least the hysteresis (1.5 to 3 dB). Again every 20 to 60 s, and at once if the signal falls by 6 dB. Never while an SSTV picture is being decoded; cut short by a transmission, the previous polarisation comes back as soon as allowed. Sonder maintenant (probe now) starts one by hand.
Statistics: every probe is kept (polarisation/mesures.jsonl in the data folder): satellite, mode, band, elevation, azimuth, moment of the pass (rising, culmination, setting), H and V levels, winner, gap. Per satellite and elevation band (0–10°, 10–20°, 20–35°, 35–60°, 60–90°), SatMe draws the best polarisation and its confidence (at least 3 probes and 60 % of the wins; full from 5). That is what starts the next pass. The table is in Suivi (this satellite) and in Réglages (all of them).
-
Never a switch on the antenna that transmits. Not while SatMe transmits on that band (the IC-9700's PTT: the uplink's band; SSTV and DATV: their frequency; an unknown frequency: both antennas), nor while the rig's SEND line is active — the box refuses too (
ERR TX). The panel says « bloqué : émission » and the change waits. -
The front selector has the last word: off AUTO, every order is refused (
ERR MANUEL). - No radio transmission ever comes from this module.
GET /api/polar (full state), GET /api/polar/stats; as POST pol?b=U&p=H, profil, reglage, test. Like the rest of the page, reachable from another machine with the station's password.
See also: Settings · Passes and tracking · Hardware safety
SatMe · free software (GPL-2.0-or-later) · Source code · Issues · 73 de F4IOZ
SatMe
🇬🇧 English
- Home
- Why SatMe
- Installation
- Getting started
- Passes and tracking
- Orbital elements
- Rig control (CAT)
- Audio recording
- SSTV
- METEOR pictures
- Pass journal
- APRS
- Logbook
- Locators and skeds
- QO-100
- SatMe-PC
- Install SatMe-PC
- SatMe-Node (Raspberry Pi)
- Extensions
- SatMe GP server
- What's new
- FAQ
- Privacy
🇫🇷 Français
- Accueil
- Pourquoi SatMe
- Installer SatMe
- Premiers pas
- Passages et suivi
- Éléments orbitaux
- Pilotage du poste (CAT)
- Enregistrement audio
- Images SSTV
- Images METEOR
- Journal des passages
- APRS
- Carnet de trafic
- Locators et skeds
- QO-100
- SatMe-PC
- Installer SatMe-PC
- SatMe-Node (Raspberry Pi)
- Extensions
- Serveur GP SatMe
- Nouveautés
- FAQ
- Confidentialité