Paso 5: Configurar la secuencia de comandos que es ejecutado cuando se conecta un dispositivo Bluetooth
Vamos a configurar primero una regla en nuestro udev que afirma que cuando se conecta un dispositivo, nuestra secuencia de comandos que se ejecutan. Ejecute el comando siguiente para abrir la lista de reglas de udev.
sudo nano /etc/udev/rules.d/99-input.rules
Debería haber sólo una única línea allí que parece:
Subsistema == "de entrada", grupo = "entrada", MODE = "0660"
Por debajo de ella, vamos a seguir adelante y añadir la siguiente línea:
KERNEL == "entrada [0-9] *", RUN +="/ usr/lib/udev/bluetooth"
Guardar y salir.
Ahora vamos a ahorrar ese script que se hace referencia al archivo anterior de la regla. Primer cheque para ver si una udev / directorio existe. Hacer sudo ls-/usr/lib/udev de la . Si no existe adelante y crear así: sudo mkdir /usr/lib/udev
sudo nano /usr/lib/udev/bluetooth
Copia y pegar (o tipo es hacia fuera si no tienes suerte) la siguiente secuencia de comandos en su terminal.
Nota: no escribir este script solo. He encontrado durante la investigación (por qué reinventar la rueda si no es necesario) y modificados que funcionan de la manera que se necesitaba para ser tan agradable como sea posible, agujas del Bluetooth.
#! / bin/bash ACCIÓN = $(expr "$ACTION": "\([a-zA-Z]\+\).*") # Apagar BT Descubre modo antes de conectar el dispositivo BT existente a audio # establece la salida de audio en el análogo # Configure el nivel de volumen al 100%
#change si no salida de audio analógico por defecto.
#THIS no funcionó para mi PI, así que añadido un amixer debajo de comando
AUDIOSINK = "alsa_output.platform-bcm2835_AUD0.0.analog-stereo"
echo "ejecutando script bluetooth... | $ACTION| ">> /var/log/bluetooth_dev
Si ["$ACTION" = "agregar"]
entonces
hciconfig hci0 noscan
# COMENTARIO QUE ESTA LÍNEA HACIA FUERA SI USTED QUIERE LA SALIDA DE AUDIO A TRAVÉS DE HDMI
amixer cset numid = 3 1
amixer set Master 100%
pacmd set-fregadero-volumen 0 65537
para dev en $(buscar /sys/devices/virtual/input o - nombre de entrada) sueño 1 CONFIRMAR ='sudo -u pi pactl lista corta | grep $bluez_dev'
hacer
Si [-f "$dev nombre"]
entonces
Mac = $(cat "$dev/name" | sed 's/:/_/g')
bluez_dev = bluez_source. $mac
Si [! - z "$CONFIRM"]
entonces
echo "configuración bluez_source: $bluez_dev" >> /var/log/bluetooth_dev
fuente de eco pactl carga módulo módulo loopback = fregadero de bluez_dev $= tasa de $AUDIOSINK = 44100 adjust_time = 0 >> /var/log/bluetooth_dev
fuente de módulo-bucle de carga módulo de sudo -u pi pactl = fregadero de bluez_dev $= tasa de $AUDIOSINK = 44100 adjust_time = 0 >> /var/log/bluetooth_dev
fi
fi
hecho
fi
Si ["$ACTION" = "eliminar"]
entonces
# Activar bluetooth descubrimiento Si desconecta el dispositivo
sudo hciconfig hci0 piscan
fi
Guardar y salir. Ahora vamos a modificar los permisos del archivo para que sea ejecutable.
sudo chmod 774 /usr/lib/udev/bluetooth
¡ Excelente! El Raspberry PI es ahora capaz de reproducir audio vía A2DP de Bluetooth! Whoo! Ahora vamos a dar un paso más girando en modo de detección y auto aceptación derecho conexiones cuando el PI se registra en la línea de comandos automáticamente.