Em geral, tantos quantos o protocolo USB pode endereçar em um barramento (que é 127). Eu lembro que o kernel do Linux precisava de uma opção especial, se alguém quisesse usar mais de 8 dispositivos do mesmo tipo (impressora, armazenamento em massa, HID) - apenas dizendo que o Windows pode ter um limite de software similar.
No entanto, você pode considerar uma coisa ... O USB usa quadros de 1ms para uma transferência. A maioria dos teclados são dispositivos de baixa velocidade, o que significa que operam a uma taxa menor (8 vezes mais lenta). Se você usar vários teclados ou outros dispositivos em um barramento, os atrasos podem ser significativos.
Dependendo do computador que você está usando, você pode ter vários barramentos separados ou um barramento com um hub embutido. No último caso, você pode experimentar atrasos de dezenas de milissegundos.
- EDITAR
Para fazer isso com um exemplo. Há uma captura de tela do Wireshark no meu USB. Eu tenho um mouse USB conectado e eu estava movendo-o freneticamente para gravar o máximo de tráfego possível. Eu destaquei duas transações consecutivas no ônibus. Como você pode ver pelo registro de data e hora dessas transações, eles diferem em 8 ms. Isso significa que meu mouse é um dispositivo de baixa velocidade.