Skip to content

Shiftboard keyboard is a custom ergonomic split RP2040 and shiftregister based mechanical keyboard.

Notifications You must be signed in to change notification settings

JamFox/Shiftboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Shiftboard

Shiftboard is a custom ergonomic split mechanical keyboard.

Roadmap / Feature list

  • 4x6 column staggered keys and 2x3 thumb clusters
    • Leftmost 4x1 or topmost 1x6 part of the PCB can be snapped off
  • QMK supported microcontroller(s)
    • RP2040 not officially supported yet, but solutions exist and work is underway to support it. Python based firmware solutions offered as an alternative.
  • Direct mapped pins, shift-register or IO expander to eliminate need for matrix diodes
    • 74HC165 shift-registers used
  • Built-in controller for lowest profile
    • Dropped, in favor of hassle free plug-in and more easliy repairable/upgradable socketed MC
    • Separate design with SMD components planned
  • USB-C connector
    • Comes with the controller
  • Choc hotswap sockets for low cost and profile
    • Dropped, in favor of lower profile. Hotswap sockets can be dropped in into the existing stock footprints.
  • BLE
    • Free pins for BLE module
  • Trackpad, trackpad or joystick-like for thumbs
    • Cirque trackpad?
  • 3D printed case
  • Magnets on halves
  • RGB lighting support

Parts

Firmware

Will most likely use the QMK firmware

Inspiration

Keyboard Inspiration

Keyboard Modification Inspiration

This particular keyboard is a derivative of the Peregrine keyboard (although that keyboard is wireless and this one, the Peregrine ZH, is not).

The keyboard itself features some unique items that set it apart: a set of 5-way switches that are directly accessible for use by the thumb, allowing for the user to either have a much more robust set of modifiers immediately available or allow for the use of numbers without having to resort to additional layers. In combination with the tact switches, this makes input for many things faster than would otherwise be possible with a configuration that isn't as compact. There is also a rocker switch and two encoders that can be used for navigation or media functions.

The other unique thing about this keyboard is that it uses magnets to hold the center add-on board in place. The one shown in this image is placeholder, but underneath it is held on with a set of magnets and modular connectors so it's easy to change out while still having strong connections to the main board while still in use.

There are a few extra MCU pins broken out (I2C and analog pins) so that you can use things like an OLED display. However, the real neat part here is that one of the on-board USB hub's ports is connected to one of the modular connector ports. This means that the add-on module can be an entirely separate USB device that is capable of being individually programmed. This makes it easier to keep the keymaps that you like, while making it easier and faster to integrate new add-on module functionality. It also means that a single keyboard could be running some combination of ZMK, QMK, CircuitPython, Arduino, or whatever your favourite way to code and interact with electronics is - all concurrently, all at the same time.

Southpaw hardware repo

The trackpad module is actually a ProLab mouse, which was a kickstarter. It uses a trackball module that is similiar to the ones you've surely seen popping up around here, but is self contained and has a few additional buttons and acts as fully independent mouse. It's a low tech way to integrate pointing functionality into a ZMK keyboard - it's simply attached with some velcro, so you can pull it out and use it separately.

Otherwise, the board has a Pro Micro compatible footprint because I've got so many compatible boards that are both wired and wireless, so it makes it easy to throw in whatever controller.

As with pretty much all of my boards lately, it's hot swappable, low profile, and uses Choc spacing for the sake of compactness. I'm using the two five way switches and the small black tactile buttons you see in the top middle section as its own number row. The bottom middle piece is a low profile jog wheel rotary encoder.

Southpaw hardware repo

It's a brand new variant of the Centromere Mini with a few new tricks up its sleeve. Namely, a few tweaks in pinky stagger and thumb cluster arrangement. There are 5 way switches to add a bunch more options in the keymap as to what goes on the base layer. What is a new part for me is this 3 way rocker switch - it rotates clockwise and counterclockwise. And you can also push it in. With a bottom plate or case elevating the board a bit, it makes an excellent way to mimic encoder functionality without making the board any bigger, and entirely avoids the current leakage many common cheap encoders have that can negatively affect battery life.

Southpaw hardware repo

Keyboard Design and PCB Resources

DIY Keyboard from Scratch - with QMK and ATmega32U4 by Datulab Tech

Custom 3D Printed Split Keyboard by Jan Lunge

How we designed a mechanical keyboard PCB! by KoBuss

PCB Desing Video Series by hadi

Keyboard matrix explained

Making our own Macro Keyboard - Designing our own PCB

KiCad PCB Generator quick demo

From Idea to Schematic to PCB - How to do it easily!

Creating your own custom hardware (printed circuit boards)

How To Make A Custom PCB From Design To Assembly

Keyboard PCB Guide

Keyboard designer wiki

Handwiring guide

Awesome Electronics

Split keyboard layout comparison

KLE

Plate & Case Builder

About

Shiftboard keyboard is a custom ergonomic split RP2040 and shiftregister based mechanical keyboard.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published