I'm building a chronometer for high speed projectile speed measurement. Currently i'm in the process of designing the projectile detection gate. It needs to be able to detect obstructions in light for a duration of just under 1 μs.

Circuit design

The design is supposed to work as follows:

  • The reverse biased photodiode will be lit by a stable light source (battery powered led)
  • If the path of light is blocked from the light source the voltage on MP1 will rapidly fall.
  • The voltage on MP2 is slightly negative biased to ensure it is below MP1 under normal conditions
  • Since MP2 has a RC circuit it's voltage will change slower than MP1
  • If the voltage on MP1 gets lower rapidly the gate will output 1.

So far so good, it seems to work with simple tests of breaking the path of light.

The problem i currently run into is noise, for some reason the signal at MP1 (measurement point 1) is very noisy, it seems irregular (for as far as my equipment can tell) and it measures over 20mV peak to peak, which renders the sensor unusable.

The following is measured with an ADC of an arduino (atmega328p) @ 200Hz +/- 1mv per unit.

Blue line is MP1, Red line MP2 Blue line is MP1, Red line is MP2, Output is not drawn cause it will offset the scale too much and is jumping up and down like crazy as you can imagine.

The gradual fluctuations are caused by changes in light (probably by my hand) and are intended. However the irregularity in the blue line is causing the problem. As can be seen the noise is higher than 20mv and also higher than the offset voltage and object detection limits. This causes the output to constantly bounce up and down.

  • Is this amount of noise normal for an Photodiode (SFH213)? and thus should i just deal with it?
  • Is there anything obvious that i'm missing that could cause this noise?
  • Could i filter the noise in a way that would still enable me to see dips in the light of slightly under 1 μs?
  • \$\begingroup\$ Look up, then implement, a photodiode amplifier. \$\endgroup\$ Sep 28, 2018 at 11:27
  • \$\begingroup\$ @ScottSeidman: I've looked at several implementations of Photodiode amplifiers, including trans-impedance amplifiers and more. However my goal is not to amplify, my goal is to compare over a biased offset. This seems possible, as my design is also derived from other working designs. However the chips i had lying around required some alternations with respect to input voltage limits on the LM393. Amplifying and then comparing would introduce an extra delay and broaden the minimal pulsewith. \$\endgroup\$ Sep 28, 2018 at 13:46
  • \$\begingroup\$ "The resistance of R3 is wrongly stated in the diagram, in reality it is 300K." So fix it! How is this not obvious!? \$\endgroup\$ Sep 28, 2018 at 14:10
  • \$\begingroup\$ @OlinLathrop, i do not understand your comment.When i did the sketch of the diagram i forgot to put the ohm value in for R3, the default is 100 ohm. Hence the image reads the wrong value and hence i added the correction underneath the image. What do you want me to fix? the schematic itself is no longer available to me for editing. \$\endgroup\$ Sep 28, 2018 at 14:16
  • \$\begingroup\$ Right, so change the diagram. As you said, you made it, so you can unmake it or change it. \$\endgroup\$ Sep 28, 2018 at 14:18

5 Answers 5


First, use a proper transimpedance amplifier immediately after the output of the diode. Second, make sure the emitter is as strong as it can be.

You do want to use the photodiode in reverse leakage mode, but you want to hold its voltage constant. Converting the current signal to a voltage signal right at the diode is a bad idea.

