An Inexpensive Photometer and Colorimeter




Introduction: An Inexpensive Photometer and Colorimeter

About: Scientist working in in-vitro diagnostics industry. Playing with all types of sensor as a spare time hobby. Aiming for simple and inexpensive tools and projects for STEM, with a bit of science and a bit of sil…

Version 08-May-2016

What is this instructable about?

The aim of this project was to construct a simple and inexpensive device that allows the measurement of the color composition of a solution, i.e. a colorimeter, and/or its optical density, i.e. a photometer.

It is intended be an educational tool for science classes, but it might be also be used by hobby scientists, citizen science groups, and probably for a multitude of other purposes.

To read the data from the sensors, the unit it may be either be connected directly to a Raspberry Pi or, via an Arduino, to a PC.

The estimated total cost for all parts required are in the range of 30 € or US$ (w/o shipping costs).
As you can use a Raspberry Pi Zero or Arduino Nano, the additional costs can also be very limited.

The layout of the housing allows to build both photometer and colorimeter from the same parts, just depending on the sensor breakouts and LEDs you will use.

So what can you do with the device?

A photometer allows to measure the amount of light reaching a sensor. Given you are using a constant light source, and you place a translucent object between light source and sensor, this allows you to calculate the amount of light that gets lost on this way. This defines the optical density of the object. The "lost" light could either be absorbed by a dye, or scattered by particles, or a combination of both. So a photometer allows to quantify the optical density of a clear solution, e.g. some ink, or a suspension, like milk or yeast particles in beer, wenn filled into a standard photometer cuvette.

A colorimeter allows you to measure the color composition of an object, here of a solution. The sensor used here for the colorimetric device splits the visual spectrum into three channels, red, green and blue (RGB), hereby simulating the way our eyes see colors. For most colors this allows to describe our impression of a color by a combination of three numbers describing the intensity in the three RGB channels, typically defined in 256 steps. So black is 0-0-0, white is 256-256-256, pure red 256-0-0 and so on. Pure yellow would be 256-256-0, pure cyan 0-256-256. But the sensor used here is very precise and allows to discriminate over 67,000 steps for each color channel.

Photometers are often used to measure chemical reactions, like changes in the acidity (pH) of a solution, by measurement of the intensity of an indicator dye. For optimal detection you may want to measure only the absorption of light close to the absorption maximum of the dye. Therefore you will prefer to use a monochromatic light source instead of white light. LEDs come in a wide variety of colors, give nearly monochromatic and intensive light with a very stable intensity pattern and are very energy effective. The sensor used for the photometric layout allows you to measure light intensity over a very broad spectrum, from UV to IR, with a very high precision.

A variety of indicator dyes are changing their color, e.g. from yellow to blue. Here a colorimetric measurement can allow to demonstrate and quantify this transition process, as the colorimeter described here could also be defined as a three-channel photometer.

So you may for example measure the pH, oxygen and CO2 concentrations in your pool or aquarium, or nitrate and lead concentrations in your drinking water. Or just analyse the precise color of your favorite ink, so you may paint your flat in the same color.

As the costs per unit are extremely low compared to any commercial devices, it is a nice tool for science classes and hobbyists.

Step 1: Basic Layout of the Device; Required Parts

The device consists of three core elements:

- the housing and lid are made by assembly of pieces that were laser-cut from a single sheet of 3 mm acrylic (see pictures next step). They are defined by a single SVG-file. I am using the laser cutting service of Formulor (Berlin/Germany, 13€ per plate plus shipping), but using the same SVG-file, the parts could also be ordered at Ponoko (US) or RazorLAB(UK) at a similar price. You may choose from a wide variety of colors, but to minimize color artefacts I would recommend black, grey or white.You can find the SVG-file defining the latest tested version at a later step of this instructible.

