# ErgoPoint42 P1 parts and ordering

This list covers **one complete pair: 42 keys, two TrackPoints, two batteries and an optional right display**. Quantities come from the native PCB BOM and current CAD. Supplier pages and product feeds were checked on **7 September 2026**. Prices are USD before shipping and tax unless stated otherwise. Nothing was purchased or added to a cart.

The priced component purchases total **$140.06**, including **$48.00 of TrackPoints whose stock needs confirmation**. With the optional right nice!view, that becomes **$160.06**. These are partial procurement subtotals. Add custom PCBs, all prints and keycaps, screws, finished feet, workshop supplies, shipping and taxes. Suggested small-component purchases include the spare quantities below.

The [complete machine-readable list](https://ep42.dencur.com/files/source/v3/review-assets/parts.json) carries every row's manufacturer part number, date, stock note, order unit, price and fit notes. An unknown price is `null`, never an assumed zero.

## Main parts

| Part and order link | Fitted per pair | Suggested purchase | Purchase cost, USD | Availability on 7 Sep 2026 |
|---|---:|---|---:|---|
| [XIAO nRF52840 Plus, plain](https://www.seeedstudio.com/Seeed-Studio-XIAO-nRF52840-Plus-p-6359.html)<br>Seeed 102010672 | 2 each | 2 each | $20.80 | Listed in stock |
| [Kailh Deep Sea Silent Mini Whale tactile](https://kailhswitch.net/products/kailh-deep-sea-silent-min-low-profile-keyboard-switch?variant=43950809743546)<br>CPG1353S01D02-03; retail SKU CPG1353S01D02-03-30PCS | 42 each | 2 packs × 30 | $36.60 | Listed in stock |
| [Complete Sprintek TrackPoint assemblies](https://holykeebs.com/products/sk8707-01-trackpoint-sensor)<br>SK8707-01-004 | 2 each | 2 each | $48.00 | Stock conflict; confirm |
| [Protected LiPo battery, 3.7 V 150 mAh](https://www.adafruit.com/product/1317)<br>Adafruit 1317 | 2 each | 2 each | $11.90 | Listed in stock |
| [nice!view right display](https://typeractive.xyz/products/nice-view)<br>nice!view | 1 each | 1 each | $20.00 | Listed in stock |

- Buy **XIAO nRF52840 Plus, plain**, without tall headers. The original XIAO is not pin-compatible with this PCB. Both underside battery joints must be soldered.
- The linked Kailh variant selects **Tactile / Whale / 30 pcs**, exact retail suffix **CPG1353S01D02-03**. Two packs supply 60 switches, with 18 spare. Do not use the product page's default linear selection. Check actual retail switch seating against the prototype before final fabrication.
- Each TrackPoint must be a **complete SK8707-01-004 sensor and driver assembly with its OEM interconnect**. The seller explicitly lists the sensor, driver and red cap; confirm the interconnect is supplied. Its product page says sold out while the product feed reports availability. The manufacturer also has a [Sprintek store](https://store.sprintek.com/products), but its current price and stock were not reconfirmed in this ordering pass.
- The protected Adafruit packs ship with **JST-PH** plugs; P1 has **JST-SH** sockets. The compact conversion is itemized below. Keep the selected pack envelope at 20.5 × 29 × 4.3 mm. Firmware uses 50 mA charging. The battery switch must be on to charge; USB can power the controller with it off.
- The display is **right only**. Use five direct wires and the display frame. The included tall pin headers do not fit the intended stack. Its [manufacturer page](https://nicekeyboards.com/nice-view/) documents the 36 × 14 × 2.9 mm module and vendor list.

## PCB components and battery leads

| Part and order link | Fitted per pair | Suggested purchase | Purchase cost, USD | Availability on 7 Sep 2026 |
|---|---:|---|---:|---|
| [Matrix signal diodes](https://www.digikey.com/en/products/detail/diodes-incorporated/1N4148W-7-F/814371)<br>Diodes Incorporated 1N4148W-7-F | 42 each | 50 each | $3.84 | Listed in stock |
| [Peripheral rail load switches](https://www.digikey.com/en/products/detail/texas-instruments/TPS22919DCKR/10434801)<br>Texas Instruments TPS22919DCKR | 2 each | 2 each | $0.46 | Listed in stock |
| [Battery isolation slide switches](https://www.digikey.com/en/products/detail/c-k/PCM12SMTR/1640112)<br>C&K PCM12SMTR | 2 each | 2 each | $2.56 | In stock, obsolete |
| [JST-SH side-entry battery headers](https://www.digikey.com/en/products/detail/jst-sales-america-inc/SM02B-SRSS-TB/926708)<br>JST SM02B-SRSS-TB | 2 each | 2 each | $0.76 | Listed in stock |
| [JST-SH battery cable housings](https://www.digikey.com/en/products/detail/jst-sales-america-inc/SHR-02V-S/759881)<br>JST SHR-02V-S | 2 each | 2 each | $0.22 | Listed in stock |
| [JST-SH precrimped battery lead wires](https://www.digikey.com/en/products/detail/jst-sales-america-inc/ASSHSSH28K51/6009451)<br>JST ASSHSSH28K51 | 2 each | 2 each | $0.92 | Listed in stock |
| [JST-SH cable contacts, supplied by precrimp leads](https://www.digikey.com/en/products/detail/jst-sales-america-inc/SSH-003T-P0-2-H/2804713)<br>JST SSH-003T-P0.2-H | 4 each | Included in precrimp leads | $0.00 | Already counted |
| [5.6 kΩ 1% pull-up resistors](https://www.digikey.com/en/products/detail/yageo/RC0603FR-075K6L/727275)<br>YAGEO RC0603FR-075K6L | 4 each | 10 each | $0.25 | Listed in stock |
| [10 kΩ 1% reset pull-down resistors](https://www.digikey.com/en/products/detail/yageo/RC0603FR-0710KL/729827)<br>YAGEO RC0603FR-0710KL | 2 each | 10 each | $0.25 | Listed in stock |
| [100 nF X7R bypass capacitors](https://www.digikey.com/en/products/detail/yageo/CC0603KRX7R9BB104/2103082)<br>YAGEO CC0603KRX7R9BB104 | 2 each | 10 each | $0.55 | Listed in stock |
| [1 µF X7R bypass capacitors](https://www.digikey.com/en/products/detail/yageo/CC0603KRX7R6BB105/5195204)<br>YAGEO CC0603KRX7R6BB105 | 4 each | 10 each | $0.95 | Listed in stock |

The diode count is **21 per half, 42 total**. Buy cut tape, not a full reel or a paid DigiReel. Fifty diodes leave eight spare. The suggested 0603 orders leave six spare 5.6 kΩ resistors, eight spare 10 kΩ resistors, eight spare 100 nF capacitors and six spare 1 µF capacitors. The small electronic parts are sold singly; the quantities above are suggested prototype buys rather than mandatory reels. Whale packs contain 30 switches and the selected nut packs contain four nuts. The JSON also records verified minimum order units. The exact native BOM is [bom.csv](https://ep42.dencur.com/files/source/v3/pcb/bom.csv).

Preserve the package constraints: diodes are **SOD-123, installed height at most 1.35 mm**; both capacitor types are **0603 X7R, at least 10 V, installed height at most 1.0 mm**. The selected capacitors list a 0.90 mm maximum body height. U2 must be the **TPS22919DCKR SC70-6** package, with the existing QOD-to-OUT connection.

The **PCM12SMTR is obsolete**, although DigiKey lists remaining stock. A different slide switch requires a footprint and case check. The SH header is the side-entry SM02B-SRSS-TB, with a 2.9 mm body height.

The two double-ended 50.8 mm precrimped wires provide **four contacts** when cut in half, one positive and one negative tail per battery. Insert those tails into the two SH housings, convert the original pack leads, insulate the joints and verify **J3 pin 1 = BAT+, pin 2 = GND**. Check route length before cutting; the resulting tails are roughly 25 mm. Mark polarity because these wires are black. The loose-contact row records BOM coverage; do not purchase it again. Its linked base listing is a 23,000-contact reel.

A ready-made PH-to-SH plug adapter is an alternative only after a fit check. The compact CAD does not reserve room for an extra mated PH connector pair. The listed conversion avoids that extra pair.

## Small hardware

| Part and order link | Fitted per pair | Suggested purchase | Purchase cost, USD | Availability on 7 Sep 2026 |
|---|---:|---|---:|---|
| [M1.6 x 7 mm countersunk case screws](https://www.hardwarespecialty.com/Product/906178)<br>Hardware Specialty 906178 / DIN965A-M1.6X7-A2-H | 12 each | Quote 12; minimum unknown | Quote | Exact catalog dimensions; stock unknown |
| [M1.6 captive hex nuts](https://timesavers.com/i-8946810-brass-hex-nut-m1-6-4-pack.html)<br>MS&TCO 16368 / DIN 934 M1.6 brass | 12 each | 3 packs × 4 | $12.00 | Listed for order; count unknown |
| [Custom Ø5 mm adhesive feet from 3M SJ5832](https://www.gleicher.com/3m-bumpon-protective-products)<br>3M Bumpon SJ5832, cut to Ø5 mm | 12 each | Quote cut parts or material | Quote | Verified material; finished feet need qualification |

There are **six screws, six nuts and six feet per half**, or 12 of each per pair.

The model uses a countersunk screw **6.9 mm overall**, so approximately **M1.6 × 7 mm** is the target. [Hardware Specialty part 906178](https://www.hardwarespecialty.com/Product/906178), manufacturer number **DIN965A-M1.6X7-A2-H**, is an exact 7 mm catalog candidate. It specifies a **90° flat head, 2.88 mm head diameter, 0.96 mm head height and Phillips No. 0 drive**. Price, stock and minimum quantity require a quote. It still needs a physical check for countersink seating, nut engagement and tip clearance. The [8 mm Accu candidate](https://www.accu.co.uk/pozi-countersunk-screws/9488-SPK-M1-6-8-A2) remains a fallback requiring qualified shortening/deburring; its drive is PZ0.

The verified nut is **3.2 mm across flats × 1.3 mm thick**, matching the nominal model inside a 3.3 mm pocket. Three four-packs supply exactly 12 nuts.

Feet are **Ø5 mm × nominal 0.8 mm finished thickness including adhesive**. The preferred fabrication candidate is **3M Bumpon SJ5832**, solid polyurethane with factory-applied R-30 natural-rubber adhesive. The [3M technical data](https://multimedia.3m.com/mws/media/120317O/3m-bumpon-protective-products-resilient-rollstock-opaque.pdf) gives **0.8 mm total thickness excluding the release liner, with ±0.13 mm tolerance**. Cut twelve Ø5 mm circles. Their Ø5.2 mm seats are recessed 0.2 mm, so nominal exposed height is 0.6 mm. Do not add a second adhesive layer. Check actual thickness, clean cut edges, grip and bonding to the finished PA12 sample. No exact finished retail foot was verified. [Gleicher](https://www.gleicher.com/3m-bumpon-protective-products) explicitly offers custom-cut SJ5832; its page starts pre-production work at $250, so a cut-material or sample quote may be more sensible than a full converting job. This remains an unpriced fabrication route.

## Custom PCBs and printed parts

Order **one left and one right PCB**, not two of the same file. Request **1.0 mm FR4, two layers and 1 oz copper**. Use a [PCB fabrication quote](https://jlcpcb.com/quote) after checking the supplied fabrication preview files. The vendor may impose a minimum quantity for each distinct hand. Do not assume the advertised small-board price applies. See the [supplier's quotation guide](https://jlcpcb.com/help/article/how-do-i-place-an-order).

| Fitted part | Quantity | Project source |
|---|---:|---|
| Left carrier PCB | 1 | [ergopoint42_p1_left.kicad_pcb](https://ep42.dencur.com/files/source/v3/pcb/ergopoint42_p1_left.kicad_pcb) |
| Right carrier PCB | 1 | [ergopoint42_p1_right.kicad_pcb](https://ep42.dencur.com/files/source/v3/pcb/ergopoint42_p1_right.kicad_pcb) |

For the case and pointing parts, **11 printable files are provided, but a chosen configuration uses 10 pieces**. Choose exactly one right frame. Use the supplied separate part files, not the complete assembly preview. [JLC3DP's quote page](https://jlc3dp.com/3d-printing-quote) accepts a fabrication quotation; material, finish, price and minimum quantity remain unquoted.

| Part | Quantity in selected pair | File |
|---|---:|---|
| Left lower shell | 1 | [base_left.stl](https://ep42.dencur.com/files/cad/base_left.stl) |
| Right lower shell | 1 | [base_right.stl](https://ep42.dencur.com/files/cad/base_right.stl) |
| Left upper shell and switch plate | 1 | [frame_left.stl](https://ep42.dencur.com/files/cad/frame_left.stl) |
| Right upper shell with display opening | 1 if using display | [frame_right.stl](https://ep42.dencur.com/files/cad/frame_right.stl) |
| Right upper shell without display | 1 if no display | [frame_right_plain.stl](https://ep42.dencur.com/files/cad/frame_right_plain.stl) |
| Left insulated battery tray | 1 | [battery_tray_left.stl](https://ep42.dencur.com/files/cad/battery_tray_left.stl) |
| Right insulated battery tray | 1 | [battery_tray_right.stl](https://ep42.dencur.com/files/cad/battery_tray_right.stl) |
| Left pointing-stick extension | 1 | [pointing_extension_left.stl](https://ep42.dencur.com/files/cad/pointing_extension_left.stl) |
| Right pointing-stick extension | 1 | [pointing_extension_right.stl](https://ep42.dencur.com/files/cad/pointing_extension_right.stl) |
| Left pointing-stick nub | 1 | [pointing_nub_left.stl](https://ep42.dencur.com/files/cad/pointing_nub_left.stl) |
| Right pointing-stick nub | 1 | [pointing_nub_right.stl](https://ep42.dencur.com/files/cad/pointing_nub_right.stl) |

Use **PA12 as the preferred structural prototype material** for shells, trays and rigid extensions, after inexpensive local FDM fit samples. Print the pointing nubs in **flexible TPU** and qualify hardness, grip and stem retention on a physical sample. The supplier describes its [TPU process here](https://jlc3dp.com/help/article/tpu). Black lower shells and white upper shells match the rendered concept. Fine details, captive nuts, cap stems and the switch plate still need physical print tests; a render does not establish a print process or material fit.

## Exact 42-keycap recipe

All 42 caps are custom prints for this build. “Original geometry” below refers to unchanged source meshes, not a verified retail keycap set. Use **MX stem, MX-size KLP-Lame files** for the 19.05 mm switch pitch. Do not substitute the Choc-size files. Original source: [braindefender/KLP-Lame-Keycaps](https://github.com/braindefender/KLP-Lame-Keycaps), CC BY-SA 4.0, pinned by the project to commit `4a67a824232d3054c61599ea047c56a340faaba2`.

| Profile | Quantity | File |
|---|---:|---|
| KLP-Lame Normal Tilted caps, original geometry | 16 | [MX_Stem_MX_Size_Normal_Tilted.stl](https://ep42.dencur.com/files/source/research/keyball-reference/reference-assets/MX_Stem_MX_Size_Normal_Tilted.stl) |
| KLP-Lame Saddle caps, original geometry | 6 | [MX_Stem_MX_Size_Saddle.stl](https://ep42.dencur.com/files/source/research/keyball-reference/reference-assets/MX_Stem_MX_Size_Saddle.stl) |
| KLP-Lame Thumb caps, original geometry | 12 | [MX_Stem_MX_Size_Thumb.stl](https://ep42.dencur.com/files/source/research/keyball-reference/reference-assets/MX_Stem_MX_Size_Thumb.stl) |
| TrackPoint clearance, L04_R | 1 | [L04_R_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/L04_R_trackpoint_clearance.stl) |
| TrackPoint clearance, L05_T | 1 | [L05_T_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/L05_T_trackpoint_clearance.stl) |
| TrackPoint clearance, L09_F | 1 | [L09_F_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/L09_F_trackpoint_clearance.stl) |
| TrackPoint clearance, L10_G | 1 | [L10_G_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/L10_G_trackpoint_clearance.stl) |
| TrackPoint clearance, R04_U | 1 | [R04_U_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/R04_U_trackpoint_clearance.stl) |
| TrackPoint clearance, R05_Y | 1 | [R05_Y_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/R05_Y_trackpoint_clearance.stl) |
| TrackPoint clearance, R09_J | 1 | [R09_J_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/R09_J_trackpoint_clearance.stl) |
| TrackPoint clearance, R10_H | 1 | [R10_H_trackpoint_clearance.stl](https://ep42.dencur.com/files/source/v2/keycaps/R10_H_trackpoint_clearance.stl) |

The total is **16 Normal Tilted + 6 Saddle + 12 Thumb + 8 modified = 42**. The eight modified caps replace their source shapes. They are not eight extra caps. Print a stem/fit sample before ordering a finished set. The two OEM red TrackPoint caps are already part of the sensor assemblies; the printed custom nubs are the P1 shape, not another off-the-shelf cap purchase.

## Wiring, consumables and accessories

| Part and order link | Fitted per pair | Suggested purchase | Purchase cost, USD | Availability on 7 Sep 2026 |
|---|---:|---|---:|---|
| [Fine stranded wire for both TrackPoints and optional display](https://lombardhobby.com/products/nce-dcc-5240253-10-of-32-gauge-wire-orange)<br>NCE 5240253 Ultra-flex 32 AWG orange | 10 short runs; 15 with the display | 1 10 ft length | $7.69 | Listed in stock |
| [Polyimide insulation tape](https://www.adafruit.com/product/3057)<br>Adafruit 3057 | As needed | 1 roll | $4.95 | Listed in stock |
| [Thin removable retention adhesive](https://www.findtape.com/3M-9415PC-Double-Sided-Removable-Repositionable-Tape/p584/)<br>3M 9415PC candidate | As needed | Quote required | Quote / fit selection | Quote required |
| [Fine electronics solder](https://www.adafruit.com/product/1930)<br>Adafruit 1930 SAC305 | As needed | 1 spool | $27.50 | Listed in stock |
| [No-clean electronics flux](https://www.adafruit.com/product/3468)<br>Chip Quik CQ4LF; Adafruit 3468 | As needed | 1 pen | $7.95 | Listed in stock |
| [USB data and charging cables](https://www.adafruit.com/product/4474)<br>Adafruit 4474, USB-A to USB-C | 2 each | 2 each | $9.90 | Listed in stock |

The 32 AWG wire purchase is one 10 ft length, enough stock for cut-to-fit routes; it is not ten pre-cut leads. The fitted harness needs **five carrier-to-driver wires on each side, plus five for the optional display**. Keep the original OEM sensor-to-driver connections. The [NCE wire specification](https://ncedcc.zendesk.com/hc/en-us/article_attachments/201919476) identifies the selected 32 AWG material as fine-stranded PVC with approximately 0.584 mm overall diameter. Label wires and route them away from the XIAO antenna.

The priced workshop packages above, excluding USB cables, total **$48.09**. This buys whole wire, tape, solder and flux packages, not the material consumed by a single keyboard. Retention adhesive remains unpriced. Use existing suitable workshop materials where available. Insulate every battery splice; the polyimide tape is listed for this purpose. A correctly sized thin heat-shrink sleeve can be used instead after checking clearance. Keep the rigid battery trays in either case.

Two optional USB-A-to-C data cables add **$9.90**. Reuse existing data-capable cables if available, or choose the [USB-C-to-C alternative](https://www.adafruit.com/product/4199) if that matches the host. The right half connects to the host by USB or Bluetooth; the left always uses the Bluetooth split link and may charge through its own USB port. No inter-half cable is required.

## Workshop tools

Use a temperature-controlled fine-tip soldering iron, fine tweezers, magnification, a cutter and a wire stripper suitable for 32 AWG. A multimeter and calipers are needed for polarity, continuity, rail and fit checks. The screw driver must match the final fastener: the exact 7 mm catalog candidate uses Phillips No. 0, while the 8 mm fallback uses PZ0. A 5 mm punch is useful only if cutting SJ5832 feet locally. [General electronics assembly tools](https://www.adafruit.com/category/225) are a shopping reference; no specific tool purchase or tool price is included.

Borrow or use an existing current-limited bench supply and logic analyzer for the initial power and PS/2 checks. These are validation equipment, not installed keyboard parts. A SH crimper is unnecessary with the precrimped-tail approach; it is required if choosing loose contacts instead.

## Cost scope and remaining order decisions

| Scope | Dated subtotal, USD |
|---|---:|
| Priced required purchases excluding TrackPoints | $92.06 |
| Two TrackPoints at the listed price, stock conditional | $48.00 |
| Priced required purchases including those TrackPoints | **$140.06** |
| Optional right display | $20.00 |
| Priced required purchases plus display | **$160.06** |
| Priced full workshop packages if needed | $48.09 |
| Optional two USB-A-to-C data cables | $9.90 |

These totals exclude **custom PCBs, all printed pieces and keycaps, case screws, finished adhesive feet, unpriced adhesive, tools, labor, shipping, tax and import charges**. Supplier minimums can add PCB and print spares. The native electronics have been checked against the firmware pin assignments, but P1 remains an unbuilt prototype. The outstanding purchasing decisions are the TrackPoint stock confirmation, a price/availability quote for the exact screw, the cut-foot sourcing choice and the physical fit samples that establish final fabrication choices.

## Source and quantity verification

The part counts were reconciled with the native PCB BOM, the current CAD assembly manifest and the cap manifest. All **17 native BOM rows** are covered. The checker confirms 42 switches and diodes, four SH contacts supplied without a second purchase, 12 screws/nuts/feet, two distinct PCBs, 10 selected structural/pointing pieces and 42 keycaps. Every linked local asset exists. Purchase arithmetic was recomputed from the stated order quantities and prices. See [PARTS_QA.json](https://ep42.dencur.com/files/source/v3/review-assets/PARTS_QA.json) for the receipt.

The exact pack/variant checks used the suppliers' own product data alongside their pages: [Kailh Whale variants](https://kailhswitch.net/products/kailh-deep-sea-silent-min-low-profile-keyboard-switch.js), [Holykeebs TrackPoint availability](https://holykeebs.com/products/sk8707-01-trackpoint-sensor.js), [Typeractive nice!view availability](https://typeractive.xyz/products/nice-view.js) and [the NCE wire seller's inventory](https://lombardhobby.com/products/nce-dcc-5240253-10-of-32-gauge-wire-orange.js). The TrackPoint conflict is retained instead of treating the feed as conclusive. Distributor tier prices and component dimensions come from the direct product pages linked in their rows. These are dated source checks, not reservations or checkout quotes.

The bounded hardware follow-up verified the exact 7 mm screw dimensions against Hardware Specialty's own catalog and visually checked the SJ5832 thickness/tolerance table in 3M's technical PDF. Neither source establishes physical assembly fit. The earlier 8 mm screw remains an explicitly qualified fallback. Counts and priced subtotals did not change.
