

OpenCalc
OpenCalc whole code
- Size
- 91.5 × 187.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 41
- Nets
- 40
- Pads
- 254
- Tracks, vias
- 240, 0
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 23 Sep 2025
- Updated
- 30 Jun 2026
Overview
OpenCalc is an open-source printed circuit board by TheOpenCalc, from the TheOpenCalc/OpenCalc repository on GitHub. It is a 2-layer board of 91.5 × 187.5 mm with 41 parts on 40 nets, routed with 240 tracks and 0 vias.
Its parts include 39 switches and 1 IC. It belongs with the RP2040 boards of this library.
README
README.mdThis repo contains everything about OpenCalc, you can see and understand how everything is built. It should be explained in the differents README (depending on when you read this). To get more info about how you can contribute and join us you can check our website ( opencalc.fr )
Web Simulator
Try the calculator in your browser! The firmware can be compiled to WebAssembly:
# Install Emscripten first (see WASM_BUILD.md)
source ~/emsdk/emsdk_env.sh
./firmware/wasm/build_wasm.sh
# Run the web simulator
cd web-sim
npm install
npm run devFor detailed build instructions, see:
WASM_BUILD.md- How to compile the firmware to WASMweb-sim/README.md- Web simulator documentation
Build Your Own
You are welcome to build and/or modify your OpenCalc (it's open source but you probably already know it if you read this) , you can choose to build everything from scratch or buy some pieces from us depending on your time and knowledge. The calculatore is made frome
- A case which can be 3D printed
- A PCB wich can be manufactured or homemade (in theory, we would love to hear from you if you did it)
- A battery (we very highly advise NOT TO build it yourself from bare lithium)
- A raspberry pico 2 (or pi pico depending on performance you wish to have) which you can buy or build yourself
- A screen you can buy from our website
If you custom your OpenCalc you can send us a message in order to share it with us, you could help build a better calculator without even knowing it.
Parts
41| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 53 | Button_Switch_THT:SW_PUSH_6mm | SW35, SW39 |
| 1 | 11 | Button_Switch_THT:SW_PUSH_6mm | SW1 |
| 1 | 12 | Button_Switch_THT:SW_PUSH_6mm | SW2 |
| 1 | 13 | Button_Switch_THT:SW_PUSH_6mm | SW3 |
| 1 | 14 | Button_Switch_THT:SW_PUSH_6mm | SW4 |
| 1 | 15 | Button_Switch_THT:SW_PUSH_6mm | SW5 |
| 1 | 16 | Button_Switch_THT:SW_PUSH_6mm | SW6 |
| 1 | 17 | Button_Switch_THT:SW_PUSH_6mm | SW7 |
| 1 | 18 | Button_Switch_THT:SW_PUSH_6mm | SW8 |
| 1 | 21 | Button_Switch_THT:SW_PUSH_6mm | SW9 |
| 1 | 22 | Button_Switch_THT:SW_PUSH_6mm | SW10 |
| 1 | 23 | Button_Switch_THT:SW_PUSH_6mm | SW11 |
| 1 | 24 | Button_Switch_THT:SW_PUSH_6mm | SW12 |
| 1 | 25 | Button_Switch_THT:SW_PUSH_6mm | SW13 |
| 1 | 26 | Button_Switch_THT:SW_PUSH_6mm | SW14 |
| 1 | 27 | Button_Switch_THT:SW_PUSH_6mm | SW15 |
| 1 | 28 | Button_Switch_THT:SW_PUSH_6mm | SW16 |
| 1 | 31 | Button_Switch_THT:SW_PUSH_6mm | SW17 |
| 1 | 32 | Button_Switch_THT:SW_PUSH_6mm | SW18 |
| 1 | 33 | Button_Switch_THT:SW_PUSH_6mm | SW19 |
| 1 | 34 | Button_Switch_THT:SW_PUSH_6mm | SW20 |
| 1 | 35 | Button_Switch_THT:SW_PUSH_6mm | SW21 |
| 1 | 36 | Button_Switch_THT:SW_PUSH_6mm | SW22 |
| 1 | 37 | Button_Switch_THT:SW_PUSH_6mm | SW23 |
| 1 | 38 | Button_Switch_THT:SW_PUSH_6mm | SW24 |
| 1 | 41 | Button_Switch_THT:SW_PUSH_6mm | SW25 |
| 1 | 42 | Button_Switch_THT:SW_PUSH_6mm | SW26 |
| 1 | 43 | Button_Switch_THT:SW_PUSH_6mm | SW27 |
| 1 | 44 | Button_Switch_THT:SW_PUSH_6mm | SW28 |
| 1 | 45 | Button_Switch_THT:SW_PUSH_6mm | SW29 |
| 1 | 46 | Button_Switch_THT:SW_PUSH_6mm | SW30 |
| 1 | 47 | Button_Switch_THT:SW_PUSH_6mm | SW31 |
| 1 | 48 | Button_Switch_THT:SW_PUSH_6mm | SW32 |
| 1 | 52 | Button_Switch_THT:SW_PUSH_6mm | SW34 |
| 1 | 54 | Button_Switch_THT:SW_PUSH_6mm | SW36 |
| 1 | 55 | Button_Switch_THT:SW_PUSH_6mm | SW37 |
| 1 | 56 | Button_Switch_THT:SW_PUSH_6mm | SW38 |
| 1 | 58 | Button_Switch_THT:SW_PUSH_6mm | SW40 |
| 1 | RaspberryPi_Pico | Module:RaspberryPi_Pico_Common_Unspecified | A1 |
| 1 | TFT_320x240 | ili:TFT-320x240 | U5 |
Questions
How big is the OpenCalc PCB?
It measures 91.5 × 187.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the OpenCalc use?
41 parts. 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 OpenCalc KiCad files?
From the TheOpenCalc/OpenCalc repository on GitHub, at the commit this page was made from: the board is PCB/PCB.kicad_pcb and its schematic PCB/PCB.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the OpenCalc design in my own project?
Its repository states no licence, so its author keeps all rights: ask TheOpenCalc before reusing the design.
More from TheOpenCalc/OpenCalc
1- 2 layers82.9 × 144.2 mm

Similar boards
- 2 layers70 × 35 mm

- 2 layers270 × 11 mm

Daylight Disco
VoronDesign/Voron-Hardware
Cool Hardware designed by the Voron Design group
41 parts1.1kGPL-3.0 - 2 layers27.5 × 48.3 mm

ICE40DevBoard
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
41 parts915 - 2 layers45 × 25 mm

Easy PD Sink
openwch/ch32v003
CH32V003 is an ultra-cheap RISC-V MCU with 2KB SRAM, 16KB flash, and up to 18 GPIOs that sells for under $0.10
41 parts599 - 2 layers97 × 78.5 mm

Dumbpad
imchipwood/dumbpad
Simple 4x4 numpad with rotary encoder. Powered by QMK via ATmega32u4 Pro Micro
41 parts517GPL-2.0 - 2 layers96.1 × 78.6 mm

EYEBROW WARNING INDICATOR LEFT
jrsteensen/OpenHornet
OpenHornet 1:1 F/A-18C Simulator Repository
41 parts431 - 2 layers37 × 15 mm

- 2 layers20.3 × 69.7 mm

PG attiny404
fabiansteiner/OpenValve
3D-printable pinch valve for irrigation and sensor-driven liquid control.
41 parts276CERN-OHL-S-2.0