Driver is based on Sensor Driver Skeleton - see build and instalation instructions there.

A Note on the Arduino FTDI Driver

We have not had any luck using the driver that's provided by FTDI; you should plug in the Arduino and let Windows Update find the driver. If you've installed the Arduino using the FTDI driver, uninstall it (plug it in, open Device Manager, right-click on the serial port and choose Uninstall. Check the box to remove the driver for the device). Then reboot and plug the Arduino in. Let it find the driver from Windows Update.

Building the driver

Please refer to Setting Up the Build Environment on MSDN.
  1. To open a build environment window, use the following Start menu path: Start | All Programs | Windows Driver Kits | WDK_Version | Build Environments | Operating System | Build Environment.
  2. At the command prompt, change to the directory that contains the device source code.
  3. Run build -ceZ, or use the BLD macro.

TODO: see if this process can be executed from Visual Studio.

Installing the driver

Open a Command Prompt and to the directory that contains the device source code. NOTE: You may need to open an Administrator Command Prompt (right click on the shortcut for Command Prompt on the Start Menu and choose Run as Administrator).

If you are warned that "Windows can't verify the publisher of this driver software", choose "Install this driver software anyway"

Automated install

  1. Run install x86 or install amd64 (for 64-bit AMD or Intel CPUs).
  2. Enable the driver in the Location and Other Sensors control panel.

Manual install

To install the sensor Skeleton sample driver:
  1. Ensure that the driver builds without errors.
  2. Copy the DLL and INF files to a separate folder.
  3. Locate the co-installer DLL file (either checked or free) from the redist/wdf/processor_type folder where you installed the WDK. Copy this file to the folder you created in step 2. For example, if you installed the WDK on your C: drive, you might copy WUDFUpdate_01009.dll from C:\WinDDK\build#\redist\wdf\x86.
  4. Run devcon.exe. You can find this program in the tools\devcon folder where you installed the WDK. Type the following command in the command window:
devcon.exe install SensorSkeleton.inf "Sensors\SensorSkeleton"
  1. Enable the driver in the Location and Other Sensors control panel.

Configuring the Driver

By default, the driver assumes Arduino is connected to COM1. If not, go into the Registry Editor and create a new key at HKLM\Software\Microsoft\GenericSerialDriver, and set its value to the full name of the COM port (such as COM4).


  • Some users have reported an error ("The device cannot start (Code 10)" ) if they boot their computer with the Arduino unplugged, and then later plug it in. Go into Device Manager, disable the sensor and re-enable it.
  • To program the Arduino, you will need to go into Device Manager and disable the sensor. This is because the sensor driver holds the serial port open.


Driver code was instrumented for WPP Software Tracing.
You can use TraceView tool that is usually found in c:\WinDDK\7600.16385.0\tools\tracing\ to help you diagnose any communication issues.

Last edited Apr 12, 2010 at 2:16 PM by bjepson, version 13


No comments yet.