Go Down

Topic: JVC Infrared Signals (Read 733 times) previous topic - next topic

Ariien

Jan 29, 2018, 09:35 pm Last Edit: Jan 30, 2018, 03:09 am by Ariien
Hey guys,

I got a Arduino Starter Kit a couple of weeks ago and have started to mess around with infrared signals. Specifically, I am controlling my electronics with a serial command-line on the Arduino to my PC. My program is fulling working with both Elegoo Basic and Roth Soundbar remotes.  

However, I have read that JVC protocols have some type of repeating code and have a tricky protocol. I am hoping that either someone with a JVC TV or has more infrared experience would be willing to help with the send algorithm. I have documented the setup, source code and debug logs below.

Hardware:
Elegoo Uno R3 Arduino
LAOMAO Infrared Diode LED IR Emitter and Receiver (with Receiver LED)
Breadboard & Solderless wires
330ohms Resistor
USB Serial Output
JVC TV & Remote

Library: IRremote

I don't know if this is for the current JVC remotes:
http://support.jvc.com/consumer/support/documents/RemoteCodes.pdf

The button I have been trying to record is Menu on the JVC TV controller. One code is for pressing the button, the other is for holding it.

IRrecvDumpV2:
Code: [Select]
Encoding  : RC5
Code      : 870 (12 bits)
Timing[23]:
     + 950, - 850     + 900, - 850     +1800, - 850     + 900, - 850
     + 900, - 850     + 950, -1700     + 900, - 850     + 950, - 850
     +1800, - 850     + 900, - 850     + 900, - 850     + 900
unsigned int  rawData[23] = {950,850, 900,850, 1800,850, 900,850, 900,850, 950,1700, 900,850, 950,850, 1800,850, 900,850, 900,850, 900};  // RC5 870
unsigned int  data = 0x870;

Encoding  : RC5
Code      : 70 (12 bits)
Timing[23]:
     + 850, - 900     +1750, - 900     + 850, - 900     + 850, - 950
     + 850, - 900     + 850, -1800     + 850, - 900     + 850, - 900
     +1750, - 900     + 850, - 950     + 800, - 950     + 850
unsigned int  rawData[23] = {850,900, 1750,900, 850,900, 850,950, 850,900, 850,1800, 850,900, 850,900, 1750,900, 850,950, 800,950, 850};  // RC5 70
unsigned int  data = 0x70;


Send Source Code:
I have attempted all protocols in the infrared library including sendJVC.
Code: [Select]
void loop()
{
  irsend.sendRC5(70, 16); // 0 = with lead-in
  delayMicroseconds(75);
  irsend.sendRC5(70, 161); // 1 = without lead-in
  delayMicroseconds(75);
  irsend.sendRC5(70, 16);
  delay(200);
}


Any help would be appreciated.

Go Up