- a sensor breakout:
* For the colorimeter, the TCS34725 RGBW-sensor breakout from Adafruit (< 8 US$/€, is used.
* For the photometer I use the TSL2591 breakout from Adafruit (< 7 US$/€, .
I ordered both breakouts at Flikto, Germany.

- a light source:
* For the colorimeter I am using a 5 mm naturally white LED with a narrow emission angle (Nichia NSPW500DS, about 2,20 € at Conrad, Germany). Please be aware that a "white" LED does not give a homogenous emission spectrum, as sun light, but a sharp blue peak and a bell-shaped emission spectrum with a maximum in the yellow-green range (see image). "Naturally white" LEDs emit similar amounts of light in the red, green and blue regions.
* For the photometer, a 5 mm LED with a color optimal for the specific analyte shall be used.
E.g. for a dark red analyte, you may use a green LED, a yellow LED for a blue dye.
You can find an overview of some commercially available LEDs with different colors at a later step.

The 5 mm LEDs can be powered either by a two 1.5 V batteries or using the 3.3 V output of the Raspberry Pi. Most yellow, orange and red LEDs will need a series resistor (e.g. 60 Ohm) to reduce the voltage to 2.1 V.

In addition to the above, an assortment of screws, nuts and washers (2.5 M and 3 M), silicon rubber feet and some cables are required. I also would recommend to use a breadboard to connect RPi and device.

A more detailed list is found at a later step.

Step 2: Assembly of the Device

The parts for the housing are constructed in a way that they fix together precisely, with grooves and tongues, without gluing. Only the assembly of the lid requires a bit of glue.

The pictures shown here may not represent the latest version of the device, as its layout still is subject of ongoing optimization.

At first remove the laser cut pieces from the acrylic plate and remove the protection foils from both sides of all pieces.Then try to stick the pieces together, to ensure that all fits well. First connect the central elements with the back and front walls, then add the right and left side pieces. Now try to place this on the base plate and to stick the tongues into the holes of the base plate.They should fit perfectly, but there can be minimal differences in material thickness. So in case you may need to break the edges a bit with a file or sandpaper, just until the pieces fit. Now place the side walls of the cuvette chamber and make sure they fit as well. Now disassemble the pieces again.

As a next step assemble the sensor unit. Solder the header to the breakout, according to the instructions found at Adafruit ("Learn" on the product specific pages). Now fix the cables to the ports. Make sure to write down which cable is connected to which port (Gnd, Vin, SCL, SDA; LED).
Alternatively you may solder the cables directly to the soldering ports.

At next fix the breakout to the sensor holding plate using two 2.5M screws, nuts and washers. Depending on the sensor you are using, you may have to turn the sensor holding plate. Adjust in a way that the sensor chip is placed exactly behind the rectangular hole, then tighten the screws.

Now stick two nylon M3 screws through the holes in the inner wall element and at the distance piece. Then stick the sensor holding plate onto the screws, allign the placement of the rectangular holes and fix the position with two other nuts.

Now assemble the LED unit. Stick two Nylon M3 screws through the holes of the second inner wall element. Stack the three LED holder elements on the screws, then place the LED into the resulting central hole. Now add the LED fixing piece and fix the stack with two M3 nuts. Make sure that the LED is properly alligned before you tighten the nuts. Connect the cables to the LED. The longer wire is "plus", the shorter "ground". To check functionality and optimal allignment, connect the LED with your power source, in case adjust the allignment.

Now assemble the "photometer box" as you have done before. First run the cables through the holes in the back plate.Then stick the tongues of the two plates with sensor and LED into the holes of the back plate, add the front and side plates and place the box on the base plate.
I would recommend to place four small silicon rubber feet on the botton of the base plate.

!!! Do not glue the box, as you may not be able to disassemble it any more !!!
I recommend to fix the box it with a some adhesive tape, if required.The most recent, but yet-to-be-build layout will simplify assembly and fixation of the structure even further.

Finally assemble the lid. Glue the two pieces defining the lower edge to the lid plate. Then glue the handle to the center of the lid plate.To reduce reflection, you may add a piece of self-adhesive felt to the inner side of the lid.

Connect the cables to the corresponding ports of your breadboard, PI or Arduino and check for functionality of the sensor and LED.

Step 3: Setting Up the Raspberry Pi; Required Software

As both sensors are communicating via I2C, you will have to activate this on your Raspberry. In addition you may need to install the appropriate drivers/kernel support. As you can find very good and detailed instructions on this at the Adafruit website (Adafruit: GPIO/I2C setup), I will not describe this here in any detail.

If you succesfully have implemented I2C on the Pi, connect the sensor with Ground, Vin (I use 3.3V) SDA and SCL. In the case of the RGB sensor you also need to turn off the build-in LED by connecting the LED line with Ground. Check if the sensor can be found by entering "sudo i2cdetect -y 1" at the shell.
Unfortunatelly both sensors are using the same I2C adress, 0x29, so you can't use them in paralell.

Now you need to install some software to perform your measurements. Luckily Python programs to read the data from the sensors were already available, so I only had to modify the TCS34725 software provided by Adafruit ( and the TSL2591 software by "MaxlKlaxl" ( ) a bit to adjust them for my purposes. I like to thank both of them for their brilliant work.

In the accompanying software package you will find examples of programs that will allow to perform measurement series and kinetics with both sensors. As I am rather new to Phyton programing, the programs require some optimization, I appreciate any help. Depending on your light source and your specific application, you may need to change the data sampling time and/or sensor gain settings of the sensors.

White, UV, blue and green LEDs run at about 3.1 V, so you may power them directly from the Pis' 3.3V output. For yellow, orange and red LEDs you need a series resistor between LED and power, otherwise they will be distoyed. If you do not want to run the LEDs permanently, you may connect them to a GPOI and switch them on and off by software.

So far I have not performed any experiments with the Arduino or Trinket, but Adafruit provides libraries and scetches for both sensors.

Step 4: Performing Measurements

The device is built to measure aqueous solutions or suspensions by placing a standard photometer cuvette between LED and sensor. I am using disposable cuvettes made from polystyrene (PS) or acrylic, and both full volume and semi-micro cuvettes work. You may get 100 such cuvettes for about 12- 20 €, depending on type and material, and you may use them several times.

So basically fill a sufficient volume of the solution/suspension into the cuvette, place it in the device watching for correct orientation, close the lid and start to measure. Given you are using a Raspberry Pi, you will have to start a Python program that allows you to perform the type of measurement (single, multiple, kinetic) you like to. Some of my programs write the data to so called CSV (Comma separated values) files you may open with MS Excel or LibreOffice Calc, Word or Writer and several other programs. This simplifies subsequent data analysis and documentation.

I have also written a simple Pygame script to show the color defined by the measured RGB values on your computer screen, so you may compare the actual and the measured colors. For various reasons they might differ a bit.

Make sure that the dye concentrations are not too high. Be aware that e.g. a bright blue solution might already be pitch black under the light of a yellow or red LED.

Step 5: Example #1: Kinetics (colorimeter and Photometer)

So far I have performed only a limited set of measurements.

An example for a kinetic measurement is the slow evaporation of carbondioxide (CO2) from sparkling water placed in an open cuvette. For this purpose, a bit of bromothymol blue was added to normal water and a small volume of CO2-enriched, "sparkling" water was added until the color changed from blue to yellow. Now the kinetics measurement was started and measurements were taken every 20 minutes for several hours. The data was automatically written to a CSV file and later analysed using LibreOffice Calc.

So what is happening? By addition of carbon dioxide to water it gets acid. As the concentration of CO2 in air is much lower than in the water, it evaporates slowly from the water, which results in a rising pH. In an acid solution bromothymol blue is faintly yellow, while under basic conditions it is bright blue. Around pH 7.0, the pKa of the dye, the color of the solution is green, due to a mixture of yellow and blue forms of the dye.

Using the RGB sensor, it is possible to detect the decay of the yellow form in the blue channel and the increase of the blue form in the red channel, while the effect on the green channel is only moderate. As you can see in the chart, over time the absorption in the blue channel decreases (i.e. less yellow dye) and the absorption in the red channel increases (i.e. more blue dye). As expected, the color changes over time indicate an approximate first order decay kinetic, values asymptotic nearing maximum or minimum values

The same process has also been measured with the photometer. The sensor gives you two values: a full spectrum value (Full) and a value of a second incorporated sensor which measures only the infrared (IR) part of the spectrum. The values of the visible part of the spectrum (VIS) can be estimated by subtraction of IR from Full values. The dye used here was phenol red, which is yellow in acids, red under neutral and violet under basic conditions. Its pKa is also around 7.0. The light source used here was a green LED, so the increase in "redness" resulted in a diminished amount of green light reaching the sensor.

Step 6: Example #2: Dilution Curve (photometer)

The second example is a dilution curve of a red dye.

As shown in the image, a serial 1:2 dilution was set up, with an additional blank value. The dilutions were measured from the lowest to the highest concentration, using the photometric sensor (TSL2591) and a green LED (Nichia NSPG500DS) as the light source. The measured values were written to a CSV file and analysed using LibreOffice Calc.

The resulting lin-log graph (linear: absorption vs. logarithmic: concentration) gave the typical S-shaped curve seen in such measurements. At low concentrations there is a direct relationship between concentration of the dye and absorption of light, while at higher concentrations it is asymptotically approaching a maximum level (total absorption). Using the curve, the usable detection range can be estimated to cover about two logs (100x) of concentration, which is reasonable for a photometric device.

Step 7: Some Final Remarks

- To make the devices described here available to the public, we are planing to place a optimized, checked and proved layout file for the acrylic parts at Pokono, so you may download it there for a small licence fee. I would like to insert a few changes to the current layout, which may require a few weeks to be evaluated.

For all that want to start right now: A slightly modified version of the last evaluated one is available at Ponoko.
The licence fee for the layout shall be used for this project, as I would like to give a number of the devices for an evaluation to schools or other other educational institutions.

- But as collecting all the required parts from different sources could be a hurdle, we think about setting up a small project to offer DIY kits that would alredy contain all parts, except for the Raspberry Pi, plus some cuvettes and consumables, so you may built your own device within a few minutes and start immediately with your first experiments.

So you might see a kickstarter project on this soon, and if you are interested in such a kit, please check this site again in late May.

- The part that may require the largest improvements is the software. I would appreciate if some skilled programmers would check my Python scripts and improve them. I would like to place links to your improved scripts in here, for public access. Please be aware that the basic scripts are licenced by Adafruit under the MIT licence, so any derivate should be as well.

- In this instructable I have used a few graphs taken from Adafruit and the data sheets of the sensors.
But there are also images I have copied from the web, but have lost the information from which sites. I would like to apologize for this and thank the owners of the images.

- If you like this project, please have a look to my other instructable on a Raspberry Pi-based microscope (Raspberry-pi-microscope ). The project got stucked a bit in the last months, as I have a busy full time job and a family, but may see some new developments soon.

- If you have any hints, suggestions or corrections, please let me know.

Step 8: Materials Required; SVG File

Materials required:

Raspbery Pi or Arduino


Adafruit TSL2591 breakout (for photometer, product ID 1980)


Adafruit TCS34725 breakout (for colorimeter, product no 1334)

You may use other sensors or breakouts, but you may have to modify the position and size of the holes in the sensor holding plate.

The acrylic pieces for the housing:

The current layout was optimized to allow all parts to come from one 181x181x3 mm plate that can be ordered at Pokono/Formulor/RazorLab. You will find the required SVG file of the latest evaluated version above.The attached PDF file illustrates the layout.

If you use another laser cutting service and/or plate size, you may have to rearrange the pieces so they fit to this format. You may use Inkscape to modify the layout of the SVG-file.

To ensure a clean snap-together of the parts, the material thickness has to be 3.0 mm precisely. I would recommend not to use materials with surface modifications, as they may be a bit thicker.


5mm LEDs, the topic has been discussed in detail in another section. For colorimetric applications use a neutral white LED.

Screws, nut and washers:

- Four M3 x 20 mm screws and four M3 nuts. I am using nylon screws, but brass or steel would work as well.

- Two M2.5 x 10 screws, two M2.5 nuts and four plastic M2.5 washers to fix the breakout to the sensor holding plate. The washers act as distance pieces and have to be made of plastic or cardboard. Do not use metal washers, as they may come in contact with electronic parts of the sensor breakouts and cause shortcut and damage!


I am using jumper cables to connect breakouts and LEDs with the breadboard or the header of the Pi Zero. In the first case female/male in the second case female/female cables are required. They should be sufficiently long.

Silicon rubber feet:

I add four small self-adhesive pieces of silicon rubber as feet below the base plate. You may get them at the next hardware store or use something else.


- A few drops of glue to assemble the lid. Any kind of plastic glue or super glue should work.

- A bit of adhesive tape, to fix the housing. This allows you to stabilize it but to change sensors or LEDs later.

- Standard plastic photometer cuvettes.

Step 9: Additional Information: LEDs

Emmision maxima of some commercially available bright 5 mm LEDs with narrow emission angles. Please notice that this are only suggestions, as only a few of them have been experimentally validated with the device.

These LEDs are blindingly bright, to avoid to look directly into the light beam!

UV: Nichia NSPU510CS, 375 nm (3.3 V)

5004PCH02, 405 nm (3.5 V)

violet: YDG-504VC, 412 nm (3.5 V)

blue: Kingbright L-53MBC 455 nm (3.4 V)

Nichia NSPB500AS, 470 mn (3.2 V)

cyan: Nichia NEPE510JS, 495 nm (3.1 V)

green: Nichia NSPG500DS, 520 nm (3.2 V)

yellow: Yoldal YZ-Y5N15N, 590 nm (2.1 V)

orange: Avago HLMP-EH1A-Z10DD, 615 nm (2.1 V)

red: Kingbright L-7113SEC-H, 630 mn (2.1V)

Red, orange and yellow LEDs may require a 60 Ohm resistor to reduce the voltage from 3.3 to 2.1 V (@20 mA).
UV and violett LEDs are out of the range of the sensors, but might be used for fluorescence experiments.

Step 10: Software

Here you find my recent versions of the programs for the colorimeter.

TCS34725 RGB Bradspi is a modification of a script developed by Brad Berkland. All credits go to him, the ugly part is mine. (

My script is asking you for a name of the sample, then read the values and tries to translate them into RGB values. For optimal RGB calculation you need to enter to enter blank (water/buffer w/o dye) values measured previously into the code as reverence values. At the start and the end of the measurement it is asking you if you like to stop measuring, "Y" stops.

The other three Python script are based on a recently released script for the tcs34725 by Adafruit.
You need all three in combination. The script allows to perform slow kinetics. You must enter the name of the sample, the number of measurements and the time, in seconds, between measurements. Results are written, with a timestamp, to the shell and to a CSV file.

Any hints, improvements, corrections are welcome.

The scripts for the TSL2591 will be added later.

1 Person Made This Project!


  • Home and Garden Contest

    Home and Garden Contest
  • Origami Speed Challenge

    Origami Speed Challenge
  • Stick It Challenge

    Stick It Challenge



Tip 1 year ago

1) I was using the LED Nichia NSPW500DS 5mm White LED 15 degrees. I connected this to the 5 Volt supply for the Raspberry Pi, which appeared to work, but I found the WiFi and the HDMI would drop out occasionally (also the PI Model B with 8GByte memory was boxed with a 5Volt fan too!). So I found I needed to use a separate 5 volt power supply (since the LED draws 500 Milliamps).

2) Also I found the LED source was overloading the sensor board RGB detector.
I attenuated the beam with a coloured film to allow the beam to fall within a working range less than 255.

Dr H
Dr H

Reply 1 year ago

You should better either run the LED at a lower voltage or use another LED. It's just an estimation, but I would not go over 80% of the maximum signal to avoid saturation effects.


3 years ago


Like this design a lot. Unable to access the SVG files. Can you please upload them again? The cuvette we paln to use in 1cm by 1cm cross section


Question 3 years ago

Good morning,

I'm using the same luminosity detector from AdaFruit to perform an OD measure of a biological specimen, I was wondering if anyody had tips to properly convert the readings from the sensor into OD values.

Thank you very much, very nice and precise project by the way


4 years ago

Dear sir...
How can i get the absorbance value ?
Can you tell me the algorithm to get the absorbance value ?


4 years ago

I stumbled upon this instructable after making my own photometer and
am having a slight issue. I have a question if someone could answer

I am using a 520nm LED to measure the
transmittance/absorbance of a solution which has a DPD1 tablet crushed
in it (Chlorine). I am measuring the blank, then measuring the sample
and calculating the transmittance. Then using graphs I produced from an
old PalinTest 5000 manual I display the chlorine content.

works pretty well and I get exactly the same reading every time, but
the problem is, when I compare my photometer to a proper PalinTest
photometer, my transmittance is about 4% higher. (eg. If the PalinTest
photometer shows 60%T, mine would show 64%T), which is quite a

I understand that the LED I'm using has a
dominant wavelength of 520nm, but I assume it is also putting out light
above and below this. The PalinTest uses bandpass filters in it, which
are probably more accurate than my LED.

What would be the best way to get a more accurate reading of the transmittance?

Dr H
Dr H

Reply 4 years ago

Thanks for your interest.
As a mater of fact a more elaborate photometer with optical filters etc. could give more precise results. But what really may make difference here could be the following: even the simple Palin Pooltest 3 photometer uses a dual light source optic, in this case a 530 plus 575 nm system. A spectrum of the DPD dye (Würster compound) can be found on page 3 at As you can see the dye has a very broad absoption spectrum with a 500-560 nm "peak" and your 520 nm LED would even be closer to the 515 nm were the dye should be measured according to ISO7393/2 than the 530 nm used by the Hach or Palin devices. But the 575 nm used in the Palin device is close to an absorption minimum of the dye at about 590 nm. Thus measuring the 530/575nm ratio will improve the quality of the measurement and reduce artefacts due to light scatter or other effects. But, unfortunatelly, you may need e.g. a fiber optics system or an individual LED/sensor pair for each color to perform two color measurements.
The emission peaks of LEDs are typically quite narrow, if I remember right it is typically in the range of +/-20 nm, but you should find the specifics in the datasheet of the LED you are using. So for this dye the emission spectrum of your LED should be narrow enough and fancy filters may not make much of a difference here.
Another thing that may make a difference is just the layout of the optical system, as light source, the type of cuvette, background light ... . If you have the chance, you may compare your system and the Palin device side by side and generate a correction curve. But usually it is recommended to set up a standard curve specific for your own device, either by using a dilution series of a calibration reagent as permanganate or iodate or color standards, as offered by Palin.
Best regards


Reply 4 years ago

Thanks for the reply. After posting on here, I came across another website which talks about using 2 LEDs and obtaining a ratio from them.

A sea water pH meter that is accurate to 0.01pH...

So, does this sound like I'm on the right track...

As I have another LED in my system (570nm) for calculating alkalinity, I guess I should use the PalinTest 7100 I have access too, take samples on that and use the same samples on my device using both LEDs and work out the ratio from the readings. Then use Excel to create a scatter graph of the two, then get the equation of the line. I can then use the equation to match my readings to the PalinTest.

Little bit more work to do, but it's very interesting stuff :)


Reply 4 years ago

Hi portreathbeach - Interesting. Is the variance between your device and the Palin Test 7100 significant with the 4% correction? Two LEDs in the the absorption profile of the dye may help. I built the photometer modeled on the spec in the Bo Yang paper you cited above, and now working on a better assembly for housing a cuvette sample, 430nm and 575 nm leds, and TSL257 detector. I'd be interested in how you built the housing to get good repeatability of sample readings. Picture? regards,P


Reply 4 years ago

Hi. I haven't really got a housing yet, I'm still testing at the moment.

test setup is basically a piece of 1 inch diameter plastic pipe about 40mm high. It has holes drilled in one side for the 2 LEDs and one in
the opposite side for the TSL2561.

To measure, I currently take 5
samples of the blank with the LED on, and 5 samples with the LED off
(ambient). I order each of the 5 samples from big to small, remove the
top and bottom and average the middle 3. I then take the ambient reading
away from the reading I got with the LED on. I then do the same with
the sample.

It may look a bit crude at the moment, but it seems to work pretty well under normal indoor
ambient light, giving repeated readings the same for the same sample. If the sun is coming through the window onto to top of the
curvette, it doesn't like it too much.

I have used this type of
ambient light reading technique in another project, an RGB LED
interactive table. Or 'the Magic table' as my 4 year old calls it :)

Anyway, I've got access to a PalinTest 7100 at work, so I will take a few samples with it and also take the samples on my one with the 2 different LEDs. Then using the transmittance I record from each LED, should be able to build up an equation to make it read the same as the PalinTest.


Reply 4 years ago

Thanks for the information and photo. Interesting - I'll have to look into the tsl2561. The tsl257 saturates the AD in ambient light so may present a different measurement problem. Also be nice to have an I2C device and not mess with an AD and do everything on a Pi with an entire linux os behind the device. I'm using a lab spectrophotometer to get a regression equation and calibrating in the pH region where absorption is linear to get the 0.01 pH precision in the range of interest. I'm concerned about the sampling variance - a good deal of it is in the mechanical seating of the cuvette on the one hand, and locking down the electronic components mechanically. Not sure about electronic jitter yet and wonder about driving the LED directly with the microprocessor. Also using sample averaging - I like your method to drop the outliers. Originally using the 100 ml sample, it ate up the dye supply and there was too much wiggle room for the sample bottle. Took a while to realize just how significant that was. It's easier to control the optical path with a 3mm cuvette and a lot easier procedurally. Good bit of improvisation to use the plastic cylinder for the sample holder and electronics support for testing. Good luck with your project!


Reply 4 years ago

I took a few samples today on a PalinTest benchtop photometer using 1 blank and 4 different samples. I got the transmittance of the 4 samples at 520nm and 570nm. I also used my photometer to read the transmittance of the 4 samples with the 520nm and 570nm LEDs.

I put these values into Excel and calculated the absorbance, 2-log(%T).

I tried getting the absorbance ratios and plot them on a graph, but the plot was pretty random, no trend line would fit anywhere close. I tried the method that I mentioned above (The pH seawater photometer project) by getting the absorbance ratios, but this too didn't make a nice plot with a nice trendline.

Any help would be great.


Reply 4 years ago

I wonder about the ambient light. Maybe a lightproof box over the cuvette holder and see if simplifying the optical situation helps?


Reply 4 years ago

I tried it with a black bucket over it in a dark room too. Ambient light was registering 0. Still got no luck with any ratios


5 years ago

Really like the photometer housing. The attached photo is of a working prototype of a photometer to measure pH in sea water I built recently As you can see the cuvette holder, led and detector supports are in need of improvement!


Reply 4 years ago

Dr H- I like your housing design it because it handles the whole problem of managing LED, cuvette, and detector mounting. I modified your design for two LEDs (430 and 575 nm). The design is being cut now. I puzzled over how best to manage two LED sources. The main mod is to expand the cuvette cell aperture to allow line of site between the two leds and a single tsl257 detector.

Q- How did you decide on the light port size on the cuvette cell pieces?

thanks for an interesting project!


5 years ago

In the downloaded doc to support this build it states that software will be added at a later date?

Any progress toward that end?




6 years ago

very Nice! i will Wait for the Nextel informations. i souls Love top build o e.


Reply 6 years ago

mobile phone dictionary... ignore what i wrote. i will wait for more informations. i would Love to build one.

Just4Fun Media
Just4Fun Media

6 years ago

Nice build. How large is the tangle on the photometer?