OpenAuto ProでワイヤレスAndreoid Autoを利用する場合、Raspberry PiとAndroidスマートフォンはWi-FiやBluetoothで通信することになります。
Raspberry Pi 3B+や4BにはWi-FiもBluetoothも搭載されているので、普通に考えれば外付けのアダプターは要りません。しかしBluetoothについては外付けのBluetoothアダプターを使用することが推奨されています。
ここではOpenAuto Proで使用するBluetoothアダプターの選び方と注意点についてまとめておきます。
ワイヤレスAndroid AutoにはWi-FiとBluetoothが必須
ワイヤレスAndroid AutoではWi-FiとBluetooth、2種類の無線機能を利用します。
OpenAuto Proの動作要件となっているRaspberry Pi 3B+や4Bはどちらも搭載されているので、わざわざ外付けのアダプターを用意しなくても大丈夫だろうと思われるかもしれません。実際、Wi-Fiは内蔵機能を利用しても特に問題はないです。
しかしBluetoothについては内蔵機能の使用は非推奨とされています。
内蔵BluetoothはワイヤレスAndroid Autoと相性が悪い
Raspberry Piで採用されているBroadcom製のBluetoothチップセットは、HFPプロファイルの利用時に問題を引き起こす可能性があるとのことでOpenAuto Proで使用することは推奨されていません。
HFPはBluetoothプロファイルの一種で、ハンズフリー通話を使用するために必要なプロファイルです。
そのためOpenAuto Proでは利用できないように内蔵Bluetoothが無効化された状態でインストールされます。
一応、/boot/config.txtを編集してdtoverlay=disable-btと記述されている行をコメントアウトすれば、内蔵BluetoothでワイヤレスAndroid Autoを実行することは可能です。ただしハンズフリー通話は凄まじい遅延が発生して使い物になりません。ナビや音楽再生の使用だけなら問題ない気もしますけどね。。
ハンズフリー通話を使用するのであれば、BroadcomではなくQualcomm製チップセットを搭載したBluetoothアダプターを使いましょう。
推奨品はQualcomm製チップセットを搭載したBluetoothアダプター
OpenAuto Proが推奨しているBluetoothアダプターはQualcomm製チップセットを搭載している製品です。Qualcomm製チップセット、もしくはCSRと記載されていればそれでも構いません。
適合製品をいくつか紹介しておきます。
TP-Link UB400
筆者が実際にOpenAuto Proで使用しているBluetoothアダプターです。Bluetoothのバージョンは4.0ですが1,000円以下で手に入ります。
TP-Linkは何かとお行儀が悪いイメージがありますが…安さに釣られました。特に問題なく使えています。
ちなみに同じくTP-Link製でBluetooth 5.0に対応しているUB500も購入してみました、UB500で採用されているチップセットはRealtek製で、最新のRaspberry Pi OSではサポート済みのようです。ただし旧バージョンのOpenAuto Pro 15だとそのままでは使えませんでした。カーネルをアップデートすれば使えそうな気もしますが、そうすると他の部分で不具合を引き起こしそうな気も…
Broadcom製チップセットは避けたほうが良いですが、他社製品でも新しいチップセットだとOSレベルで対応していないということもあり得るので、動作確認が取れている製品を購入することをおすすめします。
PLANEX BT-Micro4
国内メーカー、PLANEXからも実勢1,000円程度のBluetooth 4.0のアダプターが投入されています。
スペックはUB400とほぼほぼ同じで、Amazonのレビューを読んでみるとLinuxでの動作実績もあるようなので問題なく使えると思われます。
エレコム LBT-UAN05C1
エレコムのLBT-UAN05C1は価格がやや高めですが、Bluetoothの最大送信出力がClass1で上記2製品を上回っています。
とは言っても狭い車内で使用するのであればClass2でも何ら問題はなく、違いを実感することはないような気がします。
外付けのBluetoothアダプターの使用方法
外付けのBluetoothアダプターはただ取り付けただけでは正常に動作しません。
また最高のパフォーマンスを発揮するためにはBlueoothコーデックを追加してやる必要があります。
BlueotoothアダプターのMACアドレスを設定する
設置画面のAndroid Auto→Bluetoothを開くと、Bluetoothの使用モードを選択できるようになっています。ここで外付けを選択すると、さらにMACアドレスを入力できるようになるので設定しましょう。
MACアドレスはhciconfigコマンドで調べられます。内蔵されているBluetoothもあるので2つ表示されると思いますが、Bus: USBのほうを設定すればOKです。
$ hciconfig
hci1: Type: Primary Bus: USB
BD Address: XX:XX:XX:XX:XX:XX ...
扱えるBlueoothコーデックを追加する
OpenAuto Proはデフォルトの状態だとSBCしか利用できないので注意が必要です。SBCだと遅延が酷く、音質もあまり良くありません。
ちょっとだけ手間はかかりますが、手動で追加してやればaptX HDやAACといった高品質なコーデックも扱えるようになるので、以下の記事を参考にしてこれらのBluetoothコーデックにも対応させましょう。
まとめ
Raspberry Pi 3B+や4BにはBroadcom製のBluetoothチップセットが搭載されていますが、これはハンズフリー通話との相性が悪くて使い物になりません。
OpenAuto ProでワイヤレスAndroid Autoを利用したいのであれば、外付けのBluetoothアダプターが事実上必須です。
メーカーが推奨しているのはQualcomm製チップセット、CSRを採用している製品なので、該当するTP-LinkやPLANEX、エレコムのBluetoothアダプターを購入することをおすすめします。
コメント