---
weight: 4
title: "Apuntes de SDR"
date: 2020-05-29
draft: false
summary: "Notas sobre SDR y montaje de Open Plotter en Raspberry Pi"
categories:
  - notes
tags:
  - raspi
  - sdr
  - barco
---

{{< admonition type=warning title="Work in progress" open=true >}}

No está completo.

{{< /admonition >}}



## Referencias

- https://www.youtube.com/watch?v=N8zxaMjA0qA
- https://youtu.be/oqOyNPMbu5o
- [A good quickstart guide for RTL-SDR Linux Users](https://www.rtl-sdr.com/a-good-quickstart-guide-for-rtl-sdr-linux-users/)
https://ranous.wordpress.com/rtl-sdr4linux/
- [Skywavelinux](https://skywavelinux.com/)

## 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:

```bash
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:

```bash
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.

```bash
sudo apt install rtl-sdr
```




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

```bash
# 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
