These days, it’s easy to get high-quality custom PCBs made and shipped to your door for under $50. It’s something that was unfathomable only a decade ago, but now it’s commonplace. However, it doesn’t mean that the techniques of home PCB production are now completely obsolete. Maybe you live somewhere a little off the beaten track (Australia, even!) and need to iterate quickly on a project, or perhaps you’d like to tinker with the chemical processes involved. For your learning pleasure, [Emiliano] decided to share some tips on making SMD-ready PCBs with the TinyDice project.
The actual project is to create a small electronic dice, and [Emiliano] touches on the various necessary considerations such as how to decrease power consumption, and how to source good quality, organic random numbers from your local microcontroller. Though its far from an exhaustive discussion on either topic, it shows an understanding of the deeper factors at play here.
However, the real meat of the write-up is the PCB production process. The guide goes through several stages of etching to not only prepare the PCB but also to add solder mask and produce a solder paste stencil as well using an aluminum can. This gives the boards that colored finish we’re all used to and lets the boards be reflowed for easy SMD assembly.
There’s no shortage of projects that replace your regular board game dice with an electronic version of them, bringing digital features into the real world. [Jean] however goes the other way around and brings the real world into the digital one with his Bluetooth equipped electronic dice.
These dice are built around a Simblee module that houses the Bluetooth LE stack and antenna along with an ARM Cortex-M0 on a single chip. Adding an accelerometer for side detection and a bunch of LEDs to indicate the detected side, [Jean] put it all on a flex PCB wrapped around the battery, and into a 3D printed case that is just slightly bigger than your standard die.
While they’ll work as simple LED lighted replacement for your regular dice as-is, their biggest value is obviously the added Bluetooth functionality. In his project introduction video placed after the break, [Jean] shows a proof-of-concept game of Yahtzee displaying the thrown dice values on his mobile phone. Taking it further, he also demonstrates scenarios to map special purposes and custom behavior to selected dice and talks about his additional ideas for the future.
After seeing the inside of the die, it seems evident that getting a Bluetooth powered D20 will unfortunately remain a dream for another while — unless, of course, you take this giant one as inspiration for the dimensions.
Turning a cube on a lathe looks pretty fiddly, so we applaud [Tim]’s lovely handiwork even more. As you’ll see in the video down below, things were going gangbusters until he went to make the last facing cut. Maybe the tool wasn’t lined up just so, or something was off in the chucking, but the first pass made a bit of a gouge in the stock. Looks like it was easy enough to fix, though. After four 90° turns and facing cuts, he had a nice looking rough cube to work with.
This is a regulation-sized die, so the next step was to trim it down to 16mm³. Then it was time to sand, polish, and add the dots. To lay them out, [Tim] sprayed the cube with layout fluid and scribed unique line patterns on each face. Then he drilled the indentations and filled them in with aluminium black.
[Mikael Vejdemo-Johansson] is a member of the NYC Resistor hackerspace and an avid fan of a D&D themed improv theatre called The Campaign. To show his appreciation, he decided to gift them a Christmas present: a giant D20. The original plan called for integrated LEDs to burst alight on a critical hit or miss, or let out pulses if it landed on another face. Cool, right? Well, easier said than done.
[Vejdemo-Johansson] figured a circle of 4 tilt sensors mounted on the one and twenty face would be enough to detect critical rolls. If any of the switches were tilted beyond 30 degrees, the switch would close. He mounted eight ball-tilt switches and glued in the LEDs. A hackerspace friend also helped him put together an astable multivibrator to generate the pulses for non-critical rolls.
This… did not work out so well. His tilt sensor array proved to be a veritable electronic cacophony and terribly sensitive to any movement. That and some other electronic troubles forced a shelving of any light shows on a critical hit or miss. [Vejdemo-Johansson] kept the pulsing LEDs which made for a cool effect when shining through the mirrored, red acrylic panes he used for the die faces. Foam caulk backer rods protect as the die’s structure to stop it from being shattered on its first use.
Before The Campaign’s next show, [Vejdemo-Johansson] managed to stealthily swap-out of the troupe’s original die with his gift, only for it to be immediately thrown in a way that would definitely void any electronic warranty. Check out the reveal after the break (warning, some NSFW language)!
[Tim]’s Dice10 is an exercise in minimalism. Building an electronic dice using an ATtiny10 with code that fits within 1kB is not too difficult. Charlieplexing the LED’s would have used three of the four available GPIO pins. [Tim] upped the game by using just two GPIO pins to drive the seven LED’s for the dice. A third GPIO is used as a touch button input. Besides the ATtiny and the LED’s, the only other component used is a capacitor across the supply inputs.
The LED’s are grouped in three pairs of two LED’s and a single centre LED. Usually, Charlieplexed LED’s are connected across pairs of GPIO pins. But his scheme includes connections to the 5V and GND terminals, besides the two GPIO pins. Building a truth table makes it easy to figure out what’s going on.
STATE PB2 PB0 LED's
1 Z Z --
2 L Z LED 1/2
3 H Z LED 3/4
4 Z L LED 5/6
5 Z H --
6 H L LED9
7 L H --
8 H H --
9 L L --
Only the logic states used are listed in the table. It’s possible to add two more LED’s between PB0 and GND and one more anti-parallel with LED9, making a total of 10 LED’s driven by two pins. That’s quite a hack. The important thing here is to have two LED’s in series in the arms that connect to either 5V or GND.
[Tim] has posted the code and hardware source files on his Github repo, and his blog post has some additional details on how he solved the problem.
If you’re looking for more inspirations on minimal dice designs, check this “PIC powered pair of electronic dice” which uses a PIC 12F629 with five outputs driving a pair of 7 pips to make a dual dice.
If you have a cool project in mind, there is still plenty of time to enter the 1 kB Challenge! Deadline is January 5, so check it out and fire up your assemblers!
Are the contents of a Crown Royal bag fair? No, they never are. What about dice? In a quest for good randomness, [Apo] designed and built an automated die tester. Not only does it shake the die up, it captures images so real, actual statistics can be done on each individual die.
The setup is a n acrylic box made with BoxMaker attached to a 3D printed adapter for a stepper motor shaft. Randomizing the die happens exactly like you think it would: a stepper shakes the box, and a camera underneath takes a picture. With a bit of computer vision, this image can be translated into a number, ready for the statistics package of your choice.
There were only 559 rolls before the 3D printed mess of duck tape fell apart, but a test of the distribution revealed this die to have a 92% probability that it is fair. That’s not good.
Creating a cheating die is much more interesting, and to find out if he could do it, [Apo] stuck a die in an oven at 100° C for a few minutes. Surprisingly, the fairness of the die got better, suggesting it’s possible to correct an un-fair die. Putting it back in the oven after that threw the fairness out of the window but there was still no visual difference between this modified die and the original stock die.
[Will] likes his board games but can’t seem to keep from loosing the dice. He’s been using a dice-rolling smartphone app for a while now and decided that it was time to make a dedicated microcontroller dice roller.
The brain behind the dice roller is a chipKIT uC32 microcontroller. Seven output pins are connected to 7 appropriately-arragned LEDs in the top of the dice. There is only one more electrical component, a momentary switch, that is used to re-roll. When the button is pushed, a random number between 1 and 6 is generated and then displayed via the LEDs in true dice fashion. [Will] wrote his own code for this project and makes it available for anyone to download. The case is 3D printed and was designed in Tinkercad, the files of which are also available. The chipKIT is attached to the 3D printed base by a pair of zUNO clips. Find a short video of this thing in action after the break….
Digging the randomness of the roll but miss the realness of the dice? Check out this real dice roller. Need two electronic dice? Check these.