Hi all,
Great forum you all got here, been reading for the last week or so trying to figure out what the best controller and firmware would be for my project.
So I've never actually worked with custom keyboard before but i do have some experience in 3D design, micro controllers, soldering for 25 years and programming (not a pro, but also not a newb and i'm ready to get hands dirty). That said i just started doing actual proper schematics for this project in KiCAD, really nice program
So a few details about what i would like to implement, i will do the programming needed but i don't know the best platform to start from, TMK, QMK, Easy AVR and what have we.
I thought of the ATMEGA32U4 as controller but for the 100% layout it's a problem, since there isn't enough pins for a matrix of 10*13 (23 pins) for 130 keys which is the absolute lowest pin number i can get and for 7 status diodes. The AT90USB1286 used on the teensy++ 2.0 will accommodate for this but since the halfkay bootloader used on teensy is closed source that is a no-go, so I'm wondering if this is a viable option? Would like to support NKRO.
I would love if was plug and play, no driver install like i understand the teensy++ 2.0 is. (was looking for the AT90USB1286 with halfkay bootloader that i could buy and use without the rest of the board, but seems like that is a no-go. There is one must and that is i want the controller on the keyboard PCB as I'm implementing USB Type C connector.
OS Button
have no function other than telling controller to switch layout. Must be saved to EEPROM, Not part of matrix
Game Mode button
have no other function than to toggle if controller should react to WIN key when in WINDOW / LINUX layout. Don't know if it should be part of matrix
Macro Button
will allow for on-board recording of macro for each F-key
OS Button:On the fly switching between OSX layout and Windows / Linux layout
Last selected state / layout saved to EEPROM (internal or external SPI EEPROM)
Macro Recording (pseudo code for explaining):1 push enables macro selection mode
if macro key is pushed once within 2 sec, keyboard exit macro mode
else if macro key is pushed twice within 2 sec it enable or disable recording of time between keystrokes
else if F1-24 key is pushed then it is selected
If macro key is held in for 3+ sec F-key clears and goes back to default F1-24 function and macro mode exit
else if macro key is pushed once within 2 sec it cancel the operation and leaves the key as is and exits macro mode
else if any other key is pressed, within the keyboard matrix, it is recorded as that key
else exits macro mode after 15 sec if no button is pushed
else exits macro mode after 15 sec if no button is pushed
Gaming Mode:Disable Alt+Tab
Disable Windows Key + Tab
Disable Left Windows Key
Disable Right Windows Key
Layers / layouts:Default would be Windows + Linus or Apple
then there would be a shift layer for all secondary options
then there is a Fn layer with all Fn functions (orange boxed)
100% Layout Total physical keys 129. 128 of them on keyboard matrix last key is OS key or 127 keys on matrix and OS + Macro directly connected)
70% Layout Total physical keys 89. 88 of them on keyboard matrix last key is OS key or 87 keys on matrix and OS + Macro directly connected)
60% Layout Total physical keys 76. 75 of them on keyboard matrix last key is OS key or 74keys on matrix and OS + Macro directly connected)
Would love any pointers where to go from and any feedback is welcome.
Please refrain from commenting if you simply just don't like it and think I should know, I really should not, thank you