This Arduino-based project utilizing the Grove system of components is designed to help tabletop gamers roll any die at any time - even a die with a nonsensical number of faces. The portable build allows gamers to select a size of die, "roll" that die, and clearly see the result.
Step 1: Parts List
We'll be using an Arduino Uno board, a Grove system Base Shield, a Grove button, a Grove rotary angle sensor, a Grove RGB backlit LCD, three Grove cables, a 9 Volt battery, and a 9v battery barrel adapter.
Step 2: Assembling the Hardware
First, we need to insert the Grove base shield into the Arduino's pins. Then, using the Grove cables, we will attach the button to port D6, the rotary angle sensor to port A0, and the LCD to any I2C port. The last step is attaching the clip end of the barrel adapter to the 9v battery.
Step 3: Uploading the Software
The attached code interprets the Rotary Angle Sensor's position to determine the size of die being rolled, and rolls the chosen die when the button is pressed, displaying the die size and the result on the display. The code can be easily modified to allow for different die sizes or other customizations.
Step 4: Using the Device
Once the build is assembled and the code is uploaded to the board, you can plug in the battery using the barrel adapter and turn it on. You should see the default die size and a blank spot for the die value on the display. Simply click the button to roll the die, or turn the rotary angle sensor to select a new type of die.