Explorations in creating lamps with flexible light emitters & curved surfaces

Similar projects worth following
Flexible light-emitting materials can transform what we think of as a light source for the home or office. Let's experiment with different surface shapes and LEDs to see what kind of lamps can be built.

Throughout I will keep manufacturability in mind, with an Ikea-inspried eye towards a small amount of final customer assembly.

Please see the project log updates for ongoing progress!

Part of the SupplyFrame Design Lab residency #0x02


Or.... "Welcome to the spaceship. We are happy to see you!"

  • Some ILOVELAMP family photos

    todbot06/26/2017 at 20:36 0 comments

    Here are some "family photos" of the lamps I built during my Design Lab residency. The residency was a fun, educational, and an all around amazing experience.

    Dan, the Resident Engineer and manager of the Design Lab has let me put my lamps up on a shelf in the lab, as I made them. Since I'm now effectively done with my residency (but not done with ILOVELAMP), I figured I should take a few photos of the lamps together. This is most of them (there are three missing) and they're not very well spaced out, with a few not even powered up. And I didn't even think to take a bit of video. The static photos don't capture the dynamism all the lamps have in their light output. But it does give a sense of what I've been doing for the last several months.

    I'll be posting a more detailed look back and "lessons learned" in a few weeks.

  • Lamp prototype #10: "snak2"

    todbot06/17/2017 at 00:04 0 comments

    This lamp is "snak2". It is 2" wide by 2 feet long. It is made out of laminated birch and flexible LED strip. The light seems to emanate from the wood, glowing softly and illuminating the table space around it. Here is a video showing it in action.

    Recently I've been experimenting with trying to create "voids" that emit light. The effect is created by defining an upper and lower surface and placing LED strip on the underside of the upper surface so it reflects off the lower surface.

    The previous "snak1" was the first experiment with this. This revision attempts fix the main issue of side-light brilliance by adding a 1/8" lip around the perimeter.

    "snak2" also decreases the number of LED strips from four to three, but increases the LED density from 30 LEDs/meter to 60 LEDs/meter. The net result is going from 64 LEDs to 96 LEDs.

    As most of the previous lamps, these LED strips are "SK6812 WWA", WS2812-compatible with three whites of different color temperature instead of RGB.

    LED Driver Board

    The custom driver board is a further iteration of theESP8266 Wemos D1-based board that I've been using for the last several lamps. For this lamp I purposely didn't design in a location for the electronics. But then I decided to see if I could shoehorn in a board into the end. I made a few variations before I found one I liked. (Thank you Othermill!)

    The board design is quite simple, really just a holder for UI elements and sockets for the ESP board, LED, and power connectors.

    The traces are intentionally made quite thick (0.032") with the ground pour having extra isolate (0.02 to 0.04) to make it easier to mill on the Othermill.

    Wood Assembly

    The assembly of the wood form was done as the last several prototypes: laser cut slices of plywood laminated together with woodglue and clamps.

    As with my previous experiments with making laser cut wood look like CNC milled wood, a lot of sanding is required to get rid of the laser burn marks (visible in the photo above)

    Unlike "snak1", this glue up didn't use registration holes and instead used better clamping. Also, the glue up was staged: first the inner core was glued and clamped, then outer edge pieces were glued on and clamped. The end result was much better aligned, which also made sanding easier. The final wood form was then coated in a bit of wipe on polyurethane to protect the wood.

    The LEDs were then wired up using NeoJoints and stuck into the upper section of the lamp.

    Finally the controller board was placed inside (with the knob and adapter previously mentioned) This is a temporary maneuver as eventually the electronics will be hidden entirely in the structure (somehow :-)

    The end result is pretty interesting looking I think. I'll definitely be exploring this further.

  • Emulating a CNC router with a laser cutter

    todbot06/13/2017 at 22:54 1 comment

    I have had terrible luck with tear-out when milling plywood on the Shopbot. Here is an example of the kind of issues we're experiencing:

    Notice how the top ply or two is getting ripped up during the milling process. And this is when using down-cut endmills and proper speeds & feeds.

    The tear-out has been very frustrating. It's hard enough to make wood pieces that feel light and thin, an aesthetic I really want for the lamps. (This desire for lightness is why I want to use metal for the lamps, but I've been finding it very hard to do accurate metalworking at the scale of a lamp)

    A month or so ago I decided to see if I could use the laser cutter to create wood pieces that approximate the look of what I wanted from a CNC router/mill. The first sketch was promising:

    I was able to take a design in Fusion 360, slice it up intelligently, and create a set of DXFs for the laser cutter, cut out 1/8" plywood and reassemble the design.

    So I took this basic idea and created a new design, with channels for the aluminum spine in the back and the diffuser in the front. These channels would be cut out separately and registered to the side pieces via holes filled with glue and wood dowels.

    Assembly was pretty easy and anti-climactic. Just assemble the pieces with 1/8" dowels and wood glue. Then sand to remove the laser cutter burn marks.

    The end result was pretty good, if a bit messy because I didn't use much care in applying the glue.

    For future attempts, I would like to eliminate the need for the registration dowels and find a way to register the layers externally (e.g. via clamps or temporary jigs), because I think the end result would look cleaner.

  • Adapter for 3/16" knob to potentiometer

    todbot06/13/2017 at 22:01 4 comments

    I got these awesome rubber knobs from McMaster but alas they have 3/16" -16 threads. There's no way they would fit on a standard potentiometer. But Fusion 360 has a nice threads function and it contains a database of hundreds of types of screws. It was a pretty trivial effort to CAD up an adapter going from the knob's threads to the pot:

    A few things to note about making threads in Fusion 360:

    • Be sure to turn on "modeled" if you want the threads to be 3d-printable
    • For "Thread Class", choose "A" or "B" class, never "C". This is how closely the threads mate, and a "C" class makes it too tight for 3d-printed parts.

    The result turned out great on my newly acquired Monoprice Mini Select V2 3d printer using Monoprice PLA+. (Aside: the PLA+ seems to flex a lot more like ABS than PLA. It's really nice)

    After I printed a few of them out, it was quick work to screw them on.

  • A new lamp idea: "snak1"

    todbot06/12/2017 at 22:17 0 comments

    This idea isn't baked at all, but I wanted a record of it. The basic concept is an illuminated hollow void.

    It's see-through and yet it emits light. This started out as a vertical piece but I ended up liking it horizontal more.

    This shape was intentionally designed to be able to be fabricated either via laser cut laminations or CNC routed on the shopbot:

    Also one possible instantiation of the design had acrylic or delrin sheet diffuser panels on each side. (thus the screw holes) But I didn't like the look of that.

    The "glowing void" aspect is really neat.

    The problem, however, with implementing the "glowing void" is minimizing direct line-of-side with the LEDs. I think this can be accomplished by putting the LEDs into a small channel of 5-8mm deep.

    Since this "glowing void" effect relies on light bounce to illuminate, future versions will have a bias on which way they face. In this one, the LEDs face down. If it were turned upside down, the LEDs would glare into your eyes.

  • Lamp prototype #7: "woodArc3"

    todbot05/20/2017 at 00:04 1 comment

    Here is my second experiment with using the laser cutter to replicate the look of CNC milled wood. I call it "woodArc3".

    The lamp is an arc with a channel that extends from an elliptical base. Light emits from the interior side of the channel. The LED strip is set inside the channel with a diffuser made with PVC-coated PETG set into the face of the channel.

    The lamp base contains the electronics. One knob and three buttons protrude from the base, allowing control of the lamp. The LEDs within are again the SK6812WWA "three color white" WS2812-compatible strips I have been using.

    Here's a video showing it in action.

    I really like how the striations of the plywood come out along the outside arc and the curve of the base.

    Structural Design and Fabrication

    To create the structure of this lamp, I made "slices" in CAD that corresponded to the 1/8" and 1/4" thicknesses of plywood I had.

    Instead of using the more explicit technique mentioned last post of making a copy of the component and re-laying out its pieces onto a stock, I found an easier way if your end result is laser cutting. Just create a sketch on a face of a part you want to laser cut, then stop the sketch. The resulting blank sketch outline will be the face of the part. Right-click on the sketch and Save As DXF. It's a very fast method to get to a set of DXF files for laser cutting. Now you still need to lay them out compactly. I used Illustrator for this.

    To manufacture the lamp's main arm, I laser cut out the many pieces, glued them together (which was tough without any sort of registration), sanded off the laser burn marks, and put on a light coat of polyurethane.

    For the base, I designed in registration pegs to help assembly. These pegs extended through the top. I was considering covering them with a thin top piece of plywood, but I left it as a reminder. The custom designed (and milled on Othermill) PCB fit an ESP8266, three tact switches and a pot hanging off the edge. This pot hanging off was because I had no vertical pots, just the right-angle kind. It worked out pretty well though.

    What didn't work out well was the fact I didn't design any standoffs into the internals of the base for the PCB. So I quickly built-up some from glued scraps, drilled a pilot hole, and screwed down the PCB using wood screws. Not pretty or manufacturable but works for this prototype.

    Firmware and Controls

    As for the controls and firmware on this lamp, this was the first time I spent a decent amount of time thinking of interface and functionality. I decided to have the lamp have two main modes, toggled between with a single button:

    • "lampMode" – normal daily use
    • "patternMode" – fun times!

    In lampMode, the knob controls number of fully-lit LEDs that are turned on, starting from the top. Thus, the lamp goes from task light to general light with the turn of a single knob. This action also effectively acts as a brightness control, just because more LEDs == brighter. A button let's you pick one of seven color temperatures for the emitted light.

    In patternMode, the knob controls brightness, and the buttons let you cycle through a selection of fun dynamic patterns. Many of these were modified versions of patterns in the FastLED DemoReel100 sketch.

    Overall Impressions and Next Steps

    This was the first lamp I created that is usable by someone other than me. Previous lamps were all studies of form or light emission. That feels pretty good to have a lamp that's almost a finished thought.

    The size is good for a desk lamp. It's aesthetically pretty good. I did not like the construction method as it's entirely not manufacturable I feel. I like how solid the arm feels but I wish I had put more thought into the internals of the base.

    As a more refined experiment on how to make lasercut material look NOT like lasercut, I think it worked awesome. I'll definitely be using this technique for future personal projects.

    For a future version of this lamp, I'd like to explore taking the idea back to CNC and seeing if it can be made...

    Read more »

  • Lamp prototype #6: "ellipseArc1"

    todbot05/19/2017 at 23:44 0 comments

    This lamp I'm unimaginatively calling "ellipseArc1" because it is formed via truncations of ellipses.

    It is composed of 1/2" baltic birch plywood "spires" reaching upward on a 1/2" plywood base, with single strands of SK6812WWA strips running up the inner sides the spires. These spires also form the feet of the lamp.

    This lamp is derived from an early experiment with 12V "dumb" strips using 1/4" lasercut plywood (in the background of the below photo). Those strips were just barely too thick for the wood thickness so I knew I needed to go thicker, especially with the 10mm width of the WS2812-style strips.

    The design goal was to have the LED strips disappear into the base plate, so the light sinks into the wood. Unfortunately, due to how lasercutters work, you cannot cut at an angle other than 90º, so having the LEDs seamlessly disappear into the wood isn't possible with the spires being curved into the base. Instead, each strip terminates early and wires are visibly running from the strips into the base. I don't like that effect much.

    Another issue is that due to the spires curvature, there is very little room under the base for the driver board. To account for the driver, I had to glue on spacer feet to rise the lamp up enough. And the driver board is where I was experimenting with including a 5V switching power supply. Adding it takes up way too much space, even when mounted cleverly to the back of the driver PCB.

    The goal was to have each spire independently controllable, but because of the space issues, they are instead put into three groups: front, middle, and back. It's a real mess.

    To construct the wood form of the lamp (since the ShopBot was out of commission), I used the laser cutter. I designed the lamp to use 1/2" plywood but our laser cutter can only do 1/4". To create "fake" 1/2" plywood, I lasercut double of each of the shapes from 1/4". I then sanded the lasercut edges to hide their lasercut origin and reveal the nice edge detail of the baltic birch.

    The final effect looks pretty convincing and solid. The spires slot into the base in a standard lasercut fashion, but I offset them so it didn't read like a lasercut object.

    This was also my first real venture into properly designing multi-component CAM layouts in Fusion360. This is done by making a copy of the components and positioning them onto a "stock material" object (perhaps via joints). It works pretty well.

    Overall, this lamp experiment was a failure in terms of functionality and construction. But it did teach me a few things.

    Lessons learned from this lamp prototype:

    • How to take a design in Fusion360 and lay it out for laser cutting or CNC milling
    • The beginnings of how to make lasercut wood look like CNC'd or hand-built
    • Getting more comfortable using the DesignLab shop tools for doing hand-building and finishing of wood
    • Further experimentations with living hinge pattern acrylic cutting for diffuser effects (see below)
    • Initia lasercut wood veneer experiments for varying surface treatment of the lamp body. It can look pretty good! (see below)

    It also started me down the path to start thinking about how to incorporate the electronics into the body of the lamps. Until now, I have purposefully been ignoring that. I wanted to explore raw shapes and didn't want the distraction of electronics dimensions & UI considerations.

    For future lamps, I will be striving to both incorporate the electronics into the lamp bodies as well as begin integrating a more thoughtful user interface for the lamps.

  • LED diffusion experiments, some results

    todbot05/06/2017 at 01:10 11 comments

    You may have seen the wonderful Hackaday article (and resulting discussion) titled "Ask Hackaday: What about the Diffusers?" The article was a good summary of common techniques used to diffuse LED brilliance and the ensuing discussion listed some additional approaches and materials to try. I particularly like the idea of milled Corian, but I don't see a way to fit that into my project. It did remind me that Jimmy Diresta did a Corian lamp for Core77's Youtube channel a while back. It's a good demo of the material.

    A month ago, there was also this great post about LED diffusion on the Arduino sub-reddit.

    The materials I've been considering have been a bit simpler than most. They are, in no particular order:

    There are several criteria I have been using for judging material:

    • Diffusive ability (obviously)
    • Structural capacity (can it hold its own shape)
    • Flexibility (can it be bent to the curves I am considering)
    • Availability / cost / amenable to manufacturing

    The diffusiveness of the material should be around 50%-60% light-transmissive it seems. I don't have a good way to measure this except by eyeballing it.

    The availability / cost / manufacturability aspects mean I discount the cool "hacks" I normally would do like pingpong balls or hot glue. I'm looking for products or materials or processes that conceivably can be done by a hired third party.

    The structural and flexibility issues are fundamentally at odds with one another: the materials that are very flexible cannot hold their shape. Many of the diffuser shapes I want to make exhibit two different types of curvature (e.g. curve around the LEDs while also following the curve of the lamp). This combined curvature is not possible from a sheet material that cannot deform. (This is also why you can't form an accurate flat map of the world. See this Numberphile video about Gaussian curvature for an easy-to-see explanation using pizza)

    So anyway, here are the results thus far.

    PETG sheet

    The PETG sheet by itself was immediately out of the running. It is much too clear. However it is very flexible and easily cuttable with a box cutter. It became a nice substrate for some of the other materials that couldn't hold their own shape.


    This is very promising. I cast 1"-diameter 2ft long tube in a D-profile and used it as a diffuser for the "helixMetal1" lamp.

    It turned out pretty well, but absorbed too much of the light. I think making a thinner shape that sits above the LEDs by some air gap is the next experiment to try.

    Privacy glass film

    The privacy film is some of the best material tested so far. It is a thin film (~4mil) made of vinyl I think. Since it is a flexible film, it needs to be attached to a structure. It worked wonderfully on the edge-lit acrylic of the "ufo1" lamp.

    To give the film structure, I bonded it to the PETG sheet using spraymount adhesive. This worked well and allowed me to create some very interesting diffusers that looked great.

    I'll definitely be exploring uses of the privacy film more. It comes in a variety of patterns, which could be very useful:

    and since I think it is vinyl, it should cut well on the Design Lab's vinyl cutter.

    Laser-cut Acrylic Sheet

    Acrylic sheet is probably the first material people think of for LED diffusion. Frosted acrylic works well for flat surfaces and edge-lit clear acrylic can look pretty awesome too.

    But my stuff is curves, so what to do? One answer is heat-bending the acrylic. I have had some success with this, but I've been trying to stay away from processes that could get you hurt. So what else? How about the laser-cut living hinge? There are several living hinge designs on the Net, most are for wood, and they all...

    Read more »

  • Playing with Capacitive Sensors for Buttons

    todbot05/05/2017 at 23:13 3 comments

    I made a quick capsense button PCB for the CAP1188 capacitive touch chip . I intentionally followed none of the recommendations for designing capsense buttons. But I did design it so it would easily plug into the Adafruit breakout board which can nicely live on a small solderless breadboard with an Arduino Pro Micro.

    To make it a bit more usable, I covered the bare copper with a sheet of kapton tape.

    When running the simple test sketch for the chip, I discovered just how bad the board design was. Pretty much any touch would trigger multiple inputs. But after reading the CAP1188 datasheet a bit, I made a small config change of

    cap.writeRegister(0x1F, 0x1F); // addr 0x1F set sensitivty to 0x1F (4x, default 32x)

    to reduce the sensitivity, it ends up working out pretty well.

    I may end up using this board as a tester, but I do really need to redesign it. :-)

  • Lamp prototype #5: "woodArc1" (unfinished)

    todbot04/21/2017 at 23:55 0 comments

    This week's lamp I'm calling "woodArc1". It consists of a two mirror-image pieces of curved CNC'd plywood that contain channels to hold a thin aluminum bar and a thin diffuser sheet. Three strips of LEDs are affixed to the aluminum bar. That sandwich of materials is then embedded in a wooden base (currently a 2x4 scrap) that will house the electronics.

    This was one of my first designs but only now have I gotten skilled up enough with Fusion 360 CAM and CNC on the ShopBot (thx Dan!) to actually realize this. I'm pleased the end result looks pretty close to the original design and the renders.

    The three LED strips are comprised of two WWA (three color temperatures of white) and one strip of RGBW (a 4-channel variant of the popular WS2812/Neopixel strip). This means we can do RGB colors! A first for the lamps.

    To join the two WWA strips together, I created a new 20mm 180º NeoJoint board. Again, thanks to the Othermill, I can create these on-demand (and a make a few extra just in case)

    To create the wood pieces, I took my CAD design in Fusion 360 and with the help of Dan I created a CAM path for the Shopbot. We then milled out the two pieces from 1/2" baltic birch plywood.

    One problem we had was chip-out of the thin edge pieces (as seen in the above image). Part of this we think was due to the endmill being a little dull, part of it because the 1/4" endmill wasn't suited for delicate work. The next time we do this, it seems we should use the same 1/8" endmill we used for the channels for an initial pass. before switching to the 1/4" for the cutout.

    With the wood parts cut out, I spent some time sanding them and using some wood filler to attempt to fix the chip-outs. And then it was time to assemble it all. I hand bent the 1/16" aluminum bar and used 5-minute epoxy to affix it to the wood pieces.

    The original design had 1/16" channels but we created 1/8" channels because that's then endmill we had. In general this was a better solution I think, but it did mean I had some play with the 1/16" aluminum, so I used clamps and wood discs to attempt to push the metal bar against the outer edge of the channel. It mostly worked but was fiddly.

    The electronics driver hasn't been addressed yet, so there's this little bit of embarrassment at the back of the lamp. :-)

    While it's not done yet, it's looking pretty good. The design is perhaps a bit thick for a desk lamp. I may be able to thin it out, or use this idea for a floor lamp.

