Recentemente adquiri um teclado “HP/Ipaq Bluqetooth Folding Keyboard” conforme imagem abaixo.


Fiz várias pesquisas sobre o teclado e seu funcionamento nos Nokia Internet tablets N8xx e assim como outros inúmeros teclados do gênero ele possui um esquema de mapas diferente sendo incompatível com os esquemas de HID convencionais, foi durante a pesquisa que cheguei a um serviço chamado “kbdd“.
O kbdd e um daemon que funciona na camada de usuário “user-space”, sendo responsável pela comunicação atráves da interface serial (over irda/bluetooth/…) do teclado fazendo o intermedio para a camada de input do kernel utilizando o modulo uinput nativo no Kernel, e assim encaminhando as teclas para o S.O.
Ele foi feito direcionado para plataformas móveis como maemo, openmoko, gpe, entre outros. Pois caso você tenha algum teclado do tipo e o esquema de maps dele seja suportado conforme lista descrita no site do kbdd, basta seguir os passos a seguir!
1) Baixe o código a partir do CVS e compile.
[jpereira@jiraya ~]$ mkdir -p ~/tmp/kbdd [jpereira@jiraya ~]$ cd ~/tmp/kbdd/ [jpereira@jiraya kbdd]$ export CVSROOT=":pserver:anoncvs@anoncvs.handhelds.org:/cvs" [jpereira@jiraya kbdd]$ cvs login Logging in to :pserver:anoncvs@anoncvs.handhelds.org:2401/cvs CVS password: anoncvs [jpereira@jiraya kbdd]$ cvs co apps/kbdd [jpereira@jiraya kbdd]$ cd apps/kbdd/ [jpereira@jiraya kbdd]$ make
2) Ative o esquema de “discovery” do teclado, e no Linux inicie a busca pelo dispositivo em seguida atache o endereço MAC do seu teclado bluetooth a uma porta serial e em seguida inicialize o serviço. (Quando pedir a senha do bluetooth, utilize a senha padrão dele “0000″)
[jpereira@jiraya kbdd]$ sudo hcitool scan Scanning ... 00:0A:3A:06:09:B0 BT-FoldableKB [jpereira@jiraya kbdd]$ sudo rfcomm bind 0 00:0A:3A:06:09:B0 [jpereira@jiraya kbdd]$ sudo modprobe uinput [jpereira@jiraya kbdd]$ ./kbdd -p /dev/rfcomm0 -t btfoldable &
OBS: Fiz diversas alterações no kbdd, inclusive adicionei a possibilidade de iniciar o kbdd como daemon, adicionei flag de compilação para o N770, entre outras coisas. Caso queira utilizar a versão alterada basta aplicar este patch. Inclusive conversei com um dos autores por e-mail que retornou positivamente as melhorias feitas no kbdd, creio que logo mais já vai estar disponível no cvs do projeto tais alterações! Assim que eu receber meu N800 e tiver com tempinho livre vou trabalhar nele para melhorar outras coisas, inclusive a possibilidade de uso do D-bus na comunicação com a parte de input das teclas!
Abaixo segue os passos para caso queira experimentar a versão alterada!
[jpereira@jiraya ~]$ mkdir -p ~/tmp/kbdd [jpereira@jiraya ~]$ cd ~/tmp/kbdd/ [jpereira@jiraya kbdd]$ export CVSROOT=":pserver:anoncvs@anoncvs.handhelds.org:/cvs" [jpereira@jiraya kbdd]$ cvs login Logging in to :pserver:anoncvs@anoncvs.handhelds.org:2401/cvs CVS password: anoncvs [jpereira@jiraya kbdd]$ cvs co apps/kbdd [jpereira@jiraya kbdd]$ cd apps/kbdd/ [jpereira@jiraya kbdd]$ wget http://blog.jorgepereira.com.br/wp-content/dist/patchs/kbdd-jorgepereira.patch [jpereira@jiraya kbdd]$ patch -p0 < kbdd-jorgepereira.patch [jpereira@jiraya kbdd]$ make HAVE_FORK=1 [jpereira@jiraya kbdd]$ ./kbdd -p /dev/rfcomm0 -t btfoldable -b
.:: Jorge Pereira ::.






on May 5th, 2009 at 19:32
Jorge, muito SHOW está sua dica. Pois possuo um notebook que passou a apresentar defeito nas teclas a algum tempo e instalei o kbdd funcionando perfeitamente com meu teclado do iPAQ!
Parabéns!
on May 6th, 2009 at 12:08
Eu to usando o SU-8W com o N800, mas tive que editar o xkb no braço pra ficar usável com língua tupiniquim.
Bom saber que tem outras opções…
on May 6th, 2009 at 12:11
Pois é cara!
O Bom do kbdd que você abstrai tudo, e as teclas chega no kernel de forma transparente ja que está tudo sendo encaminhado para o input do kernel!
[]s
on May 8th, 2009 at 15:28
Otimo este tutorial pois estava afim de comprar um teclado bluetooth e não sabia se iria pega ou nao no n800 e agora com este tutorial… Parabens pelo tutorial…
on Sep 9th, 2009 at 23:32
[...] blog há uma versão alterada do kbdd e os passos para obter sua última versão com melhorias propostas [...]
on Nov 7th, 2009 at 17:51
[...] blog há uma versão alterada do kbdd e os passos para obter sua última versão com melhorias propostas [...]