Introduction: Clone!

Presenting ..............CLONE ! - A small TV remote that can clone any five

buttons of your IR TV remote.......and also can JAM the IR transmission of

any other Remote.
.........annoy others by jamming the TV signal,or when

someone else has taken the remote,this little friend can help you out.....

Step 1:

A few days back I was studying about the IR signals,and this idea came to my

mind.In this instructables,I am sharing the building process along-with the

code of this tiny gadget.

However,to build this a few basic skills are required-
1. Knowledge about soldering
2. knowledge about Arduino programming,Atmega 328p MCU
3. knowledge about how to build a circuit from schematics.


That would be sufficient,I think......

Well,here are the things we will need to build this..........
1. Atmega 328p micrcontroller
2. Prototype Circuit boards
3. Two LEDS....any colour....to be used as indicators
4. One IR LED
5. One TSOP 38Khz modulated IR decoder
6. Sevent momentary push to on switches (Five used as remote buttons,sixth 

  one as programming cancel button,seventh one as reset button)
7. one push to on-push to off switch (Used as jammer button)
8. two 22pF ceramic capacitors
9. two 0.1uF ceramic capacitors
10. 7805 Voltage regulator IC
11. 9V battery
12. One 16Mhz crystal
13. eight 10K resistances
15. two 1K resistances
14. 9V battery connector clip


Now,lets start............

Step 2: Understanding IR Signals

Now,lets take a look at the IR transmission mechanism...
We can clearly see that the TSOP sensor filters out the 38Khz modulated IR

signal,and actually "Inverts" the incoming data.....so actually we have to

measure the time difference between the "chunks" of pulses and send a 38Khz

IR wave accordingly....


So,what this tiny gadget basically does is,it collects the RAW IR data via

the IR decoder,stores them in RAM,and when buttons are pressed,pulses the IR

LED accordingly.......and for that Jammer part,it sends out 38Khz Random

pulses,so the receiver goes confused and gets "Blind" at other IR signals.




Now,here's some information
When this device starts,I need to point the remote at it,and press any 5 keys. It takes the raw IR data and stores them in RAM.

IR signals are pretty fast and the digitalRead(),digitalWrite() functions are too slow,that's why I am using the direct pin access method.

digitalWrite(12,HIGH) can be replaced with PORTB |=_BV(PORTB4); which is a lot faster than digitalWrite()

digitalWrite(12,LOW)  ==  PORTB &= ~_BV(PORTB4);  PORTB4 is Arduino digital Pin 12.

if( PIND & _BV(PORTD2) )  == gives the same result as if( digitalRead(2));

Step 3: The Circuit

first take a look at the Schematics...

I have made the MCU board seperately,so that I can use it for other projects

too......it's nothing but a bare minimum mega328p,with external 16Mhz

Crystal,two 22pF capacitors,one 7805 Voltage regulator with two 0.1uF caps

across it's input and output,and one reset button,accompanied with a 10K

pull up resistor.

You can construct the complete circuit in one board,or you can build a

custom shield I have built for my version of Atmega328p bare

minimum........care should be taken so that the pins match exactly.

You just have to study and make the circuit.............I'm leaving the designing part upto you.

I am not familiar with circuit drawing softwares,so I drew it on MS paint......

The Pin config. of mega168 and 328p are the same.....I have attached the 168 one here.

Step 4: Circuit..........continued

Here are some pics of my build....

Step 5: Software

After building the Board,you need to transfer the program I've written to the mega328p..There are several ways of doing this. I used my Arduino as ISP and uploaded the sketch to the MCU.....here is a good tutorial about this by Oddbot. 

http://letsmakerobots.com/node/35649 ..

Alternatively,you can simply plug the MCU in an UNO,and upload the sketch to it. It would be better if you can add a reflector (like those found in battery torches) at the back of the IR LED,It will make the beam stronger,and thus will provide long range.

Just Use Arduino IDE to upload the sketches.....

Step 6: You're Done!

Using instructions:

1.Plug the battery in and wait for the LEDS to settle down

2.Press the buttons connected to digital pins 3 and 7 to adjust the output  frequency till the TV signal gets jammed

3.Then press button connected to digital pin 6 to confirm frequency.

4.Now point the TV remote at CLONE !,and press the keys one by one as in the video,remember to press the power key first and press it twice.

5.after recording all the buttons,the indicator LED stays on.....you can also cancel further programming by pressing the cancel programming button....

6.now use the RAW IR data to control the tv,else just JAM (Button connected to pin 14)  it out..So that no one else can use     it.....


More about this here - http://letsmakerobots.com/node/36905

#You can also skip 2 and 3 by pressing the button on digital pin 6.....It will activate default frequency,which is 38KHz.

And,here's a video too....It was very difficult to shoot it all by myself.

http://www.youtube.com/watch?v=Ge9JVI1a9J4&feature=youtu.be


Epilog Challenge V

Participated in the
Epilog Challenge V

Battery Powered Contest

Participated in the
Battery Powered Contest

Pocket Sized Electronics

Participated in the
Pocket Sized Electronics

Kit Contest

Participated in the
Kit Contest