The RC-5 protocol was developed by Philips in the early 1980s as a semi-proprietary consumer IR (infrared) remote control communication protocol for consumer electronics. It was subsequently adopted by most European manufacturers, as well as by many US manufacturers of specialty audio and video equipment. The other main protocol relevant to consumer electronics is the NEC protocol, which is largely used by Japanese manufacturers.
The RC-5 protocol, when properly implemented, has the advantage that any CD handset (for example) may be used to control any compatible brand of CD player. By comparison, the NEC protocol assigns each brand its own unique header(s) after which may follow any desired command set; this confers the advantage that there cannot be any interference between remote handsets for pieces of equipment made by different manufacturers.
The basics of the protocol are well known. The handset contains a keypad and a transmitter integrated circuit (IC) driving an IR LED.[1] The command data is a Manchester-coded bitstream modulating a 36 kHz carrier. (Often the carrier used is 38 kHz or 40 kHz, apparently due to misinformation about the actual protocol.)[clarification needed] The IR signal from the transmitter is detected by a specialized IC with an integral photo-diode, and is amplified, filtered, and demodulated so that the receiving device can act upon the received command.[2] RC-5 only provides a one-way link, with information travelling from the handset to the receiving unit.
The command comprises 14 bits:
A start bit which is always logic 1 and allows the receiving IC to set the proper gain.
A field bit which denotes whether the command sent is in the lower field (logic 1 → 0 to 63 decimal) or the upper field (logic 0 → 64 to 127 decimal). Originally a second start bit, the field bit was added later by Philips when it was realized that 64 commands per device were insufficient. Many devices still use the original system.
A control bit which toggles with each button press. This allows the receiving device to distinguish between two successive button presses (such as "1", "1" for "11") as opposed to the user simply holding down the button and the repeating commands being interrupted by a person walking by, for example.
A five-bit system address that selects one of 32 possible systems.
A six-bit command that (in conjunction with the field bit) represents one of the 128 possible RC-5 commands.
The 36 kHz carrier frequency was chosen to render the system immune to interference from TV scan lines. Since the repetition of the 36 kHz carrier is 27.778 μs and the duty factor is 25 %, the carrier pulse duration is 6.944 μs. Each bit of the RC-5 code word contains 32 carrier pulses, and an equal duration of silence, so the bit time is 64×27.778 μs = 1.778 ms, and the 14 symbols (bits) of a complete RC-5 code word take 24.889 ms to transmit. The code word is repeated every 113.778 ms (4096 ÷ 36 kHz) as long as a key remains pressed. (Again, please note that these timings are not strictly followed by all manufacturers, due to a lack of widespread distribution of accurate information on the RC-5 protocol.)
System and command codes
While the RC-5 protocol is well known and understood, what is not so well documented are the system number allocations and the actual RC-5 commands used for each system. The information provided below is the most complete and accurate information available at this time. It is from a printed document from Philips dated December 1992 that is unfortunately not available in electronic format (e.g., PDF), nor is an updated version available. This information is provided so that companies that wish to use the RC-5 protocol can use it properly, and avoid conflicts with other equipment that may or may not be using the correct system numbers and commands.
Accuracy of information
The information in the tables on this page is known to be accurate. Yet it is also clear that there are many gaps in these tables. For example, there is no category listing for DVD players in the system table. (They were not developed until five years after the date of publication of the material from which this information was obtained.) It would obviously be useful therefore to expand these tables with known accurate information. At this time, there are only a few possible ways to do so.
The first would be to capture the IR bitstream from the handset of newer Philips products, such as DVD players and analyze them to see what system number is used. The other would be to use the popular Philips Pronto series of programmable remote controls. These can be programmed to operate Philips components using the RC-5 protocol. Again, the bitstream output of the handset would need to be captured and analyzed. The only other way is to obtain the appropriate documents directly from Philips.
System number allocations
Table 1: System number allocations for RC-5
System number
Description
Command tables
0
TV 1 (TV receiver 1)
2, 3, 4a
1
TV 2 (functions and command numbers as system 0)
2, 3, 4a
2
Txt (teletext)
2, 3, 5
3
Extension to TV 1 and TV 2
2, 4b
4
LV (LaserVision player)
2, 3, 6
5
VCR 1 (video cassette recorder 1)
2, 3, 7a
6
VCR 2 (functions and commands as system 5)
2, 3, 7a
7
Reserved
8
Sat 1 (satellite TV receiver 1)
2, 3, 8
9
Extension to VCR 1 and VCR 2
2, 7b
10
Sat 2 (functions and commands as system 8)
2, 3, 8
11
Reserved
12
CD-Video (compact disc video player)
2, 3, 9
13
Reserved
14
CD-Photo (photo on compact disc player)
2, 3, 10
15
Reserved
16
Preamp 1 (audio preamplifier 1)
2, 11
17
Tuner (radio tuner)
2, 12
18
Rec 1 (analog cassette recorder)
2, 13
19
Preamp 2 (functions and commands as system 16)
2, 11
20
CD (compact disc player)
2, 14
21
Combi (audio stack or record player)
2, 15
22
Sat (audio satellite)
2, 16
23
Rec 2 (functions and commands as system 18)
2, 11
24
Reserved
25
Reserved
26
CD-R (compact disc recorder)
2, 17
27
Reserved
28
Reserved
29
Lighting
30
Reserved
31
Reserved
System number recommendations
As can be seen, this information is out of date. There are no longer any systems using CD-Video or CD-Photo, for example. In addition, many of the "Reserved" system numbers have no doubt been allocated by Philips during the intervening 16 years. In order to maintain compatibility, it would be helpful to obtain this information. Unfortunately, this has proven to be difficult.
When designing a product using the RC-5 protocol, the designer must follow the published information as closely as possible. For example, one surround-sound processor from a US specialty manufacturer used the system number 16, designated for "Preamp 1". This caused many problems with home theater installations that also included a separate two-channel preamplifier, which if of US or European origin, would also use the RC-5 protocol with system number 16. If the designers of the surround-sound processor had the correct information available to them, it would have been obvious that a better choice would have been to use system number 19, designated for "Preamp 2", as this would have avoided needless conflict between products.
Command tables
Over time, the information will also be added for the command tables so that all of the available information regarding the RC-5 protocol is gathered in one place. The information in the command tables shown in standard font was obtained from the Philips publication referenced at the bottom of this page. Information in italics is information that is known to be accurate, as it was derived by one of the methods described above.
Table 2: RC-5 commands common to all systems
Command
Function
Command
Function
0 to 9
Digit entries 0 to 9
78
Decrease linear control setting
16
Increase sound volume
80
Move cursor or actuator upwards
17
Decrease sound volume
81
Move cursor or actuator downwards
18
Increase screen/display brightness
82
Switch screen/display menu on
19
Decrease screen/display brightness
83
Switch screen/display menu off
22
Increase bass response
84
Display A/V system status
23
Decrease bass response
85
Move cursor or actuator to the left
24
Increase treble response
86
Move cursor or actuator to the right
25
Decrease treble response
87
Acknowledge; execute function selected by cursor
26
Shift sound balance to the right
118
Select functions defined as sub-mode
27
Shift sound balance to the left
119
Select functions defined as options sub-mode; e.g., calendar, alarm, time
63
Select system mode of RC transmitter
123
Connect two items via Euroconnector
71
Dim local display
124
Disconnect two items connected via Euroconnector
77
Increase linear control setting
Table 3: RC-5 commands common to all video systems except TV and VCR extension systems 3 and 9†
Command
Function
Command
Function
20
Increase color saturation
95
Select PIP source
21
Decrease color saturation
96
Mosaic/multi-PIP
88
PIP on/off
97
Digital noise reduction of picture
89
PIP shift
98
Store main picture
90
PIP/main picture swap
99
PIP strobe; displays a photo-finish
91
Strobe main picture on/off
100
Recall main stored picture
92
Multi-strobe
101
PIP freeze
93
Main picture frame frozen
102
Step up PIP options and display source
94
3/9 multi-scan: (search for 9 TV pictures and display in 9 PIPs)
103
Step down PIP options and display source
† Commands for video extension systems 3 (TV) and 9 (VCR) which use the common video command numbers are given in Tables 4b (TV) and 7b (VCR).
Table 4a: Additional RC-5 commands for TV 1 and TV 2 (systems 0 and 1)
Command
Function
Command
Function
10
1/2/3 digit entry
59
View data; advance (USA only)
11
Channel/program/freq; 11 (Japan)
60
TXT/TV toggle; 12 (Japan only)
12
Standby
61
System standby
13
Master mute/de-mute
62
Picture crispener (contour boost)
14
Personal preference settings
64
15
Display user info on screen
65
28
Increase picture contrast
66
29
Decrease picture contrast
67
30
Search up
68
31
Decrease tint/hue
69
32
Channel/program up
70
Audio response for speech/music
33
Channel/program down
72
34
Last viewed program/channel
73
35
Select stereo sound channel/language
74
36
Spatial stereo
75
37
Stereo/mono
76
38
Sleep timer
79
Select sound functions in sequence
39
Increase tint/hue
104
Alter PIP size step-by-step
40
Switch RF inputs
105
Select vision functions in sequence
41
Store; Vote (France only)
106
Actuate colored or other special keys
42
Display time
107
Actuate function highlighted red
43
Scan forward; increment (USA only)
108
Actuate function highlighted green
44
Decrement (USA only)
109
Actuate function highlighted yellow
45
110
Actuate function highlighted cyan
46
Secondary control/menu (USA only)
111
Index page/white function
47
Show clock
112
Next option
48
Pause
113
Previous option
49
Erase/correct entry
114
50
Rewind
115
51
Go to
116
52
Wind
117
53
Play
120
54
Stop
121
55
Record
122
Store open/close
56
External 1
125
57
External 2
126
58
127
Parental access via PIN code
Table 4b: RC-5 commands for TV1 and TV2 extension (system 3) other than those listed in Table 2
Command
Function
Command
Function
10
4 default video settings (Far East)
67
Program 10 (Far East)
11
4 default audio settings (Far East)
68
Program 11 (Far East)
12
69
Program 12 (Far East)
13
70
14
72
4 default video settings (Far East)
15
73
4 default audio settings (Far East)
20
74
21
75
28
Pay TV channel +
76
29
Pay TV channel −
79
30
Radio channel +
88
Pay TV channel +
31
Radio channel −
89
Pay TV channel −
32
Tilt cabinet forward 10 degrees max
90
Radio channel +
33
Tilt cabinet backward 10 degrees max
91
Radio channel −
34
92
35
93
36
94
37
95
38
96
39
97
40
98
41
99
42
100
43
101
44
102
45
103
46
104
Tilt cabinet forward 10 degrees max
47
105
Tilt cabinet backward 10 degrees max
48
106
49
107
50
108
51
109
52
110
53
111
54
112
55
113
56
External 3
114
57
External 4
115
58
116
59
117
60
120
External 3
61
121
External 4
62
Change 4:3 picture format to 16:9
122
Channel setting menu
64
125
65
126
Change 4:3 picture format to 16:9
66
127
Table 5: RC-5 commands for teletext (system 2) other than those listed in Tables 2 and 3
Command
Function
Command
Function
10
Next page
59
11
Previous page
60
12
Standby
61
13
62
News flash (Antiope function)
14
64
15
65
28
Enter page number in memory
66
29
Sequential display of pages w/stored numbers
67
30
Sequential display/deletion of pages w/stored numbers
68
31
69
32
Exchange (Antiope function)
70
33
Main index
72
34
Row zero (Antiope function)
73
35
74
36
75
37
76
38
Print displayed page
79
39
Mix Antiope/TV pictures
104
40
105
41
Page hold
106
42
Display time/timed page
107
43
Large top/bottom/normal
108
44
Reveal/conceal
109
45
TV/TXT
110
46
TV + TXT/subtitle
111
47
112
48
113
49
Erase/correct entry
114
50
115
51
116
52
117
53
120
54
121
55
122
56
125
57
126
58
127
Table 6: RC-5 commands for a LaserVision system player (system 4) other than those listed in Tables 2 and 3
Command
Function
Command
Function
10
Display picture number/time
59
Freeze segment(s) indicated by picture numbers
11
Display chapter number
60
TXT/TV toggle; RF switch (USA only)
12
Standby
61
13
Mute/de-mute
62
CX 1, 2, 3; toggle for CX noise reduction
14
64
15
Display user info. on screen
65
28
Total shuffle play (TSP) once/repeat once
66
29
TSP/repeat continuously
67
30
Select next option
68
31
Fast run reverse
69
32
Entry (prepare to program)
70
33
Auto-stop at pre-programmed point
72
34
Slow run reverse
73
35
Select stereo sound channel 1/language 1
74
36
Select stereo sound channel 2/language 2
75
37
Still increment reverse
76
38
Increase speed
79
39
Decrease speed
104
40
Slow run forward
105
41
Still increment forward
106
42
Fast run forward
107
43
Automatic search for user choice
108
44
Search in reverse
109
45
Open/close lid
110
46
Search forward
111
47
Play reverse/play opposite sound track
112
48
Pause
113
49
Erase/correct entry
114
50
115
51
116
52
117
53
Play
120
54
Stop
121
55
122
56
125
57
126
58
Clear memory all
127
Table 11: RC-5 commands for audio preamplifiers 1 and 2 (systems 16 and 19) other than those listed in Table 2
Command
Function
Command
Function
10
GEQ L (graphic equalizer left channel)
67
11
GEQ R (graphic equalizer right channel)
68
12
Standby
69
13
Master mute/de-mute
70
14
Personal preference settings
72
15
Display user info on local display
73
20
74
21
75
28
GEQ L+R (graphic equalizer L + R channel)
76
29
Speaker select
79
Scroll linear sound functions
30
Scratch filter on/off
88
Random noise generator on/off
31
Rumble filter on/off
89
Timer on/off
32
Step function +
90
News timer on/off
33
Step function −
91
34
Signal path scroll
92
35
Speaker A on/off
93
36
94
37
Scroll surround sound options
95
38
Sleep timer
96
39
Speaker B on/off
97
40
Speaker C on/off
98
41
Timer program mode
99
42
Time set mode
100
43
Timer +
101
44
Timer −
102
Center channel volume +
45
Open timer memory
103
Center channel volume −
46
Open acoustic control setting memory
104
Delay front to surround increment
47
Select acoustic settings in memory
105
Delay front to surround decrement
48
106
Linear phase
49
Erase/correct entry
107
50
108
51
109
52
110
53
111
54
112
55
113
56
114
57
115
58
Clear memory all
116
59
117
60
Dynamic range expand
120
61
121
62
Dynamic range compress
122
Tape monitor
64
Surround sound on/off
125
65
Balance front
126
66
Balance rear
127
Table 14: RC-5 commands for a compact disc player (system 20) other than those listed in Table 2