Infrared Remote doesn't response


#1

Hello,

Yesterday, I receive starter kit from local shopping mall in korea.
Now I test infrared remote receiver module but it doesn’t response.
I use default sample sketch - TestInfraredReceiver.ino.
When upload my code and I push remote controller’s button, the blue LED blink a few second after reset arduino.
But it doesn’t response after serial monitor shows “InfraredReceiverDecode Start!” message. The blue LED doesn’t blink anymore, too.
I try to change default port - PORT_6 -> PORT_4, but same.

What is the problem?

P.S. v2.0 20130602 printed on ir board.

Thanks,
Simon


#2

Try to test if the remote controller battery it’s OK


#3

I’m already checked remote control with my iphone.
But iphone doesn’t show infrared signal on screen… :frowning:

Anyway, now I solved this problem. :smile:

Reference site is http://arduino.cc/en/Reference/SoftwareSerial

I have a arduino mega 2560.
The Mega2560 doesn’t support change interrupt using SoftwareSerial A3 (PORT_6).
Mega2560 only support for RX 10, 11, 12, 13, 14, 15, 50, 51, 52, 53, A8 (62), A9 (63), A10 (64), A11 (65), A12 (66), A13 (67), A14 (68), A15 (69).
So, I change PORT_6 -> PORT_3, it’s OK :smile:

If you use Mega 2560, then connect IR module to PORT_1 or PORT_3.

Done… :wink:


#4

Hi, two simple checks for two easy-to-miss possible causes:

  1. When you connect the IR-module to the Me-BaseShield, does the red power light on the module light up? If not, the stickers on the BaseShield might be misplaced. This could also explain if the module is powered but no serial data is shown.

  2. Is there a battery in the IR-remote? Although there is a plastic thingy on it when you get it, there is no battery inside.


#5

Hi tormodhau.

I solved this problem and I wrote above my reply. ^^

Thanks.


#6

Hi shieldguy,

there is a similar issue with the new, all-in-one ME-Baseboard, which is based on the Leonardo design.

The SoftwareSerial Library Limitations section lists pins D8,D9,D10,D11,MISO,SCK,MOSI for receiving (RX) serial data with Leonardo systems:

  • Not all pins on the Leonardo support change interrupts, so only the following can be used for RX: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).

The ME-Baseboard uses these pin assignments:

  • PORT_1: ** do not use ** this port, it provides the V-M motor voltage (higher voltage)
  • PORT_3: D9, D10 <— perfect choice for the IR Decoder Adapter
  • PORT_5: MISO,SCK… <-- alternative choice

Bottom line, you have two alternatives to connect the IR Decoder to your ME Baseboard:
either PORT_3 or PORT_5.

Please check your arduino sketch defines the right port, e.g. PORT_3, as:

  MeInfraredReceiver infraredReceiverDecode(PORT_3); 

and that you connect your cable to exactly this port.

Kind regards,
Thorsten


#7

Hi thorsten,

I have reply your email with the same content.

In fact, The Port 6, 7, 8 are not the serial communication port. However, our engineer use polling(http://en.wikipedia.org/wiki/Polling_(computer_science)) to achieve the function. So the port could be used as a softwareserial communication port. BUT, there should be no “delay()” in the code. If not, it would cause data obstruction.

Thanks


#8

Hi Johnny,

good point, thank you for your reply!

OK I did not use delay() myself, but I determined delay() and delayMicroseconds() functions are used by an external LiquidCrystal_I2C library included in my project.

Kind regards,
Thorsten


#9