Are RGB LED's only capable of producing three colors of light? What about all the other colors?

I had a light sensor hooked up to an LED and noticed that it only read a constant lux value when I had any of the RGB values at 255. Anything less made the lux value fluctuate quite rapidly.

I get that LED's produce different colors of light based on how bright each of the RGB lights are. But these "different colors" that are produced are just how we perceive them, correct?

For instance if the LED was shining aquamarine, rgb(127,255,212), the light source is not actually shining that color, it is just a mix of red, green, and blue light, but we perceive it to be aquamarine?

I guess I am just here to confirm what I think, but I would also appreciate links to where I could read more on this or an introduction to relative terms that I missed out.

Also, is pulse width modulation used to make an LED appear less bright? I noticed that when I had the value below 255 even on a pure color like blue the intensity value was not constant. So to make the LED appear less bright to our eyes, it rapidly flickers accordingly to the assigned value?

Any help is appreciated! Thanks!

• Yes, RGB LEDs only produce three colors (hence the R, G, and B). PWM can be used - check the data sheet. Commented Jul 21, 2016 at 13:45
• Note that there are lots of wavelengths available for single-color LEDs. These aren't useful to produce RGB combinations, though. Commented Jul 21, 2016 at 23:24

You are correct that LEDs just produce a mixture of 3 wavelengths that our eyes and brains combine into one "color." However, that doesn't make it less real in all cases. There are some "colors" like pink which don't exist in the rainbow because they are actually caused by a mix of two different frequencies of light being seen at the same time (a bluish frequency and a redish frequency). Most people consider pink to be a "real" color, so it would be reasonable by that logic to call the "aquamarine" produced by a LED to be just as real.

Of course, if you had a color like orange, which is part of the rainbow, you can see the differences between different ways to make us see that color. They make filters which only permit a very small window of wavelengths to pass. If you had one of these for an orange wavelength, a "pure" orange light source would shine through, but the LED would be blocked because it was making the orange color by a mix of red and green lights. While the human eye treats that the same as the single-wavelength orange, our narrowband filter can see through its trickery!

Of course, this can also work the other way. If I have a filter which is explicitly designed to filter out the green light of my laser at 532nm, and look at a laser beam (which is one frequency of light), I can't see anything at all. The filter blocked it all out. If I tune a LED package to output a "color" that corresponds to how 532nm looks to the human eye, it can be seen even through the filter because it's not actually emitting anything at 532nm. Instead, it is emitting a mixture of other colors which the human eye calls "green" when combined.

A very useful concept is the CIE colorspace which describes how humans perceive color very well. It demonstrates why a 3 color LED is sufficient to "trick" our eyes.

As for pulse width modulation, you are correct. While you can theoretically adjust the brightness of an LED by any number of methods, pulse width modulation proves to be cheap, easy, and works extremely well in most situations. However, you do have to make sure you switch often enough to keep the eye fooled into thinking the light is constantly lit. It sounds like your particular LED is a bit too slow to maintain that illusion.

• This answer really cleared things up for me, thanks! The LED always appeared to be lit, it is just that my light intensity sensor sampled quick enough which allowed me to hypothesize what we said.
– Rum
Commented Jul 22, 2016 at 12:12