
www.ti.com
USB Interface
• Bit 7 is set to 0x1 to indicate a read transaction
3. Sequence byte: The sequence byte can be a rolling counter. It is used primarily when the host wants a
response from the DLPC900. The DLPC900 will respond with the same sequence byte that the host
sent. The host can then match the sequence byte from the command it sent with the sequence byte
from the DLPC900 response.
4. Length: Two byte length denotes the number of data bytes in the sequence and excludes the number
of bytes in steps 1 through 4. It denotes the total number of bytes sent in steps 5 (command bytes).
5. USB Command: Two byte USB command.
6. Once the host transmits the data over the USB interface, the DLPC900 will respond to the Read
operation by placing the response data in its internal buffer. The host must then perform a HID driver
read operation. Table 6 shows the response data sent back from the DLPC900.
(a) Report ID: Always set to 0.
(b) Flag byte: The same as was sent plus error bit. The host may check the error flag (bit 5) as follows.
(i) 0 = No errors.
(ii) 1 = Command not found or command failed.
(c) Sequence byte: The same as was sent. The host may match the sent sequence byte with the
response sequence byte.
(d) Length: Number of data bytes. The host must assemble the data according to the definition of the
command.
Table 6. Read Response Example(1)
Report ID Sequence
Flag Byte Length(2) Data(2)
Byte Byte
00 C0 11 06 00 FF 01 FF 01 FF 01
(1) All values shown are in HEX notation.
(2) LSB precedes the MSB for each parameter.
2.3 USB Write Transaction Sequence Example
To perform a Write operation on the DLPC900, the host must assemble a sequence of bytes that
corresponds to the command being used. The following Table 7 shows an example on how to set the
curtain color intensity of each color to 511.
Table 7. Write Operation Example(1)
Report ID Flag Sequence Length(2) USB Command(2) Data(2)
Byte Byte Byte
00 00 12 08 00 00 11 FF 01 FF 01 FF 01
(1) All values shown are in HEX notation.
(2) LSB precedes the MSB for each parameter.
1. Report ID byte. Always set to 0.
2. Flag byte. Where :
• Bits 2:0 are set to 0x0 for regular DLPC900 operation.
• Bit 6 is set to 0x0 to indicate the host does not want a reply from the device. This bit is set to 0x1
only if a reply is needed, which is usually not required.
• Bit 7 is set to 0x0 to indicate a write transaction
3. Sequence byte: The sequence byte can be a rolling counter. It is used primarily when the host wants a
response from the DLPC900. Normally during a write operation, the DLPC900 does not respond;
however, the host can continue to increment the sequence byte for the next command operation.
4. Length: Two byte length denotes the number of data bytes in the sequence and excludes the number
of bytes in steps 1 through 4. It denotes the total number of bytes sent in steps 5 (command bytes)
and 6 (data bytes).
7
DLPU018–October 2014 Interface Protocol
Submit Documentation Feedback Copyright © 2014, Texas Instruments Incorporated