Use Sky HD Remote with Sky Q
December 15, 2016 — 10:20

I believe Sky originally supported using the Sky HD remote with the Sky Q box but disabled it in a firmware update. Using any of the Ken Shirriff based arduino IR libraries we can easily create a circuit to map the Sky HD remote to the Sky Q commands.

The code is below and commented quite well but if there is any questions please ask.

Sky HD to Sky Q mapper

Allows use of Sky HD remote with the Sky Q

Chet Kelly

#include <IRremote.h>

//base value of all Sky HD codes
#define SKYHDBASE 0xC05C00

//base value of all Sky Q codes
#define SKYQBASE 0xC0081A00

byte buttonVal;

long sendButton;

* Default is Arduino pin D11.
* You can change this to another available Arduino Pin.
* Your IR receiver should be connected to the pin defined here
int RECV_PIN = 11;

IRrecv irrecv(RECV_PIN);
IRsend irsend;
decode_results results;

void setup()
irrecv.enableIRIn(); // Start the receiver
void process(decode_results *results) {

//We are only interested in Sky HD codes which are all 24 bit RC6
if (results->decode_type == RC6 && results->bits == 24) {

//assign 24 bit value to 8 bit variable to take least significant byte
buttonVal = results->value;

//check if its likely to be a valid Sky HD code by comparing the base
check if its likely to be a valid Sky HD code by comparing the base e.g.

received = 0xC05C5C

assigned to buttonVal = 0x5C

0xC05C5C - 0x5C = 0xC05C00 = Sky HD base

if(results->value - buttonVal == SKYHDBASE){

//Sky HD least significant byte matches corresponding button on Sky Q
sendButton = SKYQBASE + buttonVal;

//send IR
irsend.sendRC6(sendButton, 32);
//we need to re-enable receiving after sending

void loop() {
if (irrecv.decode(&results)) {

Sky Q Remote Codes
December 15, 2016 — 9:48

Here’s a table of the IR remote codes for a Sky Q satellite box which may be of use. All codes are 32 bit RC6.

Note: The remote sends the power command four times.

Button HEX
Sky C0081A80
Power C0081A0C
Search C0081A7E
Rewind C0081A3D
Play/Pause C0081A3E
Forward C0081A28
Up C0081A58
Down C0081A59
Left C0081A5A
Right C0081A5B
Select C0081A5C
Back/Return C0081A83
Home C0081ACC
I (information) C0081ACB
Channel UP C0081A20
Channel DOWN C0081A21
Record C0081A40
RED C0081A6D
BLUE C0081A70
1 C0081A01
2 C0081A02
3 C0081A03
4 C0081A04
5 C0081A05
6 C0081A06
7 C0081A07
8 C0081A08
9 C0081A09
0 C0081A00
HELP C0081A81