My Final Project
This is where I will start defining my final project idea and its development process.
Early steps
My little brother loves a TV show where two teams play something similar to charades. Instead of acting and guessing a word, they need to guess the name of a movie or a song. With each turn, a different member throws a big fluffy die, and depending on the number on the top, there are specific rules that need to be followed to act out the phrase.They only have 20 seconds to act and guess.
Last Christmas I wanted to give my brother a die as a present, but there weren’t many options online. So, I came up with the idea to make a die that can detect the die´s position, with a Bluetooth-connected card box that opens to reveal the film/song name according to the number in which the die landed.

Here is the first sketch I made for this project.
The plan is to make a Dice that can identify and communicate via Bluetooth the number on top to a 3D-printed box where the movies and song cards will be contained. Depending on the number on the die, a different compartment will open. The difficulty will vary. Small numbers will reveal cards with short and easy names, while higher numbers will contain larger names or harder words to act.
The “cube” faces will be made of Medium-Density Fiberboard. Inside, it will have an accelerometer to detect the landing face. I´ll be using a XIAOnRF52840 sense with a built-in accelerometer. I am planning to make soft-rounded corners for the cube so it can bounce once it hits the ground.
I decided to design a mechanism to open the different compartments according to each categories. I used Procreate to sketch my initial ideas:

The box will have a Bluetooth module to communicate with the die. I might add a small speaker to play the alarm sound when the time is up. The box will have a charging port and a battery to make it portable.
Final Project Planification
Date | Activity |
---|---|
Jan 20 – Jan 28 | Final project definition |
Jan 29 - Feb 4 | Logo design |
Feb 10 - Feb 19 | XIAO accelerometer data via Bluetooth code |
Feb 26 - Mar 4 | Card dispenser PCB design |
Mar 12 - Mar 18 | PCB milling and soldering |
Mar 26 - Mar 30 | DC motor with encoder programming for the Card dispenser |
Mar 30 - April 1 | PCB production for the stepper motor and XIAO |
April 2 - April 9 | Communication between the board inside the die and the card dispenser board |
April 15 | Die material definition |
April 21 - April 29 | Die creation with a mold |
May 1 - May 6 | Card dispenser design |
May 7 – May 14 | Build the Card dispenser |
May 15 – May 27 | Final program and fully operational game |
May 28 – June 1 | Final project slides and video |
June 2 | Final project finished |
June 09 – June 13 | Final project presentation |
week 2
This week I made my final project´s logo using Inkscape and Procreate

Procreate

Inkscape
week 4
This week I programmed in two different programming languages the XIAOnRF52840 that is going to be inside the die to send the accelerometer data via Bluetooth.
I liked the CircuitPython version the most, which I planed on using for the final code.
week 6
I designed the PC with an ESP32 for the card dispenser

week 8
I milled the PCB I designed during week 6

week 10
I programmed one of the motors that I will be using on my card dispenser
I designed a small PCB for the stepper motor I´ll be using, and an extra PCB for the XIAO.

Here is the schematic for the stepper motor PCB

And here is the XIAO PCB

Here is the schematic for the XIAO PCB

Files
week 11
I sent the XIAOnRF52840´s accelerometer data via bluetooth to the ESP32
I changed my mind on how I will be making the card, dispenser. One of my friends at the Fab gave me the idea of making the dispenser like a Carousel, where a motor turns the card stacks form each categories, and with another motor push the correct card stack out, so the players can pick the card.
week 15 System integration
I´m still designing the mechanism for my final project, but I already have taken some design considerations for better integration. For the Die I made from silicone, I designed the mold with the correct dimensions to fit a PCB with the XIAO nfr52840 from which I´ll use the accelerometer:
After finishing the die, I started designing the mold. I was planning to put a XIAO nfr52840 inside the die, so I needed to be able to remove a face to insert the board. I opened a copy from my die to make some modifications.
To make the hole I measured the PCB I built for the board:

I considered a 54x24mm square so it could fit easily.
I extruded the face containing number one from the die:

The hole I made is a little over half the die´s height, so I can place the board at its center.

I measured the PCB´s height to make sure I left the right amount of space.
The XIAO fits perfectly inside the die:


