Skip to content

Interactive decorative lamp inspired by Thor’s hammer (Mjölnir), developed in ADA525 – Rapid Prototyping. Combines digital fabrication and physical computing with motion-based light control and cloud-based remote operation.

Notifications You must be signed in to change notification settings

h599032/ADA525Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Thor’s Hammer – Interactive Lamp

An interactive decorative lamp inspired by Thor’s hammer, Mjölnir, developed in the course ADA525 – Rapid Prototyping. The project combines digital fabrication and physical computing to create a unique lamp with motion-based light control and cloud-based remote operation.

Features

  • Aesthetic design: 3D-printed hammer with a “cracked” pattern that lets light through.
  • Motion-based lighting: Accelerometer detects movements (lifting, shaking, etc.) and triggers different LED effects.
  • Remote control: Connected to Arduino IoT Cloud – turn on/off and change colors via dashboard.
  • Two modes:
    • Motion mode: Lights change automatically based on motion.
    • Manual mode: Users select colors and brightness via the dashboard.
  • Battery-powered: More portable and responsive than USB-powered operation.

Technology

  • Microcontroller: Arduino Uno R4 Wi-Fi
  • Sensor: Accelerometer (3-axis motion sensor)
  • Output: LED strip (controlled via FastLED library)
  • Cloud: Arduino IoT Cloud for dashboard and remote control
  • Programming: Arduino C++ (connecting sensor data, LEDs, and IoT Cloud)
  • Digital fabrication:
    • CAD modeling through multiple iterations
    • 3D printing of hammer in sections with pegs and slots

Process

The project began with the goal of creating an interactive lamp that functions as both a decorative object and a practical light source.

Initial design sketches featured a transparent panel, but this exposed too much of the interior. The solution was a “cracked” pattern that allows light to shine through while concealing the components. The hammer was split into multiple parts (head in two, handle in two) for easier 3D printing and assembly. The pattern was manually applied to each surface in CAD, using an SVG imported from an iPad drawing.

Hammer with cracked design

During 3D printing and assembly, test prints were used to check dimensions and fit. Pegs and slots were primarily used to connect the parts, with glue added for additional strength. End caps were initially printed incorrectly, with temporary fixes applied. The interior included a board to mount the Arduino, accelerometer, and breadboard, while an LED strip was wrapped around it to ensure even light distribution.

First print of a scaled down version of the hammer to check dimensions and joints

Electronics and programming involved connecting an Arduino Uno R4 (for built-in Wi-Fi) to the accelerometer and LED strip. Accelerometer readings were normalized to RGB values to control the LED strip using the FastLED library.

The Arduino IoT Cloud dashboard displays real-time sensor data, allowing users to change colors, turn the lamp on or off, and switch between motion and manual modes.

Throughout development, several issues were resolved:

  • Sensor noise:
    • Initially unstable signals → resolved by soldering and battery operation (more stable power).
  • CAD challenges:
    • Difficult to project pattern onto square surfaces → solved by drawing one face at a time.
  • Color conversion
    • Dashboard used HSV, LED strip required RGB → conversion implemented in code.
  • Testing
    • Movements like lift/shake → triggered different light patterns.
    • Dashboard control worked with minimal delay.

Demo

Supplies

  • An Arduino with wifi, I used UnoR4
  • LED-strip
  • Accelerometer

Setup in Arduino Cloud

  1. Set up an arduino cloud account and click into "Things"
  2. Add a thing and call it ThorsHammer
  3. Set up the device you want to use by clicking "Select Device" under "Associated Device". Follow the instructions for setting up a new device.
  4. Add cloud variables according to the picture:

  1. Go into sketch and add the code in ThorsHammer.ino into the .ino file.
  2. Add a "Secrets Tab" and fill in sketch secrets which will be the wifi connection settings:
  • SECRET_OPTIONAL_PASS
  • SECRET_SSID

When you are connected to the microcontroller and set up the code you can run the code onto the controller. To get a dashboard you need to go to "Dashboards" in menu. Here you can add different widgets based on the associated cloud variables of the things. I added:

  • A switch for UserOrAutomatic variable
  • A Colored light widget for the LED variable
  • A chart for each of the accelerometer variables (x,y,z)

About

Interactive decorative lamp inspired by Thor’s hammer (Mjölnir), developed in ADA525 – Rapid Prototyping. Combines digital fabrication and physical computing with motion-based light control and cloud-based remote operation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages