

Slime88
A F13 TKL Multi-Layout Hotswap H88-Compat Type-C PCB
- Size
- 344.7 × 123.6 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 243
- Nets
- 149
- Pads
- 1,343
- Tracks, vias
- 1,440, 597
- Pours
- 635
- Routed
- Yes
- KiCad
- KiCad 6 (file 20211014)
- Created
- 19 Mar 2022
- Updated
- 2 May 2023
Overview
Slime88 is an open-source printed circuit board by zykrah, from the zykrah/slime88 repository on GitHub. It is a 2-layer board of 344.7 × 123.6 mm with 243 parts on 149 nets, routed with 1,440 tracks and 597 vias.
It is built around the RP2040, W25Q128JVSIQ and SRV05-4, with the XC6206-2.8V among its other parts. Its parts include 112 switches, 91 diodes, 17 capacitors, 7 resistors and 4 ICs. It belongs with the keyboards and input boards and the RP2040 boards of this library.
Main components
4RP2040
LQFN-56(7x7)12bit 133MHz 30 LQFN-56(7x7) Microcontrollers (MCU/MPU/SOC) ROHSRaspberry PiMicrocontrollers (MCU/MPU/SOC)W25Q128JVSIQ
SOIC-8-208mil-40℃~+85℃ 100,000 cycles 120ms@(32KB) 128Mbit 133MHz 1uA 2.7V~3.6V 20 Years 3ms Power-on reset、Hardware write protection、Software write protection、Write enable latch、Absolute write protection SPI SOIC-8-208mil NOR FLASH ROHSWinbondNOR FLASHSRV05-4
SOT-23-6L-55℃~+150℃ 15V 1pF 4A 5V 5uA 6V 80W ESD Four channels IEC 61000-4-2、IEC 61000-4-5 Unidirectional SOT-23-6L ESD and Surge Protection (TVS/ESD) ROHShongjiachengESD And Surge Protection (TVS/ESD)XC6206-2.8V
SOT-23-3L-40℃~+85℃@(Ta) 1 1uA 2.8V 250mA 350mV@(30mA) 6V Fixed Over Current Protection Positive SOT-23-3L Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSYONGYUTAIVoltage Regulators - Linear, Low Drop Out (LDO) Regulators
README
README.mdSlime88 TKL PCB
A F13 TKL Multi-Layout Hotswap H88-Compat Type-C PCB, designed in KiCAD 6.0.
This board has now been prototyped! See IRL images below.
NOTE: Below images may be outdated.
Renders (KiCAD):


IRL images of rev1 protos:



Features
- Fits the h88(c) standard (confirmed working in a KFE CE, should fit F13 frog)
- Uses the RP2040 MCU (new), with 16MB of external flash
- Uses Kailh Hotswap Sockets
- Added anti-shearing to the hotswap sockets
- Holes of hotswap socket holes are plated, you can still solder in a switch, should a hotswap socket ever shear off for whatever reason
- Multi-layout (see below)
- Removable USB-C connector, as well as a JST connector for Unified Daughterboard support (for F13 TKL boards that are compatible with the daughterboard version of the h88c)
- Has cutouts for a gummy o-ring mount (Same as the hineybush h88c pcb, for boards such as the Freebird TKL or TGR Jane V2 CE)
- BOOT pins/header for getting into bootloader (short the pins while plugging in) if bootmagic isn't available . Acessible from both sides of the PCB, even when PCB is built in a keyboard. Just remove the END key/switch to access it.
- SWD header for debugging
- Has unused MCU GPIO pins broken out
- ESD chip (SRV05-4) to prevent damage from electrostatic discharge
- Polyfuse to prevent overcurrent
- Optimized for manufacturing and assembly with JLCPCB
- Bonus: Curved traces and teardrops
Also,
Sleep-Libis just the library by Sleepdealer, used in his RP2040 Design guide.
Firmware
As of writing, the board runs the rp2040 branch/fork of vial-qmk. I will update this to use the official QMK implementation of RP2040 when it releases. UPDATE: RP2040 support has recently made it into QMK's develop branch. It will be fully merged to master by Q3 this year. Until then, the official maintainer of vial doesn't intend to merge those changes into their vial repo either, so I have made my own fork for the boards. When vial-qmk is officially updated to use QMK's implementiation of the RP2040, I will update this page once again linking to that, assuming I get the board merged into the official repo too.
You can find the up-to-date VIAL firmware here.
UPDATE: The board is now also in qmk master. (This particular version will only be VIA compatible). It should automatically be detected in VIA.

WIP/Ideas
- Spare components on the board (i.e. diodes)
- Add physical reset switch (you currently have to short the pins on the SWD header manually)
- Add physical boot switch (you currently have to short the BOOT pins manually)
- Version with flex cuts (Already done but removed for acoustic reasons. See the board at this point in time)
- Update silkscreen graphics
- Add more layout indicators on the top silkscreen of the pcb
- Do something more special with USB shield/ground connection (currently shield is connected straight to ground)
- Move ESD chip to before fuse
Also breakout 3v3 and 5v on the pin breakoutThanks @vinorodrigues!
Multi-Layout Support
NOTE: ANSI/ISO support works a little bit specially, either combination is soldered in at a time to ensure minimal R3 Cherry profile interference, and avoid having to rotate hotswap sockets 90 degrees to east/west orientation. See second image below.


Removable USB C Port
Uses mousebites. Strength/functionality is untested.

