Skull Dice Tower with Embedded LEDs

Tim Powell
5 min readDec 13, 2021

Original model that inspired this print: Desert's Kiss - Diorama Dice Tower by ArsMoriendi3D

Modified model: Desert’s Kiss Dice Tower - Eye Glow LED Mod

After my modification of the popular Desert Kiss Dice Tower got a lot of attention on Reddit I have put together this blog about how I did the modifications. The above Thingiverse links contain the files that are required to recreate it yourself!

Embedding Electronics in 3D Prints

There are many blog posts out there about embedding electronics in 3D prints, and I would advise having a read at a few to get a wider view of the topic than what I am going to cover here.

The first step in the process is to find or design the 3D model that you are interested in embedding electronics in. In this case, I wanted an illuminated dice tower. I went to Thingiverse, browsed the available models, and settled on the skull design. Alternatively, you can create your own model!

Next I needed to work out how much space the electronics required! I knew that the LEDs needed to be at eye-socket height and that I wanted the batteries to be replaceable. This meant I had to configure the model with 2 separate locations for the electronics (LED and batteries), and a way to wire the 2 spaces together.

Electronics shopping list:

  • 2x 3mm Red LED
  • 1x Closed Battery Case with On/Off Switch for 2x AAA
  • 1x 47 Ohm Resistor
  • Wire (I repurposed an old micro USB cable)

With the electronic parts ordered, it was time to turn my attention to the skull dice tower. I loaded the skull model into TinkerCAD (after downscaling the model in blender to reach TinkerCADs 25mb file limit) and placed cylinders the size of the LEDs at eye height. I then created a cuboid shape, at my best guess of size, to accommodate the resistor and wiring. On this model, the best place to locate the battery case and keep it hidden is in the base of the model. So I created a cuboid a little larger than required for the battery case and placed it at the base of the model. Using a bright colour for the battery case cuboid I was able to find an area where the cuboid did not interfere with the skull model. I needed the base to be 3mm deeper to fit the battery case in, fortunately the base of the skull model is a circle so it was trivial to add a 3mm extension to the base. Finally, the battery case cuboid and the LED cuboid needed to be joined. Using the transparent feature in TinkerCAD, I created a tube that joins the 2 areas together whilst staying hidden inside the model, you can see the final result in the image on the left (negative space model highlighted in red for the purpose of the screenshot, this needs to be in negative and grouped with the skull model).

General Rule of Thumb: always give yourself more space than required, gaps can be filled however it is very hard to make a space larger.

It is at this stage that I would encourage you to perform several test prints! My electronic parts had arrived and I had soldered them together, so I printed test prints to ensure that the area I had designed to be negative space in the model would actually fit the electronics. If I remember correctly, the only dimension I did not change after my test prints was the holes for the LEDs to stick out of!

One additional complication I made for myself in this project was my requirement to be able to change the batteries. This meant that it was impossible to integrate the electronics into the print if the battery pack was soldered to the LEDs before the LEDs had been embedded due to the connecting wire. My solution was to solder the battery pack to the LEDs after the LEDs had been integrated and the 3D print had finished. I left just enough wire coming from the LEDs to travel down the path and come out in the empty space that would contain the battery case (thanks to the test prints I could get this length exact). Once the print had finished I was then able to solder the battery pack to the extruding wire.

I use Cura and Octoprint with my Ender 3 Pro, the following information may differ for different slicers.

I have talked several times about embedding the LEDs into the 3D print but how is that achieved? Once you have your model modified with the negative space to fit in your electronics it is time to print! Set your settings (don’t forget to turn supports off, at least for the areas you need empty space) and press slice. Cura has the ability to modify the g-code, one of these abilities is to add in a pause at a certain height or layer number. Use the Cura preview to find the layer before the negative space starts being covered up, for my modified skull this was layer 519. Go to Extensions > Post Processing > Modify G-Code. Click Add a script > Pause at height and enter the following settings:

  • Pause at: Layer Number
  • Pause Layer: Your desired layer to pause at, for me this was 519
  • Method: Choose the appropriate method for your print, I used Repetier/OctoPrint
  • Redo Layer: Tick
  • G-code Before Pause: M18 S18000 (this sets the timeout on the stepper motors to 5hrs)
  • G-code After Pause: G28 X Y (this autohomes the X and Y axis)

Both before and after pause g-code commands help reduce the risk of layer shift when the print starts up again.

That’s it! You are now ready to press print. I would recommend working out the approximate time that the print will pause. When the print pauses, add in your electronics and secure in place with some hot glue, then resume printing. Oh, and keep your fingers crossed!

--

--

Tim Powell

I am a Research Software Engineer by profession. 3D printer, amateur electronics, board & PC gamer, and DIY hobbyist in my spare time!