Replacement controller for Model M.
-
- Location: UK
- Main keyboard: Filco ZERO green alps, Model F 122 Terminal
- Main mouse: Ducky Secret / Roller Mouse Pro 1
- Favorite switch: MX Mount Topre / Model F Buckling
- DT Pro Member: 0167
I have been thinking, would it be possible to build a replacement controller for a Model M? I know its possible to do a USB conversion but i am not a huge fan of doing that. I have also seen something about bluetooth for them but no details.
I would look into doing it myself but i am not 100% sure where to start, i guess there is custom keyboard firmware out there that would work so i will look into that.
I was wondering if we could get the flat flex connectors so its a drop in solution.
I was also thinking if it would be possible to improve the key rollover, not you aint going to get n-key without major modification to the matrix but would it be possible to add some diodes on the replacement controller pcb to improve it some.
I have also never designed a PCB, so i will have to look into that as well, the plan would be for through hole so its easy for me and my fat fingers to build at home.
Oh does anyone have any ideas how to quieten down a model m spacebar ?
I would look into doing it myself but i am not 100% sure where to start, i guess there is custom keyboard firmware out there that would work so i will look into that.
I was wondering if we could get the flat flex connectors so its a drop in solution.
I was also thinking if it would be possible to improve the key rollover, not you aint going to get n-key without major modification to the matrix but would it be possible to add some diodes on the replacement controller pcb to improve it some.
I have also never designed a PCB, so i will have to look into that as well, the plan would be for through hole so its easy for me and my fat fingers to build at home.
Oh does anyone have any ideas how to quieten down a model m spacebar ?
- Mal-2
- Location: Los Angeles, CA
- Main keyboard: Cherry G86-61400
- Main mouse: Generic 6-button "gaming mouse"
- Favorite switch: Probably buckling spring, but love them Blues too
- DT Pro Member: -
- Contact:
I think the basic problem is that you'll be dealing with a keyboard that uses capacitive sensing, not switches. This greatly limits the circuits available to use as controllers. This is also why no diodes were required (capacitance wouldn't work if current couldn't go both ways).andrewjoy wrote: I have been thinking, would it be possible to build a replacement controller for a Model M? I know its possible to do a USB conversion but i am not a huge fan of doing that. I have also seen something about bluetooth for them but no details.
I would look into doing it myself but i am not 100% sure where to start, i guess there is custom keyboard firmware out there that would work so i will look into that.
I was wondering if we could get the flat flex connectors so its a drop in solution.
I was also thinking if it would be possible to improve the key rollover, not you aint going to get n-key without major modification to the matrix but would it be possible to add some diodes on the replacement controller pcb to improve it some.
I have also never designed a PCB, so i will have to look into that as well, the plan would be for through hole so its easy for me and my fat fingers to build at home.
Oh does anyone have any ideas how to quieten down a model m spacebar ?
As for quieting, isn't the usual trick to put a piece of dental floss inside the spring so it doesn't ring like a bell after buckling?
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Model M. And Model F / capsense is already solved.
Remember this thread? I'm still investigating. USB is definitely doable with a Model M and Teensy.
- macmakkara
- Location: Finland
- DT Pro Member: -
Mu was faster but yeah. M uses membrane and its 2kro unlike model Fs that use capacitive.
- Mal-2
- Location: Los Angeles, CA
- Main keyboard: Cherry G86-61400
- Main mouse: Generic 6-button "gaming mouse"
- Favorite switch: Probably buckling spring, but love them Blues too
- DT Pro Member: -
- Contact:
Whoops. I guess I can cross that off the wish list (and put the Model F on).Muirium wrote:Model M. And Model F / capsense is already solved.
Remember this thread? I'm still investigating. USB is definitely doable with a Model M and Teensy.
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
I came a lot further with bluetoothing my SSK. I now have a teensy++ based controller that talks to either USB or a Bluefruit EZkey. Both Teensy and Bluefruit run on 3.3 V, the Teensy uses 20 mA, the Bluefruit EZkey uses 25 mA, so both together use 45 mA. With my 2100 mAh LiPo cell that should give me about 40 h of typing wirelessly as it is, but I intend to improve on that.
The hardware is still in prototype phase though, the controller pcb is done, but on/off-switch, LEDs, etc are still on a breadboard. Also, there's still a lot to do in software to make switching between USB and bluetooth work better, as well as get the energy level down by putting both chips to sleep/idle state when they're not used.
Since this is just a personal project and I'm not a hardware guy, I'm using stripe PCBs like this, which works pretty well for a model M controller, but probably wouldn't for other keyboards.
I'll show more when I'm further along the way, but the part of making a usb controller for the Model M really wasn't that hard with the TMK controller and a teensy, even for an electronics noob like me. It has been done several times.
The hardware is still in prototype phase though, the controller pcb is done, but on/off-switch, LEDs, etc are still on a breadboard. Also, there's still a lot to do in software to make switching between USB and bluetooth work better, as well as get the energy level down by putting both chips to sleep/idle state when they're not used.
Since this is just a personal project and I'm not a hardware guy, I'm using stripe PCBs like this, which works pretty well for a model M controller, but probably wouldn't for other keyboards.
I'll show more when I'm further along the way, but the part of making a usb controller for the Model M really wasn't that hard with the TMK controller and a teensy, even for an electronics noob like me. It has been done several times.
Last edited by Halvar on 02 Feb 2015, 14:36, edited 1 time in total.
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
Ah, excellent! So much better battery life than working around the original controller. The EZkey works well with mods and rollover now? I remember hearing they gave it a big update to make it much better suited to our needs than it was originally.
I hope your hardware sits well in an SSK. Because you can bet the SSK guys are going to be into Bluetooth! Keep us posted.
I hope your hardware sits well in an SSK. Because you can bet the SSK guys are going to be into Bluetooth! Keep us posted.
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
I can't tell you much about how well rollover works yet, I haven't tested that so far. Rollover on the Model M is pretty bad anyway of course because of the missing diodes, and the controller can't change that. But yes, earlier version of the Bluefruit were pretty limited, now you basically transmit to the Bluefruit what you would else transmit over USB. Still no BLE (Bluetooth low energy) unfortunately.
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
That should be good enough for a Model M. Earlier versions of the EZkey were hideously limited: you had literally 1KRO! Couldn't send mods at all, it was more of a telegram sending device… perhaps for monitoring instruments or something, certainly not converting keyboards. So long as it can handle several mods at once and an alpha, we'll be fine. PS/2 Model Ms were well enough designed not to shadow out mods, so they're very useable keyboards for the non gamers among us.
-
- Location: UK
- Main keyboard: Filco ZERO green alps, Model F 122 Terminal
- Main mouse: Ducky Secret / Roller Mouse Pro 1
- Favorite switch: MX Mount Topre / Model F Buckling
- DT Pro Member: 0167
Sounds very cool, if it ends up being an open solution that would be amazing, i would be happy to help out working on PCB design and the like. The option to turn off the BT and run over usb would be amazing! As i said i think through hole would be best over SMD. Willing to help out and i have a Lexmark M that can give its life if needed.
I have seen keyboards with decent rollover that don't have a diode each switch, so as i said i think its not possible to fix this with a controller but possibly by adding some diodes at the end of the matrix ? Then again i don't know how rollover works, i am guessing its something to do with stopping the signal bouncing around the matrix
I have seen keyboards with decent rollover that don't have a diode each switch, so as i said i think its not possible to fix this with a controller but possibly by adding some diodes at the end of the matrix ? Then again i don't know how rollover works, i am guessing its something to do with stopping the signal bouncing around the matrix
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
That last thing you said: correct!
http://www.dribin.org/dave/keyboard/one_html/
The matrix is the weakest link on the chain. The only place diodes do any good is one per switch, integrated right inside it.
Anyway, a USB/BT controller for Model Ms is huge. You're charging over USB I presume, Halvar? The best!
http://www.dribin.org/dave/keyboard/one_html/
The matrix is the weakest link on the chain. The only place diodes do any good is one per switch, integrated right inside it.
Anyway, a USB/BT controller for Model Ms is huge. You're charging over USB I presume, Halvar? The best!
-
- Location: UK
- Main keyboard: Filco ZERO green alps, Model F 122 Terminal
- Main mouse: Ducky Secret / Roller Mouse Pro 1
- Favorite switch: MX Mount Topre / Model F Buckling
- DT Pro Member: 0167
Nope charge over custom cable only , £30 each, they also have a chip in for your protection so you only can use authorised cables.
( in all seriosnes micro usb would be best
)
( in all seriosnes micro usb would be best

- XMIT
- [ XMIT ]
- Location: Austin, TX area
- Main keyboard: XMIT Hall Effect
- Main mouse: CST L-Trac Trackball
- Favorite switch: XMIT 60g Tactile Hall Effect
- DT Pro Member: 0093
I researched exactly this recently and found:
http://www.schatenseite.de/dulcimer.html?&L=2
http://mg8.org/rump/
So there is indeed prior art here. But it is all openly licensed. Maybe someone should start a group buy.
As for NKRO - I wonder if some clever polling scheme (not just "rows and columns in sequential order" but something more carefully tuned to the actual membrane layout) could enable better sensing. I don't have a good sense for the physical characteristics of the membrane - any debounce time required, etc.
http://www.schatenseite.de/dulcimer.html?&L=2
http://mg8.org/rump/
So there is indeed prior art here. But it is all openly licensed. Maybe someone should start a group buy.

As for NKRO - I wonder if some clever polling scheme (not just "rows and columns in sequential order" but something more carefully tuned to the actual membrane layout) could enable better sensing. I don't have a good sense for the physical characteristics of the membrane - any debounce time required, etc.