Elegant 3D-Printable Minifigure-Compatible Illuminated Shelf With WS2812b LEDs and an ESP8266-Based Arduino Controller

by jojo_1220 in Circuits > LEDs

388 Views, 3 Favorites, 0 Comments

Elegant 3D-Printable Minifigure-Compatible Illuminated Shelf With WS2812b LEDs and an ESP8266-Based Arduino Controller

_TitelBild.gif
20240102_192135.jpg
20240102_165554.jpg
20240228_200611.jpg
20240228_200426.jpg
20240228_200307.jpg

I was on search for a compatible shelf for representing my LxxO Minifigures in a elegant way. Unfortunately, none of the shelfs or ideas I came across met my criteria for flexibility, allowing for enhancement, rotation and easy illumination with dynamic LED animations.

Consequently, I took matters into my own hands and designed a 3D-printed component that not only showcases the Minifigure collection but also provies a dedicated stud line for additional accessories, extending beyond the confines of the standard 3x4 base plate. The base plate is seamlessly integrated into the part, resulting in a complete 4x6 base plate area. Moeover, the expanded base plate area (4x6) opens up new posibilities, allowing not only for the showcase of Minifigures but also accommodating items such as Brickheadz or polybag sets.

To ensure absolute flexibility, the components can be rotated in any direction. Additionally, I incorporated an innovative lightning solution into the 3D-printed parts. This lighting system, powered by an ESP8266 and equipped with WS2812b LEDs, is controlled by a web server. This added feature enhances the overall display by introducing captivating light animations.

For those interested in bringing this project to life, the 3D printing parts are available on Cults3D and the software project can be accessed throuight the repository on Github.


STL Files for Shelfs:

https://cults3d.com/:953606

STL Files for ESP8266 Controller Case:

ESP8266-01 - WS2812b Neopixel / RGB LED Shield - Case - Heat Inserts - Screwable - Openable by Jojo1220 - Thingiverse

Software:

https://github.com/JoJos1220/MinifigLightingSystem


With these resources, you can effortlessly ceate your own Minifigure Lighting System.

Enjoy the crafting!

Supplies

HardwareParts.png

For the MinifigLightingSystem Project you will require the following supplies:

  • 3D Printer:

Utilized for printing the "Shelfs" and the ESP8266 Controller Box.

  • Soldering Skills:

A soldering iron and some tine will be essential for assembly (if you want to add the LEDs).

  • Heat Shrink:

To Insulate the soldered wires use heat shrinks.

  • PC with Slicing Software:

Necessary for preparing 3D-print gcode files.

Visual Studio Code with PlatformIO for coding and programming the ESP8266 controller.

Required for flashing the sketch onto the ESP8266-01 controller board.

The interface between the ESP8266 and WS2812b LEDs

  • 5V Power Supply (at least 2A):

To power up ~25 LEDs. For lager setups, opt for a bigger power supply! (USB cable, USB charger or similar)

Depending on your preferences - within this Project a USB Micro PCB Breakout is used and linked.

Quantity depends on the number of shelfes. PL9823-F5 LEDs were used in this project

Various cables for wiring. For connecting the RGB LED Shield i used a Female/Female Dupont wire cutted in half and soldered on the USB PCB and connected the Dupont on the Shield. For Cables between the LEDs use above provided Link.

Enhance connectivity as needed.

  • Additional Hot/Super Glue:

Optional but useful for additional securing

  • Additional Heat Inserts (M3x3mmx5mm)

Those heat inserts are used for the ESP8266 case.

  • A Lot of Minifigures:

Of Course - a Lot of Minifigues - the main stars of your display!


Estimated project costs, depending on your parts suppliers, should be arround ~40€


These supplies, combined with your skills and ceativity, will bring your MinifigLightingSystem to life!

Parts Suppliment - 3D Printing

MinifigShelfs_connected.jpg
Shelf_Preview.jpg
large_display_6ea6c39e-3fe9-4908-ac53-8be686e2107e.jpg
20230824_170059.jpg

To commence, download the STL file for the shelf from Cults3D and proceed to 3D print it using your 3D printer. Refer to the instructions provided in the download link on Cults3D. Don't forget to utilize the promo code "MINIFIGURES4EVER" to enjoy an impressive 50% discount off the original price.

Before integrating the LEDs into the 3D-printed part, ensure that the components fit together seamlessly. If there are any fitting issues, consider adjusting your printer settings or implementing mchanical impovements.

Verify the proper placement of Minifigures and ensure that the LEDs can be inserted into the designated holes with ease.

For the Controller Box, visit the Thingiverse page through the link above to download and 3D print the Box Top/Bottom pieces. Follow the instructions provided on the homepage and utilize your soldering iron to install the heat inserts into the part.


Make the decision based on your preference, whether you prefer to print the shelves with multiple colors or opt for a uni-color approach.

LED Soldering and Preparing the Electronic

HardwareSchematics.jpg
20240104_144321.jpg
20240407_205304.jpg