How to Manufacture the PCBs (JLCPCB)
I would personally use this plugin.
All components should be basic components, apart from the MCU, fuse, and JST connector (extended).
JLC also does have kailh hotswap sockets (extended) in its parts library, but you should be very careful with the ANSI/ISO multilayout support. In the BOM, only include either desired combination of sockets (or none of them, and hand solder in the ones you want).
The manufacturing files (JLCPCBA specific) have been added to the repo, you need to choose betweeen ANSI or ISO enter/pipe hotswap sockets being soldered by default.
You may want to consider generating the manufacturing files for yourself. I have not fully tested the ones that are currently in the repo.
NOTE: As the USB C connector is top-mounted (all other components are bottom mounted), as of writing, JLCPCB will charge extra to assemble the USB C connector (Standard assembly, both sides). You will likely have to hand solder it if you don't want to pay too much. Otherwise, seek out a proper PCB manufacturer (which will require further experience/knowledge).
Silkscreen
For the non-weebs, the silkscreen is based on Rimuru Tempest

Parts
243| Qty | Value | Footprint | References |
|---|---|---|---|
| 91 | D | Diode_SMD:D_SOD-123 | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +75 |
| 87 | ? | marbastlib-mx:SW_MX_HS_1u | SW1, SW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW102, SW103, SW104 +71 |
| 10 | 100nF | Capacitor_SMD:C_0402_1005Metric | C2, C3, C6, C7, C8, C9, C10, C11, C12, C17 |
| 8 | ? | marbastlib-mx:SW_MX_HS_1.25u | SW70, SW87, SW89, SW91, SW95, SW97, SW99, SW101 |
| 6 | ? | marbastlib-mx:SW_MX_HS_1.5u | SW37, SW50, SW88, SW92, SW96, SW100 |
| 4 | 1uF | Capacitor_SMD:C_0402_1005Metric | C1, C5, C13, C14 |
| 2 | 1k | Resistor_SMD:R_0402_1005Metric | R4, R5 |
| 2 | 22pF | Capacitor_SMD:C_0402_1005Metric | C15, C16 |
| 2 | 27R | Resistor_SMD:R_0603_1608Metric | R2, R3 |
| 2 | 5.1k | Resistor_SMD:R_0402_1005Metric | R6, R7 |
| 2 | ? | marbastlib-mx:SW_MX_HS_1.75u | SW56, SW83 |
| 2 | LOGO | LOGO | G***, G*** |
| 1 | 10k | Resistor_SMD:R_0402_1005Metric | R1 |
| 1 | 10uF | Capacitor_SMD:C_0402_1005Metric | C4 |
| 1 | 12MHz | Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 1 | 500mA | Fuse:Fuse_1206_3216Metric | F1 |
| 1 | 6.25U_SPACE | marbastlib-mx:STAB_MX_6.25u | S6 |
| 1 | 7U_SPACE | marbastlib-mx:STAB_MX_7u | S7 |
| 1 | ? | marbastlib-mx:SW_MX_HS_1.75u_stp | SW55 |
| 1 | ANSI_ENTER | marbastlib-mx:STAB_MX_2.25u | S3 |
| 1 | BACKSPACE | marbastlib-mx:STAB_MX_2u | S1 |
| 1 | Boot | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | SW0 |
| 1 | ISO_ENTER | marbastlib-mx:STAB_MX_ISO_FLIPPED | S2 |
| 1 | JST-SH-4P | Connector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_Horizontal | J3 |
| 1 | LOGO | local:slime_kata_small | G*** |
| 1 | LOGO | local:slime_kata | G*** |
| 1 | LOGO | local:small_slime | G*** |
| 1 | LOGO | local:slime_ink | G*** |
| 1 | LSHIFT | marbastlib-mx:STAB_MX_2.25u | S4 |
| 1 | Pin Breakout | Connector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_Vertical | J4 |
| 1 | RP2040 | Sleep-lib:RP2040-QFN-56 | U2 |
| 1 | RSHIFT | marbastlib-mx:STAB_MX_2.75u | S5 |
| 1 | SRV05-4 | marbastlib-various:SOT-23-6-routable | U3 |
| 1 | SWD | Connector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_Vertical | J2 |
| 1 | USB_C | Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J1 |
| 1 | W25Q128JVS | Package_SO:SOIC-8_5.23x5.23mm_P1.27mm | U4 |
| 1 | XC6206 | Package_TO_SOT_SMD:SOT-23 | U1 |
Questions
How big is the Slime88 PCB?
It measures 344.7 × 123.6 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Slime88 use?
243 parts, built around the RP2040, W25Q128JVSIQ, SRV05-4 and XC6206-2.8V. 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 Slime88 KiCad files?
From the zykrah/slime88 repository on GitHub, at the commit this page was made from: the board is slime88.kicad_pcb and its schematic matrix.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Slime88 design in my own project?
Its repository states no licence, so its author keeps all rights: ask zykrah before reusing the design.
Similar boards
- 2 layers253.3 × 113.3 mm

- 2 layers103.2 × 107.2 mm

Blue team pad
fearherbs1/blue-team-pad
An open source macropad for the cyber security analyst.
82 parts6GPL-3.0 - 2 layers344.7 × 123.6 mm

- 2 layers347.7 × 125.4 mm

- 2 layers444.1 × 145.3 mm

Gh80-3003
Alectardy98/PCB_G803003_reduxal
Open-sourced Cherry MX PCB using the Pi Pico (RP2040) for the Cherry G80 3001 line of keyboards. Stock keyboards shipped originally with Cherry MY switches.
362 partsCC-BY-SA-4.0 - 2 layers112 × 45 mm

- 2 layers74.8 × 99.8 mm

- 4 layers75 × 65 mm
