3D model · Printables

4x3 Macropad with Rotary Encoder and 1.13" OLED Screen

Model details

Platform
Printables
Price
Free
License
CC0
Public domain: print, modify and sell, no attribution required.
Formats
STL
  • 1 Likes
  • 3 Downloads
  • 0 Makes
  • 0 Comments
  • 64 Views

Author:Ayaan Manzar

Published

Description

A simple and clean design for a 4x3 (Handwired) MX keyswitch macropad featuring a rotary encoder with and a 1.3" OLED Screen

Very Simple Build, Runs off bluetooth, Key assigments can be made directly in Arduino IDE and reconfigured very easily. No ghosting or debounce issues due to wiring each key individually and daisy chaining the ground. Used Arduino libraries allow for ghost keys, macros and whatever characters you may need, including F keys upto F24.

Screen can be animated and modified as much as you can imagine due to the U8g2 Library. I personally added startup, idle and active bongo cat animations for my keystrokes and actions as well as 2 different screensavers to prevent burn-in.

Got the knurled knob by Capra-Audio on printables to go with the encoders. Used old keycaps from a donor keyboard for proof of concept. Will update post later with custom keycaps with extra depth to go with the indent for each key and action.

Used standard electric tape to hold the screen in place, also protects it from contact with the esp32 underneath.

Print Settings:

Printed with standard 15% infil with Dowell PLA. 50g for enclosure, 20 for the top cover with ironing.

Recommend support for printing baseplate due to the screen pcb cutout underneath.

Print Features:

- Enclosure around 30mm to house wires and esp32 under the screen.

- Indent around keyswitches for cleaner look with keycaps. (could be made deeper, requires 1.4 to 2mm thickness for keyswitch slots.)

- Port cutout in enclosure wall with support piller to seat ESP32 or any 30-38 pin Microcontroller. (Can be adjusted by printing 1 or 2mm thick rectangles for tighter fitting. Can fit Micro-USB and USB-C

- Cutout for screen pcb under surface for a flush fit with the surface

- Rotary Encoder hole slightly smaller than EC11 size. with some elbow grease and scraping, the screw can catch and tighten itself onto enclosure.

- No closing mechanism added for Users' own preferred.

List of Parts:

- Nodemcu ESP32S 38 Pin Microcontroller or any Microcontroller with enough pins to account for each keyswitch, encoder and screen. (I used 17 + 2 for Ground and 1 for 3.3v)

- Rotary Encoder with Button (EC11 or KY040)

- 1.3" OLED Screen (SSH1106/SSD1106)

- 12 Keyswitches with 14x14mm dimensions with Keycaps of your choice. (Cherry MX sizing)

- Dupont and Normal wire.

Libraries used for the project:

- Adafruit BusIO

- Adafruit GFX Library

- Adafruit SSH110X

- Bounce2

- ESP32 BLE Keyboard by Gaurav Sharma

- NimBLE-Arduino

- U8g2

Board Managers:

- Arduino ESP32 Boards

- esp32 by Espressif

Can provide the Arduino IDE sketch for the build if needed. Can be made with claude or gemini too its so simple.

If any modifications are required, feel free to comment and I will assist you however I can.

Tags

More like this

Similar models

Names are used only to indicate the source of a result. Polyzon is not affiliated with the listed sites.