Trying to modify this circuit is pointless. Start with a real photodiode detector circuit, then see what you have.

  • \$\begingroup\$ The use of the LC circuit on the - input of the comparator is to cancel out changes of ambient light. As you can see from the output this works as intended. The only problem i'm having is with the white noise on the MP1. This also occurs when the sensor is strongly lit by a battery powered led. The graph shown is drawn when the sensor was receiving ambient light (natural light in the shade). On dark it goes to ~2mv. \$\endgroup\$ Sep 28, 2018 at 14:34
  • \$\begingroup\$ Sorry, Olin, but this is (in principle) a perfectly good approach. With mV variations on the load resistor, the bias voltage on the PD is effectively constant. Of course, I would never expect a 393 to reliably work with a few mV difference between inputs. \$\endgroup\$ Sep 28, 2018 at 15:44
  • 1
    \$\begingroup\$ @What: The output of the photodiode is essentially a current, not a voltage. The current variation is also quite small. That means to turn the current into a voltage with just a resistor requires such a high resistance that the result is slow, and high impedance so can pick up noise easily. There is good reason that most circuits use a transimpedance amp immediately following a photodiode in reverse bias mode. \$\endgroup\$ Sep 28, 2018 at 16:21
  • \$\begingroup\$ See my answer. "Most circuits" don't have the luxury of large(ish) currents, and in principle this one does. Check out high-speed detectors from places like Thorlabs. With a small-area PD and a 50 ohm load you can get GHz response. Takes some signal power, though. \$\endgroup\$ Sep 28, 2018 at 16:29
  • 1
    \$\begingroup\$ Actually, I guess I'm taking an "xy question" approach. If the source illumination is fixed, then yes, a TIA is indicated. But if that is not the case, and the OP can get more light, then I suggest that his circuit is quite capable of working satisfactorily, and will be considerably simpler. Depends (as xy questions do) on what parameters are fixed. \$\endgroup\$ Sep 28, 2018 at 16:32

I'll take a guess here - you need to monitor the output as well. I suspect your output is randomly triggering and the transient feeding back to the input. You don't see the effect on the - input due to the low-pass filtering of C1.

As Olin has stated, you desperately need more light. Get yourself a (for instance) 3W LED on eBay - they are cheap.

Do the math, and you'll see that you're only getting about 1/2 microamp from your PD.

Now, about circuit selection. Start with your simple circuit. What is its intrinsic response speed? Let's say you have 20 pF equivalent across the resistor. Then, since the PD is acting as a current source and has (effectively) infinite impedance, the response at the amp will be a single-pole low-pass filter with a time constant RC. In this case, (20 x 10^-12) x (36 x 10^3) gives .72 x 10^-6, or about 0.7 usec. This is a decent (but not great) response if you're looking for usec accuracy. Thing is, your signal is very low, and your comparator is not really up to the task. Note that a 393 has an input offset voltage of as much as +/- 9 mV and is looking at a 4 mV difference.

So, how can you get more signal? Well, in this case you might try increasing R1/R2. Problem is, when you do that you increase the input time constant. Increasing by a factor of 10 will give you 200 mV with a 40 mV input separation (yay!) with a time constant of 7 usec (boo!). What to do?

The classic solution is the TIA. Here you can get much better response time for the same signal level. In this case, though, dealing with changes in ambient level can be a problem. As long as ambient changes slowly, and is comparable to the LED level, you can do OK.

An issue often overlooked when considering a TIA is that, when using the PD in photoconductive mode, you need a second, opposite polarity bias voltage, while the direct circuit only requires a single supply. Well, OK, you can make a little DC-DC converter to give you a - supply, but I don't recommend it in view of the noise issues it will introduce. Maybe when you have more experience.

But notice that the complexity of the TIA vs the direct detection approach hinges on the assumption that the PD current is low. That is true in this case, but does it have to be? With more current you can use a smaller load resistor and get faster response. Like I say, you can get high power 3W IR LEDs on eBay for little money. Use one of those puppies and you'll get a much higher PD current and higher input voltage (with greater voltage differential in the resting state). Adding a cheap IR filter in front of the PD is ALWAYS a good idea, too. Granted, a much greater LED drive current is needed, and this will affect your battery selection, but that's a tradeoff you'll need to make.

As I started off saying, I suspect that, with the resting voltage difference so much less than the guaranteed input offset, the comparator is switching randomly, and the transients are feeding back into the input and showing up. Just out of curiosity, do you have a decoupling capacitor on the comparator? Like, 0.1 uF ceramic placed as close as humanly possible to the power/ground pins? Do you have a ground plane? Both of those may well be an issue.

