rfriendsでラジオ録音

ラジコ、らじるらじる、タイムフリーのラジオ番組を録音

RaspberryPi Zeroをラジオにする(bluetooth編)

 RaspberryPiをラジオにしたいとおもいました。今更いろいろ買い足したくはないが、なぜかbluetoothスピーカは持ってる人向けです。

RaspberryPi Zeroをラジオにするシリーズの一つです。
https://rfriends.hatenablog.com/entry/2022/05/01/154913

 

 以下に設定方法を記述します。

0.はじめに

 以前ダイソーで550円で手に入れたbluetoothスピーカがあることを思い出しやってみました。

 

必要なもの

Raspberry Pi (ここではZeroを使用)

bluetoothスピーカ

 私は、ダイソーbluetoothスピーカを使用しました。

1.Raspberry Pi

1)rfriendsのインストールおよび設定を行う。

 以下を参照して、rfriendsをインストールしてください。

http://ceres.s501.xrea.com/wp_rfriends/index.php/install-rpi/

2)pulseaudio,bluetoothモジュールのインストール

$ sudo apt-get install pulseaudio pulseaudio-module-bluetooth

以下の1行を末尾に追加する。
$ sudo vi /etc/pulse/default.pa
load-module module-switch-on-connect

注意)pulseaudioの設定をしている場合は、以下の記述を元に戻してください。これをしないと音が出ません。

$ cd ~/
$ vi .bashrc
以下の1行をコメントアウト
#export PULSE_SERVER=localhost

2.ペアリング

RaspberryPiとbluetoothスピーカーをペアリングする。
bluetoothスピーカーの電源を入れます。購入時の説明書等でbluetoothスピーカーの機種名を調べておく。私の場合はSR9910でした。

bluetoothctlを起動し、以下のコマンドを入力する
・scan on (bluetooth機器をスキャンする)
・connect(見つかった機器に接続する)
・trust(接続した機器を信頼設定する)

・paired-devices( ペアリングした機器一覧を表示する)

$ sudo bluetoothctl
Agent registered
[bluetooth]# scan on
Discovery started
.....
[NEW] Device XX:XX:XX:XX:XX:XX SR9910
.....
[bluetooth]# connect XX:XX:XX:XX:XX:XX
Attempting to connect to XX:XX:XX:XX:XX:XX
[CHG] Device XX:XX:XX:XX:XX:XX Connected: yes
.....
Connection successful
[SR9910]# trust XX:XX:XX:XX:XX:XX
[CHG] Device XX:XX:XX:XX:XX:XX Trusted: yes
Changing XX:XX:XX:XX:XX:XX trust succeeded
[SR9910]# paired-devices
Device XX:XX:XX:XX:XX:XX SR9910
[SR9910]# quit

 

3.音声出力テスト

bluetoothスピーカーの電源を入れなおしてください。RaspberryPiと接続するとピンポーンという音が鳴ります。(ただし、機種により異なる)

以下のコマンドを入力する。

$ speaker-test -t wav

これで、スピーカより音が出たら成功です。出ない場合は設定を見直してください。

4.rfriendsよりラジオを再生

1) rfriendsを起動し、[2-2]放送中番組を選択する。
2) 聞きたい番組を選択、r (+リターン)。
これで、スピーカよりラジオの音声が流れるはずです。
3) 番組を変えるには、別の番組を選択するだけです。
4) 中止する場合は、[1-2]再生中止を選択してください。
5) 録音した番組を再生したい場合は、[1-3-2]録音データの再生を選択してください。
6) 音量調節は以下のコマンドです。

$ alsamixer

5.トラブルシューティング

 bluetoothスピーカが自動でオフになったり、手動でオフにした場合、再度パワーをオンにしてもうまくつながらない機種があります。対処については検討中ですが、とりあえず以下のことをやればつながります。

bluetoothスピーカの名称 : SR1323 (ここでの例)

Bluetooth Device Address : XX:XX:XX:XX:XX:XX

-- (マイナスが2つ)

$ sudo bluetoothctl -- paired-devices
Device XX:XX:XX:XX:XX:XX SR1323
$ sudo bluetoothctl -- connect XX:XX:XX:XX:XX:XX

-------------------------------------------------

上記のことを行うスクリプトをアップしました。ダウンロードして使ってください。

$ wget http://rfriends.s1009.xrea.com/files/btconnect.sh
$ sh btconnect.sh
bluetooth utility ver. 0.01

Device 7B:56:CF:D7:6A:FE SR1323

接続したい機器の電源をONにしてください
接続しますか(y/N) ?
y
Attempting to connect to 7B:56:CF:D7:6A:FE
Connection successful

Connection successful と表示されたら成功です

-------------------------------------------------

それでもうまくいかない場合は、ペアリングをremoveして再度やりなおすといいかもしれません。

以下のサイトが参考になります。

bluetoothctl のコマンド一覧と使い方をまとめてみた - Qiita

 

動作確認機種

1) ダイソーSR9910 550円 自動再接続 OK

2) ダイソーSR1323 770円 自動再接続 BAD

電源をONにしたときに毎回以下のコマンドが必要。

$ sudo bluetoothctl -- connect XX:XX:XX:XX:XX:XX

3) TDK TW234 自動再接続 OK

ずいぶん以前にCostcoで購入し、しまってあったものです。

4) LEVIN Bluetoothイヤホン Maraton 自動再接続 OK

amazonで1年位前に購入したもの。

5) Anker SoundCore 自動再接続 OK

6.その他

 思ったより簡単にできたと思います。

 では、rfriendsで楽しいラジオライフを!

 

以上