From: Dean Camera Date: Thu, 27 Aug 2009 06:36:01 +0000 (+0000) Subject: Fixed Device mode HID Class driver always sending IN reports, even when no data is... X-Git-Tag: LUFA-110528-BETA~945 X-Git-Url: http://git.linex4red.de/pub/USBasp.git/commitdiff_plain/665fe11f128b95874befdd59492379a0f5d8105e?ds=inline Fixed Device mode HID Class driver always sending IN reports, even when no data is to be reported. --- diff --git a/LUFA/Drivers/USB/Class/Device/HID.c b/LUFA/Drivers/USB/Class/Device/HID.c index 0cbd50afc..b44d4db63 100644 --- a/LUFA/Drivers/USB/Class/Device/HID.c +++ b/LUFA/Drivers/USB/Class/Device/HID.c @@ -168,12 +168,12 @@ void HID_Device_USBTask(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo) HIDInterfaceInfo->State.IdleMSRemaining = HIDInterfaceInfo->State.IdleCount; if (ReportID) - Endpoint_Write_Stream_LE(&ReportID, sizeof(ReportID), NO_STREAM_CALLBACK); + Endpoint_Write_Byte(ReportID); Endpoint_Write_Stream_LE(ReportINData, ReportINSize, NO_STREAM_CALLBACK); + + Endpoint_ClearIN(); } - - Endpoint_ClearIN(); } } diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt index 61485a0dd..42b78ef0f 100644 --- a/LUFA/ManPages/ChangeLog.txt +++ b/LUFA/ManPages/ChangeLog.txt @@ -39,6 +39,7 @@ * - Fixed invalid data being returned when a GetStatus request is issued in Device mode with an unhandled data recipient * - Added hardware USART receive interrupt and software buffering to the Benito project to ensure received data is not * missed or corrupted + * - Fixed Device mode HID Class driver always sending IN packets, even when nothing to report * * * \section Sec_ChangeLog090810 Version 090810