Como faço para que o Ubuntu apareça como um teclado bluetooth?

29

Eu tenho um iPad 2 e gostaria que meu sistema Ubuntu aparecesse como um teclado bluetooth para ele, de modo que o que digito no meu computador apareça no meu iPad.

Existe uma maneira específica de fazer isso?

Farid
fonte
1
Você precisaria fazer o jailbreak do seu iPad para fazer isso ... Você conferiu os teclados btstack e btstack? keyboard.ringwald.ch/Welcome.html Acho que essa pergunta tem mais a ver com o iPad do que com o Ubuntu, a menos que você já tenha feito o jailbreak do seu iPad.
Bharadwaj Srigiriraju
Você pode tentar um Arduino com um escudo bluetooth, mas isso não é realmente uma pergunta do Ubuntu.
David
@EliahKagan: Sim, eu disse "a menos que você já tenha jailbroken seu iPad" para significar o mesmo. ;) Eu nunca o usei, mas acho que talvez seja necessário usar um software como o Synergy em algum momento para fazer o computador aparecer como teclado em uma rede. Você não acha?
Bharadwaj Srigiriraju
1
@ForbiddenOverseer Parece que estávamos errados ao pensar que seria necessário fazer o jailbreak do iPad. (1) Conheço alguém com um iPad sem jailbreak que aceita teclados Bluetooth. (2) É apenas o iPhone que precisa ser desbloqueado para aceitar a entrada Bluetooth. Como se encontra no site ao qual você vinculou : "O BTstack Keyboard roda em iPhones com jailbreak, todos os dispositivos iPod touch com suporte a Bluetooth e iPad". Como isso funciona, esse método Ubuntu também deve.
Eliah Kagan
1
Não acho que o jailbreak do meu iPad seja realmente útil para isso. É só que o Ubuntu precisa aparecer corretamente.
Farid

Respostas:

36

Você pode fazer seu computador funcionar como um teclado Bluetooth para outros dispositivos, desde que:

  • Possui Bluetooth e roda Bluez . (Isso é verdade nos sistemas Ubuntu com Bluetooth.)
  • Está executando um sistema operacional baseado em Linux. (Isso inclui o Ubuntu!)
  • Você tem as habilidades administrativas em seu sistema operacional baseado em Linux (por exemplo, você pode sudoa root).

Existe um programa FOSS que faz isso, chamado hidclient :

O programa hidclient faz com que um computador equipado com tecnologia Bluetooth® apareça como um dispositivo de teclado e mouse Bluetooth® para outras máquinas. Os eventos de entrada (como pressionamentos de teclas e movimentos do mouse) dos dispositivos de entrada conectados localmente serão encaminhados para outra máquina através do link Bluetooth®.

Para a contraparte (que pode ser um PC Linux, um PC Win, um PDA ...), não há diferença técnica para os dispositivos de entrada Bluetooth® "reais".

Fonte: site oficial do hidclient (página principal) .

Isso totalmente rochas : você não tem que fazer nada especial para o iPad (ou qualquer outro dispositivo móvel que funciona com teclados Bluetooth) para chegar a este trabalho. Você não precisa fazer o jailbreak. Você não precisa instalar nenhum aplicativo especial. Basta instalar e executar o hidclient e depois informar ao seu dispositivo móvel (o iPad) que você deseja usar o teclado Bluetooth!

Tudo o que você precisa para obter o software e aprender como usá-lo está aqui.
Depois de ler a página inteira (para entender como ela funciona), certifique-se de usar as instruções no final (para Ubuntu).

Aqui está uma versão compacta (essencialmente o mesmo procedimento - isso funcionou melhor para mim):

  1. Instale o libbluetooth-devInstale libbluetooth-dev .
  2. Faça o download do código fonte do hidclient para o Ubuntu . (Verifique a página oficial para garantir que não esteja desatualizada.) Coloque-a em uma pasta sozinha e extraia seu conteúdo.
  3. Digite makee pressione Enterpara compilar a fonte.
  4. Faça backup e edite sua configuração Bluetooth:
    sudo cp /etc/bluetooth/main.conf /etc/bluetooth/main.conf.old
    sudo -H gedit /etc/bluetooth/main.conf
    • Em #DisablePlugins = network,inputadicionar a linha DisablePlugins = input(não #).
    • Adicione #a ao início de Class = 0x000100; embaixo, escreva Class=0x000540(não #).
    • Salve o arquivo e feche o editor de texto.
  5. Se você deseja executar hidclientcomo um comando normal:
    • Execute sudo cp hidclient /usr/local/bin.
    • Verifique se /usr/local/binestá no seu caminho com echo $PATH.
    • Se não estiver, adicione-o com qualquer um desses métodos .
    Se você pular esta etapa, poderá executar hidclientcertificando-se de estar no diretório em que a compilou e executando em ./hidclientvez de hidclient.

Corrida hidclient

Execute hidclient --help(ou veja a parte inferior da página da web ) para ver como usá-lo.

Exceto quando executado com o --helpsinalizador, hidclientdeve ser executado como root. Então use sudo hidclient(seguido pelas opções que você especificar, conforme explicado na ajuda).

Basicamente, existem duas etapas:

  1. Execute sudo hidclient -lpara uma lista numerada de dispositivos.
  2. Execute , substituindo pelo número do dispositivo que você deseja "encaminhar" por Bluetooth. No seu caso, este será o teclado.sudo hidclient -eN -xN

Você está pronto. Diga ao seu dispositivo móvel (iPad) para usar um teclado Bluetooth.

Terminando hidclient

A última coisa que você precisa fazer é parar de usar o teclado para entrada de Bluetooth. Veja, quando hidclientestá em execução, o dispositivo que você seleciona não está mais dando entrada para o seu sistema Ubuntu . Se não fosse o teclado (digamos, o mouse), você pode sair hidclientpressionando Ctrl+ Cno Terminal.

Mas você não pode fazer isso, porque a entrada do teclado não irá para o Terminal ou qualquer outro programa Ubuntu. O teclado está funcionando como um dispositivo Bluetooth!

Portanto, ao "encaminhar" o teclado, saia hidclientfechando a janela (ou guia) do Terminal em que está sendo executada, com o mouse (ou trackpad).

  • Obviamente, se a sua máquina Ubuntu tiver vários teclados, você poderá "encaminhar" um como um dispositivo Bluetooth e continuar usando o outro no seu computador.

Referências / Agradecimentos

Eliah Kagan
fonte
3
Você já conseguiu isso para rodar na versão mais recente do Ubuntu?
Mniess
Sim, existe algum suporte para 14.04+?
Forresthopkinsa
e quanto a 16.04?
Mina Michael