EchoをBluetoothスピーカーとして利用する方法のメモです。Echoとも接続出来ますが、そのままだと出力がラズパイのスピーカーに出てしまい軽くハマったのでやった事を残しておきます。全部コマンド操作でやります。EchoのBluetooth接続の仕方から。第2世代とペアリングしてみました。ユーザーをbluetooth、audioグループに追加Bluetoothスピーカーを使うユーザーがbluetooth、audioグループに所属している必要があるので追加します。デフォルトのpiユーザーを使っている場合はこの操作は不要です。Echoとペアリングするまずは必要なパッケージのインストール。bluealsabluetoothctlコマンドを使いデバイスの検索を行います。scanすると付近にあるBluetoothデバイスが続々と出てきますので、そうしたらアレクサに「アレクサ、ペアリングして」と話しかけます。アレクサアプリからも出来るみたいなのですがやり方がわからなかったので手っ取り早くボイスコマンドを使いました。Echoを見つけたらペアリングして接続します。YY:YY:YY:YY:YY:YYうまくいっていればここでアレクサが新しいデバイスと接続したと知らせてくれます。quitラズパイから音を鳴らしてみます。aplayコマンドの-DオプションでBluetoothデバイスを指定します。/usr/share/sounds/alsa/Front_Center.wav「フロント、センター」とスピーカーから聞こえたら成功です。Echoと接続する設定をしておきます。~/.asoundrc“XX:XX:XX:XX:XX:XX”の部分は自身の物に置き換えます。繋いだ直後だとスピーカーの音量がMAXになっているのでで調整します。amixerで状態を調べます。Echoを指定して音量を50%に設定します。[on]ただし、再接続すると元に戻るのでそこは注意。EchoとのBluetooth接続を維持するたまにBluetooth接続が切れてしまうようで突然再接続したと喋りだすので、定期的に無音の音源を再生してなんちゃってキープアライブします。Echoに音声を出力するサンプルです。音源にはwavファイルを利用します。PythonはPyenv経由でインストールした3.6.10で検証。3.7系だとpyaudioモジュールがインストール出来なかった。(未解決)Pyenvについては書きを参照。OSは違いますがインストール方法は同じです。CentOSにPyenvをインストールしてPython3の開発環境を構築するpyaudioモジュールはこのようにインストールします。pyaudioPython経由でwavファイルを再生するサンプルコードです。"__main__":play("/usr/share/sounds/alsa/Front_Center.wav")実行してスピーカーから音が聞こえたら成功です。