Patent ID: 8074232
Filing Date: 2011-12-06
Classification: G06F

Abstract:
1. A method for improving the communication of a human interface device (HID), comprising the steps of: 1) setting Number of Endpoints to a value that is equal to or greater than 2 and setting Device Category of a Universal Serial Bus (USB) device to 3 in an interface descriptor; 2) reporting at least one interrupt input endpoint and at least one interrupt output endpoint to a host, wherein an address of the interrupt input endpoint is set to an address of a bulk input endpoint in the USB device, and an address of the interrupt output endpoint is set to the an address of a bulk output endpoint in the USB device; 3) specifying that the USB device has a report descriptor in an HID class descriptor; 4) specifying an input report and an output report in the report descriptor, wherein the size of the input report and the output report is greater than or equal to the capacity of a buffer of the bulk endpoint; 5) receiving and handling an instruction from the host through the bulk output endpoint by the USB device and returning the result from the USB device to the host through the bulk input endpoint, wherein the size of the data transferred between the USB device and the host each time is equal to that of the corresponding report, wherein the process of receiving and handling the instruction and data from the host comprises the steps of: a) determining if the bulk endpoint is to transfer data; b) reorganizing the data by the USB device when the bulk endpoint is to transfer the data; c) executing the instruction by the USB device; and d) returning the result and status from the bulk endpoint.