G5 Lamp

G5 Lamp

Started on 07/18/2024

17 hours in total

A bespoke internet-connected lamp with brightness control made from upcycled materials.

Details

What is it?

The G5 Lamp is an internet-connected bespoke lamp with brightness control. The face of the lamp is made of the CPU heatsink cover from the inside of an old Power Mac G5. This cover connects to a piece of scrap wood which the electronics are also mounted to.

Electronics

The main microcontroller is an ESP01, which has 2.4GHz wifi support. The resources of the chip are rather limited, but it's enough for what I need it to do. To control the LED strip I am using a TIP120 MOSFET which is receiving a PWM signal from the ESP01 to dim the LEDs.

Why did I make it?

I made this project because I was already planning on hanging the G5 emblem up on my wall, and I also already had the LED strip dimming circuit made. So during a particularly slow summer I put the two together and made this lamp.

How it works

The G5 Lamp's startup sequence is similar to that of the [[Cube]]. When powered on, it goes through a series of setup steps:

  1. It initializes the GPIO pins for the LED strip.
  2. Then it initializes the EEPROM to fetch the saved network details.
  3. After that it mounts the file system and fetches the .env file containing settings.
  4. Finally it connects to WiFi, sync the time, and connect to the HiveMQ MQTT server.

After startup it will sit idle listening for MQTT messages. These messages contain up to three pieces of information: The target brightness, if it should fade or not, and the fade duration. When you just send it a number between 0 and 255 it will jump to that brightness. When you prepend the letter f (f[0-255]) it will fade using a default fade duration. When you prepend a number and then the letter f it will fade for as many milliseconds as the number before the f ([fade duration in ms]f[brightness: 0-255]).

Images

Swipe for more...

© 2026 Daniel Stoiber

Built with ❤️ and purpose.