On 4/1/06, beckiewynn@yahoo.co.uk wrote: > > > > > Is it possible to send a report to the pc without receiving one? > while(mHIDTxIsBusy()) > { > // Service USB interrupts. > USBDriverService(); > } > // The report will be sent in the next interrupt IN transfer. > HIDTxReport(transmit_buffer, HID_INPUT_REPORT_BYTES); > while(mHIDTxIsBusy()) > { > // Service USB interrupts. > USBDriverService(); > } > // The report will be sent in the next interrupt IN transfer. > HIDTxReport(transmit_buffer, HID_INPUT_REPORT_BYTES); The above code should work, you don't have any ioprocess, you have just usb service running. You can transmit two different packets , with different data and analyze which one is not recieved. There may be some problem in PC software also, better download some software usb analyzer to find out whether PC is recieving the second packet or not. To get 32 byte report size, modify all these predefined values, ( I have tested only 32 bytes, 64 bytes should also work. ) #define HID_INPUT_REPORT_BYTES 32 #define HID_OUTPUT_REPORT_BYTES 32 #define HID_INT_OUT_EP_SIZE 32 #define HID_INT_IN_EP_SIZE 32 In Jan's generic hid example, the input & output report size is hard coded as 2, change it to the following, rom struct{byte report[HID_RPT01_SIZE];}hid_rpt01={ 0x06, 0xA0, 0xFF, // Usage page (vendor defined) 0x09, 0x01, // Usage ID (vendor defined) 0xA1, 0x01, // Collection (application) // The Input report 0x09, 0x03, // Usage ID - vendor defined 0x15, 0x00, // Logical Minimum (0) 0x26, 0xFF, 0x00, // Logical Maximum (255) 0x75, 0x08, // Report Size (8 bits) 0x95, HID_INPUT_REPORT_BYTES, // Report Count (2 fields) 0x81, 0x02, // Input (Data, Variable, Absolute) // The Output report 0x09, 0x04, // Usage ID - vendor defined 0x15, 0x00, // Logical Minimum (0) 0x26, 0xFF, 0x00, // Logical Maximum (255) 0x75, 0x08, // Report Size (8 bits) 0x95, HID_OUTPUT_REPORT_BYTES, // Report Count (2 fields) 0x91, 0x02, // Output (Data, Variable, Absolute) // The Feature report 0x09, 0x05, // Usage ID - vendor defined 0x15, 0x00, // Logical Minimum (0) 0x26, 0xFF, 0x00, // Logical Maximum (255) 0x75, 0x08, // Report Size (8 bits) 0x95, HID_FEATURE_REPORT_BYTES, // Report Count (2 fields) 0xB1, 0x02, // Feature (Data, Variable, Absolute) 0xC0}; // end collection regards, palani -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist