ArcDice is a compact ATtiny13-based digital dice project with a 7-LED face, low-power sleep behavior, and a matching KiCad hardware design.
Keywords: digital dice, ATtiny13 dice, LED dice, DIY electronic dice.
- Rolls a random value from 1 to 6 with a short LED animation.
- Drives a 7-point dice face from only 4 MCU output lines.
- Uses button wake-up and sleep mode to reduce power draw.
- Source:
src/main.cpp - PlatformIO environment:
attiny13a - Upload protocol:
usbasp
- PB0 -> center LED segment
- PB1 -> diagonal A (top-left + bottom-right)
- PB2 -> diagonal B (top-right + bottom-left)
- PB3 -> middle row (left-middle + right-middle)
- PB4 -> roll button (to GND, internal pull-up)
The 7 visible pips are arranged on a 3x3 grid and lit via 4 logical groups (center, two diagonals, middle row). The resulting faces are:
| Roll | Pattern | Description |
|---|---|---|
| 1 | center | single center pip |
| 2 | diagonal A | two corner pips (TL+BR) |
| 3 | center + diagonal A | vertical middle column (TL + center + BR) |
| 4 | diagonal A + diagonal B | four corners (full X) |
| 5 | center + both diagonals | full X plus center |
| 6 | both diagonals + middle row | four corners + middle two |
Note: face 3 uses diagonal A (TL+BR) plus center, giving a symmetric vertical middle column -- the standard 7-pip rendering of 3.
- KiCad project files:
hardware/ArcDice.kicad_prohardware/ArcDice.kicad_schhardware/ArcDice.kicad_pcb
- Power target: 1S Li-ion/LiPo with TP4056 protected module
- Recommended LED resistors: 220 ohm (one per LED)
- Install PlatformIO.
- Connect an ATtiny13 programmer (USBasp).
- Build and upload:
pio run -e attiny13a -t upload- CHANGELOG.md — release history and notable changes.
- docs/BOM.md — bill of materials with footprints and suggested supplier parts.
MIT. See LICENSE.






