Modding a Model M for your grandmother
- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -
Suppose your grandmother came to you and said that she wanted a Model M, but she also wanted to assign macros and layers on it (Grandma is a NodeJS maestro of course). A PS2/USB converter won't work here. And suppose that you purchased a cableless Model M from Ebay.
What are the options?
1) Internal Teensy2.0 Soarer's Converter
Pro: Easy to install.
Con: Requires learning the Soarer's Converter syntax and using command line tools.
2) Internal Teensy2.0, PJRC's Teensy Loader, TMK Keyboard Editor
Pro: Graphical representation of the layout, flashing is easy to explain and convenient.
Con: Changing the layout requires either opening the case or mounting the Teensy2.0 so that the button can be accessed via a drilled hole.
Both of these could also be done externally, but would involve having to also purchase the original cable and plugging it into either a converter box that makes the Teensy2.0 button accessible or plugging into something like Orihalcon's Soarer's Converters.
Additionally, cable lengths of over 3 meters can cause keyboard problems.
It seems like the 2nd option is the best. Is there a better option or something that I'm not understanding?
What are the options?
1) Internal Teensy2.0 Soarer's Converter
Pro: Easy to install.
Con: Requires learning the Soarer's Converter syntax and using command line tools.
2) Internal Teensy2.0, PJRC's Teensy Loader, TMK Keyboard Editor
Pro: Graphical representation of the layout, flashing is easy to explain and convenient.
Con: Changing the layout requires either opening the case or mounting the Teensy2.0 so that the button can be accessed via a drilled hole.
Both of these could also be done externally, but would involve having to also purchase the original cable and plugging it into either a converter box that makes the Teensy2.0 button accessible or plugging into something like Orihalcon's Soarer's Converters.
Additionally, cable lengths of over 3 meters can cause keyboard problems.
It seems like the 2nd option is the best. Is there a better option or something that I'm not understanding?
- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -
- fohat
- Elder Messenger
- Location: Knoxville, Tennessee, USA
- Main keyboard: Model F 122-key terminal
- Main mouse: Microsoft Optical Mouse
- Favorite switch: Model F Buckling Spring
- DT Pro Member: 0158
Soarer suggested pull-up resistors and I have always used them (I got 100 of them on ebay for something like $1 shipped from China).
I have never had any problems with cable lengths or daisy-chaining adapters.
- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -
I discovered this yesterday working on the Pingmaster and ordered some 1k ohm resistors. As far as I can tell, making this standard operating procedure on all modding jobs seems like a prudent idea.
- Ray
- Location: Germany
- Main mouse: touchpad
- DT Pro Member: -
It's been a while since I did that, but I think there's a "magic"-keycombo, that you can set in config.h with #define IS_COMMAND. Press the combo + pause to enter bootloader. You can change pause to something else in command.c
or bootloader_jump() in a C function.
You might need to set bootloader size in Makefile. see here https://github.com/tmk/tmk_keyboard/wiki/FAQ-Build
- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -
I'm unsure how to do this through the TMK Keyboard Editor, if it is possible.Ray wrote: It's been a while since I did that, but I think there's a "magic"-keycombo, that you can set in config.h with #define IS_COMMAND. Press the combo + pause to enter bootloader. You can change pause to something else in command.c
or bootloader_jump() in a C function.
You might need to set bootloader size in Makefile. see here https://github.com/tmk/tmk_keyboard/wiki/FAQ-Build
- Ray
- Location: Germany
- Main mouse: touchpad
- DT Pro Member: -
Ah, I don't know about the TMK Keyboard Editor, but it should default to left shift + right shift + pause, or something similar (probably depending on the base firmware file you choose). You still might need to set the correct bootloader size in Makefile, if you have bad luck.
- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -
Supposedly Left Shift + Right Shift + Pause or Left Alt + Right Alt + Pause will start the bootloader, which I haven't gotten to work on this Pingmaster. And I think a 3-key combination may be a problem on 2KRO Model M boards.
At this point I think that drilling the hole, mounting the Teensy2.0, installing the Teensy Loader, downloading the .hex from the TMK editor, drag and dropping the .hex into the GUI, and pushing the button with a paper clip is the better configuration workflow.
- 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
Beg phosphorglow to start making his Colossus controller again, or see about starting a group buy for them if you make them yourself? The internal controller replacement is the single best upgrade I've ever seen for the Model M.
- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -
I found the thread and necro bumped it because I feel like being annoying this morning.

The details still seem a bit unclear to me, but as far as I can tell, this controller would allow the user to use the TMK Editor to assign keys and macros and makes starting the bootloader easier, and brings along Bluetooth!
It also solves a problem that I hadn't thought of: What if the Model M from Ebay has a bad controller?
Thanks again XMIT!
- seebart
- Offtopicthority Instigator
- Location: Germany
- Main keyboard: Rotation
- Main mouse: Steelseries Sensei
- Favorite switch: IBM capacitive buckling spring
- DT Pro Member: 0061
- Contact:
Haha that's just fine.just_add_coffee wrote:I found the thread and necro bumped it because I feel like being annoying this morning.![]()


- just_add_coffee
- Location: United States
- Main keyboard: Model F AT, Batwing Ergodox
- Main mouse: Microsoft Trackball Explorer 1.0
- Favorite switch: Buckling Spring
- DT Pro Member: -