+       LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
+
+       uint16_t ConfigDescriptorSize;
+       uint8_t  ConfigDescriptorData[512];
+
+       if (USB_Host_GetDeviceConfigDescriptor(1, &ConfigDescriptorSize, ConfigDescriptorData,
+                                              sizeof(ConfigDescriptorData)) != HOST_GETCONFIG_Successful)
+       {
+               printf("Error Retrieving Configuration Descriptor.\r\n");
+               LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
+               return;
+       }
+
+       if (HID_Host_ConfigurePipes(&Mouse_HID_Host_Interface,
+                                   ConfigDescriptorSize, ConfigDescriptorData) != HID_ENUMERROR_NoError)
+       {
+               printf("Attached Device Not a Valid Mouse.\r\n");
+               LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
+               return;
+       }
+
+       if (USB_Host_SetDeviceConfiguration(1) != HOST_SENDCONTROL_Successful)
+       {
+               printf("Error Setting Device Configuration.\r\n");
+               LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
+               return;
+       }
+
+       if (HID_Host_SetBootProtocol(&Mouse_HID_Host_Interface) != HOST_SENDCONTROL_Successful)
+       {
+               printf("Could not Set Boot Protocol Mode.\r\n");
+               LEDs_SetAllLEDs(LEDMASK_USB_ERROR);
+               return;
+       }
+
+       printf("Mouse Enumerated.\r\n");