Página 1 de 1

Win7 e HID packetsize

MensagemEnviado: 08 Mai 2011 15:03
por vtrx
Me deparei com um problema que não tinha reparado até testar um HardWare feito no XP rodando no Win7.
O HardWare e o SoftWare num PC com Windows XP,se comunicam nativamente com um dispositivo (USB/HID)utilizando tamanhos diferentes de pacotes de bytes,por exemplo,programo o HardWare para enviar pacotes de 64 bytes contínuos para o programa no PC,enquanto o programa no PC envia pacotes de 8 bytes.
No windows 7,só aceita (sem driver específico)pacotes 8 x 8.
Alguma observação?

Re: Win7 e HID packetsize

MensagemEnviado: 08 Mai 2011 19:16
por Jorge_Francisco
vtrx escreveu:Me deparei com um problema que não tinha reparado até testar um HardWare feito no XP rodando no Win7.
O HardWare e o SoftWare num PC com Windows XP,se comunicam nativamente com um dispositivo (USB/HID)utilizando tamanhos diferentes de pacotes de bytes,por exemplo,programo o HardWare para enviar pacotes de 64 bytes contínuos para o programa no PC,enquanto o programa no PC envia pacotes de 8 bytes.
No windows 7,só aceita (sem driver específico)pacotes 8 x 8.
Alguma observação?


Explica melhor isso aí! 8 x 8?? Só tive um problema com o Win7 em relação ao HID, é que ele não detectava o dispositivo em qualquer porta USB, modifiquei o código no PC para buscar pelo dispositivo e pronto, funciona bem até hoje.

MensagemEnviado: 08 Mai 2011 19:57
por vtrx
Explica melhor isso aí! 8 x 8??

Enviar 8 bytes e receber 8 bytes...
Me parece,pelas pesquisas,que é uma limitação do Win7,talvez para forçar a programação de um driver.
Oque acontece é que o Win7 avisa que o dispositivo não foi corretamente configurado,mas no XP não apresnta erro nenhum.
Como disse,no XP posso enviar um byte de comando e receber 64 de dados.

MensagemEnviado: 08 Mai 2011 23:38
por vtrx
RESOLVIDO.
Resumindo e para quem interessar.
No Windows 7,realmente ha retrição ao tamanho dos pacotes.
A restrição é de 8 bytes de dados de uma vez em modo Low Speed(no XP não tem esta restrição),em modo Full Speed pode-se usar pacotes de 64 bytes.
Segundo oque apurei na net,esta restrição é a nível de Kernel,não adianta gerar um driver pois o Win7 não vai fazer a ligação.
Achei que em Low Speed ja era o suficiente em HID,pois o máximo que se consegue é 64KBps.