1 / 2
Low Profile 12 Key Macropad — image 1
1 / 2

Low Profile 12 Key Macropad

Order a print of this model

We calculate the final price from your selected file. You review and accept it before payment.

Saved on this device.

Low profile 12 Key macro pad with an rotary encoder.

Rating
5 / 5
Likes
35
Downloads
128
Makes
1
Views
1,977
Reviews
1

Updated at source:

Model information

Category
Computers
License
Creative Commons — Attribution — Noncommercial

Low profile macropad with mechanical keys.

Parts

AmountPartNotesSources
131N 4148 Diode DO-35 Diode Formfactor works bestJellybean item: Amazon, Ebay etc
12Cherry MX Low Profile SwitchCherry MX Low Profile Switch | Lower body part of the switch sitting below the top plate should not go deeper than 7mmSeems to be a bit difficult to source at the moment. I am using Reddragons from Aliexpress https://de.aliexpress.com/item/1005004299855522.html
1Rotary Encoder Alps EC11E TypeLower body part of the switch sitting below the top plate should not go deeper than 7mmJellybean item: Amazon, eBay etc. https://www.amazon.de/dp/B08728PS6N in my build
210k ResistorM3x4 raised countersunk head screws Jellybean item: Amazon, eBay etc 
10M3x4 raised countersunk head screws Do not use hex-nut keyed screws as their heads will be too tallJellybean item: Amazon, eBay etc
8M3 heated insertsOptional. There are a lot of variants out there. Part is designed for ruthex (4mm hole)Jellybean item: Amazon, eBay etc. https://www.amazon.de/dp/B08BCRZZS3 in my build
1Pro Micro Arduino (ATMEGA32U4) USB-C VariantThere are a lot of clones out there. Dimension and part population might differ. You might need to remix the shell printed component if your dimensions are too far off. https://www.amazon.de/dp/B0B5F3GT42 in my build. https://de.aliexpress.com/item/1005003643595104.html should work as well
12Key CapsDSA profile should work. In my build they would bottom out against the plate but still trigger. A printable low profile design is also included in the print files.https://de.aliexpress.com/item/1005004840360158.html in my build. 
16x6x6 Micro SwitchSnip off two legs, solder from the top.

Get an assortment of 6x6 Switches of eBay or Amazon. They have different shaft lengths, pick one which protrudes out of the shell.

Printing

Two variants of the body are included. One for heated inserts and one for self tapping. Recommended parameters:

  • PLA
  • 0.1mm layer height (or 0.12mm if you believe in magic)
  • 100% infill - walls are pretty thin, using any infill pattern will not save you much printing time and quality will suffer
  • Enclosure and Pockets use pretty tight tolerances. Chances are you will have to tweak your perimeter and hole tolerance. I was running with Superslicer defaults here.

If you are using printed keycaps, you might have to work the shaft hole a bit. What worked for me is to use a stem of an disassembled full size mx switch and a pair of pliers to ram it into the cap. This will debur the shaft cross and allow for easier mounting onto the final switches. 

Wiring

Wire the keyboard matrix as show in the diagrams below. This is pretty much the standard way to do this for all hand wired keyboards I have come across. If you have done hand-wired keyboards before, this will be business as usual.

Pro Micro MCU Mapping

NetMCU Pin
Column 1D4
Column 2D0
Column 3, Encoder Switch Pin 1D1
Row 1B4
Row 2E6
Row 3D7
Row 4C6
Row 5 / Encoder Switch Pin 2B5
Encoder AF4
Encoder BF5
Encoder CGND
Reset Button Pin 1RST
Reset Button Pin 2GND


 

As for the encoder: lines A and B need to be pulled up via 10k to VCC. 

Row 5 is used for the encoder exclusively. The other side of the encoder switch is wired to Column 3 / D1. Please note that I have also included a diode for the encoder switch, this opens the possibility of populating 2 more switches on Row 5

For the wiring use AWG 28-30, you might have a difficult time of stuffing everything into the case when closing up. Keep the length of the wires also to a minimum.

Firmware

QMK and Vial 

The default keyboard mapping is as follows:

789
456
123
DEL0DOT

Rotary encoder is configured to Volume Up / Volume Down / Mute

Flashing

Put the microcontroller into programming mode (Usually by doubletapping the reset button) and flash the provided vial or default (vanilla qmk) hex file. QMK toolbox should help you out here. If you prefer to use avrdude, this might help you out:

QMK

avrdude -p m32U4 -P /dev/ttyACM0 -c avr109 -U flash:w:./pls_macropad_default.hex

Vial

avrdude -p m32U4 -P /dev/ttyACM0 -c avr109 -U flash:w:./pls_macropad_vial.hex

If your system meets the vial requirements (udev rules for linux) you should be able to access and configure your keyboard via https://vial.rocks now:

 

Remixing

Yes Please! Find STEP files attached and here is the onshape project if you prefer that

Tags