← back

Bloc Lamp

Full-Stack DeveloperFrontend DeveloperIoT InventorUI / UX Designer

Lighting is often functional, but it can also be expressive, emotional, and deeply personal. Bloc Lamp explores what happens when form, colour, and interaction converge in a single object. Inspired by the clean geometry of La Maison de Verre and 70s glass blocks, the project transforms a simple modular shape into a canvas for light, emotion, and time itself.

Year
2025

Stack

  • MQTT
  • UI/UX Design
  • TypeScriptTypeScript
  • TailwindCSSTailwindCSS
  • FigmaFigma
  • C
  • Electronics
  • SupabaseSupabase
  • Product Design
  • Fusion 360
Bloc Lamp

House of Glass

The Bloc Lamp reimagines modular lighting as a tactile, emotionally responsive object. Drawing from the clean geometry of glass blocks, I simplified the shape further using principles of Pragnanz, creating a single block form that becomes the focus of interaction. Its minimal axes of control (up/down for brightness and left/right for hue) allow users to intuitively explore light, translating gestures into a personally unique colour.

Image

Bringing seasonal and emotional lighting to life

Users can choose from curated seasonal presets, such as fresh yellow-and-green palettes for spring or warm cinnamon tones for autumn. An “Aura” mode interprets emotional lighting through colour psychology, offering settings like joy (vibrant blends) or focus (green tones), designed to enhance wellbeing over the course of the day.

Every interaction embedded in the glass block and reflected in UI

The mobile/hybrid React app mirrors the physical form, providing real-time feedback while preserving the tactile simplicity of the lamp. Users can adjust brightness, hue, or select a preset while watching the colour respond instantly, bridging digital control and physical experience.

Image

Over the Air

I developed the ESP32 firmware in C, communicating via MQTT for real-time control. This setup enabled a robust remote firmware update system: compiled firmware is stored in organised cloud buckets, and the app checks and prompts updates automatically, awaiting user confirmation. This marked my first hands-on experience with over-the-air firmware delivery, yet has proven itself to be reliable.

Image

Connectivity redesigned

Instead of relying on generic WiFiManager interfaces, I built a custom setup using REST APIs, visualising real-time connection statuses on the lamp itself. This personal touch ensures that even setup feels coherent with the Bloc Lamp’s design language.

Taking colour control to another level

Using the x and y axes, user inputs are mapped to unique colours. I reused algorithms to blend and name the resulting hex codes, allowing users to save or share precise combinations. This system supports both manual exploration and curated experiences.

Image

Each layer optimised for responsiveness and immersion

From embedded code to front-end interactions, the system was tuned for real-time performance. LED transitions, hue mapping, and app feedback are smooth and immediate, enhancing the feeling that the lamp is alive and responsive to the user’s touch.

Related work