Télécommande automobile et analyse radio

Le projet en bref

Contexte
Étude documentaire d’une télécommande BMW et exercice de traitement du signal.
Mon rôle
Présentation de la notice, lecture des relevés et analyse d’un signal synthétique avec Python.
Livrable consultable
Script, données et contrôles reproductibles.
Résultat et limites
La simulation produit trois salves de 20 ms à 433,920 MHz. Le dossier documentaire concerne une référence à 315 MHz ; il ne s’agit pas d’une capture de la clé photographiée.

Difficulté technique

Une apparence de clé ne permet pas d’identifier sa fréquence. La notice s’applique à la référence Siemens VDO 5WK49123 à 315 MHz ; le modèle numérique du portfolio utilise 433,920 MHz.

La fiche traite donc les deux jeux de données séparément. Le contrôle Python compare le pic spectral, le nombre de salves et leurs durées aux paramètres du signal synthétique. Il vérifie le traitement numérique, sans attribuer ces mesures à une télécommande réelle.

Analyse documentaire et simulation · Borel Théo

Exemple technique documenté

La référence documentaire retenue est la télécommande BMW Siemens VDO 5WK49123, sous l’identifiant FCC KR55WK49123. Ses trois boutons commandent le verrouillage, le déverrouillage et l’ouverture du coffre.

La notice technique de cette version annonce une fréquence porteuse de 315 MHz et une modulation FSK. L’information est attachée à cette référence précise. Une clé de même apparence peut utiliser une autre bande selon sa version.

Porteuse
315,0 MHz ± 0,05 %
Modulation
FSK, synthèse par PLL
Alimentation
Accumulateur lithium VL2020, 3 V
Commandes
Portes et coffre, trois boutons

Notice Siemens VDO, pages 2 et 3 · Dossier FCC · Photos du modèle documenté

Clé BMW tenue en main devant le volant
Télécommande BMW.

Analyse numérique du portfolio

Ces deux vues sont produites par le script du portfolio. Le modèle utilise trois salves de porteuse à 433,920 MHz mélangées à du bruit, pour vérifier la recherche du maximum spectral et la détection des durées. Il s’agit d’une simulation de traitement du signal.

Spectre calculé à 433,920 MHz, maximum encadré en rouge
Le cadre rouge repère le maximum de la porteuse simulée. Données synthétiques.
Puissance calculée dans le temps, première salve encadrée en rouge
Le cadre rouge repère la première salve de 20 ms. Le seuil est tracé en vert. Données synthétiques.
Recalculer les graphiques

Le script détecte trois salves de 20 ms aux intervalles 15–35, 60–80 et 105–125 ms. La graine aléatoire est fixée. Python 3.10 ou une version ultérieure, NumPy et Matplotlib permettent de retrouver ces résultats.

python -m pip install numpy matplotlib
python analyse-rf.py --sortie resultats-rf

Script Python · Résultats CSV

Résultats reproductibles de la simulation

Le contrôle relance le script, relit le CSV obtenu et compare les résultats aux paramètres du signal synthétique. Les quatre contrôles ci-dessous ont été exécutés avec succès. Ce jeu d’essai à 433,920 MHz est distinct de la référence documentaire à 315 MHz.

Contrôle Résultat observé État
Fréquence du pic 433,920 MHz Conforme
Nombre de salves 3 Conforme
Intervalles (ms) 15 à 35 ; 60 à 80 ; 105 à 125 ms Conforme
Durées (ms) 20 ; 20 ; 20 ms Conforme

Télécharger le dossier pour reproduire l’analyse

Consulter le rapport d’exécution
OK | Pic spectral (Hz) | [433920000]
OK | Nombre de salves | 3
OK | Intervalles (ms) | [[15, 35], [60, 80], [105, 125]]
OK | Durées (ms) | [20, 20, 20]

Rapport JSON et empreinte du script

Les caractéristiques dans la notice

Extrait de la page 3 de la notice, avec la fréquence de 315 MHz et la modulation FSK encadrées en rouge

Annotations · BorelTO

Encadré rouge sur les données radio. Extrait du document Siemens VDO, page 3. Ouvrir la notice complète.

Deux pics sur le relevé spectral

La FSK transmet l’information en faisant varier la fréquence. Sur le relevé d’essai, les deux pics proches sont visibles dans le cadre rouge. Le graphique représente l’énergie reçue selon la fréquence. La durée d’une pression se lit sur une vue temporelle.

Relevé spectral de la télécommande à 315 MHz, avec deux pics proches encadrés en rouge

Annotations · BorelTO

Mesure du laboratoire d’essai déposée pour la référence 5WK49123. Annexe 3 du dossier FCC, relevé original.

Repérer une pression dans Osmocom FFT

Sur cette capture réelle publiée par Rafael Cavalcanti, alias DoctorKino, le spectre est en haut et le défilement temporel en bas. Les zones rouges désignent le signal repéré par l’auteur. Les taches brèves dans la partie basse permettent de repérer les émissions dans le temps.

Capture réelle d’Osmocom FFT montrant un signal encadré en rouge sur le spectre et dans le défilement temporel
Capture et cadres rouges de DoctorKino, 27 décembre 2019, CC BY 2.0 UK. Autre télécommande, modèle non indiqué par l’auteur, centre du récepteur réglé sur 433 MHz.

À lire également : Réception FM avec HackRF One sur Medium, adaptation du cours de Michael Ossmann, en version de travail.