
A candle inspired by water. Instead of fire or a button, the rising water level changes the brightness and color of the light, casting wave patterns across the surface. As water is poured in, the orange fire-light fades and a blue water-light brightens in its place — turning the gesture of filling a glass into a new way to ignite a flame.
With Ellie Huang.
Inspiration
The candle was meant to reflect water — to carry the motion of waves in its light and shift color as the level inside it rose. We also wanted to replace the familiar mechanisms of a candle, fire or a switch, with water itself as the medium of ignition.
References: Magical Arduino Fountain · Witaya Junma — Water Lamp


Process — Sensors & Water Level
We tested three approaches to reading the water level: an ultrasonic sensor, a time-of-flight sensor (VL53L0X), and a weight sensor (HX711). The weight sensor won — it responded accurately and immediately to poured water, while the optical sensors were thrown off by the clarity of the liquid and the transparency of the vessel.

Process — Light & Material
The hardest problem was finding a housing that could cast visible waves. We cycled through acrylic, plastic bottles, circular plastic cans, and glass, looking for a wall thin enough to transmit light but textured enough to show ripples. Plastic bottles reshaped with a heat gun gave us the pattern we needed without the weight or fragility of glass.




Process — Light Test
Two Neopixels sit inside the vessel — one tuned to fire, one to water — controlled by Arduino. Using a HSV color demo we mapped the HUE bands for each channel:
- Fire light: HUE 8000–10000 (orange)
- Water light: HUE around blue
The logic: when the user begins pouring, the fire-light is at full brightness. As the water rises, the orange dims and the blue brightens — the act of filling becomes the act of dousing, and of lighting something new in its place.

Videos
