Combinação de Bose QC 35 através de Bluetooth no Fedora

23

Estou executando o Fedora 24 com o Gnome Shell. Eu tento emparelhar meu novo Bose QuietComfort 35 com Bluetooth.

Eu comecei a usar a interface do Gnome. Infelizmente, a conexão parece não se sustentar. Aparece como se conectando / desconectando constantemente:

link

Meu próximo passo foi realizar algumas verificações usando a linha de comando. Primeiro, verifiquei se o serviço bluetooth está em execução:

$ sudo systemctl status bluetooth
● bluetooth.service - Bluetooth service
   Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
   Active: active (running) since dim. 2016-06-26 11:19:24 CEST; 14min ago
     Docs: man:bluetoothd(8)
 Main PID: 932 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 512)
   Memory: 2.1M
      CPU: 222ms
   CGroup: /system.slice/bluetooth.service
           └─932 /usr/libexec/bluetooth/bluetoothd

juin 26 11:19:24 leonard systemd[1]: Starting Bluetooth service...
juin 26 11:19:24 leonard bluetoothd[932]: Bluetooth daemon 5.40
juin 26 11:19:24 leonard bluetoothd[932]: Starting SDP server
juin 26 11:19:24 leonard bluetoothd[932]: Bluetooth management interface 1.11 initialized
juin 26 11:19:24 leonard bluetoothd[932]: Failed to obtain handles for "Service Changed" characteristic
juin 26 11:19:24 leonard systemd[1]: Started Bluetooth service.
juin 26 11:19:37 leonard bluetoothd[932]: Endpoint registered: sender=:1.68 path=/MediaEndpoint/A2DPSource
juin 26 11:19:37 leonard bluetoothd[932]: Endpoint registered: sender=:1.68 path=/MediaEndpoint/A2DPSink
juin 26 11:20:26 leonard bluetoothd[932]: No cache for 08:DF:1F:DB:A7:8A

Depois, tentei seguir algumas explicações do Wiki do Archlinux sem sucesso. O emparelhamento está falhando Falha ao emparelhar: org.bluez.Error.AuthenticationFailed :

$ sudo bluetoothctl 
[NEW] Controller 00:1A:7D:DA:71:05 leonard [default]
[NEW] Device 08:DF:1F:DB:A7:8A Bose QuietComfort 35
[NEW] Device 40:EF:4C:8A:AF:C6 EDIFIER Luna Eclipse
[bluetooth]# agent on
Agent registered
[bluetooth]# scan on
Discovery started
[CHG] Controller 00:1A:7D:DA:71:05 Discovering: yes
[CHG] Device 08:DF:1F:DB:A7:8A RSSI: -77
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000febe-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A RSSI: -69
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000febe-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000110d-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000110b-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000110e-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000110f-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 00001130-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000112e-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 00001108-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 00001131-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:1F:DB:A7:8A UUIDs: 00000000-deca-fade-deca-deafdecacaff
[bluetooth]# devices
Device 08:DF:1F:DB:A7:8A Bose QuietComfort 35
Device 40:EF:4C:8A:AF:C6 EDIFIER Luna Eclipse
[CHG] Device 08:DF:1F:DB:A7:8A RSSI: -82
[CHG] Device 08:DF:1F:DB:A7:8A RSSI: -68
[CHG] Device 08:DF:1F:DB:A7:8A RSSI: -79
[bluetooth]# trust 08:DF:1F:DB:A7:8A
Changing 08:DF:1F:DB:A7:8A trust succeeded
[bluetooth]# pair 08:DF:1F:DB:A7:8A
Attempting to pair with 08:DF:1F:DB:A7:8A
[CHG] Device 08:DF:1F:DB:A7:8A Connected: yes
Failed to pair: org.bluez.Error.AuthenticationFailed
[CHG] Device 08:DF:1F:DB:A7:8A Connected: no

Eu tentei desativar o SSPMode, mas parece não ter efeito:

$ sudo hciconfig hci0 sspmode 0

Quando uso o bluetoothctl, o journalctl registra o seguinte:

juin 26 11:37:21 leonard sudo[4348]: lpellegr : TTY=pts/2 ; PWD=/home/lpellegr ; USER=root ; COMMAND=/bin/bluetoothctl
juin 26 11:37:21 leonard audit[4348]: USER_CMD pid=4348 uid=1000 auid=4294967295 ses=4294967295 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 msg='cwd="/home/lpellegr" cmd="bluetoothctl" terminal=pt
juin 26 11:37:21 leonard audit[4348]: CRED_REFR pid=4348 uid=0 auid=4294967295 ses=4294967295 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 msg='op=PAM:setcred grantors=pam_env,pam_fprintd acct="roo
juin 26 11:37:21 leonard sudo[4348]: pam_systemd(sudo:session): Cannot create session: Already occupied by a session
juin 26 11:37:21 leonard audit[4348]: USER_START pid=4348 uid=0 auid=4294967295 ses=4294967295 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 msg='op=PAM:session_open grantors=pam_keyinit,pam_limits,
juin 26 11:37:21 leonard sudo[4348]: pam_unix(sudo:session): session opened for user root by (uid=0)
juin 26 11:38:06 leonard bluetoothd[932]: No cache for 08:DF:1F:DB:A7:8A

Infelizmente, não entendi a saída. Qualquer ideia ou ajuda é bem vinda. Estou bem perdido.

O receptor bluetooth que uso é um dongle USB da CSL-Computer. Versão Bluetoothctl é 5.40. Estou executando o kernel 4.5.7-300.fc24.x86_64.

Abaixo estão os recursos suportados pelo meu adaptador bluetooth:

hciconfig -a hci0 features
hci0:   Type: BR/EDR  Bus: USB
    BD Address: 00:1A:7D:DA:71:05  ACL MTU: 310:10  SCO MTU: 64:8
    Features page 0: 0xff 0xff 0x8f 0xfe 0xdb 0xff 0x5b 0x87
        <3-slot packets> <5-slot packets> <encryption> <slot offset> 
        <timing accuracy> <role switch> <hold mode> <sniff mode> 
        <park state> <RSSI> <channel quality> <SCO link> <HV2 packets> 
        <HV3 packets> <u-law log> <A-law log> <CVSD> <paging scheme> 
        <power control> <transparent SCO> <broadcast encrypt> 
        <EDR ACL 2 Mbps> <EDR ACL 3 Mbps> <enhanced iscan> 
        <interlaced iscan> <interlaced pscan> <inquiry with RSSI> 
        <extended SCO> <EV4 packets> <EV5 packets> <AFH cap. slave> 
        <AFH class. slave> <LE support> <3-slot EDR ACL> 
        <5-slot EDR ACL> <sniff subrating> <pause encryption> 
        <AFH cap. master> <AFH class. master> <EDR eSCO 2 Mbps> 
        <EDR eSCO 3 Mbps> <3-slot EDR eSCO> <extended inquiry> 
        <LE and BR/EDR> <simple pairing> <encapsulated PDU> 
        <non-flush flag> <LSTO> <inquiry TX power> <EPC> 
        <extended features> 
    Features page 1: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00

O emparelhamento funciona bem com os alto-falantes EDIFIER Luna Eclipse. Suspeito que o problema esteja realmente relacionado ao fone de ouvido que estou tentando configurar.

    
por Laurent 26.06.2016 / 11:53

6 respostas

26

Eu tenho esses fones também, junto com um prático laptop rodando o Fedora 24. Depois de conversar com um dos desenvolvedores do Bluez no IRC, eu tenho coisas funcionando. Abaixo está o que eu encontrei. (Observe que eu sei muito pouco sobre o Bluetooth, portanto, posso estar usando uma terminologia incorreta para isso.)

Os fones de ouvido suportam (ou pelo menos dizem que suportam) bluetooth LE, mas não suportam LE para o emparelhamento. O Bluez ainda não suporta isso e não tem como configurar o modo BT suportado, exceto estaticamente no arquivo de configuração. Você pode usar os fones de ouvido sobre bluetooth regular muito bem, no entanto. Esta é a razão pela qual o Bluez 4 funciona; realmente não suporta LE.

Então, crie /etc/bluetooth/main.conf. O Fedora 24 não vem com este arquivo, portanto, obtenha uma cópia de Upstream , encontre a linha que contém

#ControllerMode = dual

e altere para:

ControllerMode = bredr

ou crie um novo arquivo contendo apenas:

[General]
ControllerMode = bredr

Em seguida, reinicie o bluetooth e pareie. (Eu fiz isso manualmente via bluetoothctl, mas apenas usando o gerenciador bluetooth deve funcionar.)

Agora, isso fez as coisas funcionarem para mim, mas se você não forçar o pulseaudio a usar o protocolo A2DP-Sink, os fones de ouvido anunciarão que você recebeu uma chamada por algum motivo. No entanto, meu mouse requer Bluetooth LE, então entrei e removi a linha ControllerMode. E ... os fones de ouvido ainda funcionam, assim como o mouse. Eu acho que uma vez que eles estão emparelhados, tudo está bem.

    
por 05.07.2016 / 11:05
3

Eu li em seus fones de ouvido específicos, e eles usam Near Field Communication (NFC) para facilitar o emparelhamento, e isso foi mencionado como especificamente adicionado em Bluez 5.3 , embora, mencionado em pelo menos um blog "O NFC vem embutido no novo teclado, mas infelizmente o Gnu / Linux ainda não suporta NFC bem . Embora o suporte a NFC esteja embutido no Kernel Linux, > Nem o Gnome nem o KDE têm qualquer suporte para ele, e o número de aplicativos habilitados para NFC no meu repositório Fedora 20 é principesco.NFC não vai me ajudar a emparelhar meu dispositivo, então precisamos fazer da maneira antiga em vez disso ... "Então, isso nos leva de volta à sua abordagem.

No entanto, o Bluez 5.3 não tem suporte para o emparelhamento com dispositivos (como o Bose seus fones de ouvido) que usam um código PIN para o pareamento. Existe um relatório de erros das versões anteriores, em outra distribuição. Portanto, embora isso não seja especificamente relatado no Fedora, o site oficial do Bluez não menciona especificamente uma correção, pelo menos do que eu posso ver.

Portanto, esse recurso não é suportado; e pelo menos por enquanto essa é a resposta.

Além disso, como você suspeitava, poderia haver outros problemas, como a necessidade de um drvier proprietário específico, a menos que você já tenha descartado isso (ou seja, testando os fones de ouvido compatíveis com a classe OSX ou Windows). Eu realmente suspeito que esse seja o caso, ou dá a você ou a outra coisa para saltar.

    
por 02.07.2016 / 13:28
1

Eu também comprei o Bose QC 35 alguns dias atrás. Depois de alguns problemas iniciais, consegui fazê-lo funcionar no Debian, com ALSA e bluez 4.x

apt-get install bluetooth
apt-get install bluez-alsa
apt-get install blueman

depois de instalar esses pacotes, ainda não funcionou. O problema foi com permissões dbus. Eu resolvi adicionando meu usuário (uid 1000) ao grupo bluetooth, ou seja:

usermod -a -G bluetooth martin

depois disso tudo funciona, e o fone de ouvido é automaticamente associado ao meu laptop a cada inicialização

    
por 02.07.2016 / 14:10
1

Se isso poderia ser de ajuda para alguém, depois de tentar praticamente tudo descrito acima no meu Ubuntu 16.04, finalmente, foi tão fácil como conectar-se através do "Bose Connect App" (no meu caso para Android). Eu usei o blueman para fazer isso e finalmente consegui emparelhar os fones de ouvido.

No meu caso, eu tenho bluez 5.37v, blueman 2.0.4 e, finalmente, eu não precisei fazer nenhuma alteração no padrão /etc/bluetooth/main.conf, com o conjunto padrão "ControllerMode" para dual funcionou.

