パソラーです

https://twitter.com/pasora

Raspberry Pi で RTL2832U と他の USB 機器を同時に使う

使用したもの

なにをしてたか

RTL2832U のドングルが届いたのでセットアップしてました

$ sudo aptitude install autoconf libtool cmake

libusb のインストール

$ wget  http://sourceforge.net/projects/libusb/files/libusb-1.0/libusb-1.0.9/libusb-1.0.9.tar.bz2
$ tar xfj libusb-1.0.9.tar.bz2
$ cd libusb-1.0.9
$ ./configure
$ make
$ sudo make install

rtl-sdr のインストール
sudo aptitude install rtl-sdr だけでいけます
↓めんどいし要らないじゃん(なぜやった)

$ cd
$ mkdir sdr #ディレクトリ名はなんでもいいです
$ cd sdr
$ git clone git://git.osmocom.org/rtl-sdr.git
$ cd rtl-sdr
$ mkdir build
$ cd build
$ cmake ../
$ make
$ sudo make install
$ sudo make install-udev-rules
$ sudo ldconfig

ここらで再起動しましょう

詰まったとこ

$ rtl_test
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM

Kernel driver is active, or device is claimed by second instance of librtlsdr.
In the first case, please either detach or blacklist the kernel module
(dvd_usb_url28xxu), or enable automatic detaching at compile time.

usb_claim_interface error -6
Failed to open rtlsdr device #0.

どうやら RTL2832U デバイスと同時に別の USB デバイスを使うと起こるらしい
実際 USB のマウスとキーボードを使っていました

対処法

エラーメッセージの言う通りにデバイスをブラックリストとやらに入れます
/etc/modprobe.d/raspi-blacklist.conf

blacklist dvb_usb_rtl28xxu  

の1行を入力して再起動しましょう
もちろん sudoers でないとだめです

結果

rtl_test してエラーが出ることもなくなりました
rtl_fm -f 84.7M - | aplay -r 24k -f S16_LE -t raw -c 1 したりすると FM 横浜が流れます、雑音ばっかりですけど

参考

GNU RadioによるRaspberry Pi 2のテストドライブ » DesignSpark
他のUSBデバイスがいるとrtlsdrがエラーになっちゃう件 - Qiita


情報の受け流しに近いですけど「最近こうやった人がいる」というのも
割といろんな方々の励みになるかとと思います

対処法として今回デバイスをブラックリストに入れましたが、
デバイスドライバごと消しちまうっていう方もいました
方法はいろいろありそうです