View all 20 project logs

Enjoy this project?



Saad Mir wrote 10/27/2023 at 02:27 point

It is a huge addition in the enhancement of room presence. All the designs are very nice. I would love to share it through my website also.

  Are you sure? yes | no

palmexlepear wrote 04/21/2023 at 11:49 point

There has been a great deal of value to me in my involvement with the project. Would like to share it with the 1155 meaning love team so they can also read it and implement something new.

  Are you sure? yes | no

fool wrote 08/10/2017 at 16:25 point

Have you ever played with EL materials?  Please get in touch if you are interested!  We threw up a store recently:

  Are you sure? yes | no

sanjayjaishy1994 wrote 05/27/2017 at 05:49 point

Hi, Can you tell me some new ideas on mini projects for first year
engineering student and which contain mechanical, electrical and
programming ideas?

  Are you sure? yes | no

Fabio wrote 05/26/2017 at 21:15 point

Hi, can I ask you about the wifi module? What's that for! Thanks I love your lamps!

  Are you sure? yes | no

todbot wrote 05/26/2017 at 22:06 point

Hi Fabio,  it's a Wemos D1 mini ESP8266 module.  I'm not using the WiFi aspect of it, just the fact that it's a fast cheap ($3 USD) Arduino-compatible that has a lot of RAM (96KB vs 2KB in Arduino Uno) and is USB-programmable.

