スキャンコード
このためキーボードのUsageは、たとえば"A"キーは'0x00070004'ではなく'0x04'だけを送るようにできる。
一般的なキーボードでは、押されたり離されたりしたキーのスキャンコードだけを送るが、USBキーボードのデータの送信方法はこれとはかなり異なり、そのときに押されているすべてのキーの情報を静的に送る。そのため、以下のような性質がある。
Aキーを押したままBキーを押すと、Bキーを押した時点で送られるHIDレポートには、AキーとBキーの両方のUsage IDが含まれる。そのため、今回新たに押されたのはBキーであるということは、本体側で判定する必要がある。
キーを離した場合にも、どのキーが離されたかを送るのではなく、離した後の状態を送るため、キーが離されたことはやはり本体側で判定する必要がある(したがって、ブレイクコードに相当するものはない)。
また、オートリピートやLEDの制御もキーボード内部では行わない。 キーボードは単なるスイッチに徹するという思想で設計されているということができる。
多くのUSBキーボードが送信するHIDレポートはUSB HID規格書にある"Boot protocol"と同一となっていて8バイトである。先頭バイトは、そのとき押されている修飾キーを示す8ビットのフラグである。PC用キーボードのAltキー・WindowsキーとMac用キーボードのOptionキー・Commandキーはそれぞれ同じに扱われる。HIDレポートの後ろ6バイトは、そのとき押されているキー(最大6個、修飾キーは除く)のUsage IDが入る。