Skip to the content
PCBKitNew board
4 layers214 × 142.6 mmUnmechanical sweepish, the printed circuit board in 3D

Unmechanical sweepish

ebastler/UnMechanical13

Capacitive touch keyboard running QMK firmware

Size
214 × 142.6 mm
Copper layers
4
Thickness
1.6 mm
Parts
168
Nets
132
Pads
616
Tracks, vias
1,366, 161
Pours
19
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
25 Dec 2023
Updated
3 Aug 2024

Overview

Unmechanical sweepish is an open-source printed circuit board by ebastler, from the ebastler/UnMechanical repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 4-layer board of 214 × 142.6 mm with 168 parts on 132 nets, routed with 1,366 tracks and 161 vias.

It is built around the OPA340NA, 74HC4051 and SRV05-4, with the 1N4148WT, AO3400A and BLM15PX121SN1D11 among its other parts. Its parts include 44 resistors, 36 capacitors, 14 diodes, 10 ICs and 6 connectors. It belongs with the keyboards and input boards and the STM32 boards of this library.

Main components

7

README

README.md

UnMechanical

Unmechanical is an attempt to create a capacitive touch keyboard, replacing switches with touchpads.

The operating principle is pretty much unchanged from the EC boards by cipulot. Basically, the columns are strobed by the MCU, and the capacitive touchpad forms a capacitive voltage divider together with a 220pF resistor on the PCB. The voltage over the capacitor is measured to determine the capacity of the touchpad, which strongly changes if the pad is touched.

In order to be able to scan multiple rows, the board uses an analog mux chip that switches from row to row. The input signal is amplified by an OPAMP, since QMK does not offer support for the STM32G431 built-in OPAMPs yet.

Sweepish

So far, this repository contains a single board, "Sweepish", which consists of a Sweep 3x5 alpha cluster, and a modified 3 key thumb cluster.

Features:

  • 36 capacitive touch-keys (Layout similar to Sweep)
  • Magnetic split connect, allowing for unibody-use
  • USB-C PD peripheral of the STM32G431 chip connected to USB-C port
  • Circuitry and hole in PCB to mount a Switch Joycon haptic actuator and use it for typing feedback

topside

botside

The board is designed to be used as a unibody, held together by HytePro M411P magnetic pogo connectors, but can also be made into a "proper" split board by using a magnetic cable assembly instead.

Firmware support, as well as some optimizations to make the board nicer to use, are still being worked on (so far it can only work as a single half, split EC keyscan does not work yet). The repo is only published as a proof-of-concept - more or less what the entire board design was for, in the first place.

This keyboard also uses the USB-C PD peripheral of the STM32G431 since I wanted to make a test-board to experiment using it.

Pictures

topside

botside

A short video showing the board in action can be found on my youtube channel: https://youtu.be/7uHqJic0PQ8

Thanks

  • cipulot for his EC boards, EC QMK keyscan firmwares and help in developing this PCB
  • PCBWay for the gorgeous sponsored PCBs - couldn't have done it without you!

Parts

