RPi-Bluetooth Audio
De Wiki levelKro
Révision datée du 17 février 2021 à 00:21 par LevelKro (discussion | contributions)
Ce guide à pour but d'installer comme sortie audio unique le Bluetooth en mode de ligne de commande.
Pré-requis
- Mise à jour du système Raspbian OS;
sudo apt-get update sudo apt-get upgrade sudo apt-get autoremove sudo reboot
- Installation de PulseAudio;
sudo apt-get install pulseaudio pulseaudio-module-bluetooth dpkg -l pulseaudio pulseaudio-module-bluetooth
- Désactivation de l'audio par défaut (HDMI/Jack);
- Ouvrez le fichier de configuration dans Nano;
sudo nano /boot/config.txt
- Il faut commenter (#) les lignes suivantes;
dtparam=audio=on
hdmi_force_hotplug=1
- Ouvrez le fichier de configuration dans Nano;
- Exécutez le server PulseAudio;
pulseaudio --start
- La détection initial de votre appareil Bluetooth compatible A2DP;
bluetoothctl
- Une fois dans l'interface;
power on agent on default-agent scan on
Attendez quelques instant, les informations des appareils Bluetooth vont tranquillement s'afficher, cherchez votre appareil et repérez l'adresse MAC sous la forme XX:XX:XX:XX:XX:XX.
pair XX:XX:XX:XX:XX:XX trust XX:XX:XX:XX:XX:XX connect XX:XX:XX:XX:XX:XX
Sortez de l'interface Bluetooth avec;
quit
- Définissez le profile A2DP comme actif;
pacmd set-card-profile bluez_card.xx_xx_xx_xx_xx_xx a2dp_sink pacmd set-default-sink bluez_sink.xx_xx_xx_xx_xx_xx.a2dp_sink
- Testez avec eSpeak;
espeak "Hello World"
Activation du Bluetooth au démarrage
- Créez un script Bash pour simplifier vos commandes dans le dossier de Pi;
nano /home/pi/btspkr.sh
- Dans le document, vous allez inscrire les commandes suivantes;
#!/bin/bash echo "BTSPK Connection process" echo "Restart Bluetooth" sudo systemctl stop bluetooth sudo systemctl start bluetooth echo "Restart PulseAudio server" pulseaudio -k pulseaudio -D echo "Reload Bluetooth PulseAudio policy" pactl unload-module module-bluetooth-policy pactl load-module module-bluetooth-policy echo "Trying to connect the Bluetooth speaker" bluetoothctl << EOF power on agent on default-agent connect XX:XX:XX:XX:XX:XX EOF echo "Done BTSPK Connection process"
- Sauvegardez le fichier et rendez-le exécutable;
chmod +x /home/pi/btspkr.sh
- Ouvrez le fichier de lancement local;
sudo nano /home/pi/.profile
- Ajouter avant le "exit 0", à la fin du document;
[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && /home/pi/btspkr.sh
Noter que cette commande est pour exécuter avant de démarrer le serveur X (startx) et que dans ma version du fichier "btspkr.sh", elle contient la commande de démarrage du serveur X, pensez à tester et ajuster selon votre configuration. - Sauvegardez le fichier modifié et redémarrez;
sudo reboot