Here are some of my findings. I used a multimeter to chart the columns and rows of the PURE PCB. I used (colored) letters for the columns (the ones that are connected directly to the keys), and numbers for the rows (the ones that are connected via a diode).
![Reverse engineering the matrix of the KBT Pure](./download/file.php?id=6279&sid=520c3b6583c4a7f923af024eac0c5c79)
- Reverse engineering the matrix of the KBT Pure
- pure_re.png (936.11 KiB) Viewed 22644 times
The chip on the right is the controller, the one on the left is probably the led driver. Mosdt likely this is connected using i2c or spi to the driver. For hacking the keyboard using a Teensy I leave the chips in place. Only the Teensy is powered, the existing chips are not. If I cannot scan the keys correctly I would most likely try to remove the controller. If you would like to re-use the led circuit, you would have to remoev the controller and hookup the led driver to the teensy as well.
If I chart the matrix of the above findings, I get the following matrix:
![Matrix of the KBT Pure](./download/file.php?id=6278&sid=520c3b6583c4a7f923af024eac0c5c79)
- Matrix of the KBT Pure
- keymap.png (30.45 KiB) Viewed 22644 times
The connections to the ports of the HT52K94E are also shown, next to the connections to the ports that I used on the Teensy. Of course you are free to connect to other ports.
Some of the rows may be overlapped with others, to decrease the number of rows used. It is not necesarry, as the Teensy has enough ports, but I combined some of the rows to decrease IO used. The hardware mapped keys are shown in red. In the first picture the mapping (combining of rows) is hown with 4 yellow connections. The fourth is between two pins of the controller.
In blue is an extra key I added, as I like to have two keys instead of the backspace, to mimic the layout of the HHKB.
![Added key, top view](./download/file.php?id=6270&sid=520c3b6583c4a7f923af024eac0c5c79)
- Added key, top view
- IMG_2544.JPG (28.46 KiB) Viewed 22713 times
![added key, bottom view](./download/file.php?id=6271&sid=520c3b6583c4a7f923af024eac0c5c79)
- added key, bottom view
- IMG_2545.JPG (28.35 KiB) Viewed 22713 times
After connecting all the rows and columns to the Teensy I get the following result:
![Teensy added](./download/file.php?id=6272&sid=520c3b6583c4a7f923af024eac0c5c79)
- Teensy added
- IMG_2543.JPG (92.82 KiB) Viewed 22713 times
Next was some case modding to fit the PCB with Teensy in the (temporay) original case. This is mainly for providing space for the connections, the Teensy itself, a hole to reach the reset button and a hole for another USB cable, since the original USB connector is not used:
![Simple case modding](./download/file.php?id=6273&sid=520c3b6583c4a7f923af024eac0c5c79)
- Simple case modding
- IMG_2547.JPG (87.59 KiB) Viewed 22713 times
The finished product looks just like the original KBT Pure, but with two buttons top right. Next is providing software for the Teensy to make the keyboard do what I want, and waiting for my key caps to be delivered.