Overview

The 20-sided die — or “d20” as it’s known to tabletop gamers — is an icon of geek culture. In this project we’ll 3D-print a jumbo d20 and outfit it with electronics…because that’s how we roll at Adafruit.

The talking d20 is fun and good for a laugh…though with electronics inside it won’t be 100% perfectly random or balanced…so it’s not suitable for all gaming situations and doesn’t replace your trusty dice bag. Think of it as a geek version of those “executive decision maker” toys.

The code and sounds are completely customizable. For example, you could load each of the 20 faces with the names of local lunch spots and use it to pick the day’s destination.

Parts NOT from Adafruit:

  • Magnets: eight (8) disc magnets measuring 1/4 inch diameter by 1/8 inch thick. We used type “D42” from K&J Magnetics.
  • Glue: either some E6000 craft adhesive or 5-minute epoxy. DO NOT use JB Weld for this!
  • Hardware: eight (8) #4-40 x 3/8" flat-head (countersunk) machine screws.

You will also need:

  • 3D printer.
  • Soldering iron and related paraphernalia.
  • Patience and a willingness to improvise.
  • Any ONE of the following:
    • #4-40 tapping tool -OR-
    • One (1) #4-40 self-tapping machine screw (any length) -OR-
    • One (1) #4 wood screw (any length)
  • Optional: Ogre-slaying knife, with a plus 9 against ogres.

There are a few other incidentals. Read through the whole guide before ordering anything so you know what steps and tools are involved, and whether this project is a good fit for your skills.

3D Printing

The 3D files for this project can be downloaded from Thingiverse:

There are just two parts to this model. They’re fairly small and will fit even on entry-level printers. No support is needed. For best results, print each half as a separate job…keeps the outside faces cleaner, no strings between halves.

After printing, you may need to do a lot of cleanup with files and sandpaper. Make sure each of the 20 faces can sit flat and doesn’t rock. There may also be “drool strings” on the insides that need to be scraped away.

Test-fit screws in the interior mounting holes. You may (or may not) find that they only go in a couple millimeters.

There is so much variation among printers, filaments and slicer settings, it’s not always possible to make a perfect mechanical fit for all situations.

If the holes are too shallow, use a drill or Dremel tool to extend them. Poke just through the surface to the infill…don’t drill the whole depth or you’ll punch out the other side.

Leave about 2mm of threads showing on each screw. Do not drive them any further! They come very close to the outer walls.

If the screws don’t have a good “bite” into the plastic, that’s okay…we can add a little glue later to help reinforce these.

If you like, wet-sand the outsides so it’s extra smooth and good-looking. Rinse it off and set aside for a day to dry completely.

One side has a pair of nubs, the other has matching sockets, so you can see how the two halves align. We’ll add some magnets to hold these two halves together, while still allowing easy internal access for charging or reprogramming.

How do they work?

A few important tidbits about this next sequence:

  • It’s not simply 1-2-3-done. Each step requires some evaluation and decision making, and must be spread out over time…it may take a couple days to complete!
  • Not all magnets are created equal. Even among the rare-earth neodymium type there’s considerable variation in pull among brands.
  • The glues we recommend using have a “geometric” cure…they may form a decent hold in the first few minutes, but may take hours (even overnight) to reach maximum strength. Given the magnets’ strength, patience is required to avoid pulling them out accidentally.

Read through all the steps before starting so you know what you’re up against.

Sourcing Magnets

The two halves of the D20 model are held together with 1/4" diameter neodymium disc magnets, 1/8" thick.

There are slots for up to four magnets on each half. Do not fill them all with magnets on the first go! The correct number will depend on the strength of the magnets you acquire. We learned this the hard way…

During development we used four magnets per half, with rare-earth magnets from a particular eBay seller. When that source dried up we needed a steady alternative. Ladyada recommended K&J Magnetics. Indeed, their “D42” magnet is just the right size for this project and can be ordered in any quantity (some other sources required batches of 20, 50, etc.).

