I'm building an LED transceiver to communicate between two computers using serial communication. For this purpose, I'm thinking about using an IR LED bulb to blink according to the 1s and 0s bit stream of messages and receive that from a TSOP17XX IR receiver used in normal TV remotes. I saw in some web sites that TSOP17XX responds to the frequency denoted by XX. So I'm wondering, if I use just an IR LED to generate light pulses, will it be grabbed by the TSOP17XX accordingly?


1 Answer 1


The TSOP17 datasheet I found has a graph which shows it's peak IR sensitivity is around 940nm. So use an IR LED which emits within, say, +/-50nm of that.

The transmitted signal must be modulated at XX kHz. The TSOP17XX, like most IR remote receivers, ignores signals which are much away from its designed signal modulation. For example, if the part is designed for 40kHz, the modulated signal must be close to 40Khz. The graphs recommend using a modulation pretty close to a 50:50 mark/space ratio (on to off).

The "optical test signal" graphs suggest about 10 cycles of the modulation frequency. So using a simple protocol (which might be a bit too fragile) a 'one' might be 10 modulated cycles of illumination, and a zero, completely off for 10 cycles. So a 40kHz signal would have a baudrate of 4kbit/second.

There are a bunch of modulation schemes for this type of IR transmission. I'd recommend searching the web for some and using an existing protocol, where code is already available.

You will likely use a microcontroller at the receiving end to capture and decode the signal unless you can get a kernel module for the computer. A user-level program might struggle to receive the data unaided.

You might need some hardware assist at the transmitting end, for example a hardware timer, to keep the transmitter modulation signal stable.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.