

EDice
A very cheap electronic dice used for soldering exercises
- Size
- 65 × 30 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 24
- Nets
- 23
- Pads
- 64
- Tracks, vias
- 122, 3
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 6 Nov 2023
- Updated
- 22 Feb 2025
Overview
EDice is an open-source printed circuit board by akaFunk, from the akaFunk/EDice repository on GitHub. It is a 2-layer board of 65 × 30 mm with 24 parts on 23 nets, routed with 122 tracks and 3 vias.
It is built around the PFS154-S16, BS-02-A1AJ010 and K2-1102DP-J4SW-04. Its parts include 7 resistors, 7 diodes, 2 connectors, 1 capacitor and 1 IC.
Main components
3PFS154-S16
SOP-1614 2KB 2V~5.5V FLASH Others SOP-16 Microcontrollers (MCU/MPU/SOC) ROHSPADAUK TechMicrocontrollers (MCU/MPU/SOC)BS-02-A1AJ010
--25~85℃ Battery base CR2032 Nickel plated Phosphor bronze - ROHSMYOUNGButton And Strip Battery ConnectorK2-1102DP-J4SW-04
插件-4P,6x6mm-25℃~+85℃ 100,000 cycles 12V 2.5N 50mA 6mm 6mm 8.5mm Round Button SPST Through Hole 插件-4P,6x6mm Tactile Switches ROHSHRO ElectronicsTactile Switches
README
readme.mdEDice
The EDice is a small and fairly simple device that simulates a dice by using some LEDs, resistors and a microcontroller. The controller used is a Padauk PFS154-S16, which is an extremly cheap 8 bit microcontroller. It can be purchased from LCSC and other sources for less than 10 Euro-Cents.
The EDice is used as a simple soldering exercise. Therefore it has a combination of (relatively large) SMD and through-hole parts.
It is powered by a single CR2032 3V coin cell, which is on the back of the PCB. The holder we use is the BS-02-A1AJ010, which can also be purchased from LCSC for less than 5 Euro-Cents a pop.
Together with the PCB and a few other components, the whole cost is approximately 1€ in quantaties of about 100. This includes everything except the prommer (PCB, components, 3D case, shipping), which makes it ideal for a give-away item.
Building
Building is pretty straight forward. A few things to note:
- Do not have a battery in the EDice while having it plugged into the prommer.
- The resistor values are quite flexible, depending on the LEDs you choose. However, the maximum source current of the microcontroller is 1.6mA on each pin. So a value of 1k or higher should be used. 1k is pretty bright though.
BOM
We used LCSC for component sourcing. Here is our list:
- 100x microcontroller, PFS154-S16, C317613
- 100x battery holder, BS-02-A1AJ010, C5239862
- 100x button, K2-1102SP-J4SC-04, C879450
- 20x pin header, 12251140CNG0S115001, C429959
- 700x 2.2k resistor, MFR0W8F2201A50, C58682
- 100x 100nF ceramic capacitor, CT4-0805Y104M500F1, C154503
- 700x red LED 5mm, XL-502SURD, C2895492
- 400x Screw M3x12, BB3X12, C357496
There are probably cheaper things out there, we did not look too hard into it.
Programming
After installing the required software listed below, connect the EDice to the prommer (WITHOUT A BATTERY!) and run:
make clean program run
With the run command, the prommer will power the EDice and it should work right away.
Programming in Linux
To program the Padauk microcontroller you need a Free-PDK prommer: https://free-pdk.github.io/
You also need to install the SDCC compiler (version 4.4.0 or higher) which you can install through your packet manager.
Programming in Windows
Microsoft being Microsoft, it is a little more tricky to run make on Windows than it is on Linux. However, you san still do it - with a few extra steps. To run make and the programmer on Windows, you will need to:
- Install some kind of Linux shell for Windows like Git Bash.
- Install some version of make for Windows. An easy way is using Chocolatey to install make by executing
choco install makein an admin privileged command prompt. - Install the SDCC compiler (version 4.4.0 or higher). Make sure to use the provided setup.exe installer so the binary executable is added to your PATH automatically.
- Install the Free-PDK prommer by unpacking the .zip file, putting it somewhere with your other programs and adding the directory containing the file
easypdkprogto your PATH manually.
After completing the installation, you can now compile and upload your code to the EDice by opening Git Bash (or another Linux Shell) in the directory containing the Makefile and running the commands listed in the section above.
Using
Hold the button for a few seconds to roll the dice. A short press or waiting for ~20 seconds will put it in power-down mode, consuming less than 0.1µA. The battery should last for years.
Cost
Hers is a short breakdown of the cost for 100 pcs:
- PCB at JLCPCB with shipping: 30€
- Components at LCSC with free/combined shipping (place PCB order first!): 34€
- CR2032 batteries from eBay/Amazon: 20€
- Material for 3D printing (1200g PLA): 25€
The total cost is then 99€ for 100 pcs.
This does not include the cost for the prommer, which are an additional ~25€.
TODO
- Create a small adapter PCB for the prommer to fit into the EDice. A piece of breadboard and some pin headers will also do the trick.
- Update the 3D model and make new rendering
License
The PCB and the images are licensed under CC-BY 4.0, the source code is under GPL v2.
For the PCB we used the KiCad symbols made by the free-pdk project: https://github.com/free-pdk/pdk-kicad-symbols/tree/master. This library is licensed under the CC-BY 4.0.
For the software the pdk-includes (GPL v2) https://github.com/free-pdk/pdk-includes and the easy-pdk-includes (GPL v2) https://github.com/free-pdk/easy-pdk-includes are used.
Images

Parts
24| Qty | Value | Footprint | References |
|---|---|---|---|
| 7 | 1k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal | R1, R2, R3, R4, R5, R6, R7 |
| 7 | LED | LED_THT:LED_D5.0mm | D1, D2, D3, D4, D5, D6, D7 |
| 4 | MountingHole | MountingHole:MountingHole_3.2mm_M3 | H1, H2, H3, H4 |
| 2 | Conn_01x04 | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J2, J3 |
| 1 | 100n | Capacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mm | C1 |
| 1 | Battery_Cell | EDice:BS-02-A1AJ010 | BT1 |
| 1 | PFS154-S16 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U1 |
| 1 | SW_Push | EDice:K2-1102SP-J4SC-04 | SW1 |
Questions
How big is the EDice PCB?
It measures 65 × 30 mm and has 2 copper layers, 1.6 mm thick.
What parts does the EDice use?
24 parts, built around the PFS154-S16, BS-02-A1AJ010 and K2-1102DP-J4SW-04. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the EDice KiCad files?
From the akaFunk/EDice repository on GitHub, at the commit this page was made from: the board is PCB/EDice.kicad_pcb and its schematic PCB/EDice.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the EDice design in my own project?
Its repository states no licence, so its author keeps all rights: ask akaFunk before reusing the design.
Similar boards
- 2 layers95 × 95 mm

- 2 layers28.8 × 14 mm

Pcb s16
serisman/pdk-digital-clock
A 4-digit 7-segment digital clock, based on the inexpensive Padauk microcontrollers
12 parts14GPL-3.0 - 2 layers106 × 65 mm

39C3badge
hackwinkel/39C3LEDbadge
hardware design files and firmware for an electronic name tag created for 39C3
58 parts3MIT - 4 layers230 × 84.9 mm

- 2 layers50 × 30 mm

- 2 layers52.4 × 32.4 mm

BSidesTLV26TinyBadge
bsidestlv/bsidestlv-2026-badge
Everything for the BSidesTLV 2026 badge: two KiCad boards, the RP2040 firmware that runs on it, and the online puzzle challenge — Alice in AI Land — that the badge is used to play.
18 partsMIT - 2 layers49.2 × 47.3 mm

- 2 layers155 × 71 mm

Panel
PHS-SMCS/Falconia-Beacon
Falconia Beacon is an ATTINY816-based, CR2032-powered LED beacon board used to make the Falconia rover visible to the SMCS Pi-in-the-sky satellite.
395 parts