Unknown to us at the time, it’s like this company’s neodymium magnets are laced with kryptonite or something. They’re the Altoids of magnets. With our usual total of eight in there (four per half), it’s nearly impossible to pry the D20 open!

Therefore: take this in stages. Start by installing just four magnets (two per half). If these came from K&J, that’s probably enough to hold the die closed. If from a lesser source, the die might fall apart when rolled, in which case you can add a third pair, test again, then possibly a fourth pair.

The magnets are inexpensive, so just order ten or a dozen in one go. You’ll have spares for any slip-ups, or they’ll be handy on the fridge or for other projects later.

Prep Work

Magnets have a specific polarity…they will only click together when facing the right way. If you install even a single magnet upside-down, it will now push the two halves of the D20 apart rather than holding it shut. This first step helps avoid mistakes…

Stack all your magnets together. Using a permanent marker, draw a dot on the top of the stack.

Allow the ink a moment to dry, then slide this magnet off the top of the stack and place it at the bottom. Draw a dot on the next magnet. Repeat until all the magnets are marked like this.

It’s crucial that the stack not get turned around during this process…all the dots must face the same way.

Now you have a polarity indicator when installing the magnets. A “dot” face will always attach to a “blank” face. Never dot-to-dot or blank-to-blank.

Gluing Magnets

This is a painstaking process. Do not rush through it.

I recommend a strong adhesive for this…either 5-minute epoxy or E6000 craft glue. Do not use hot glue. But especially…

Do not use JB Weld.

JB Weld contains metal particles…when magnets are involved, it will not stay where you put it. Great for other things, but not this project. DO NOT USE.

These photos all show E6000 glue, and that works fine…but having assembled this a few times now I think 5-minute epoxy holds a little better. It’s just time-consuming mixing a tiny fresh batch for each magnet…as you’ll see, it’s vital that they be done individually. E6000 still works well for some other steps later, so you may want both around anyway.

You might do okay with cyanoacrylate “super” glue. Personally, I seem to be cursed when it comes to that stuff…the only things I can get it to hold together are fingers.

Before gluing any magnets in place, do a test-fit in each of the eight magnet sockets. The 3D printing may leave little bumps or artifacts in the sockets that prevent the magnets from being fully seated. Make sure they sit flat and do not rock. Clean out each socket with a file until the magnet cooperates.

Pick one half of the D20…either half, doesn’t matter…and any one of the four magnet holes.

Mix and scoop a little epoxy or squeeze a daub of E6000 into this socket, then press a magnet into place there with the dot facing up.

Make sure the magnet is fully seated. Press it down with a toothpick or something. It will probably ooze some glue around the edges…that’s fine, scrape it up with the same toothpick.

When the glue or epoxy has gone tacky enough that the magnet won’t shift, walk away for at least 30 minutes. Make sure your glue is capped, go wash your hands, take a bike ride or watch some cat videos or something. Do not try to install the other magnets yet. Keep them far away (they have a habit of rolling across the table).

These glues have a “geometric” cure…they form a basic grip in a few minutes, but stronger holds take progressively longer. Even “5 minute” epoxy requires 24 hours to fully cure…five minutes is just the working time.

These magnets are so strong that they’ll tug on others in nearby sockets. We need to wait for the glue to set up a bit before adding additional magnets on the same side of the D20.

With 30 minutes passed, now add glue and a second magnet in the diagonally-opposite socket, also dot facing up.

Guide the magnet all the way into place, scrape away any excess glue and then hold the magnet there…do not just drop it and expect it to settle! Even at this distance the magnets have a very strong influence.

Keep an eye on it for a few minutes. Once the second magnet isn’t shifting, set this aside somewhere where the glue can fully dry overnight…at least several feet away from the other magnets on the table. Then we’ll work on the other half.

Oops! I got careless and set it too close, and now the stack of remaining magnets has snapped on.

