DEV Community

Henrique Marques Fernandes
Henrique Marques Fernandes

Posted on • Originally published at marquesfernandes.com on

Como configurar o headset bluetooth com microfone no Ubuntu, Mint (Debian)

Se você usa ou acabou de migrar para o ambiente linux, especialmente nas distros Ubuntu ou Mint, derivados do Debian, você pode encontrar problemas com o microfone do seu headset bluetooth.

Especialmente agora durante a pandemia, as famosas call (videoconferência) fazem cada vez mais parte do nosso cotidiano. Então você resolveu comprar aquele fone bluetooth bacana pra usar e quando conectou o seu microfone não funcionou? Não se preocupe, existe uma maneira de conseguir fazer o microfone do seu headset bluetooth funcionar no linux.

Esse tutorial foi testado com fones da JBL e Air Pods, mas ele deverá funcionar para a maioria dos casos.

Ativando o microfone do headset bluetooth

Para que o headset consiga funcionar corretamente com o microfone, você precisará habilitar o perfil de áudio HSP/HFP. Porém, por padrão, o pulseaudio (servidor de som embarcado nessas distribuições do linux) só oferece suporte para o HSP. Para fazer o HSP/HFP funcionar, precisamos habilitar o HFP no pulseaudio e para isso vamos utilizar o serviço ofono.

  1. Instale o ofono

$ sudo apt install ofono

Enter fullscreen mode Exit fullscreen mode
  1. Configure o pulseaudio para usar o ofono

    Edite o arquivo /etc/pulse/default.pa , encontre a linha load-module module-bluetooth-discover e mude para load-module module-bluetooth-discover headset=ofono

  2. Adicione o usuário pulse ao grupo bluetooth para que ele tenha as permissões necessárias


$ sudo usermod -aG bluetooth pulse

Enter fullscreen mode Exit fullscreen mode
  1. Edite e adicione as permissões no arquivo /etc/dbus-1/system.d/ofono.conf adicione o código abaixo logo antes do fechamento </busconfig>

<policy user="pulse">
    <allow send_destination="org.ofono"/>
</policy>

Enter fullscreen mode Exit fullscreen mode
  1. Para fazer o ofono funcionar é necessário fornecer um modem para ele. E para isso vamos instalar um emulador de modem chamado phonesim que será implementado pelo ofono para funcionar. Instale o ofono-phonesim:

$ sudo add-apt-repository ppa:smoser/bluetooth
$ sudo apt-get update
$ sudo apt-get install ofono-phonesim

Enter fullscreen mode Exit fullscreen mode
  1. Configure o phonesim adicionando as seguintes linhas no arquivo /etc/ofono/phonesim.conf

[phonesim]
Driver=phonesim
Address=127.0.0.1
Port=12345

Enter fullscreen mode Exit fullscreen mode

Agora, reinicie o serviço ofono:


$ sudo systemctl restart ofono.service

Enter fullscreen mode Exit fullscreen mode
  1. Agora precisamos definir e habilitar alguns serviços para iniciar o ofono-phonesim como serviço.

Para executar ofono-phonesim -p 12345 /usr/share/phonesim/default.xml na inicialização do sistema, crie como root o arquivo /etc/systemd/system/ofono-phonesim.service com o seguinte conteúdo:


[Unit]
Description=Run ofono-phonesim in the background

[Service]
ExecStart=ofono-phonesim -p 12345 /usr/share/phonesim/default.xml
Type=simple
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Enter fullscreen mode Exit fullscreen mode

Depois que o ofono-phonesim for executado, você também precisará habilitar e colocar o modem phonesim online.

Para isso vamos usar o código de um repositório git:


$ cd /tmp
$ git clone git://git.kernel.org/pub/scm/network/ofono/ofono.git
$ sudo mv ofono /opt/

Enter fullscreen mode Exit fullscreen mode

Agora você pode habilitar e tornar o modem phonesim online criando outro serviço do que depende do serviço ofono-phonesim.Novamente, crie um novo arquivo de serviço como root o arquivo em /etc/systemd/system/phonesim-enable-modem.service e coloque o seguinte conteúdo:


[Unit]
Description=Enable and online phonesim modem
Requires=ofono-phonesim.service

[Service]
ExecStart=/opt/ofono/test/enable-modem /phonesim
ExecStart=/opt/ofono/test/online-modem /phonesim
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Enter fullscreen mode Exit fullscreen mode

Em seguida, execute os seguintes comandos para habilitar e executar os dois daemons:


$ sudo systemctl daemon-reload
$ sudo systemctl enable ofono-phonesim.service
$ sudo systemctl enable phonesim-enable-modem.service
$ sudo service phonesim-enable-modem start

Enter fullscreen mode Exit fullscreen mode

Verifique se tudo ocorreu como esperado e se o serviço está sendo executado:


$ sudo service phonesim-enable-modem status

Enter fullscreen mode Exit fullscreen mode
  1. Por fim, reinicie o pulseuadio:

$ pulseaudio -k.

Enter fullscreen mode Exit fullscreen mode

Agora você já deve conseguir enxergar o seu headset como dispositivo de input na parte de configuração de som. Existe uma certa instabilidade nesse setup, de vez em quando pode ser que o seu fone de uma desconfigurada ou a troca de perfil de áudio não funcione, quando isso ocorrer, reinicie os serviços como descrito acima e também o pulseaudio.

O post Como configurar o headset bluetooth com microfone no Ubuntu, Mint (Debian) apareceu primeiro em Henrique Marques Fernandes.

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

👋 Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay