Page 1 of 1

yet another replacement controller for Kinesis

Posted: 23 Dec 2020, 13:36
by Quartz64
Image

I want to show you yet another replacement controller for Kinesis Contoured keyboards: KinBP ('Kinesis Blue/Black Pill').

There are a least 6 similar projects:
  • 'Stapelberg' and KinT by Michael Stapelberg. They use quite expensive devboard, Teensy 2.0++ (KinT additionally supports Teensy 3.x) and the are compatible only with Advantage or Advantage-2 keyboards.
  • Alvicstep. Not an actual controller, but Teensy 2.0 connected directly to DIP40 socket of the stock controller.
  • nguyenvietyen. Similar to Alvicstep, Pro Micro connected to DIP40 socket and using multiplexed row access.
  • Controller by Aaron Silman. This is a remake of 'Stapelberg' controller in KiCAD with several improvements: support for pre-Advantage keyboards with angled keywell connectors, correctly placed Teensy 2.0++, sub-100mm size. Great project. I wish I had discovered it earlier, then I wouldn't have to reinvent the wheel.
  • Bluetooth controller by Wizarddata.
Why we need another controller? My goals are:
  • Low price. This means: 1) Cheap development board with enough IO (so we don't have to mess with IO expanders). Teensy 2.0++ costs $24, Blue Pill Plus (STM32F103) or Black Pill (STM32F401) boards by WeAct Studio are $2.6 and $3.4 respectively. 2) Less than 100x100mm dimensions: some PCB manufacturers (e.g. JLCPCB) have special pricing for small boards. 3) Cheaper connectors. There is a Chinese substitute of Molex 39-53-2135 connectors, $0.6 instead of $1.2–1.4. Not a big difference, but 6 connectors needed for Advantage-2 and that saves another $3.6
  • Ease of assembly by an inexperienced person. So we need to avoid SMD components or make an alternative TH footprints (this will be fixed in the next revision).
  • Compatibility with all Kinesis Contoured keyboards, except for very early Model 100/110 which differs significantly. Silman's controller is compatible with Advantage-1 and Classic keyboards (but it doesn't have Molex FPC connectors for Advantage-2 thumb-cluster PCBs), KinT is compatible with Advantage-1/2, but I wasn't sure that it had the right spacing for keywell connectors. Another compatibility issue: some of the early Classics had a weird thumb-cluster PCBs with LEDs on them, not on the controller PCB. I've managed to fix that by designing a replacement thumb-cluster PCBs.
Image

So here is the KinBP 1.1. I've checked it with Classic, Advantage and Advantage-2 keyboards. Everything works as intended thanks to engineers of Kinesis who didn't change the matrix for the last 25 years.
  • Based on WeAct Blue Pill Plus board with STM32F103C8T6. I am going to replace it with WeAct MiniF4 STM32F401 devboard, as I have no confidence in long-term availability of STM32F103 based boards.
  • Runs QMK from my fork. Next revision will be in the main QMK repository.
  • There is a pin header for 8 additional switches (connected to unused matrix positions).
  • 24LC128 I2C EEPROM. Primarily for a planned VIA configurator support. QMK supports EEPROM emulation for STM32F1xx and STM32F3xx, but not for the STM32F4xx, AFAIK.
Image

TODO:
  • Make another revision with STM32F401 WeAct board, rotated top-row connectors (for compatibility with Chinese connectors), expose unused pins, add a decoupling capacitor for the EEPROM chip. I expect to receive and check the PCB samples by the end of January 2021.
  • Clone the keywell flexible PCBs.
  • Some improvements to thumb-cluster PCBs: encoder support on 'Alt' key positions, better placement of the connector.
Credits:
Michael Stapelberg: connectors pinout
Aaron Silman: in his article I found confirmation that Classic models have the same matrix as Advantage-1/2 before I got them at my disposal (my daily drivers are two handwired Kinesis keyboards, PCBs from which I threw away a long time ago).

Re: yet another replacement controller for Kinesis

Posted: 09 Jun 2021, 23:03
by tinyenormous
I can't believe I didn't find this earlier! Did you ever post your files, or make any of the mentioned updates?
This looks great - I'd love to try it out!

Re: yet another replacement controller for Kinesis

Posted: 09 Jun 2021, 23:06
by tinyenormous
I noticed you used the double sided mx switch footprint - this isn't actually flippable, right? It looks like you have one pcb per thumb cluster.

Re: yet another replacement controller for Kinesis

Posted: 26 Jun 2021, 19:00
by Rayndalf
This is really cool. Teensy 2.0++ are just annoyingly expensive so this is greatly appreciated.

Re: yet another replacement controller for Kinesis

Posted: 15 Feb 2022, 23:37
by macsek
Thanks for your work, this controller board is really promising. :!:
There is a Chinese substitute of Molex 39-53-2135 connectors
Can you please specify to let others find it as well.
TODO:

Make another revision with STM32F401 WeAct board, rotated top-row connectors (for compatibility with Chinese connectors), expose unused pins, add a decoupling capacitor for the EEPROM chip. I expect to receive and check the PCB samples by the end of January 2021.
Clone the keywell flexible PCBs.
Some improvements to thumb-cluster PCBs: encoder support on 'Alt' key positions, better placement of the connector.
Based on your current schedule what do you see as a realistic date for these entries on your TODO list to make happen?

Thank you in the name of the community.