Chet.ie
Electonics, Projects and Ramblings – Make it, break it, hack it, mend it.
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 www.chet.ie */ #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 irrecv.enableIRIn(); } } } void loop() { if (irrecv.decode(&results)) { process(&results); irrecv.resume(); } }
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 |
… | C0081AF5 |
I (information) | C0081ACB |
Channel UP | C0081A20 |
Channel DOWN | C0081A21 |
Record | C0081A40 |
RED | C0081A6D |
GREEN | C0081A6E |
YELLOW | C0081A6F |
BLUE | C0081A70 |
1 | C0081A01 |
2 | C0081A02 |
3 | C0081A03 |
4 | C0081A04 |
5 | C0081A05 |
6 | C0081A06 |
7 | C0081A07 |
8 | C0081A08 |
9 | C0081A09 |
0 | C0081A00 |
HELP | C0081A81 |