I’m looking to build an external touchpad, and I’ve decided to use the Framework Laptop’s touchpad for this. Now, I need to figure out how to connect it via USB, without using a Framework mainboard.
Does anyone know what kind of cable or adapter I need to convert the touchpad’s FPC connector to USB?
You will probably need a custom board. Look for the pin out, digikey or other part stores should have the connector. finally you need to find a micro controller, one that support both whatever protocol the touch pad uses and device side usb. Worst case you might need an fpga with custom software, at which point it’s probbaly time to reconsider the effort unless you either already know fpga programing, or want/is willing to learn.
It communicates over I2C, so you will likely need a microcontroller/ custom adapter board to communicate with it over I2C, and to the computer over USB. Implementing this yourself will probably be very involved.
It uses HID over I2C, so a USB/I2C HID bridge might work, but I’m not sure about how well driver/software support will be, and information on it is sparse given I don’t know what the exact right keywords are.
I’ve been trying to do the same thing, but with Framework 13 touchpad module. I have successfully parsed the HID reports and wrote up some rudimentary micropython firmware for RP2040 based on Arya’s articles linked in the above. It works fine on Linux, but I couldn’t figure out how to get it working on the Windows. It’s probably some driver issue?
For interfacing the touchpad module over USB though, I used a microcontroller to interface between the host machine and the touchpad module. Touchpad is HID over I2C device, so it might be possible to skip the microcontroller. FT260 might be able to do exactly that.
It also depends on which Framework touchpad module you’re planning to use. Framework 13 module uses 51 pin ZIF connector. Framework 16 module looked like it just sits on some pins, so you may need to solder wires directly to it, or design a PCB with the said pin connectors.
I plan to do it with a FW13 touchpad so your answer is really helpful. Thanks to @Amar_Persaud 's links, I started to check how to do it with a Raspberry Pi Pico (RP Pico). My main issue was to find the right chip/connector to connect the touchapd to the RP Pico.
What I am looking for is just something that works out-of-the-box but or a repo that just gives the instruction on how to make it work.
Thank you!
Just in case you didn’t realize, or forgot, the Raspberry Pi Pico is the same as the RP2040 that Jeong_Min_Lim built some code for.
RP2040 is the actual microcontroller chip, Raspberry Pi Pico is the name of the Raspberry Pi foundation board using that chip. There are many many other boards using the RP2040. Some have the same pinout out as the RP Pico, so are drop-in replacements. Others have different pinouts in order to make smaller boards, different shapes or use different headers or pads, but they still work just like an RP Pico & will use the same code, just being mindful if the pins are in a different location.