diff --git a/Projects/AVRISP-MKII/AVRISPDescriptors.c b/Projects/AVRISP-MKII/AVRISPDescriptors.c index f3381e1210147e237ac708cebbe06f0b47d4b84c..ab30c0eafedfa471f1944b8e73e0df163a3fedc1 100644 --- a/Projects/AVRISP-MKII/AVRISPDescriptors.c +++ b/Projects/AVRISP-MKII/AVRISPDescriptors.c @@ -38,6 +38,7 @@ #include "AVRISPDescriptors.h" #if defined(RESET_TOGGLES_LIBUSB_COMPAT) || defined(__DOXYGEN__) + /** Indicates if an external reset has ocurred and the compatibility mode needs to be altered */ static bool AVRISP_NeedCompatibilitySwitch ATTR_NO_INIT; /** Current AVRISP data IN endpoint address. */ @@ -207,7 +208,8 @@ uint16_t AVRISP_GetDescriptor(const uint16_t wValue, break; case DTYPE_Configuration: *DescriptorMemorySpace = MEMSPACE_RAM; - #if defined(RESET_TOGGLES_LIBUSB_COMPAT) + #if defined(RESET_TOGGLES_LIBUSB_COMPAT) + /* Update the configuration descriptor with the current endpoint address */ AVRISP_ConfigurationDescriptor.AVRISP_DataInEndpoint.EndpointAddress = AVRISP_CurrDataINEndpointAddress; #endif @@ -307,5 +309,7 @@ void UpdateCurrentCompatibilityMode(void) } break; } + + Delay_MS(500); } #endif diff --git a/Projects/AVRISP-MKII/AVRISPDescriptors.h b/Projects/AVRISP-MKII/AVRISPDescriptors.h index 2779e083900c1b35805b563136495c6a835e936d..a14515d5e4ee8593f96d0aee7bcdc444fbe58ab5 100644 --- a/Projects/AVRISP-MKII/AVRISPDescriptors.h +++ b/Projects/AVRISP-MKII/AVRISPDescriptors.h @@ -41,6 +41,8 @@ #include <LUFA/Drivers/USB/USB.h> #include <LUFA/Drivers/Board/LEDs.h> + + #include "Config/AppConfig.h" /* Preprocessor Checks: */ #if defined(LIBUSB_DRIVER_COMPAT) && defined(RESET_TOGGLES_LIBUSB_COMPAT)