
Hillside
mmccoyd/hillside
Family of split ergonomic keyboards with three rows of six or five keys and a generous thumb arc

Family of split ergonomic keyboards with three rows of six or five keys and a generous thumb arc
Hillside46 is an open-source printed circuit board by mmccoyd, from the mmccoyd/hillside repository on GitHub, published under the MIT licence. It is a 2-layer board of 142.5 × 101 mm with 92 parts on 54 nets, routed with 808 tracks and 91 vias.
It is built around the SRV05-4, BAV70 and SK6812MINI-EA, with the SKQGAFE010 among its other parts. Its parts include 25 switches, 16 diodes, 6 connectors, 3 capacitors and 2 resistors. It belongs with the keyboards and input boards and the AVR (ATmega, ATtiny) boards of this library.

Hillside 48 is a split ergonomic keyboard with 3x6+1+5 choc-spaced keys. It has the aggressive stagger of the Ferris plus a longer thumb arc and break-off outer pinkie columns.
So rather like a choc Kyria, minus two keys. With 42 to 48 keys, it isn't minimalist, but it is compact on finger travel while still allowing roomy keymaps. See the Hillside family readme for features common to all hillside boards. Specific to the Hillside 48 are:
Hillside includes both QMK firmware and ZMK Firmware.
The default keymap has numbers and symbols along the top layer rows for familiarity, alternate hand modifiers for all keys and a navigation and editing layer. See the keymap descrition for details.
| ` | Q | W | E | R | T |-------------------| Y | U | I | O | P | BKSPC |
| TAB | A | S | D | F | G |-------------------| H | J | K | L | ; | ENTER |
| SHIFT | Z | X | C | V | B |ESC|-----------|CAP| N | M | , | . | / | SHIFT |
------------|CTR|---|GUI|ALT|Sym|SFT|---|Nav|SPC|ALT|GUI|---| ' |------------| HOME | ! | @ | # | $ | % |-------------------| ^ | & | * | ( | ) | DEL |
| END |GUI|ALT|CTR|SFT|INS|-------------------| [ | ] | - | = | \ | ENTER |
| SHIFT | |VO-|MUT|VO+|PLY|OSM RALT|-----|MENU| { | } | _ | + | | | SHIFT |
------------|CTR|---|GUI|ALT|***|SFT|---|Adj|SPC|ALT|GUI|---|CTR|------------| CUT | 1 | 2 | 3 | 4 | 5 |-------------------| 6 | 7 | 8 | 9 | 0 | BKSPC |
| COPY | <-|DN |UP |-> |PASTE|-----------------|PGU|SFT|CTR|ALT|GUI| PG_DN |
| SHIFT |F1 |F2 |F3 |F4 |F5 |UNDO|---------|REDO|F6 |F7 |F8 |F9 |F10| SHIFT |
------------|CTR|---|GUI|ALT|Adj|SFT|---|***|SPC|ALT|GUI| --|CTR|------------See the wiki for PCB ordering, parts links and a build guide with pictures.
I wanted choc spacing but a key or so more than the Ferris and an outer pinky column. Instead of tweaking the 3x6 choc Corne I started a new PCB for more flexibility, though it grew to fill its footprint...
The bottom row of my Atreus was useful for infrequent keys, so I added two keys under the middle columns, where they seemed unobtrusive. Then one of them moved to the thumb arc, where it is more versatile. An upper thumb key seemed useful and combo-able without pushing the footprint. The result has more keys than my initial idea, but that makes keymap evolution feel less tight.
It is like a Ferris Sweep on steroids, which wound up close to a Choc Kyria but requires board fabrication and SMT soldering. Naming ideas included FeistyCorne, LongFir and LongSweep, but Hillside seemed the most fun.
To test if the key layout suits your fingers, print these in landscape mode.
SVG files contain dimension information, so your browser should print it the correct size regardless of what size paper you are using. As an extra check, the images each contain marked length lines, which you can check with a ruler.
The images are black lines on whatever the background is, so they do not like browser dark mode backgrounds, but will print black on white.


| Qty | Value | Footprint | References |
|---|---|---|---|
| 21 | SW_Key | hillside:pg1350-R_hotswap | K1, K2, K3, K4, K10, K11, K12, K13, K14, K15, K16, K17, K18, K21, K22, K23 +5 |
| 16 | Bumpon | hillside:Bumpon | H2, H8, H9, H10, H11, H12, H13, H14, H15, H16, H17, H18, H19, H20, H21, H22 |
| 12 | BAV70 | hillside_basic:SOT-23 | D7, D8, D9, D10, D11, D12, D13, D14, D15, D19, D20, D21 |
| 6 | Breakoff Hole | hillside_basic:HoleBreakoff_1mm | H26, H27, H28, H29, H30, H31 |
| 5 | Via | hillside_basic:VIA-0.8mm | V1, V2, V3, V4, V5 |
| 4 | MountHole | hillside:MountingHole_2.2mm_with_PCB_insert_rings | H4, H5, H6, H7 |
| 4 | SK6812-MINI-E | hillside_basic:SK6812-MINI-E | D1, D2, D3, D4 |
| 3 | 4u7 | hillside_basic:C_0805_2012Metric | C1, C2, C3 |
| 3 | ToolingHole | hillside_basic:ToolingHole_1.152mm | H23, H24, H25 |
| 2 | 4.7k | hillside_basic:R_0805_2012Metric | R1, R2 |
| 2 | Bat_Neg | hillside_basic:1pin_conn | J4, J6 |
| 2 | Bat_Pos | hillside_basic:1pin_conn | J3, J5 |
| 2 | SW_Rotary | hillside:pg1350-DR_rotary_hotswap | K19, K20 |
| 1 | Haptic | hillside:Pimoroni_Haptic | J1 |
| 1 | Left_Board | Jumper:SolderJumper-2_P1.3mm_Open_TrianglePad1.0x1.5mm | JP2 |
| 1 | Logo | hillside:Hillside_Logo | H3 |
| 1 | Mount_Tenting | hillside:Tenting_Puck | H1 |
| 1 | ProMicro_r | hillside:ProMicro_v2 | U1 |
| 1 | SKQGAFE010 | hillside_basic:SW_SPST_SKQG_WithStem | SW1 |
| 1 | SRV05-4 | hillside_basic:SOT-23-6_Handsoldering_threenumbered | U2 |
| 1 | SW_Power | hillside_basic:SW_SPDT_JS202011AQN | SW2 |
| 1 | TRRS | hillside:MJ-4PP-9 | J2 |
| 1 | VccJumper | Jumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm | JP1 |

mmccoyd/hillside
Family of split ergonomic keyboards with three rows of six or five keys and a generous thumb arc


mmccoyd/hillside_dactyl_shield
MCU breakout boards to create a small Dactyl keyboard with battery, display, USB-C split, and LED underglow.


famichu/MagLevSwitch_ReferenceKeyboard
The reference keyboard for the MagLev Switch MX

johflo/Seeed-LoRa-E5_BME680
Seeed Wio E5 LoraWan BME680 node without seperate MCU. Data from the BM680 is sent through the Helium LoraWan network to Cayenne to visualize the measured data

devbyesh/rover
A rover built on the ESP32 chip coded with the ESPIDF framework. Can be controlled remotely and has an omniwheel setup to move in all directions without rotating.


It measures 142.5 × 101 mm and has 2 copper layers, 1.6 mm thick.
92 parts, built around the SRV05-4, BAV70, SK6812MINI-EA and SKQGAFE010. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the mmccoyd/hillside repository on GitHub, at the commit this page was made from: the board is hillside46/hillside46.kicad_pcb and its schematic hillside46/hillside46.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).