Voici une explication très détaillée:
Den3243
Voici une solution en ligne de commande:
Commençons par numériser, coupler et faire confiance à votre appareil avec "bluetoothctl". Pour ce faire, exécutez ceci sur la ligne de commande, votre terminal:
bluetoothctl -a
Vous devriez obtenir une invite de commande différente comme:
[bluetooth]
Avec votre haut-parleur BT allumé, tapez ceci:
scan on
Dans quelques instants, vous devriez voir les appareils BT disponibles. À côté de l'appareil se trouve son adresse MAC, comme: 00: AA: 22: BB: 33. Tapez maintenant ceci:
info <your mac address>
Excluez les caractères supérieur et inférieur à. Ce que vous recherchez est une sorte d'association précédente avec votre enceinte BT. Vous saurez qu'il y avait une association précédente car bluetoothctl affichera des informations sur votre appareil BT. Certaines de ces informations concerneront le périphérique à coupler et à approuver. C'est bon.
Si bluetoothctl se plaint qu'il n'y a pas d'appareil, alors nous devons le configurer à ce moment. Pour ce faire, tapez ceci:
pair <your mac address>
Vous devriez voir un message de réussite concernant le couplage de votre appareil avec succès. Faisons maintenant confiance à notre nouvel appareil BT. Tapez ceci:
trust <your mac address>
Encore une fois, vous devriez voir un message de réussite sur la confiance. Permettez-moi de vous avertir. Votre appareil BT peut se connecter, puis il peut ne pas le faire. N'ayez crainte, nous ne voulons pas qu'il se connecte. Allez-y et quittons "bluetoothctl". Pour ce faire, tapez:
quit
Vous serez maintenant ramené à l'invite de ligne de commande. Dans un article précédent, je vous ai suggéré de créer un répertoire de scripts dans votre répertoire personnel. Si ce n'est pas le cas, allez-y et faites-le maintenant. Tapez ceci à l'invite de commande:
mkdir -p ~/scripts
Appuyez sur Entrée et créons maintenant notre script bash de paire automatique. Tapez ceci:
nano ~/scripts/autopair
Entrez ce code dans le script:
#!/bin/bash
bluetoothctl << EOF
connect [enter your MAC add]
EOF
Excluez les crochets!
Appuyez maintenant sur CTRL + x en même temps, puis appuyez sur Entrée pour enregistrer le script. Nous devons le rendre exécutable. Pour ce faire, tapez ceci:
chmod +x ~/scripts/autopair
Je suppose que vous n'utilisez pas de haut-parleurs analogiques externes dans la prise 3,5 mm. Si cela est vrai, désactivons alsa. Pour ce faire, éditons un fichier dans le répertoire / boot appelé config.txt. Pour ce faire, saisissez ceci dans votre terminal:
sudo nano /boot/config.txt
Page vers le bas du fichier et recherchez deux lignes qui se lisent:
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
Placez un (signe dièse #) devant la ligne qui lit:
dtparam=audio=on
Ressembler à:
#dtparam=audio=on
Appuyez sur CTRL + x puis appuyez sur Entrée pour enregistrer votre fichier.
Je suppose que pulseaudio est installé? Sinon, allez-y et exécutez cette commande à partir de la ligne de commande:
sudo apt-get update && sudo apt-get install pulseaudio -y
Cela vous donnera un élément très important pour faire fonctionner le bluetooth! Modifions maintenant notre fichier .bashrc dans notre répertoire personnel. Tapez ceci:
nano ~/.bashrc
Page vers le bas et ajoutez cette ligne:
pulseaudio --start
Appuyez sur CTRL + x et maintenant appuyez sur Entrée pour enregistrer votre fichier.
D'ACCORD! Nous devons entrer dans le monde Python. J'ai écrit un programme Python qui surveillera le périphérique Bluetooth. En bref, il activera la connexion entre RPi et votre haut-parleur Bluetooth, une fois que votre haut-parleur Bluetooth est allumé. Et vice versa. Créons un répertoire appelé python dans votre répertoire personnel Pour ce faire, tapez ceci:
mkdir -p ~/python
Créons maintenant le fichier programme python. Pour ce faire, tapez ceci:
nano ~/python/on.py
Dans ce fichier, nous devons copier et coller les éléments suivants:
#!/usr/bin/python
#
# Monitor removal of bluetooth reciever
import os
import sys
import subprocess
import time
def blue_it():
status = subprocess.call('ls /dev/input/event0 2>/dev/null', shell=True)
while status == 0:
print("Bluetooth UP")
print(status)
time.sleep(15)
status = subprocess.call('ls /dev/input/event0 2>/dev/null', shell=True)
else:
waiting()
def waiting():
subprocess.call('killall -9 pulseaudio', shell=True)
time.sleep(3)
subprocess.call('pulseaudio --start', shell=True)
time.sleep(2)
status = subprocess.call('ls /dev/input/event0 2>/dev/null', shell=True)
while status == 2:
print("Bluetooth DOWN")
print(status)
subprocess.call('~/scripts/autopair', shell=True)
time.sleep(15)
status = subprocess.call('ls /dev/input/event0 2>/dev/null', shell=True)
else:
blue_it()
blue_it()
Appuyez maintenant sur CTRL + x puis appuyez sur Entrée pour enregistrer le fichier programme Python. Maintenant, nous devons rendre ce fichier exécutable. Pour ce faire, tapez ceci:
chmod +x ~/python/on.py
Enfin, ajoutons ceci à notre script .bashrc dans notre répertoire personnel:
nano ~/.bashrc
Page vers le bas du fichier et ajoutez ces deux lignes:
wait
~/python/on.py
Appuyez maintenant sur CTRL + x puis appuyez sur Entrée pour enregistrer. Allumez votre haut-parleur Bluetooth et redémarrez votre Raspberry Pi.
Bonne chance!
-nitrolinux