All
SOLID MODELSingle Board Computers (SBCs)25-May-2026

Pico Calculator

yagoob
4 Files
stl Format

Description

Pico Calculator

Pico Calculator is a portable mechanical-switches calculator platform powered by the Raspberry Pi Pico. If you are a fan of mechanical keyboards, this is a fun project for you.

The project currently includes two versions:

Pico Calculator

A lightweight and portable version featuring:

  • Portable lightweight design
  • 1602 I2C LCD
  • Beginner-friendly assembly

Pico Calculator Plus

An enhanced desktop-oriented version featuring:

  • Larger 1604 I2C LCD display
  • 4 utility shortcut function keys:

- Percentage calculation

- Percentage difference calculation

- Customizable currency conversion through firmware (default: USD to BHD)

- Clear functionality

  • Independent power management for LCD and key backlighting
  • LED key backlighting (optional)

Parts Needed

Shared Components

Controller
  • Raspberry Pi Pico
Power System
  • 3.7V Li-ion battery
  • TP4056 USB-C Charging Module with Protection
  • 5V Boost Converter Module
  • 12mm Latching Power Switch with LED light
  • JST Connectors / Plugs
Input Components
  • Your preferred MX Mechanical Switches
  • Keycaps
LCD Components
  • I2C LCD Backpack Adapter
Hardware
  • M3 screws
  • Wiring
  • Solder

Pico Calculator

  • 1602 16x2 HD44780 LCD Display

Pico Calculator Plus

  • 1604 16x4 HD44780 LCD Display
Optional LED Backlight Circuit
  • 3mm LEDs for key backlighting
  • Resistors
  • 2N2222 transistor
  • Dedicated boost converter module for the LED circuit
  • Transparent legend keycaps

Wiring

LCD (I2C)

  • SDA → GP0
  • SCL → GP1
  • VCC → 5V (from boost converter)
  • GND → GND

Switches

All switch inputs are connected directly to available GPIO pins on the Pico and wired to VCC.

The following GPIO pins are used for button inputs:

`GP2, GP3, GP4, GP5, GP6, GP7, GP8, GP9, GP10, GP11, GP12, GP13, GP15, GP16, GP17, GP18, GP19, GP20, GP21, GP22, GP26`

GPIO assignments are defined in the firmware and can be adjusted depending on enclosure layout to simplify assembly.

Power System

  • 3.7V Battery → TP4056 IN+ / IN-
  • TP4056 OUT+ → switch → Boost Converter IN+
  • TP4056 OUT- → Boost Converter IN-
  • Boost 5V OUT → System VCC
  • Switch LED → 3.3V → GND

(make sure your switch includes a built-in resistor or use an external resistor)

  • GND → Common ground (all modules)

Optional LED Circuit (Plus Version)

  • GP14 → Base of 2N2222 (through resistor)
  • Collector → LED cathodes
  • Emitter → GND
  • LED anodes → 5V via resistors
  • Powered by dedicated boost converter rail

Firmware

Install CircuitPython on your Raspberry Pi Pico, then download the required LCD library from the GitHub link provided below.

Finally, choose either `calculator.py` or `calculator-plus.py`, rename it to `main.py`, then copy it to the device root directory.

Two firmware versions are provided:

Pico Calculator

`calculator.py`

  • Standard calculator functionality
  • Single press `CLS` = Backspace
  • Double press `CLS` = Clear all
  • LCD power management

Pico Calculator Plus

`calculator-plus.py`

  • Backspace (`NumLock`) and clear functions (`F1`)
  • Percentage calculation (`F2`)
  • Percentage difference calculation (`F3`)
  • Currency conversion (`F4`) — customizable via code
  • LED + LCD power management

Step-by-Step Installation

1. Install CircuitPython on the Raspberry Pi Pico

2. Download and copy the required LCD library to the `/lib` folder:

https://github.com/dhalbert/CircuitPython_LCD/tree/main/lcd

3. Rename the selected Python file (`calculator.py` or `calculator-plus.py`) to `main.py`

4. Copy `main.py` to the device root

5. Done.

Tips

  • Both the LCD and switches are designed for a snug fit inside the enclosure. A small amount of hot glue can be used to secure the LCD if needed.
  • It is recommended to first wire the LCD and switches to the Pico, install the firmware, and fully test the calculator before adding the battery and charging circuit.
  • The enclosure exposes only a single external port for battery charging. The charging module can be secured using hot glue.
  • The Pico is intended to remain inside the enclosure after flashing since no further interaction is normally required.

Downloads

Pico-Calculator-front.stl
177.6 KB
Pico-Calculator-base.stl
56.7 KB
Pico-Calculator-plus-front.stl
193.0 KB
Pico-Calculator-plus-base.stl
55.9 KB