You’re done for the day! Don’t attempt to pry the other magnets off until the glue is completely cured…otherwise you’ll just pull the magnet out of its socket.

Second Half…

In a moment we’ll add some magnets to the second half. But let’s take a look at something first…

Whatever two sockets you chose for magnets on the first half, we’ll be using the opposite two sockets on this other side. Things are mirrored when flipped over.

Remember, when we’re adding magnets to this second half, the first half should be nowhere in the vicinity. These magnets pull hard and will ruin your work! Put it way up on a shelf or something, far away.

Also, on the first half we installed magnets with the dots facing up. On the second half we want the blank faces showing. No dots!

Glue the first magnet into place as before, cleaning up any ooze and waiting for a tacky hold.

The dot on this magnet should be facing down. You should just see a blank magnet face, no dot.

After waiting the requisite 30 minutes, install the second magnet, also dot-side-down.

Hold this in place while the glue sets up, so the other magnet won’t pull it out or askew.

Wait

The glue on both halves must be completely dry before proceeding. Completely. That means you’ll resume tomorrow. Make sure the glue is capped, and go wash your hands thoroughly.

Do not allow the two halves anywhere near each other yet! Keep them well apart until tomorrow.

Test Fit

Once fully cured overnight, you can bring the two halves together. They should click together nicely.

Beautiful!

To open the die (to access the electronics later), there’s a certain way you can grip it and pry the two halves apart. I find it helpful to put thumbs on the “9.” and “6.” faces (the only two faces with orientation dots) and hinge it open like a clam.

If any magnets pull out of their sockets: you’ll have to re-glue them and try again tomorrow.

Roll the die around the table a bit. Do the two halves stay securely together, or do they come apart?

Die holds together well: you’re done with this phase and can skip ahead to the next page!

Die halves come apart, or don’t feel quite secure: this calls for additional magnets.

Unless you’re using weak magnets, add these one pair at a time. Each half receives one magnet (follow the same dot/blank face orientation) and keep the two halves separated overnight until the glue is fully dry, then test again. If it’s now solid enough with three magnets, you’re done, otherwise you can add the fourth pair.

Let’s install all the code and sounds on the boards before assembling the circuit. This makes it easier to handle basic troubleshooting (in case a part needs replacing) before everything’s carefully packed inside the model.

If this is your first time using the Adafruit Pro Trinket microcontroller, it’s recommended that you read through the Introducing Pro Trinket guide first, which in turn will direct you to the Adafruit Arduino IDE Setup guide. Get to where you can upload the basic “blink” sketch to the board…that’s a good indication that all the software parts are present and working.

There are three Arduino software libraries that the d20 sketch depends on. These are easily installed in recent versions of the Arduino IDE (1.6.5 or later). From the “Sketch” menu, select Include Library→Manage Libraries… the install the following:

  • Adafruit MMA8451 Library
  • Adafruit Unified Sensor
  • Adafruit Soundboard library

The first two are needed for the accelerometer board that gives us the d20’s orientation, the third handles communication between the Pro Trinket and Audio FX Sound Board, to trigger specific sounds.

The software and audio files for the Talking D20 can then be downloaded from Github:

The Audio folder contains sound files to be installed on the Audio FX Mini Sound Board. This board plugs into your computer with a Micro USB cable…it should then appear as a small (2 megabyte) flash drive. There may be some sample files already on the drive…if so, those can be deleted…then copy the contents of the Audio folder here. Do not copy the Audio folder itself…copy the files inside…33 at the time of this writing.

The d20 folder contains the Arduino code for the Pro Trinket. Open this in the Arduino IDE, select “Pro Trinket 5V/16MHz (USB)” from the Boards menu and upload to the board (press the reset button to start the bootloader).

If you just want to use the standard code and don’t plan to make modifications, skip ahead to the next page.

Custom Sounds and Behaviors

The sound files are stored in Ogg Vorbis format (.ogg) to save space…it’s a format similar to MP3 but without patent restrictions. Few systems can play or record .ogg files “out of the box” — so if you’ll be making your own sounds, you’ll probably need to download a package such as Audacity to convert audio files to this format.

