Skip to main content

ErgoSNM Rev 2.x

This document for the Rev 2.x of the ErgoSNM keyboard, the latest is Rev 2.1. Source files: GitHub.

My blog post: ErgoSNM——有軌跡球的分離式人體工學QMK鍵盤 (v2.1)

Features

  1. 64 keys in total, left half (with thumb cluster) 29+6 keys, right half (with trackball) 29 keys.
  2. Trackball for mouse cursor and scroll, powered by PMW3360 optical mouse sensor.
  3. USB Type-C receptacle connector, with ESD protection adn resettable fuse.
  4. Support Cherry MX style key switches and hot-swap sockets.
  5. Column-staggered layout.
  6. Top mount.
  7. Support Vial, edit keymap and configuring keyboard in real time.
  8. Uses the RP2040 ARM Cortex-M0+ MCU, with 16MB (128Mb) external flash.
  9. One user configurable monochrome LED.
  10. Either 3.5mm TRRS/TRS or USB Type-C can be selected for two halves communication cable connector.
  11. SWD and USB D+/- pads for debugging (left half only).
  12. JLCPCB's PCBA service available, no need to solder parts yourself.

Parts List

ItemQtyDescriptionLink
Left halfMain PCB1Include electronic parts and PCBGH Release Page
Top case1Choose one of the three holes type
Bottom case1
Right halfMain PCB1Include electronic parts and PCB
Top case1Choose one of the three holes type
Bottom case1
Foot (1)2
Main plate (1)2FR4
Thumb cluster plate1FR4
Thumb cluster PCB1
Trackball board1Include electronic parts and PCBGH Release Page
40mm Trackball ball1Ref
Ball transfer units (BTUs, Ball rollers)3MISUMI BCHJJ7 or CheNa BR869-7 or VCN321-7Ref1, Ref2
3.5mm TRS/TRRS or USB Type-C cable1For connect two halvesRef
FPC/FFC Cables (2)28 Pin, 0.5mm Pitch, Same side contactsRef
M2 threaded inserts21Outer Diameter: 3.5mm, Length: 3mmRef
M2 × 5mm screws21For PCB, case and plateRef
M2 × 8mm screws4For feetRef
M2 hex nuts4For feetRef
  1. This part is reversible/symmetrical and can be used on both the left and right halves.
  2. For v2.0, use JST GH1.25 8P cable instead of FPC/FFC cable, please refer to the schematic for wiring sequence.

PCB and Electronic Parts

Here are listed all the electronic components in more detail for PCBs.

Left half main PCBRight half main PCBThumb clusterTrackball board

Main PCBs

Since the left and right PCB electronic parts are identical, the following table only lists the quantities required for one half. Please multiply by 2 when manufacturing both halves.

note

If you use PCBA service, you don't have to prepare and solder most or even all of the following parts yourself.

QtyValueFootprintDesignatorJLCPCB#MFR. Part#Basic Parts (1)
35.1k0402 (1005 Metric)R1,R2,R4C259050402WGF5101TCE✔️
31k0402 (1005 Metric)R3,R7,R9C117020402WGF1001TCE✔️
2270603 (1608 Metric)R5,R6C251900603WAF270JT5E✔️
210k0402 (1005 Metric)R8,R10C257440402WGF1002TCE✔️
41uF0402 (1005 Metric)C1,C2,C8,C16C52923CL05A105KA5NQNC✔️
10100nF0402 (1005 Metric)C3,C6,C7,C9~C15C307331CL05B104KB54PNC✔️
220pF0402 (1005 Metric)C4,C5C15540402CG200J500NT✔️
1500mA, 6V0805 (2012 Metric)F1C269104SMD0805B050TF
1RT9013-33GBSOT-23-5U1C47773RT9013-33GB
1SRV05-4SOT-23-6U2C85364SRV05-4-P-T7✔️
1W25Q128JVSSOIC-8 5.23x5.23mm P1.27mmU3C97521W25Q128JVSIQ✔️
1RP2040QFN-56-1EP 7x7mm P0.4mm EP3.2x3.2mmU4C2040RP2040
112MHz3225 4Pin (3.2x2.5mm)Y1C9002X322512MSB4SI✔️
291N4148SOD-123D1~D29C815981N4148W✔️
1Red LED0603 (1608 Metric)LD1C2286KT-0603R✔️
2RESET & BOOTSW_SPST_TL3342SW1,SW2C318884TS-1187A-B-A-B✔️
29SwitchCherry MX style hot-swap socketKEY1~KEY29C2803348CPG151101S11
2USB Type-C 16P (2)HRO TYPE-C-31-M-12J1,J2C165948TYPE-C-31-M-12
13.5mm TRRS 8P (2)PJ-393 8P TRRSJ3C668609PJ-393 8PJ
1Conn 01x080.5mm Pitch 8P FPC/FFC Connector (3)J4C2856797FPC-05F-8PH20
  1. Basic Part means no additional manual feeding charge for these parts when using JLCPCB's PCBA services. Parts that are not Basic are Extended.
  2. One of the 2 USBs is used for connecting to the computer, and the other one is used to connect the other half of the keyboard. To connect the two halves, you can choose either USB or TRRS/TRS connector:
    • If you choose to use TRRS/TRS, then each half requires 1 USB and 1 TRRS/TRS.
    • If you choose to use USB, then each half requires 2 USB and no TRRS/TRS.
    • TRRS/TRS does not support hot plugging in practice.
  3. For v2.0, J4 is JST GH1.25 8P connector (Mfr. Part No: SM08B-GHS-TB(LF)(SN)), please refer to the schematic for wiring sequence.
  4. If you want to save some money, you can consider not using PCBA service soldering U1, F1 and J1~J4 (all are Extended parts), there parts are not very difficult to solder by soldering iron, and cheap to buy separately.
  5. I have never used JLCPCB's PCBA service to solder U1, F1, J1~J4 and KEY1~KEY29 parts. Please check the PCBA files yourself, especially the CPL file, if you need to.
  6. Please note that the above information is subject to change, so please refer to the current situation.

