Thinkpad keyboard mod (super early stages)!

New boards sent off to JLCPCB:


My previous board suffered from being designed around an FPC connector that was not in fact top-entry as digikey’s metadata claimed, nor was it bottom-entry, but in fact seemed to be a two-sided deal and thus incompatible with the actual keyboard FPC. The RP2040 part worked fine, just ended up with nothing to talk to.

The new version benefits from my actually owning a FW16 now to measure against, and should place the (different!) FPC connector in a useable position.

The second more-linear board fits under the mouse buttons and interfaces with the touchpad connector to fake out the FW16 into believing a touchpad is connected. As an extra bonus it has space for a 2x4 header so I can use it for prototyping the “ThinkPad touchpad with physical buttons” hack.

3 Likes

Well, at least you could iterate on the fit/etc of the board with keyboard on top, even if not hooked up. So it’s not a total loss. But annoying…

Are you hand soldering all the boards, including all the little SMD parts? Or are you having JLCPCB populating most/all of the parts?

I’m having JLCPCB populate all of the parts. My thought is that if this works and is successful I want to make it feasible to mass-produce, and I’m not going to be hand-soldering 100s of boards myself. :slight_smile: The available working space on the bottom side of the input module is also extremely tight.

At the moment, I’m moving forward on using the X1 Carbon Gen 10 keyboard for an “all in one” solution that provides trackpoint and buttons and replaces both the keyboard and touchpad area.

On a parallel track, I’m working on making a touchpad-only module using the touchpad+button assembly from the T460s. I’ve got a little “PCB” being made for that, that’s really just the top layer and the touchpad cutout with no electrical function:


You can do some interesting decorative things with silkscreen and the copper layer, but mostly this is a cheat to precisely make a top panel of exactly the right size. What’s still to be done here: (a) figure out which of the T460s touchpad’s three (!) I2C busses is the right one to wire to the FW16, (b) make a suitable adapter board, (c) design and 3d print a bottom side rail to glue to the PCB upper, and (d) design and 3d print the equivalent of the piece shown below to interface to the touchpad latching mechanism.

Of these, (d) is the one that seems the hardest (to me). It would really help if FW would have included that piece in the 3d model dump of the shell components they released a few weeks ago.

Anyway assuming the touchpad replacement project is successful, it seems we’d want a keyboard-only-no-buttons module that fits into the upper keyboard area and doesn’t overflow into the touchpad space. I’ve got a few items on my ebay list as possible button-less keyboard candidates: the X13 Gen 1 or 4 and the T460 seem most promising at the moment.

EDIT: I got another generous donation from github sponsors (!) so I went ahead and hit buy on my ebay cart. Incoming keyboards are: X270, T460, T460s, X13 Gen 1, and X13 Gen 4.

1 Like

I meant on these prototype boards, to keep costs down on the prototypes. For larger production, of course you’d definitely want them to populate the boards.

My limiting factor for hobbies tends to be time, not money (within reason)… and JLCPCB assembly is pretty darn cheap. I do hand assemble the oddball parts that would bump the project into the “not budget” PCBA tier, but that’s more relevant for the seven segment display input module than this one. :slight_smile:

(But this is also life hacking on my part. I don’t want to get to the end of this project with something that works for me but which I’d have to redesign from scratch in order to make more than one of them to share with others. So it helps to design for manufacturability from the beginning, and to ensure that I don’t find any unexpected surprises when scaling later it’s best to use the same processes (PCBA in this case) throughout.)

1 Like

You wouldn’t happen to have any power PCB design skills, would you? I’m wanting to move into do some bucks, buck-boost, and/or one of those TI all-in-one USB-PD + buck-boost + CC/CV lithium charger ICs.

@Arya could probably help you out:

But in general I just carefully copy the reference design and suggested PCB layout from the datasheet and things generally work.

I’ve updated the source files for my X1 Carbon Gen 10 keyboard adapter at GitHub - cscott/X1CarbonGen10: Keyboard with Trackpoint for Framework 16 laptop: hardware design

1 Like