Skip to content

hajimen/p2ppcb_software

Repository files navigation

P2PPCB platform overview

P2PPCB platform is a software / hardware complex for rapid prototyping of 3D-shaped PC keyboards, offered by DecentKeyboards.

With P2PPCB platform, you can design your own 3D-shaped keyboards, like this one:

NTCS

The above is not easy. It takes several hours by a highly skilled operator (me).

But the one below can be done in a few hours by a newbie who has a Windows PC (English) and a broadband connection, without any charge:

Starter Kit Bob

You can build your own design using a 3D printing service, P2PPCB components, and switches / keycaps / stabilizers / etc. as you like.

ntcs.mp4

No soldering

P2PPCB platform uses single IDC contacts for wiring, as shown here:

Single IDC Ccntacts

Simply push a wire into a contact by a special hand tool.

Special hand tool

Kyocera AVX provides them. Details can be found here: https://www.kyocera-avx.com/products/connectors/wire-to-board/single-idc-contact-22-28-awg-9176-400/

Point-to-point wiring with PCB without soldering, hence the name is "P2PPCB".

Point-to-point wiring is much more flexible than ordinary PCB. 3D-shape is the best example. Rapid and easy prototyping of ordinary keyboards is also a happy use. With P2PPCB platform, you don't need to build a dedicated PCB for each design. Just a 3D-printed frame, and the software helps your CAD operation a lot.

Socket connects the switch to the PCB. There is nothing to solder by yourself, even in the case of split keyboards. (But if you need to connect a debugger, soldering is required.)

All softwares are open-source or charge-free for hobbyists

As long as your project stays on a PC screen, there is no charge.

Switch LED is available

Switch LED

Up to six per keyboard usually.

MX / Choc V1 / Choc V2 / Gateron LP switches are available

Available switches:

Available stabilizers:

Stabilizer for Choc V2 is not available yet because there is no such item in the market yet. I hope it will appear on the market. But by modifying a Cherry-style plate-mount stabilizer with a knife, it works (very geeky way).

P2PPCB Composer F360

P2PPCB Composer F360 (PC0) is an add-in of Autodesk Fusion 360 (F360) on Windows PC. F360 runs on Mac too, but PC0 lacks some features on Mac. More details can be found here: https://github.com/hajimen/p2ppcb_software/tree/main/p2ppcb_composer_f360

Keycaps

PC0 handles keycaps to check interference and to help your design process. The following are available on PC0. You can of course put other keycaps on your 3D-printed keyboards.

  • XDA (9.5 mm height. CAUTION: There are a lot of "XDA" profiles in the market)
  • DSA
  • Cherry profile
  • OEM profile
  • Kailh Choc V1
  • Junana MX (New profile from DecentKeyboards)

Only Junana MX can mate with Choc V2 or Gateron LP, normally. In fact DSA 1u can do it in a deep geeky way. Dig into P2PPCB Internal/Depot Parts mU0jU/Cap DSA 1u.* component of your F360 file, and find what to do.

P2PPCB Components

There are many dedicated components for P2PPCB platform. It also requires general-purpose parts like switches and keycaps.

DecentKeyboards is selling P2PPCB components. General-purpose parts are at your own choice.

Mainboard

A mainboard connects the USB to the matrix wires. Comparison chart of the three mainboards:

Alice Bob Charlotte
Cost Bad Cheapest Good
Size Bad Smallest Good
Split Keyboard USART N/A Qwiic
Qwiic Yes No Yes
Matrix Size 8x24 + 2x6 12x16 12x16 + 2x3
Matrix Wire Dupont 30 pin ribbon 36 pin ribbon
Switch LED 12 0 6
Underglow Yes No No
USART Yes No No
Complexity Bad Simplest Good

Alice

Alice

I don't recommend Alice in most cases. It is only good for R&D labs that have a high precision and large size 3D printer. If you use a 3D printing service, go with Bob or Charlotte.

Alice harness kit

Alice accepts female Dupont wire as matrix wire. It is cheaper and more convenient than Bob / Charlotte's IDC ribbon cable. A Dupont wire is not very reliable, but sufficient for trial-and-error iterations of a design process. A harness kit (the picture above) is available for high reliability, but it is quite expensive.

You might think that IDC ribbon cable is available for Alice. I thought so, too. But 1.27 mm pitch ribbon cable (common thing) is too thick for a single IDC contact. I could not make it reliable. (This is a big reason why I made Bob and Charlotte.)

Bob

Bob

Purchase from DecentKeyboards

Bob is the smallest and cheapest but lacks a lot of features. You can configure most things with VIA https://www.caniusevia.com/. With Bob, you can live without QMK firmware configuration in most cases.

Charlotte

Charlotte

Purchase from DecentKeyboards

If you need a split keyboard / switch LED / Qwiic connector, Charlotte is recommended. If you go with Charlotte, QMK firmware is a must.

