Introduction: Fun Party LED Drinks Coaster

This is a fun LED battery powered drinks coaster for parties - has 11 different selectable patterns. Created with WS2812b LED strip and Raspberry Pi Pico microcontroller.

Supplies

WS2812b LED Strip - 60 pixels per meter - requires 36 LEDs - about 60cm of strip.

Rasperrby Pi Pico Microcontroller

TP4056 Lithium Battery Charger module either USB C or USB Micro

EEMB 3.7V Lipo Battery - ~1200mAh - size no bigger than roughly 58mm x 38mm x 6mm

SPDT ON-Off Miniature Slide Switch

6mm x 6mm x 5mm Momentary Tactile Push Button

Dupont Male / Female wires (Red, Green and Black)

Wires various lengths / colours

Wire cutter/stripper

Glue / Masking Tape

Soldering Iron

3D Printer - Clear or Natural and Brown, Black (or any colour) PLA

Step 1: LED Base Construction

Print off the LED Base plate in Black or Brown - or any colour PLA

Cut 6 strips of WS2812b LED - each strip should contain 6 Pixels and be about 10cm long.

The strips should be self adheasive - place them in the base as per picture

*IMPORTANT* - make SURE that the orientation is correct - the data line needs to alternate so that it is "Zig Zagigng" up and down. There is a small arrow on the data line that shows the direction.


Step 2: LED Wiring

Cut 3 short lengths of dupont wire (female end) for the data in, +5v and Ground lines and feed them through the hole in the base. (The data wire should be slightly longer as it needs to reach over to the start of the strip)

Solder the green wire to the "Din" spot on the first LED strip.

Solder the Red wire to the nearest +5v spot and do the same for the ground wire - See Diagram

Cut 5 approx 21mm wire lengths and solder these to the top and botton of each strip

Cut 10 more approx 21mm wire lengths for the +5v and ground connections - solder these in place as per diagram and pictures.

Step 3: Pico Setup

Hold the Boot Select button while connecting the Pico to your computer and update it to the latest MicroPython Firmware by dragging in the .uf2 file downloaded from here:

https://www.raspberrypi.com/documentation/microcontrollers/micropython.html

Download and install "Thony" from here:

https://thonny.org/

Copy the neopixel code into Thony and save it as "neopixel.py" onto the Pico

Copy the main Python Code into Thony and save is as "main.py" (naming it as "main" will make it autostart on power up)

You can play around with the colours (lines 25 - 36) and colour order (line 89) if you like.

Use an RGB colour chart (eg: https://www.rapidtables.com/web/color/RGB_Color.html) to experiment.

Step 4: Component Base Construction

3D print out the Components base - I used clear, but you can use any colour you like really.

Test fit the components into the sections of the base as per the pictures to make sure that everything fits correctly - you might need to do some filing especially round the holes for the switches to make them move freely.

Wire the components up as per the diagrams and pictures.

  • Battery+ wire (Red) to the charge module B+ point
  • Battery- wire (Black) to the charge module B- point
  • Charge module Out+ to one of the outer on/off switch poles
  • Charge module Out- to the Pico Gnd point (38)
  • On/Off Switch middle pole to the Pico Vsys connection (39)
  • Select Button connection to Gnd on Pico (3)
  • Select button connection to GP1 on Pico (2)
  • Use a Male end Dupont wire (Green) to connect to GP0 on Pico (1)
  • Use a Male end Dupont wire (Red) to connect to V3V out on Pico (36)
  • Use a Male end Dupont wire (Black) to connect to Grd on Pico (8)

Fit all the components into the base and secure the wires - I used small bits of masking tape to keep them in place, but you could use hot glue or something else. Use a spot of glue to secure the switches in place.

Test everything by connecting the data ground and power Dupont wires to the LED base.

The Pico should instantly start making a pattern on the LEDs. Pressing the button should cycle through the patterns.

Step 5: Diffuser Panel and Final Construction

3D Print out the deffuser panel in clear PLA. I used a "Grid" infill pattern in the slicer - but you can play around with other infills to give a slightly different effect.

Once you are happy that everything is working as it should, glue the diffuser onto the LED base.

(Tricky part!) Carefully contain the wires inside the base and glue the parts together.

Step 6: Party On!

Just a final note (disclaimer!) to say that this is not water proof! Spilling a drink on it might bork it... also 3D printed PLA is kindof hard to clean food / liquids off so be warned :)

With that said.... Party on!

For the Home Contest

This is an entry in the
For the Home Contest