Thumb Cluster

I did not prepare the PCBA files (i.e. BOM and CPL) for thumb cluster, if you need, try Bouni/kicad-jlcpcb-tools.

QtyValueFootprintDesignatorJLCPCB#MFR. Part#Basic Parts
61N4148SOD-123D1~D6C815981N4148W✔️
6Switch (1)Cherry MX style hot-swap socketKEY1~KEY6C2803348CPG151101S11
1Conn 01x080.5mm Pitch 8P FPC/FFC Connector (2)J1C2856797FPC-05F-8PH20
1Encoder (1)Alps EC11E-Switch VerticalEC1------
  1. If you want to use encoder, only 5 switches can be insert, encoder EC1 and KEY3 share the same position. The two larger mounting pins on the encoder must be cliped.
  2. For v2.0, J1 is JST GH1.25 8P connector (Mfr. Part No: SM08B-GHS-TB(LF)(SN)), please refer to the schematic for wiring sequence.

Trackball Board

For ErgoSNM v2.1, ref to PMW3360 PCB V3.1:

For ErgoSNM v2.0, ref to PMW3360 PCB v3.0.

Build Guide

Steps summary:

  1. Prepare parts
  2. Solder
  3. Flash firmware
  4. Test
  5. Assemble
  6. Edit keymap
  7. Complete
info

Before you start, make sure the parts are available, PMW3360 and BTUs are more difficult parts to buy.

Some online electronic parts stores in my country will help find and purchase rare ICs (usually from Taobao), this is how i bought PMW3360. There are 3 different BTU models listed in the part list, and they are exact same size.

Approximate cost in USD:

  • PCBA: $80
  • 3D printing case: $46
  • other parts: $32

Prepare Parts

Please refer to Parts List and prepare all the required pares.

The cases and feet can be produced using 3D printing (I use SLA Resin for cases, MJF Nylon for feet). The plates provides Gerber files, which are produced as PCBs.

Solder

If you use PCBA service, most of the parts should not need to solder by yourself, but there are still some parts that need to solder manually.

If you are not very familiar with soldering, please read the Soldering Guide first. The parts that need attention are diodes and switch hot-swap sockets.

tip

It is recommended to solder the switches or hot-swap sockets after Test.

caution

After soldering is completed, remember to use a multimeter to test for any short circuits between the power supply (5V, 3.3V, and GND) and USB D+/-.

Flash Firmware

There are two way to flash firmware:

  1. Download Pre-build .uf2 firmware file from Releases page.
  2. Enter DFU mode.
  3. Copy and paste .uf2 file to the RPI-RP2 device.
note

If you want to build/compile .uf2, follow the steps:

  1. Git clone firmware repo.
  2. Open QMK MSYS or your preferred terminal.
  3. Navigate to the cloned repo directory and checkout to siderakb/main branch.
  4. Build via command make siderakb/ergosnm/rev2:vial. You may need to additionally install make.
caution

Please note that TRRS/TRS does not support hot plugging in practice, please plug and unplug TRRS/TRS cable after unplugging the USB cable between keyboard and computer.

info

For more infomation, please refer to QMK: Flashing Firmware and QMK: Raspberry Pi RP2040 UF2.

Test

Onec the firmware is flashed, the keyboard is ready to work.

Before proceeding to the next setps, you can test whether the keyboard is working properly to detect PCBs defects early.

You can use a site like this or this to test the keybaord. Sine the switch may not be installed on keyboard at present, you can use tweezers to act as a switch.

Assemble

  1. Use soldering iron to installing threaded inserts in keyboard case.
caution

The wall of the hole at the thumb cluster is very thin, so please be careful.

  1. Connect the FPC/FFC cables between main board and thumb cluster/trackball board.

  2. Screw main and thumb cluster plates to the case.

  3. Insert switches into the plate and PCB, you can insert the corner switches first to fix.

caution

Before inserting the switch into the hot-swap socket, check if the switch pins are bent. If you find any bent pins, please straighten them.



  1. Screw bottom cover and foots.

  2. Add your keycaps. Plugin the TRRS/TRS or USB cable to connect two halves.

caution

Please note that TRRS/TRS does not support hot plugging in practice, please plug and unplug TRRS/TRS cable after unplugging the USB cable between keyboard and computer.

Edit Keymap

ErgoSNM support Vial, you can edit keymap in real time, please refer to Vial: User manual.

Complete

Congratulations on getting a new keyboard🎉