In addition to the 20 sound files corresponding to each face, there’s a startup greeting plus a few jabs or complements if you make a particularly bad or good roll. These are selected randomly (as is the announcement, “You roll…” etc.) so it’s less repetitive to play with.

If you want to make changes to the code for more sounds or different gags, toward the top of the sketch is this big table:

static const char PROGMEM bigStringTable[] =   // play() index
  "01      " "02      " "03      " "04      "  //  0- 3
  "05      " "06      " "07      " "08      "  //  4- 7
  "09      " "10      " "11      " "12      "  //  8-11
  "13      " "14      " "15      " "16      "  // 12-15
  "17      " "18      " "19      " "20      "  // 16-19
  "ANNC1   " "ANNC2   " "ANNC3   "             // 20-22
  "BAD1    " "BAD2    " "BAD3    "             // 23-25
  "GOOD1   " "GOOD2   " "GOOD3   "             // 26-28
  "STARTUP " "03ALT   " "BATT1   " "BATT2   "; // 29-32

Because of the way Arduino handles strings in program memory, we’re doing something a bit unconventional here: all the filenames are smooshed together into a single large string, but we’re using code formatting shenanigans to make them appear distinct (there are quotes around each filename, but no commas in-between…the compiler joins these into a contiguous string).

Each filename must be padded with spaces if necessary to fill exactly 8 characters. Any more or less will throw the whole thing off!

Declaring these as an array of separate strings in program memory (PROGMEM) would be even uglier…string tables are one situation where Arduino’s PROGMEM syntax just gets nasty.

To play a sound file from this table, pass its index (starting from 0) to the play() function. For example, index #29 is the string "STARTUP " — corresponding to the file startup.ogg, the sound played when the d20 circuit is switched on:

  play(29);   // Startup greeting

If you insert or rearrange sounds, the indices will change, and you may need to edit several places in the code to accommodate the changed order.

Prep Work

Before doing any soldering or other work, do this: using a small dab of E6000 glue or 5 minute epoxy, reinforce the wires coming off the LiPoly battery.

Peel the tape up a little and get the glue underneath, where the wires connect to the board. Don’t let the metal E6000 tube contact the terminals! Set aside to dry completely.

Use a hobby knife or a file to scratch away the trace between these two solder pads on the LiPoly backpack. This lets us add a switch later.

If your power switch has these long legs (not all do), trim them down to about half their size.

Desolder the wires from the speaker. We’ll be adding our own later.

The various boards used in this project have different mounting hole sizes and component clearances. To make our hardware all fit and to play nice with the 3D-printed parts, we have to take some slightly uncouth actions…

First, mounting holes on each board need to be reamed.

The optimal tool for this is a 4-40 thread tap. Few folks will have this tool around though. As an inexpensive proxy, you can use either a 4-40 self-tapping machine screw, or even a #4 wood screw.

The key to successful tapping is to not grind the tool through in a single pass. Instead, turn the tap or screw 1/2 to 1 turn forward, then 1/4 turn back. Then repeat…another 1/2 to 1 turn forward, 1/4 back…keep going until the mounting hole is threaded all the way through.

DO NOT tap the center mounting hole of the Pro Trinket.

On the Pro Trinket, only the two corner holes should be tapped. The center mounting hole is very close to some vital signal traces!

Then test-feed a 4-40 machine screw through each hole.

If you used a 4-40 tap or self-tapping screw, the threads should match. If you used a #4 wood screw instead, the threads will be a little different, but you can still coerce the machine screw all the way through…the fiberglass of the circuit board is slightly pliable.

The Pro Trinket has the smallest mounting holes of the bunch, and these will probably get stretched out, maybe even slightly broken. That’s okay, we can reinforce those points with a bit of glue later when installing.

After reaming these holes, clean away any copper rivulets that may be hanging on. You don’t want these dropping off later and causing electrical shorts.

