Dreambox Infrared (IR) Remote Control Protocol

You can operate up to four Dreamboxes in the same room with IR signals by configuring each box and its remote to use one of four available IR addresses. By default, a Dreambox reacts to all four addresses.


To build an IR code, you need to learn a little bit about its structure. Each NEC IR code is a 32-bit number consisting of four 8-bit numbers:

1. Address

2. Inverse Address

3. Data

4. Inverse Data

Valid values for Address and corresponding Inverse Address

Address
Inverse Address
32h CDh
33h CCh
34h CBh
35h CAh



Valid values for data if address is either 32h or 33h


Data
Key code
00h POWER
01h 1
02h 2
03h 3
04h 4
05h 5
06h 6
07h 7
08h 8
09h 9
0Ah PREVIOUS
0Bh 0
0Ch NEXT
0Eh AUDIO
10h INFO
11h UP
12h MENU
13h LEFT
14h OK
15h RIGHT
16h HELP
17h DOWN
18h VIDEO
19h VOLUMEUP
1Ah MUTE
1Bh CHANNELUP
1Ch VOLUMEDOWN
1Dh EXIT
1Eh CHANNELDOWN
1Fh RED
20h GREEN
21h YELLOW
22h BLUE
23h PREVIOUSSONG
24h PLAY
25h STOP
26h NEXTSONG
27h TV
28h RADIO
29h TEXT
2Ah RECORD


Valid values for data if address is either 34h or 35h

Data Key code
00h *
POWER
01h **
POWER
04h 1
05h 2
06h 3
07h MUTE
08h 4
09h 5
0Ah 6
0Bh PREVIOUS
0Ch 7
0Dh 8
0Eh 9
0Fh NEXT
10h 0
11h UP
12h EXIT
13h VOLUMEUP
14h LEFT
15h OK
16h RIGHT
17h CHANNELUP
18h VOLUMEDOWN
19h DOWN
1Ah CHANNELDOWN
1Bh INFO
1Ch MENU
1Fh RED
20h GREEN
21h YELLOW
22h BLUE
23h TV
24h RADIO
25h TEXT
26h HELP
30h AUDIO
31h VIDEO
32h PREVIOUSSONG
33h PLAY
34h STOP
35h NEXTSONG
36h RECORD

*) Used by remotes with address 35h

**) Used by remotes with address 34h


Example code calculation

Suppose you want to send a MUTE key code for address 32h. First look up or calculate the inverse address for 32h: CDh. Then look up the value of MUTE in the first data table: 1Ah. Calculate its inverse value: 1Ah XOR FFh = E5h. The resulting IR code is the concatenation of all four hexadecimal values: 32h CDh 1Ah E5h -> 32CD1AE5h, or 0x32CD1AE5 in another notation.

How to use it?

If you don't own a universal remote already that let's you enter raw NEC codes, there are many cheap ESP8266-based devices available on the market, which are supported by the open source software Tasmota. There's a Tasmota-IR firmware variant, which supports additional IR protocols.


Tasmota allows sending IR commands via MQTT or from the console. To send the code calculated above, the console command looks like this:

Code
IRSend {"Protocol":"NEC","Bits":32,"DataLSB":"0x32CD1AE5"}


Some related articles:

- https://tasmota.github.io/docs/devices/YTF-IR-Bridge/

- https://www.heise.de/ct/artike…-MQTT-nutzen-4505906.html

- https://daniel-spitzer.de/blog…tv-mit-alexa-integration/