pseusplit

Integrated STM32G0B1 Keyboard PCB
git clone https://git.pngu.org/pseusplit
Log | Files | Refs | README | LICENSE

commit 23bbac4d6114654b4a577e2c463732fe42f9679f
parent c323fad822b91df7b33d288e4aab7ae8e9099079
Author: Jack Sangdahl <jack@pngu.org>
Date:   Fri, 27 Jun 2025 21:24:23 -0600

Some readme fixes and correct part number from SOT-523 -> SOT23

Diffstat:
Mproduction/bom.csv | 2+-
Mreadme.md | 24++++++------------------
2 files changed, 7 insertions(+), 19 deletions(-)

diff --git a/production/bom.csv b/production/bom.csv @@ -12,7 +12,7 @@ D37,D_SOD-123,1,1N4148,C81598 D40,0805,1,LED,C2297 F1,1206,1,500mA,C70070 J1,USB_C_Receptacle_HRO_TYPE-C-31-M-12,1,USB_C_Receptacle_USB2.0_14P,C165948 -Q1,SOT-23,1,DTC123J,C20616358 +Q1,SOT-23,1,DTC123J,C406040 R1,0805,1,20k,C4328 "R11, R2",0805,2,100k,C149504 "R12, R7, R8",0805,3,5.1k,C27834 diff --git a/readme.md b/readme.md @@ -7,29 +7,16 @@ A pseudo-split keyboard with a trackpad or LCD display and per-key RGB ![pcb_bottom](img/pcb_bottom.svg) ## Hardware Specifics -This keyboard uses an integrated STM32G0B1 microcontroller fit with a single push button switch^[1](#references)^, and USB-C. It also features a dedicated IS31FL3733 RGB Matrix driver to alleviate processing power from the primary MCU for LCD drawing, or other tasks. +This keyboard uses an integrated STM32G0B1 microcontroller fit with a single push button switch<sup>[1](#references)</sup>, and USB-C. It also features a dedicated IS31FL3733 RGB Matrix driver to alleviate processing power from the primary MCU for LCD drawing, or other tasks. ## Ordering The following instructions will be for [JLCPCB](jlcpcb.com), but should generally apply to most PCB manufacturers. The Gerber files in this repository include: - [**pcb_gerbers.zip**](production/pcb_gerbers.zip): Main PCB -- [**plate_gerbers.zip**](production/plate_gerbers.zip): Switch Plate PCB^*^ +- [**plate_gerbers.zip**](production/plate_gerbers.zip): Switch Plate PCB<sup>*</sup> - [**back_gerbers.zip**](production/back_gerbers.zip): Backplate PCB * The switch plate PCB is designed for a single half of the keyboard (and is reversible), meaning ordering a quantity of 10 will be enough to cover 5 keyboards. -3. For PCB assembly, choose **Economic** PCBA type and **Bottom Side** for assembly side -4. Upload BOM file from [production/bom.csv](production/bom.csv) on the Bill of Materials page -5. Upload CPL file from [production/positions.csv](production/positions.csv) as well. Disregard any message like "J1 won't be assembled due to missing data". This is the display pin header -- Choose "File Provided as Complete File, proceed with my own files" -6. Select appropriate components on the following screen by typing in -the shown part number and select it. An effort has been made to choose -as few extended components as possible, however this is not possible -for some. -7. Have a quick look at component placement and make sure nothing -looks wildly wrong. It is normal for some components to be shown -oriented incorrectly or not quite where they belong. The PCB reviewers -will generally correct this without issue. - 1. Upload the appropriate Gerber files described above 2. Set PCB quantity and colour as desired 3. For PCB assembly, choose **Economic** PCBA type and **Bottom Side** for assembly side @@ -41,11 +28,11 @@ will generally correct this without issue. For optional components to be installed by hand: | Item | Quantity | Remarks | |------|----------|---------| -| 6028 RGB LEDs ([Alibaba]((https://www.alibaba.com/product-detail/smd-6028-RGB-led-diode-for_60637386884.html))) | 36 | Unforunately, LEDs matching this pinout are rather difficult to find, and are not carried by LCSC. | +| 6028 RGB LEDs ([Alibaba](https://www.alibaba.com/product-detail/smd-6028-RGB-led-diode-for_60637386884.html)) | 36 | Unforunately, LEDs matching this pinout are rather difficult to find, and are not carried by LCSC. | | 4mm M2 Screws | 8 | Used for mounting PCB to plate case. Length does not have to be exact. | | 6mm M2 Standoffs | 4 | Used for mounting PCB to plate case. Ensure maximum diameter is no greater than 4mm. | -| 240x240 LCD ([ST7789](https://www.adafruit.com/product/3787)) | 1^*^ | Other displays with same pinout and dimensions (no larger than 40x43mm) will work. | -| Azoteq Trackpad ([TPS43](https://www.mouser.com/ProductDetail/Azoteq/TPS43-201A-B?qs=HXFqYaX1Q2x%252BNkQCZlM0ug%3D%3D)) | 1^*^ | Installed via soldering wires to appropriate display header pins. | +| 240x240 LCD ([ST7789](https://www.adafruit.com/product/3787)) | 1<sup>*</sup> | Other displays with same pinout and dimensions (no larger than 40x43mm) will work. | +| Azoteq Trackpad ([TPS43](https://www.mouser.com/ProductDetail/Azoteq/TPS43-201A-B?qs=HXFqYaX1Q2x%252BNkQCZlM0ug%3D%3D)) | 1<sup>*</<sup> | Installed via soldering wires to appropriate display header pins. | | MX Switches | 36 | Pick your favourite switches! | * Trackpad and LCD is either/or. Both cannot be installed at the same time. @@ -62,3 +49,4 @@ These steps assume you already have an assembled PCB and are installing switches ## References 1. [A single-push reset circuit for STM32](https://acheronproject.com/reset_article_1/reset_article_1) +2. Relevant datasheets