Introduction: Lithophane Tea Lights

My previous Instructable that produces Lithophanes of your pets for outdoor light fixtures: https://www.instructables.com/3D-Printed-Pet-Lights/ was a nice introduction to the handy 3D printing of photos and their use in a variety of electronic projects. Calming tea candles in restaurants have been supplanted by twinkling LED's that seem to lack something as an attractant to dining participants. While recently building another Instructable I liked the image of the candle developed as a lithophane and wanted to use it in a table tea candle. There are a huge number of tea light LED projects on the web and this is another short one that I hope you like. It uses a small Xiao microcontroller (ESP32 S3) for the lighting effects and a readily available LED filament and rechargeable battery. The whole unit is 3D printed and costs about $10. The battery will last at least a day and is recharged with a USB-C connector.

Supplies

To get this to print elegantly you really need a decent 3D printer. I cant say enough good things about the Bambu Labs P1 printer. It works flawlessly. I was recently doing a class for a local HS in 3D printing/design and spent the afternoon attempting to put together their hastily purchased group of printers knowing that the kids were going to have such a hard time achieving good results.

  1. Xiao Esp32 S3 $6
  2. LithoBattery 1200 mah $3
  3. Mini on/off switch--"micro push button switch" Amazon
  4. LED filament 26mm 3 V $1 Adafruit (These filaments in slightly longer sizes are readily available everywhere....)
  5. NPN transistor Bipolar generic
  6. Resistors 1k, 22 ohm

Step 1: Print the Parts

All 3D printed parts are build with Bambu P1 printer with support where it is needed. PLA mat finish is used in white and black colored filaments.

Step 2: Wire It Up

The wiring diagram is included above. The only difficult parts are wiring the battery connections to the back of the Xiao ESP32 unit...the pads are tiny and should be tined with solder before attaching small wire ends that should also be pre-treated with solder. The battery ground is directly connected to the back and the positive lead is broken up via the on/off switch. D3 is randomly assigned to be the GPIO output for the flickering effect but you can of course use any of the outputs. This is run through a NPN transistor because the milliamp output from the GPIO pin would probably not be adequate for the light. Power to the filament is connected from the 3 volt output of the ESP and a 22 ohm resister is either included before or after the filament. D3 is brought through a 1 k ohm resister to the base of the transistor and the emitter is connected to ground and the collector is connected to the output of the filament.

Step 3: Build It


The unit bottom box has an insert for both the micro on/off switch that leads out through the bottom and a holder for the Xiao ESP32 S3 with a oriented slot for the USB-C charger terminal. Mounting the filament in the holder is the only delicate section of the build. If you are using a longer filament, many available on the web for cheap you will have to modify the length of the holder. The size from Adafruit fits perfectly after the 26 g. wires are soldered to the to ends. The anode (plus) side has a small hole in its end to designate it. Be very careful handling these filaments they are extremely fragile and will snap in the middle with any rough handling. Don't clamp these filaments in the third hand units of any kind or they will become dead. The wires lead out through the supplied holes in the box top and the holder. Superglue the top portion of the filament holder in place. Use a small dab of hot glue where the filament meets the base to hold it in position. When all of the rest of the wiring is done secure the on/off switch in its recess with superglue. Use hot glue to secure the battery to the floor of the box and the ESP32 to its holder. Make sure the USB-C extends out through the window. I cover the transistor and its connections with heat shrink to protect it from shorting. All wiring is placed within the box and the filament holder is superglued to the top of the box cover. The box cover is then superglued to the lower box unit and sealed.

Step 4: Program It

The code for the candle is very simple. You set up your output as D3 or any other pin on your board. The rest of the code just delivers random bursts of light to the unit. I borrowed the code from some other candle type software on the web but there are many and you can choose another if you wish. The advantage of using this microcontroller is the variable software you can try. You can be inventive and have it ride sin waves for the whole evening. If you really want to be inventive you could take advantage of its wifi and bluetooth options and have patrons control the output from their phone or use a microphone and digitalize the conversations at the table in light speak.

Step 5: Using It

The unit has been happily providing evening light for us for this winter. The battery lasts quite a while as the filament ends up being dimmed for most of its cycling. The unit is charged through its USB-C port on the side and you can monitor the charging through the small hole in the case that spies on the charging LED...it flashes if charging is in progress. The unit does not have to be limited to candle tropes -- anything you can imagine can be put on display. If you are a restaurant with a fish bent your fare is easily displayed with a change in the 3D printed image. In this case I used the site: https://3dp.rocks/lithophane/ to develop the images but anything can be used. The fish image is AI generated as sardines don't usually have such large eyes. But a playful Udon display might be fun....