NeoPixel Ancient Oil Lamp

by raul7321 in Circuits > Arduino

8941 Views, 153 Favorites, 0 Comments

NeoPixel Ancient Oil Lamp

WhatsApp Image 2021-01-20 at 7.39.44 PM.jpeg
IMG_20210114_121602.jpg
IMG_20210114_121804.jpg
IMG_20210114_121937.jpg

In this Instructable, we will describe how to turn a "retro" oil lamp into a NeoPixels based rechargeable lamp with colorful light effects.

Supplies

  • Arduino nano
  • 12 bits NeoPixel ring
  • Micro USB 5V 1A TP4056 Lithium battery charger module
  • 3.7V 9800mAh Lipo Li-polymer Battery
  • Rotary encoder Ec11 or KY-040 Module
  • Self-locking square button switch
  • An Oil Burning Lantern (https://www.amazon.com/Dietz-76-Original-Oil-Burning-Lantern-Red/dp/B00MFU0XGO/ref=cm_wl_huc_item)
  • Eight 3D printed parts (please find the STL links)

Disarm the Wick Mechanism.

IMG_20210117_143026.jpg
IMG_20210117_143202.jpg
IMG_20210117_143249.jpg
IMG_20210117_143400.jpg
IMG_20210117_143657.jpg
IMG_20210117_143719.jpg
IMG_20210117_143908.jpg
IMG_20210117_144010.jpg

Remove the glass jar by pulling the top of the lamp (as seen in the first and second photo), and then remove the wick holder (third and fourth photo).

Remove the wick adjustment mechanism by unfolding the foil tabs (fifth photo).

Cut the knob wire just near the cogwheel.

The Encoder Support.

encoder.jpg
IMG_20210117_141438.jpg
IMG_20210117_142721.jpg
IMG_20210117_145802.jpg
IMG_20210117_145040.jpg
IMG_20210117_151037.jpg
IMG_20210117_151056.jpg
IMG_20210117_151520.jpg
IMG_20210117_151531.jpg
IMG_20210118_104801.jpg

Identify the encoder pins as shown in the first photo. Solder a wire between the two pins marked as GND (third photo).

Solder a cable on each one of the pins (out A, out B, switch, and one of GND) we suggest mark the end of the cables in order to identify the encoder pins.

Attach the 3D printed coupling in the encoder knob (sixth photo).

Insert the wick knob in the 3d printed encoder support (maybe you would need to adjust the hole so the wick knob wire can rotate freely (see the seventh photo).

Insert and glue the wick knob in the 3D printed coupling as shown in the eighth photo.

Glue the encoder to it's placed in the support (ninth and tenth photo).

Replace the Wick Mechanism for the Encoder Support.

IMG_20210118_184905.jpg
IMG_20210118_185059.jpg
IMG_20210118_185610.jpg
IMG_20210118_190438_1.jpg
IMG_20210118_185632.jpg

Use a rotating tool to enlarge the knob notch, so the module constructed in Step 2 can fit in the top of the piece and glue it (be sure that the knob can rotate freely).

Wiring and Fitting of the NeoPixel Ring.

IMG_20210118_150703.jpg
IMG_20210118_105631.jpg
IMG_20210118_105713.jpg
IMG_20210118_110319.jpg
IMG_20210118_110528.jpg
IMG_20210118_110806.jpg

Solder a wire in each Di, 5V, and GND contacts of the NeoPixel ring. It's a good idea to mark the end of the cables with a color in order to identify them.

Glue the NeoPixel ring to the 3d printed isolator and glue it in its place in the lamp as shown in the photos.

The Switch

IMG_20210118_181130.jpg
IMG_20210118_181320.jpg
IMG_20210118_181357.jpg
IMG_20210118_181755.jpg
IMG_20210118_182611.jpg
IMG_20210118_182750.jpg
IMG_20210118_182824.jpg
IMG_20210118_225144.jpg
IMG_20210118_225446.jpg
IMG_20210118_225455.jpg

Solder two wires to the switch contacts. Pass the wires through the 3d printed support and glue the switch as shown in the photos above.

Remove the plastic seal in the oil tank and pass the wires through the hole and glue the support. Take the cables out through the wick hole.

Drill a hole in the oil tank cap's bottom to avoid activating the switch when screwing on the cap.

Mounting the Charger

IMG_20210118_191829.jpg
IMG_20210118_192257.jpg
IMG_20210118_193813.jpg
IMG_20210118_194511.jpg
IMG_20210118_204447.jpg
IMG_20210118_204524.jpg
IMG_20210118_204459.jpg
IMG_20210118_204652.jpg
IMG_20210118_204746.jpg
IMG_20210118_204811.jpg

Remove the chimney cover with the help of a screwdriver, taking care not to mistreat the paint.

Pull the chimney out up to the top, and drill a hole in the lowest chimney's side, as shown in the third photo.

Take 40 cm of four ways ribbon cable and mark both ends of the first and fourth with red and black in order to identify these, as shown in the fourth photo.

Now, get yourself a lot of patience! The goal is to pass the ribbon cable through the right lamp's arm all the way to the top. Push the ribbon cable as shown in the fifth photo. Push it slowly and firmly up to when the ribbon cable comes to the top and pass through the hole that you drilled in the chimney's side (see the sixth photo).

Protect the ribbon cable with a 5cm Thermofit's piece passing it through the chimney's side hole, as shown in the three last photos.

Wiring and Mounting the Charger

IMG_20210118_205927.jpg
IMG_20210118_210329.jpg
IMG_20210118_210421.jpg
IMG_20210118_210729.jpg
IMG_20210118_211047.jpg
IMG_20210118_212111.jpg
IMG_20210119_114959.jpg

Solder the upper extreme of the ribbon cable as shown in the first picture; the cable marked in black at the "out -" pin, the following at the "B -", the next at "B +" and the last one (marked in red) at "out +" pin. The inner two cables ("B -" and "B +") will be connected to the battery later.

Mount and glue the charger in the 3d printed support as shown in the second and third photo. Glue the support to the chimney as shown. Glue the 3d printed lid.

Put back the chimney cap by bending the foil to fit it.

Prepare the Oil Tank

IMG_20210118_182828.jpg
IMG_20210118_192801.jpg
IMG_20210118_193020.jpg
IMG_20210119_093957.jpg
IMG_20210119_094410.jpg

Sand the supports of the wick mechanism in the oil tank in order to solder the encoder cover mounted in Step 3.

Enlarge the oil tank hole by making two cuts so that the battery can pass through. Fold the foil inside the tank to avoid sharp edges.

Wirng the Arduino

IMG_20210119_100032.jpg
IMG_20210119_100053.jpg
IMG_20210119_100649.jpg
Lamp.jpg
IMG_20210119_110136.jpg

Solder the red marked cable (from the OUT+ charger pin) to one of the switch cables. Isolate it with Thermofit.

Pass the NeoPixel ring cables through the encoder cover.

Make the connections following the diagram.

Wiring the Battery

IMG_20210118_213337.jpg
IMG_20210118_213343.jpg
IMG_20210118_213857.jpg

Solder a cable in each pole of the battery and isolate them with tape.

Almost Finish!

IMG_20210119_112556.jpg
IMG_20210119_113101.jpg
IMG_20210119_114500.jpg
IMG_20210119_114631.jpg
IMG_20210119_114642.jpg
IMG_20210119_114805.jpg

Solder the battery cables to their corresponding ones from the charger (B+ and B-). Isolate each one with tape or Thermofit.

Glue the Arduino to their 3D printed case and lid.

Now is time to plug the Arduino into the computer and transfer the program lamp.ino

Put the battery and Arduino inside the oil tank.

Place the encoder cover in its place and solder it to the tank, as shown.

Downloads

IMG_20210119_121657.jpg
IMG_20210119_123123.jpg
8ce8b172-4fe1-4a0f-8109-69f9e4bc1f2b.jpg
WhatsApp Image 2021-02-04 at 12.21.32 PM.jpeg
WhatsApp Image 2021-02-04 at 12.20.49 PM.jpeg

To give the frosted finish to the jar, you can use some spray paint, such as the Rust-Oleum one.

For that, cover the outside jar with paper and tape. Follow the spray's instructions to paint the inner side of the jar.

Finally put back the jar in their place.

You can glue and paint a magnet in the tank to hold the cap.

Charge the battery by connecting a micro USB cable to a USB port.

Make It Glow!

NeoPixels Oil Lamp

Turn on with the switch in the oil tank.

Turn the knob to the left or right to decrease or increment the intensity. Push it to change the light's color.