title: Windows HID device driver installation for Wiimote. Can we improve it?
body: <p>We’re working on a project in which we have a program that connects to a Wiimote and reads data from it. It works, however we would like to improve the connection process. We often have to make several connection attempts before we successfully establish a Bluetooth connection to the Wiimote. This is all on Windows 7 32bit.</p>
  
  <p>For every connection attempt we do the following:</p>
  
  <ul>
  <li>Power on the Wiimote</li>
  <li>Enable it as a HID device in Windows</li>
  <li>Test the connection.</li>
  <li>If the connection is good, we’re done. Otherwise the Wiimote is powered off and a new attempt is made.</li>
  </ul>
  
  <p>Each time the Wiimote is powered on, Windows tries to install a generic HID driver. When the connection is bad the driver installation fails and we have to start over. Installing this generic driver each attempt seems inefficient.</p>
  
  <p>We have a few questions we hope you might be able to help us with and point us in the right direction:</p>
  
  <ul>
  <li>Is it really necessary for Windows to install the driver for each connection attempt? Why can’t Windows recognise/remember the device like a normal USB mouse, for example.</li>
  <li>Would writing our own generic HID driver for the Wiimote make the installation more reliable and help Windows recognise the device?</li>
  <li>Is it possible to disable or hide the popup message that is displayed when Windows tries to install the generic HID driver? We don’t want to remove all device install messages, only those concerning our Wiimote.</li>
  </ul>
  
  <p><em>Note regarding Wiimote power</em>: We use a slightly hardware modded Wiimote that doesn’t use batteries, but instead draws power through a USB cable connected to the computer. So far we have discovered that is is necessary to turn power on and off between each connection attempt, otherwise device driver installation usually fails. </p>