| 24 | | The leading 0's are there to ensure that any data transfer in progress is terminated before the control packet is processed (data transfers are null-terminated). It is permissable to have additional leading 0's, but the entire control packet must fit into a single 8-byte USB packet. |
| 25 | | |
| 26 | | The dir byte must be 0xDC for IN transfers (from the transceiver to the host). It must be 0xCD for OUT transfers (from the host to the transceiver). Any other value will cause the control packet to be discarded. |
| | 24 | The leading 0's are there mainly for historic reasons. At one point they ensured that any data transfer in progress is terminated before the control packet is processed because data transfers with older firmware versions were null-terminated. It is no longer permissible to have additional leading 0's; the packet format must exactly match the above specification. The only exception to this rule is for IR data received from the device. In fact, any packet not fitting this data will be assumed to be received signals and used accordingly. |
| | 25 | |
| | 26 | The dir byte must be 0xDC for IN transfers (from the transceiver to the host). It must be 0xCD for OUT transfers (from the host to the transceiver). Any other value will cause the control packet to be discarded. To remember the use of this byte, consider the direction of the packet with respect to the (C)omputer and the (D)evice. |
| 30 | | The data bytes are optional. They are used to carry additional information to and from the transceiver. |
| 31 | | |
| 32 | | ---- |
| 33 | | |
| 34 | | === Replies === |
| 35 | | |
| 36 | | Whenever the host sends a control packet to the transceiver, the transceiver replies by sending a control packet back to the host. The reply packet is a regular control packet and contains the same control code as the original command, so the host can confirm the control code was received. Reply packets may also contain additional data. |
| | 30 | The data bytes are optional. They are used to carry additional information to and from the transceiver and their content and interpretation are specific to the requested operation. |
| | 31 | |
| | 32 | ==== Replies ==== |
| | 33 | |
| | 34 | Whenever the host sends a control packet to the transceiver, the transceiver replies by sending a control packet back to the host. The reply packet is a regular control packet and contains the same control code as the original command, so the host can confirm the control code was received. Reply packets may also contain additional data specific to the requested operation. |