cirrus40

Public

@schuay

Download board files

Files for version 1. Pick what you came for.

Share cirrus40

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

Cirrus40 Keyboard

The Cirrus40 is a 40% split mechanical keyboard, with an ortholinear layout and a focus on usable rotary encoders.

Design Considerations

  • A 3x thumb cluster where each key is equally usable and comfortable to reach.
  • Rotary encoders under the palms are nicely reachable without moving hands from the homerow position. One-handed use together with homerow modifiers (think: switching tabs, workspaces; word-by-word navigation, selection, and deletion). Hardware debouncing for the perfect input signal; no more missed transitions.
  • A full 3d printed case protects the internals.
  • An optional 3d printed 30deg tenting stand for rock-solid tenting. The tenting stand integrates perfectly with the case.
  • An ortholinear layout. Why not columnar stagger: it's comfortable at rest, but increases separation between the pinky and ring fingers in motion.
  • A hot-pluggable wired USB-C interconnect between halves. USB-C cables are widely available.
  • Support for both wired and wireless operation.
  • Simple tenting using M3 screws.
  • No toys: no LEDs, no displays.
  • Only widely available and inexpensive parts.

The Cirrus40 combines some of the favorite aspects of my previous builds (the Cheapino's thumb cluster and the Lotus58's key layout and USB-C interconnect). I got a bit fixated on optimizing encoder precision and ergonomics, which is why you'll see the hardware debouncing circuit, the below-palm position, and the strong recommendation for quality Alps encoders.

Firmware

QMK: qmk_firmware. My own keymap is available as an example at qmk_userspace.

ZMK: Contributions welcome. zmk-config hasn't been updated for Cirrus40 Revision 2 yet.

Required Files

All files required for manufacture are located in the most recent release directory.

Ordering guide

TLDR: PCB and case manufacturing from JLCPCB, electronics components from LCSC, and the rest from AliExpress with Choice shipping.

  • jlcpcb.com:
    • For the PCB: it's safe to stick with default values.
    • For the case: I used 9600 Resin (Spray Painting-Matte-Black) for the case and PA12-HP Nylon for the tenting stand with good results. Please let me know if you experiment with other materials.
  • lcsc.com: See doc/bom.csv for more info. Note that the USB-C connector I used is currently out of stock and NOT included in doc/bom.csv.
  • aliexpress.com: Great for switches, keycaps, encoder heads, the RP2040 ProMicro MCU, MCU pin headers, screws, spacers, nuts, etc. I've had good experiences with "Choice" shipping.

Note: jlcpcb.com and lcsc.com offer combined shipping; this is not recommended, as it was more complex, more expensive, and slower when I tried it.

Build guide

A detailed, step-by-step build guide is not yet available. Contributions on this front are very welcome!

However, the build process is straightforward for those with some experience in hand-soldering keyboards. The soldering difficulty is medium-to-easy; the surface-mount components are in a large (0805) package and are suitable for hand-soldering. The USB-C connector is also simpler than it looks: the wiring is such that all data pins can simply be bridged together (i.e. precise drag-soldering is not strictly needed).

I usually do the USB-C connector and SMD components first, followed by diodes and hotswap sockets; and finally the MCU plus socket and encoders. All components (except the encoder) go on the bottom side of the PCB. Consult the kicad files if something is unclear. A multimeter is good to have around for verification and error search.

Bill of Materials

A single keyboard build costs around 80EUR including shipping and customs from JLCPCB and LCSC.

Core Components

PartQuantityNotes
Reversible PCB2From the Gerber files
3D Printed Case1From the STEP files. Tenting stand is optional.
MX switches36
MX hotswap sockets36
EC11 rotary encoders2ALPS EC11E15244G1 is strongly recommended.
Encoder knobs2
1N4148 or 1N4148W diodes40SOD-123 or SOD-323 package
100nF capacitors40805 package
10kOhm resistors40805 package
8.2kOhm resistors40805 package
MCU Sockets / Pin Headers2 setsFor socketing the microcontrollers

Wired Build Components

PartQuantityNotes
Pro Micro (RP2040) MCU2
Ferrite beads40805 package, e.g., 220Ω@100MHz
USB-C mid-mount connector2e.g., LCSC C963373
ESD protection diode2e.g., LCSC C558418

Wireless Build Components

PartQuantityNotes
nice!nano v2 MCU2
LiPo Battery2301230 (110 mAh) size recommended
Power slide switch2e.g., LCSC C431540

Hardware

PartQuantityNotes
M2x4mm screws20Use M2x6mm for the 4 case holes if using the tenting stand
M2x7mm spacers10
M3 screws and nuts4 (opt)For basic, non-stand tenting

Release history

Released files can be found in the releases/ directory.

  • releases/20251220: Revision 2. 3x5+3 with a full 3d printed case and 30deg tenting stand. Hardware encoder debouncing.
  • releases/20251001: Revision 1. 3x6+3 with a sandwich case.

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.