-
-
Notifications
You must be signed in to change notification settings - Fork 40.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
4x4 board #3531
4x4 board #3531
Conversation
@@ -0,0 +1,138 @@ | |||
/* Copyright 2018 REPLACE_WITH_YOUR_NAME |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't forget to give yourself some credit!
@@ -0,0 +1,19 @@ | |||
/* Copyright 2018 REPLACE_WITH_YOUR_NAME |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please change REPLACE_WITH_YOUR_NAME
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i'm just going to delete the whole block, if that's ok. i'd rather give the credit to @di0ib, who did all the work on this board already. I'm just porting his work. but i don't want to put his name, since he'd probably do a much better job of this than me....
FWIW, on my other stuff, i put my name 😄
keyboards/4x4/4x4.h
Outdated
{ K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b, K3c, K3d, K3e, K3f } \ | ||
} | ||
/* | ||
#define LAYOUT_ortho_4x4( \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It may be helpful to have a 4x4, 4x8, 4x12 and 4x16 layout here, so that users have all of the above to select from.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The original designer (@di0ib), said on his site that for layouts smaller than 4x16, unused keys will just get ignored. More specifically, if it's not connected, it simply won't register.
I thought i'd just provide for the largest possible configuration, and if users don't make full use of it, it won't hurt anything if they don't (hence the modularity aspect of this board).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, while that's true, it makes things simpler for new users if there is the correct number of keys for their layout, rather than relying on "blanking out" the additional spaces on a single layout that has all possible keys.
eg:
#define ___ KC_NO
#define LAYOUT_ortho_4x4( \
K00, K01, K02, K03, \
K10, K11, K12, K13, \
K20, K21, K22, K23, \
K30, K31, K32, K33 \
) \
{ \
{ K00, K01, K02, K03, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___}, \
{ K10, K11, K12, K13, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___}, \
{ K20, K21, K22, K23, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___}, \
{ K30, K31, K32, K33, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___} \
}
#define LAYOUT_ortho_4x8( \
K00, K01, K02, K03, K04, K05, K06, K07, \
K10, K11, K12, K13, K14, K15, K16, K17, \
K20, K21, K22, K23, K24, K25, K26, K27, \
K30, K31, K32, K33, K34, K35, K36, K37\
) \
{ \
{ K00, K01, K02, K03, K04, K05, K06, K07, ___, ___, ___, ___, ___, ___, ___, ___}, \
{ K10, K11, K12, K13, K14, K15, K16, K17, ___, ___, ___, ___, ___, ___, ___, ___}, \
{ K20, K21, K22, K23, K24, K25, K26, K27, ___, ___, ___, ___, ___, ___, ___, ___}, \
{ K30, K31, K32, K33, K34, K35, K35, K37, ___, ___, ___, ___, ___, ___, ___, ___} \
}
#define LAYOUT_ortho_4x12( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b \
) \
{ \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, ___, ___, ___, ___}, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, ___, ___, ___, ___}, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, ___, ___, ___, ___}, \
{ K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b, ___, ___, ___, ___} \
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Additionally, it also shows up in the configurator this way too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. i understand. I don't make real use of Layouts yet (or the Configurator), but in the interest of making it easier for others...
# This definition is optional, and if your keyboard supports multiple bootloaders of | ||
# different sizes, comment this out, and the correct address will be loaded | ||
# automatically (+60). See bootloader.mk for all options. | ||
BOOTLOADER = caterina |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i think by default it uses Caterina (or similar)? When i got it, i burned the "official" Arduino bootloader (via the Arduino IDE) and flashed it with avrdude.
i then followed my previous instructions (https://github.com/qmk/qmk_firmware/tree/master/keyboards/gherkin/keymaps/wanleg)
and burned QMK DFU on it and that worked too... (though for some reason the DFU mode exit key doesn't seem to work. in my testing, RESET works fine, so i'm pretty sure i know i'm hitting the right pin combo. that's not so important for me though.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, looking around, yeah, it does look like this uses the caterina bootloader by default. At least as far as I can tell.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do i need to do anything here then? github says you're requesting changes...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope.
keyboards/4x4/rules.mk
Outdated
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches | ||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400) | ||
|
||
LAYOUT = ortho_4x16 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should add the other layouts too. Ortho 4x4 and 4x12 are definitely supported.
So this line should look like:
LAYOUT = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done. It’s defined in 4x4.h, so it should be ok, right? Do i have to add it to ./layouts/community also? All the layouts aren’t there yet.
Added support for additional layouts
Awesome! Thanks! |
* add support for 4x4 macropad * Update readme.md * set DFU escape key * cleanup * Update config.h * Update keymap.c * Update config.h * Update keymap.c * Update 4x4.h * reviewed fudging review automation * playing with the system * reverting * Required additions made Added support for additional layouts * tidy up default keymap
* add support for 4x4 macropad * Update readme.md * set DFU escape key * cleanup * Update config.h * Update keymap.c * Update config.h * Update keymap.c * Update 4x4.h * reviewed fudging review automation * playing with the system * reverting * Required additions made Added support for additional layouts * tidy up default keymap
* add support for 4x4 macropad * Update readme.md * set DFU escape key * cleanup * Update config.h * Update keymap.c * Update config.h * Update keymap.c * Update 4x4.h * reviewed fudging review automation * playing with the system * reverting * Required additions made Added support for additional layouts * tidy up default keymap
add support for 4x4 macropad