I had a plan for developing my Bokeh lamp with a web application. I wanted to make nicer and interesting lighting effect, but also I would like to learn and try many things that I did not try before. So I chose Wifi Communication between the application and Arduino and used incandescent bulbs.
Before making this, I tested many different ways for finding the most beautiful effect that I imagined. But actually still now I am looking for the way.
< Web Application >
I am making the Bokeh web application for transforming the photos or real-time video to extract colors for the Bokeh lamp and also wanted to adjust the light color or dimming using the web application. (It is similar to Hue bulb and application but I would like to build it myself. )
< System Diagram >
I used Node.js with a WebSocket module for communication in real-time. And I used MKR1000 Arduino. (a WIFI model)
This app will extract one dominant(average) color and 4 main colors.
< Material >
< Code >
(I will blog for the Wifi connection code separately later.)
I made a server with Node.js to send the color data to Arduino. I used Express, ejs and Websocket node modules.
I used ‘get-image-colors’ module for extracting color from images. https://www.npmjs.com/package/get-image-colors
- bokehServer.js (node bokehServer.js -> run this server)
- image files
< Hardware & Wiring >
Arduino – MKR1000
*** itpsandbox ***
- go to Here (register your devices)
- register your computer and device(Arduino-MKR1000)
- Check your mac address of your laptop (ifconfig -> ether XX:XX:XX:XX:XX:XX)
- Check your MKR1000 Mac address (Examples/WIFI101/ScanNetworks.ino) for getting 101 Mac address.
3. Choose your wifi network ‘itpsandbox’.
4. Ask the password.
char ssid = “itpsandbox”; // your network SSID (name)
char pass = “(password)”;
*** At home Wifi (normal) ***
- just choose your home wifi
- Check your ip address and passwords
char ssid = “”; // your network SSID (name)
char pass = “”; // your network password
< Prototyping & Test>
- Stretch fabric
It was interesting when I pressed the fabric the pattern and size of Bokeh effect changed.
- Two layers (Moire effect)
I made two papers with dot holes. I realized that when two layers move or rotate, the pattern is more irregular or show different interesting patterns.
Dot Moire Effects
(This approach is also interesting! not Bokeh, but play with RGB colors and moire effects. I want to explore more RGB lights with Lithography method. I worked long times ago with RGB lights for reproducing Andy Warhol’s Marilyn. (http://hhayeon.com/Light-Lithography))
If I want to get more clear and sharp images, I think I need to use the convex lens.
- Sheer curtain
- Round Shade
- Dichroic Film
Always fancy material, Dichroic Film.
- Halogen Lamp (12v 50watt * 4) with color filter
< Wiring >
I used transitors (TIP120) for 12v Halogen MR16 lights.
- halogen (incandesent bulb) 12v 50watt * 4
- 12v power supply
50w = 12v * 4.16666667amps
4.2 * 4 = 16.8amps
Just check the connections between the components! Do not test with Jumper cables with high current power supply! (2A is super fine, but I have to use at least 17amps for 4 halogen bulbs. )
- Check Wire gauge!!(thickness)
” Just like a garden hose, a larger diameter hose carries more water in a given time over a given distance.”
American Wire Guage (AWG)
AWG 22 : common for Breadboards (Max 7amps)
AWG 28 : Common Jumper cables
30A current needs thicker wires.
When I tested with Jumper cables and 30A 12V power supply, the power jumper cable melted and smoked.
2. Use Heatsink with TIP120
I used the TIP120 with about 4.17amp to the collector. It was really hot I attached with heatsinks.
I tried not to use the breadboard and to connect thicker wires directly. And then I controlled the transistor pins with PWM.
Continuous : 5amps / Peak : 8amps
3. MR16 , JC type Bulb
I used MR16 bulbs and sockets.
Actually, the reflector of MR16 is made blurry images for bokeh shape. I wanted to use the JC type bulb. (I think the socket size is same but without the case and top glasses of MR16.)
When I tested it, it smoked… (again) I did not know why it smoked and turned green color on the glass. Because I touched it with oily hands. Halogen light is too hot so Even though the surface of the bulb has a small amount of oil makes the smoke and it could blow up or break. If you touch it with hands, clean up with alcohol.
4. Heat Heat Heat!
I probably underestimated the heat problems with lights. When I used the 1W LEDs, they also made heat a lot. (cannot touch with bare hands) But, it was okay.
But when I used more bright LEDs or incandescent bulbs that need high currents, I should have considered the heat problems.
- Heatsink (More wide surfaces, more fins better for reducing heat)
- Structure for heat circulation
(It was interesting structures for LEDs!)
<Color Extract from images>
The app extract one dominant color and main 4 colors. Now I sent the color Hex values to Arduino.
I will make an app for select the images or video and confirm the color in real-time. I want to use in real-time streaming webcam video and generate the effect with app and the Bokeh lamp.
<Conditions for perfect for bokeh light>
- Programmable/dimmable color change LED
- one source of light (super bright LED) of with Convex lens cap(but it also depends on the focus)
- Transparent bulb or lens cap (Do not use white bulb!!! (It make ambient light -> not clear shapes of light, blurry shadows))
- No reflector