TL:DR - Get a beefier LED. And put an IR filter on the photodiode. And pay attention to your construction techniques.

  • \$\begingroup\$ First of all thanks for your long reply and interesting read! The graph was taken in the shadow in front of a window, to rule out external noise of artificial light. When using a normal LED in front of the PD at a distance of 20cm it produces around 40mA with a few that number rises. I can with ease get the circuit to drive over the maximum input voltage of the LM393, do i do not see how more light is going to help. Also i do not understand your remark on transient feedback as there is no feedback loop in the circuit. \$\endgroup\$ Sep 28, 2018 at 18:12
  • \$\begingroup\$ With 40mA i of course mean 40uA btw. (i'm not using a solar panel as PD ;-) ) \$\endgroup\$ Sep 28, 2018 at 19:08

Thanks all for the comments and answers, all in all they helped a lot. The mystery of the noise is solved. This evening i powered the system on again and got a blue line displaying a waveform in the 50Hz range which i could easily track back to the Led lamps lighting the room. I turned them off and got a nice line on the zero (dark and no artificial lighting).

When i introduced an LED the levels rose an a tiny fluctuation could be seen on the blue and read line as seen in this graph:

enter image description here

A minuscule excitation of the gate (rushing my finger past the diode) gave me the following graph:

enter image description here

The initial offset voltage might need some tweaking, as i understood from @WhatRoughBeast the LM393 needs an input difference of 9mV to produce a stable output. This is manageble.

So the question remains what caused the noise: To answer that i had to think back to the situation i was in. I sat in my room near the window. No artificial light but plain daylight. There was no direct sunlight in the room. However there is a tree next to the window and the sun was shining on it's leaves shimmering in the sunlight... I suppose this has been the cause of my distortions, the frequency of all the leaves on the tree moving in the wind and changing the light in my room. Wow that is a sensitive sensor!

So to answer the questions i asked in my post: 1). No those are not normal noise levels. 2). Maybe a tree ;-) 3). The circuit is fine.

Special thanks to @WhatRoughBeast and @PDuarte for your helpful answers and remarks, even if though the problems solved themselves i learned a bit from those comments and the long read of @WhatRoughBeast (thanks for the great effort and your willingness to teach a fellow technician)!

  • \$\begingroup\$ While terse, I believe my original comment (which I turned into a full answer which I deleted even before you commented) was not impolite, unfriendly, or (my belief) wrong, as I feel you would get a more robust behavior with a proper amplifier. As to where your noise comes from, it's probably not noise, but fluorescent flicker above what's known as the perceptual flicker fusion frequency -- i.e., it's real. In fact, as your dig at me does not entail an answer, I'll ask you to remove the reference to me. \$\endgroup\$ Sep 28, 2018 at 20:06
  • \$\begingroup\$ Dear @ScottSeidman, as i explained in the answer there was no artificial light during the measurement with the "noise". The "noise" was caused by changes in light intensity caused by moving leaves on a tree. No fluorescent light sources involved. I do not dig at you, point is i did do my research on the best circuit for my requirements. I changed the circuit to my needs. If somebody new to photo sensors asks a question about noise it is not helpful to answer he should research first based on the fact that his circuit seems unfamiliar to your eyes. \$\endgroup\$ Sep 28, 2018 at 20:21
  • \$\begingroup\$ Fine. Leave your criticism in a comment, where it belongs. It does not belong in an answer. \$\endgroup\$ Sep 28, 2018 at 20:28
  • 1
    \$\begingroup\$ I agree on that \$\endgroup\$ Sep 28, 2018 at 20:30
  • \$\begingroup\$ Thank you. FWIW, non responsiveness is why I deleted the answer before you even commented, but I still feel the comment was apt. \$\endgroup\$ Sep 28, 2018 at 21:04

Just in case someone stumbles across this in the future, a laser diode harvested from an old laser pointer can make a cheap high-intensity visible light source for a photodetector application.


Maybe the noise comes from your power supply. I certainly wouldn't trust any small signal such as this, when biased directly from the supply.

Either use a zener diode or precision reference (like the TL431) to obtain a stable potential slightly less than 4.5V (say, 3.9V), and use that to derive all biasing potentials:


simulate this circuit – Schematic created using CircuitLab


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.