Go Down

Topic: Silicon photodiode light sensing project. (Read 1 time) previous topic - next topic


Hi everyone,

I am currently working on a project which utilises a silicon photodiode -

for reference it is the BPW21R and the link to the data sheet is this:


The photodiode is being used to sense the intensity of light - I am dealing with high intensities - light levels which you cant really look at without looking away.

Im using it within a transimpedence circuit which essentially gets the current and converts it to a voltage. The voltage is then amplified. I need to do this as the current is so small.

A simple transimpedance amplifier circuit has been attached - the difference in my circuit is that the photodiode is grounded and the values of components varied and i have various capacitors to reduce noise. Im using the LM324N to amplify the signal. Im aware this isnt ideal but its all ive got for the moment.

My Problem:

When i shine an intense light onto the photodiode, when i read the analog pin, the max value seems to be around 700 out of a possible 1024. This varies with my feedback resistor which controls gain.

because the board only takes 0 - 5V - this is all i can drive the op amp with and i get a feeling that im reaching the rails as there simply isnt enough voltage.

Is there a way i can extend my range from 0 to 1024? I.e. make use of the full range?

This would be a more useful measurement as it would be more spread out.

The code im using to get this measurment is:

Code: [Select]

void setup() {

void loop(){

int sensorValue = analogRead(A0);

I am unsure what to do because the resistor controls my gain and whilst i can reduce it, it definitely wont use the full range.

Any help would be great.


Is there anyway i could increase the voltage i can get from the board - rather than just from 0  to +5 using USB and the pins?


That op amp was not designed to be powered by a 0-5V supply and it is definitely not rail-to-rail. Either use a split power supply or use an op amp designed for rail-to-rail operation on a single supply.

Since the diagram suggests that you are using -18 V to bias the photodiode, a power supply providing +/- 15V would serve both purposes.


Yea thanks, i realised i need a rail-to-rail op amp to get use of the maximum range. WIll purchase one.


Have you managed to make it work? I am trying also to read a BPW21R photodiode. Can you please post a schematic here of how you did it?

Go Up