「V4は専用ドライバが要る」は半分ウソだった ── RTL-SDR Blog V4 を Ubuntu 26.04 の apt だけで動かす(自作ワンセグ復調器 #0)

RTL-SDR Blog V4 本体。RTL2832U / R828D / TCXO / Bias-T / HF 対応の表記が見える

最近 RTL-SDR Blog V4 を買った。目的は地デジTVを観ることではなく、ワンセグ(ISDB-T 1セグ)の復調器を自分で書くこと。その第0歩として、まず母艦(Ubuntu 26.04)で V4 を動かすところまでをまとめる。ネットでよく言われる「V4は専用ドライバ必須」は、新しめのディストリでは半分ウソだった ── という話から。

なぜ「ワンセグ自作復調器」なのか

  • フルセグ(12セグ・帯域 約5.6MHz)は1本では無理。 RTL-SDR が一度に覗ける窓は約2.5MHz。アンテナをどれだけ良くしても、窓の狭さは解決しない。
  • ワンセグ(中央の1セグ・約429kHz)なら窓に余裕で収まる。 しかも無スクランブルなので、復調できればそのまま再生できる。
  • 既存の gr-isdbt にワンセグ復調の実績はあるが、GNU Radio 3.7〜3.8+SWIG 世代の“化石ビルド”で、いまの環境では素直に通らない。だったら自分で書く。

──というのがこのシリーズ。記念すべき #0 は環境構築から。買ったのは RTL-SDR Blog V4(R828D チューナー + RTL2832U)

RTL-SDR Blog V4 本体。RTL2832U / R828D / TCXO / Bias-T / HF 対応の表記が見える
買った RTL-SDR Blog V4。ラベルに RTL2832U / R828D / TCXO / Bias-T / HF が並ぶ。右の SMA にはアンテナ線を繋いでいる。

ハマりどころ1:「V4は専用ドライバが要る」は新しめのディストリなら気にしなくていい

ネットだと「V4は R828D なので rtl-sdr-blog の専用ドライバを入れろ、旧 osmocom ドライバだと動かない」とよく書かれている。半分本当で、半分はもう古い情報だ。試しに Ubuntu 26.04 の apt 版(rtl-sdr 2.0.2)をそのまま入れたら、V4 を正式認識して完動した。ソースビルドは不要だった。

sudo apt-get install -y rtl-sdr libusb-1.0-0-dev

ハマりどころ2:カーネルの地デジ(DVB-T)ドライバがデバイスを横取りする

挿すと Linux カーネルが dvb_usb_rtl28xxu(+ rtl2832_sdr など)でデバイスを掴んでしまい、SDR として開けない。/etc/modprobe.d/ で blacklist して外す。

echo -e "blacklist dvb_usb_rtl28xxu\nblacklist rtl2832_sdr" \
  | sudo tee /etc/modprobe.d/blacklist-rtlsdr.conf
sudo modprobe -r rtl2832_sdr dvb_usb_rtl28xxu

再起動でも外れるが、modprobe -r でその場でアンロードできた。

動作確認

$ rtl_test
Found 1 device(s):
  0:  RTLSDRBlog, Blog V4, SN: 00000001

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R828D tuner
RTL-SDR Blog V4 Detected
Supported gain values (29): 0.0 0.9 1.4 2.7 ... 44.5 48.0 49.6
Sampling at 2048000 S/s.
...
Samples per million lost (minimum): 0

R828D を認識、RTL-SDR Blog V4 Detected も出て、サンプルロス0。文句なし。母艦の準備はこれで完了。

次回

ワンセグの周波数で IQ(複素サンプル)を録って、OFDM 同期から手を付ける。ガードインターバル(CP)の自己相関でシンボル境界と周波数オフセットを拾う、OFDM の定番処理だ。ここが復調器の土台になる。

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

IP: 取得中...
216.73.216.251216.73.216.251