I am building arduino laser transmitter.

I have modulated laser blink, however the photodiode detection is not really sensitive to the beam (I would need to spread detection at higher range). I tried to use photoresistor, but it was slow discharging making bits in graph unreadable.

How can I increasy sensitivity of the photodiode (and possibly reduce effect of daylight)?

  • currently using arduino circuit with PP75 photodiode and 10 Mohm resistor (there was no detection when using lower resistors..)

Maybe I have badly connected circuit? Or do I have to use some MOSFET? (but I am not sure how to use it properly...) thank you for advice. Photos shown bellow

arduino circuit resulting graph - analog read


enter image description here

here is my previous result of using circuit with photoresistor. The only problem with this was that the values was dropping slowly, making the output unreadable at higher speed. I thought a photodiode would fix this, but the responsivity is not hight enough. How can I improve my circuit with photodiode to get a simillar result as if using photoresitor except I would get these values changed quicker as on img2 ?

The deviations at bottom of the graph is a lamp switching on and off so its good because it doesnt affect the laser blinks.

  • \$\begingroup\$ What is your second image a picture of? \$\endgroup\$ – The Photon Mar 1 '15 at 17:41
  • \$\begingroup\$ it is the resulting analog read values shown in processing graph. it reads via serial port. I would need these values to cause bigger jumps to be able to read the recieved bits(data) more easily and to somehow filter the possible ambient light \$\endgroup\$ – Hokyjack Mar 1 '15 at 17:47
  • \$\begingroup\$ If you operate it in a dark room do you get a better result? \$\endgroup\$ – The Photon Mar 1 '15 at 17:54
  • \$\begingroup\$ thank you for your answer, I have updated my question. Take a look please \$\endgroup\$ – Hokyjack Mar 1 '15 at 18:12
  • \$\begingroup\$ How about modulating the laser light? \$\endgroup\$ – Golaž Mar 1 '15 at 18:31

How can I increasy sensitivity of the photodiode

Sensitivity is usually not really a function of the photodiode but of the receiver circuit after the photodiode. One effect of the photodiode itself is that using a smaller photodiode will reduce its capacitance which might allow you to use a more sensitive receiver circuit.

Note: Sensitivity means the smallest signal an optical receiver can detect. Responsivity is photodiode characteristic giving the ratio between the optical input power and electrical output current.

If you meant to ask about responsivity, for a photodiode, it's typically limited to 1 electron produced per photon received, so there is a maximum limit and you'll find many photodiodes approach this limit very closely. If you really need higher responsivity, you can consider using an avalanche photodiode but this requires a high-voltage driver circuit which is much more complex than what you have now.

(and possibly reduce effect of daylight)?

You can add an optical filter in front of the photodiode to pass through your laser wavelength and block other wavelengths.

Another typical trick is to modulate the laser at some frequency (often 40 kHz) and then add an electronic filter after the photodiode to specifically detect those signals. Off the shelf "IR" transmitters and receivers (like for the remote control of your TV) typically include the 40 kHz modulation and demodulation circuits.


The output current of a photodiode is very low. This is evident by the small signal seen even with a high value resistor. To use the signal more effectively you will need to amplify it. Here is an older question/answer StackExchange link on using a photodiode with a modulated light source.

Poor man's IR obstacle sensor make sense(improve) from signal under daylight

  • \$\begingroup\$ This looks like the same problem I have. However I am kinda noob with electronics, and have absolutely no idea how the amplifiers work and what exact op-amp should I be using in my case :/ \$\endgroup\$ – Hokyjack Mar 1 '15 at 18:28
  • 1
    \$\begingroup\$ @Hokyjack If you're going to use this circuit, you should also use a capacitor at R1 to GND to prevent the amplification of DC bias. \$\endgroup\$ – Golaž Mar 1 '15 at 18:35
  • 1
    \$\begingroup\$ @Golaž, Yes, that would help too, (that is "in series with R1"). Placed in series with R1 the AC gain is set by (R2/R1)+1, and the DC gain would only be 1. If placed in parallel with R1 the AC gain goes very high and the output may become saturated square waves, which may or may not be desirable. \$\endgroup\$ – Nedd Mar 2 '15 at 10:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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