Next, connect the 5mm WS2812b LEDs according to the provided schematics. Cut the wire lengths precisely based on the number and distribution of LEDs within each shelf, ensuring minimal ecess cabling. In my setup, the cables are approximately 220mm long.


I chose to group 10 LEDs in series and then added a connector. This approach allwos for scalability, accomodating more LEDs in series as the Minifigure collection grows, and additional shelfs are required. It also facilitates the incorporation of a piece of cable between two LED chains if you add another decentralized stand-alone shelf with no furhter electronic controller. Ensure the power supply is adequate; otherwise, opt for a larger one or insert a separate power supply between two LED chains. I recommend adding capacitors between the Vcc/GND lines for optimal performance.


Bevor proceeding to attach the LEDs to the 3D print, verify that the LED chain is functioning corectly. You can either use the final software in combination with the final hardware to test it or employ a simple example from the WS2812b libary to confirm everything is in working order. In the picutes, you can see my first prototyp of the electronics in the first case i used. I secured the USB-PCB and the Controller Shield in the 3D-print by using hotglue. The Powersupply wires i used are jumper wired soldered on the PCB. In the final setup i made a redesign of the 3D print to make it reopenable by screws.


When testing, and the LEDs are not working, ensure that you select the correct LED type within the sketch you are using to avoi any unexpected behaviors.

Adding Electronics to Shelfs

409602399_1420237332247671_9138987993874500300_n.jpg
20231217_165016.jpg
20240107_125725.jpg

Once the LED chain is confirmed to be functioning correctly, you can seamlessly integrate the LEDs into the 3D print! If additional security for the LEDs is deemed necessary, a small amount of hot glue or super glue can be applied. However, it's worth noting that I don't recommend excessive use due to potential challenges during disassembly, especially if needed for troubleshooting or when modifying and rearranging the shelf.

Subsequently, establish the connection between the WS2812b and a power supply on the shield where the ESP8266-01 is connected on. For a flawless integration of the ESP8266 case into the shelf, I have also devised an electronic shelf case. This specially designed case allows for the direct placement of the ESP8266 case inside.

The reason I chose the ESP8266-01 for this custom setup is due to the minimal requirments of just one (1) GPIO to control the shelf. Fortunatley, the ESP8266-01 ofers exactly two (2) free GPIOs, making it perfectly suited for this purpose. Additionally, the available low-budget Add-on shield for the WS2812b LEDs facilitates the cration of a plug-and-play design that can be conveniently controlled via WiFi.

With the hardware setup now complete,you can proceed to the next steps involving installation and parametrization.

Software Installation and Parametrization

Webserver_STA_Overview.jpg
Webserver_STA_RGB_PICKER_POPUP.jpg
Webserver_AP_Overview.jpg

Retrieve the software from the Github repository and seamlessly install it on the ESP8266. You might require an additional Prommer, or alternatively, you can flash the software though the Arduino IDE, with references readily available on the internet.

Initial setup involves configuring your WiFi settings based on your home SSID. This adjustment can be made directly within the source code. Additionally, you can connect your Smartphone to the ESP8266's Access Point for the setup if the preconfigurated SSID is not available. Further customization options are accessible though the device's web server, including:

  • Setting WiFi Credentials (Password // SSID)
  • Configuring the number of LEDs connected in series
  • Assigning LEDs to specific shelves, ensuring synchronized lighting during animations. This means if e.g. LED #1 and LED #2 is within Shelf 1 --> you have to assign this to Shelf 1! Then the LED's are Lighthning within the same color during the Animation's.
  • Adjusting LED brigthness
  • Modifying animation speed
  • Selecting animation modes:
  • Single Color Mode (Permanently displays one color)
  • Single Animation Mode (Permanently displays one animation)
  • Multi Animation Mode (Sequentially displays various animations)

For comprehensive details regarding WiFi settings, souce code and more, refer to the Github page.


Note: Over-The-Air (OTA) Update is currently only supported on 4MB flash. Upgrading the ESP8266-01's flash chip from 1MB to 4MB, as the firmware size is currently too large. Alternatively, you can search the web for pre-equippped ESP8266-01 with a 4MB flash onboard if you prefer not to solder. For upgrading the ESP8266 from 1MB to 4MB flash i replaced the original chip by an W25Q32BVSIG.

OTA is fully supported in PlatformIO by flashing the sketch and the LittleFS file.

Enjoy!

20240229_202921.gif
20240229_203002.gif
20240229_203103.gif
20240229_203153.gif

That's it!

You're now ready to hang the fully assembled shelf on the wall and revel in the captivating animations.

Enjoy in your costomized Minifigure Ligthning system! Feel free to enhance or trim your LED chain based on the amount of figures you want to add or remove. To take it a step further, consier integratinga SmartPlug into your setup. With this addition, you can control the sehlf using your voice commands or through a motion detector, merging the charm of your Minifigure Lighting with athe convenience of a smart home.

If you have any questions about the project or if you have any ideas to share, please feel free to let me know in the comments.

Happy illuminating! 💡🏠


You made it? Showcase your masterpiece and share your expirience with the community. Let's illuminate the world together 😊🌟