I have to design a circuit in which I have to transfer data through lasers (serial transmission of data). Now what I was thinking was to check if the laser light is on then '1' is passed and when the laser is off '0' would be passed. Now I need to check if a 1 or a 0 was passed.

How would I check for this and another problem I'm facing is if it's on it may keep on passing 1's. How would I check for this? I though of using LDR's (Light Dependent Resistors)? Would this be okay or it there a better method?

  • \$\begingroup\$ You would be much better off using a photodetector of the same wavelength as the laser, and then modulating the laser beam. Turing on and off a laser is time consuming, even with solid state lasers. \$\endgroup\$
    – R Drast
    Apr 17, 2015 at 12:11
  • \$\begingroup\$ Yeah a photodiode, LDR's are slow. How fast a transmission do you need? I might think of FSK (modulate laser at two different freq's.. one freq = 1 and the other 0.) \$\endgroup\$ Apr 17, 2015 at 14:25
  • \$\begingroup\$ Just wondering why you wouldn't purchase(or specify... if this is just design) a purpose built laser diode / phototransistor that were purpose built for communication? \$\endgroup\$ Apr 17, 2015 at 15:19

2 Answers 2


Now what I was thinking was to check if the laser light is on then '1' is passed and when the laser is off '0' would be passed.

This is exactly how most fiber optic communications works.

How would I check for [if a 1 or a 0 was passed?]

You would build a photoreceiver circuit.

This typically involves a photodetector, possibly an automatic gain control amplifier, and a decision threshold amplifier.

another problem I'm facing is if it's on it may keep on passing 1's

In fiber optics data communications, this is typically solved by using an encoding scheme such as 8b/10b which ensures a minimum transition density. The trade-off is of course that you need to send 10 symbols for every 8 bits in your actual message. Higher-speed systems use more complex encoding schemes with lower overhead.

In telecommunications systems, scrambling is used so that, although there is no guarantee, the odds of a long run of 1's or 0's being sent is exceptionally small.

I though of using LDR's (Light Dependent Resistors)

As others have mentioned, LDRs are very slow and aren't used often for optical communications.


An LDR is a relatively slow optical device. This could be used if you only needed to build a very slow data transmission system, say for a nice visual demonstation. Normally a Photo-Transistor or Photo-Diode would be used in such a system as these devices would allow for much faster transmission speeds. These later two devices could also be used in a slow demonstration system if desired.

One method to decode the laser flashes is for both the trasmitter and receiver to use accurate timing intervals. Such a system could function as follows:

1) To start a transmission the transmitter sends out a short dummy flash. This first flash will synchronize the receiver's interval timer.

2) The transmitter will then begin sending out data (flash or no flash) and hold each data bit condition steady for one full time interval.

3) The receiver will sample the transmitted data near the center of each time interval. (Because the receiver has been synchronized the center of the transmitter's interval can easily be determined.)

4) After a set number of data bits are received the receiver stops and waits for the next syncronization flash.

You can also work out a similar method where a flash on would represent a "0" and no flash would represent a "1".

Another variation would be to shine the laser onto (or into) a fiber optic cable. The receiver then picks up the laser light from the opposite end. This would simulate fiber optic systems that are in wide use today.


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.