168
QtyValueFootprintReferences
36ECec_finger_touch:capsense_finger_1EC1, EC2, EC10, EC11, EC12, EC13, EC14, EC15, EC16, EC17, EC18, EC19, EC20, EC21, EC22, EC23 +20
16100RResistor_SMD:R_0402_1005MetricR1, R2, R4, R8, R9, R10, R11, R12, R23, R24, R26, R30, R31, R32, R33, R34
16100nCapacitor_SMD:C_0402_1005MetricC5, C6, C8, C9, C10, C14, C17, C18, C23, C24, C26, C27, C28, C32, C35, C36
8100kResistor_SMD:R_0402_1005MetricR17, R18, R19, R20, R39, R40, R41, R42
810kResistor_SMD:R_0402_1005MetricR5, R6, R7, R13, R27, R28, R29, R38
81N4148WTDiode_SMD:D_SOD-523D3, D4, D6, D7, D10, D11, D13, D14
81uCapacitor_SMD:C_0402_1005MetricC2, C3, C11, C13, C20, C21, C29, C31
8screwMountingHole:MountingHole_3.2mm_M3_DIN965_PadH1, H2, H3, H4, H5, H6, H7, H8
44k7Resistor_SMD:R_0402_1005MetricR21, R22, R43, R44
44u7Capacitor_SMD:C_0402_1005MetricC1, C7, C19, C25
4D_SchottkyDiode_SMD:D_SOD-123FD1, D2, D8, D9
4LOGOLOGOG***, G***, G***, G***
2100kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR14, R35
210nCapacitor_SMD:C_0402_1005MetricC12, C30
210uCapacitor_Tantalum_SMD:CP_EIA-3216-10_Kemet-IC4, C22
21kResistor_SMD:R_0402_1005MetricR16, R37
2220pCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC16, C34
24R7Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR3, R25
274HC4051Package_SO:TSSOP-16_4.4x5mm_P0.65mmU5, U10
2AO3400APackage_TO_SOT_SMD:SOT-23Q1, Q2
2B/RPCM_marbastlib-various:SW_SPST_SKQG_WithStemSW1, SW2
2BLM15PX121SN1DInductor_SMD:L_0402_1005MetricL1, L2
2DNPCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC15, C33
2DNPResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR15, R36
2JPJumper:SolderJumper-2_P1.3mm_Bridged2Bar_RoundedPad1.0x1.5mmJP1, JP2
2MConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ3, J6
2OPA340NAPackage_TO_SOT_SMD:SOT-23-5U4, U9
2PolyfuseFuse:Fuse_0603_1608MetricF1, F2
2SMF3.3Diode_SMD:D_SOD-123FD5, D12
2SRV05-4PCM_marbastlib-various:SOT-23-6-routableU2, U7
2STM32G431CBUxPackage_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mmU3, U8
2USB_C_Receptacle_USB2.0PCM_marbastlib-various:USB_C_Receptacle_HRO_TYPE-C-31-M-14J2, J5
2XC6206PxxxMRPackage_TO_SOT_SMD:SOT-23-3U1, U6
1HytePro FPCM_marbastlib-various:CON_HytePro_M411P_Receptacle_1x04-P2.20mm_Horizontal_FlushMountJ4
1HytePro MPCM_marbastlib-various:CON_HytePro_M411P_Plug_1x04-P2.20mm_Horizontal_FlushMountJ1

Questions

How big is the Unmechanical sweepish PCB?

It measures 214 × 142.6 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Unmechanical sweepish use?

168 parts, built around the OPA340NA, 74HC4051, SRV05-4 and 1N4148WT. 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.

Where can I download the Unmechanical sweepish KiCad files?

From the ebastler/UnMechanical repository on GitHub, at the commit this page was made from: the board is unmechanical-sweepish/unmechanical-sweepish.kicad_pcb and its schematic unmechanical-sweepish/unmechanical-sweepish-l.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Unmechanical sweepish design in my own project?

Its repository publishes it under the CERN-OHL-P-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers271.8 × 103.9 mmHotswap ble, the printed circuit board in 3D

    Hotswap ble

    ebastler/cornholius

    ZMK-based replacement PCB for Cornelius keyboard

    146 parts37
  • 4 layers45 × 80 mmLinea, the printed circuit board in 3D

    Linea

    notaroomba/linea

    A custom EMR tablet!

    177 parts9
  • 2 layers94.9 × 69 mmECU, the printed circuit board in 3D

    ECU

    rivotmotors-rnd/ECU_Firmware_V3

    RIVOT ECU V3.0 Repo containing STM32F446RE firmware and KiCad PCB hardware designs.

    115 parts
  • 4 layers47.8 × 89 mmCenere Mouse, the printed circuit board in 3D

    Cenere Mouse

    willwaush/Cenere-Mouse

    Open Source tri-Mode Mouse

    114 parts22
  • 2 layers100 × 95.3 mmDaNumPad Glow 20, the printed circuit board in 3D

    DaNumPad Glow 20

    TweetyDaBird/DaNumPad

    A Numpad

    117 parts19
  • 2 layers142.9 × 80.2 mmBifrost left, the printed circuit board in 3D

    Bifrost left

    hringdrifi/bifrost

    KiCad source files for the left half of Bifrǫst.

    66 parts5CERN-OHL-P-2.0
  • 2 layers100 × 86 mmGorilaz, the printed circuit board in 3D

    Gorilaz

    nol00p/Gorillaz

    pcb replacement for the kinesis adv2

    51 parts5