I’m planning on buying this photodiode PDB-C156 to read laser signal (free-space). The goal is just to convert to binary signal readings. Has anyone any experience with this or better suggestions?
Thank you.

Welcome to the Technical Forum. I have sent this request out to others to see if there is a way to do this.

Hi barbbq73,

It is capable of detecting laser light within its spectral range of 400 to 1100nm. It may or may not be a good choice depending on the specifics of your system.

Questions to help narrow down options:

  • What wavelength is your laser?
  • What is your modulating frequency and/or data rate?
  • What is your laser output power and distance to sensor?
  • What binary output voltages do you need?
  • In what environment is this to operate (indoor, outdoor, other light sources present)?
  • What power sources are available? (in particular, can you provide multiple supply rails, or just a single supply, and at what voltage(s)?)
  • How tolerant is your system to noise?
  • What experience do you have making circuit boards?

Hello barbbq73,

This was fun! This video was made to help answer your question. I used a PDB-V107 sensor as it was immediately available. The PDB-C156 sensor you mentioned should provide similar results as the sensor’s have similar specification. This circuit is robust as that laser provides such a brilliant signal relative to background light.

Please let us know how you modified the circuit to fit your needs. Pictures are especially welcome.

Best Wishes,



Great video Aaron! I would be curious to see how this circuit performs outside on a sunny day. Would ambient sunlight saturate the sensor, or would it still give a relatively digital output like shown in your video?

Good point, David.

Yes, it does turn on when pointed to full direct sunlight. However, as stated in the datasheet:

Care must be taken to avoid exposure to high ambient
light levels, particularly from tungsten sources or

For reference, I was using a laser diode similar to this at a distance of 10 feet.

Best Wishes,


P.S. Please let me know if you have any ideas for future videos.


Thank you for following up with me. In order to answer your questions, a quick summary on what I’m looking to put together,

A Light Communication circuit with a laser (Quarton VLM-650-01 LPA) and a receiver (KY-008 & detector pair, found this on amazon, just using the receiver). I’m using ESP32-C3-Devkit-M1 microcontroller on each end. I’m using this build to alert if the garage door is opened. I’m using the laser beam pulse to initiate various inquiries to the receiver. Also using RF communication for hand-shake between mcu’s. I’m just implementing what I’m learning in C/C++ programing. I am new to the electronic world. Given that, I had to do some searching to answer your questions.

· What wavelength is your laser? __Ans: 650 nm (Quarton data sheet).

· What is your modulating frequency and/or data rate? __Ans: Right now I have it setup in microseconds range (I don’t know how to test how fast the MCU can handle the communication).

· What is your laser output power and distance to sensor? __Ans: Less than 3mW (Quarton data sheet); distance about +/-30-feet.

· What binary output voltages do you need? __Ans: I’m not sure about this. As long as the receiver can read the changes in voltage from 30-ft, given the output power ß is this what we’re looking for?

· In what environment is this to operate (indoor, outdoor, other light sources present)? __Ans: At this moment, it will be in the garage. The receiver will be above the garage opening, will face the living space’s wall. The laser will be on the living space side, and pointing at the garage door. When the garage door rolls up, it will block the free-space b/w the laser and the receiver. So, not much ambient light but the ceiling light may affect the receiver. Later, I’m looking to bring this setup outdoor for other reason.

· What power sources are available? (in particular, can you provide multiple supply rails, or just a single supply, and at what voltage(s)?) __Ans: Power source will be through the microcontrollers so +/-5v maximum. I’m too new at this so I don’t want to tryout higher voltage setup.

· How tolerant is your system to noise? __Ans: I do not have an in-depth understanding about system noise, and given my setup, I wouldn’t think it’d affect performance that much ß feel free to correct me :blush:

· What experience do you have making circuit boards? __Ans: I don’t have much experience, but I love to learn as I go along. (LEDs need resistor :blush:)

The reason for my inquiry was to switch out the receiver. Let me know if anything else that you think would benefit my setup.

Again, thank you for your questions, as these have opened up several areas I’m looking into for more understanding.

Hi APDahlen,

Thank you for your response, but response with a video!!? Awesome! Your channel is a great add to the reference library for a newbie like me.

I will be using the receiver as part of a laser free-space communication setup (an overkill garage door sensor). The laser will pulse to communicate with the receiver for various inquiries. The receiver will interpret the pulses to binary (for function call). Callbacks also uses RF communication through an ESP32-C3DevKit-M1 microcontroller at each end.

Please let me know if anything else that you think would be fun to add to the setup :blush:.

I’m just trying to implement what I’m learning in c/c++ programing.

I will post some photos once setup with the new receiver.

Again, thank you for your advise.


Hello @APDahlen ,

That was smart, well done, and usable. I am glad you made this video. I was unaware of how light and the light beam would ever be interfaced w/ digital electronics. Seriously.

Now, how fast can a digital signal be read to understand the interruption. I may have to get on this idea but do no quote me. In any “light,” thank you again and keep up and the “keep up.”

I was using some automotive grade discrete parts and chips to handle motor movement.

This type of instance would be a good go-to for handling gates and other mechanical movements…


