Specifications

Remote Control and Receiver-Transceiver Specifications and Requirements
for Windows Media Center in Windows Operating Systems
99
The Flush command is used to synchronize the host with the device. The device should loop
back the same data to the host after the device is done processing all data. So, for instance, if
the device has an outgoing FIFO with IR data to transmit, and then it receives the flush
command, it should wait until the FIFO is empty before responding to the Flush command.
The first byte of this command has PORT_SER (0x6) in the upper three bits and the length of the
data in the lower five bits. So, if the host is sending zero bytes (a valid case), the command would
just be one byte long, as shown in the following table.
Offset
Name
Value
Description
0
PORT_SER +
Length
0xC0
Upper three bits = 0x6. Lower
five bits = 0x00. Zero bytes of
data.
If the host is sending three bytes, the command would be four bytes long, as shown in this table.
Offset
Name
Value
Description
0
PORT_SER +
Length
0xC3
Upper three bits = 0x6. Lower
five bits = 0x03. Three bytes of
data.
1
Data
Number
First byte of data
2
Data
Number
Second byte of data
3
Data
Number
Third byte of data
Response
The data, excluding the prefix, will be sent back to the host upon completion of the command.
Example
In a typical example, the host will send the sequence ―0xC1 0xC5 0xC0‖.
0xC1 means one byte of data following.
0xC5 is the one byte of data that you need to echo back.
0xC0 means zero bytes of data following; this is basically an EOF marker.
In response to this, the device will echo the data back. In this example, the host would return a
single byte: 0xC5.
Errors
No specific errors are returned.
Responses to Commands: Non-Error Cases
All responses in this section are returned to the host over the EP1 IN endpoint.
The following responses are available when there is no error:
RSP_EQIRCFS Respond with IR carrier for transmission.
RSP_EQIRTIMEOUT Respond with current IR time-out.