The other microcontroller I use is an Arduino Pro Micro, which is based on an ATmega32U4.  It's also around $3 USD and also USB-programmable.  It's nice because it runs at 5V instead of 3.3V and has multiple analog inputs. But like the original Arduino, it only has 2KB RAM. 

  Are you sure? yes | no

lomhow1234 wrote 03/14/2017 at 18:53 point

dude, i love lamp too xd

  Are you sure? yes | no

Benchoff wrote 03/11/2017 at 02:01 point

Are you just looking at things in the design lab and saying you love them?

  Are you sure? yes | no

michael.biggs.home wrote 03/11/2017 at 01:40 point

Hi Todd, are you familiar with the magnetic angle sensor chips? Those can be used to make a very high resolution rotary encoder. Not as cheap as the mechanical versions, but reasonable.

  Are you sure? yes | no

todbot wrote 03/11/2017 at 03:22 point

Hi Michael,

I've been looking into them now after having discounted them for only being for motor speed uses. If you have a chip / dev board / eval kit recommendation, I'd love to check it out. Thanks!

  Are you sure? yes | no

michael.biggs.home wrote 03/11/2017 at 07:42 point

I haven't used one, but what I've seen is made by AMS, e.g. AS5030 8-bit resolution for $6.66 at DigiKey. You just put a little rotating bar magnet above the chip.

  Are you sure? yes | no

