Help in IR decoding with arduino

Post here about your Arduino projects, get help - for Adafruit customers!

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
edmond_dantes
 
Posts: 1
Joined: Sun Jan 29, 2012 5:31 pm

Help in IR decoding with arduino

Post by edmond_dantes »

Hi all!

i'm playing with arduino and an IR pulse that is send from a RC tank with battle system.
The battle system of each tank send an IR impulse that, if readed by other tank, means that you've been hit.
For my project i need to be able to read and write this IR pulse and since i don't know what protocol is used by this tanks i'm using the IR detector from ladydada (http://www.ladyada.net/learn/sensors/ir.html.
Using the sketch at "Reading out IR codes from an Arduino" this is what i found in the serial monitor:

Code: Select all

Received: 

OFF 	ON
35824 usec, 3240 usec
2640 usec, 6080 usec
7660 usec, 3120 usec
2780 usec, 6000 usec
7720 usec, 3080 usec
2840 usec, 5940 usec
7800 usec, 3020 usec
2860 usec, 5920 usec
7840 usec, 2980 usec
2880 usec, 4360 usec
80 usec, 1480 usec
7820 usec, 2980 usec
2900 usec, 5920 usec
7820 usec, 2960 usec
2940 usec, 5900 usec
7840 usec, 2920 usec
2960 usec, 5900 usec
7820 usec, 2940 usec
2960 usec, 5880 usec
7840 usec, 2940 usec
2960 usec, 5880 usec
7840 usec, 2920 usec
2960 usec, 5900 usec
7820 usec, 2960 usec
2960 usec, 5860 usec
7840 usec, 2960 usec
2960 usec, 5860 usec
7840 usec, 2940 usec
2960 usec, 5860 usec
7860 usec, 2940 usec
2960 usec, 5860 usec
7860 usec, 2920 usec
2960 usec, 5860 usec
7880 usec, 2920 usec
2960 usec, 5860 usec
7880 usec, 2900 usec
2960 usec, 5880 usec
7860 usec, 2920 usec
2960 usec, 5880 usec
7860 usec, 2900 usec
3000 usec, 5840 usec
7880 usec, 2900 usec
2960 usec, 5880 usec
7880 usec, 2900 usec
2960 usec, 5860 usec
7880 usec, 2920 usec
2940 usec, 5900 usec
7860 usec, 2920 usec
2960 usec, 5860 usec
7860 usec, 2920 usec
2960 usec, 5880 usec
7860 usec, 2900 usec
3000 usec, 5840 usec
7880 usec, 2900 usec
2980 usec, 5860 usec
7860 usec, 2920 usec
2980 usec, 5860 usec
7860 usec, 2900 usec
2980 usec, 5860 usec
7880 usec, 2900 usec
2980 usec, 5860 usec
7860 usec, 2920 usec
2980 usec, 5840 usec
7880 usec, 2920 usec
2960 usec, 5860 usec
7860 usec, 2940 usec
2960 usec, 5860 usec
7860 usec, 2940 usec
2940 usec, 5860 usec
7860 usec, 2940 usec
2960 usec, 5860 usec
7860 usec, 2940 usec
2940 usec, 5860 usec
7860 usec, 2940 usec
2960 usec, 5860 usec
7880 usec, 2900 usec
2960 usec, 5880 usec
7880 usec, 2900 usec
2960 usec, 5880 usec
7860 usec, 2900 usec
3000 usec, 5860 usec
7860 usec, 2900 usec
2980 usec, 5860 usec
7860 usec, 2920 usec
2980 usec, 5860 usec
7860 usec, 2920 usec
2980 usec, 5860 usec
7860 usec, 2900 usec
2980 usec, 5860 usec
7860 usec, 2920 usec
2980 usec, 5860 usec
7860 usec, 2920 usec
2960 usec, 5860 usec
7860 usec, 2940 usec
2960 usec, 5860 usec
7860 usec, 2920 usec
2960 usec, 5880 usec
7860 usec, 2920 usec
2960 usec, 5860 usec
7860 usec, 2940 usec
22476 usec, 460 usec
8192 usec, 480 usec
34816 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 50148 usec
51460 usec, 33728 usec
1316 usec, 50148 usec
33648 usec, 9856 usec
60668 usec, 30652 usec
30336 usec, 10336 usec
33848 usec, 33648 usec
65532 usec, 5176 usec
33888 usec, 1316 usec
50148 usec, 51460 usec
1316 usec, 50148 usec
51460 usec, 65492 usec
15316 usec, 9856 usec
60668 usec, 15416 usec
33888 usec, 1316 usec
50148 usec, 33648 usec
10196 usec, 100 usec
320 usec, 7740 usec
0 usec, 20000 usec
0 usec, 0 usec
0 usec, 16200 usec
17560 usec, 3940 usec
3920 usec, 3840 usec
3860 usec, 3960 usec
15440 usec, 25740 usec
20 usec, 15440 usec
25740 usec, 60436 usec
65196 usec, 1748 usec
5176 usec, 33780 usec
55256 usec, 5840 usec
7880 usec, 2920 usec
2960 usec, 5860 usec
int IRsignal[] = {
// ON, OFF (in 10's of microseconds)
	324, 264,
	608, 766,
	312, 278,
	600, 772,
	308, 284,
	594, 780,
	302, 286,
	592, 784,
	298, 288,
	436, 8,
	148, 782,
	298, 290,
	592, 782,
	296, 294,
	590, 784,
	292, 296,
	590, 782,
	294, 296,
	588, 784,
	294, 296,
	588, 784,
	292, 296,
	590, 782,
	296, 296,
	586, 784,
	296, 296,
	586, 784,
	294, 296,
	586, 786,
	294, 296,
	586, 786,
	292, 296,
	586, 788,
	292, 296,
	586, 788,
	290, 296,
	588, 786,
	292, 296,
	588, 786,
	290, 300,
	584, 788,
	290, 296,
	588, 788,
	290, 296,
	586, 788,
	292, 294,
	590, 786,
	292, 296,
	586, 786,
	292, 296,
	588, 786,
	290, 300,
	584, 788,
	290, 298,
	586, 786,
	292, 298,
	586, 786,
	290, 298,
	586, 788,
	290, 298,
	586, 786,
	292, 298,
	584, 788,
	292, 296,
	586, 786,
	294, 296,
	586, 786,
	294, 294,
	586, 786,
	294, 296,
	586, 786,
	294, 294,
	586, 786,
	294, 296,
	586, 788,
	290, 296,
	588, 788,
	290, 296,
	588, 786,
	290, 300,
	586, 786,
	290, 298,
	586, 786,
	292, 298,
	586, 786,
	292, 298,
	586, 786,
	290, 298,
	586, 786,
	292, 298,
	586, 786,
	292, 296,
	586, 786,
	294, 296,
	586, 786,
	292, 296,
	588, 786,
	292, 296,
	586, 786,
	294, 404,
	64, 2355,
	68, 5836,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	0, 0,
	4979, 190,
	4628, 2963,
	4979, 190,
	4628, 2963,
	190, 4628,
	3067, 2963,
	473, 6047,
	2979, 5146,
	6469, 1529,
	2977, 6003,
	1547, 3364,
	6553, 517,
	190, 4628,
	1029, 3,
	3364, 5533,
	2977, 5146,
	106, 118,
	774, 0,
	2000, 0,
	0, 0,
	1620, 1756,
	394, 392,
	384, 386,
	396, 1544,
	2574, 2,
	1544, 2574,
	6043, 6519,
	174, 517,
	3378, 5525,
	584, 788,
	292, 296,
	586, 0};
Now i'm in trouble for the replication of the IR pulse when i found this series of zeroes

Code: Select all

0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
0 usec, 0 usec
what i must put in the "PulseIR" and "delaymicrosecond" command?
Thanks in advance for any reply!

P.S. I'm a newbie in the electronic and arduino world.

Locked
Please be positive and constructive with your questions and comments.

Return to “Arduino”