Apuntes de SDR

Work in progress
No está completo.

Referencias

Inhibir drivers DVB en udev rules para nuestro dispositivo SDR

Si echamos un vistazo al log del sistema en /var/log/syslog mientras conectamos el dispositivo SDR-RTL al puerto usb, obtenemos:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
tail -f /var/log/syslog
.
.
.
Aug 25 16:50:19 achernar kernel: [51499.253763] usb 1-3: new high-speed USB device number 12 using xhci_hcd
Aug 25 16:50:19 achernar kernel: [51499.415521] usb 1-3: New USB device found, idVendor=0bda, idProduct=2838, bcdDevice= 1.00
Aug 25 16:50:19 achernar kernel: [51499.415534] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Aug 25 16:50:19 achernar kernel: [51499.415541] usb 1-3: Product: RTL2838UHIDIR
Aug 25 16:50:19 achernar kernel: [51499.415546] usb 1-3: Manufacturer: Realtek
Aug 25 16:50:19 achernar kernel: [51499.415550] usb 1-3: SerialNumber: 00000001
Aug 25 16:50:19 achernar kernel: [51499.426274] usb 1-3: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
Aug 25 16:50:19 achernar kernel: [51499.486288] usb 1-3: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
Aug 25 16:50:19 achernar kernel: [51499.486303] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
Aug 25 16:50:19 achernar kernel: [51499.486311] usb 1-3: media controller created
Aug 25 16:50:19 achernar kernel: [51499.487207] dvbdev: dvb_create_media_en tity: media entity 'dvb-demux' registered.
.
.
.

De este log podemos sacar el idVendor y el idProduct, además vemos que linux le está asignando un driver dvd_usb (Digital Video Broadcast) o sea que lo identifica como un sintonizador de televisión y no queremos que eso pase.

De momento la única solución parece ser poner el driver en la lista negra. Para ello creamos un fichero /etc/modprobe.d/blacklist-rtl.conf con el siguiente contenido:

1
blacklist dvb_usb_rtl28xxu

Tras reiniciar el sistema veremos que al introducir el dispositivo usb, no se le asigna el driver de televisión.

Instalamos los drivers (yo uso un pincho USB RTL-SDR v3) Los drivers disponibles en mi Linux Mint tienen la misma versión que en el github del proyecto.

1
sudo apt install rtl-sdr

Para solucionarlo podemos crear un fichero /etc/udev/rules/99-sdl-rtl.rule con el siguiente contenido:

1
2
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"

SUBSYSTEMS==“usb”, ATTRS{idVendor}==“0bda”, ATTRS{idProduct}==“2838”, MODE:=“0666”

idVendor=0bda, idProduct=2838

Aug 24 18:33:45 achernar kernel: [26699.444347] usb 1-3: new high-speed USB device number 8 using xhci_hcd Aug 24 18:33:45 achernar kernel: [26699.608542] usb 1-3: New USB device found, idVendor=0bda, idProduct=2838, bcdDevice= 1.00 Aug 24 18:33:45 achernar kernel: [26699.608557] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Aug 24 18:33:45 achernar kernel: [26699.608564] usb 1-3: Product: RTL2838UHIDIR Aug 24 18:33:45 achernar kernel: [26699.608569] usb 1-3: Manufacturer: Realtek Aug 24 18:33:45 achernar kernel: [26699.608574] usb 1-3: SerialNumber: 00000001

0%