Mounting circuit boards using countersunk screws (rather than round head) is not usually done, but affords us just a little extra clearance around neabrby components, making electrical shorts less likely.

The Plan

Here’s a wiring diagram you can refer to later…maybe even print this out. The physical arrangement of parts won’t look exactly like this…it’s mostly to make all the connections between parts clear:

Red and black lines are power and ground, respectively. Other colors represent various signals…you don’t actually need to color-code everything like this, but it helps prevent mistakes if you do have some different colors of wire available.

26-gauge silicone-coated stranded wire is the bee's knees for this stuff. Super flexy, and the insulation doesn’t shrink when soldered.

Soldering

There’s not a huge amount of soldering involved, but the tight quarters make this project a challenge.

Additionally, since the die will be dropped and rolled around a lot, the solder connections need to be really solid. Cold solder joints — where solder beads up on surfaces and hasn’t flowed smoothly between components — don’t handle physical stresses and will soon fail. The Adafruit Guide to Excellent Soldering shows what good (and bad) solder joints look like and how to avoid common pitfalls.

Here’s the wiring diagram again for reference. This is laid out to make the connections clear, not as an indication of wire lengths:

When installed in the die, some of the boards are stacked: the amplifier sits underneath the sound board, accelerometer under the Pro Trinket.

We can use fairly short wires between stacked boards, longer wires for any connections across…everything will be trimmed to an exact length later. Some wires will be soldered top-to-bottom, others bottom-to-top.

Cut two wires about 3 inches long. Strip and tin one end and solder to the power switch — use the center pin and either of the two outer pins, doesn’t matter which.

Heat-shrink tubing is optional here, use it if you’ve got it. Though best known for preventing electrical shorts, heat-shrink is also a strain relief, so solder connections are less likely to break with repeated dropping.

Solder a short wire between the UG and nearby GND pin on the Sound Board.

This configures it to run in UART mode (operated from a microcontroller) rather than the trigger pins.

Next we’ll add a few wires to the tiny amplifier board…but the Sound Board is borrowed as a measuring stick of sorts. One board will be stacked atop the other, so we know any connections between the two won’t exceed this length.

Cut four wires just a little longer than the Sound Board. Two are for power, two for audio. Then cut two wires about 4 inches long, for the speaker.

Strip a small bit of insulation from just one end and tin each wire to prevent fraying.

The four short wires go to Vin and GND (for power) and A+ and A– (audio input). The two long wires go to the 4–8Ω audio output (do not install the screw terminals, solder the wires directly).

Cut one more wire in-between these lengths. Strip, tin and solder it to the SD pin.

After the solder has cooled, trim and protruding wires from the underside of the board, and make sure any clippings end up in the trash, not in the d20. Do the same with other boards as you work through the project.

Six wires need to run between the Pro Trinket and Sound Board. Two are for power, four for various signals. Using either board as a measuring stick, cut these wires to about 2X the board’s length. Strip a little insulation from one end and tin each wire.

The two power wires connection to the + and  pads on the underside of the Sound Board. Tin these pads first with a little solder, then hold the previously-tinned wire in place and re-melt the solder to join the two. The solder joints need to be smooth and shiny, not beaded up on the surface.

The other four wires connect to TX, RX, Act and Rst.

Cut three wires about 1 inch long. Strip, tin and solder to the BAT, G and 5V pins on the LiPoly Backpack board.

The accelerometer and Pro Trinket boards will also be stacked…so again, we can use the longer board as a measuring stick.

Cut five wires about 1.5X the length of the Pro Trinket. These connect to VIN, GND, I2, SCL and SDA. But notice we’re feeding these wires through from the back…that’s because the accelerometer gets installed “face down” later.

This next sequence requires patience and dexterity. If you clip a wire too short, don’t stress over it, they’re easily replaced at this stage.

Temporarily install the accelerometer (face down) and amplifier (face up)…a single screw should be sufficient for now.

