Jouer avec une clé "RTLSDR"

Clé RTL-SDR branché sur un raspberry pi 2

Voici quelques notes pour jouer, sous linux (ubuntu), avec une clé DVB-T Realtek RTL2832U (vulgairement une clé RTLSDR). J'indique aussi quelques liens vers des tutoriels et cours plus approfondis sur la radio logicielle.

La clé USB dite "RTLSDR" est conçue pour recevoir la TNT... Seulement le décodage de la TNT est fait coté logiciel, le hardware de la radio est donc "générique". Il peut en effet être utilisé pour recevoir n'importe quel signal radio (entre 52 et 2200 MHz) ! La clé est donc une petite carte bon marché (~10€!) pour faire de la radio logicielle (ou SDR pour Software Defined Radio).

Voyons comment on peux jouer avec...

Instalation des bibliothèques et drivers

Pour installer les soft de base, le packaging dans ubuntu 14.04 est nickel, c'est donc super simple :

$ sudo apt-get install rtl-sdr

Il faut juste blacklister le driver par defaut fait pour décoder la TNT... Pour ca, dans un fichier /etc/modprobe.d/rtlsdr.conf ajouter juste une ligne :

blacklist dvb_usb_rtl28xxu

Ensuite soit on reboot pour prendre en compte la modif, soit on débranche à la main ce driver avec :

$ sudo rmmod dvb_usb_rtl28xxu

Ensuite quand on branche la clé on doit voir ca dans les log système :

$ dmesg | tail
[1642140.651167] usb 5-1: New USB device found, idVendor=0bda, idProduct=2838
[1642140.651183] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[1642140.651192] usb 5-1: Product: RTL2838UHIDIR
[1642140.651200] usb 5-1: Manufacturer: Realtek
[1642140.651207] usb 5-1: SerialNumber: 00000001

Pour tester que tout va bien :

$ rtl_test
Found 1 device(s):
  0:  Generic RTL2832U OEM

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6 

Info: This tool will continuously read from the device, and report if
samples get lost. If you observe no further output, everything is fine.

Reading samples in async mode...

CTRL-C pour quiter.

Réception de capteurs météo en 433Mhz : instalation de rtl_433

Pour ma part, j'utilise une clé RTLSDR "en production" pour recevoir les données de petits capteurs météo. Le soft "qui va bien" pour ça est rtl_433. En étudiant différentes pistes pour mesurer et enregistrer la température et l'humidité dans différents pièces de ma maison, j'en suis arriver à l'idée d'utiliser des petits capteurs de stations météo (du commerce). C'est il me semble en terme de rapport prix/quantité de travail/fiabilitée. Sachant biensur qu'avec une clé RTL-SDR et rtl_433 il est facile de récupérer les données.

Pour installer rtl_433 :

$ sudo apt-get install git cmake librtlsdr-dev
$ git clone https://github.com/merbanan/rtl_433.git
$ cd rtl_433/
$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install

Et ensuite pour l'utiliser, super simple :

$ rtl_433

Voir ensuite l'aide avec rtl_433 -h pour ne décoder que certains capteurs, pour activer une sortie JSON, etc...

Autres usages, liens en vrac...

Biensur l'écoute de capteurs de stations météo n'est pas le seul usage possible. Voici une petite liste d'autres applications avec des liens vers des soft et/ou tuto :

Une liste d'applications bien plus complette est dispo par ici : http://www.rtl-sdr.com/about-rtl-sdr.

Cours et conférences à propos de SDR

Tout d'abords, deux conf en français de @RatZillaS à Pas Sage en Seine :

Ensuite :

Quelques liens donnant des pistes "to reverse ingineer" un signal :

Et enfin :

joyeux anniversaire Etienne !