Go Down

Topic: IR Emitter works for most stuff, but not AC Units (Read 1 time) previous topic - next topic


Hey there!

I'm working on a simple internet controlled IR Remote, but I ran in a problem I just can't explain.

I'm recording the IR codes and playing them back, and that's working flawlessly - for must stuff. I can control my TV, toys, some remote controlled fans, the car radio, but air conditioners simply won't accept my signals!

First, I was using a single LED connected directly to the arduino and I had to get REAL close to the AC unit sensor for it to work (1 inch/2cm approx.), so I thought I was just not driving the IR LED properly.
I'm now triggering 5 IR LEDs in series using a BC338 and a 3.3ohms resistor on the collector, plus a 560 ohms for the base. It still doesn't trigger the AC! Now it won't work even if I get really close to it. All the other stuff are still working, and using a camera, the LEDs are shining a lot brighter.

Things I've tried:

  • Sending the code multiple times
  • Sending it in various frequencies (35 to 40khz)
  • Using  the code from a generic universal remote
  • Sending a "blank" (4 bytes of 0xFF) burst right after the signal (some IR codes read that)

Here's an example of data extracted from my IR sensor:
Code: [Select]

  gelado18[BIT_LEN] = 11;
  gelado18[BIT_START_H] = 180;
  gelado18[BIT_START_L] = 90;
  gelado18[BIT_DATA_H] = 11;
  gelado18[BIT_DATA_L] = 34;
  gelado18[BIT_DATA_LEN] = 6;
  gelado18[BIT_DATA + 0] = 193;
  gelado18[BIT_DATA + 1] = 96;
  gelado18[BIT_DATA + 2] = 0;
  gelado18[BIT_DATA + 3] = 64;
  gelado18[BIT_DATA + 4] = 0;
  gelado18[BIT_DATA + 5] = 0;

I'm using an Arduino Mega 1280 and a random library I've found on the internet (it was the only I could find that would compile and work without having to mess a lot with the code).


Air conditioner codes are incredibly, incredibly long. Are you sure you have captured the full length? I have tried various libraries and they are not AC friendly at all when it comes to capturing AC IR codes. This is the only method that worked http://www.analysir.com/blog/2014/03/19/air-conditioners-problems-recording-long-infrared-remote-control-signals-arduino/. The full sketch to capture the IR code is on the website. You can then use the IRSendRaw from the  IRRemote library to re-transmit your captured code.



It worked flawlessly. Thanks a lot for the input! This solved the "mystery", but I wonder why that isn't mentioned in the library stuff :(

Just a note: It records negative values using that library, just make sure to make them all absolute and it's good to go :)


It took me many wasted hours of testing before figuring it out too initially, and you are right about the negative values part as well  :)


Great to read that our sketch helped.

FYI: IRremote only measures to +/- 50uSec accuracy & was never designed to handle AC codes originally, which i why we made the sketch available. All IR receivers add in some extra distortion of timings as well.

Go Up