Modding a Model M for your grandmother

User avatar
just_add_coffee

13 May 2017, 07:38

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?

Vizir

13 May 2017, 08:08

2 and add an externally accessible button for reset/flashing

Sent from my Nexus 6P using Tapatalk

User avatar
ohaimark
Kingpin

13 May 2017, 08:10

You seem to have everything right.

User avatar
Ray

13 May 2017, 11:11

with TMK you can enter the mode where you can flash, from the normal firmware running. So you don't necessarily need acess to the hardware button, unless she removes that keybind.

User avatar
just_add_coffee

13 May 2017, 17:33

Ray wrote: with TMK you can enter the mode where you can flash, from the normal firmware running. So you don't necessarily need acess to the hardware button, unless she removes that keybind.
Do you know how to do that? Because that would be a game changer right there!

User avatar
fohat
Elder Messenger

13 May 2017, 17:46

just_add_coffee wrote:
Additionally, cable lengths of over 3 meters can cause keyboard problems.
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.

User avatar
just_add_coffee

13 May 2017, 18:11

fohat wrote:
just_add_coffee wrote:
Additionally, cable lengths of over 3 meters can cause keyboard problems.
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.
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.

User avatar
Ray

13 May 2017, 18:48

just_add_coffee wrote:
Ray wrote: with TMK you can enter the mode where you can flash, from the normal firmware running. So you don't necessarily need acess to the hardware button, unless she removes that keybind.
Do you know how to do that? Because that would be a game changer right there!
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

User avatar
just_add_coffee

13 May 2017, 19:39

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
I'm unsure how to do this through the TMK Keyboard Editor, if it is possible.

User avatar
Ray

14 May 2017, 07:42

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.

User avatar
just_add_coffee

14 May 2017, 09:38

Ray wrote: 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.
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.

User avatar
XMIT
[ XMIT ]

14 May 2017, 13:51

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.

User avatar
just_add_coffee

14 May 2017, 17:33

XMIT wrote: 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.
I found the thread and necro bumped it because I feel like being annoying this morning. :twisted:

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!

User avatar
seebart
Offtopicthority Instigator

14 May 2017, 17:35

just_add_coffee wrote:
XMIT wrote: 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.
I found the thread and necro bumped it because I feel like being annoying this morning. :twisted:
Haha that's just fine. :lol: I might join you. :evilgeek:

User avatar
just_add_coffee

14 May 2017, 18:00

seebart wrote:
Haha that's just fine. :lol: I might join you. :evilgeek:
COOL!!!

Post Reply

Return to “Workshop”