Project showcase
Colors of Photons

Colors of Photons © GPL3+

This painting change in each moment as new.

  • 25 respects

Components and supplies

Necessary tools and machines

Apps and online services

Spark Pixels
Thank You very much for this great works!

About this project

One day we started using Eva's acrylic glass which has been in the attic since many years ago. Until now, when inspiration came. Eva makes beautiful abstract paintings and then we try to add Neopixels LEDs, microcontrollers and some code. The already fabulous painting with the continuously changing rainbow colors becomes a magical miracle. We watched and then we were overcome with a deep calmness, peace and love. This painting changed every moment as if new.

Acrylic and Pigment Painting on Acrylic Glass

Eva Konya used her amazing technique and her talent made the painting have such and amazingly beautiful visual impact.

Working with one button, just turn it on -off.

If you so desire, it can be capable of some clever functions too. It can turn on or off with motion sensing.

Stage 2

I am still working on the sensing functions. I must figure out how and where to put the sensor inside the frame. I already have made a WiFi version as well with Particle Photon and with an Android app to control the Neopixels over internet. That lets you change all the colors of the LEDs individually without cding the microcontroller.

"Internet of things" – things connected to the internet.

This allows us to enter into an interaction with out light paintings from everywhere in the world. There are more was that can be made in order to connect a painting to the internet. As for me, I am playing with endless possibilities. You can "paint" by mixing the colors using a fixed brightness level, or by adjusting it to a custom moving speed.

  • Color compositions with LED  NeoPixel/WS2812 Digital RGB LED Strip 144 - LED /m and with Microntroller/Arduino uno or Particle Photon
  • The 30 x30 cm Painting built in battery  with charger, continuously working about 18 hour, with Anker 15600mAh power bank.
  • The 100 x 60 cm painting has no battery, it works with a wall plug adapter.      


Éva Kónya          

Painter, Graphic designer

“With my artworks I would like to make a harmonious living space where people feel comfortable".                                            

About Eva:

János Magyar          

Light Artist, Chef


“I am excited for the "Multi Media/ Colors of Photons" project build and programming intelligent lighting-painting objects which are continuously changing and can sense the environment and our presence.”

What contributions can I do now for a better future?

"It reminds me that existence is none other than the constantly changing present."

Testing the colors with Arduino, Particle Photon, Lilypad

These are the same Light Paintings

The same paintings but in different moments:

Unfortunately, the video does not return what the eye sees, live more beautiful

Unfortunately, the video does not return what the eye sees, live more beautiful

I am open to any contributions and help as well, just to leave it there in the open.


Fast LEDArduino
Just simple upload, and try to change, play with it :) This for Adafruit Pro Trinket or any Arduino thing with Arduino Ide or
#include <FastLED.h>

#define LED_PIN      9
// Information about the LED strip itself
#define NUM_LEDS    144
#define CHIPSET     WS2812

#define BRIGHTNESS  255

// FastLED v2.1 provides two color-management controls:
//   (1) color correction settings for each LED strip, and
//   (2) master control of the overall output 'color temperature' 
// THIS EXAMPLE demonstrates the second, "color temperature" control.
// It shows a simple rainbow animation first with one temperature profile,
// and a few seconds later, with a different temperature profile.
// The first pixel of the strip will show the color temperature.
// HELPFUL HINTS for "seeing" the effect in this demo:
// * Don't look directly at the LED pixels.  Shine the LEDs aganst
//   a white wall, table, or piece of paper, and look at the reflected light.
// * If you watch it for a bit, and then walk away, and then come back 
//   to it, you'll probably be able to "see" whether it's currently using
//   the 'redder' or the 'bluer' temperature profile, even not counting
//   the lowest 'indicator' pixel.
// FastLED provides these pre-conigured incandescent color profiles:
//     Candle, Tungsten40W, Tungsten100W, Halogen, CarbonArc,
//     HighNoonSun, DirectSunlight, OvercastSky, ClearBlueSky,
// FastLED provides these pre-configured gaseous-light color profiles:
//     WarmFluorescent, StandardFluorescent, CoolWhiteFluorescent,
//     FullSpectrumFluorescent, GrowLightFluorescent, BlackLightFluorescent,
//     MercuryVapor, SodiumVapor, MetalHalide, HighPressureSodium,
// FastLED also provides an "Uncorrected temperature" profile
//    UncorrectedTemperature;

#define TEMPERATURE_1 DirectSunlight
#define TEMPERATURE_2  DirectSunlight

//#define TEMPERATURE_1 OvercastSky  //ezek nagyon jok egyutt
//#define TEMPERATURE_2 MercuryVapor

// How many seconds to show each temperature before switching
#define DISPLAYTIME 3   
// How many seconds to show black between switches
#define BLACKTIME   0.0

void loop()
	// draw a generic, no-name rainbow
	static uint8_t starthue = 0;
	fill_rainbow(leds + 0, NUM_LEDS - 0, --starthue, 2);  //try to put lower and higher starthue 

														  // Choose which 'color temperature' profile to enable.
	uint8_t secs = (millis() / 1000) % (DISPLAYTIME * 2);
	if (secs < DISPLAYTIME) {
		FastLED.setTemperature(TEMPERATURE_1); // first temperature
											   //leds[0] = TEMPERATURE_1; // show indicator pixel
	else {
		FastLED.setTemperature(TEMPERATURE_2); // second temperature
											   //leds[0] = TEMPERATURE_2; // show indicator pixel

	//Black out the LEDs for a few secnds between color changes
	//to let the eyes and brains adjust
	if ((secs % DISPLAYTIME) < BLACKTIME) {
		memset8(leds, 0, NUM_LEDS * sizeof(CRGB));
	FastLED.delay(45);                //minel tobb a szam annal lassab 

void setup() {
	delay(3000); // power-up safety delay
				 // It's important to set the color correction for your LED strip here,
				 // so that colors can be more accurately rendered through the 'temperature' profiles
	FastLED.addLeds<CHIPSET, LED_PIN, COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalSMD5050);
This for the Particle Photon
Use with


Colors of photons circuit
Colors of photons cicuit
Photo 20160406 023157(1)


Similar projects you might like

Voronoi101: Light Your Lamp!

Project tutorial by Gregory O. Voronin

  • 29 respects

Enter the house like a Sith Lord

Project tutorial by Prasantha Jayakody

  • 74 respects

Arduino Compatible Nano NeoPixel Controller

Project tutorial by Whimsy Makerspace

  • 1 comment
  • 22 respects

Use the Force... Or your Brainwaves?

Project tutorial by Tamas Imets

  • 116 respects

Android Things Word Clock

Project tutorial by Daniele Bonaldo

  • 127 respects

Animating an LED strip from a computer

Project showcase by kendfrey

  • 92 respects
Add projectSign up / Login