User avatar
By RichardS
#43723 User
hottuna

Description
The project is a WiFi connected LED bulb. Every LED on this bulb is individually programmable over the WiFi, by simply sending UDP packets to the bulb.

Software and hardware sources

This project consists of 3 parts: the software running on the led bulb, the software running on some host computer and the hardware.

Firmware
Additionally it's running 3 lua scripts that deal with different aspects.
There's init.lua which makes sure we're connected to a WiFi.
udp_listener.lua receives UDP packets and then sends forwards that data to the APA102 strips.
And lastly udb_broadcast.lua which periodically broadcasts a heartbeat for this LED bulb to signal that it is alive and well.

Host application
The current (as of the publish date of this post) incarnation of the host application listens for bulbs that are alive on the hosts network. If a bulb is found is will be added to the list of bulbs to be animated. All animations are simple and sinusoidal and only use the time a bulb has been 'alive' as an input for the animation.

Hardware
The hardware is based around the ESP8266 WiFi IC and the APA102 SPI LED IC.

The flavor of ESP8266 used in this project is the ESP12-F module, since it the latest module available with the integrated antenna form factor.

APA102 was chosen instead of the much more common WS2812B chip, since it uses a SPI like protocol which isn't timing sensitive and also does not require external capacitors at next to each LED.

Parts
See attached CSV

Links
Github

Video

Images
Attachments
(3.83 KiB) Downloaded 629 times
v2_running.jpg
v3.1_schematic.png
v2_3d_model.png
v2_95pct_assembled.jpg
v2_running (1).jpg
v2_95pct_assembled.jpg