Os passos que funcionaram para mim foram:

1.- Abra o aplicativo e selecione a opção conectar um novo dispositivo ou similar. (Não lembro exatamente o nome) 2.- De blueman procure por um novo dispositivo. 3.- Uma vez que os fones de ouvido foram encontrados, eu consegui emparelhá-los sem problemas e selecionar o modo de trabalho.

Sem o primeiro passo, não consegui emparelhá-los.

Levei muito para encontrar como fazer isso, mas depois que você sabe como fazê-lo, é muito fácil fazer isso.

Para todos os usuários do Linux, espero que isso os ajude.

    
por 19.09.2016 / 22:04
0

Eu também tive o mesmo problema com o QC35 no Fedora 24. Eu tentei um pacote bluez personalizado aqui: link :

# dnf copr enable npmccallum/jelling
# dnf install bluez-5.37-1.gatt.fc24

Após o downgrade de 5.40 para a versão 5.37-1 modificada, eu consegui emparelhar o headset manualmente por bluetoothctl (infelizmente a configuração do GNOME bluetooth não funciona):

$ bluetoothctl
[bluetooth]# devices
Device 08:DF:xx:xx:xx:xx QC35
[bluetooth]# trust 08:DF:xx:xx:xx:xx 
[CHG] Device 08:DF:xx:xx:xx:xx Trusted: yes
Changing 08:DF:xx:xx:xx:xx trust succeede
[bluetooth]# pair 08:DF:xx:xx:xx:xx 
Attempting to pair with 08:DF:xx:xx:xx:xx
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 00000000-deca-fade-deca-deafdecacaff
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 00001101-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 00001108-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 0000110b-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 0000110c-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 0000110e-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 00001200-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 00001800-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 00001801-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 0000180a-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx UUIDs: 0000febe-0000-1000-8000-00805f9b34fb
[CHG] Device 08:DF:xx:xx:xx:xx Paired: yes
Pairing successful
[bluetooth]# connect 08:DF:xx:xx:xx:xx 
Attempting to connect to 08:DF:xx:xx:xx:xx
Connection successful
[QC35]# connect 08:DF:xx:xx:xx:xx 
Attempting to connect to 08:DF:xx:xx:xx:xx
[CHG] Device 08:DF:xx:xx:xx:xx RSSI is nil
Connection successful
[QC35]# info 08:DF:xx:xx:xx:xx 
Device 08:DF:xx:xx:xx:xx
    Name: QC35
    Alias: QC35
    Class: 0x240418
    Icon: audio-card
    Paired: yes
    Trusted: yes
    Blocked: no
    Connected: yes
    LegacyPairing: no
    UUID: Vendor specific           (00000000-deca-fade-deca-deafdecacaff)
    UUID: Serial Port               (00001101-0000-1000-8000-00805f9b34fb)
    UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
    UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
    UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
    UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
    UUID: Handsfree                 (0000111e-0000-1000-8000-00805f9b34fb)
    UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
    UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
    UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
    UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
    UUID: Bose Corporation          (0000febe-0000-1000-8000-00805f9b34fb)
    Modalias: bluetooth:v009Ep400Cd0103

Então meu QC35 pode ser ativado na configuração de som do GNOME. Funcionou sem falhas após o emparelhamento inicial e depois pôde reconectar-se ao meu laptop automaticamente.

Esta versão do bluez também funciona com meu mouse e trackpad bluetooth. Eu não sei exatamente o motivo pelo qual isso funciona. Talvez a versão mais recente do bluez tenha algum tipo de regressão no bluetooth LE (apontada pela resposta de Jason Tibbitts)? De qualquer forma, espero que essa resposta possa ajudar. :)

    
por 07.07.2016 / 12:02
0

Ubuntu 16.04, Bose QC35: Instalado o software "Adaptadores Bluetooth" e foi capaz de se conectar facilmente.

    
por 02.12.2016 / 04:09