Public Lab Wiki documentation

Spectral Workbench usage

Basics is a web-based software suite for collecting spectra, using your Public Lab DIY spectrometer.

Once you have an assembled spectrometer connected to your computer or smartphone, create an account at, log in and click Capture. You'll then be able to connect to your spectrometer, capture and save spectra, and analyze and share them.


Watch the video below for a quick overview on capturing spectra.


You'll notice that many other spectra on the site have a scale showing "nm" or nanometer units on the horizontal axis. To get scaled data, you must calibrate your spectrometer. There are several kinds of calibration but here we're talking about wavelength calibration, which allows your spectrometer to display a wavelength value for any color of light it sees. Luckily, this is easy -- to learn how, see the Spectral Workbench Calibration page.

Title Author Updated Likes
Nothing yet on the topic "spectral-workbench-calibration" -- be the first to post something!

Ask a question  or help answer future questions


Spectral Workbench has a range of tools which may be used on any spectrum page to manipulate or analyze your data. Read about them on the Tools page

Find similar

The "find similar spectra" tool has also been added to the tools page


You can save multiple spectra in a permanent set in one of two ways:

Technique 1: Use the "Compare" interface on a spectrum page to compare one or more spectra with the one you have open already, then in the new "Comparisons" tab, click "Save as set." as shown:


Technique 2: From an existing set, click "Add spectrum" at the bottom for a search interface for finding and adding spectra:



How do you analyze samples of liquids, gases, or solids? Learn more about sampling here:

There are also a variety of activities being documented here if you're looking for spectrometry activities to attempt:


Once your spectrometer is calibrated, what do you do next? This is the central question of our open spectrometry community. People are building and using these spectrometers for many reasons and there are different approaches being actively developed. For the time being, try browsing recent contributed open spectrometry research, and look over our growing list of applications and resources

Title Author Updated Likes
Nothing yet on the topic "spectral-analysis" -- be the first to post something!

Ask a question  or help answer future questions


Various tutorial videos on using Spectral Workbench.

Watch this short video for a quick walkthrough of the whole process:

This 10 minute video goes into greater depth on how calibration works and how to do it well:

Watch this video about using Operations via the tool panes:

See Spectral Workbench Help if you have trouble.


Many things can go wrong (or right) when collecting spectra. Here are a few to look out for:

