Conecte-se a um dispositivo Bluetooth via Terminal

50

Estou usando hortelã 15 com canela.

Comprei um conjunto de alto-falantes bluetooth e estou tentando conectar-me a eles via terminal. Através da GUI, posso vê-los normalmente e estou conectado a eles. Quero criar um pequeno script para que, toda vez que estiverem visíveis, eu os conecte automaticamente.

Estou tentando digitalizá-los com:

varredura do hcitool

Mas eu entendo

A digitalizar ...

e depois de alguns segundos o processo morre.

A mesma coisa com hidd --search.

Se eu correr hciconfig scan, recebo:

hci0:   Type: BR/EDR  Bus: USB
    BD Address: 40:2C:F4:78:E8:69  ACL MTU: 1021:8  SCO MTU: 64:1
    UP RUNNING PSCAN ISCAN 
    RX bytes:130700 acl:22 sco:0 events:18527 errors:0
    TX bytes:31875398 acl:36784 sco:0 commands:75 errors:0

Suponho que esteja apenas dizendo meu endereço bluetooth e que esteja ligado.

Como já disse, através da interface de usuário normal, posso ver os alto-falantes e estou conectado a eles, mas através do terminal não recebo nada.

Na verdade, é bem engraçado hcitool scannão encontrar nada, pois meus alto-falantes estão conectados e toda vez que eu executo o comando, o som dos alto-falantes é interrompido por alguns segundos.

Zippie
fonte

Respostas:

32

Consegui fazer isso via bluez-tools :

sudo apt-get install bluez-tools

Lista de dispositivos para obter o endereço MAC do meu dispositivo:

bt-device -l

e conectar-se com sucesso a ele:

bt-audio -c 01:02:03:04:05:06


Lembre-se de que o bt-audiorecurso está sendo reimplementado para versões mais recentes.

Zippie
fonte
9
Provavelmente isso é para uma versão antiga, já que não há bt-audiomais comando
Édouard Lopez #
11
Para atualização, siga o problema github.com/khvzak/bluez-tools/issues/13
Édouard Lopez
No Linux Mint 17 (Cinnamon), usei com sucesso bluez-test-audio connect MAC_ADDRESSum dispositivo de áudio já emparelhado.
Suzana
2
Eu usei bt-device -c mac_addresscom sucesso no Debian. 9.
jbrock 22/01
11

Eu fiz isso sudo apt-get install bluez-tools, porque eu usei em algum momento.

Depois de encontrar o dispositivo hcitool scan, corri para bluez-simple-agent hci0 Xonde X é o endereço mac do dispositivo que estava adicionando. Isso criou a conexão com o dispositivo.

Então eu corri hciconfig scane parece ter iniciado automaticamente a conexão.

user62474
fonte
11
Ubuntu 16.04. Não há bluez-simple-agentcomando.
LRDPRDX 23/09
2

Eu sei que isso é meio tarde, mas eu estava jogando com esse comando hcitoole gostaria de salientar algo que observei que resolve seu problema de fazer uma verificação e o processo "apenas morrendo". O problema é que a verificação só funciona se os dispositivos não estiverem emparelhados. No seu caso, você diz que pode ver os alto-falantes conectados na GUI, o que significa que eles já foram pareados ... portanto, a verificação não retorna nada.

Estou trabalhando em como emparelhar / conectar dispositivos com a mesma ferramenta, embora possa ver que você recebeu outras opções. Atualizarei minha resposta assim que eu gerenciar.

KipchirchirIan
fonte
2

Para fazer isso com os utilitários embutidos, você pode seguir este processo um pouco mais manual usando bluetoothctl.

hcitool scan  # to get the MAC address of your device
bluetoothctl
agent on
scan on  # wait for your device's address to show up here
scan off
trust MAC_ADDRESS
pair MAC_ADDRRESS
connect MAC_ADDRESS

As postagens nesta edição do Github sugerem uma maneira de criar um script, mas isso não funcionou para mim, pois eu precisava esperar manualmente pela verificação para obter resultados.

Máx.
fonte
0

Eu tenho o seguinte instalado no Debian 9.

blueman/stable,now 2.0.4-1 amd64 [installed]
bluez/stable,stable,now 5.43-2+deb9u1 amd64 [installed]
bluez-obexd/stable,stable,now 5.43-2+deb9u1 amd64 [installed,automatic]
bluez-tools/stable,now 0.2.0~20140808-5+b2 amd64 [installed]
pulseaudio-module-bluetooth/stable,now 10.0-1+deb9u1 amd64 [installed]

Já emparelhei meus fones de ouvido Bluetooth a um adaptador USB Bluetooth na minha área de trabalho usando o aplicativo Bluetooth GUI Manager. Eu tenho um atalho de teclado que executa os dois comandos a seguir: bt-device -c 00:02:5B:01:3C:3B; pacmd set-default-sink bluez_sink.00_02_5B_01_3C_3B.a2dp_sink

  1. Conecte fones de ouvido ao adaptador USB Bluetooth. (Use bt-device -lpara obter o endereço MAC.)
  2. Defina o áudio Bluetooth como a saída padrão. (Use pacmd list-sinks | awk '/index:/ {print $0}; /name:/ {print $0}; /device\.description/ {print $0}'para obter o nome correto.)
jbrock
fonte
-1

Isso pode ser um pouco tarde, mas eu tive exatamente o mesmo problema, com a mesma saída de hciconfig.

No entanto, sudo hcitool lescanfiz o trabalho para mim - talvez ainda possa ajudá-lo!

unihorn
fonte