Flickering LED Candle

Finished Candles

Convert a standard wax candle into a realistic flickering LED candle. Candles are great for enhancing the ambiance of a room but they deteriorate when used and having a naked flame in your house can be dangerous. My goal was to preserve the look and smell of a traditional wax candle while overcoming their disadvantages.

I've created a video detailing this process, take a look and consider subscribing to my youtube channel.


  • Arduino Uno or Arduino Duemilanove with ATMega328 and breadboard to program the ATTiny85 microcontroller.
  • Soldering equipment
  • Hot glue gun
  • Utility Knife
  • Drill with spade bit


  • ATTiny85 microcontroller. Other ATTiny variants will probably also work but this is the one I used.
  • 8 pin microcontroller socket (optional)
  • Orange LED.
  • Switch
  • 1 ohm resistor. This value is calculated based on the use of a 3v power supply and LED with 3v - 3.2v forward voltage.
  • Screw terminal (optional)
  • Small piece of proto board
  • 3v battery pack and AAA batteries.
Programming Equipment

I'm a programming novice with basic knowledge of C and Java. With my limited experience, I find coding using the Arduino environment simple and productive so I wanted to use one for this project. An Arduino is too large and expensive to install in the candle to control the LED flickering therefore an ATTiny85 microcontroller will take its place as they're only a few dollars and capable of the task. Thankfully, I can use an Arduino to program the ATTiny85 which allows me to write the program in the Arduino code that I'm comfortable with and I don't have to purchase an AVR programmer.

Programming with Arduino

I've written the LED flickering sketch in the Arduino 1.0 software and used an Arudino Uno to program the microcontroller. High-Low tech have written some excellent articles on using the Arduino to program an ATTiny (Arduino Board as ATTiny Programmer, Programming an ATTiny w/ Arduino 1.0). Download my flickering LED sketch at this link.

Testing ATTiny with Arduino

The LED pulses in sets. The program randomly selects the amount of pulses in each set, alternates the brightness level of each pulse and delay between sets. Values can be adjusted to change how it will behave so customise to your liking. It does the job but I'm sure there's improvements to be made. If anyone can make any advancements, just send me the code and I'll add it to the article.

Once programmed, test that all is well by removing the Arduino. Adding an LED and 1 ohm resistor to Pin 5 (referred to as Pin 0 in the Arduino sketch). Connect a 3v power supplies positive to pin 8 and negative to pin 4. The LED should periodically flicker. I also tested mine using the Arduinos 5v supply and a 150 ohm resistor on the LED.

Testing ATTiny with Battery

Take care when working with the candle as they're easy to damage. Lay a rag on your work surface to protect the candle and allow removed wax to be easily disposed. If you watched the video, it's pretty obvious I should have used a bigger rag when boring the hole with the spade drill bit. Wax went everywhere! Drill out the base using a spade drill bit to accommodate the height of the circuit board and battery pack. This was about 25mm for my project.

Battery Socket

You'll then need to carve out a snug fitting battery compartment with a utility knife to insert the pack. Wax is fairly soft so just take it slow and don't lose a finger. The battery pack will be a friction fit and responsible for holding the circuit board in the cavity we created with the spade bit.

Carving Battery Socket

Remove the candle wick and drill a 4mm hole to allow the LEDs wires to pass through.

Wick Removed, Hole Drilled

Assemble the circuit as per the diagrams included in this step. I've added schematic and pictorial style circuit diagrams.

Pictorial Circuit Diagram
Schematic Circuit Diagram

Using a socket for the microcontroller is optional however it will prevent you from accidentally destroying the IC with the heat from your soldering iron and allows you to update or modify its code down the track by simply pulling it from the board.

Flickering LED Circuit

Solder some wires to the legs of the LED and insulate them with some heat shrink tubing or tape.

Wires Added to LED

Thread the LEDs wires through the top of the candle and connect them to your circuit board. Insert some batteries and ensure it all still works and is connected correctly.

Flickering LED Circuit

Place the circuit board in the cavity and slot the battery pack into its socket to seal it all up. As mentioned earlier, the battery pack should fit firmly.

Partially Assembled

If not, you made need to add a little padding to fill the gaps and get a tight fit.

Battery and Switch Installed

I secured the switch to the side of the battery pack with some hot glue to finish it off.

LED Installed

To make the LED look more at home on the top of a candle, add small dobs of hot glue and shape with a toothpick until you've built an imitation hot glue flame.

Hot Glue Flame

You're done! Build your own customised versions like this three candle coffee and chocolate verison.

Three Candle Choc Coffee Design