Title Author Updated Likes
Instruction videos don't work! @aemilius89 6 days ago
changing default webcam @julietalemus new contributor 8 days ago
How can I connect my gopro to SpectralWorkbench software? Is there other open software that would? @CD3000 new contributor 24 days ago
Only seeing part of color spectrum @msolomon about 1 month ago
copying calibration issue @ceberndsen 4 months ago
Standalone Spectrometry software & uploading JPG or PNG spectra @lach_myers 4 months ago
My uploaded file will not process. @JadaBada 5 months ago
How can I get the absorption spectra once I have calibrated my spectrometer data? @amenzel8 5 months ago
Why do raw RGB values differ from calibrated RGB values? I thought calibration just set pixels to wavelength (nm)? @troyb 6 months ago
Bug : Impossible to calibrate this mercury vapour spectrum @SarahC 6 months ago
Bug? My Spectrum loads then vanishes. @SarahC 6 months ago
Amazon UK - Link for perfect CFL? All mine are wide spectrum phosphor! @SarahC 7 months ago
Has anyone experienced difficulty to log in this site? I having the trouble since yesterday. Not just log in, but to save spectrum too (sometimes can log in but take a long loading). sorry for my bad english. @silvi_ap51 7 months ago
The spectrum gets vertical no matter how I upload the picture. @wangdydu 8 months ago
comparison betweeen spectra made by manufacturer and spectralbench? @miramon 10 months ago
How do I use SpectralWorkbench.js to auto-calibrate? @shenzj1994 10 months ago
Can you get color temperature from spectra @miramon 11 months ago
Can I get a file of numbers instead of a graph from the foldable spectrometer software? @mountevans 11 months ago
I can't enter a password when I try to login to Spectral Workbench. So I can't log in at all. @storacremu 12 months ago
CSV files from spectra @Dr_Z 12 months ago
I want to know a method to quantify milk proteins using the foldable mini spectrometer, Is this possible? @julsmill 12 months ago
I want to know a method to quantify milk proteins (cow milk, almond milk, coconut milk, oat milk) using the foldable mini spectrometer, Is this possible? @julsmill 12 months ago
How to use the API to export a constant stream of data? @Reallygeek about 1 year ago
How do we confirm the current version of the software? @quencher about 1 year ago
How should i go about converting svgs to jpgs or pngs @Flameytail about 1 year ago
Does anyone know what image processing spectral workbench does to find intensity at wavelength/ where to find the coding for that? @Reallygeek about 1 year ago
Calibaration or switching scale? @jayjay70 over 1 year ago
Delete my profile? @MEC08 over 1 year ago
Starlight Recorder KIC8462852 @LightWaveResearch8000 over 1 year ago
How To Make Time Lapse Spectrometer @LightWaveResearch8000 over 1 year ago
"Use or calibrate calibration" dont show my reference CFL already calibrated @JSAENZ over 1 year ago
Image is blue - First time @LightWaveResearch8000 over 1 year ago
Copying Calibration @Ridwane over 1 year ago
Suppression of background light @saeed957 over 1 year ago
Cannot find colour spectrum @SpencerH almost 2 years ago
Fraunhofer Lines at higher resolutions? @stef almost 2 years ago
What are the units on the X axis for the spectrum capture for the Desktop Spectrometry Kit 3.0 @Schoster almost 2 years ago
Save and Download buttons -where does the file save or download to? @testtube almost 2 years ago
How to get spectral data in excel or other formats @suha almost 2 years ago
orientation of slit vs that of diffraction grating @wlkwong almost 2 years ago
Spectral Workbench recording time? @dhale2 about 2 years ago
Calibration of spectra fails @Paul_P about 2 years ago
Why copy calibration does not apply? @aelobo about 2 years ago
Intensity for spectra too low? @chuynh451 about 2 years ago
Error on calibrating uploaded spectrum @sarahcm about 2 years ago
how to delete my spectra on Spectral Workbench @redleon about 2 years ago
Calibration Issues with larger images @Anmar over 2 years ago
Can i upload csv files on spectralworkbench for calibration and other purposes? @shubham over 2 years ago
Question: Is Global Warming primarily man-made or a natural occurring phenomena? @dhaffnersr over 2 years ago
Question: Using a webcam with a image resolution of 1920x1020 @seko over 2 years ago
How to rename a set on Spectral Workbench? @AndrewJamesLaplante over 2 years ago
Question: How do I get the calibration user interface? @PeterDH over 2 years ago
Question: Why average? And what happens to the second Green? @viechdokter over 2 years ago
Difference CFL and Tube light? @Joris over 2 years ago
Question: desktop spectrometer 3.0 light sensitivity @Joris over 2 years ago
Question: Why won't the spectrum plot show once the image has been uploaded? @litar over 2 years ago
Question: Focus on mobile phone @clownfish over 2 years ago
Question: ccd camera on metascop @leanr over 2 years ago
Getting the spectrometer to work with a Raspberry Pi? @anjohn12 over 2 years ago
Automated captures? @viechdokter over 2 years ago
Question: total beginner problems @viechdokter over 2 years ago
Question: Spectrometer using photosensor @Abhay7417 almost 3 years ago
Question: How do I save the calibration data? @mokeymark almost 3 years ago
Question: Micro volume spectrometer using arduino and light detecting resistor. @Abhay7417 almost 3 years ago
Question: can't save spectrum anymore @eigentuininhuis almost 3 years ago
can't get the calibration right @eigentuininhuis almost 3 years ago
What size (width and height) of the image to vertical upload (blue top) in SpectralWorkbench? @asasergio almost 3 years ago
Question: How do I measure the absorption spectrum of a sample? @lucca_fabani almost 3 years ago
Calibrating @daniel94 about 3 years ago
Question: What does the vertical scale mean? @someHerrings about 3 years ago
Question: Is there a way to delete a set of spectra from the spectral work bench? @ethanbass about 3 years ago
Question: Help @porbe about 3 years ago
Question: Why I can not upload images to calibrate @congminhqt over 3 years ago
Question: downloading spectrum @mebaumga over 3 years ago
Question: Stray light correction @SIMJEDI over 3 years ago
Question: Colorimetry using the desktop spectrometer @mattiecaroline1991 over 3 years ago
Question: deep UV @mebaumga over 3 years ago
Question: @edilberto over 3 years ago
Question: "live" compare to camera feed @wecapa over 3 years ago
Show more

Ask a question  or help answer future questions


If there's too much light, the camera's sensors can't compensate and will be maxed out. On your graph, this looks like it's "hitting the ceiling" and you get a section with only 100% brightness. (Sometimes this happens in only one channel and you can't see until you enable RGB mode, as in the below image.)


There are a few things you can do:

  • dim the source light
  • move it further away
  • use a diffuser (milky plastic, a sheet of paper), although this may affect your spectrum
  • reflect light off of a piece of white paper or a wall (or, for something with a very clean white spectrum, try Teflon)
  • use more sample (if you have, say, a colored liquid)

By default, Spectral Workbench chooses the top row of pixels as a cross-section of your spectrum image. If there is variability in the brightness of your spectrum image, vertically, as shown below, you may be able to select a different cross-section which does not have clipping. Go to More Tools and choose "Set sample row", then click on the image at a point where the brightness is lower. Please read this section about what the cross section represents, as it may vary based on how you are capturing.

However, if your spectrum is not perfectly vertical (for example if you've uploaded an image from a smartphone or still camera), selecting a different sample row may invalidate your calibration, since each color is now in a different location in the horizontal axis. In that case, you may need to take a new spectrum with lower light or shorter exposure.


Light leakage

If your spectrometer is not sealed well, light may enter the imaging chamber and mess up your readings. The below image has some white light leaking in -- just seal up your spectrometer well with dark tape, especially where your camera attaches to it.


Advanced use


Sometimes, when using the "waterfall" interface in live capture, you don't quite catch that moment when a flare of light is just perfect. You can use Set cross section under "Tools" on the spectrum page to choose the best cross-section of the image.


Webcam configuration

Most webcams have auto exposure and color "correction" so that in dim light, you can still see. This will unfortunately change the exposure between readings, so for quantitative work, it must be disabled. On Linux, you can use the "uvcdynctl" utility as outlined here.

On a Mac, you can download this utility:

"Sluggo" from has written a UVC library and control app for OS.X. It works pretty well with a logitech c900 webcam, allowing GUI-based control of whitebalance, exposure, and focus(!). He's also working on an ObjectiveC wrapper.

If you find a comparable utility for Windows, please post it here.

Webcam selection

Some computers/browsers will initially choose the built-in webcam instead of the one in your spectrometer. On Chrome, some recent versions make it quite difficult to select the correct camera. Please first confirm that your computer can recognize the camera at all by using a desktop photo booth program and/or trying out this demo site.

Chrome ~v30+

In more recent versions of Chrome, you can click the camera-shaped icon in the address bar:


Chrome v26+

In slightly older versions of Chrome, you can click the camera-shaped icon in the address bar, then go into the menu settings to choose a camera:


Click "Manage media settings" and close the dialog which pops up (the menu you want is behind it). Then scroll down to find the Media section, and select the webcam, as shown below. Close the Settings page. You may need to reload the Spectral Workbench page now.


Chrome v25

If you are using Chrome 25+ and have a webcam in addition to your spectrometer, Google hid the "camera selection" menu under Settings > Advanced Settings > Privacy > Content Settings > Media > Camera. This is really unfortunate, but Google has improved that interface in more recent versions.

Chrome 21-24

In older versions, you can just choose a camera in the dropdown to the upper-right corner, then click Allow to the upper left.

Offline use

Spectral Workbench may be used offline once it is loaded in your browser. To do so, visit:

Once you've visited the above address, you will be able to access that page even without an internet connection, as long as you use the same browser. Read more about it here: Spectral Workbench Offline


You can also use a pure JavaScript version of Spectral Workbench, ideal for use with a Raspberry Pi spectrometer. The code is here:

@cedarlodge is developing a Python library too. See it in action here:


Public Lab is open for anyone and will always be free. By signing up you'll joined a diverse group of community researchers and tapped into a lot of grassroots expertise.

Sign up