(You may wonder how Charlotte uses I2C for split keyboards. I implemented I2C slave mode that ChibiOS doesn't have. The code is RP2040 only, sorry.)

Matrix wire

36-pin 1.00 mm pitch IDC ribbon rainbow cable

Purchase from DecentKeyboards

A matrix wire connects a mainboard to contacts.

Alice accepts a female Dupont wire as a matrix wire. It is a general-purpose part, not a P2PPCB component. A harness kit for Alice is available as a P2PPCB component, but it is not recommended in most cases.

Bob and Charlotte accept 1.00 mm pitch IDC ribbon rainbow cable as matrix wire. This pitch is not very common. These are P2PPCB components. When you build a keyboard, peel off the bonds of wires (easy to peel) and use them as single wires.

Contact-to-socket assembly

MX, Choc, and Gateron LP socket are available. LED and normal for each socket. So:

  • MX LED
  • MX normal
  • Choc LED
  • Choc normal
  • Gateron LP LED
  • Gateron LP normal

are available.

Contact-to-socket

Purchase from DecentKeyboards

(You may wonder how an LED and a switch both can be driven / read by only one pair of wires. By utilizing the forward voltage (Vf) of LEDs. Below its Vf, an LED has no current flow (no light, of course). We can read a switch by applying a voltage lower than the Vf. To drive an LED, a resistor is connected in series with the switch. Even when the switch is closed, the resistor produces enough voltage to drive the LED which is connected in parallel to the switch-resistor. Reading and driving are multiplexed by time division in high frequency like PWM.)

Single IDC contact push mount

Single IDC Contact Push Mount

To push a wire to a single IDC contact, use this mount. Insert the cuboid end into the switch hole of a frame. You can get this component by printing the F3D file: p2ppcb_component_reference/contact-to-socket/Single IDC Contact Push Mount.f3d.

Split keyboard kit

Qwiic-to-TRRS

Purchase from DecentKeyboards

Charlotte uses Qwiic (3.3V I2C with Vdd on JST-SH 4-pin connector) for split keyboards. The Qwiic-to-TRRS assembly is available as a P2PPCB component. TRRS cable is a general-purpose part.

P2PPCB split keyboard kit contains:

  • Qwiic-to-TRRS assembly: 2 pcs
  • TRRS cable 50 cm: 1 piece

(No P2PPCB component for USART split keyboards of Alice. Connect by female / female Dupont wire or solder a terminal of your own choice.)

You can use the 3D model of TRRS terminal by Place Misc command of PC0.

Adjustable foot kit

Foot spacers

Height comparison

Purchase from DecentKeyboards

Even with 3D-shaped keyboards, height-adjustable feet are indispensable for many reasons. Rubber sole is also indispensable. P2PPCB platform has its own foot kit.

Qwiic-to-FFC adapter kits for trackpad modules

You can embed trackpad modules to your keyboards. Available trackpad models:

  • Azoteq ProxSense TPS43 / TPS65 after Dec 2022
  • (With light modification) Cirque TM023023 / TM035035 / TM040040

A Qwiic-to-FFC adapter kit contains a Qwiic-to-FFC adapter and the FFC.

Qwiic-to-FFC adapter for Azoteq TPS43/65 after Dec 2022, with overlay for TPS43/65

Purchase from DecentKeyboards

Qwiic-to-FFC adapter for Cirque 12-pin trackpad

Purchase from DecentKeyboards

The trackpad modules above have FFC connectors. The Qwiic-to-FFC adapters connect the trackpad modules to the mainboards of P2PPCB.

You can use the 3D models of the adapter and the trackpad modules by Place Misc command of PC0.

The Qwiic-to-FFC adapters have DR or RDY contact. They are for power saving. QMK doesn't need them. In the future, they may be good for wireless keyboards.

Starter kit

P2PPCB platform requires so many parts to build a real keyboard.

  • Special hand tool for single IDC contact (special bit and common handle)
  • Mainboard (with screws)
  • Contact-to-socket assembly
  • Single IDC contact push mount
  • Matrix wire
  • Adjustable foot kit
  • Key switch
  • Keycap
  • 3D-printed frame
  • One Philips and one flat screwdriver :-)

In these parts, difficult-to-reuse is only matrix wire and frame. You can reuse contact-to-socket assembly up to three times (according to Kyocera AVX. I guess much more actually).

So DecentKeyboards combined them into P2PPCB Starter Kit (except screwdriver). Just by getting this kit, you can build and test a P2PPCB-based keyboard by hand.

Purchase Starter Kit Bob from DecentKeyboards

Purchase Starter Kit Charlotte from DecentKeyboards

Technical Details

This repository contains a lot of technical details about P2PPCB platform. You'll need it if you want to go deep.

p2ppcb_component_reference: P2PPCB component

p2ppcb_starter_kit_reference: P2PPCB Starter Kit

Discussions

If you have any questions, please feel free to join the discussions: https://github.com/hajimen/p2ppcb_software/discussions