1 Like

Hi barbbq73,

OK, so the first thing I would say is that you’ll probably want to use a different laser module because you are trying to send data, not just a fixed beam to be blocked or passed by a physical barrier. That module is not designed to be switched on and off at anything more frequent a rate than large fractions of a second or slower.

You’ll want one with a third lead (power, ground, signal leads). With this configuration, power is supplied continuously (as long as you want the system enabled) and the data goes on the signal pin, which is designed to turn the actual laser diode on and off at a faster frequency. An example part would be the VLM-635-31 LPA, which can transmit a modulated signal up to a 10kHz rate. From its datasheet, here’s the schematic for powering and modulating that module:


Note that “TTL” signals (TTL = transistor - transistor logic) are defined as circuitry running on a 5V supply in which input levels must be at least 2V to be considered “HIGH” (a logic “1”) and no more than 0.8V to be considered “LOW” (a logic “0”). From page 44 of the datasheet of the ESP32-C3-DEVKITM-1, it is to be supplied with 3.3V, but its HIGH output pin voltage is specified to be at least 0.8 x Vdd (so >= 2.64V) and its LOW output pin voltage is specified to be no more than 0.1 x Vdd (so <= 0.33V).

Therefore, they should be compatible. It looks like your ESP32 board can be powered by 5V, either via the USB port or directly to pins 13 and 14 of the J1 header, and it has an on-board voltage regulator to power the chip with 3.3V, so you don’t need to supply both voltages to the system, just 5V.

As I mentioned, the VLM-635-31 LPA can be modulated up to 10kHz, which translates to a maximum of 1 bit per 100us – very slow by MCU standards, but much faster than could be accomplished with turning on and off the power of a 2-leaded laser module. To go faster than this, one would probably have to get into designing laser diode driver circuits, which is not a trivial endeavor.

Regarding the environment, as long as this is indoors and that you don’t have lighting shining directly on it, you probably won’t have much of an issue. However, if used outdoors, there’s a high likelihood of saturating the photodiode. You may be able to somewhat resolve this by putting a light shield around it so that it only takes light from the angle you expect to be transmitting the laser from. You might also need to adjust the gain of your detecting circuit. @APDahlen’s circuit might be a good starting point. It has quite a bit of gain, but if it amplifies the ambient light too much, you may need to reduce the gain. Indoors, the laser light should be significantly more intense than the other ambient light sources, so you might be able to get by with less gain and still be able to detect the laser signal. That might require some experimentation.

Thank you for your detailed feedback. I will tryout the recommended laser.

In regards to “gain”, would this mean reading the current gain from the Darlington Pair setup as similar to APDahlen demonstration? Is the idea is to amplify the current/voltage reading for the setup outdoor? By this, the changes in voltages would be more noticeable, is this the correct understanding? Please advise.
Thank you.

Hi barbbq73,

Sorry, I may not have been very clear there. The higher gain is more likely to work in the indoor application.

Indoors, the ambient light is likely to be low enough that it won’t significantly turn on the photodiode, so having a high-gain darlington-pair amplifier should work fine (amplifying the very low ambient indoor light probably won’t produce a high output from the amplifier). However, in an outdoor scenario, ambient light can illuminate at a much higher level, and it could conceivably be strong enough to saturate (go beyond the linear gain region of) the amplifier even when the laser is not illuminating the sensor. This may not be the case, and it may work just fine outdoors without modification – I am only saying that it might be an issue.

If outdoor light saturates the amplifier output, then one would need to find a way to mitigate this. A solution may be as simple as shading the sensor from direct sunlight. If this isn’t sufficient, then the gain may need to be reduced so that the ambient light does not fully saturate the amplifier output. Assuming that the laser light response is still greater than the ambient light, as the gain is reduced, at some point, there will be a notable difference in the output between ambient light illumination and laser light illumination so you can differentiate between the two.

Thank you for your quick response and taking the time to write a detailed explanation. I think I get it (maybe). I know by changing the resistor value on the ground end of an LDR gives lower readings. But the LDR (20 mm diameter) has a very low gain limit, and slow responsivity to laser input. I’ll have to test out the same concept with the photodiode once set up.

It should perhaps be noted that object detection and data transmission via optical means are common applications for which integrated solutions exist. On some fronts (think TV remotes, etc) they’re so common that all but the lowest-cost suppliers have exited the market, making component availability in smaller quantities ironically somewhat difficult.

Building transmitter/receiver circuits from discrete components as an educational exercise is all well and good, but from a make-something-that-works-well standpoint one would likely be better off taking advantage of these other solutions.

The key advantage they offer is working around the ambient light problem using modulation techniques; by looking for a signal pulsing at a specific frequency rather than simply measuring received light levels, it’s possible to detect signals that are substantially weaker than that produced by ambient interference. Among other things, this can allow a person to get by using a cheap LED as a source, rather than a much more costly laser module.

The TSSP93056 is an example of a part useful for object detection applications. For data, parts like the TFBS4711-TR3 offer a solution compliant with IrDA standards, and parts like the MCP2122T-E/SN do likewise, while offering greater flexibility by allowing the user to choose their own emitter & detector devices.