Bom dia colegas do Lab de Garagem. 

Estou estudando e tentando desenvolver um driver para um dispositivo HID com interface USB (uma demanda no meu trabalho). 

O sistema operacional é Linux. Não serve Windows. 

Estou bem avançado nos estudos, mas se alguém já tiver experiência, isto é, já ter trabalhado com isso e se puder me ajudar, ficaria muito grato. 

Existe uma API fantástica para isso, com quase tudo pronto - Libusb/hidapi

https://github.com/libusb/hidapi

HIDAPI é uma biblioteca multi-plataforma que permite que um aplicativo faça interface com dispositivos USB e Bluetooth HID-Class no Windows, Linux, FreeBSD e macOS. HIDAPI pode ser construído, quer como uma biblioteca compartilhada ( .so, .dllou .dylib) ou pode ser incorporado diretamente numa aplicação alvo por adição de um único ficheiro de fonte (por plataforma) e um único cabeçalho." 

Minhas necessidades: 

Linguagem C++, Sistema Operacional - pode ser o Raspian (Debian do Raspberry Pi) ou qualquer outro Linux, HID device - qualquer um

Por enquanto, não tenho interesse na linguagem Python, apesar de saber que tem muito material na web sobre isso, pois o código não é executável. Mas já estou até pensando em usar o Go Lang! 

HID - human interface device:

https://en.wikipedia.org/wiki/Human_interface_device

Golang:

https://golang.org/

Muito obrigado! 

Gustavo Murta 

Exibições: 518

Responder esta

Respostas a este tópico

Boa tarde  José Gustavo Abreu Murta,

veja se este link ajuda.

http://generichid.sourceforge.net/

RV

Boa tarde amigo Rui, 

Acessei o link do driver - Generic Hid.

https://sourceforge.net/projects/generichid/files/latest/download

Instruções para Linux (esse código serve para x86-32 bits > i386) 

Download the latest Linux Debian package, generichid_x.x_i386.deb.

Install GenericHID with your favourite package manager. Or install it from the command line...

sudo dpkg -i generichid_1.0_i386.deb

GenericHID can be uninstalled using ...

sudo dpkg -r generichid

Type generichid at the command line to run it.  Check the section on linux permissions if you see permission or access denied errors in the terminal windows.

Não tenho PC (x86-32bits) com Debian. O Raspberry Pi 3+ (Debian Buster) é um ARMv7. 

Vou ver como eu faço. 

Muito obrigado e abraços. 

Analisando o projeto:

http://generichid.sourceforge.net/generichid.htm

The Generic HID software is used to design a HID device. Já tenho alguns dispositivos HID. Não quero criar um device. 

Não é bem isso que eu procuro. 

Existe uma interface gráfica para gerar um device. A solução é bem sofisticada e está além do que eu procuro. 

Existe uma solução similar para Golang:

https://gobot.io/documentation/platforms/

Obrigado e abraços

Caro Gustavo, uma coisa que eu posso te falar é que se vc poder desenvolver seu drive direto no linux como por exemplo um ubuntu, fedora etc.. sera mais proveitoso, pois existe libs no windows que nao funciona para linux, eu estudo C via linux e ja passei um bocado ate entender isso, em ultimo caso de repente vc pode ate usar o gcc(compilador natural do linux) no windows, mas sempre tera que cuidar de testar as funcionalidades do seu drive no linux para ver se funciona.

Adriano, eu não estou usando Windows. 

Eu uso o gcc para compilar no Linux - (Raspian - Debian do Raspberry Pi)

Obrigado. 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço