Continue to Site

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.

  • 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.

Detecy multiple IR frequencies

Status
Not open for further replies.

jerryd

New Member
Elector Tech forum,

Hippogriff's post about IR recieving is interesting since
I have an IR reciever circuit working with a TSOP4838 38KHZ.

I've only used it to detect a single frequency and I don't
have any idea how to detect multiple frequencies? Can
someone start me in the right direction to learn how to
do this?

Thanks for any replies,
jerryd
 
Do you need to discriminate between multiple frequencies (ie tell the difference) or do you just need to DETECT multiple frequencies?

And are the frequencies all received at once or just one frequency at a time? Please provide more info on the whole project.
 
You seem confused by IR signals?, the frequency is only the carrier, and it really makes VERY little difference. The differences are in the coding, and the data sent, NOT in the carrier frequency.
 
Electro Tech forum,

I would like to discriminate between multiple frequencies just as the TV
does with the remote. I assume you send different frequencies with the
same carrier and then hardware of software can tell which was transmitted.

jerryd
 
Ahah. So you assumed it used frequencies and asked about frequencies. ;)

As Nigel said there are codes transmitted with one carrier frequency so you need to be asking about codes.

At this point it's best to state what your transmitter (remote?) is, and what your receiver needs to control.
 
I've run into carrier problems. Used to be 38k was everywhere, I 1st saw 56k on satellite rcvrs. Made me rewrite my IR controller swre & add carrier options in hdwe. 1st remo version in '98 (in C/DOS) only needed 38k. Windows version more flexible.

The only way I've discerned carrier is trial & error: learn a pattern & reissue it. That it doesn't work, try different a carrier. Want to try IRDA IR/rcvr to sense carrier... G.H. <<<)))
 
jerryd - if the other posters are correct and you're talking about codes, then I think you're going to need to understand what the remote is spitting out first... whether it be in the SIRC, RC5 or NEC protocol... or something else. I'm no expert, but what I do know is that I would never have managed to decipher what my remote was spitting out (NEC Extended protocol, by the way) until I hooked it up to a logic analyser - from there it was easy... well, simple. As long as you don't have a clue what the remote is spitting out you have pretty much no chance of deciphering the addresses and commands that it is sending on each press of a button.

Once you know what is being sent, you can write an algorithm to decipher the values being sent... in my Extended NEC case, a 9ms pulse, a 4.5ms pulse then 32 bits (represented by a pulse followed by a different delay for 0 and 1) representing the address (first 16 bits) and then the command (last 16 bits, but I only bothered in reading the first 8 bits) with parity. Once you're there, you're finally distinguishing between different button presses.
 
Last edited:
Electro Tech forum,

I'm doing the transmitting with a TSAL7600 High Power IR
diode. There's a carrier signal at 38KHZ and a modulation
at 32HZ. Each modulation pulse is 1.5ms in duration.
The receiver is a TSOP4838 which strips off the carrier
and outputs the modulation pulse.

I've attached a scope photo.

I can to send different modulation frequencies or
a different pulse width but then I need a way to
differentiate them. This is all cmos logic no
microcontroller although that's the final goal.

Thanks for the replies so far,
jerryd
 

Attachments

  • P5210106.JPG
    P5210106.JPG
    868.1 KB · Views: 192
You're missing the point.

I think what folks are trying to tell you here is to forget about frequency. Reading a remote has nothing at all to do with frequency. Once you demodulate the modulated stream, what you have (I believe, haven't worked with this directly) is a bunch of bits. The polarity (1/0) of each bit is determined by its length: short length=0, longer length=1 (or perhaps vice versa). That's how you decode.
 
TSOP48XX are produced for 7 different carriers from 30 to 56kHz. Each can operate only on it's own frequency. Use as much different photo modules as you need.
 
Electro Tech forum,

You guys are right I'm not getting it.

The output of the receiver is the modulation pulses.
I can vary the pulse width or interval between pulses.

Bloki is suggesting that I use a different receiver
for different carriers.

Still confused.
jerryd
 
Each receiver is tuned to a specific frequency (the carrier frequency of the IR xmitter). The receiver takes care of all demodulation, so you don't have to know anything about frequency to be able to read a remote (or other generator of an IR datastream). All you need to know is the frequency that xmitter is transmitting on.

The width of the data pulses has nothing whatever to do with the carrier frequency. The two are completely independent. Of course, you need to interpret the data pulse width in order to distinguish 0s from 1s (and to detect the beginning and end of data in the stream).

Look at it this way: think of each IR receiver as a little radio. Each radio lacks a tuning capacitor and is tuned to a single particular "station". Each "station" corresponds to a different frequency used by different devices (e.g., different remotes). Now, in order to "listen to the radio" (that is, decode the datastream from an IR xmitter), you don't need to know anything about what frequency the "radio" is tuned to (assuming, of course, that it's tuned the same as the xmitter): all you need to do is to "listen to the music" being played over the "radio".

So yes, you need different IR receivers for different carrier frequencies. (Don't know what the bandwidth of any particular receiver is, or if there are any tricks you can use here.)
 
Last edited:
Carbonzit,

I'm starting to get it.
Certainly using a different receiver for each carrier would work.
I'll read up on the bandwidth to see if there is a way to just
use one for multiple carriers.

Thanks,
jerryd
 
If you are determined to work without a microcntroller, and your photo shows you already have it working with a fixed pulse train of 32 Hz then you can probably implement a freq encoded system.

If you modulate the carrier at 32 Hz (as per your example) you get 32 Hz output frequency from your detector. Then you could use a freq detector IC to detect that 32 Hz frequency and control a single output.

Obviously you could add a frequency detector IC for each frequency you need to detect. It's a little messy but if you only need to detect a few frequencies it should be workable without a micro.

On the other hand, if you can find a frequency detector IC that will detect and discriminate multiple different frequencies you are close to a 1-chip analogue solution.

(edit) Actually I was just posting in another thread about an engine tacho and it gave me an idea. Well actually it's an old idea.

If you get your output frequency (say 32 Hz to 100 Hz) to trigger a 555 monostable, filter the output with RC you get an output voltage proportional to frequency. Then put that voltage into a LM339 bargraph IC that detects different voltages and operates different output pins. That should be a working analogue solution.
 
Last edited:
Certainly using a different receiver for each carrier would work.

As I posted well back in this thread, different receiver frequencies don't only work on one frequency, they are 'optimised' for that frequency but receive other frequencies over quite a wide range perfectly well - you just get a slightly shorter range.

So if you're going to try and attempt it, check the receivers out first, and what works with what.
 
These TSOP48XX has certain bandwidth. At frequencies 20% above or under center frequency they have about 20% of response at center frequency. It's selectivity is poor. That is what what Nigel said.
 
If you are using an off the shelf IR receiver, there are many things that make it work.
1. Directivity, of the lens. How wide of an area the receiver sees. This is like an antenna for a TV set. A 3 foot piece of wire is not the same as a 12 element directional antenna.
2. Frequency (color) of the light. You would never transmit in Green and try to receive in Red. A very strong Green light well be received just as two AM radio stations can interfere with each other.
3. Carrier In this case 32khz. Some 48khz signal will get into a 32khz system. 10 % off makes a big difference.
4. Burst The receiver is built to do best with data of 40 to 60 clocks long. You need to use this format. If you build a receiver you can do what you want.
 

Attachments

  • Direction.JPG
    Direction.JPG
    14.6 KB · Views: 187
  • ir.JPG
    ir.JPG
    13.9 KB · Views: 186
  • 32khz.JPG
    32khz.JPG
    11.5 KB · Views: 186
  • burst.JPG
    burst.JPG
    17.2 KB · Views: 176
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top