Reconecte o dispositivo Bluetooth na linha de comando

Reconecte o dispositivo Bluetooth na linha de comando

Depois de um tempo usando meus fones de ouvido bluetooth, eles às vezes aumentam a latência e começam a falhar. Minha solução manual é desconectá-los e reconectá-los; no entanto, isso rapidamente se torna irritante. Como posso reconectar meus fones de ouvido usando um script?

Responder1

O script a seguir encontra o primeiro dispositivo na lista de dispositivos Bluetooth do computador, reconecta-o e alterna o perfil de áudio para o perfil A2DP de alta qualidade. Em alguns casos, não é necessário reconectar, mas mudar o perfil de áudio de A2DP para HSP e vice-versa resolve (comentado abaixo).

#!/bin/sh

device=$(echo -e 'list' | bluetoothctl | grep Device)
name=$(echo $device | sed -n 's/.* [0-9A-C:]\{17\} \(.*\)/\1/p')
address=$(echo $device | awk '{ print $4; }')

echo "Disconnect $name ($device)"
echo -e "disconnect $address" | bluetoothctl
sleep 5

echo "Connect $name ($device)"
echo -e "connect $address" | bluetoothctl
sleep 5

card=$(pacmd list-cards | grep -oP 'name: <\K(bluez[^>]*)')

# echo "Switching $card to HSP"
# pacmd set-card-profile $card headset_head_unit
# sleep 1

echo "Switching $card to A2DP"
pacmd set-card-profile $card a2dp_sink

informação relacionada