Our goal is to find the ideal lengths for each wire. To do this, we’ll hold each of the top two boards in place and “tweezer comb” each wire from the lower board to its corresponding point on the upper board (using the wiring diagram for reference), then cut. Allow several extra millimeters slack on each wire, for moving around and stripping later.

Do the amp-to-sound-board wires first, then the accelerometer-to-Pro-Trinket wires, and finally the six “across” wires from the Sound Board to Pro Trinket.

The speaker wires should just be routed out the back for now.

Now that every wire’s trimmed to an exact length, strip a little bit of insulation and tin the end of each one. All of them! Do this for the LiPoly backpack board and power switch wires as well.

Tinning the wires is important. A single stray wire strand can cause shorts or wreak other havoc.

Using a piece of tape or some glue, cover up the solder pads on the back of the LiPoly Backpack to prevent it from shorting against other parts later.

Another “patience and dexterity” sequence, making the connections between boards. Use the wiring diagram for reference.

Let’s do all the bottom-to-top wires first…connections from the accelerometer to Pro Trinket and from the amplifier to the Sound Board…these wires contact the upper board from below and are soldered on the top.

Then do the two power wires…the + and pads on the bottom of the Sound Board are linked to the corresponding pads on the Pro Trinket.

Finally, we’ll do all the top-to-bottom wires…the main board connections with the wires on top and soldering underneath. Add the LiPoly Backpack wires to the Pro Trinket as well, and the power switch to the Backpack.

Last step is to solder the wires from the amplifier output to the speaker. Notice how they’re turned around now, so the wires don’t extend off the side. Space is at a premium!

There should be no loose wires at this point. Every connection should go from one place to another. Double-check all the connections against the wiring diagram before moving forward!

Final Assembly

This is it, the Blue Smoke Test! Connect the battery to the LiPoly Backpack, arrange the boards on your work surface so they’re not contacting each other or any conductive tools, and flick the switch.

If all goes well, you should get a green light on both the Pro Trinket and Sound Board. The red LED on the Pro Trinket will flash a few times, and after a few seconds you should hear the announcement, “Greetings, adventurer!”

If not…

Troubleshooting

No green LED on either board.

Switch off immediately! It may be an electrical short. Double-check all connections, and examine the circuit closely for any solder blobs or frayed wire bits.

Or it might simply be that the battery is flat. Plug a USB cable between the Pro Trinket and your computer. If there’s a short, you’ll get an error message on the computer. If not, allow it at least 15 minutes for a little charge and try again.

Green LEDs are always on; switch has no effect.

Did you cut the trace between the switch pads on the LiPoly Backpack? Do it!

Green lights come on, red blinks a few times and then stops, but there’s no sound.

Have you uploaded the d20 Arduino sketch to the Pro Trinket and copied the .OGG files to the Sound Board? If not, go back to the “Code” page and follow those steps.

Or it might be that the volume is set too low. Check the tiny dial on the amplifier board…a little past halfway is good.

Initial lights as expected, but then the red LED on the Pro Trinket flashes steadily.

If this blinks about twice per second, this indicates a communication error between the Pro Trinket and Sound Board. Check the wiring between these two…TX and RX, and the + and wires underneath…and also confirm the small UG to GND jumper is installed!

If this blinks fast, about 5 times a second, this indicates a communication problem between the Pro Trinket and accelerometer, perhaps the SDA and SCL wires are switched? Check the wiring diagram!

There’s another problem, or I need more help with one of above.

Start a thread on the Adafruit Forums describing the symptoms. It’s extremely helpful if you can include some photos (lit and in-focus) that clearly show your wiring and soldering.

Success!

Okay, let’s go through one more test and then plan to seal this up…

Switch it off.

Install the two “under” boards in the case using two screws each. This is tricky, but possible…a small magnetic screwdriver helps here.

Then install the two “over” boards with two screws each.

Find a spot where the LiPoly backpack can be stuck down later without causing shorts. This will depend on the wire lengths. Mine looked OK atop the Sound Board; yours might be a little different.

