This chapter describes WinDriver DriverWizard's hardware diagnostics and driver code generation capabilities.
DriverWizard (included in the WinDriver toolkit) is a GUI-based diagnostics and driver generation tool that allows you to write to and read from the hardware, before writing a single line of code. The hardware is diagnosed through a Graphical User Interface – the device's configuration and pipes information is displayed, data can be transferred on the pipes, the pipes can be reset, etc.
Once the device is operating to your satisfaction, DriverWizard creates the skeletal driver source code, with functions to access your hardware's resources.
If you are developing a driver for a device that is based on one of the enhanced-support USB chipsets (The Cypress EZ-USB family; Microchip PIC18F4550; Philips PDIUSBD12; Texas Instruments TUSB3410, TUSB3210, TUSB2136 and TUSB5052; Agere USS2828; Silicon Laboratories C8051F320), we recommend that you read Chapter 8, which explains WinDriver's enhanced support for specific chipsets, before starting your driver development.
DriverWizard can be used to diagnose your hardware and can generate an INF file for your hardware on Windows.
Avoid using DriverWizard to generate code for a device based on one of the supported USB chipsets [8], as DriverWizard generates generic code which will have to be modified according to the specific functionality of the device in question. Preferably, use the complete source code libraries and sample applications (supplied in the package) tailored to the various USB chipsets.
DriverWizard is an excellent tool for two major phases in your HW/Driver development:
The code generated by DriverWizard is composed of the following elements: