I salvaged some decommissioned street lights from the local transfer station. I suspect they adorned the main street of Woodend in the past and would now look good in our garden. They were banged up but mainly intact.
So I straightened them up, painted them, and made mounting brackets from gal water piping.
Inside I stripped out the ballast and all of the electrical components that powered the high/low-pressure sodium.
I’m not sure if it is standard, but mine had the globe holder mounted on an aluminum bayonet.
I made a two-piece plastic holder adapted to a Glowbit Matrix. The holder sandwiches and isolates the Glowbit Matrix carrier from any metal. On the back, over the electrical tape, is a DC-to-DC converter and an RP2040-zero to drive the matrix.
I then wired up the lights to 12VDC, connected the new replacement module, and locked the bayonet fitting in place.
You could put a Wi-Fi-enabled MCU instead and go crazy, but for this application, I’ve kept it simple. We have many garden lights already. The Python code just drives all the LEDs to the same RGB value.
from machine import Pin import neopixel numPixels = 64 NeoPin = Pin(14,Pin.OUT) Neo = neopixel.NeoPixel(NeoPin,numPixels) def Flood(r,g,b): for k in range(numPixels): Neo[k] = ((r, g, b)) neopixel.NeoPixel.write(Neo) Flood(255,139,21) # iPhone measure 3250 K on grey card reflection
In our case, we (meaning my partner) wanted an exact colour temperature match to our existing garden lighting, which is about 3250°K.
WARNING, with the selected DC to DC you can not drive all LEDs to max.
In my setup, I measured 250mA at 12V.
See my GitHub for print design and models.