Now temporarily wrap some masking tape or some paper around the LiPoly backpack and the switch (to prevent shorts during this test). Wrap them separately, not together.

Turn the switch on and wait for the “Greetings, adventurer!” announcement. Then carefully fold the speaker, battery and other parts inside while closing the other half atop the shell.

Try rolling it a few times. Whenever it comes to rest, it should correctly announce the number on top. It needs to drop at least an inch or so to be triggered…a totally sideways-roll won’t do it.

The case keeps falling apart!

Add another pair of magnets as per the “Magnets” page.

It’s announcing the wrong numbers!

The accelerometer is loose or installed at a funny angle, or was installed face-up. This one component needs to be installed face down.

So! If everything works well and seems solid, switch it off and you can remove the boards from the case and start again, this time adding some glue around each screw as a thread-lock for extra durability.

On the other half of the case now…first, test-fit the speaker to determine a good angle where the wires have a little slack when the case is open.

Remove the speaker, add some dabs of glue around the perimeter of the socket, then press the speaker back into place. Leave this alone to dry for a few minutes.

I also added some glue where the wires connect to the speaker, as strain relief.

Secure the LiPoly Backpack in whatever location you decided, through whatever means seem workable. Mine went on top of the Sound Board, and a tiny square of double-stick foam tape would hold it there (later I’ll add some dots of E6000 for extra durability).

A slot is provided for the power switch. Route the wires so they’re not in the way, add a little glue or epoxy to the slot and pinch the switch there with a clothespin, binder clip or small clamp until the glue dries.

Use just enough to hold the switch, don’t completely goober it up. There are small holes (detents) in the sides of the switch and glue can seep inside.

Find a spot and mounting scheme for the battery. I stuck it to the back of the speaker with more double-stick foam tape.

Close it up…check that wires don’t get pinched…and play a little bit. If everything looks good, we’ll add some finishing touches.

To open the die, pry it open from these two faces. Those dots were originally just to distinguish “6” from “9,” but as a bonus then can also indicate “open here.”

Hinge it open like a clam, carefully…do not yank hard or you’ll rip the wires off the speaker!

When everything’s working to your liking and you have a handle on opening and closing the die, take a good look through the interior for ideas to make it more durable. Some dabs of E6000, epoxy or hot glue in strategic places can help ensure that parts or boards don’t vibrate loose or wires don’t get snagged.

Even with the battery here, I felt the speaker side was a little too light and off-balance. I had some epoxy putty around and used a few dots to add mass to this side…get creative and use whatever’s handy…hot glue and fishing weights…it’s all good so long as it doesn’t come loose and cause a short.

Allow any funky chemical glues to dry for at least 24 hours before playing.

To charge, connect a micro USB cable to the Pro Trinket USB port. Do not use the Sound Board port for charging, only the Pro Trinket.

It’s normal for the red LED to blink during charging. This is because the Pro Trinket is receiving power (code is running) but the Sound Board is switched off. Not a problem.

When the battery is fully charged (about 90 minutes, tops), the green LED on the LiPoly backpack will light. A full charge is good for a couple hours’ play, or about 15 hours max standby if you forget to switch it off.

As was mentioned in the introduction, the talking d20 is a “for fun” thing…the balance isn’t perfect and it will probably show a slight statistical preference for certain numbers…I’d keep it away from tournaments or OMG SERIOUS BUSINESS gaming sessions. It’s perfectly fine and entertaining for “farting around” games though.

It’s always announced the correct number during testing, but there’s always some possibility of a software bug or calibration mistake or something. So before using this in your own games, lay out the ground rules for situations if the top face and voice were to not match: who has the final word?

I’d suggest using the top face as the final word. Occasionally it won’t detect being rolled and won’t make an announcement, in which case you’d read it…so the “top face” method is consistent across different situations.

This guide was first published on Aug 07, 2015. It was last updated on Oct 20, 2018.