Update 28.10.2022: Original fitting between top and flame is loose and requires a bit of silicone or soft glue. Files flame_v2 and top_v2 provide tight fitting with 0.3 mm tolerance.
Automatic night torch that turns on when it gets dim and off when light returns. The torch is brightest when it is dim. When it gets dark, the brightness of the torch becomes roughly like that of a small candle in order not to be too bright in the middle of a night. Occasionally the flame performs short dances in the colors of the rainbow. The flashes are by default quite short and infrequent, but it should be easy to find and modify them in the sketch.
The flame is created by two Neopixel rings controlled by Arduino Nano and an LDR. Video: https://www.youtube.com/watch?v=D7vLI621fJY
The torch is a remix of https://www.thingiverse.com/thing:3625487. The body has been modified to fit Arduino Nano and an LDR. The flame has been modified to house the Neopixel rings.
In addition to 3D printed parts, the following are needed:
1 Arduino Nano without header pins
1 Neopixel LED ring, 12 LEDS, outer diameter 37mm
1 Neopixel Jewel, 7 LEDS, outer diameter 23 mm
1 Light dependent resistor (LDR)
1 Resistor 47 kΩ
1 Power supply 5V (USB charger)
Components are connected to the following Arduino terminals: LDR to A4, Neopixel data D4. Connect the DATA IN of 12 LED Neopixel ring to D4. Connect the DATA OUT of 12 LED ring to DATA IN of Neopixel Jewel. Make sure that the Neopixel initialization is correct for your devices (specifically NEO_KHZ800 or NEO_KHZ400).
For the flame, I used transparent PLA, without supports. Other files were printed using black PLA, supports may be needed.
bottom.stl | 538.5KB | |
bottom_ring.stl | 157.0KB | |
flame.stl | 8.4MB | |
flame_v2.stl | 11.8MB | |
mirror.stl | 247.3KB | |
NightTorch_3.ino | 8.0KB | |
top.stl | 1021.5KB | |
top_ring.stl | 1.2MB | |
top_v2.stl | 1.6MB | |
wall_mount.stl | 519.5KB |