Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
220 Pro CI - App / Settings Change on Remote ??
#11
DIY-Hardware

- Arduino UNO R3 (SMD Edition):

[Image: ARDUINO_UNO_A01.png]

- Arduino/Raspberry IR remote + receiver set:

[Image: s-l1600.jpg]

(Teach Logitech Harmony from IR-Remote control)

- Seeed RS232 Shield:

[Image: 113030016_1.png]

- Cable Sub-D9 to 3.5mm:

[Image: s-l1600.jpg]


Code:

#include <SoftwareSerial.h>
#include <IRremote.h>

SoftwareSerial mySerial(2, 3); //Serial pins
const int RECV_PIN = 7;        //Sensor pin
IRrecv irrecv(RECV_PIN);       //IR Receiver
decode_results results;        //IR Results

void setup()
{
 mySerial.begin(9600); //start serial port
 irrecv.enableIRIn();  //enable IR Receiver
}

void loop()
{
 if (irrecv.decode(&results))
 {
   switch (results.value)
   {
     case 0xFFE01F: //Key VOL- (Volume -1dB)
       mySerial.println("[Devialet>VOLUME=--]");
       mySerial.println("[Devialet>VOLUME=--]");
       break;

     case 0xFFA857: //Key VOL+ (Volume +1dB)
       mySerial.println("[Devialet>VOLUME=++]");
       mySerial.println("[Devialet>VOLUME=++]");
       break;

     case 0xFF22DD: //Key PREV (SAM -5%)
       mySerial.println("[Devialet>MATCHING_LEVEL=--]");
       mySerial.println("[Devialet>MATCHING_LEVEL=--]");
       mySerial.println("[Devialet>MATCHING_LEVEL=--]");
       mySerial.println("[Devialet>MATCHING_LEVEL=--]");
       mySerial.println("[Devialet>MATCHING_LEVEL=--]");
       break;

     case 0xFFA25D: //Key CH- (SAM +5%)
       mySerial.println("[Devialet>MATCHING_LEVEL=++]");
       mySerial.println("[Devialet>MATCHING_LEVEL=++]");
       mySerial.println("[Devialet>MATCHING_LEVEL=++]");
       mySerial.println("[Devialet>MATCHING_LEVEL=++]");
       mySerial.println("[Devialet>MATCHING_LEVEL=++]");
       break;

     case 0xFF02FD: //Key NEXT (Bass -1dB)
       mySerial.println("[Devialet>BASS=--]");
       mySerial.println("[Devialet>BASS=--]");
       break;

     case 0xFF629D: //Key CH (Bass +1dB)
       mySerial.println("[Devialet>BASS=++]");
       mySerial.println("[Devialet>BASS=++]");
       break;

     case 0xFFC23D: //Key PLAY/PAUSE (Treble -1dB)
       mySerial.println("[Devialet>TREBLE=--]");
       mySerial.println("[Devialet>TREBLE=--]");
       break;

     case 0xFFE21D: //Key CH+ (Treble +1dB)
       mySerial.println("[Devialet>TREBLE=++]");
       mySerial.println("[Devialet>TREBLE=++]");
       break;

     case 0xFF9867: //Key 100+ (Balance -5)
       mySerial.println("[Devialet>BALANCE=--]");
       mySerial.println("[Devialet>BALANCE=--]");
       mySerial.println("[Devialet>BALANCE=--]");
       mySerial.println("[Devialet>BALANCE=--]");
       mySerial.println("[Devialet>BALANCE=--]");
       break;

     case 0xFFB04F: //Key 200+ (Balance +5)
       mySerial.println("[Devialet>BALANCE=++]");
       mySerial.println("[Devialet>BALANCE=++]");
       mySerial.println("[Devialet>BALANCE=++]");
       mySerial.println("[Devialet>BALANCE=++]");
       mySerial.println("[Devialet>BALANCE=++]");
       break;

     case 0xFF906F: //Key EQ (Mute on/off)
       mySerial.println("[Devialet>MUTE=!]");
       break;

     case 0xFF6897: //Key 0 (Power off)
       mySerial.println("[Devialet>POWER=0]");
       break;

     case 0xFF30CF: //Key 1 (Power on)
       mySerial.println("[Devialet>POWER=1]");
       break;

     case 0xFF18E7: //Key 2 (Input Digital1)
       mySerial.println("[Devialet>SOURCE=Digital 1]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]");
       break;

     case 0xFF7A85: //Key 3 (Input Optical 1)
       mySerial.println("[Devialet>SOURCE=Optical 1]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]"); //SAM on
       break;

     case 0xFF10EF: //Key 4 (Input USB)
       mySerial.println("[Devialet>SOURCE=USB]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]");
       break;

     case 0xFF38C7: //Key 5 (Input Line 1)
       mySerial.println("[Devialet>SOURCE=Line 1]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_MODE=0]"); //SAM off
       break;

     case 0xFF5AA5: //Key 6 (Input UPnP)
       mySerial.println("[Devialet>SOURCE=UPnP]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]");
       break;

     case 0xFF42BD: //Key 7 (Input Roon Ready)
       mySerial.println("[Devialet>SOURCE=Roon Ready]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]");
       break;

     case 0xFF4AB5: //Key 8 (Input AirPlay)
       mySerial.println("[Devialet>SOURCE=AirPlay]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]");
       break;

     case 0xFF52AD: //Key 9 (Input Spotify)
       mySerial.println("[Devialet>SOURCE=Spotify]");
       delay(100);
       mySerial.println("[Devialet>BALANCE=0]");
       mySerial.println("[Devialet>BASS=6.0]");
       mySerial.println("[Devialet>TREBLE=0]");
       mySerial.println("[Devialet>MATCHING_LEVEL=75]");
       mySerial.println("[Devialet>MATCHING_MODE=1]");
       break;
   }
   irrecv.resume();
 }
 delay(500);
}
Reply
#12
Hi Ascot,

That’s brilliant, thank you.

Cheerio,

Nick
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)