The mechanism I´m going to build for the cards will be controlled with an ESP32. To do so, I´ll use a small DC motor with an encoder and a stepper motor. During week 6 I designed the PCB for the ESP32 keeping in mind the connections I would need for the motors. I also designed the PCB for the stepper motor driver. These two PCBs are designed to be connected flawlessly.

This design allowed me to connect both PCBs directly and I just needed a cable for the stepper motor which looks cleaner.
On previous weeks (week 10 and week 14) I´ve used a small DC motor with an encoder. Although I´ve successfully controlled the motor with an ESP32, The connection between the motor and the PCB is not ideal, because I use jumper wires to connect the motor to the PCB. I´m planning to use a Jst pin connector to make the connection more reliable and to look cleaner.


Messy cables
My final project is not intended to be a sold product, it´s more of a personal project which I plan to use with my brother, friends and family, so I´m not making a packaging for it, but I´m trying to make it look as good as possible and to be easy to travel with. What I´m trying to do is to make a box/base that can hold the die and the card dispenser. You can find my final project documentation here.
Week 17 Applications and Implications
Charades is a classic game of silent acting and guessing that traces its roots to 18th-century France, where it began as a literary riddle game. It later evolved in 19th-century England into a familiar performance-based version, in which players mime words or phrases for others to guess. Over time, charades became a popular parlor game and party activity worldwide, known for encouraging creativity, teamwork, and quick thinking without speaking. “Charades – The Game" by John N. Hansen Co. is a boxed version created by The John N. Hansen Company, an American manufacturer and distributor of games, toys, and puzzles since 1952. The company's edition takes the traditional format and adds structure, like a custom die to determine categories (Movies, Songs, TV, etc.). Clue cards with curated titles. And a sand timer for the 60-second round.
My project is mainly based on this board game. But also inspired by a TV show that my little brother enjoys watching. The TV show has a slightly different use of the die. Instead of being used to select a category, it dictates a challenge or a special situation, like acting with their mouth filled with water.
The project will include a “smart die”, which was made from silicone during the molding and casting week, inside of it an XIAOnrf52840 sense will be used to send the accelerometer´s data into the “card dispenser”. The dispenser will have an ESP32 WROOM 32 soldered into a custom PCB, which will receive the data via Bluetooth and will control the mechanism. The mechanism will be 3D printed (additive fabrication). And it will be contained inside a Medium-Density Fiberboard box, the box will be made using a laser cutter (subtractive fabrication). I designed the custom PCB using KiCAD, and I made the 3D models of the dispenser using SOLIDWORKS. The box was designed using SOLIDWORKS as well.
Bill of Materials
Custom PCB Components | Custom PCB Components | Custom PCB Components | Custom PCB Components | Custom PCB Components |
Item | Details | Quantity | Unit Price | Source / Link |
ESP32-wroom32 | - | 1 | $4 | link |
0.1uF capacitor | 1206 smd | 4 | - | - |
22uF capacitor | 6.3x6.1 mm smd | 5 | - | - |
2k resistor | 1206 smd | 2 | - | - |
10k resistor | 1206 smd | 1 | - | - |
LED | 1206 smd | 3 | - | - |
0 resistor | 1206 smd | 4 | - | - |
6x3.5 mm button | - | 2 | - | - |
Female pin | - | 10 | - | - |
Male pin | - | 21 | - | - |
AMSL117 3.3v regulator | - | 1 | - | - |
AMSL117 5v regulator | - | 1 | - | - |
Mechanical Components | ||||
PLA filament | - | ~300g | $5 | link |
3M Screws | 10mm | 11 | - | - |
Timing band | - | ~40cm | - | - |
Pulley for Nema 17 | - | 2 | - | - |
3M hex nuts | - | 6 | - | - |
Electronic Components | ||||
Nema17HS4023 Steper motor | 12v | 1 | $10 | link |
Lithium Polymer Batery | 3.7v 250mAh | 1 | $10 | link |
DC motor with encoder | 6v | 1 | $12 | link |
3-cell 750 mAh LiPo batery | 11.1v | 1 | $17 | link |
Multiple color wires | - | 6 | - | - |
A4988 stepper driver | - | 1 | $3 | link |
L298N motor driver | - | 1 | - | - |