I know you could call this a top post, but it's only some info i have learnt. Regarding my other post about kludges i've found why the Xbox 360 Controller wasn't having the usb_device_added function called. In init_driver there is the following: static usb_support_descriptor supportDescriptor = { USB_INTERFACE_CLASS_HID, 0, 0, 0, 0 }; I modified it to: static usb_support_descriptor supportDescriptor[] = { { USB_INTERFACE_CLASS_HID, 0, 0, 0, 0 }, { 0xff, 0xff, 0xff, 0x045e, 0x028e } // Xbox 360 Controller }; gUSBModule->register_driver(DRIVER_NAME, supportDescriptor, 2, NULL); Now Michael already knew the working of the driver, so this is nothing new to him. What my rantings are trying to say is that no kludges are neccessary inside the bus manager. End of Nonsense Carwyn