Help us understand the problem. What is going on with this article?

Raspberry PI 3 で Bluetooth(A2DP)

More than 3 years have passed since last update.

概要

Raspberry PI 3でBluetooth(A2DP)スピーカ(もしくはヘッドセットなど)で音を鳴らす。
※ A2DPのみです。HSP/HFPでは接続できていません。

環境

  • Raspberry PI 3
  • Raspbian Jessie Lite (May 2016)
  • Bluetooth(A2DP)スピーカ(もしくはヘッドセットなど)

前準備

  • 以下のコマンドを実行し、必要なパッケージをインストールする。
sudo apt install pulseaudio-module-bluetooth
  • 以下の内容で「/etc/systemd/system/pulseaudio.service」ファイルを作成する。
[Unit]
Description=Pulse Audio

[Service]
Type=simple
ExecStart=/usr/bin/pulseaudio --system --disallow-exit --disable-shm

[Install]
WantedBy=multi-user.target
  • 以下の内容で「/etc/dbus-1/system.d/pulseaudio-bluetooth.conf」ファイルを作成する。
<busconfig>

  <policy user="pulse">
    <allow send_destination="org.bluez"/> 
  </policy>

</busconfig>
  • 「/etc/pulse/system.pa」ファイルの最後に以下の内容を追加する。
### Automatically load driver modules for Bluetooth hardware
.ifexists module-bluetooth-policy.so
load-module module-bluetooth-policy
.endif

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif
  • 以下のコマンドを実行し、pulseaudioサービスを起動する。
sudo systemctl start pulseaudio.service
  • 以下のコマンドを実行し、pulseaudioサービスが自動起動するようにする。
sudo systemctl enable pulseaudio.service

接続

  • 以下のコマンドを実行する。
sudo bluetoothctl
  • [bluetooth]# シェルが起動する。
  • 以下のコマンドを実行し、デバイスのスキャンを行う。
[bluetooth]# scan on
Discovery started
[CHG] Controller XX:XX:XX:XX:XX:XX Discovering: yes
  • スピーカの電源を入れてペアリングモードにすると以下の通り発見される。
[NEW] Device XX:XX:XX:XX:XX:XX 機器の名前
  • 以下のコマンドを実行し、デバイスのスキャンの停止をする。
[bluetooth]# scan off
[CHG] Device XX:XX:XX:XX:XX:XX RSSI is nil
Discovery stopped
[CHG] Controller XX:XX:XX:XX:XX:XX Discovering: no
  • 以下のコマンドを実行し、デバイスのペアリングを行う。
[bluetooth]# pair XX:XX:XX:XX:XX:XX
Attempting to pair with XX:XX:XX:XX:XX:XX
[CHG] Device XX:XX:XX:XX:XX:XX Connected: yes
[CHG] Device XX:XX:XX:XX:XX:XX Name: 機器の名前
[CHG] Device XX:XX:XX:XX:XX:XX Alias: 機器のエイリアス
[CHG] Device XX:XX:XX:XX:XX:XX UUIDs:
    00001108-0000-1000-8000-00805f9b34fb
    0000110b-0000-1000-8000-00805f9b34fb
    0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device XX:XX:XX:XX:XX:XX Paired: yes
Pairing successful
[CHG] Device XX:XX:XX:XX:XX:XX Connected: no
  • なぜか切断されてしまったので、もう一度接続を行う。(切断されなければ再接続は不要だと思います。)
[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
  • 以下のコマンドを実行し、ペアリングしたデバイスを信頼する。(次回以降自動的に接続する?)
[bluetooth]# 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
  • 以下のコマンドを実行し、[bluetooth]# シェルを終了する。
[bluetooth]# quit
[DEL] Controller XX:XX:XX:XX:XX:XX raspberrypi [default]

参考サイト

https://github.com/ev3dev/ev3dev/issues/198

nattof
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away