Search models, users, collections, and posts

RLH - Handwired customizeable macropad

Print Profile(1)

All
A1
H2D
X1 Carbon
X1E
X1
P1S
P1P
H2D Pro
H2S
P2S
H2C
X2D
A2L

0.2mm layer, 3 walls, 100% infill
0.2mm layer, 3 walls, 100% infill
Designer
2.4 h
1 plate

Open in Bambu Studio
Boost
47
86
0
3
7
1
Released 

Bill of Materials

Maker's Supply Kits and Parts
Select all
M2x2.5x6 SHSS Machine Screw (20PCS) - AA114
M2x3.5x4 Round Threaded Brass Heat-Insert Nut (20PCS) - AB009
Bambu Filaments
Select all
Translucent Pink (32200) / Refill / 1 kg
Matte Ivory White (11100) / Refill / 1kg
List other parts
  • RP2040 pro micro MCU/Frood MCU x 1:
  • 1N4148 through-hole diodes x 14:
  • MX key switches x 12:
  • EC11 Rotary encoders (5 pin) x 2:
  • OLED screen module x 1:
  • USB-C female breakout module (4 pin) x 1:
  • USB-C male breakout module (or cut-off USB C cable) x 1:
  • 28-24 AWG wire x 1: get a few meters
  • 20-16 AWG solid core wire x 1: get a few meters

Description

Rackartyget's Little Helper - Macropad with support for VIAL

 

I have been obsessed with everything keyboard/IoT/ergonomics related for a few years now, and this is my first time creating one from basically nothing. My friend, Rackartyget, does a lot of work in Photoshop and was looking for ways to streamline their workflow, so I designed RLH with them in mind. In essence, it's a medium sized macropad with an OLED display and two rotary encoders, so nothing super fancy. I've had a blast learning how to write firmware, plan builds, and iterate on the design (this one is the 9th iteration of the second major revision sooo yeah it took a while lol). I'm hoping this will be as fun for you to make your own RLH as it was for me. 

 

Precompiled firmware is found in the provided rlh.zip. Drag and drop rlh-vial.u2f  into the MCU storage (more on that further down on this page).

Who is this for?

This is a great first project for anyone who wants to learn how to make keyboards from scratch, even if you don't know anything about coding or firmware. The soldering is straightforward, but you can still expect to learn a lot from assembling the macropad if it's your first ever soldering experience.

Bill of Materials (BoM)

Besides the printed case itself, you're going to need to get the components to actually build the keyboard. My RLH uses MX cherry red switches that I scavenged from a donated broken keyboard, and I can recommend this approach if you're a bit strapped for cash. The switches are probably the most expensive thing on this list (3D printers notwithstanding of course); the switches listed in the BoM are good value Gateron linear switches.

 

Besides the listed components, you also need soldering equipment.

 

qtythinglink
1Generic RP2040 pro micro MCU OR AliExpress
1Frood RP2040 (highly recommended)42Keebs
141N4148 through-hole diodes AliExpress
12MX key switches AliExpress
2EC11 Rotary encoders (5 pin) AliExpress
1OLED screen module AliExpress
4M2x6mm screws AliExpress
4M2 heat-sink inserts AliExpress
1USB-C female breakout module (4 pin) AliExpress
1USB-C male breakout module* AliExpres
 28-24 AWG wire AliExpress
 20-16 AWG solid core wire AliExpress

here's a google sheet with the same list as above

 

 

Assembling and wiring

The wiring schematics look as follows, and it's assumed that you're using an rp2040 MCU.
 

 

There are loads of great guides on how to handwire (3D printed) keyboards online, so I'm not going to do a whole writeup on it. Refer to the following sources if you need help

In short, you need to connect all the switches (including the encoders) in a key matrix, with diodes between each key and their respective row. Diode orientation is column -> row. Make sure that the main column/row wires don't short each other (i.e. leave enough isolation for where the wires intersect). 

 

 

 

 

 

To make the wiring more robust and easier to use day-to-day, a USB breakout module is inserted into the slot on the side of the RLH. Fix it in place with threaded heat inserts and regular M2 screws.
In this picture, you can see that I had to use the end of a USB cable to connect the breakout connector to the MCU. I didn't have any male USB C boards on hand, but I highly recommend you to either get the ones listed in the BoM, or get a McU where the D+ and D- pins have been exposed. Piit over at 42Keebs makes the Frood microcontroller, which I highly recommend. It's cheap, has the right pins exposed, and is of super quality (I'm not affiliated with 42Keebs at all, I'm just a fan).  

 

Customising the layout

Once printed, assembled, and soldered, it's time to start using your fancy new macropad. RLH runs on the Vial fork of QMK. If you're comfortable with QMK, you can use the provided folder to compile your own firmware. If this is your first custom keyboard, you should flash (install) the firmware provided by me. The process is super easy:  

  1. Connect your rp2040 microcontroller to your PC via USB. It should appear for you as a USB storage device.
  2. Drag and drop the file rlh_vial.uf2 to the microcontroller's storage (the folder that popped up as you plugged in the controller)
  3. That's it! Well done! It should now be recognised by Vial.

(note: you can only change the behaviour of the OLED display from keymaps/vial/keymap.c).

 

 

 

 

 

 

 

 

The default keymap in the provided firmware looks like this.

It is just a placeholder that you can use to check that you have wired everything correctly. To make your own layout, use Vial. Vial is a graphical interface for reprogramming keyboards in real time. The changes you make to RLH in Vial take effect instantly; no need to flash any new firmware. By default, the OLED display shows which layer is currently active. You can make the screen do cool and useful things, but that's beyond the scope of this project.

 

Get Vial here

 

 

 

 

 

 

 

I hope you give this project a try, and I hope it's as fun for you as it has been for me!

 

Boost Me (for free)

Phew, this sure has taken a lot of time. If you found this interesting or useful, consider boosting, downloading, liking, and saving this model! Thank you ever so much in advance, I truly appreciate it!

 

Note: the keycaps used in one of the photos comes from @Riskable over on Printables


Documentation (2)

Assembly Guide (1)
wiring.png
Other Files (1)
rlh.zip

Comment & Rating (0)

(0/1000)

License

This user content is licensed under a Standard Digital File License.

You shall not share, sub-license, sell, rent, host, transfer, or distribute in any way the digital or 3D printed versions of this object, nor any other derivative work of this object in its digital or physical format (including - but not limited to - remixes of this object, and hosting on other digital platforms). The objects may not be used without permission in any way whatsoever in which you charge money, or collect fees.