Newer RCA receivers incorporate changes to the serial control protocol, which renders them incompatible with previous versions of the serial control standard. (I originally believed that this was some evil ploy by RCA, but it appears to be a necessary change in order to comply with the APG (Advanced Program Guide) standard from DirecTV--mea culpa.) This change breaks any device which controls a DSS receiver via the serial port (most notably, TiVos). For TiVo owners, symptoms of this incompatibility are that the receiver performs a warm boot any time the TiVo tries to change the channel. (For those who are curious why, the TiVo sends a "power on" (FA 02) code before every channel change to ensure that the receiver is on; unfortunately, it just so happens that the new RCA command set interprets FA 02 as a warm boot.)
This is an attempt to document changes that were made to the "interesting" portions of the command set. Obviously this is not a complete list. Hopefully someone will do something useful with this information (TiVo engineers...hint hint).
Update!! The TiVo engineers incorporated support for the new serial protocol in software version 3.0. From TiVo Central, select Messages & Setup, then Recorder and Phone Setup; then Cable/Satellite Box; then Satellite Box Setup. Select the "Serial Cable - APG" option and you're all set!
| Commands sent to DirecTV receiver (prepend with 0xFA) | ||||
|---|---|---|---|---|
| Standard Hex Command |
RCA Hex Command |
Data Bytes Sent |
Data Bytes Received |
Description |
| 01 | 81 | - | - | Power Off |
| 02 | 82 | - | - | Power On |
| 05 | 85 | - | - | Hide Text |
| 06 | 86 | - | - | Show Text |
| 07 | 87 | - | 2/4* | Get Channel Number |
| 0A | 8A | - | 8** | Cold Boot*** |
| 0B | 8B | - | 8** | Warm Boot |
| 10 | 90 | - | 1 | Get Signal Strength (0 to 100) |
| 11 | 91 | - | 7 | Get Date, Time, Day of Week |
| 13 | 93 | - | - | Enable IR Remote |
| 14 | 94 | - | - | Disable IR Remote |
| 45 | A5 | 3 | - | Remote Control Key |
| 46 | A6 | 2/4* | - | Set Channel Number |
| 4A | AA | 2+ | - | Display Text - Byte count, data |
* Standard format uses 2 bytes for channel data, but the new RCA format uses 4 bytes for channel number data. The two extra trailing bytes should be 0xFFFF (so channel 103 for an RCA = 00 67 FF FF)
** No framing, 0x55,CR,LF,"DSS",CR,LF
*** WARNING: This may reset the EEPROM (favorites list, etc...)
Information on the "standard" command set was shamelessly yanked from Kevin T's dtvcon page, which also contains details of data bytes for the 0x45 command and hex responses from the DirecTV receiver. Michael Evenmo's Sony DSS codes page is another good source.
The RCA-specific information was gathered using educated trial and error, a Home Control to DB9 cable (thanks again Kevin T) and a demo of VID's RS232 Hex Com Tool, which I used for 5 minutes at a time because it's not quite worth $40 to me.
This page was composed by Andy Ellsworth and was last updated October 5, 2003.