RPi-Bluetooth Audio

De Wiki levelKro
Révision datée du 14 février 2021 à 01:02 par LevelKro (discussion | contributions) (Page créée avec « 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-... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

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
  • 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 /etc/rc.local
    • Ajouter avant le "exit 0", à la fin du document;
      /sbin/runuser pi -s /bin/bash -c /home/pi/btspkr.sh
    • Sauvegardez le fichier modifié et redémarrez;
      sudo reboot