You've installed your Flare RC kit on your RC car, the calibration is correct, the wiring is clean, yet: at rest, without touching the radio, your ESP32 sees the throttle moving on its own. Exhaust flames trigger unexpectedly, hazards jump on, you're losing your mind. Welcome to the fascinating — and frustrating — world of radio interference.
This article traces the complete diagnosis of a real case encountered by a Flare RC tester in May 2026. The final conclusion, after several hours of testing, will surprise you — and may save you hours of struggle on your own setup.
The tester's setup
To understand the diagnosis, here's the equipment involved:
- Carte : Arduino Nano ESP32 officiel (basé ESP32-S3)
- Récepteur : Futaba R304SB (T-FHSS 2.4 GHz)
- ESC : Hobbywing Xerun XD10 Pro (drift compétition, 48 kHz drive frequency)
- Châssis : Yokomo Rookie Drift RD2.0 (RWD plastique, antenne avant, moteur/ESC arrière)
- Signal on GPIO4 (S3), powered from the ESC BEC
Calibration reported by the app: neutral 1360 µs, full forward 1071 µs, full reverse 1713 µs, dead zone 20 µs. All perfectly normal for a drift car radio.
The observed symptom
Au neutre, gâchette relâchée, sans toucher à rien : la valeur pw (pulse width) lue par l'ESP32 oscille entre 918 µs et 1528 µs au lieu de rester à 1360 µs. Soit 610 µs de variation au repos. Dès qu'il pousse la gâchette dans n'importe quel sens, le signal devient ultra-stable. Étrange, non ?
The values read by the app come in bursts: 0, 100, 79, 100, 50, 0, 60, 0, 100, 0... Not progressive, not continuous — abrupt jumps between high values and zero.
Elimination tests
Classic method: isolate each component to find the culprit.
Test 1 — Servo on CH2
On débranche l'ESP32 et on branche un servo classique sur le canal 2 du récepteur. Résultat : le servo reste parfaitement immobile au neutre. La radio et le récepteur sortent donc un signal correct. Le problème est entre le récepteur et l'ESP32.
Test 2 — ESP32 alone on USB
On débranche l'ESC, on alimente l'ESP32 en USB directement, et on garde uniquement signal CH2 + GND vers le récepteur. Résultat : signal parfaitement stable. L'ESP32 et son câblage signal/masse fonctionnent bien.
Test 3 — Progressive ESC reconnection
We reconnect the ESC. The signal becomes unstable again at neutral. At first glance, the culprit is the Hobbywing XD10 Pro ESC. But the motor doesn't move, the steering servo is stable — the ESC doesn't receive false commands, only the ESP32 sees noise.
The false leads
Here are all the hypotheses tested that turned out to be wrong:
- ❌ Drag brake de l'ESC — mis à 0%, aucun changement.
- ❌ Module OTA Bluetooth Hobbywing — débranché, aucun changement.
- ❌ Masse commune mal faite — refaite avec fil direct, aucun changement.
- ❌ Récepteur défaillant — testé avec autre récepteur, même symptôme.
- ❌ Trim radio mal réglé — vérifié à 0, bind refait, aucun changement.
- ❌ Failsafe Futaba — mis sur OFF pour CH2, aucun changement.
All electrical leads are exhausted. And yet the problem persists.
The revealing clue
Le testeur remarque alors un détail crucial : quand il tient l'antenne du récepteur dans sa main, le signal devient parfaitement stable. Dès qu'il lâche, ça refluctue. Le placement de l'antenne ne change rien — peu importe la distance avec le moteur ou l'ESC.
The real cause: 2.4 GHz WiFi interference
Le testeur s'éloigne de son modem WiFi de quelques mètres. Résultat instantané : le signal devient parfaitement stable, même sans toucher l'antenne. Diagnostic confirmé.
Les radios RC modernes (Futaba T-FHSS, Sanwa FH-S, Spektrum DSMR, KO Propo, Flysky) utilisent la bande 2.4 GHz — exactement la même que votre WiFi domestique. Un routeur WiFi émet en continu à une puissance 100 à 1000 fois plus élevée que l'émetteur RC. Quand l'antenne du récepteur capte ce bruit, plusieurs choses se passent :
- Au neutre (valeur PWM ~1360 µs), les bits transmis sont au seuil de basculement. Le bruit WiFi suffit à faire basculer la valeur décodée → la pulse mesurée varie.
- En commande forte (plein gaz/frein), la valeur PWM est saturée vers une extrémité. Même avec quelques bits faussés, la valeur décodée reste correcte → signal stable visible.
- The servo has ±50 µs internal tolerance and averages over several pulses — it doesn't see the noise. The ESP32 reads each pulse to the microsecond → it sees everything.
That's why the issue only appears at neutral and is only visible on the ESP32, not the servo.
The solutions
Solution 1 — Physical distance
La plus simple et la plus efficace : éloignez la voiture d'au moins 2 à 3 mètres de toute box ou routeur WiFi avant de tester. Testez à l'extérieur si possible, ou dans une pièce sans appareils 2.4 GHz actifs (smartphones, micro-ondes, caméras IP, etc.).
Solution 2 — Flare RC software filter
Le firmware Flare RC intègre depuis cette mise à jour un double filtre logiciel qui élimine la grande majorité des parasites :
- Anti-glitch temporel : rejet de toute transition inférieure à 800 µs (physiquement impossible en PWM RC)
- Filtre médian sur 3 lectures : élimine automatiquement les valeurs aberrantes isolées (outliers)
- Validation de plage stricte : 900-2100 µs uniquement
Added latency: maximum 60 ms, totally imperceptible visually on LEDs.
Solution 3 — Hardware RC filter (extreme cases)
If despite all this your setup remains noisy (typically with a high-frequency competition ESC like Hobbywing XR10/XD10 Pro, Mamba X, or in an industrial environment), add a hardware RC filter between the receiver and the GPIO:
- Résistance 100 Ω ou 220 Ω en série sur le fil signal
- Condensateur céramique 10 nF (marqué
103) entre le GPIO et le GND, au plus près de l'ESP32
Cost: ~€0.15. Cutoff frequency 159 kHz: blocks high-frequency parasites without altering the legitimate RC signal (50 Hz).
Diagnostic method to remember
If you encounter a similar issue, here's the step-by-step procedure:
- <strong>CH2 servo test</strong>: does a classic servo jitter? If yes = radio issue. If no = source signal is fine, issue is on ESP32 side or environment.
- <strong>ESP32 alone on USB test</strong> without ESC: stable? Issue comes from ESC or environment.
- <strong>WiFi distance test</strong>: 2-3 m from a WiFi router, or even outdoors.
- <strong>Antenna touch test</strong>: if holding the antenna stabilizes the signal, it's almost certainly a 2.4 GHz environmental interference.
- <strong>If still problematic</strong>: hardware RC filter 100 Ω + 10 nF.
The takeaway
Quand un signal RC fluctue uniquement au neutre, le premier réflexe doit être de vérifier l'environnement radio, pas le câblage. La bande 2.4 GHz est saturée d'émetteurs : WiFi, Bluetooth, micro-ondes, caméras IP, smartphones, baby phones... Tous ces appareils peuvent perturber un récepteur RC compact.
The good news: Flare RC is designed to be resilient. The built-in software filter handles 90% of cases. For the remaining 10%, a simple physical distance or a 15-cent RC hardware filter solves the issue.
A clean install on the first try
Download Flare RC to benefit from built-in anti-parasite filtering and automatic connection diagnostics.