3M™ MicroTouch™ Controller EX USB Reference Guide  17 
 
3M Touch Systems, Inc.  Proprietary Information -- 29489v05 
Sending Commands to the Controller 
Table 5. General Format for Vendor Requests 
Offset  Field  Size  Value  Description 
0  bmRequestType  1  d1000000  Characteristics of request [dir, type, recipient]  
D7:    Data Transfer Direction 
          0 = Host-to-device 
          1 = Device-to-host 
D6… 5   Type 
          0 = Standard 
          1 = Class 
          2 = Vendor 
          3 = Reserved 
D4…0    Recipient 
          0 = Device 
          1 = Interface 
          2 = Endpoint 
          3 = Other 
          4…31 = Reserved 
1  bRequest  1  0xXX  Specific request [our command number] 
2  wValue  2  0xXXXX  Used to specify command parameters 
4  wIndex  2  0xXXXX  Used to specify command parameters 
6  wLength  2  0xXXXX  Number of bytes to transfer 
The Type field should be set to Vendor (0x10). The Recipient field should be set to 
Device. The Direction field depends on the command. 
Receiving Reports from the Controller 
Four reports can be sent from the controller to the host. These reports fit into two 
categories: those sent immediately in response to a host request (synchronous) and those 
sent when updates to the data they contain become available (asynchronous). 
Synchronous reports: 
  Report 4  Parameter Data 
  Report 6  Status 
  Report 12  Controller ID 
Asynchronous reports: 
  Report 1  Coordinate Data 
Some possible reasons for a command failure include: 
  The command was not formatted correctly. 
  The system parameters were not set up to allow command execution. 
  The controller does not support the command.