Jegan.J wrote 03/08/2017 at 10:17 point

Hi,can i able to connect 43 inches LED TV(1920*1080) to FleaFPGA Uno Board, and can i able to the sensor data display to the big LED TV

  Are you sure? yes | no

todbot wrote 03/10/2017 at 03:17 point

Hi @Jegan.J, this is not the appropriate forum for this question. You should try the HackChat:

  Are you sure? yes | no

Jegan.J wrote 03/08/2017 at 10:15 point


  Are you sure? yes | no

todbot wrote 03/06/2017 at 23:28 point

Hi @zakqwy,  That sounds like a really cool product.  And thanks that's very generous. I think I can get the Design Lab to order some for their stock. Do you have a link I can send them?

  Are you sure? yes | no

zakqwy wrote 03/07/2017 at 00:09 point

I picked up the 5500K high-CRI stuff (p/n RF5500K-96), it's $137 for an 8x11" sheet.

  Are you sure? yes | no

zakqwy wrote 03/03/2017 at 16:04 point

I picked up an 8.5x11" sheet of PhosphorTech remote LED phosphor material a few years ago with no specific project in mind. It's not cheap and I'd be happy to donate a bit to this project if it helps your exploration. Shine blue light at it and it emits white, in a quite satisfying and diffuse manner. 

  Are you sure? yes | no

todbot wrote 03/07/2017 at 19:11 point

Neat, thanks! wow that stuff *is* expensive.  I'll think about how I can use it. I'm not sure yet how I could use a phosphorescent material but wow that stuff looks cool.

  Are you sure? yes | no

zakqwy wrote 03/07/2017 at 19:32 point

Yeah, it's intended to be used in tiny quantities for white LEDs. I've found it produces an excellent surface emitting/diffusing effect when paired with bright blue LEDs. 

  Are you sure? yes | no

Simon Merrett wrote 03/09/2017 at 12:50 point

I've been wanting to make a lamp by shining 405nm laser at phosphorescent surfaces because you could use transparent mounts and make the lights appear to be wireless.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates