RaspberryPiをラジオにしたいとおもいました。今更いろいろ買い足したくはないが、なぜかbluetoothスピーカは持ってる人向けです。
RaspberryPi Zeroをラジオにするシリーズの一つです。
https://rfriends.hatenablog.com/entry/2022/05/01/154913
以下に設定方法を記述します。
0.はじめに
以前ダイソーで550円で手に入れたbluetoothスピーカがあることを思い出しやってみました。
必要なもの
・Raspberry Pi (ここではZeroを使用)
・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) rfriends3を起動し、[2-9]ラジコ-番組聴取を選択する。
2) 聞きたい番組を選択。
これで、スピーカよりラジオの音声が流れるはずです。
3) 番組を変えるには、別の番組を選択するだけです。
4) 中止する場合は、[1-2]再生中止を選択してください。
5) 音量調節は以下のコマンドです。
$ 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で楽しいラジオライフを!
以上