26
3M™ MicroTouch™ Controller EX Dual Mode Reference Guide
3M Touch Systems, Inc. Proprietary Information – TSD-40848A
Offset
Field
Size
Value
Description
3
FW major revision
1
0xXX
Firmware major revision level
4
FW minor revision
1
0xXX
Firmware minor revision level
5 Features
1
0xXX
Special
features
6
Constants Checksum 2
0xXXXX
RAM constants checksum
8
Max Param Write
2
0xFFFF
Maximum data for Read
Parameter request
10 Reserved
1 0x41
Reserved
11 Reserved
1 0x41
Reserved
12 Reserved
1 0x41
Reserved
13 Reserved
1 0x41
Reserved
14 Reserved
1 0x41
Reserved
15 Reserved
1 0x42
Reserved
16 Reserved
1 0x41
Reserved
17 Reserved
1 0x41
Reserved
18
Code Checksum
4
0xXXXXXXXX
RAM Program Code checksum
22
ASIC type
2
0x01XX
ASIC type
Controller Type – The identifier M1 is used. M identifies it as an EX based USB
controller. The 1 identifies it as the first model of this type. This value is treated as an
integer, not two characters. This means that the 1 will be transmitted first.
Note:
If you received an identifier of M0, you must issue a Reset with a wValue of 5.
This must be done twice to lock in the values.
FW Major Revision – This can range from 0 to 99. This is a BCD value, i.e., major
revision 23 is sent as 0x23.
FW Minor Revision – This can range from 0 to 99. This is a BCD value, i.e., minor
revision 23 is sent as 0x23.
Features – This identifies the special features of the controller. This is a bitmapped field.
Constants Checksum – 2-byte checksum for the constants data section.
Max Parameter Write -- The largest transfer that can take place. This only affects the
Read Parameter requests.
Code Checksum – 4-byte checksum for the program section of the code.
ASIC Type – this indicates the type and version of the ASIC in the controller. The value
0x0100 indicates the first EX revision. The high byte is used to note major ASIC
changes, such as a new ASIC family, and the low byte indicates changes within a family.
Read Parameter Request 16
This is a request to send the contents of a parameter via the control endpoint. This is a
one-time transfer of data. The request is used to access data in the controller.