• Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

infrared remote control help? /

Status
Not open for further replies.

ujjvalshah

New Member
i wish to make an infrared remote which works exactly in the same way as a tv remote so that the codes can be identified by the software i am using.. ie GIRDER 3.3

it reads the codes and displays them. initially i sent 1010101.. continuously.. but it displayed different codes everytime. i am sending them at 40KHz.

can anyone pls tell me what should be the ideal coding system?.. i mean the start and stop bits..(which i saw in the howstuff works website)... and how many codes should i send, i mean in binary..... girder displays a four digit hexadecimal no......or i making a mistake with the frequency?.......
 

Nigel Goodwin

Super Moderator
Most Helpful Member
There's no 'ideal' method, you might check my PIC tutorials for details of the Sony SIRC's system - but it sounds like you aren't doing it in any kind of 'correct' way. Give more details of what you're doing.
 

ujjvalshah

New Member
ok..heres what i am doing.......

the software i am using (GIRDER) receives any kind of ir signals from a tv remote and displays some kind of hexadecimal values corresponing to those signals. i am using an atmega16 to drive an ir led at 40KHz. i am usig bascom avr to program the atmega. following is the program i am using.... i am trying to send 101010.... to the pc.. is the code correct?

$regfile = "m16def.dat"
$crystal = 8000000

Config Portd = Output

Dim I As Word
Dim A As Integer

A = 1


While A = 1


I = 1


While I < 33

Set Portd.7
Waitus 13
Reset Portd.7
Waitus 13

Wend

Reset Portd.7

Waitus 1800

Wend

End



i am sending square pulses of 40 KHz by switching on and off portd.7 (for sending 1) where my ir led is connected. after sending 32 such pulses, i am sending 'silence' for zero. then again 1, then 0,...
 
Last edited:

Nigel Goodwin

Super Moderator
Most Helpful Member
So you're not sending any 'real' IR data, and you're not meeting any normal requirements for IR transmissions - I suggest you try looking up how IR remotes work. Check my SIRC's tutorial, and google for Philips RC5.
 

ujjvalshah

New Member
i did check them out .. all the address, command, toggle stuff..... but the thing is even if i send constant 1010101... the display output of the the software should be some particular hex value.. isnt it?.... or should i try sending the same data as sent by a philips rc5 remote and check them out?
 

Nigel Goodwin

Super Moderator
Most Helpful Member
ujjvalshah said:
i did check them out .. all the address, command, toggle stuff..... but the thing is even if i send constant 1010101... the display output of the the software should be some particular hex value.. isnt it?.... or should i try sending the same data as sent by a philips rc5 remote and check them out?
It depends what the receiving program is expecting? - mostly IR sends out an initial long burst in order to allow the receiver to settle, and to syncronise the decoding.

There are many specific ways of doing it, proved by many years of reliable operation - NONE of them do it how you're doing it, perhaps there's a good reason for it?.
 

3v0

Coop Build Coordinator
Forum Supporter
A few things to add to what Nigel said.

Is the IR reciever 40KHz?

As Nigel said you need a long burst at the start of each transmission, sort of like start bits in RS232. I am fairly sure this is common regardless of what brand of encoding you use.

Do not send it trash and expect to see usaeable values. Pick a single protocol that GIRDER understand send real commands using it.

If you have a scope you can probe the ouput pin of an IR reciever and see what you are sending. They are easy to hookup. See the datasheet or use the setup in Nigel's tutorial. This is a good sanity check.
 

ujjvalshah

New Member
ya. .the receiver is a TSOP of 38Khz......

i am attaching the circuit of the receiver.

well the thing is girder is able receive commands form all the ir tv remotes.. i have tried all the remotes i have in my house.. all of them gave their own specific respective codes constantly. onyl my iriver clix mp3 player was an exception, but i guess they use a different frequency.

now what i want to ask is.. how should i send the codes and for now what codes should i send so that i can check wether i am getting same constant output in girder... i dont have access to an oscilloscoope..... and for now data is not important.. i just want to communicate between the transmitter and receiver and get constant codes at the receiver side..

thanks
 

Attachments

Nigel Goodwin

Super Moderator
Most Helpful Member
ujjvalshah said:
now what i want to ask is.. how should i send the codes and for now what codes should i send so that i can check wether i am getting same constant output in girder... i dont have access to an oscilloscoope..... and for now data is not important.. i just want to communicate between the transmitter and receiver and get constant codes at the receiver side..
Like I've said all along, send IR remote codes - not just random values with no type of coding - if you check the SIRC's system in my tutorials it explains how it works, and it's a VERY simple system to transmit or receive.
 

3v0

Coop Build Coordinator
Forum Supporter
You are transmitting 40 KHz and the reciever is 38 KHz.

Perhaps life would be better if you used the same freq for TX and RX. The 38KHz TSOP may be reading the 40KHz but there is no down side to getting it right. It uses the same TX hardware.

Not a big deal just shorten the correct delay in the TX code. If you TX a steady 38KHz the output of the TSOP will go low. If you can not calculate the delay you find it the hard way. (Longest delay that works + Shortest delay that works)/2.

Since the GIRDER can accept commands from most any remote use the commands in Nigels Tutorial. He has done a good job of documenting them, why use anything else?

When I did this I coded in C rather then Basic or asm. You need to get the delays right to produce 38KHz (not 40), Then you need to get the on off times right. Not much to it.
 
Status
Not open for further replies.

Latest threads

EE World Online Articles

Loading
Top