Usando o bluez para acessar dispositivos Bluetooth Low Energy?

4

Gostaria de me conectar a um dispositivo Bluetooth de baixa energia (BTLE, Bluetooth Smart) usando uma caixa linux com bluez e um dongle bluetooth. Eu tenho dongle Orico BTA-402 com chipset CSR; Ubuntu 14.04. Eu descobri como fazer o dongle aparecer como um dispositivo para um telefone (hciconfig hci0 leadv 3).

O que eu gostaria é o oposto, para que a caixa dongle / linux verifique os dispositivos, conecte-se a um dispositivo, enumere as características e as leia / grave. Como eu faço isso?

    
por Alex I 15.05.2015 / 02:11

3 respostas

2

A resposta do lecan do hcitool está incompleta. ele irá fazer um loop. Você quer um tempo limite, mas um tempo limite que não causará problema ao hcitool (o sinal padrão seria)

Por 5 segundos:

timeout -s SIGINT 5s hcitool -i hci0 lescan --passive

Então você pode usar o gatttool:

sudo gatttool -i hci1 -b BC:6A:29:AC:2E:B4 -I

Para mais detalhes sobre o que fazer após a conexão: link

    
por 15.10.2016 / 23:36
1
hciconfig hci0 up piscan  

(assumindo que 'hci0' é o nome do dispositivo para o seu dongle bluetooth)

O interruptor 'piscan' habilita tanto 'pscan' quanto 'iscan'.

Trecho da manpage:

piscan Enable page and inquiry scan.

noscan Disable page and inquiry scan.

iscan Enable inquiry scan, disable page scan.

pscan Enable page scan, disable inquiry scan.

    
por 06.07.2015 / 08:30
1

Foi demonstrado por jaredwolff que você pode usar hcitool

hcitool lescan

Seu dispositivo deve aparecer assim: F4:C7:F8:0A:BF:C9 TWI . Se não aparecer, talvez (o dispositivo que você está pesquisando) não esteja anunciando em si.

Para se conectar a um dispositivo, você pode usar o modo% inter_de% interative:

$ gatttool -I
[                 ][LE]> connect <BLE ADDRESS>

Dentro de gatttool você pode usar gatttool para obter as alças disponíveis, char-desc para ler e char-read-hnd para escrever, veja char-write-req para mais detalhes.

    
por 14.10.2016 / 17:38