summaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
authorNick Brassel <nick@tzarc.org>2023-11-28 16:39:48 +1100
committerNick Brassel <nick@tzarc.org>2023-11-28 16:40:47 +1100
commit0115951de12bd4c798a43a380651c34552552e85 (patch)
tree62999011ae782d93aa6dc9c889615db2a840cafc /keyboards
parent0379d1f59e58cefa18cdb72ba1b77507d1108ae6 (diff)
parent4d99e0a23cff02f4c6e55e093b5de08a9be0df7c (diff)
`develop` -> `master`, 2023q4 edition
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/1k/keymaps/default/rgblite.h2
-rw-r--r--keyboards/1k/keymaps/media/rgblite.h2
-rw-r--r--keyboards/1upkeyboards/1up60hse/keymaps/vosechu/config.h19
-rw-r--r--keyboards/1upkeyboards/1up60hse/keymaps/vosechu/keymap.c46
-rw-r--r--keyboards/1upkeyboards/1up60hse/keymaps/vosechu/readme.md6
-rw-r--r--keyboards/1upkeyboards/1up60hte/keymaps/badger/keymap.c59
-rw-r--r--keyboards/1upkeyboards/1up60rgb/keymaps/badger/keymap.c59
-rw-r--r--keyboards/1upkeyboards/1upocarina/info.json1
-rw-r--r--keyboards/1upkeyboards/1upocarina/rules.mk2
-rw-r--r--keyboards/1upkeyboards/1upslider8/rules.mk2
-rw-r--r--keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/config.h13
-rw-r--r--keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/keymap.c290
-rw-r--r--keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/rules.mk22
-rw-r--r--keyboards/1upkeyboards/pi60/config.h2
-rw-r--r--keyboards/1upkeyboards/pi60/info.json787
-rw-r--r--keyboards/1upkeyboards/pi60/keymaps/default/keymap.c8
-rw-r--r--keyboards/1upkeyboards/pi60/keymaps/via/keymap.c20
-rw-r--r--keyboards/1upkeyboards/pi60/matrix_diagram.md60
-rw-r--r--keyboards/1upkeyboards/pi60_hse/config.h2
-rw-r--r--keyboards/1upkeyboards/pi60_hse/info.json3
-rw-r--r--keyboards/1upkeyboards/super16/keymaps/15game/keymap.c2
-rw-r--r--keyboards/1upkeyboards/sweet16v2/kb2040/config.h2
-rw-r--r--keyboards/1upkeyboards/sweet16v2/kb2040/info.json3
-rw-r--r--keyboards/1upkeyboards/sweet16v2/pro_micro/config.h3
-rw-r--r--keyboards/1upkeyboards/sweet16v2/pro_micro/info.json3
-rw-r--r--keyboards/25keys/zinc/keymaps/ginjake/keymap.c8
-rw-r--r--keyboards/3w6/keymaps/manna-harbour_miryoku/config.h32
-rw-r--r--keyboards/3w6/keymaps/manna-harbour_miryoku/keymap.c17
-rw-r--r--keyboards/3w6/rev1/rules.mk2
-rw-r--r--keyboards/3w6/rev2/rules.mk2
-rw-r--r--keyboards/40percentclub/gherkin/keymaps/mjt/keymap.c35
-rw-r--r--keyboards/40percentclub/gherkin/keymaps/steno/keymap.c1
-rw-r--r--keyboards/40percentclub/gherkin/keymaps/talljoe-gherkin/keymap.c1
-rw-r--r--keyboards/40percentclub/nano/keymaps/drashna/config.h22
-rw-r--r--keyboards/40percentclub/nano/keymaps/drashna/keymap.c31
-rw-r--r--keyboards/40percentclub/nano/keymaps/drashna/rules.mk6
-rw-r--r--keyboards/40percentclub/ut47/rules.mk2
-rw-r--r--keyboards/4pplet/eagle_viper_rep/rev_a/config.h5
-rw-r--r--keyboards/4pplet/eagle_viper_rep/rev_a/info.json3
-rw-r--r--keyboards/4pplet/eagle_viper_rep/rev_b/config.h3
-rw-r--r--keyboards/4pplet/eagle_viper_rep/rev_b/info.json3
-rw-r--r--keyboards/4pplet/perk60_iso/rev_a/config.h5
-rw-r--r--keyboards/4pplet/perk60_iso/rev_a/rev_a.c2
-rw-r--r--keyboards/4pplet/waffling60/readme.md2
-rw-r--r--keyboards/4pplet/waffling60/rev_d/readme.md2
-rw-r--r--keyboards/4pplet/waffling60/rev_e/config.h20
-rw-r--r--keyboards/4pplet/waffling60/rev_e/info.json917
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/keymap.c40
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/rules.mk (renamed from keyboards/keychron/q0/rev_0131/keymaps/default/rules.mk)0
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/keymap.c40
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/rules.mk1
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/keymap.c40
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/rules.mk1
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/keymap.c40
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/rules.mk1
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/default/keymap.c40
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/default/rules.mk1
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/via/keymap.c40
-rw-r--r--keyboards/4pplet/waffling60/rev_e/keymaps/via/rules.mk (renamed from keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/rules.mk)0
-rw-r--r--keyboards/4pplet/waffling60/rev_e/matrix_diagram.md37
-rw-r--r--keyboards/4pplet/waffling60/rev_e/readme.md20
-rw-r--r--keyboards/4pplet/waffling60/rev_e/rev_e.c35
-rw-r--r--keyboards/4pplet/waffling60/rev_e/rev_e.h22
-rw-r--r--keyboards/4pplet/waffling60/rev_e/rules.mk2
-rw-r--r--keyboards/9key/keymaps/bcat/keymap.c39
-rw-r--r--keyboards/9key/keymaps/bcat/readme.md5
-rw-r--r--keyboards/a_dux/keymaps/manna-harbour_miryoku/config.h19
-rw-r--r--keyboards/a_dux/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/a_dux/keymaps/manna-harbour_miryoku/rules.mk4
-rw-r--r--keyboards/abacus/config.h2
-rw-r--r--keyboards/abacus/info.json3
-rw-r--r--keyboards/abko/ak84bt/ak84bt.c2
-rw-r--r--keyboards/abko/ak84bt/config.h5
-rw-r--r--keyboards/acheron/apollo/87h/gamma/config.h4
-rw-r--r--keyboards/acheron/apollo/87h/gamma/gamma.c2
-rw-r--r--keyboards/acheron/shark/alpha/keymaps/ajp10304/readme.md126
-rw-r--r--keyboards/acheron/shark/beta/info.json3
-rw-r--r--keyboards/acheron/shark/beta/rules.mk3
-rw-r--r--keyboards/acheron/themis/87h/config.h3
-rw-r--r--keyboards/acheron/themis/87h/info.json5
-rw-r--r--keyboards/acheron/themis/87htsc/config.h3
-rw-r--r--keyboards/acheron/themis/87htsc/info.json5
-rw-r--r--keyboards/acheron/themis/88htsc/config.h3
-rw-r--r--keyboards/acheron/themis/88htsc/info.json5
-rw-r--r--keyboards/adafruit/macropad/keymaps/drashna/config.h7
-rw-r--r--keyboards/adafruit/macropad/keymaps/drashna/keymap.c100
-rw-r--r--keyboards/adafruit/macropad/keymaps/drashna/rules.mk3
-rw-r--r--keyboards/adafruit/macropad/keymaps/peterfalken/keymap.c98
-rw-r--r--keyboards/adafruit/macropad/keymaps/peterfalken/rules.mk3
-rw-r--r--keyboards/adm42/config.h21
-rw-r--r--keyboards/adm42/info.json90
-rw-r--r--keyboards/adm42/rev4/config.h44
-rw-r--r--keyboards/adm42/rev4/info.json163
-rw-r--r--keyboards/adm42/rev4/keymaps/default/config.h2
-rw-r--r--keyboards/adm42/rev4/keymaps/default/keymap.c204
-rw-r--r--keyboards/adm42/rev4/keymaps/default/keymap.json44
-rw-r--r--keyboards/adm42/rev4/rev4.c39
-rw-r--r--keyboards/adm42/rev4/rules.mk2
-rw-r--r--keyboards/adm42/rules.mk16
-rw-r--r--keyboards/aeboards/constellation/rev2/info.json3
-rwxr-xr-xkeyboards/aeboards/constellation/rev2/rules.mk2
-rw-r--r--keyboards/aeboards/ext65/rev1/info.json5
-rw-r--r--keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c20
-rw-r--r--keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c20
-rw-r--r--keyboards/aeboards/ext65/rev2/config.h2
-rw-r--r--keyboards/aeboards/ext65/rev2/info.json5
-rw-r--r--keyboards/aeboards/ext65/rev2/keymaps/default/keymap.c20
-rw-r--r--keyboards/aeboards/ext65/rev2/keymaps/via/keymap.c20
-rw-r--r--keyboards/aeboards/ext65/rev3/info.json5
-rw-r--r--keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c20
-rw-r--r--keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c20
-rw-r--r--keyboards/aeboards/satellite/rev1/config.h9
-rw-r--r--keyboards/aeboards/satellite/rev1/rev1.c33
-rw-r--r--keyboards/aeboards/satellite/rev1/rules.mk2
-rw-r--r--keyboards/ai03/lunar/keymaps/zyber/keymap.c23
-rw-r--r--keyboards/ai03/orbit/config.h3
-rw-r--r--keyboards/ai03/orbit/info.json6
-rw-r--r--keyboards/akko/5087/config.h1
-rw-r--r--keyboards/akko/5087/info.json7
-rw-r--r--keyboards/akko/5087/rules.mk4
-rw-r--r--keyboards/akko/5108/5108.c4
-rw-r--r--keyboards/akko/5108/config.h9
-rw-r--r--keyboards/akko/5108/info.json12
-rw-r--r--keyboards/akko/5108/rules.mk3
-rw-r--r--keyboards/akko/acr87/acr87.c4
-rw-r--r--keyboards/akko/acr87/config.h11
-rw-r--r--keyboards/akko/acr87/info.json12
-rw-r--r--keyboards/akko/acr87/rules.mk4
-rw-r--r--keyboards/akko/top40/config.h9
-rw-r--r--keyboards/akko/top40/info.json12
-rw-r--r--keyboards/akko/top40/rules.mk7
-rw-r--r--keyboards/akko/top40/top40.c4
-rwxr-xr-xkeyboards/alpha/keymaps/hvp/keymap.c51
-rw-r--r--keyboards/alps64/keymaps/mechmerlin/keymap.c26
-rw-r--r--keyboards/alps64/keymaps/mechmerlin/readme.md10
-rw-r--r--keyboards/alps64/keymaps/zyber/keymap.c33
-rw-r--r--keyboards/anavi/knob1/rules.mk2
-rw-r--r--keyboards/anavi/knobs3/rules.mk2
-rw-r--r--keyboards/annepro2/annepro2_ble.c4
-rw-r--r--keyboards/annepro2/c15/config.h4
-rw-r--r--keyboards/annepro2/c15/info.json7
-rw-r--r--keyboards/annepro2/c15/rules.mk4
-rw-r--r--keyboards/annepro2/c18/config.h4
-rw-r--r--keyboards/annepro2/c18/info.json7
-rw-r--r--keyboards/annepro2/c18/rules.mk4
-rw-r--r--keyboards/aozora/config.h20
-rw-r--r--keyboards/arisu/keymaps/stanrc85/keymap.c50
-rw-r--r--keyboards/arisu/keymaps/stanrc85/rules.mk1
-rw-r--r--keyboards/atreus/keymaps/dvorak_42_key/README.md21
-rw-r--r--keyboards/atreus/keymaps/dvorak_42_key/config.h15
-rw-r--r--keyboards/atreus/keymaps/dvorak_42_key/keymap.c167
-rw-r--r--keyboards/atreus/keymaps/ibnuda/keymap.c47
-rw-r--r--keyboards/atreus/keymaps/ibnuda/rules.mk1
-rw-r--r--keyboards/atreus/keymaps/manna-harbour_miryoku/config.h21
-rw-r--r--keyboards/atreus/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/atreus/keymaps/ridingqwerty/config.h13
-rw-r--r--keyboards/atreus/keymaps/ridingqwerty/keymap.c153
-rw-r--r--keyboards/atreus/keymaps/ridingqwerty/readme.md1
-rw-r--r--keyboards/atreus/keymaps/ridingqwerty/rules.mk22
-rw-r--r--keyboards/atreus/keymaps/talljoe/config.h53
-rw-r--r--keyboards/atreus/keymaps/talljoe/keymap.c1
-rw-r--r--keyboards/atreus/keymaps/talljoe/rules.mk1
-rw-r--r--keyboards/atreus62/keymaps/d4mation/keymap.c196
-rw-r--r--keyboards/atreus62/keymaps/d4mation/readme.md40
-rw-r--r--keyboards/atreus62/keymaps/d4mation/rules.mk2
-rw-r--r--keyboards/atreus62/keymaps/hvp/config.h4
-rw-r--r--keyboards/atreus62/keymaps/hvp/keymap.c67
-rw-r--r--keyboards/atreus62/keymaps/hvp/readme.md10
-rw-r--r--keyboards/atreus62/keymaps/hvp/rules.mk1
-rw-r--r--keyboards/atreus62/keymaps/jarred/config.h21
-rw-r--r--keyboards/atreus62/keymaps/jarred/keymap.c26
-rw-r--r--keyboards/atreus62/keymaps/pcewing/keymap.c76
-rw-r--r--keyboards/atreus62/keymaps/scheiklp/config.h51
-rw-r--r--keyboards/atreus62/keymaps/scheiklp/keymap.c43
-rw-r--r--keyboards/atreus62/keymaps/scheiklp/readme.md13
-rw-r--r--keyboards/atreus62/keymaps/scheiklp/rules.mk4
-rw-r--r--keyboards/axolstudio/yeti/hotswap/config.h3
-rw-r--r--keyboards/axolstudio/yeti/hotswap/hotswap.c2
-rw-r--r--keyboards/bajjak/rules.mk2
-rw-r--r--keyboards/barleycorn_smd/rules.mk2
-rw-r--r--keyboards/bastardkb/charybdis/3x5/blackpill/info.json3
-rw-r--r--keyboards/bastardkb/charybdis/3x5/blackpill/rules.mk1
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c12
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/drashna/config.h109
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/drashna/halconf.h27
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c84
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h44
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk43
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/config.h19
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c12
-rw-r--r--keyboards/bastardkb/charybdis/3x5/v2/splinky_2/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/3x5/v2/splinky_3/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/3x6/blackpill/info.json3
-rw-r--r--keyboards/bastardkb/charybdis/3x6/blackpill/rules.mk1
-rw-r--r--keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c12
-rw-r--r--keyboards/bastardkb/charybdis/3x6/v2/splinky_2/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/3x6/v2/splinky_3/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/info.json3
-rw-r--r--keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk1
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h69
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c154
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h27
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk52
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/config.h23
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c12
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk4
-rw-r--r--keyboards/bastardkb/charybdis/charybdis.c17
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/assembled/rules.mk3
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/keymap.c12
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/config.h10
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/halconf.h23
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/keymap.c176
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/mcuconf.h26
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/rules.mk7
-rw-r--r--keyboards/bastardkb/dilemma/3x5_2/splinky/rules.mk3
-rw-r--r--keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c3
-rw-r--r--keyboards/bastardkb/dilemma/3x5_3/rules.mk3
-rw-r--r--keyboards/bastardkb/dilemma/4x6_4/keymaps/via/keymap.c7
-rw-r--r--keyboards/bastardkb/dilemma/dilemma.c17
-rw-r--r--keyboards/bastardkb/scylla/blackpill/info.json3
-rw-r--r--keyboards/bastardkb/scylla/blackpill/rules.mk1
-rw-r--r--keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/config.h23
-rw-r--r--keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/bastardkb/scylla/v2/splinky_2/rules.mk4
-rw-r--r--keyboards/bastardkb/scylla/v2/splinky_3/rules.mk4
-rw-r--r--keyboards/bastardkb/skeletyl/blackpill/info.json3
-rw-r--r--keyboards/bastardkb/skeletyl/blackpill/rules.mk1
-rw-r--r--keyboards/bastardkb/skeletyl/v2/splinky_2/rules.mk4
-rw-r--r--keyboards/bastardkb/skeletyl/v2/splinky_3/rules.mk4
-rw-r--r--keyboards/bastardkb/tbkmini/blackpill/info.json3
-rw-r--r--keyboards/bastardkb/tbkmini/blackpill/rules.mk1
-rw-r--r--keyboards/bastardkb/tbkmini/v2/splinky_2/rules.mk4
-rw-r--r--keyboards/bastardkb/tbkmini/v2/splinky_3/rules.mk4
-rwxr-xr-xkeyboards/bemeier/bmek/bmek.c7
-rwxr-xr-xkeyboards/bemeier/bmek/config.h2
-rwxr-xr-xkeyboards/bemeier/bmek/info.json3
-rw-r--r--keyboards/bfake/keymaps/mechmerlin/keymap.c51
-rw-r--r--keyboards/bfake/keymaps/mechmerlin/readme.md18
-rwxr-xr-xkeyboards/binepad/bn006/config.h8
-rwxr-xr-xkeyboards/binepad/bn006/info.json5
-rwxr-xr-xkeyboards/binepad/bn006/rules.mk6
-rw-r--r--keyboards/binepad/bn009/r2/config.h12
-rw-r--r--keyboards/binepad/bn009/r2/info.json5
-rw-r--r--keyboards/binepad/bnr1/v2/config.h7
-rw-r--r--keyboards/binepad/bnr1/v2/rules.mk6
-rw-r--r--keyboards/bioi/ble.c174
-rw-r--r--keyboards/bioi/ble.h30
-rw-r--r--keyboards/bioi/bluetooth_custom.c163
-rw-r--r--keyboards/bioi/g60/rules.mk6
-rw-r--r--keyboards/bioi/g60ble/rules.mk7
-rw-r--r--keyboards/bioi/morgan65/rules.mk6
-rw-r--r--keyboards/bioi/usart.c1522
-rw-r--r--keyboards/bioi/usart.h436
-rw-r--r--keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/boardsource/lulu/keymaps/rmeli/config.h45
-rw-r--r--keyboards/boardsource/lulu/keymaps/rmeli/keymap.c108
-rw-r--r--keyboards/boardsource/lulu/keymaps/rmeli/rules.mk9
-rw-r--r--keyboards/boardsource/the_mark/keymaps/stanrc85/keymap.c98
-rw-r--r--keyboards/boardsource/unicorne/config.h2
-rw-r--r--keyboards/boardsource/unicorne/info.json7
-rw-r--r--keyboards/boardwalk/keymaps/nchristus/config.h16
-rw-r--r--keyboards/boardwalk/keymaps/nchristus/keymap.c62
-rw-r--r--keyboards/boardwalk/keymaps/nchristus/readme.md1
-rw-r--r--keyboards/boardwalk/keymaps/nchristus/rules.mk14
-rw-r--r--keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c1
-rw-r--r--keyboards/bt66tech/bt66tech60/config.h2
-rw-r--r--keyboards/buzzard/rev1/config.h1
-rw-r--r--keyboards/buzzard/rev1/info.json7
-rw-r--r--keyboards/canary/canary60rgb/canary60rgb.c2
-rw-r--r--keyboards/canary/canary60rgb/v1/config.h3
-rw-r--r--keyboards/cannonkeys/an_c/config.h2
-rw-r--r--keyboards/cannonkeys/atlas/config.h2
-rw-r--r--keyboards/cannonkeys/brutalv2_1800/rules.mk3
-rw-r--r--keyboards/cannonkeys/caerdroia/rules.mk3
-rw-r--r--keyboards/cannonkeys/cloudline/config.h2
-rw-r--r--keyboards/cannonkeys/db60/config.h2
-rw-r--r--keyboards/cannonkeys/devastatingtkl/config.h2
-rw-r--r--keyboards/cannonkeys/instant60/config.h2
-rw-r--r--keyboards/cannonkeys/instant65/config.h2
-rw-r--r--keyboards/cannonkeys/malicious_ergo/config.h2
-rw-r--r--keyboards/cannonkeys/obliterated75/config.h2
-rw-r--r--keyboards/cannonkeys/ortho48/config.h2
-rw-r--r--keyboards/cannonkeys/ortho48v2/rules.mk3
-rw-r--r--keyboards/cannonkeys/ortho60/config.h2
-rw-r--r--keyboards/cannonkeys/ortho60v2/rules.mk3
-rw-r--r--keyboards/cannonkeys/ortho75/config.h2
-rw-r--r--keyboards/cannonkeys/practice60/config.h2
-rw-r--r--keyboards/cannonkeys/practice65/config.h2
-rw-r--r--keyboards/cannonkeys/ripple/config.h2
-rw-r--r--keyboards/cannonkeys/sagittarius/config.h2
-rw-r--r--keyboards/cannonkeys/savage65/config.h2
-rw-r--r--keyboards/cannonkeys/serenity/config.h2
-rw-r--r--keyboards/cannonkeys/tmov2/config.h2
-rw-r--r--keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c173
-rw-r--r--keyboards/cannonkeys/tsukuyomi/config.h2
-rw-r--r--keyboards/cannonkeys/typeb/rules.mk3
-rw-r--r--keyboards/capsunlocked/cu75/config.h2
-rw-r--r--keyboards/capsunlocked/cu75/cu75.c45
-rw-r--r--keyboards/capsunlocked/cu75/cu75.h17
-rw-r--r--keyboards/capsunlocked/cu75/info.json24
-rw-r--r--keyboards/capsunlocked/cu75/keymaps/default/rules.mk5
-rw-r--r--keyboards/capsunlocked/cu75/keymaps/iso/rules.mk5
-rw-r--r--keyboards/capsunlocked/cu75/post_rules.mk4
-rw-r--r--keyboards/capsunlocked/cu75/rules.mk3
-rw-r--r--keyboards/centromere/keymaps/mattly/keymap.c55
-rw-r--r--keyboards/centromere/keymaps/mattly/rules.mk1
-rw-r--r--keyboards/centromere/rules.mk2
-rw-r--r--keyboards/checkerboards/quark/keymaps/ajp10304/keymap.c219
-rw-r--r--keyboards/checkerboards/quark/keymaps/ajp10304/readme.md126
-rw-r--r--keyboards/checkerboards/quark/keymaps/ajp10304/rules.mk1
-rw-r--r--keyboards/chord/zero/keymaps/default/keymap.c1
-rw-r--r--keyboards/chosfox/cf81/cf81.c4
-rw-r--r--keyboards/chosfox/cf81/config.h9
-rw-r--r--keyboards/chosfox/cf81/info.json8
-rw-r--r--keyboards/chosfox/cf81/rules.mk2
-rw-r--r--keyboards/chromatonemini/chromatonemini.c60
-rw-r--r--keyboards/chromatonemini/config.h49
-rw-r--r--keyboards/chromatonemini/info.json180
-rw-r--r--keyboards/chromatonemini/rules.mk1
-rw-r--r--keyboards/cipulot/ec_23u/rules.mk3
-rw-r--r--keyboards/cipulot/ec_60/rules.mk3
-rw-r--r--keyboards/cipulot/ec_alveus/1_0_0/rules.mk3
-rw-r--r--keyboards/cipulot/ec_alveus/1_2_0/rules.mk3
-rw-r--r--keyboards/cipulot/ec_pro2/rules.mk4
-rw-r--r--keyboards/cipulot/ec_prox/ansi_iso/rules.mk3
-rw-r--r--keyboards/cipulot/ec_prox/jis/rules.mk3
-rw-r--r--keyboards/cipulot/ec_theca/rules.mk3
-rw-r--r--keyboards/cipulot/rf_r1_8_9xu/rules.mk3
-rw-r--r--keyboards/citrus/erdnuss65/info.json50
-rw-r--r--keyboards/citrus/erdnuss65/keymaps/default/keymap.c11
-rw-r--r--keyboards/citrus/erdnuss65/keymaps/via/keymap.c13
-rw-r--r--keyboards/clickety_split/leeloo/info.json141
-rw-r--r--keyboards/clickety_split/leeloo/keymaps/default/config.h38
-rw-r--r--keyboards/clickety_split/leeloo/keymaps/default/keymap.c26
-rw-r--r--keyboards/clickety_split/leeloo/leeloo.c32
-rw-r--r--keyboards/clickety_split/leeloo/readme.md31
-rw-r--r--keyboards/clickety_split/leeloo/rev1/info.json6
-rw-r--r--keyboards/clickety_split/leeloo/rev2/config.h22
-rw-r--r--keyboards/clickety_split/leeloo/rev2/info.json104
-rw-r--r--keyboards/clickety_split/leeloo/rev2/rules.mk1
-rw-r--r--keyboards/clickety_split/leeloo/rev3/config.h22
-rw-r--r--keyboards/clickety_split/leeloo/rev3/info.json88
-rw-r--r--keyboards/clickety_split/leeloo/rev3/rules.mk1
-rw-r--r--keyboards/clickety_split/leeloo/rules.mk17
-rw-r--r--keyboards/clueboard/2x1800/2021/rules.mk3
-rw-r--r--keyboards/clueboard/66/keymaps/badger/keymap.c53
-rw-r--r--keyboards/clueboard/66/keymaps/magicmonty/keymap.c6
-rw-r--r--keyboards/clueboard/66_hotswap/gen1/config.h10
-rw-r--r--keyboards/clueboard/66_hotswap/gen1/gen1.c2
-rw-r--r--keyboards/contra/keymaps/losinggeneration/README.md30
-rw-r--r--keyboards/contra/keymaps/losinggeneration/config.h23
-rw-r--r--keyboards/contra/keymaps/losinggeneration/keymap.c40
-rw-r--r--keyboards/contra/keymaps/losinggeneration/rules.mk14
-rw-r--r--keyboards/controllerworks/mini36/config.h5
-rw-r--r--keyboards/controllerworks/mini36/info.json8
-rw-r--r--keyboards/controllerworks/mini42/config.h5
-rw-r--r--keyboards/controllerworks/mini42/info.json9
-rw-r--r--keyboards/converter/adb_usb/keymaps/zyber/keymap.c15
-rw-r--r--keyboards/converter/m0110_usb/keymaps/zyber/keymap.c76
-rw-r--r--keyboards/converter/m0110_usb/keymaps/zyber/rules.mk3
-rw-r--r--keyboards/converter/palm_usb/rules.mk2
-rw-r--r--keyboards/converter/sun_usb/rules.mk2
-rw-r--r--keyboards/converter/sun_usb/type5/keymaps/sigma/keymap.c31
-rw-r--r--keyboards/converter/sun_usb/type5/keymaps/sigma/readme.md12
-rw-r--r--keyboards/converter/sun_usb/type5/keymaps/sigma/rules.mk2
-rw-r--r--keyboards/converter/usb_usb/keymaps/narze/README.md10
-rw-r--r--keyboards/converter/usb_usb/keymaps/narze/config.h43
-rw-r--r--keyboards/converter/usb_usb/keymaps/narze/keymap.c167
-rw-r--r--keyboards/converter/usb_usb/keymaps/narze/rules.mk2
-rw-r--r--keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c60
-rw-r--r--keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/config.h20
-rw-r--r--keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/keymap.c72
-rw-r--r--keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/rules.mk1
-rw-r--r--keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c111
-rw-r--r--keyboards/cozykeys/speedo/v3/keymaps/pcewing/keymap.c132
-rw-r--r--keyboards/crimsonkeyboards/resume1800/info.json8
-rw-r--r--keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c2
-rw-r--r--keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c2
-rw-r--r--keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c2
-rw-r--r--keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c2
-rw-r--r--keyboards/crkbd/keymaps/cameronjlarsen/config.h47
-rw-r--r--keyboards/crkbd/keymaps/cameronjlarsen/keymap.c357
-rw-r--r--keyboards/crkbd/keymaps/cameronjlarsen/rules.mk14
-rw-r--r--keyboards/crkbd/keymaps/curry/config.h20
-rw-r--r--keyboards/crkbd/keymaps/curry/keymap.c76
-rw-r--r--keyboards/crkbd/keymaps/curry/rules.mk16
-rw-r--r--keyboards/crkbd/keymaps/devdev/config.h133
-rw-r--r--keyboards/crkbd/keymaps/devdev/keymap.c396
-rw-r--r--keyboards/crkbd/keymaps/devdev/rules.mk4
-rw-r--r--keyboards/crkbd/keymaps/edvorakjp/config.h24
-rw-r--r--keyboards/crkbd/keymaps/edvorakjp/keymap.c67
-rw-r--r--keyboards/crkbd/keymaps/edvorakjp/oled.c56
-rw-r--r--keyboards/crkbd/keymaps/edvorakjp/oled.h17
-rw-r--r--keyboards/crkbd/keymaps/edvorakjp/readme.md21
-rw-r--r--keyboards/crkbd/keymaps/edvorakjp/rules.mk28
-rwxr-xr-xkeyboards/crkbd/keymaps/ericgebhart/config.h24
-rw-r--r--keyboards/crkbd/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/crkbd/keymaps/hvp/config.h54
-rw-r--r--keyboards/crkbd/keymaps/hvp/keymap.c160
-rw-r--r--keyboards/crkbd/keymaps/hvp/readme.md10
-rw-r--r--keyboards/crkbd/keymaps/hvp/rules.mk13
-rw-r--r--keyboards/crkbd/keymaps/jarred/config.h49
-rw-r--r--keyboards/crkbd/keymaps/jarred/keymap.c152
-rw-r--r--keyboards/crkbd/keymaps/jarred/readme.md9
-rw-r--r--keyboards/crkbd/keymaps/jarred/rules.mk31
-rw-r--r--keyboards/crkbd/keymaps/ninjonas/README.md99
-rw-r--r--keyboards/crkbd/keymaps/ninjonas/config.h88
-rw-r--r--keyboards/crkbd/keymaps/ninjonas/keymap.c101
-rw-r--r--keyboards/crkbd/keymaps/ninjonas/rules.mk7
-rw-r--r--keyboards/crkbd/keymaps/ollyhayes/config.h95
-rw-r--r--keyboards/crkbd/keymaps/ollyhayes/keymap.c112
-rw-r--r--keyboards/crkbd/keymaps/ollyhayes/oled.c112
-rw-r--r--keyboards/crkbd/keymaps/ollyhayes/readme.md67
-rw-r--r--keyboards/crkbd/keymaps/ollyhayes/rules.mk16
-rw-r--r--keyboards/crkbd/keymaps/pdl/config.h29
-rw-r--r--keyboards/crkbd/keymaps/pdl/keymap.c62
-rw-r--r--keyboards/crkbd/keymaps/rmeli/config.h67
-rw-r--r--keyboards/crkbd/keymaps/rmeli/keymap.c129
-rw-r--r--keyboards/crkbd/keymaps/rmeli/rules.mk11
-rw-r--r--keyboards/crkbd/keymaps/rs/config.h49
-rw-r--r--keyboards/crkbd/keymaps/rs/keymap.c39
-rw-r--r--keyboards/crkbd/keymaps/rs/oled.c87
-rw-r--r--keyboards/crkbd/keymaps/rs/readme.md19
-rw-r--r--keyboards/crkbd/keymaps/rs/rules.mk31
-rw-r--r--keyboards/crkbd/keymaps/snowe/config.h58
-rw-r--r--keyboards/crkbd/keymaps/snowe/keycode_aliases.h81
-rw-r--r--keyboards/crkbd/keymaps/snowe/keymap.c211
-rw-r--r--keyboards/crkbd/keymaps/snowe/rules.mk25
-rw-r--r--keyboards/crkbd/keymaps/toinux/config.h123
-rw-r--r--keyboards/crkbd/keymaps/toinux/glcdfont.c232
-rw-r--r--keyboards/crkbd/keymaps/toinux/keycodes.h49
-rw-r--r--keyboards/crkbd/keymaps/toinux/keymap.c259
-rw-r--r--keyboards/crkbd/keymaps/toinux/oled.c112
-rw-r--r--keyboards/crkbd/keymaps/toinux/oled.h71
-rw-r--r--keyboards/crkbd/keymaps/toinux/rgb.c72
-rw-r--r--keyboards/crkbd/keymaps/toinux/rules.mk8
-rwxr-xr-xkeyboards/crkbd/keymaps/tominabox1/keymap.c46
-rw-r--r--keyboards/crkbd/keymaps/vlukash_trackpad_right/keymap.c9
-rw-r--r--keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h44
-rw-r--r--keyboards/crkbd/rev1/keymaps/dvorak_42_key/keymap.c289
-rw-r--r--keyboards/crkbd/rev1/keymaps/dvorak_42_key/rules.mk8
-rw-r--r--keyboards/crowboard/rules.mk2
-rw-r--r--keyboards/custommk/ergostrafer/info.json3
-rw-r--r--keyboards/custommk/ergostrafer/rules.mk2
-rw-r--r--keyboards/custommk/evo70_r2/config.h1
-rw-r--r--keyboards/custommk/evo70_r2/info.json3
-rw-r--r--keyboards/custommk/evo70_r2/rules.mk2
-rw-r--r--keyboards/cutie_club/borsdorf/keymaps/zyber/keymap.c35
-rw-r--r--keyboards/darkproject/kd87a_bfg_edition/config.h2
-rw-r--r--keyboards/darkproject/kd87a_bfg_edition/info.json10
-rw-r--r--keyboards/darkproject/kd87a_bfg_edition/rules.mk2
-rw-r--r--keyboards/dc01/left/rules.mk4
-rw-r--r--keyboards/deng/thirty/config.h5
-rw-r--r--keyboards/deng/thirty/info.json3
-rwxr-xr-xkeyboards/dichotomy/rules.mk2
-rw-r--r--keyboards/dm9records/lain/config.h2
-rw-r--r--keyboards/dm9records/lain/info.json3
-rw-r--r--keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c2
-rw-r--r--keyboards/dmqdesign/spin/keymaps/spidey3_pad/keymap.c4
-rw-r--r--keyboards/doio/kb16/rev2/rules.mk4
-rw-r--r--keyboards/doio/kb30/config.h3
-rw-r--r--keyboards/doro67/multi/keymaps/konstantin/config.h4
-rw-r--r--keyboards/doro67/multi/keymaps/konstantin/keymap.c67
-rw-r--r--keyboards/doro67/multi/keymaps/konstantin/rules.mk18
-rw-r--r--keyboards/doro67/multi/keymaps/zyber/keymap.c36
-rw-r--r--keyboards/dp3000/info.json59
-rw-r--r--keyboards/dp3000/readme.md13
-rw-r--r--keyboards/dp3000/rev1/info.json59
-rw-r--r--keyboards/dp3000/rev1/rules.mk (renamed from keyboards/studiokestra/line_tkl/rules.mk)0
-rw-r--r--keyboards/dp3000/rev2/info.json31
-rw-r--r--keyboards/dp3000/rev2/rules.mk1
-rw-r--r--keyboards/dp3000/rules.mk2
-rw-r--r--keyboards/dp60/config.h5
-rw-r--r--keyboards/dp60/dp60.c2
-rw-r--r--keyboards/dp60/keymaps/indicator/indicator.c4
-rw-r--r--keyboards/dp60/keymaps/indicator/led_driver.c2
-rw-r--r--keyboards/draculad/keymaps/manna-harbour_miryoku/config.h24
-rw-r--r--keyboards/draculad/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/drop/alt/v2/config.h12
-rw-r--r--keyboards/drop/alt/v2/info.json1
-rw-r--r--keyboards/drop/alt/v2/rules.mk4
-rw-r--r--keyboards/drop/alt/v2/v2.c2
-rw-r--r--keyboards/drop/cstm80/config.h12
-rw-r--r--keyboards/drop/cstm80/cstm80.c2
-rw-r--r--keyboards/drop/cstm80/info.json1
-rw-r--r--keyboards/drop/ctrl/v2/config.h12
-rw-r--r--keyboards/drop/ctrl/v2/info.json1
-rw-r--r--keyboards/drop/ctrl/v2/rules.mk4
-rw-r--r--keyboards/drop/ctrl/v2/v2.c2
-rw-r--r--keyboards/drop/sense75/config.h12
-rw-r--r--keyboards/drop/sense75/info.json3
-rw-r--r--keyboards/drop/sense75/sense75.c2
-rw-r--r--keyboards/drop/shift/v2/config.h14
-rw-r--r--keyboards/drop/shift/v2/info.json1
-rw-r--r--keyboards/drop/shift/v2/rules.mk4
-rw-r--r--keyboards/drop/shift/v2/v2.c2
-rw-r--r--keyboards/ducky/one2mini/1861st/config.h2
-rw-r--r--keyboards/ducky/one2mini/1861st/info.json3
-rw-r--r--keyboards/ducky/one2sf/1967st/config.h2
-rw-r--r--keyboards/ducky/one2sf/1967st/info.json3
-rw-r--r--keyboards/dumbpad/v0x/v0x.c6
-rw-r--r--keyboards/dumbpad/v0x_dualencoder/v0x_dualencoder.c6
-rw-r--r--keyboards/dumbpad/v0x_right/v0x_right.c6
-rw-r--r--keyboards/dumbpad/v1x/keymaps/imchipwood/keymap.c95
-rw-r--r--keyboards/dumbpad/v1x/v1x.c6
-rw-r--r--keyboards/dumbpad/v1x_dualencoder/v1x_dualencoder.c6
-rw-r--r--keyboards/dumbpad/v1x_right/v1x_right.c6
-rw-r--r--keyboards/dumbpad/v3x/v3x.c6
-rw-r--r--keyboards/durgod/dgk6x/config.h16
-rw-r--r--keyboards/durgod/dgk6x/galaxy/galaxy.c2
-rw-r--r--keyboards/durgod/dgk6x/hades_ansi/hades_ansi.c2
-rw-r--r--keyboards/durgod/dgk6x/hades_iso/hades_iso.c2
-rw-r--r--keyboards/durgod/dgk6x/venus/venus.c2
-rw-r--r--keyboards/durgod/k320/keymaps/moults31/config.h20
-rw-r--r--keyboards/durgod/k320/keymaps/moults31/keymap.c84
-rw-r--r--keyboards/durgod/k320/keymaps/moults31/readme.md10
-rw-r--r--keyboards/dyz/dyz40/config.h20
-rw-r--r--keyboards/dyz/dyz60/config.h20
-rw-r--r--keyboards/dyz/dyz60_hs/config.h20
-rw-r--r--keyboards/dyz/dyz_tkl/config.h20
-rw-r--r--keyboards/dyz/selka40/config.h20
-rw-r--r--keyboards/dyz/synthesis60/config.h20
-rw-r--r--keyboards/dz60/keymaps/billypython/config.h3
-rw-r--r--keyboards/dz60/keymaps/billypython/keymap.c46
-rw-r--r--keyboards/dz60/keymaps/billypython/rules.mk8
-rw-r--r--keyboards/dz60/keymaps/doogle999/keymap.c74
-rw-r--r--keyboards/dz60/keymaps/draevin/keymap.c46
-rw-r--r--keyboards/dz60/keymaps/jarred/keymap.c21
-rw-r--r--keyboards/dz60/keymaps/jdelkins/config.h54
-rw-r--r--keyboards/dz60/keymaps/jdelkins/keymap.c352
-rw-r--r--keyboards/dz60/keymaps/jdelkins/rules.mk7
-rw-r--r--keyboards/dz60/keymaps/konstantin_b/config.h3
-rw-r--r--keyboards/dz60/keymaps/konstantin_b/keymap.c46
-rw-r--r--keyboards/dz60/keymaps/konstantin_b/rules.mk21
-rw-r--r--keyboards/dz60/keymaps/mechmerlin/config.h6
-rw-r--r--keyboards/dz60/keymaps/mechmerlin/keymap.c40
-rw-r--r--keyboards/dz60/keymaps/mechmerlin/readme.md68
-rw-r--r--keyboards/dz60/keymaps/spotpuff/keymap.c95
-rw-r--r--keyboards/dz60/keymaps/spotpuff/rules.mk1
-rw-r--r--keyboards/dz60/keymaps/twschum_b_4_10/config.h24
-rw-r--r--keyboards/dz60/keymaps/twschum_b_4_10/keymap.c123
-rw-r--r--keyboards/dz60/keymaps/twschum_b_4_10/layout.json4877
-rw-r--r--keyboards/dz60/keymaps/twschum_b_4_10/rules.mk15
-rw-r--r--keyboards/dz60/keymaps/xtonhasvim/config.h17
-rw-r--r--keyboards/dz60/keymaps/xtonhasvim/keymap.c87
-rw-r--r--keyboards/dz60/keymaps/xtonhasvim/readme.md10
-rw-r--r--keyboards/dztech/dz60rgb/dz60rgb.c2
-rw-r--r--keyboards/dztech/dz60rgb/keymaps/moults31/keymap.c42
-rw-r--r--keyboards/dztech/dz60rgb/keymaps/moults31/readme.md11
-rw-r--r--keyboards/dztech/dz60rgb/v1/config.h3
-rw-r--r--keyboards/dztech/dz60rgb/v2/config.h3
-rw-r--r--keyboards/dztech/dz60rgb/v2_1/config.h3
-rw-r--r--keyboards/dztech/dz60rgb_ansi/dz60rgb_ansi.c2
-rw-r--r--keyboards/dztech/dz60rgb_ansi/keymaps/badger/keymap.c60
-rw-r--r--keyboards/dztech/dz60rgb_ansi/v1/config.h3
-rw-r--r--keyboards/dztech/dz60rgb_ansi/v2/config.h3
-rw-r--r--keyboards/dztech/dz60rgb_ansi/v2_1/config.h3
-rw-r--r--keyboards/dztech/dz60rgb_wkl/dz60rgb_wkl.c2
-rw-r--r--keyboards/dztech/dz60rgb_wkl/v1/config.h3
-rw-r--r--keyboards/dztech/dz60rgb_wkl/v2/config.h3
-rw-r--r--keyboards/dztech/dz60rgb_wkl/v2_1/config.h3
-rw-r--r--keyboards/dztech/dz64rgb/config.h3
-rw-r--r--keyboards/dztech/dz64rgb/dz64rgb.c2
-rw-r--r--keyboards/dztech/dz65rgb/keymaps/haervig/keymap.c36
-rw-r--r--keyboards/dztech/dz65rgb/keymaps/haervig/rules.mk3
-rw-r--r--keyboards/dztech/dz65rgb/v1/config.h5
-rw-r--r--keyboards/dztech/dz65rgb/v1/v1.c2
-rw-r--r--keyboards/dztech/dz65rgb/v2/config.h5
-rw-r--r--keyboards/dztech/dz65rgb/v2/v2.c2
-rwxr-xr-xkeyboards/dztech/dz65rgb/v3/config.h3
-rwxr-xr-xkeyboards/dztech/dz65rgb/v3/v3.c2
-rw-r--r--keyboards/dztech/og60/info.json448
-rw-r--r--keyboards/dztech/og60/readme.md22
-rw-r--r--keyboards/dztech/tofu/ii/v1/config.h5
-rw-r--r--keyboards/dztech/tofu/ii/v1/v1.c2
-rw-r--r--keyboards/dztech/tofu/jr/readme.md22
-rw-r--r--keyboards/dztech/tofu/jr/v1/config.h5
-rw-r--r--keyboards/dztech/tofu/jr/v1/readme.md22
-rw-r--r--keyboards/dztech/tofu/jr/v1/v1.c2
-rw-r--r--keyboards/dztech/tofu/jr/v2/config.h24
-rw-r--r--keyboards/dztech/tofu/jr/v2/info.json124
-rw-r--r--keyboards/dztech/tofu/jr/v2/readme.md22
-rw-r--r--keyboards/dztech/tofu/jr/v2/rules.mk1
-rw-r--r--keyboards/dztech/tofu60/info.json740
-rw-r--r--keyboards/dztech/tofu60/keymaps/default/keymap.c (renamed from keyboards/dztech/og60/keymaps/default/keymap.c)0
-rw-r--r--keyboards/dztech/tofu60/keymaps/via/keymap.c (renamed from keyboards/dztech/og60/keymaps/via/keymap.c)0
-rw-r--r--keyboards/dztech/tofu60/keymaps/via/rules.mk (renamed from keyboards/dztech/dz60rgb/keymaps/moults31/rules.mk)0
-rw-r--r--keyboards/dztech/tofu60/matrix_diagram.md24
-rw-r--r--keyboards/dztech/tofu60/readme.md22
-rw-r--r--keyboards/dztech/tofu60/rules.mk (renamed from keyboards/dztech/og60/rules.mk)0
-rw-r--r--keyboards/eason/aeroboard/config.h2
-rw-r--r--keyboards/eco/keymaps/bcat/config.h33
-rw-r--r--keyboards/eco/keymaps/bcat/keymap.c52
-rw-r--r--keyboards/eco/keymaps/bcat/readme.md44
-rw-r--r--keyboards/eco/keymaps/bcat/rules.mk3
-rw-r--r--keyboards/eco/keymaps/that_canadian/keymap.c38
-rw-r--r--keyboards/ein_60/keymaps/klackygears/config.h27
-rw-r--r--keyboards/ein_60/keymaps/klackygears/keymap.c175
-rw-r--r--keyboards/ein_60/keymaps/klackygears/readme.md1
-rw-r--r--keyboards/ein_60/keymaps/klackygears/rules.mk8
-rw-r--r--keyboards/era/divine/config.h20
-rw-r--r--keyboards/era/divine/halconf.h21
-rw-r--r--keyboards/era/divine/info.json9
-rw-r--r--keyboards/era/divine/mcuconf.h22
-rw-r--r--keyboards/era/divine/readme.md4
-rw-r--r--keyboards/ergodox_ez/config.h5
-rw-r--r--keyboards/ergodox_ez/ergodox_ez.c2
-rw-r--r--keyboards/ergodox_ez/keymaps/danielo515/config.h39
-rw-r--r--keyboards/ergodox_ez/keymaps/danielo515/keymap.c326
-rw-r--r--keyboards/ergodox_ez/keymaps/danielo515/rules.mk9
-rw-r--r--keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md19
-rw-r--r--keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c340
-rw-r--r--keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/ergodox_ez/keymaps/ericgebhart/readme.md5
-rw-r--r--keyboards/ergodox_ez/keymaps/hacker_dvorak/rules.mk1
-rw-r--r--keyboards/ergodox_ez/keymaps/pvinis/keymap.c334
-rw-r--r--keyboards/ergodox_ez/keymaps/pvinis/readme.md65
-rw-r--r--keyboards/ergodox_ez/keymaps/pvinis/rules.mk1
-rw-r--r--keyboards/ergodox_ez/keymaps/rishka/config.h17
-rw-r--r--keyboards/ergodox_ez/keymaps/rishka/keymap.c210
-rw-r--r--keyboards/ergodox_ez/keymaps/rishka/rules.mk2
-rw-r--r--keyboards/ergodox_ez/keymaps/rmw/config.h53
-rw-r--r--keyboards/ergodox_ez/keymaps/rmw/keymap-mac.c188
-rw-r--r--keyboards/ergodox_ez/keymaps/rmw/keymap-win.c159
-rw-r--r--keyboards/ergodox_ez/keymaps/rmw/keymap.c13
-rw-r--r--keyboards/ergodox_ez/keymaps/rmw/readme.md11
-rw-r--r--keyboards/ergodox_ez/keymaps/rmw/rules.mk1
-rw-r--r--keyboards/ergodox_ez/keymaps/steno/keymap.c3
-rw-r--r--keyboards/ergodox_ez/led_i2c.c2
-rw-r--r--keyboards/ergodox_ez/rules.mk2
-rw-r--r--keyboards/ergodox_stm32/rules.mk2
-rw-r--r--keyboards/ergoslab/keymaps/default/keymap.c8
-rw-r--r--keyboards/ergoslab/rev1/info.json5
-rw-r--r--keyboards/ergotravel/keymaps/jarred/config.h26
-rw-r--r--keyboards/ergotravel/keymaps/jarred/keymap.c50
-rw-r--r--keyboards/ergotravel/keymaps/manna-harbour_miryoku/config.h21
-rw-r--r--keyboards/ergotravel/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/ergotravel/keymaps/rs/config.h40
-rw-r--r--keyboards/ergotravel/keymaps/rs/keymap.c38
-rw-r--r--keyboards/ergotravel/keymaps/rs/readme.md1
-rw-r--r--keyboards/ergotravel/keymaps/yanfali/config.h42
-rw-r--r--keyboards/ergotravel/keymaps/yanfali/keymap.c108
-rw-r--r--keyboards/ergotravel/keymaps/yanfali/rules.mk7
-rw-r--r--keyboards/evolv/info.json8
-rwxr-xr-xkeyboards/evolv/keymaps/default/keymap.c22
-rwxr-xr-xkeyboards/evolv/keymaps/gondolindrim/keymap.c8
-rwxr-xr-xkeyboards/evolv/keymaps/iso/keymap.c22
-rwxr-xr-xkeyboards/evolv/keymaps/via/keymap.c22
-rw-r--r--keyboards/evyd13/atom47/rev5/config.h13
-rw-r--r--keyboards/evyd13/atom47/rev5/rev5.c2
-rw-r--r--keyboards/evyd13/wasdat/keymaps/konstantin/config.h4
-rw-r--r--keyboards/evyd13/wasdat/keymaps/konstantin/keymap.c79
-rw-r--r--keyboards/evyd13/wasdat/keymaps/konstantin/rules.mk17
-rw-r--r--keyboards/evyd13/wonderland/keymaps/brandonschlack/config.h19
-rwxr-xr-xkeyboards/evyd13/wonderland/keymaps/brandonschlack/keymap.c170
-rwxr-xr-xkeyboards/evyd13/wonderland/keymaps/brandonschlack/rules.mk8
-rw-r--r--keyboards/exclusive/e6_rgb/config.h3
-rw-r--r--keyboards/exclusive/e6_rgb/e6_rgb.c2
-rw-r--r--keyboards/eyeohdesigns/babyv/info.json42
-rw-r--r--keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c1
-rwxr-xr-xkeyboards/fallacy/config.h5
-rwxr-xr-xkeyboards/fallacy/indicators.c13
-rwxr-xr-xkeyboards/fallacy/rules.mk2
-rw-r--r--keyboards/fc660c/actuation_point.c87
-rw-r--r--keyboards/fc660c/actuation_point.h29
-rw-r--r--keyboards/fc660c/ad5258.c52
-rw-r--r--keyboards/fc660c/ad5258.h28
-rw-r--r--keyboards/fc660c/config.h2
-rw-r--r--keyboards/fc660c/fc660c.c45
-rw-r--r--keyboards/fc660c/fc660c.h31
-rw-r--r--keyboards/fc660c/i2c.c162
-rw-r--r--keyboards/fc660c/i2c.h46
-rw-r--r--keyboards/fc660c/keymaps/zyber/keymap.c47
-rw-r--r--keyboards/fc660c/rules.mk6
-rw-r--r--keyboards/fc980c/actuation_point.c87
-rw-r--r--keyboards/fc980c/actuation_point.h29
-rw-r--r--keyboards/fc980c/ad5258.c52
-rw-r--r--keyboards/fc980c/ad5258.h28
-rw-r--r--keyboards/fc980c/config.h2
-rw-r--r--keyboards/fc980c/fc980c.c44
-rw-r--r--keyboards/fc980c/fc980c.h31
-rw-r--r--keyboards/fc980c/i2c.c162
-rw-r--r--keyboards/fc980c/i2c.h46
-rw-r--r--keyboards/fc980c/keymaps/actuation-point-example/config.h8
-rw-r--r--keyboards/fc980c/keymaps/actuation-point-example/keymap.c5
-rw-r--r--keyboards/fc980c/rules.mk6
-rw-r--r--keyboards/feker/ik75/config.h5
-rw-r--r--keyboards/feker/ik75/ik75.c2
-rw-r--r--keyboards/ferris/0_1/rules.mk2
-rw-r--r--keyboards/ferris/0_2/bling/bling.c2
-rw-r--r--keyboards/ferris/0_2/bling/config.h5
-rw-r--r--keyboards/ferris/0_2/rules.mk2
-rwxr-xr-xkeyboards/flashquark/horizon_z/config.h3
-rwxr-xr-xkeyboards/flashquark/horizon_z/horizon_z.c2
-rw-r--r--keyboards/flehrad/bigswitch/keymaps/333fred/config.h27
-rw-r--r--keyboards/flehrad/bigswitch/keymaps/333fred/keymap.c145
-rw-r--r--keyboards/flehrad/bigswitch/keymaps/333fred/rules.mk5
-rw-r--r--keyboards/flehrad/bigswitch/keymaps/wanleg/config.h42
-rw-r--r--keyboards/flehrad/bigswitch/keymaps/wanleg/keymap.c26
-rw-r--r--keyboards/flehrad/bigswitch/keymaps/wanleg/rules.mk14
-rw-r--r--keyboards/foostan/cornelius/keymaps/hvp/config.h19
-rw-r--r--keyboards/foostan/cornelius/keymaps/hvp/keymap.c66
-rw-r--r--keyboards/foostan/cornelius/keymaps/hvp/readme.md1
-rw-r--r--keyboards/foostan/cornelius/keymaps/hvp/rules.mk1
-rw-r--r--keyboards/foostan/cornelius/keymaps/pdl/config.h29
-rw-r--r--keyboards/foostan/cornelius/keymaps/pdl/keymap.c62
-rw-r--r--keyboards/foostan/cornelius/keymaps/pdl/readme.md1
-rw-r--r--keyboards/for_science/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/for_science/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/fortitude60/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/fortitude60/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/foxlab/leaf60/universal/keymaps/jarred/keymap.c37
-rw-r--r--keyboards/foxlab/leaf60/universal/keymaps/jarred/readme.md9
-rw-r--r--keyboards/foxlab/leaf60/universal/keymaps/mguterl/config.h19
-rw-r--r--keyboards/foxlab/leaf60/universal/keymaps/mguterl/keymap.c43
-rw-r--r--keyboards/foxlab/leaf60/universal/keymaps/mguterl/readme.md11
-rw-r--r--keyboards/frobiac/blackbowl/rules.mk2
-rw-r--r--keyboards/frooastboard/walnut/config.h9
-rw-r--r--keyboards/frooastboard/walnut/walnut.c2
-rw-r--r--keyboards/gboards/butterstick/keymaps/dennytom/README.md11
-rw-r--r--keyboards/gboards/butterstick/keymaps/dennytom/keymap.c1418
-rw-r--r--keyboards/gboards/butterstick/keymaps/dennytom/keymap_def.json309
-rw-r--r--keyboards/gboards/butterstick/keymaps/dennytom/rules.mk8
-rw-r--r--keyboards/gboards/butterstick/sten.h3
-rw-r--r--keyboards/gboards/ergotaco/rules.mk3
-rw-r--r--keyboards/gboards/georgi/keymaps/colemak-dh/keymap.c1
-rw-r--r--keyboards/gboards/georgi/keymaps/default-flipped/keymap.c1
-rw-r--r--keyboards/gboards/georgi/keymaps/default/keymap.c1
-rw-r--r--keyboards/gboards/georgi/keymaps/dennytom/README.md11
-rw-r--r--keyboards/gboards/georgi/keymaps/dennytom/keymap.c1208
-rw-r--r--keyboards/gboards/georgi/keymaps/dennytom/keymap_def.json153
-rw-r--r--keyboards/gboards/georgi/keymaps/dennytom/rules.mk2
-rw-r--r--keyboards/gboards/georgi/keymaps/minimal/keymap.c1
-rw-r--r--keyboards/gboards/georgi/keymaps/norman/keymap.c1
-rw-r--r--keyboards/gboards/georgi/rules.mk3
-rw-r--r--keyboards/gboards/georgi/sten.h3
-rw-r--r--keyboards/gboards/gergo/keymaps/colemak/rules.mk3
-rw-r--r--keyboards/gboards/gergo/keymaps/default/rules.mk3
-rw-r--r--keyboards/gboards/gergo/keymaps/drashna/keymap.c99
-rw-r--r--keyboards/gboards/gergo/keymaps/drashna/rules.mk2
-rw-r--r--keyboards/gboards/gergo/keymaps/germ/rules.mk3
-rw-r--r--keyboards/gboards/gergo/keymaps/gotham/rules.mk3
-rw-r--r--keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/config.h21
-rw-r--r--keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/gboards/gergo/rules.mk2
-rw-r--r--keyboards/gboards/gergoplex/rules.mk2
-rw-r--r--keyboards/geekboards/tester/config.h5
-rw-r--r--keyboards/geekboards/tester/tester.c2
-rw-r--r--keyboards/geistmaschine/macropod/rules.mk2
-rw-r--r--keyboards/geonworks/frogmini/fmh/info.json3
-rw-r--r--keyboards/geonworks/frogmini/fmh/rules.mk3
-rw-r--r--keyboards/geonworks/frogmini/fms/info.json3
-rw-r--r--keyboards/geonworks/frogmini/fms/rules.mk3
-rw-r--r--keyboards/gh60/satan/keymaps/jarred/keymap.c22
-rw-r--r--keyboards/gh60/satan/keymaps/jarred/readme.md1
-rwxr-xr-xkeyboards/gizmo_engineering/gk6/config.h5
-rwxr-xr-xkeyboards/gizmo_engineering/gk6/gk6.c2
-rw-r--r--keyboards/gkeyboard/gpad8_2r/config.h2
-rw-r--r--keyboards/gkeyboard/gpad8_2r/info.json3
-rw-r--r--keyboards/glenpickle/chimera_ergo/rules.mk2
-rw-r--r--keyboards/glenpickle/chimera_ls/rules.mk2
-rw-r--r--keyboards/glenpickle/chimera_ortho/rules.mk2
-rw-r--r--keyboards/glenpickle/chimera_ortho_plus/rules.mk2
-rw-r--r--keyboards/gmmk/gmmk2/p65/ansi/ansi.c4
-rw-r--r--keyboards/gmmk/gmmk2/p65/ansi/info.json2
-rw-r--r--keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/keymap.c57
-rw-r--r--keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/readme.md10
-rw-r--r--keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/rules.mk2
-rw-r--r--keyboards/gmmk/gmmk2/p65/ansi/rules.mk2
-rw-r--r--keyboards/gmmk/gmmk2/p65/config.h9
-rw-r--r--keyboards/gmmk/gmmk2/p65/iso/info.json7
-rw-r--r--keyboards/gmmk/gmmk2/p65/iso/iso.c4
-rw-r--r--keyboards/gmmk/gmmk2/p65/iso/keymaps/default/keymap.c12
-rw-r--r--keyboards/gmmk/gmmk2/p65/iso/keymaps/via/keymap.c22
-rw-r--r--keyboards/gmmk/gmmk2/p65/iso/rules.mk2
-rw-r--r--keyboards/gmmk/gmmk2/p96/ansi/ansi.c4
-rw-r--r--keyboards/gmmk/gmmk2/p96/ansi/info.json9
-rw-r--r--keyboards/gmmk/gmmk2/p96/ansi/rules.mk2
-rw-r--r--keyboards/gmmk/gmmk2/p96/config.h10
-rw-r--r--keyboards/gmmk/gmmk2/p96/iso/info.json9
-rw-r--r--keyboards/gmmk/gmmk2/p96/iso/iso.c4
-rw-r--r--keyboards/gmmk/gmmk2/p96/iso/rules.mk2
-rw-r--r--keyboards/gmmk/numpad/config.h9
-rw-r--r--keyboards/gmmk/numpad/info.json9
-rw-r--r--keyboards/gmmk/numpad/numpad.c19
-rw-r--r--keyboards/gmmk/numpad/rules.mk8
-rw-r--r--keyboards/gmmk/pro/config.h10
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/ansi.c2
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/info.json2
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/config.h72
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/keymap.c132
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/readme.md41
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rgb_matrix_user.inc1
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rules.mk2
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/keymap.c163
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rgb_matrix_map.h185
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rules.mk2
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/config.h146
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/keymap.c713
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/paddlegame.h48
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/readme.md124
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rgb_matrix_map.h410
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rules.mk18
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/config.h39
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/keymap.c204
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/readme.md65
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rgb_matrix_map.h144
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rules.mk12
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/ansi.c241
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/config.h63
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/helpers.c25
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap.c222
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap_helpers.h165
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/readme.md52
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/rules.mk6
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/moults31/keymap.c92
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/keymap.c65
-rw-r--r--keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/readme.md10
-rw-r--r--keyboards/gmmk/pro/rev1/iso/info.json2
-rw-r--r--keyboards/gmmk/pro/rev1/iso/iso.c2
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/config.h146
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/keymap.c726
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/paddlegame.h48
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/readme.md124
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rgb_matrix_map.h433
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rules.mk22
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/config.h39
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/keymap.c194
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/readme.md53
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rgb_matrix_map.h146
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rules.mk12
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/config.h20
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/keymap.c149
-rw-r--r--keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/readme.adoc104
-rw-r--r--keyboards/gmmk/pro/rev2/ansi/ansi.c2
-rw-r--r--keyboards/gmmk/pro/rev2/ansi/info.json9
-rw-r--r--keyboards/gmmk/pro/rev2/ansi/rules.mk2
-rw-r--r--keyboards/gmmk/pro/rev2/config.h1
-rw-r--r--keyboards/gmmk/pro/rev2/iso/info.json9
-rw-r--r--keyboards/gmmk/pro/rev2/iso/iso.c2
-rw-r--r--keyboards/gmmk/pro/rev2/iso/rules.mk2
-rw-r--r--keyboards/gopolar/gg86/keymaps/horrortroll/keymap.c89
-rw-r--r--keyboards/gopolar/gg86/keymaps/horrortroll/oled/oled_stuff.h68
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h29
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c80
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md9
-rw-r--r--keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk2
-rw-r--r--keyboards/hadron/ver2/keymaps/side_numpad/keymap.c33
-rw-r--r--keyboards/hadron/ver3/keymaps/ishtob/keymap.c241
-rw-r--r--keyboards/hadron/ver3/keymaps/ishtob/readme.md2
-rw-r--r--keyboards/hadron/ver3/keymaps/xulkal/config.h1
-rw-r--r--keyboards/hadron/ver3/keymaps/xulkal/keymap.c73
-rw-r--r--keyboards/hadron/ver3/keymaps/xulkal/rules.mk4
-rw-r--r--keyboards/handwired/6key/config.h20
-rw-r--r--keyboards/handwired/6key/info.json3
-rw-r--r--keyboards/handwired/atreus50/keymaps/ajp10304/config.h28
-rw-r--r--keyboards/handwired/atreus50/keymaps/ajp10304/keymap.c222
-rw-r--r--keyboards/handwired/atreus50/keymaps/ajp10304/readme.md130
-rw-r--r--keyboards/handwired/atreus50/keymaps/ajp10304/rules.mk3
-rw-r--r--keyboards/handwired/atreus50/keymaps/default/keymap.c48
-rw-r--r--keyboards/handwired/battleship_gamepad/rules.mk2
-rw-r--r--keyboards/handwired/brain/keymaps/klackygears/config.h40
-rw-r--r--keyboards/handwired/brain/keymaps/klackygears/keymap.c99
-rw-r--r--keyboards/handwired/brain/keymaps/klackygears/rules.mk3
-rw-r--r--keyboards/handwired/co60/rev7/config.h2
-rw-r--r--keyboards/handwired/d48/keymaps/anderson/keymap.c342
-rw-r--r--keyboards/handwired/d48/keymaps/anderson/lightmode.c44
-rw-r--r--keyboards/handwired/d48/keymaps/anderson/lightmode.h12
-rw-r--r--keyboards/handwired/d48/keymaps/anderson/rules.mk2
-rw-r--r--keyboards/handwired/dactyl/rules.mk2
-rw-r--r--keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/config.h27
-rw-r--r--keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/keymap.c60
-rw-r--r--keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/config.h24
-rw-r--r--keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/config.h24
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/README.md8
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/config.h60
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/keymap.c63
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/rules.mk11
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/README.md8
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/config.h47
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/keymap.c64
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/rules.mk9
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/config.h24
-rw-r--r--keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/keymap.c5
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h28
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c76
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk3
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/config.h25
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/config.h47
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/keymap.c61
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/rules.mk3
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/README.md8
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/config.h47
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/keymap.c70
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/rules.mk10
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/config.h9
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/keymap.c170
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/rules.mk1
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/config.h39
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/keymap.c581
-rw-r--r--keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/rules.mk4
-rw-r--r--keyboards/handwired/dactyl_manuform/dmote/62key/config.h5
-rw-r--r--keyboards/handwired/dactyl_manuform/dmote/62key/info.json116
-rw-r--r--keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/config.h3
-rw-r--r--keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c141
-rw-r--r--keyboards/handwired/dactyl_manuform/dmote/62key/rules.mk5
-rw-r--r--keyboards/handwired/dactyl_manuform/dmote/readme.md16
-rw-r--r--keyboards/handwired/dactyl_minidox/info.json8
-rw-r--r--keyboards/handwired/dactyl_minidox/rules.mk13
-rw-r--r--keyboards/handwired/dmote/config.h23
-rw-r--r--keyboards/handwired/dmote/info.json124
-rw-r--r--keyboards/handwired/dmote/keymaps/default/keymap.c134
-rw-r--r--keyboards/handwired/dmote/readme.md29
-rw-r--r--keyboards/handwired/dmote/rules.mk1
-rw-r--r--keyboards/handwired/dqz11n1g/rules.mk2
-rw-r--r--keyboards/handwired/dygma/raise/rules.mk2
-rw-r--r--keyboards/handwired/frenchdev/rules.mk4
-rw-r--r--keyboards/handwired/lagrange/rules.mk3
-rw-r--r--keyboards/handwired/lovelive9/keymaps/default/keymap.c20
-rw-r--r--keyboards/handwired/minorca/keymaps/ridingqwerty/config.h7
-rw-r--r--keyboards/handwired/minorca/keymaps/ridingqwerty/keymap.c123
-rw-r--r--keyboards/handwired/minorca/keymaps/ridingqwerty/readme.md1
-rw-r--r--keyboards/handwired/minorca/keymaps/ridingqwerty/rules.mk6
-rw-r--r--keyboards/handwired/onekey/kb2040/rules.mk2
-rw-r--r--keyboards/handwired/onekey/keymaps/adc/rules.mk4
-rw-r--r--keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk2
-rw-r--r--keyboards/handwired/onekey/nucleo_f446re/rules.mk1
-rw-r--r--keyboards/handwired/orbweaver/config.h3
-rw-r--r--keyboards/handwired/orbweaver/orbweaver.c2
-rw-r--r--keyboards/handwired/ortho5x13/keymaps/default/keymap.c49
-rw-r--r--keyboards/handwired/phantagom/baragon/info.json1
-rw-r--r--keyboards/handwired/phantagom/baragon/rules.mk3
-rw-r--r--keyboards/handwired/phantagom/varan/info.json1
-rw-r--r--keyboards/handwired/phantagom/varan/rules.mk3
-rw-r--r--keyboards/handwired/promethium/rgbsps.c2
-rw-r--r--keyboards/handwired/promethium/rules.mk3
-rw-r--r--keyboards/handwired/pterodactyl/rules.mk2
-rw-r--r--keyboards/handwired/rabijl/rotary_numpad/info.json66
-rw-r--r--keyboards/handwired/rabijl/rotary_numpad/keymaps/default/keymap.c62
-rw-r--r--keyboards/handwired/rabijl/rotary_numpad/keymaps/default/rules.mk2
-rw-r--r--keyboards/handwired/rabijl/rotary_numpad/readme.md67
-rw-r--r--keyboards/handwired/rabijl/rotary_numpad/rules.mk1
-rw-r--r--keyboards/handwired/reclined/keymaps/pdl/config.h23
-rw-r--r--keyboards/handwired/reclined/keymaps/pdl/keymap.c69
-rw-r--r--keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/keymap.c196
-rw-r--r--keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/keymap.c281
-rw-r--r--keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/rules.mk4
-rw-r--r--keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/keymap.c114
-rw-r--r--keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/keymap.c174
-rw-r--r--keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/keymap.c511
-rw-r--r--keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/rules.mk2
-rw-r--r--keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/keymap.c174
-rw-r--r--keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/keymap.c289
-rw-r--r--keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/rules.mk2
-rw-r--r--keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/keymap.c174
-rw-r--r--keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/config.h26
-rw-r--r--keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/keymap.c33
-rw-r--r--keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/keymap.c69
-rw-r--r--keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/config.h23
-rw-r--r--keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/keymap.c174
-rw-r--r--keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/handwired/split_cloud/keymaps/default/keymap.c1
-rw-r--r--keyboards/handwired/steamvan/rev1/config.h2
-rw-r--r--keyboards/handwired/swiftrax/beegboy/config.h21
-rw-r--r--keyboards/handwired/swiftrax/cowfish/config.h21
-rw-r--r--keyboards/handwired/swiftrax/glacier/config.h21
-rw-r--r--keyboards/handwired/swiftrax/joypad/config.h21
-rw-r--r--keyboards/handwired/swiftrax/koalafications/config.h21
-rw-r--r--keyboards/handwired/swiftrax/nodu/config.h21
-rw-r--r--keyboards/handwired/swiftrax/pandamic/config.h21
-rw-r--r--keyboards/handwired/swiftrax/the_galleon/config.h21
-rw-r--r--keyboards/handwired/swiftrax/the_galleon/info.json3
-rw-r--r--keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/config.h35
-rw-r--r--keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/keymap.c117
-rw-r--r--keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/rules.mk8
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f303/info.json3
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f303/rules.mk1
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f411/info.json3
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk1
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h36
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c161
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rgblight_breathe_table.h117
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk54
-rw-r--r--keyboards/handwired/traveller/keymaps/default/keymap.c1
-rw-r--r--keyboards/handwired/tsubasa/config.h3
-rw-r--r--keyboards/handwired/tsubasa/info.json6
-rw-r--r--keyboards/handwired/wabi/keymaps/rossman360/keymap.c68
-rw-r--r--keyboards/hazel/bad_wings/keymaps/miketronic/config.h16
-rw-r--r--keyboards/hazel/bad_wings/keymaps/miketronic/keymap.c258
-rw-r--r--keyboards/hazel/bad_wings/keymaps/miketronic/rules.mk31
-rw-r--r--keyboards/hazel/bad_wings/rules.mk2
-rw-r--r--keyboards/helix/pico/keymaps/default/keymap.c30
-rw-r--r--keyboards/helix/pico/keymaps/mtei/config.h18
-rw-r--r--keyboards/helix/pico/keymaps/mtei/keymap.c368
-rw-r--r--keyboards/helix/pico/keymaps/mtei/rules.mk18
-rw-r--r--keyboards/helix/rev2/config.h3
-rw-r--r--keyboards/helix/rev2/info.json8
-rw-r--r--keyboards/helix/rev2/keymaps/default/keymap.c30
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/config.h22
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/keymap.c75
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/oled.c65
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/oled.h12
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/readme.md21
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/rules.mk33
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/README.md84
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/README_jp.md121
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/config.h16
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/keymap.c474
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/rules.mk24
-rw-r--r--keyboards/helix/rev2/keymaps/froggy/keymap.c30
-rw-r--r--keyboards/helix/rev2/keymaps/xulkal/config.h38
-rw-r--r--keyboards/helix/rev2/keymaps/xulkal/keymap.c69
-rw-r--r--keyboards/helix/rev2/keymaps/xulkal/rules.mk14
-rw-r--r--keyboards/helix/rev2/keymaps/yshrsmz/keymap.c30
-rw-r--r--keyboards/helix/rev3_4rows/config.h3
-rw-r--r--keyboards/helix/rev3_4rows/info.json5
-rw-r--r--keyboards/helix/rev3_5rows/config.h3
-rw-r--r--keyboards/helix/rev3_5rows/info.json3
-rw-r--r--keyboards/helix/rev3_5rows/keymaps/five_rows/config.h18
-rw-r--r--keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c474
-rw-r--r--keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk11
-rw-r--r--keyboards/hfdkb/ac001/config.h1
-rw-r--r--keyboards/hfdkb/ac001/info.json7
-rw-r--r--keyboards/hfdkb/ac001/rules.mk2
-rw-r--r--keyboards/hhkb/ansi/keymaps/brett/config.h14
-rw-r--r--keyboards/hhkb/ansi/keymaps/brett/keymap.c119
-rw-r--r--keyboards/hhkb/ansi/keymaps/brett/readme.md13
-rw-r--r--keyboards/hhkb/ansi/keymaps/brett/rules.mk4
-rw-r--r--keyboards/hhkb/ansi/keymaps/tominabox1/.gitignore3
-rw-r--r--keyboards/hhkb/ansi/keymaps/tominabox1/keymap.c12
-rw-r--r--keyboards/hhkb/jp/keymaps/dhertz/config.h1
-rw-r--r--keyboards/hhkb/jp/keymaps/dhertz/keymap.c84
-rw-r--r--keyboards/hhkb/jp/keymaps/dhertz/keymap.h7
-rw-r--r--keyboards/hhkb/jp/keymaps/dhertz/rules.mk2
-rw-r--r--keyboards/hidtech/bastyl/keymaps/nstickney/keymap.c70
-rw-r--r--keyboards/hillside/46/keymaps/manna-harbour_miryoku/config.h38
-rw-r--r--keyboards/hillside/46/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/hillside/48/0_1/info.json1
-rw-r--r--keyboards/hillside/48/keymaps/manna-harbour_miryoku/config.h38
-rw-r--r--keyboards/hillside/48/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/hillside/52/keymaps/manna-harbour_miryoku/config.h38
-rw-r--r--keyboards/hillside/52/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/hineybush/hbcp/hbcp.c14
-rw-r--r--keyboards/hineybush/hbcp/keymaps/hiney/keymap.c12
-rw-r--r--keyboards/horrortroll/handwired_k552/config.h4
-rw-r--r--keyboards/horrortroll/handwired_k552/info.json7
-rw-r--r--keyboards/horrortroll/handwired_k552/rules.mk4
-rw-r--r--keyboards/horrortroll/lemon40/info.json3
-rw-r--r--keyboards/hotdox/keymaps/imchipwood/keymap.c151
-rw-r--r--keyboards/hotdox/keymaps/ninjonas/README.md106
-rw-r--r--keyboards/hotdox/keymaps/ninjonas/keymap.c348
-rw-r--r--keyboards/hotdox/keymaps/ninjonas/rules.mk1
-rw-r--r--keyboards/hotdox/rules.mk2
-rw-r--r--keyboards/hotdox76v2/config.h5
-rw-r--r--keyboards/hotdox76v2/info.json11
-rw-r--r--keyboards/hs60/v1/config.h5
-rw-r--r--keyboards/hs60/v1/v1.c4
-rw-r--r--keyboards/hs60/v2/ansi/config.h4
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h38
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c59
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md48
-rw-r--r--keyboards/hs60/v2/ansi/rules.mk4
-rw-r--r--keyboards/hs60/v2/hhkb/config.h4
-rw-r--r--keyboards/hs60/v2/hhkb/rules.mk4
-rw-r--r--keyboards/hs60/v2/iso/config.h4
-rw-r--r--keyboards/hs60/v2/iso/rules.mk4
-rw-r--r--keyboards/hs60/v2/v2.c79
-rw-r--r--keyboards/ibm/model_m/mschwingen/mschwingen.c22
-rw-r--r--keyboards/ibm/model_m/mschwingen/rules.mk4
-rw-r--r--keyboards/ibm/model_m/yugo_m/config.h4
-rw-r--r--keyboards/ibm/model_m/yugo_m/info.json5
-rw-r--r--keyboards/idobao/id80/v2/ansi/keymaps/rverst/keymap.c80
-rw-r--r--keyboards/idobao/id80/v2/ansi/keymaps/rverst/readme.md23
-rw-r--r--keyboards/idobao/id80/v2/ansi/keymaps/rverst/rverst.json499
-rw-r--r--keyboards/idyllic/tinny50_rgb/config.h3
-rw-r--r--keyboards/idyllic/tinny50_rgb/info.json3
-rw-r--r--keyboards/ilumkb/simpler61/config.h3
-rw-r--r--keyboards/ilumkb/simpler61/simpler61.c2
-rw-r--r--keyboards/ilumkb/simpler64/config.h3
-rw-r--r--keyboards/ilumkb/simpler64/simpler64.c2
-rw-r--r--keyboards/inett_studio/sqx/hotswap/config.h5
-rw-r--r--keyboards/inett_studio/sqx/hotswap/hotswap.c2
-rw-r--r--keyboards/inett_studio/sqx/universal/config.h5
-rw-r--r--keyboards/inett_studio/sqx/universal/universal.c2
-rw-r--r--keyboards/ingrained/rules.mk2
-rw-r--r--keyboards/inland/kb83/config.h11
-rw-r--r--keyboards/inland/kb83/info.json12
-rw-r--r--keyboards/inland/kb83/kb83.c4
-rw-r--r--keyboards/inland/kb83/rules.mk2
-rw-r--r--keyboards/inland/mk47/config.h5
-rw-r--r--keyboards/inland/mk47/info.json11
-rw-r--r--keyboards/inland/mk47/mk47.c4
-rw-r--r--keyboards/inland/mk47/rules.mk3
-rw-r--r--keyboards/inland/v83p/config.h10
-rw-r--r--keyboards/inland/v83p/info.json12
-rw-r--r--keyboards/inland/v83p/rules.mk3
-rw-r--r--keyboards/inland/v83p/v83p.c2
-rw-r--r--keyboards/input_club/ergodox_infinity/config.h3
-rw-r--r--keyboards/input_club/ergodox_infinity/ergodox_infinity.c7
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/README.md30
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/config.h9
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/keymap.c551
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/layers.h14
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/halfkeyboard/keymap.c3
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/config.h13
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/default.png.md1
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/default_highres.png.md1
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/keymap.c697
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/readme.md31
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/rules.mk23
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/narze/visualizer.c94
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/keymap.c267
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/readme.md5
-rw-r--r--keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/rules.mk3
-rw-r--r--keyboards/input_club/infinity60/halconf.h27
-rw-r--r--keyboards/input_club/infinity60/keymaps/default/keymap.c3
-rw-r--r--keyboards/input_club/infinity60/keymaps/jpetermans/config.h6
-rw-r--r--keyboards/input_club/infinity60/keymaps/jpetermans/keymap.c264
-rw-r--r--keyboards/input_club/infinity60/keymaps/jpetermans/readme.md87
-rw-r--r--keyboards/input_club/infinity60/led.c58
-rw-r--r--keyboards/input_club/infinity60/led/config.h14
-rw-r--r--keyboards/input_club/infinity60/led/halconf.h8
-rw-r--r--keyboards/input_club/infinity60/led/info.json94
-rw-r--r--keyboards/input_club/infinity60/led/led.c83
-rw-r--r--keyboards/input_club/infinity60/led/rules.mk3
-rw-r--r--keyboards/input_club/infinity60/led_controller.c488
-rw-r--r--keyboards/input_club/infinity60/led_controller.h121
-rw-r--r--keyboards/input_club/k_type/config.h10
-rw-r--r--keyboards/input_club/k_type/i2c_master.h1
-rw-r--r--keyboards/input_club/k_type/is31fl3733-dual.c175
-rw-r--r--keyboards/input_club/k_type/is31fl3733-dual.h73
-rw-r--r--keyboards/input_club/k_type/k_type-rgbdriver.c37
-rw-r--r--keyboards/input_club/k_type/k_type.c17
-rw-r--r--keyboards/input_club/k_type/post_rules.mk5
-rw-r--r--keyboards/input_club/k_type/rules.mk5
-rw-r--r--keyboards/input_club/whitefox/board_is31fl3731c.h106
-rw-r--r--keyboards/input_club/whitefox/config.h3
-rw-r--r--keyboards/input_club/whitefox/keymaps/billypython/config.h3
-rw-r--r--keyboards/input_club/whitefox/keymaps/billypython/keymap.c46
-rw-r--r--keyboards/input_club/whitefox/keymaps/billypython/rules.mk6
-rw-r--r--keyboards/input_club/whitefox/keymaps/dhertz/keymap.c58
-rw-r--r--keyboards/input_club/whitefox/keymaps/dudeofawesome/keymap.c146
-rw-r--r--keyboards/input_club/whitefox/keymaps/dudeofawesome/readme.md20
-rw-r--r--keyboards/input_club/whitefox/keymaps/konstantin/config.h4
-rw-r--r--keyboards/input_club/whitefox/keymaps/konstantin/keymap.c67
-rw-r--r--keyboards/input_club/whitefox/keymaps/konstantin/rules.mk18
-rw-r--r--keyboards/input_club/whitefox/whitefox.c5
-rw-r--r--keyboards/jacky_studio/bear_65/keymaps/stanrc85/keymap.c49
-rw-r--r--keyboards/jacky_studio/bear_65/keymaps/stanrc85/rules.mk1
-rw-r--r--keyboards/jacky_studio/piggy60/rev2/info.json1
-rw-r--r--keyboards/jd45/keymaps/talljoe/config.h32
-rw-r--r--keyboards/jd45/keymaps/talljoe/keymap.c1
-rw-r--r--keyboards/jian/keymaps/advanced/config.h2
-rw-r--r--keyboards/jian/keymaps/advanced/keymap.c120
-rw-r--r--keyboards/jian/rev1/config.h1
-rw-r--r--keyboards/jian/rev1/info.json23
-rw-r--r--keyboards/jian/rev1/rules.mk1
-rw-r--r--keyboards/jolofsor/denial75/info.json6
-rw-r--r--keyboards/jolofsor/denial75/keymaps/default/keymap.c6
-rw-r--r--keyboards/jolofsor/denial75/keymaps/via/keymap.c24
-rw-r--r--keyboards/jones/v1/config.h5
-rw-r--r--keyboards/jones/v1/info.json6
-rw-r--r--keyboards/jones/v1/rules.mk3
-rw-r--r--keyboards/jorne/keymaps/manna-harbour_miryoku/config.h21
-rw-r--r--keyboards/jorne/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/jorne/rev1/config.h2
-rw-r--r--keyboards/jorne/rev1/info.json8
-rw-r--r--keyboards/jukaie/jk01/config.h2
-rw-r--r--keyboards/jukaie/jk01/info.json10
-rw-r--r--keyboards/jukaie/jk01/rules.mk2
-rw-r--r--keyboards/kabedon/kabedon980/config.h20
-rw-r--r--keyboards/kabedon/kabedon980/info.json3
-rw-r--r--keyboards/kagizaraya/chidori/rules.mk2
-rw-r--r--keyboards/kapl/rev1/config.h4
-rw-r--r--keyboards/kapl/rev1/info.json9
-rw-r--r--keyboards/kbdcraft/adam64/adam64.c2
-rw-r--r--keyboards/kbdcraft/adam64/config.h3
-rw-r--r--keyboards/kbdfans/bella/rgb/config.h3
-rw-r--r--keyboards/kbdfans/bella/rgb/rgb.c2
-rw-r--r--keyboards/kbdfans/bella/rgb_iso/config.h3
-rw-r--r--keyboards/kbdfans/bella/rgb_iso/rgb_iso.c2
-rw-r--r--keyboards/kbdfans/boop65/rgb/config.h3
-rw-r--r--keyboards/kbdfans/boop65/rgb/rgb.c2
-rw-r--r--keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c102
-rw-r--r--keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk2
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h39
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c125
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/readme.md41
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rgb_matrix_map.h109
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk12
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/v1/config.h5
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/v1/v1.c2
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/v2/config.h5
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/v2/v2.c2
-rwxr-xr-xkeyboards/kbdfans/kbd67/mkiirgb/v3/config.h3
-rw-r--r--keyboards/kbdfans/kbd67/mkiirgb/v3/info.json3
-rwxr-xr-xkeyboards/kbdfans/kbd67/mkiirgb/v3/v3.c10
-rw-r--r--keyboards/kbdfans/kbd67/rev1/info.json1
-rw-r--r--keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c102
-rw-r--r--keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk3
-rw-r--r--keyboards/kbdfans/kbd6x/keymaps/konstantin/config.h3
-rw-r--r--keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c181
-rw-r--r--keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk19
-rw-r--r--keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c82
-rw-r--r--keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk3
-rw-r--r--keyboards/kbdfans/kbd75/keymaps/noroadsleft/config.h22
-rw-r--r--keyboards/kbdfans/kbd75/keymaps/noroadsleft/keymap.c94
-rw-r--r--keyboards/kbdfans/kbd75/keymaps/noroadsleft/rules.mk8
-rw-r--r--keyboards/kbdfans/kbdmini/config.h3
-rw-r--r--keyboards/kbdfans/kbdmini/kbdmini.c2
-rwxr-xr-xkeyboards/kbdfans/maja/config.h5
-rwxr-xr-xkeyboards/kbdfans/maja/maja.c2
-rw-r--r--keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/config.h40
-rw-r--r--keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/keymap.c264
-rw-r--r--keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/readme.md9
-rw-r--r--keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/rules.mk5
-rw-r--r--keyboards/kbdfans/niu_mini/keymaps/yttyx/keymap.c1
-rw-r--r--keyboards/kc60/info.json645
-rw-r--r--keyboards/kc60/keymaps/dbroqua/keymap.c139
-rw-r--r--keyboards/kc60/keymaps/dbroqua_hhkb/keymap.c89
-rw-r--r--keyboards/kc60/keymaps/default/keymap.c2
-rw-r--r--keyboards/kc60/keymaps/noroadsleft/config.h36
-rw-r--r--keyboards/kc60/keymaps/noroadsleft/keymap.c117
-rw-r--r--keyboards/kc60/keymaps/noroadsleft/readme.md135
-rw-r--r--keyboards/kc60/keymaps/noroadsleft/rules.mk6
-rw-r--r--keyboards/kc60/keymaps/sgoodwin/keymap.c50
-rw-r--r--keyboards/kc60/keymaps/stanleylai/config.h3
-rw-r--r--keyboards/kc60/keymaps/stanleylai/keymap.c72
-rw-r--r--keyboards/kc60/keymaps/via/keymap.c2
-rw-r--r--keyboards/kc60/keymaps/wigguno/keymap.c84
-rw-r--r--keyboards/kc60/matrix_diagram.md33
-rw-r--r--keyboards/keebio/bdn9/keymaps/bcat/keymap.c54
-rw-r--r--keyboards/keebio/bdn9/keymaps/bcat/readme.md7
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/config.h34
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c394
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md107
-rw-r--r--keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk11
-rw-r--r--keyboards/keebio/bdn9/keymaps/rishka/config.h5
-rw-r--r--keyboards/keebio/bdn9/keymaps/rishka/keymap.c67
-rw-r--r--keyboards/keebio/bdn9/keymaps/rishka/rules.mk1
-rw-r--r--keyboards/keebio/cepstrum/rev1/info.json1
-rw-r--r--keyboards/keebio/cepstrum/rev1/rules.mk1
-rw-r--r--keyboards/keebio/iris/keymaps/333fred/config.h33
-rw-r--r--keyboards/keebio/iris/keymaps/333fred/keymap.c76
-rw-r--r--keyboards/keebio/iris/keymaps/333fred/rules.mk3
-rw-r--r--keyboards/keebio/iris/keymaps/csc027/config.h39
-rw-r--r--keyboards/keebio/iris/keymaps/csc027/keymap.c87
-rw-r--r--keyboards/keebio/iris/keymaps/csc027/rules.mk6
-rw-r--r--keyboards/keebio/iris/keymaps/drashna/config.h75
-rw-r--r--keyboards/keebio/iris/keymaps/drashna/keymap.c112
-rw-r--r--keyboards/keebio/iris/keymaps/drashna/rules.mk16
-rw-r--r--keyboards/keebio/iris/keymaps/edvorakjp/config.h18
-rw-r--r--keyboards/keebio/iris/keymaps/edvorakjp/keymap.c72
-rw-r--r--keyboards/keebio/iris/keymaps/edvorakjp/readme.md21
-rw-r--r--keyboards/keebio/iris/keymaps/edvorakjp/rules.mk18
-rw-r--r--keyboards/keebio/iris/keymaps/gary/README.md18
-rw-r--r--keyboards/keebio/iris/keymaps/gary/config.h7
-rw-r--r--keyboards/keebio/iris/keymaps/gary/keymap.c47
-rw-r--r--keyboards/keebio/iris/keymaps/gary/rules.mk2
-rw-r--r--keyboards/keebio/iris/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/keebio/iris/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/keebio/iris/keymaps/mattly/config.h38
-rw-r--r--keyboards/keebio/iris/keymaps/mattly/keymap.c70
-rw-r--r--keyboards/keebio/iris/keymaps/mattly/readme.md1
-rw-r--r--keyboards/keebio/iris/keymaps/mnil/config.h38
-rw-r--r--keyboards/keebio/iris/keymaps/mnil/keymap.c94
-rw-r--r--keyboards/keebio/iris/keymaps/mnil/readme.md2
-rw-r--r--keyboards/keebio/iris/keymaps/mnil/rules.mk1
-rw-r--r--keyboards/keebio/iris/keymaps/nstickney/config.h20
-rw-r--r--keyboards/keebio/iris/keymaps/nstickney/keymap.c53
-rw-r--r--keyboards/keebio/iris/keymaps/pvinis/config.h32
-rw-r--r--keyboards/keebio/iris/keymaps/pvinis/keymap.c198
-rw-r--r--keyboards/keebio/iris/keymaps/pvinis/rules.mk9
-rw-r--r--keyboards/keebio/iris/keymaps/rs/config.h33
-rw-r--r--keyboards/keebio/iris/keymaps/rs/keymap.c45
-rw-r--r--keyboards/keebio/iris/keymaps/rs/readme.md1
-rw-r--r--keyboards/keebio/iris/keymaps/rs/rules.mk2
-rw-r--r--keyboards/keebio/iris/keymaps/sethBarberee/config.h30
-rw-r--r--keyboards/keebio/iris/keymaps/sethBarberee/keymap.c82
-rw-r--r--keyboards/keebio/iris/keymaps/sethBarberee/rules.mk5
-rw-r--r--keyboards/keebio/iris/keymaps/wanleg/config.h30
-rw-r--r--keyboards/keebio/iris/keymaps/wanleg/keymap.c76
-rw-r--r--keyboards/keebio/iris/keymaps/wanleg/rules.mk5
-rw-r--r--keyboards/keebio/iris/rev8/info.json4
-rw-r--r--keyboards/keebio/levinson/keymaps/dcompact/keymap.c2
-rw-r--r--keyboards/keebio/levinson/keymaps/drogglbecher/rules.mk1
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/README.md15
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/asci-keymap.txt55
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/config.h39
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/keymap.c124
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/rgb.c61
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/rgb.h15
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/rules.mk14
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/sounds.h9
-rw-r--r--keyboards/keebio/levinson/keymaps/issmirnov/template.txt9
-rw-r--r--keyboards/keebio/levinson/keymaps/losinggeneration/README.md28
-rw-r--r--keyboards/keebio/levinson/keymaps/losinggeneration/config.h41
-rw-r--r--keyboards/keebio/levinson/keymaps/losinggeneration/keymap.c38
-rw-r--r--keyboards/keebio/levinson/keymaps/losinggeneration/rules.mk14
-rw-r--r--keyboards/keebio/levinson/keymaps/rossman360/keymap.c135
-rw-r--r--keyboards/keebio/levinson/keymaps/steno/keymap.c1
-rw-r--r--keyboards/keebio/levinson/keymaps/xtonhasvim/config.h30
-rw-r--r--keyboards/keebio/levinson/keymaps/xtonhasvim/keymap.c237
-rw-r--r--keyboards/keebio/levinson/keymaps/xtonhasvim/readme.md9
-rw-r--r--keyboards/keebio/levinson/keymaps/xtonhasvim/rules.mk5
-rw-r--r--keyboards/keebio/nyquist/keymaps/losinggeneration/README.md29
-rw-r--r--keyboards/keebio/nyquist/keymaps/losinggeneration/config.h25
-rw-r--r--keyboards/keebio/nyquist/keymaps/losinggeneration/keymap.c55
-rw-r--r--keyboards/keebio/nyquist/keymaps/losinggeneration/rules.mk14
-rw-r--r--keyboards/keebio/nyquist/rev4/info.json4
-rw-r--r--keyboards/keebio/quefrency/keymaps/bcat/config.h26
-rw-r--r--keyboards/keebio/quefrency/keymaps/bcat/keymap.c40
-rw-r--r--keyboards/keebio/quefrency/keymaps/bcat/readme.md17
-rw-r--r--keyboards/keebio/quefrency/keymaps/bcat/rules.mk1
-rw-r--r--keyboards/keebio/quefrency/keymaps/draevin/keymap.c61
-rw-r--r--keyboards/keebio/quefrency/keymaps/draevin/rules.mk1
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/config.h40
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/keymap.c152
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/readme.md38
-rw-r--r--keyboards/keebio/quefrency/keymaps/jonavin/rules.mk10
-rw-r--r--keyboards/keebio/sinc/keymaps/draevin/keymap.c47
-rw-r--r--keyboards/keebio/sinc/keymaps/sethBarberee/config.h25
-rw-r--r--keyboards/keebio/sinc/keymaps/sethBarberee/keymap.c82
-rw-r--r--keyboards/keebio/sinc/keymaps/sethBarberee/rules.mk4
-rw-r--r--keyboards/keebio/sinc/rev1/config.h2
-rw-r--r--keyboards/keebio/sinc/rev1/info.json5
-rw-r--r--keyboards/keebio/sinc/rev2/config.h2
-rw-r--r--keyboards/keebio/sinc/rev2/info.json5
-rwxr-xr-xkeyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c71
-rw-r--r--keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md3
-rw-r--r--keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk2
-rw-r--r--keyboards/keebio/viterbi/keymaps/drashna/config.h61
-rw-r--r--keyboards/keebio/viterbi/keymaps/drashna/keymap.c76
-rw-r--r--keyboards/keebio/viterbi/keymaps/drashna/rules.mk25
-rw-r--r--keyboards/keebio/viterbi/keymaps/ericgebhart/config.h24
-rw-r--r--keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/keebio/viterbi/keymaps/vosechu/config.h50
-rw-r--r--keyboards/keebio/viterbi/keymaps/vosechu/keymap.c91
-rw-r--r--keyboards/keebio/viterbi/keymaps/vosechu/rules.mk1
-rw-r--r--keyboards/keebsforall/coarse60/config.h2
-rwxr-xr-xkeyboards/keebwerk/mega/ansi/ansi.c140
-rwxr-xr-xkeyboards/keebwerk/mega/ansi/config.h5
-rw-r--r--keyboards/keebwerk/mega/ansi/keymaps/jesusvallejo/keymap.c92
-rwxr-xr-xkeyboards/keebwerk/mega/ansi/rules.mk2
-rw-r--r--keyboards/keebwerk/nano_slider/rules.mk2
-rw-r--r--keyboards/keyboardio/atreus/keymaps/dshields/keymap.c45
-rw-r--r--keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h21
-rw-r--r--keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/keyboardio/model01/keymaps/dshields/config.h4
-rw-r--r--keyboards/keyboardio/model01/keymaps/dshields/keymap.c28
-rw-r--r--keyboards/keyboardio/model01/keymaps/dshields/readme.md10
-rw-r--r--keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/config.h26
-rw-r--r--keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/rules.mk4
-rw-r--r--keyboards/keyboardio/model01/rules.mk2
-rw-r--r--keyboards/keychron/c1_pro/ansi/rgb/config.h10
-rw-r--r--keyboards/keychron/c1_pro/ansi/rgb/info.json2
-rw-r--r--keyboards/keychron/c1_pro/ansi/rgb/rgb.c4
-rw-r--r--keyboards/keychron/c1_pro/ansi/white/config.h8
-rw-r--r--keyboards/keychron/c1_pro/ansi/white/info.json2
-rw-r--r--keyboards/keychron/c1_pro/ansi/white/white.c4
-rw-r--r--keyboards/keychron/c2_pro/ansi/rgb/config.h7
-rw-r--r--keyboards/keychron/c2_pro/ansi/rgb/info.json2
-rw-r--r--keyboards/keychron/c2_pro/ansi/rgb/rgb.c4
-rw-r--r--keyboards/keychron/c2_pro/ansi/white/config.h5
-rw-r--r--keyboards/keychron/c2_pro/ansi/white/info.json2
-rw-r--r--keyboards/keychron/c2_pro/ansi/white/white.c4
-rw-r--r--keyboards/keychron/q0/base/base.c57
-rw-r--r--keyboards/keychron/q0/base/config.h26
-rw-r--r--keyboards/keychron/q0/base/info.json75
-rw-r--r--keyboards/keychron/q0/base/keymaps/default/keymap.c (renamed from keyboards/keychron/q0/rev_0130/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q0/base/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q0/rev_0130/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q0/base/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q0/rev_0130/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q0/base/keymaps/via/keymap.c (renamed from keyboards/keychron/q0/rev_0130/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q0/base/keymaps/via/rules.mk (renamed from keyboards/dztech/og60/keymaps/via/rules.mk)0
-rw-r--r--keyboards/keychron/q0/base/readme.md (renamed from keyboards/keychron/q0/rev_0130/readme.md)0
-rw-r--r--keyboards/keychron/q0/base/rules.mk (renamed from keyboards/soda/mango/rules.mk)0
-rw-r--r--keyboards/keychron/q0/config.h6
-rw-r--r--keyboards/keychron/q0/info.json52
-rw-r--r--keyboards/keychron/q0/plus/config.h31
-rw-r--r--keyboards/keychron/q0/plus/info.json94
-rw-r--r--keyboards/keychron/q0/plus/keymaps/default/keymap.c (renamed from keyboards/keychron/q0/rev_0131/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q0/plus/keymaps/default/rules.mk1
-rw-r--r--keyboards/keychron/q0/plus/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q0/rev_0131/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q0/plus/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q0/rev_0131/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q0/plus/keymaps/via/keymap.c (renamed from keyboards/keychron/q0/rev_0131/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q0/plus/keymaps/via/rules.mk (renamed from keyboards/keychron/q0/rev_0131/keymaps/via/rules.mk)0
-rw-r--r--keyboards/keychron/q0/plus/plus.c62
-rw-r--r--keyboards/keychron/q0/plus/readme.md12
-rw-r--r--keyboards/keychron/q0/plus/rules.mk1
-rw-r--r--keyboards/keychron/q0/readme.md10
-rw-r--r--keyboards/keychron/q0/rev_0130/config.h28
-rw-r--r--keyboards/keychron/q0/rev_0130/info.json118
-rw-r--r--keyboards/keychron/q0/rev_0130/rev_0130.c57
-rw-r--r--keyboards/keychron/q0/rev_0130/rules.mk3
-rw-r--r--keyboards/keychron/q0/rev_0131/config.h34
-rw-r--r--keyboards/keychron/q0/rev_0131/info.json137
-rw-r--r--keyboards/keychron/q0/rev_0131/readme.md6
-rw-r--r--keyboards/keychron/q0/rev_0131/rev_0131.c62
-rw-r--r--keyboards/keychron/q0/rev_0131/rules.mk3
-rw-r--r--keyboards/keychron/q1/ansi/ansi.c150
-rw-r--r--keyboards/keychron/q1/ansi/config.h22
-rw-r--r--keyboards/keychron/q1/ansi/info.json115
-rw-r--r--keyboards/keychron/q1/ansi/rules.mk15
-rw-r--r--keyboards/keychron/q1/ansi_encoder/ansi_encoder.c148
-rw-r--r--keyboards/keychron/q1/ansi_encoder/config.h22
-rw-r--r--keyboards/keychron/q1/ansi_encoder/info.json120
-rw-r--r--keyboards/keychron/q1/ansi_encoder/rules.mk16
-rw-r--r--keyboards/keychron/q1/config.h80
-rw-r--r--keyboards/keychron/q1/iso/config.h22
-rw-r--r--keyboards/keychron/q1/iso/info.json116
-rw-r--r--keyboards/keychron/q1/iso/iso.c149
-rw-r--r--keyboards/keychron/q1/iso/rules.mk15
-rw-r--r--keyboards/keychron/q1/iso_encoder/config.h33
-rw-r--r--keyboards/keychron/q1/iso_encoder/info.json121
-rw-r--r--keyboards/keychron/q1/iso_encoder/iso_encoder.c150
-rw-r--r--keyboards/keychron/q1/iso_encoder/rules.mk18
-rw-r--r--keyboards/keychron/q1/q1.c38
-rw-r--r--keyboards/keychron/q1/readme.md21
-rw-r--r--keyboards/keychron/q10/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q10/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q10/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q10/config.h10
-rw-r--r--keyboards/keychron/q10/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/q10/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q10/iso_encoder/rules.mk2
-rwxr-xr-xkeyboards/keychron/q11/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q11/ansi_encoder/rules.mk5
-rwxr-xr-xkeyboards/keychron/q11/config.h5
-rwxr-xr-xkeyboards/keychron/q11/info.json6
-rwxr-xr-xkeyboards/keychron/q11/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q12/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q12/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q12/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q12/config.h7
-rw-r--r--keyboards/keychron/q12/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/q12/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q12/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q1v1/ansi/ansi.c126
-rw-r--r--keyboards/keychron/q1v1/ansi/config.h23
-rw-r--r--keyboards/keychron/q1v1/ansi/info.json190
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/default/keymap.c (renamed from keyboards/keychron/q1/ansi/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/README.md (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/README.md)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/config.h (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/config.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/keymap.c (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/keymap_user.h (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/keymap_user.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rgb_matrix_user.c (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/rgb_matrix_user.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rgb_matrix_user.h (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/rgb_matrix_user.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rules.mk (renamed from keyboards/keychron/q1/ansi/keymaps/gtg465x/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q1/ansi/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q1/ansi/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/config.h (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/config.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/keymap.c (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/keymap_user.h (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/keymap_user.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/readme.md (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rgb_matrix_user.c (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/rgb_matrix_user.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rgb_matrix_user.h (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/rgb_matrix_user.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rules.mk (renamed from keyboards/keychron/q1/ansi/keymaps/mkillewald/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/config.h (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/config.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/keymap.c (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/keymap_user.h (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/keymap_user.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/readme.md (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/rgb_matrix_user.c (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/rgb_matrix_user.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/rgb_matrix_user.h (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/rgb_matrix_user.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/rules.mk (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_mac_caps.c (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_mac_caps.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_mac_caps.h (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_mac_caps.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_setup.c (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_setup.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_setup.h (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_setup.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_user.c (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_user.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_win_caps.c (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_win_caps.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_win_caps.h (renamed from keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_win_caps.h)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/via/keymap.c (renamed from keyboards/keychron/q1/ansi/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi/keymaps/via/rules.mk (renamed from keyboards/hs60/v2/ansi/keymaps/stanrc85/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi/readme.md (renamed from keyboards/keychron/q1/ansi/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/ansi/rules.mk1
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/ansi_encoder.c125
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/config.h23
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/info.json196
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/keymaps/default/keymap.c (renamed from keyboards/keychron/q1/ansi_encoder/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/keymaps/default/rules.mk (renamed from keyboards/keychron/q1/ansi_encoder/keymaps/default/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q1/ansi_encoder/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q1/ansi_encoder/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/keymaps/via/keymap.c (renamed from keyboards/keychron/q1/ansi_encoder/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/keymaps/via/rules.mk (renamed from keyboards/keychron/q1/ansi_encoder/keymaps/via/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/readme.md (renamed from keyboards/keychron/q1/ansi_encoder/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/ansi_encoder/rules.mk1
-rw-r--r--keyboards/keychron/q1v1/config.h36
-rw-r--r--keyboards/keychron/q1v1/info.json54
-rw-r--r--keyboards/keychron/q1v1/iso/config.h23
-rw-r--r--keyboards/keychron/q1v1/iso/info.json192
-rw-r--r--keyboards/keychron/q1v1/iso/iso.c158
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/default/keymap.c (renamed from keyboards/keychron/q1/iso/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q1/iso/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q1/iso/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/README.md (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/README.md)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/config.h (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/config.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/keymap.c (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/keymap_user.h (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/keymap_user.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/rgb_matrix_user.c (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/rgb_matrix_user.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/rgb_matrix_user.h (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/rgb_matrix_user.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/kubahorak/rules.mk (renamed from keyboards/keychron/q1/iso/keymaps/kubahorak/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/config.h (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/config.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/keymap.c (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/keymap_user.h (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/keymap_user.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/readme.md (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rgb_matrix_user.c (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rgb_matrix_user.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rgb_matrix_user.h (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rgb_matrix_user.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rules.mk (renamed from keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/via/keymap.c (renamed from keyboards/keychron/q1/iso/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/via/rules.mk (renamed from keyboards/keychron/q0/rev_0130/keymaps/via/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/victorsavu3/config.h (renamed from keyboards/keychron/q1/iso/keymaps/victorsavu3/config.h)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/victorsavu3/keymap.c (renamed from keyboards/keychron/q1/iso/keymaps/victorsavu3/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/victorsavu3/readme.md (renamed from keyboards/keychron/q1/iso/keymaps/victorsavu3/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/iso/keymaps/victorsavu3/rules.mk (renamed from keyboards/keychron/q1/iso/keymaps/victorsavu3/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso/readme.md (renamed from keyboards/keychron/q1/iso/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/iso/rules.mk1
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/config.h23
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/info.json199
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/iso_encoder.c127
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/keymaps/default/keymap.c (renamed from keyboards/keychron/q1/iso_encoder/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/keymaps/default/rules.mk (renamed from keyboards/keychron/q1/iso_encoder/keymaps/default/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q1/iso_encoder/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q1/iso_encoder/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/keymaps/via/keymap.c (renamed from keyboards/keychron/q1/iso_encoder/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/keymaps/via/rules.mk (renamed from keyboards/keychron/q1/iso_encoder/keymaps/via/rules.mk)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/readme.md (renamed from keyboards/keychron/q1/iso_encoder/readme.md)0
-rw-r--r--keyboards/keychron/q1v1/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q1v1/q1v1.c73
-rw-r--r--keyboards/keychron/q1v1/readme.md27
-rw-r--r--keyboards/keychron/q1v2/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q1v2/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q1v2/config.h10
-rw-r--r--keyboards/keychron/q1v2/info.json2
-rw-r--r--keyboards/keychron/q1v2/iso/iso.c4
-rw-r--r--keyboards/keychron/q1v2/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q1v2/jis/jis.c4
-rw-r--r--keyboards/keychron/q1v2/jis_encoder/jis_encoder.c4
-rw-r--r--keyboards/keychron/q2/ansi/ansi.c33
-rw-r--r--keyboards/keychron/q2/ansi/config.h7
-rw-r--r--keyboards/keychron/q2/ansi/info.json87
-rw-r--r--keyboards/keychron/q2/ansi/rules.mk19
-rw-r--r--keyboards/keychron/q2/ansi_encoder/ansi_encoder.c33
-rw-r--r--keyboards/keychron/q2/ansi_encoder/config.h8
-rw-r--r--keyboards/keychron/q2/ansi_encoder/info.json92
-rw-r--r--keyboards/keychron/q2/ansi_encoder/rules.mk19
-rw-r--r--keyboards/keychron/q2/config.h65
-rw-r--r--keyboards/keychron/q2/info.json60
-rw-r--r--keyboards/keychron/q2/iso/config.h7
-rw-r--r--keyboards/keychron/q2/iso/info.json88
-rw-r--r--keyboards/keychron/q2/iso/iso.c33
-rw-r--r--keyboards/keychron/q2/iso/rules.mk19
-rw-r--r--keyboards/keychron/q2/iso_encoder/config.h8
-rw-r--r--keyboards/keychron/q2/iso_encoder/info.json93
-rw-r--r--keyboards/keychron/q2/iso_encoder/iso_encoder.c33
-rw-r--r--keyboards/keychron/q2/iso_encoder/keymaps/dhertz/keymap.c95
-rw-r--r--keyboards/keychron/q2/iso_encoder/keymaps/dhertz/rules.mk1
-rw-r--r--keyboards/keychron/q2/iso_encoder/rules.mk19
-rw-r--r--keyboards/keychron/q2/jis/config.h6
-rw-r--r--keyboards/keychron/q2/jis/info.json89
-rw-r--r--keyboards/keychron/q2/jis/jis.c33
-rw-r--r--keyboards/keychron/q2/jis/rules.mk18
-rw-r--r--keyboards/keychron/q2/jis_encoder/config.h9
-rw-r--r--keyboards/keychron/q2/jis_encoder/info.json94
-rw-r--r--keyboards/keychron/q2/jis_encoder/jis_encoder.c33
-rw-r--r--keyboards/keychron/q2/jis_encoder/rules.mk19
-rw-r--r--keyboards/keychron/q2/readme.md16
-rw-r--r--keyboards/keychron/q3/ansi/ansi.c36
-rw-r--r--keyboards/keychron/q3/ansi/config.h12
-rw-r--r--keyboards/keychron/q3/ansi/info.json107
-rw-r--r--keyboards/keychron/q3/ansi/rules.mk19
-rw-r--r--keyboards/keychron/q3/ansi_encoder/ansi_encoder.c36
-rw-r--r--keyboards/keychron/q3/ansi_encoder/config.h9
-rw-r--r--keyboards/keychron/q3/ansi_encoder/info.json108
-rw-r--r--keyboards/keychron/q3/ansi_encoder/rules.mk21
-rw-r--r--keyboards/keychron/q3/config.h71
-rw-r--r--keyboards/keychron/q3/info.json52
-rw-r--r--keyboards/keychron/q3/iso/config.h12
-rw-r--r--keyboards/keychron/q3/iso/info.json108
-rw-r--r--keyboards/keychron/q3/iso/iso.c36
-rw-r--r--keyboards/keychron/q3/iso/rules.mk19
-rw-r--r--keyboards/keychron/q3/iso_encoder/config.h9
-rw-r--r--keyboards/keychron/q3/iso_encoder/info.json109
-rw-r--r--keyboards/keychron/q3/iso_encoder/iso_encoder.c36
-rw-r--r--keyboards/keychron/q3/iso_encoder/rules.mk21
-rw-r--r--keyboards/keychron/q3/jis/config.h12
-rw-r--r--keyboards/keychron/q3/jis/info.json114
-rw-r--r--keyboards/keychron/q3/jis/jis.c36
-rw-r--r--keyboards/keychron/q3/jis/rules.mk19
-rw-r--r--keyboards/keychron/q3/jis_encoder/config.h15
-rw-r--r--keyboards/keychron/q3/jis_encoder/info.json116
-rw-r--r--keyboards/keychron/q3/jis_encoder/jis_encoder.c36
-rw-r--r--keyboards/keychron/q3/jis_encoder/rules.mk21
-rw-r--r--keyboards/keychron/q3/readme.md22
-rw-r--r--keyboards/keychron/q4/ansi/config.h20
-rw-r--r--keyboards/keychron/q4/ansi/info.json147
-rw-r--r--keyboards/keychron/q4/ansi/keymaps/default/keymap.c (renamed from keyboards/keychron/q4/ansi_v1/keymaps/default/keymap.c)0
-rw-r--r--keyboards/keychron/q4/ansi/keymaps/keychron/keymap.c (renamed from keyboards/keychron/q4/ansi_v1/keymaps/keychron/keymap.c)0
-rw-r--r--keyboards/keychron/q4/ansi/keymaps/keychron/rules.mk (renamed from keyboards/keychron/q4/ansi_v1/keymaps/keychron/rules.mk)0
-rw-r--r--keyboards/keychron/q4/ansi/keymaps/via/keymap.c (renamed from keyboards/keychron/q4/ansi_v1/keymaps/via/keymap.c)0
-rw-r--r--keyboards/keychron/q4/ansi/keymaps/via/rules.mk (renamed from keyboards/keychron/q4/ansi_v1/keymaps/via/rules.mk)0
-rw-r--r--keyboards/keychron/q4/ansi/readme.md (renamed from keyboards/keychron/q4/ansi_v1/readme.md)0
-rw-r--r--keyboards/keychron/q4/ansi/v1/config.h26
-rw-r--r--keyboards/keychron/q4/ansi/v1/rules.mk1
-rw-r--r--keyboards/keychron/q4/ansi/v1/v1.c95
-rw-r--r--keyboards/keychron/q4/ansi/v2/config.h23
-rw-r--r--keyboards/keychron/q4/ansi/v2/rules.mk1
-rw-r--r--keyboards/keychron/q4/ansi/v2/v2.c95
-rw-r--r--keyboards/keychron/q4/ansi_v1/ansi_v1.c124
-rw-r--r--keyboards/keychron/q4/ansi_v1/config.h35
-rw-r--r--keyboards/keychron/q4/ansi_v1/info.json92
-rw-r--r--keyboards/keychron/q4/ansi_v1/rules.mk18
-rw-r--r--keyboards/keychron/q4/ansi_v2/ansi_v2.c124
-rw-r--r--keyboards/keychron/q4/ansi_v2/config.h31
-rw-r--r--keyboards/keychron/q4/ansi_v2/info.json92
-rw-r--r--keyboards/keychron/q4/ansi_v2/keymaps/default/keymap.c66
-rw-r--r--keyboards/keychron/q4/ansi_v2/keymaps/keychron/keymap.c75
-rw-r--r--keyboards/keychron/q4/ansi_v2/keymaps/keychron/rules.mk4
-rw-r--r--keyboards/keychron/q4/ansi_v2/keymaps/via/keymap.c66
-rw-r--r--keyboards/keychron/q4/ansi_v2/keymaps/via/rules.mk1
-rw-r--r--keyboards/keychron/q4/ansi_v2/readme.md1
-rw-r--r--keyboards/keychron/q4/ansi_v2/rules.mk18
-rw-r--r--keyboards/keychron/q4/config.h56
-rw-r--r--keyboards/keychron/q4/info.json62
-rw-r--r--keyboards/keychron/q4/iso/config.h9
-rw-r--r--keyboards/keychron/q4/iso/info.json81
-rw-r--r--keyboards/keychron/q4/iso/iso.c33
-rw-r--r--keyboards/keychron/q4/iso/rules.mk19
-rw-r--r--keyboards/keychron/q4/readme.md14
-rw-r--r--keyboards/keychron/q5/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q5/ansi/info.json2
-rw-r--r--keyboards/keychron/q5/ansi/rules.mk2
-rw-r--r--keyboards/keychron/q5/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q5/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q5/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q5/config.h7
-rw-r--r--keyboards/keychron/q5/iso/info.json2
-rw-r--r--keyboards/keychron/q5/iso/iso.c4
-rw-r--r--keyboards/keychron/q5/iso/rules.mk2
-rw-r--r--keyboards/keychron/q5/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/q5/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q5/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q6/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q6/ansi/info.json2
-rw-r--r--keyboards/keychron/q6/ansi/rules.mk2
-rw-r--r--keyboards/keychron/q6/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q6/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q6/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q6/config.h7
-rw-r--r--keyboards/keychron/q6/iso/info.json2
-rw-r--r--keyboards/keychron/q6/iso/iso.c4
-rw-r--r--keyboards/keychron/q6/iso/rules.mk2
-rw-r--r--keyboards/keychron/q6/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/q6/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q6/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q60/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q60/ansi/info.json2
-rw-r--r--keyboards/keychron/q60/ansi/rules.mk3
-rw-r--r--keyboards/keychron/q60/config.h5
-rw-r--r--keyboards/keychron/q65/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q65/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q65/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/q65/config.h10
-rw-r--r--keyboards/keychron/q7/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q7/ansi/info.json2
-rw-r--r--keyboards/keychron/q7/ansi/rules.mk3
-rw-r--r--keyboards/keychron/q7/config.h10
-rw-r--r--keyboards/keychron/q7/iso/info.json2
-rw-r--r--keyboards/keychron/q7/iso/iso.c4
-rw-r--r--keyboards/keychron/q7/iso/rules.mk3
-rw-r--r--keyboards/keychron/q8/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q8/ansi/info.json2
-rw-r--r--keyboards/keychron/q8/ansi/rules.mk3
-rw-r--r--keyboards/keychron/q8/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q8/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q8/ansi_encoder/rules.mk3
-rw-r--r--keyboards/keychron/q8/config.h10
-rw-r--r--keyboards/keychron/q8/iso/info.json2
-rw-r--r--keyboards/keychron/q8/iso/iso.c4
-rw-r--r--keyboards/keychron/q8/iso/rules.mk3
-rw-r--r--keyboards/keychron/q8/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/q8/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q8/iso_encoder/rules.mk3
-rw-r--r--keyboards/keychron/q9/ansi/ansi.c4
-rw-r--r--keyboards/keychron/q9/ansi/info.json2
-rw-r--r--keyboards/keychron/q9/ansi/rules.mk3
-rw-r--r--keyboards/keychron/q9/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/q9/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/q9/ansi_encoder/rules.mk3
-rw-r--r--keyboards/keychron/q9/config.h5
-rw-r--r--keyboards/keychron/q9/iso/info.json2
-rw-r--r--keyboards/keychron/q9/iso/iso.c4
-rw-r--r--keyboards/keychron/q9/iso/rules.mk3
-rw-r--r--keyboards/keychron/q9/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/q9/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/q9/iso_encoder/rules.mk3
-rwxr-xr-xkeyboards/keychron/q9_plus/ansi_encoder/ansi_encoder.c4
-rwxr-xr-xkeyboards/keychron/q9_plus/config.h5
-rwxr-xr-xkeyboards/keychron/q9_plus/info.json2
-rw-r--r--keyboards/keychron/s1/ansi/rgb/config.h10
-rw-r--r--keyboards/keychron/s1/ansi/rgb/info.json2
-rw-r--r--keyboards/keychron/s1/ansi/rgb/rgb.c4
-rw-r--r--keyboards/keychron/s1/ansi/rgb/rules.mk3
-rw-r--r--keyboards/keychron/s1/ansi/white/config.h8
-rw-r--r--keyboards/keychron/s1/ansi/white/info.json2
-rw-r--r--keyboards/keychron/s1/ansi/white/rules.mk3
-rw-r--r--keyboards/keychron/s1/ansi/white/white.c4
-rw-r--r--keyboards/keychron/v1/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v1/ansi/config.h2
-rw-r--r--keyboards/keychron/v1/ansi/info.json2
-rw-r--r--keyboards/keychron/v1/ansi/keymaps/vnmm/keymap.c54
-rw-r--r--keyboards/keychron/v1/ansi/keymaps/vnmm/readme.md10
-rw-r--r--keyboards/keychron/v1/ansi/rules.mk2
-rw-r--r--keyboards/keychron/v1/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v1/ansi_encoder/config.h2
-rw-r--r--keyboards/keychron/v1/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v1/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v1/config.h8
-rw-r--r--keyboards/keychron/v1/iso/config.h2
-rw-r--r--keyboards/keychron/v1/iso/info.json2
-rw-r--r--keyboards/keychron/v1/iso/iso.c4
-rw-r--r--keyboards/keychron/v1/iso/rules.mk2
-rw-r--r--keyboards/keychron/v1/iso_encoder/config.h2
-rw-r--r--keyboards/keychron/v1/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v1/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v1/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v1/jis/config.h7
-rw-r--r--keyboards/keychron/v1/jis/info.json2
-rw-r--r--keyboards/keychron/v1/jis/jis.c4
-rw-r--r--keyboards/keychron/v1/jis/rules.mk2
-rw-r--r--keyboards/keychron/v1/jis_encoder/config.h2
-rw-r--r--keyboards/keychron/v1/jis_encoder/info.json2
-rw-r--r--keyboards/keychron/v1/jis_encoder/jis_encoder.c4
-rw-r--r--keyboards/keychron/v1/jis_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v10/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v10/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v10/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v10/config.h10
-rw-r--r--keyboards/keychron/v10/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v10/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v10/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v2/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v2/ansi/config.h2
-rw-r--r--keyboards/keychron/v2/ansi/info.json2
-rw-r--r--keyboards/keychron/v2/ansi/keymaps/vnmm/keymap.c57
-rw-r--r--keyboards/keychron/v2/ansi/keymaps/vnmm/readme.md10
-rw-r--r--keyboards/keychron/v2/ansi/rules.mk3
-rw-r--r--keyboards/keychron/v2/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v2/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v2/ansi_encoder/rules.mk3
-rw-r--r--keyboards/keychron/v2/config.h8
-rw-r--r--keyboards/keychron/v2/iso/info.json2
-rw-r--r--keyboards/keychron/v2/iso/iso.c4
-rw-r--r--keyboards/keychron/v2/iso/rules.mk3
-rw-r--r--keyboards/keychron/v2/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v2/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v2/iso_encoder/rules.mk3
-rw-r--r--keyboards/keychron/v2/jis/config.h2
-rw-r--r--keyboards/keychron/v2/jis/info.json2
-rw-r--r--keyboards/keychron/v2/jis/jis.c4
-rw-r--r--keyboards/keychron/v2/jis/rules.mk3
-rw-r--r--keyboards/keychron/v2/jis_encoder/config.h2
-rw-r--r--keyboards/keychron/v2/jis_encoder/info.json2
-rw-r--r--keyboards/keychron/v2/jis_encoder/jis_encoder.c4
-rw-r--r--keyboards/keychron/v2/jis_encoder/rules.mk3
-rw-r--r--keyboards/keychron/v3/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v3/ansi/config.h2
-rw-r--r--keyboards/keychron/v3/ansi/info.json2
-rw-r--r--keyboards/keychron/v3/ansi/rules.mk3
-rw-r--r--keyboards/keychron/v3/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v3/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/keymap.c77
-rw-r--r--keyboards/keychron/v3/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v3/config.h8
-rw-r--r--keyboards/keychron/v3/iso/info.json2
-rw-r--r--keyboards/keychron/v3/iso/iso.c4
-rw-r--r--keyboards/keychron/v3/iso/rules.mk3
-rw-r--r--keyboards/keychron/v3/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v3/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v3/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v3/jis/config.h2
-rw-r--r--keyboards/keychron/v3/jis/info.json2
-rw-r--r--keyboards/keychron/v3/jis/jis.c4
-rw-r--r--keyboards/keychron/v3/jis/rules.mk3
-rw-r--r--keyboards/keychron/v3/jis_encoder/config.h2
-rw-r--r--keyboards/keychron/v3/jis_encoder/info.json2
-rw-r--r--keyboards/keychron/v3/jis_encoder/jis_encoder.c4
-rw-r--r--keyboards/keychron/v3/jis_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v4/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v4/ansi/info.json2
-rw-r--r--keyboards/keychron/v4/ansi/rules.mk3
-rw-r--r--keyboards/keychron/v4/config.h5
-rw-r--r--keyboards/keychron/v4/iso/info.json2
-rw-r--r--keyboards/keychron/v4/iso/iso.c4
-rw-r--r--keyboards/keychron/v4/iso/rules.mk3
-rw-r--r--keyboards/keychron/v5/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v5/ansi/info.json2
-rw-r--r--keyboards/keychron/v5/ansi/rules.mk2
-rw-r--r--keyboards/keychron/v5/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v5/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v5/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v5/config.h7
-rw-r--r--keyboards/keychron/v5/iso/info.json2
-rw-r--r--keyboards/keychron/v5/iso/iso.c4
-rw-r--r--keyboards/keychron/v5/iso/rules.mk2
-rw-r--r--keyboards/keychron/v5/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v5/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v5/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v6/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v6/ansi/info.json2
-rw-r--r--keyboards/keychron/v6/ansi/rules.mk2
-rw-r--r--keyboards/keychron/v6/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v6/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v6/ansi_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v6/config.h7
-rw-r--r--keyboards/keychron/v6/iso/info.json2
-rw-r--r--keyboards/keychron/v6/iso/iso.c4
-rw-r--r--keyboards/keychron/v6/iso/rules.mk2
-rw-r--r--keyboards/keychron/v6/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v6/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v6/iso_encoder/rules.mk2
-rw-r--r--keyboards/keychron/v7/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v7/ansi/info.json2
-rw-r--r--keyboards/keychron/v7/ansi/rules.mk3
-rw-r--r--keyboards/keychron/v7/config.h10
-rw-r--r--keyboards/keychron/v7/iso/info.json2
-rw-r--r--keyboards/keychron/v7/iso/iso.c4
-rw-r--r--keyboards/keychron/v7/iso/rules.mk3
-rw-r--r--keyboards/keychron/v8/ansi/ansi.c4
-rw-r--r--keyboards/keychron/v8/ansi/info.json2
-rw-r--r--keyboards/keychron/v8/ansi/rules.mk3
-rw-r--r--keyboards/keychron/v8/ansi_encoder/ansi_encoder.c4
-rw-r--r--keyboards/keychron/v8/ansi_encoder/info.json2
-rw-r--r--keyboards/keychron/v8/ansi_encoder/rules.mk3
-rw-r--r--keyboards/keychron/v8/config.h10
-rw-r--r--keyboards/keychron/v8/iso/info.json2
-rw-r--r--keyboards/keychron/v8/iso/iso.c4
-rw-r--r--keyboards/keychron/v8/iso/rules.mk3
-rw-r--r--keyboards/keychron/v8/iso_encoder/info.json2
-rw-r--r--keyboards/keychron/v8/iso_encoder/iso_encoder.c4
-rw-r--r--keyboards/keychron/v8/iso_encoder/rules.mk3
-rwxr-xr-xkeyboards/keyhive/honeycomb/rules.mk2
-rw-r--r--keyboards/keyhive/navi10/keymaps/devdev/config.h35
-rw-r--r--keyboards/keyhive/navi10/keymaps/devdev/keymap.c263
-rw-r--r--keyboards/keyhive/navi10/keymaps/devdev/rules.mk2
-rw-r--r--keyboards/keyhive/ut472/keymaps/hvp/config.h19
-rw-r--r--keyboards/keyhive/ut472/keymaps/hvp/keymap.c67
-rw-r--r--keyboards/keyhive/ut472/keymaps/hvp/readme.md10
-rw-r--r--keyboards/keyhive/ut472/keymaps/hvp/rules.mk1
-rw-r--r--keyboards/kikoslab/kl90/config.h21
-rw-r--r--keyboards/kinesis/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/kinesis/keymaps/ericgebhart/readme.md5
-rw-r--r--keyboards/kinesis/keymaps/ericgebhart/rules.mk15
-rw-r--r--keyboards/kingly_keys/ave/ortho/keymaps/default/keymap.c4
-rw-r--r--keyboards/kingly_keys/ave/staggered/keymaps/default/keymap.c4
-rw-r--r--keyboards/kingly_keys/little_foot/keymaps/yanfali/config.h10
-rw-r--r--keyboards/kingly_keys/little_foot/keymaps/yanfali/keymap.c40
-rw-r--r--keyboards/kingly_keys/little_foot/keymaps/yanfali/rules.mk4
-rw-r--r--keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c67
-rw-r--r--keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk8
-rw-r--r--keyboards/kingly_keys/romac/keymaps/jarred/keymap.c37
-rw-r--r--keyboards/kingly_keys/romac/keymaps/stanrc85/config.h17
-rw-r--r--keyboards/kingly_keys/romac/keymaps/stanrc85/keymap.c78
-rw-r--r--keyboards/kingly_keys/romac/keymaps/stanrc85/rules.mk3
-rw-r--r--keyboards/kiwikey/wanderland/keymaps/stanrc85/config.h18
-rw-r--r--keyboards/kiwikey/wanderland/keymaps/stanrc85/keymap.c87
-rw-r--r--keyboards/kiwikey/wanderland/keymaps/stanrc85/rules.mk1
-rw-r--r--keyboards/knobgoblin/keymaps/moults31/keymap.c171
-rw-r--r--keyboards/knobgoblin/keymaps/moults31/readme.md3
-rw-r--r--keyboards/knobgoblin/keymaps/moults31/rules.mk3
-rw-r--r--keyboards/knops/mini/keymaps/mverteuil/config.h25
-rw-r--r--keyboards/knops/mini/keymaps/mverteuil/keymap.c306
-rw-r--r--keyboards/knops/mini/keymaps/mverteuil/readme.md1
-rw-r--r--keyboards/knops/mini/keymaps/mverteuil/rules.mk6
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/config.h74
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/rules.mk19
-rw-r--r--keyboards/kprepublic/bm40hsrgb/readme.md8
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/config.h (renamed from keyboards/kprepublic/bm40hsrgb/config.h)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/info.json (renamed from keyboards/kprepublic/bm40hsrgb/info.json)0
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/keymaps/default/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/default/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/default/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/config.h (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h)0
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/keymap.c)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/rules.mk (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/rules.mk)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/config.h (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt/config.h)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt/keymap.c)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/rules.mk (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt/rules.mk)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/config.h (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/config.h)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/keymap.c)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/rules.mk (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/rules.mk)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/config.h (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/config.h)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/keymap.c)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/rules.mk (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/rules.mk)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/via/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/rules.mk (renamed from keyboards/durgod/k320/keymaps/moults31/rules.mk)0
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/keymaps/wolff_abnt2/keymap.c (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c)0
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/keymaps/wolff_abnt2/readme.md (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/readme.md)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev1/readme.md21
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/rev1.c (renamed from keyboards/kprepublic/bm40hsrgb/bm40hsrgb.c)0
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev1/rules.mk (renamed from keyboards/kprepublic/bm40hsrgb/rules.mk)0
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev2/config.h21
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev2/info.json197
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/keymap.c101
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/rules.mk (renamed from keyboards/clickety_split/leeloo/keymaps/default/rules.mk)0
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/keymap.c100
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/rules.mk3
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev2/readme.md29
-rwxr-xr-xkeyboards/kprepublic/bm40hsrgb/rev2/rev2.c73
-rw-r--r--keyboards/kprepublic/bm40hsrgb/rev2/rules.mk0
-rw-r--r--keyboards/kprepublic/bm60hsrgb/rev2/config.h7
-rw-r--r--keyboards/kprepublic/bm60hsrgb/rev2/rev2.c20
-rw-r--r--keyboards/kprepublic/bm60hsrgb/rev2/rules.mk2
-rw-r--r--keyboards/kprepublic/bm60hsrgb_ec/rev2/config.h3
-rw-r--r--keyboards/kprepublic/bm60hsrgb_ec/rev2/rev2.c2
-rw-r--r--keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h7
-rw-r--r--keyboards/kprepublic/bm60hsrgb_iso/rev2/rev2.c20
-rw-r--r--keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk2
-rw-r--r--keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h7
-rw-r--r--keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c20
-rw-r--r--keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk2
-rw-r--r--keyboards/kprepublic/bm68hsrgb/rev2/config.h3
-rw-r--r--keyboards/kprepublic/bm68hsrgb/rev2/rev2.c2
-rw-r--r--keyboards/kprepublic/bm80v2/bm80v2.c2
-rw-r--r--keyboards/kprepublic/bm80v2/config.h3
-rw-r--r--keyboards/kprepublic/bm80v2_iso/bm80v2_iso.c2
-rw-r--r--keyboards/kprepublic/bm80v2_iso/config.h3
-rw-r--r--keyboards/kprepublic/cstc40/config.h1
-rw-r--r--keyboards/kprepublic/jj40/keymaps/ajp10304/readme.md126
-rw-r--r--keyboards/ktec/ergodone/keymaps/art/.gitignore1
-rw-r--r--keyboards/ktec/ergodone/keymaps/art/keymap.c453
-rw-r--r--keyboards/ktec/ergodone/keymaps/art/rules.mk1
-rw-r--r--keyboards/ktec/ergodone/keymaps/art/user_config.c.example6
-rw-r--r--keyboards/ktec/ergodone/rules.mk2
-rw-r--r--keyboards/latincompass/latin17rgb/config.h12
-rw-r--r--keyboards/latincompass/latin17rgb/latin17rgb.c2
-rw-r--r--keyboards/latincompass/latin60rgb/config.h3
-rw-r--r--keyboards/latincompass/latin60rgb/latin60rgb.c2
-rw-r--r--keyboards/latincompass/latin6rgb/config.h10
-rw-r--r--keyboards/latincompass/latin6rgb/latin6rgb.c2
-rw-r--r--keyboards/lazydesigners/dimple/staggered/keymaps/tominabox1/keymap.c110
-rw-r--r--keyboards/lets_split/keymaps/hvp/config.h45
-rw-r--r--keyboards/lets_split/keymaps/hvp/keymap.c65
-rw-r--r--keyboards/lets_split/keymaps/hvp/readme.md10
-rw-r--r--keyboards/lets_split/keymaps/hvp/rules.mk2
-rw-r--r--keyboards/lets_split/keymaps/pdl/config.h31
-rw-r--r--keyboards/lets_split/keymaps/pdl/keymap.c69
-rw-r--r--keyboards/lets_split/keymaps/pdl/rules.mk1
-rw-r--r--keyboards/lets_split/keymaps/zer09/config.h51
-rw-r--r--keyboards/lets_split/keymaps/zer09/keymap.c76
-rw-r--r--keyboards/lets_split/keymaps/zer09/rules.mk3
-rw-r--r--keyboards/lfkeyboards/TWIlib.c296
-rw-r--r--keyboards/lfkeyboards/TWIlib.h71
-rw-r--r--keyboards/lfkeyboards/issi.c244
-rw-r--r--keyboards/lfkeyboards/issi.h39
-rw-r--r--keyboards/lfkeyboards/lfk65_hs/config.h2
-rw-r--r--keyboards/lfkeyboards/lfk65_hs/info.json22
-rw-r--r--keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c5
-rw-r--r--keyboards/lfkeyboards/lfk65_hs/lfk65_hs.h3
-rw-r--r--keyboards/lfkeyboards/lfk65_hs/rules.mk2
-rw-r--r--keyboards/lfkeyboards/lfk78/config.h2
-rw-r--r--keyboards/lfkeyboards/lfk78/keymaps/ca178858/keymap.c19
-rw-r--r--keyboards/lfkeyboards/lfk78/keymaps/ca178858/rules.mk33
-rw-r--r--keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c10
-rw-r--r--keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c10
-rw-r--r--keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/keymap.c10
-rw-r--r--keyboards/lfkeyboards/lfk78/lfk78.c113
-rw-r--r--keyboards/lfkeyboards/lfk78/lfk78.h15
-rw-r--r--keyboards/lfkeyboards/lfk78/post_rules.mk11
-rw-r--r--keyboards/lfkeyboards/lfk78/revb/info.json24
-rw-r--r--keyboards/lfkeyboards/lfk78/revb/revb.c19
-rw-r--r--keyboards/lfkeyboards/lfk78/revc/info.json24
-rw-r--r--keyboards/lfkeyboards/lfk78/revc/revc.c14
-rw-r--r--keyboards/lfkeyboards/lfk78/revj/info.json24
-rw-r--r--keyboards/lfkeyboards/lfk78/revj/revj.c14
-rw-r--r--keyboards/lfkeyboards/lfk78/rules.mk6
-rw-r--r--keyboards/lfkeyboards/lfk87/config.h2
-rw-r--r--keyboards/lfkeyboards/lfk87/info.json10
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/ca178858/keymap.c11
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/ca178858/rules.mk15
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c10
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/default/rules.mk12
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/gbchk/keymap.c10
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/gbchk/rules.mk15
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c10
-rw-r--r--keyboards/lfkeyboards/lfk87/keymaps/iso/rules.mk13
-rw-r--r--keyboards/lfkeyboards/lfk87/lfk87.c98
-rw-r--r--keyboards/lfkeyboards/lfk87/lfk87.h19
-rw-r--r--keyboards/lfkeyboards/lfk87/post_rules.mk4
-rw-r--r--keyboards/lfkeyboards/lfk87/reva/info.json16
-rw-r--r--keyboards/lfkeyboards/lfk87/reva/reva.c16
-rw-r--r--keyboards/lfkeyboards/lfk87/revc/info.json16
-rw-r--r--keyboards/lfkeyboards/lfk87/revc/revc.c17
-rw-r--r--keyboards/lfkeyboards/lfk87/rules.mk8
-rw-r--r--keyboards/lfkeyboards/lfkpad/info.json20
-rw-r--r--keyboards/lfkeyboards/lfkpad/keymaps/pascalpfeil/keymap.c15
-rw-r--r--keyboards/lfkeyboards/lfkpad/lfkpad.c52
-rw-r--r--keyboards/lfkeyboards/lfkpad/post_rules.mk4
-rw-r--r--keyboards/lfkeyboards/lfkpad/rules.mk7
-rw-r--r--keyboards/lfkeyboards/lighting.c158
-rw-r--r--keyboards/lfkeyboards/lighting.h49
-rw-r--r--keyboards/lfkeyboards/mini1800/config.h2
-rw-r--r--keyboards/lfkeyboards/mini1800/info.json24
-rw-r--r--keyboards/lfkeyboards/mini1800/keymaps/ca178858/keymap.c10
-rw-r--r--keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c10
-rw-r--r--keyboards/lfkeyboards/mini1800/mini1800.c111
-rw-r--r--keyboards/lfkeyboards/mini1800/mini1800.h18
-rw-r--r--keyboards/lfkeyboards/mini1800/reva/post_rules.mk4
-rw-r--r--keyboards/lfkeyboards/mini1800/reva/rules.mk8
-rw-r--r--keyboards/lfkeyboards/mini1800/revc/post_rules.mk4
-rw-r--r--keyboards/lfkeyboards/mini1800/revc/rules.mk8
-rw-r--r--keyboards/lfkeyboards/smk65/keymaps/default/rules.mk8
-rw-r--r--keyboards/lfkeyboards/smk65/keymaps/iso/rules.mk8
-rw-r--r--keyboards/lfkeyboards/smk65/post_rules.mk4
-rw-r--r--keyboards/lfkeyboards/smk65/revb/config.h2
-rw-r--r--keyboards/lfkeyboards/smk65/revb/info.json23
-rw-r--r--keyboards/lfkeyboards/smk65/revb/revb.c37
-rw-r--r--keyboards/lfkeyboards/smk65/revb/revb.h17
-rw-r--r--keyboards/lfkeyboards/smk65/revb/rules.mk9
-rw-r--r--keyboards/lfkeyboards/smk65/revf/info.json4
-rw-r--r--keyboards/lfkeyboards/smk65/revf/rules.mk4
-rw-r--r--keyboards/lily58/keymaps/bcat/config.h21
-rw-r--r--keyboards/lily58/keymaps/bcat/keymap.c74
-rw-r--r--keyboards/lily58/keymaps/bcat/readme.md42
-rw-r--r--keyboards/lily58/keymaps/bcat/rules.mk3
-rw-r--r--keyboards/lily58/keymaps/curry/config.h21
-rw-r--r--keyboards/lily58/keymaps/curry/keymap.c77
-rw-r--r--keyboards/lily58/keymaps/curry/rules.mk16
-rw-r--r--keyboards/lily58/keymaps/hvp/config.h59
-rw-r--r--keyboards/lily58/keymaps/hvp/keymap.c124
-rw-r--r--keyboards/lily58/keymaps/hvp/readme.md10
-rw-r--r--keyboards/lily58/keymaps/hvp/rules.mk13
-rw-r--r--keyboards/lily58/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/lily58/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/lily58/keymaps/muppetjones/README.md13
-rw-r--r--keyboards/lily58/keymaps/muppetjones/config.h41
-rw-r--r--keyboards/lily58/keymaps/muppetjones/features/bongo_cat.c127
-rw-r--r--keyboards/lily58/keymaps/muppetjones/features/bongo_cat.h14
-rw-r--r--keyboards/lily58/keymaps/muppetjones/keymap.c240
-rw-r--r--keyboards/lily58/keymaps/muppetjones/rules.mk17
-rw-r--r--keyboards/lily58/keymaps/narze/config.h62
-rw-r--r--keyboards/lily58/keymaps/narze/keymap.c468
-rw-r--r--keyboards/lily58/keymaps/narze/readme.md13
-rw-r--r--keyboards/lily58/keymaps/narze/rules.mk13
-rw-r--r--keyboards/lily58/keymaps/ninjonas/README.md134
-rw-r--r--keyboards/lily58/keymaps/ninjonas/config.h32
-rw-r--r--keyboards/lily58/keymaps/ninjonas/keymap.c196
-rw-r--r--keyboards/lily58/keymaps/ninjonas/rules.mk2
-rw-r--r--keyboards/lime/keymaps/default/rules.mk2
-rw-r--r--keyboards/lime/rev1/config.h5
-rw-r--r--keyboards/lime/rev1/info.json5
-rw-r--r--keyboards/magic_force/mf17/config.h (renamed from keyboards/soda/mango/config.h)0
-rw-r--r--keyboards/magic_force/mf17/info.json124
-rwxr-xr-xkeyboards/magic_force/mf17/keymaps/default/keymap.c (renamed from keyboards/soda/mango/keymaps/default/keymap.c)0
-rwxr-xr-xkeyboards/magic_force/mf17/keymaps/via/keymap.c (renamed from keyboards/soda/mango/keymaps/via/keymap.c)0
-rw-r--r--keyboards/magic_force/mf17/keymaps/via/rules.mk (renamed from keyboards/keychron/q1/ansi/keymaps/via/rules.mk)0
-rw-r--r--keyboards/magic_force/mf17/readme.md22
-rw-r--r--keyboards/magic_force/mf17/rules.mk1
-rw-r--r--keyboards/magic_force/mf34/chconf.h (renamed from keyboards/soda/pocket/chconf.h)0
-rw-r--r--keyboards/magic_force/mf34/config.h (renamed from keyboards/soda/pocket/config.h)0
-rw-r--r--keyboards/magic_force/mf34/info.json78
-rwxr-xr-xkeyboards/magic_force/mf34/keymaps/default/keymap.c (renamed from keyboards/soda/pocket/keymaps/default/keymap.c)0
-rwxr-xr-xkeyboards/magic_force/mf34/keymaps/via/keymap.c (renamed from keyboards/soda/pocket/keymaps/via/keymap.c)0
-rw-r--r--keyboards/magic_force/mf34/keymaps/via/rules.mk (renamed from keyboards/keychron/q1/iso/keymaps/via/rules.mk)0
-rw-r--r--keyboards/magic_force/mf34/mcuconf.h (renamed from keyboards/soda/pocket/mcuconf.h)0
-rw-r--r--keyboards/magic_force/mf34/mf34.c (renamed from keyboards/soda/pocket/pocket.c)0
-rw-r--r--keyboards/magic_force/mf34/readme.md23
-rw-r--r--keyboards/magic_force/mf34/rules.mk (renamed from keyboards/soda/pocket/rules.mk)0
-rw-r--r--keyboards/manyboard/macro/keymaps/default/keymap.c6
-rw-r--r--keyboards/manyboard/macro/keymaps/via/keymap.c6
-rw-r--r--keyboards/maple_computing/c39/keymaps/kuchosauronad0/config.h34
-rw-r--r--keyboards/maple_computing/c39/keymaps/kuchosauronad0/keymap.c131
-rw-r--r--keyboards/maple_computing/c39/keymaps/kuchosauronad0/readme.md10
-rw-r--r--keyboards/maple_computing/c39/keymaps/kuchosauronad0/rules.mk20
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h30
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c213
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md31
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk13
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/drashna/config.h40
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c107
-rw-r--r--keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk7
-rw-r--r--keyboards/maple_computing/lets_split_eh/keymaps/romus/README.md7
-rw-r--r--keyboards/maple_computing/lets_split_eh/keymaps/romus/keymap.c28
-rw-r--r--keyboards/maple_computing/lets_split_eh/keymaps/romus/rules.mk7
-rw-r--r--keyboards/massdrop/alt/keymaps/charlesrocket/config.h19
-rw-r--r--keyboards/massdrop/alt/keymaps/charlesrocket/keymap.c279
-rw-r--r--keyboards/massdrop/alt/keymaps/charlesrocket/rules.mk3
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins/config.h23
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins/keymap.c500
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins/rgb_matrix.h94
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins/rules.mk17
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins_ss/config.h20
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins_ss/keymap.c279
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins_ss/rgb_matrix.h94
-rw-r--r--keyboards/massdrop/alt/keymaps/jdelkins_ss/rules.mk12
-rw-r--r--keyboards/massdrop/alt/keymaps/xulkal/config.h23
-rw-r--r--keyboards/massdrop/alt/keymaps/xulkal/keymap.c79
-rw-r--r--keyboards/massdrop/alt/keymaps/xulkal/rules.mk1
-rw-r--r--keyboards/massdrop/ctrl/keymaps/xulkal/config.h23
-rw-r--r--keyboards/massdrop/ctrl/keymaps/xulkal/keymap.c92
-rw-r--r--keyboards/massdrop/ctrl/keymaps/xulkal/rules.mk1
-rw-r--r--keyboards/matchstickworks/southpad/info.json48
-rw-r--r--keyboards/matchstickworks/southpad/keymaps/default/keymap.c27
-rw-r--r--keyboards/matchstickworks/southpad/readme.md23
-rw-r--r--keyboards/matchstickworks/southpad/rev1/info.json55
-rw-r--r--keyboards/matchstickworks/southpad/rev1/keymaps/default/keymap.c27
-rw-r--r--keyboards/matchstickworks/southpad/rev1/readme.md23
-rw-r--r--keyboards/matchstickworks/southpad/rev1/rules.mk0
-rw-r--r--keyboards/matchstickworks/southpad/rev2/info.json55
-rw-r--r--keyboards/matchstickworks/southpad/rev2/keymaps/default/keymap.c25
-rw-r--r--keyboards/matchstickworks/southpad/rev2/keymaps/via/keymap.c26
-rw-r--r--keyboards/matchstickworks/southpad/rev2/keymaps/via/rules.mk (renamed from keyboards/keychron/v1/ansi/keymaps/vnmm/rules.mk)0
-rw-r--r--keyboards/matchstickworks/southpad/rev2/readme.md23
-rw-r--r--keyboards/matchstickworks/southpad/rev2/rules.mk0
-rw-r--r--keyboards/matchstickworks/southpad/rules.mk12
-rw-r--r--keyboards/matrix/abelx/abelx.c9
-rw-r--r--keyboards/matrix/abelx/rules.mk2
-rw-r--r--keyboards/matrix/m20add/config.h5
-rw-r--r--keyboards/matrix/m20add/m20add.c8
-rw-r--r--keyboards/matrix/m20add/rgb_ring.c14
-rw-r--r--keyboards/matrix/m20add/rules.mk2
-rw-r--r--keyboards/matrix/noah/config.h5
-rw-r--r--keyboards/matrix/noah/noah.c4
-rw-r--r--keyboards/mechkeys/alu84/keymaps/turbomech/config.h20
-rw-r--r--keyboards/mechkeys/alu84/keymaps/turbomech/keymap.c88
-rw-r--r--keyboards/mechkeys/alu84/keymaps/turbomech/readme.md93
-rw-r--r--keyboards/mechkeys/alu84/keymaps/turbomech/rules.mk2
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/arkag/config.h23
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/arkag/keymap.c63
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/arkag/rules.mk14
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/config.h3
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/keymap.c139
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/readme.md5
-rw-r--r--keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/rules.mk22
-rw-r--r--keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h30
-rw-r--r--keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c271
-rw-r--r--keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md1
-rw-r--r--keyboards/mechlovin/adelais/rgb_led/rev2/config.h12
-rw-r--r--keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c2
-rw-r--r--keyboards/mechlovin/adelais/rgb_led/rev3/config.h12
-rw-r--r--keyboards/mechlovin/adelais/rgb_led/rev3/rev3.c2
-rw-r--r--keyboards/mechlovin/delphine/rgb_led/config.h11
-rw-r--r--keyboards/mechlovin/delphine/rgb_led/rgb_led.c2
-rw-r--r--keyboards/mechlovin/hannah60rgb/rev2/config.h13
-rw-r--r--keyboards/mechlovin/hannah60rgb/rev2/rev2.c2
-rw-r--r--keyboards/mechlovin/hex6c/config.h3
-rw-r--r--keyboards/mechlovin/hex6c/info.json5
-rw-r--r--keyboards/mechlovin/infinity87/rgb_rev1/config.h10
-rw-r--r--keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c2
-rw-r--r--keyboards/mechlovin/kanu/keymaps/dhertz/keymap.c62
-rw-r--r--keyboards/mechlovin/olly/octagon/config.h10
-rw-r--r--keyboards/mechlovin/olly/octagon/octagon.c2
-rw-r--r--keyboards/mechlovin/zed60/config.h2
-rw-r--r--keyboards/mechlovin/zed65/910/config.h2
-rw-r--r--keyboards/mechlovin/zed65/mono_led/config.h10
-rw-r--r--keyboards/mechlovin/zed65/mono_led/mono_led.c2
-rw-r--r--keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h2
-rw-r--r--keyboards/mechlovin/zed65/rev1/config.h2
-rw-r--r--keyboards/mechwild/bbs/config.h4
-rw-r--r--keyboards/mechwild/bbs/info.json3
-rw-r--r--keyboards/mechwild/bbs/keymaps/default/keymap.c1
-rw-r--r--keyboards/mechwild/bde/rev2/keymaps/miketronic/config.h10
-rw-r--r--keyboards/mechwild/bde/rev2/keymaps/miketronic/keymap.c221
-rw-r--r--keyboards/mechwild/bde/rev2/keymaps/miketronic/rules.mk12
-rw-r--r--keyboards/mechwild/clunker/config.h16
-rw-r--r--keyboards/mechwild/clunker/info.json654
-rw-r--r--keyboards/mechwild/clunker/keymaps/default/keymap.c8
-rw-r--r--keyboards/mechwild/clunker/keymaps/via/keymap.c8
-rw-r--r--keyboards/mechwild/mercutio/keymaps/jonavin/config.h29
-rwxr-xr-xkeyboards/mechwild/mercutio/keymaps/jonavin/keymap.c268
-rw-r--r--keyboards/mechwild/mercutio/keymaps/jonavin/readme.md62
-rw-r--r--keyboards/mechwild/mercutio/keymaps/jonavin/rules.mk8
-rw-r--r--keyboards/mechwild/mokulua/mirrored/config.h4
-rw-r--r--keyboards/mechwild/mokulua/mirrored/info.json10
-rw-r--r--keyboards/mechwild/mokulua/standard/config.h4
-rw-r--r--keyboards/mechwild/mokulua/standard/info.json10
-rw-r--r--keyboards/mechwild/murphpad/keymaps/jonavin/config.h26
-rw-r--r--keyboards/mechwild/murphpad/keymaps/jonavin/keymap.c424
-rw-r--r--keyboards/mechwild/murphpad/keymaps/jonavin/layout_landscape.h43
-rw-r--r--keyboards/mechwild/murphpad/keymaps/jonavin/readme.md76
-rw-r--r--keyboards/mechwild/murphpad/keymaps/jonavin/rules.mk5
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/config.h39
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/keymap.c119
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/readme.md54
-rw-r--r--keyboards/mechwild/obe/keymaps/jonavin/rules.mk14
-rw-r--r--keyboards/mechwild/puckbuddy/config.h3
-rw-r--r--keyboards/mechwild/puckbuddy/info.json3
-rw-r--r--keyboards/mechwild/sugarglider/config.h5
-rw-r--r--keyboards/mechwild/sugarglider/info.json6
-rw-r--r--keyboards/mechwild/sugarglider/keymaps/default/keymap.c1
-rw-r--r--keyboards/mechwild/sugarglider/rules.mk2
-rwxr-xr-xkeyboards/melgeek/mach80/config.h3
-rwxr-xr-xkeyboards/melgeek/mach80/rev1/rev1.c8
-rwxr-xr-xkeyboards/melgeek/mach80/rev2/rev2.c8
-rw-r--r--keyboards/melgeek/mj61/config.h3
-rw-r--r--keyboards/melgeek/mj61/rev1/rev1.c2
-rw-r--r--keyboards/melgeek/mj61/rev2/rev2.c2
-rw-r--r--keyboards/melgeek/mj63/config.h3
-rw-r--r--keyboards/melgeek/mj63/rev1/rev1.c2
-rw-r--r--keyboards/melgeek/mj63/rev2/rev2.c2
-rw-r--r--keyboards/melgeek/mj64/config.h3
-rw-r--r--keyboards/melgeek/mj64/rev1/rev1.c2
-rw-r--r--keyboards/melgeek/mj64/rev2/rev2.c2
-rw-r--r--keyboards/melgeek/mj64/rev3/rev3.c2
-rw-r--r--keyboards/melgeek/mj65/config.h3
-rw-r--r--keyboards/melgeek/mj65/rev3/rev3.c2
-rwxr-xr-xkeyboards/melgeek/mojo68/config.h3
-rwxr-xr-xkeyboards/melgeek/mojo68/rev1/rev1.c8
-rw-r--r--keyboards/melgeek/mojo75/config.h3
-rw-r--r--keyboards/melgeek/mojo75/rev1/rev1.c2
-rwxr-xr-xkeyboards/melgeek/tegic/config.h3
-rwxr-xr-xkeyboards/melgeek/tegic/rev1/rev1.c2
-rw-r--r--keyboards/melgeek/z70ultra/config.h3
-rw-r--r--keyboards/melgeek/z70ultra/z70ultra.c8
-rw-r--r--keyboards/miiiw/blackio83/blackio83.c21
-rw-r--r--keyboards/miiiw/blackio83/info.json3
-rw-r--r--keyboards/miiiw/blackio83/rev_0100/config.h13
-rw-r--r--keyboards/miller/gm862/config.h3
-rw-r--r--keyboards/miller/gm862/gm862.c2
-rw-r--r--keyboards/miniaxe/keymaps/wanleg/config.h11
-rw-r--r--keyboards/miniaxe/keymaps/wanleg/keymap.c49
-rw-r--r--keyboards/miniaxe/keymaps/wanleg/rules.mk18
-rw-r--r--keyboards/minimacro5/keymaps/devdev/keymap.c124
-rw-r--r--keyboards/minimacro5/keymaps/devdev/rules.mk2
-rw-r--r--keyboards/misterknife/knife66/keymaps/zyber/keymap.c40
-rw-r--r--keyboards/mitosis/keymaps/datagrok/config.h57
-rw-r--r--keyboards/mitosis/keymaps/datagrok/keymap.c237
-rw-r--r--keyboards/mitosis/keymaps/datagrok/readme.md274
-rw-r--r--keyboards/mitosis/keymaps/datagrok/rules.mk34
-rw-r--r--keyboards/mitosis/rules.mk2
-rw-r--r--keyboards/mlego/m60_split/rev1/config.h4
-rw-r--r--keyboards/mlego/m60_split/rev1/info.json6
-rw-r--r--keyboards/mlego/m60_split/rev2/config.h4
-rw-r--r--keyboards/mlego/m60_split/rev2/info.json6
-rw-r--r--keyboards/mlego/m65/config.h21
-rw-r--r--keyboards/mlego/m65/info.json84
-rw-r--r--keyboards/mlego/m65/keymaps/default/config.h18
-rw-r--r--keyboards/mlego/m65/keymaps/default/keymap.c94
-rw-r--r--keyboards/mlego/m65/keymaps/default/rules.mk1
-rw-r--r--keyboards/mlego/m65/keymaps/dk/config.h20
-rw-r--r--keyboards/mlego/m65/keymaps/dk/keymap.c121
-rw-r--r--keyboards/mlego/m65/keymaps/dk/readme.md13
-rw-r--r--keyboards/mlego/m65/keymaps/uk/config.h27
-rw-r--r--keyboards/mlego/m65/keymaps/uk/keymap.c308
-rw-r--r--keyboards/mlego/m65/keymaps/uk/rules.mk1
-rw-r--r--keyboards/mlego/m65/keymaps/via/config.h20
-rw-r--r--keyboards/mlego/m65/keymaps/via/keymap.c118
-rw-r--r--keyboards/mlego/m65/lib/glcdfont.c233
-rw-r--r--keyboards/mlego/m65/m65.c249
-rw-r--r--keyboards/mlego/m65/m65.h165
-rw-r--r--keyboards/mlego/m65/readme.md2
-rw-r--r--keyboards/mlego/m65/rev1/config.h21
-rw-r--r--keyboards/mlego/m65/rev1/info.json130
-rw-r--r--keyboards/mlego/m65/rev1/mcuconf.h22
-rw-r--r--keyboards/mlego/m65/rev1/rules.mk14
-rw-r--r--keyboards/mlego/m65/rev2/board.h17
-rw-r--r--keyboards/mlego/m65/rev2/config.h21
-rw-r--r--keyboards/mlego/m65/rev2/info.json129
-rw-r--r--keyboards/mlego/m65/rev2/mcuconf.h22
-rw-r--r--keyboards/mlego/m65/rev2/rules.mk14
-rw-r--r--keyboards/mlego/m65/rev3/config.h21
-rw-r--r--keyboards/mlego/m65/rev3/halconf.h22
-rw-r--r--keyboards/mlego/m65/rev3/info.json131
-rw-r--r--keyboards/mlego/m65/rev3/mcuconf.h22
-rw-r--r--keyboards/mlego/m65/rev3/rules.mk14
-rw-r--r--keyboards/mlego/m65/rev4/config.h30
-rw-r--r--keyboards/mlego/m65/rev4/halconf.h22
-rw-r--r--keyboards/mlego/m65/rev4/info.json133
-rw-r--r--keyboards/mlego/m65/rev4/mcuconf.h22
-rw-r--r--keyboards/mlego/m65/rev4/rules.mk15
-rw-r--r--keyboards/mode/m65ha_alpha/info.json3
-rw-r--r--keyboards/mode/m65ha_alpha/rules.mk2
-rw-r--r--keyboards/mode/m65hi_alpha/info.json3
-rw-r--r--keyboards/mode/m65hi_alpha/rules.mk2
-rw-r--r--keyboards/mode/m65s/info.json3
-rw-r--r--keyboards/mode/m65s/rules.mk2
-rw-r--r--keyboards/mode/m75h/config.h21
-rw-r--r--keyboards/mode/m75h/info.json5
-rw-r--r--keyboards/mode/m75s/config.h3
-rw-r--r--keyboards/mode/m75s/info.json5
-rwxr-xr-xkeyboards/molecule/rules.mk2
-rw-r--r--keyboards/monsgeek/m1/config.h9
-rw-r--r--keyboards/monsgeek/m1/info.json12
-rw-r--r--keyboards/monsgeek/m1/m1.c4
-rw-r--r--keyboards/monsgeek/m1/rules.mk7
-rw-r--r--keyboards/monsgeek/m3/config.h6
-rw-r--r--keyboards/monsgeek/m3/info.json9
-rw-r--r--keyboards/monsgeek/m3/m3.c2
-rw-r--r--keyboards/monsgeek/m3/rules.mk3
-rw-r--r--keyboards/monsgeek/m5/config.h9
-rw-r--r--keyboards/monsgeek/m5/info.json12
-rw-r--r--keyboards/monsgeek/m5/m5.c4
-rw-r--r--keyboards/monsgeek/m5/rules.mk3
-rw-r--r--keyboards/monsgeek/m6/config.h9
-rw-r--r--keyboards/monsgeek/m6/info.json12
-rw-r--r--keyboards/monsgeek/m6/m6.c4
-rw-r--r--keyboards/monsgeek/m6/rules.mk3
-rw-r--r--keyboards/montsinger/rebound/rev1/keymaps/curry/config.h7
-rw-r--r--keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c71
-rw-r--r--keyboards/montsinger/rebound/rev1/keymaps/curry/rules.mk1
-rw-r--r--keyboards/montsinger/rebound/rev2/keymaps/rossman360/keymap.c57
-rw-r--r--keyboards/montsinger/rebound/rev3/keymaps/rossman360/keymap.c113
-rw-r--r--keyboards/montsinger/rebound/rev3/keymaps/rossman360/rules.mk4
-rw-r--r--keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/readme.md5
-rw-r--r--keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk18
-rw-r--r--keyboards/montsinger/rebound/rev4/keymaps/rossman360/keymap.c122
-rw-r--r--keyboards/montsinger/rebound/rev4/keymaps/rossman360/rules.mk4
-rw-r--r--keyboards/montsinger/rewind/keymaps/rossman360/keymap.c56
-rw-r--r--keyboards/moon/rules.mk2
-rw-r--r--keyboards/moonlander/config.h9
-rw-r--r--keyboards/moonlander/info.json11
-rw-r--r--keyboards/moonlander/keymaps/default/keymap.c6
-rw-r--r--keyboards/moonlander/keymaps/drashna/config.h27
-rw-r--r--keyboards/moonlander/keymaps/drashna/keymap.c198
-rw-r--r--keyboards/moonlander/keymaps/drashna/rules.mk8
-rw-r--r--keyboards/moonlander/keymaps/jjerrell/config.h26
-rw-r--r--keyboards/moonlander/keymaps/jjerrell/keymap.c117
-rw-r--r--keyboards/moonlander/keymaps/jjerrell/readme.md3
-rw-r--r--keyboards/moonlander/keymaps/jjerrell/rules.mk1
-rw-r--r--keyboards/moonlander/keymaps/manna-harbour_miryoku/config.h23
-rw-r--r--keyboards/moonlander/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/moonlander/keymaps/via/keymap.c16
-rw-r--r--keyboards/moonlander/moonlander.c2
-rw-r--r--keyboards/moonlander/rules.mk3
-rw-r--r--keyboards/mt/mt64rgb/config.h3
-rw-r--r--keyboards/mt/mt64rgb/mt64rgb.c2
-rw-r--r--keyboards/mt/mt84/config.h7
-rw-r--r--keyboards/mt/mt84/mt84.c2
-rw-r--r--keyboards/mt/split75/keymaps/art/.gitignore1
-rw-r--r--keyboards/mt/split75/keymaps/art/config.h19
-rw-r--r--keyboards/mt/split75/keymaps/art/keymap.c263
-rw-r--r--keyboards/mt/split75/keymaps/art/rules.mk3
-rw-r--r--keyboards/mt/split75/keymaps/art/user_config.c.example6
-rw-r--r--keyboards/mt/split75/rules.mk2
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/config.h36
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap.c103
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap_stuff.h323
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/cool_diagonal.c22
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/custom_gradient.c74
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/diagonal.c22
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/kitt.c68
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.c25
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.h45
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/random_breath_rainbow.c55
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/readme.md11
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rgb_matrix_user.inc17
-rw-r--r--keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rules.mk6
-rw-r--r--keyboards/mxss/config.h3
-rw-r--r--keyboards/mxss/info.json9
-rw-r--r--keyboards/mxss/keymaps/default/keymap.c17
-rw-r--r--keyboards/mxss/keymaps/via/keymap.c3
-rw-r--r--keyboards/mxss/mxss.c73
-rw-r--r--keyboards/mxss/mxss_frontled.c278
-rw-r--r--keyboards/mxss/mxss_frontled.h87
-rw-r--r--keyboards/mxss/readme.md34
-rw-r--r--keyboards/mxss/rgblight.c1392
-rw-r--r--keyboards/mxss/rules.mk23
-rw-r--r--keyboards/mxss/templates/keymap.c35
-rw-r--r--keyboards/nack/config.h2
-rw-r--r--keyboards/nacly/splitreus62/keymaps/scheiklp/config.h53
-rw-r--r--keyboards/nacly/splitreus62/keymaps/scheiklp/keymap.c56
-rw-r--r--keyboards/nacly/splitreus62/keymaps/scheiklp/rules.mk9
-rwxr-xr-xkeyboards/neopad/rev1/rev1.c6
-rw-r--r--keyboards/neson_design/700e/700e.c51
-rw-r--r--keyboards/neson_design/700e/config.h7
-rw-r--r--keyboards/neson_design/700e/rules.mk3
-rw-r--r--keyboards/neson_design/n6/config.h7
-rw-r--r--keyboards/neson_design/n6/n6.c41
-rw-r--r--keyboards/neson_design/n6/rules.mk3
-rw-r--r--keyboards/neson_design/nico/nico.c4
-rw-r--r--keyboards/nightmare/keymaps/brandonschlack/keymap.c195
-rw-r--r--keyboards/nightmare/keymaps/brandonschlack/readme.md20
-rw-r--r--keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/config.h31
-rw-r--r--keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/keymap.c67
-rw-r--r--keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/readme.md54
-rw-r--r--keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/rules.mk11
-rw-r--r--keyboards/novelkeys/nk1/config.h21
-rwxr-xr-xkeyboards/novelkeys/nk65/config.h5
-rwxr-xr-xkeyboards/novelkeys/nk65/nk65.c140
-rwxr-xr-xkeyboards/novelkeys/nk65/rules.mk4
-rwxr-xr-xkeyboards/novelkeys/nk87/config.h5
-rwxr-xr-xkeyboards/novelkeys/nk87/nk87.c140
-rwxr-xr-xkeyboards/novelkeys/nk87/rules.mk4
-rwxr-xr-xkeyboards/novelkeys/nk_plus/info.json1
-rw-r--r--keyboards/novelkeys/nk_plus/rules.mk5
-rw-r--r--keyboards/nullbitsco/nibble/rules.mk2
-rw-r--r--keyboards/nullbitsco/snap/config.h3
-rw-r--r--keyboards/nullbitsco/snap/info.json5
-rw-r--r--keyboards/nullbitsco/snap/rules.mk4
-rw-r--r--keyboards/nullbitsco/tidbit/rules.mk4
-rw-r--r--keyboards/oddforge/vea/rules.mk2
-rw-r--r--keyboards/oddforge/vea/ws2812_custom.c6
-rw-r--r--keyboards/omkbd/ergodash/rev1/keymaps/333fred/config.h28
-rw-r--r--keyboards/omkbd/ergodash/rev1/keymaps/333fred/keymap.c79
-rw-r--r--keyboards/omkbd/ergodash/rev1/keymaps/333fred/rules.mk5
-rw-r--r--keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/config.h62
-rw-r--r--keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/keymap.c157
-rw-r--r--keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/rules.mk23
-rw-r--r--keyboards/omkbd/ergodash/rev1/rev1.c32
-rw-r--r--keyboards/onekeyco/dango40/config.h21
-rw-r--r--keyboards/onekeyco/dango40/info.json3
-rw-r--r--keyboards/opendeck/32/rev1/config.h3
-rw-r--r--keyboards/opendeck/32/rev1/rev1.c2
-rw-r--r--keyboards/org60/keymaps/jarred/keymap.c25
-rw-r--r--keyboards/orthodox/keymaps/drashna/README.md24
-rw-r--r--keyboards/orthodox/keymaps/drashna/config.h80
-rw-r--r--keyboards/orthodox/keymaps/drashna/keymap.c70
-rw-r--r--keyboards/orthodox/keymaps/drashna/rules.mk16
-rw-r--r--keyboards/orthodox/keymaps/pdl/config.h29
-rw-r--r--keyboards/orthodox/keymaps/pdl/keymap.c68
-rw-r--r--keyboards/orthodox/keymaps/pdl/rules.mk1
-rw-r--r--keyboards/owlab/voice65/hotswap/config.h3
-rw-r--r--keyboards/owlab/voice65/hotswap/hotswap.c2
-rw-r--r--keyboards/owlab/voice65/soldered/config.h3
-rw-r--r--keyboards/owlab/voice65/soldered/soldered.c2
-rw-r--r--keyboards/pearlboards/pandora/config.h2
-rw-r--r--keyboards/pearlboards/pandora/info.json3
-rw-r--r--keyboards/percent/canoe/keymaps/dhertz/keymap.c62
-rw-r--r--keyboards/phage_studio/pila87/keymaps/horrortroll/keymap.c115
-rw-r--r--keyboards/phage_studio/pila87/rules.mk4
-rw-r--r--keyboards/phentech/rpk_001/config.h2
-rw-r--r--keyboards/phentech/rpk_001/info.json7
-rw-r--r--keyboards/phentech/rpk_001/rules.mk2
-rw-r--r--keyboards/phoenix/config.h1
-rw-r--r--keyboards/phoenix/halconf.h2
-rw-r--r--keyboards/pinky/3/keymaps/ninjonas/README.md113
-rw-r--r--keyboards/pinky/3/keymaps/ninjonas/config.h29
-rw-r--r--keyboards/pinky/3/keymaps/ninjonas/keymap.c111
-rw-r--r--keyboards/pinky/3/keymaps/ninjonas/rules.mk2
-rw-r--r--keyboards/planck/ez/config.h3
-rw-r--r--keyboards/planck/ez/ez.c2
-rw-r--r--keyboards/planck/keymaps/ajp10304/readme.md126
-rw-r--r--keyboards/planck/keymaps/altgr/common/init.h26
-rw-r--r--keyboards/planck/keymaps/altgr/keymap.c3
-rw-r--r--keyboards/planck/keymaps/badger/keymap.c60
-rw-r--r--keyboards/planck/keymaps/bghull/keymap.c1
-rw-r--r--keyboards/planck/keymaps/charlesrocket/config.h35
-rw-r--r--keyboards/planck/keymaps/charlesrocket/keymap.c205
-rw-r--r--keyboards/planck/keymaps/charlesrocket/readme.md55
-rw-r--r--keyboards/planck/keymaps/charlesrocket/rules.mk8
-rw-r--r--keyboards/planck/keymaps/circuit/keymap.c38
-rw-r--r--keyboards/planck/keymaps/csc027/config.h21
-rw-r--r--keyboards/planck/keymaps/csc027/keymap.c79
-rw-r--r--keyboards/planck/keymaps/csc027/rules.mk8
-rw-r--r--keyboards/planck/keymaps/dbroqua/keymap.c38
-rw-r--r--keyboards/planck/keymaps/dcompact/keymap.c1
-rw-r--r--keyboards/planck/keymaps/dr_notsokind/keymap.c42
-rw-r--r--keyboards/planck/keymaps/dshields/config.h4
-rw-r--r--keyboards/planck/keymaps/dshields/keymap.c30
-rw-r--r--keyboards/planck/keymaps/dshields/readme.md12
-rw-r--r--keyboards/planck/keymaps/dudeofawesome/config.h41
-rw-r--r--keyboards/planck/keymaps/dudeofawesome/keymap.c233
-rw-r--r--keyboards/planck/keymaps/dudeofawesome/readme.md22
-rw-r--r--keyboards/planck/keymaps/dudeofawesome/rules.mk7
-rw-r--r--keyboards/planck/keymaps/emilyh/keymap.c38
-rw-r--r--keyboards/planck/keymaps/experimental/keymap.c38
-rw-r--r--keyboards/planck/keymaps/gunp/keymap.c23
-rw-r--r--keyboards/planck/keymaps/handwired_binaryplease/keymap.c37
-rw-r--r--keyboards/planck/keymaps/hiea/common/init.h26
-rw-r--r--keyboards/planck/keymaps/hiea/keymap.c3
-rw-r--r--keyboards/planck/keymaps/hieax/common/init.h25
-rw-r--r--keyboards/planck/keymaps/hieax/keymap.c3
-rw-r--r--keyboards/planck/keymaps/hvp/config.h35
-rw-r--r--keyboards/planck/keymaps/hvp/keymap.c186
-rw-r--r--keyboards/planck/keymaps/hvp/readme.md10
-rw-r--r--keyboards/planck/keymaps/hvp/rules.mk4
-rw-r--r--keyboards/planck/keymaps/impossible/keymap.c40
-rwxr-xr-xkeyboards/planck/keymaps/ishtob/config.h34
-rw-r--r--keyboards/planck/keymaps/ishtob/keymap.c344
-rw-r--r--keyboards/planck/keymaps/ishtob/readme.md16
-rw-r--r--keyboards/planck/keymaps/ishtob/rules.mk18
-rw-r--r--keyboards/planck/keymaps/jdelkins/config.h61
-rw-r--r--keyboards/planck/keymaps/jdelkins/keymap.c506
-rw-r--r--keyboards/planck/keymaps/jdelkins/readme.md13
-rw-r--r--keyboards/planck/keymaps/jdelkins/rules.mk4
-rw-r--r--keyboards/planck/keymaps/jhenahan/keymap.c38
-rw-r--r--keyboards/planck/keymaps/kuatsure/config.h33
-rw-r--r--keyboards/planck/keymaps/kuatsure/keymap.c318
-rw-r--r--keyboards/planck/keymaps/kuatsure/readme.md1
-rw-r--r--keyboards/planck/keymaps/kuatsure/rules.mk6
-rw-r--r--keyboards/planck/keymaps/lae3/keymap.c46
-rw-r--r--keyboards/planck/keymaps/mattly/config.h39
-rw-r--r--keyboards/planck/keymaps/mattly/keymap.c34
-rw-r--r--keyboards/planck/keymaps/mattly/readme.md1
-rw-r--r--keyboards/planck/keymaps/mattly/rules.mk2
-rw-r--r--keyboards/planck/keymaps/mjt/keymap.c38
-rw-r--r--keyboards/planck/keymaps/mjtnumsym/keymap.c38
-rw-r--r--keyboards/planck/keymaps/mnil/config.h23
-rw-r--r--keyboards/planck/keymaps/mnil/keymap.c60
-rw-r--r--keyboards/planck/keymaps/mnil/readme.md2
-rw-r--r--keyboards/planck/keymaps/muppetjones/.clang-format26
-rw-r--r--keyboards/planck/keymaps/muppetjones/config.h53
-rw-r--r--keyboards/planck/keymaps/muppetjones/keymap.c403
-rw-r--r--keyboards/planck/keymaps/muppetjones/readme.md2
-rw-r--r--keyboards/planck/keymaps/muppetjones/rules.mk5
-rw-r--r--keyboards/planck/keymaps/narze/config.h43
-rw-r--r--keyboards/planck/keymaps/narze/keymap.c367
-rw-r--r--keyboards/planck/keymaps/narze/readme.md17
-rw-r--r--keyboards/planck/keymaps/narze/rules.mk25
-rw-r--r--keyboards/planck/keymaps/not-quite-neo/config.h6
-rw-r--r--keyboards/planck/keymaps/not-quite-neo/keymap.c129
-rw-r--r--keyboards/planck/keymaps/not-quite-neo/readme.md5
-rw-r--r--keyboards/planck/keymaps/not-quite-neo/rules.mk24
-rw-r--r--keyboards/planck/keymaps/originerd/keymap.c38
-rw-r--r--keyboards/planck/keymaps/peterfalken/config.h49
-rw-r--r--keyboards/planck/keymaps/peterfalken/keymap.c80
-rw-r--r--keyboards/planck/keymaps/peterfalken/readme.md14
-rw-r--r--keyboards/planck/keymaps/peterfalken/rules.mk8
-rw-r--r--keyboards/planck/keymaps/premek/keymap.c38
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/.gitignore3
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/config.h12
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/keymap.c4
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/readme.md82
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/rules.mk6
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/enums.h23
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c25
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h27
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/normal.h96
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h63
-rw-r--r--keyboards/planck/keymaps/prog_qgmlwb/src/special.h43
-rw-r--r--keyboards/planck/keymaps/roguepullrequest/keymap.c13
-rw-r--r--keyboards/planck/keymaps/sascha/rules.mk1
-rw-r--r--keyboards/planck/keymaps/sdothum/common/init.h26
-rw-r--r--keyboards/planck/keymaps/sdothum/keymap.c3
-rw-r--r--keyboards/planck/keymaps/sgoodwin/keymap.c38
-rw-r--r--keyboards/planck/keymaps/sigul/config.h36
-rw-r--r--keyboards/planck/keymaps/sigul/keymap.c222
-rw-r--r--keyboards/planck/keymaps/sigul/readme.md32
-rw-r--r--keyboards/planck/keymaps/sigul/rules.mk1
-rw-r--r--keyboards/planck/keymaps/smt/keymap.c38
-rw-r--r--keyboards/planck/keymaps/spacebarracecar/config.h5
-rw-r--r--keyboards/planck/keymaps/spacebarracecar/keymap.c160
-rw-r--r--keyboards/planck/keymaps/spacebarracecar/readme.md5
-rw-r--r--keyboards/planck/keymaps/spacebarracecar/rules.mk22
-rw-r--r--keyboards/planck/keymaps/steno/keymap.c1
-rw-r--r--keyboards/planck/keymaps/that_canadian/keymap.c38
-rw-r--r--keyboards/planck/keymaps/vaire/keymap.c68
-rw-r--r--keyboards/planck/keymaps/yttyx/keymap.c1
-rw-r--r--keyboards/planck/keymaps/zach/zach_common_functions.c30
-rw-r--r--keyboards/planck/light/config.h12
-rw-r--r--keyboards/planck/light/light.c2
-rw-r--r--keyboards/planck/rev6/config.h2
-rw-r--r--keyboards/planck/rev6/info.json3
-rw-r--r--keyboards/planck/rev6_drop/config.h3
-rw-r--r--keyboards/planck/rev6_drop/info.json3
-rw-r--r--keyboards/planck/rev7/config.h3
-rw-r--r--keyboards/planck/rev7/info.json3
-rw-r--r--keyboards/planck/rev7/keymaps/peterfalken/config.h49
-rw-r--r--keyboards/planck/rev7/keymaps/peterfalken/keymap.c80
-rw-r--r--keyboards/planck/rev7/keymaps/peterfalken/readme.md14
-rw-r--r--keyboards/planck/rev7/keymaps/peterfalken/rules.mk4
-rw-r--r--keyboards/planck/thk/config.h2
-rw-r--r--keyboards/planck/thk/info.json3
-rw-r--r--keyboards/playkbtw/ca66/keymaps/zyber/keymap.c21
-rw-r--r--keyboards/playkbtw/ca66/keymaps/zyber/rules.mk1
-rw-r--r--keyboards/playkbtw/pk64rgb/config.h3
-rw-r--r--keyboards/playkbtw/pk64rgb/pk64rgb.c2
-rw-r--r--keyboards/ploopyco/mouse/keymaps/drashna/config.h31
-rw-r--r--keyboards/ploopyco/mouse/keymaps/drashna/keymap.c48
-rw-r--r--keyboards/ploopyco/mouse/keymaps/drashna/rules.mk6
-rw-r--r--keyboards/ploopyco/mouse/keymaps/uqs/keymap.c36
-rw-r--r--keyboards/ploopyco/mouse/keymaps/uqs/rules.mk1
-rw-r--r--keyboards/ploopyco/mouse/rules.mk3
-rw-r--r--keyboards/ploopyco/trackball/rules.mk3
-rw-r--r--keyboards/ploopyco/trackball_mini/rules.mk3
-rw-r--r--keyboards/ploopyco/trackball_thumb/rules.mk3
-rw-r--r--keyboards/pluckey/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/pluckey/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/plywrks/ply8x/config.h2
-rw-r--r--keyboards/preonic/keymaps/0xdec/keymap.c27
-rw-r--r--keyboards/preonic/keymaps/arkag/config.h30
-rw-r--r--keyboards/preonic/keymaps/arkag/keymap.c84
-rw-r--r--keyboards/preonic/keymaps/arkag/readme.md1
-rw-r--r--keyboards/preonic/keymaps/arkag/rules.mk17
-rw-r--r--keyboards/preonic/keymaps/badger/keymap.c74
-rw-r--r--keyboards/preonic/keymaps/badger/readme.md21
-rw-r--r--keyboards/preonic/keymaps/bghull/keymap.c1
-rw-r--r--keyboards/preonic/keymaps/bucktooth/keymap.c44
-rw-r--r--keyboards/preonic/keymaps/dudeofawesome/config.h43
-rw-r--r--keyboards/preonic/keymaps/dudeofawesome/keymap.c292
-rw-r--r--keyboards/preonic/keymaps/dudeofawesome/readme.md22
-rw-r--r--keyboards/preonic/keymaps/dudeofawesome/rules.mk5
-rw-r--r--keyboards/preonic/keymaps/jacwib/keymap.c46
-rw-r--r--keyboards/preonic/keymaps/kuatsure/config.h39
-rw-r--r--keyboards/preonic/keymaps/kuatsure/keymap.c190
-rw-r--r--keyboards/preonic/keymaps/kuatsure/readme.md1
-rw-r--r--keyboards/preonic/keymaps/kuatsure/rules.mk2
-rw-r--r--keyboards/preonic/keymaps/mguterl/config.h34
-rw-r--r--keyboards/preonic/keymaps/mguterl/keymap.c325
-rw-r--r--keyboards/preonic/keymaps/mguterl/readme.md18
-rw-r--r--keyboards/preonic/keymaps/mguterl/rules.mk1
-rw-r--r--keyboards/preonic/keymaps/mverteuil/config.h36
-rw-r--r--keyboards/preonic/keymaps/mverteuil/keymap.c510
-rw-r--r--keyboards/preonic/keymaps/mverteuil/readme.md2
-rw-r--r--keyboards/preonic/keymaps/mverteuil/rules.mk5
-rw-r--r--keyboards/preonic/keymaps/mverteuil_2x2u/config.h36
-rw-r--r--keyboards/preonic/keymaps/mverteuil_2x2u/keymap.c415
-rw-r--r--keyboards/preonic/keymaps/mverteuil_2x2u/rules.mk6
-rw-r--r--keyboards/preonic/keymaps/nikchi/keymap.c44
-rw-r--r--keyboards/preonic/keymaps/peterfalken/config.h49
-rw-r--r--keyboards/preonic/keymaps/peterfalken/keymap.c92
-rw-r--r--keyboards/preonic/keymaps/peterfalken/readme.md14
-rw-r--r--keyboards/preonic/keymaps/peterfalken/rules.mk8
-rw-r--r--keyboards/preonic/keymaps/rmeli/config.h45
-rw-r--r--keyboards/preonic/keymaps/rmeli/keymap.c231
-rw-r--r--keyboards/preonic/keymaps/rmeli/readme.md1
-rw-r--r--keyboards/preonic/keymaps/rmeli/rules.mk12
-rw-r--r--keyboards/preonic/keymaps/smt/keymap.c44
-rw-r--r--keyboards/preonic/keymaps/that_canadian/keymap.c44
-rw-r--r--keyboards/preonic/keymaps/uqs/keymap.c117
-rw-r--r--keyboards/preonic/keymaps/uqs/rules.mk14
-rw-r--r--keyboards/preonic/keymaps/xulkal/keymap.c150
-rw-r--r--keyboards/preonic/keymaps/xulkal/rules.mk6
-rw-r--r--keyboards/preonic/keymaps/zach/zach_common_functions.c28
-rw-r--r--keyboards/preonic/rev3/config.h2
-rw-r--r--keyboards/preonic/rev3/info.json3
-rw-r--r--keyboards/preonic/rev3_drop/config.h2
-rw-r--r--keyboards/preonic/rev3_drop/info.json3
-rw-r--r--keyboards/primekb/meridian/config.h2
-rw-r--r--keyboards/primekb/meridian/ws2812/config.h2
-rw-r--r--keyboards/primekb/prime_e/config.h2
-rw-r--r--keyboards/primekb/prime_e/info.json3
-rw-r--r--keyboards/primekb/prime_e/keymaps/brandonschlack/config.h30
-rw-r--r--keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c95
-rw-r--r--keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk2
-rw-r--r--keyboards/primekb/prime_e/keymaps/talljoe/config.h33
-rw-r--r--keyboards/primekb/prime_e/keymaps/talljoe/keymap.c1
-rw-r--r--keyboards/primekb/prime_o/keymaps/spacebarracecar/config.h1
-rw-r--r--keyboards/primekb/prime_o/keymaps/spacebarracecar/keymap.c172
-rw-r--r--keyboards/primekb/prime_o/keymaps/spacebarracecar/readme.md6
-rw-r--r--keyboards/primekb/prime_o/keymaps/spacebarracecar/rules.mk22
-rw-r--r--keyboards/projectd/65/projectd_65_ansi/config.h8
-rw-r--r--keyboards/projectd/65/projectd_65_ansi/info.json9
-rw-r--r--keyboards/projectd/65/projectd_65_ansi/projectd_65_ansi.c4
-rw-r--r--keyboards/projectd/65/projectd_65_ansi/rules.mk3
-rw-r--r--keyboards/projectd/75/ansi/config.h2
-rw-r--r--keyboards/projectd/75/ansi/info.json10
-rw-r--r--keyboards/projectd/75/ansi/rules.mk2
-rw-r--r--keyboards/projectkb/alice/keymaps/stanrc85/keymap.c58
-rw-r--r--keyboards/projectkb/alice/rev1/config.h2
-rw-r--r--keyboards/projectkb/alice/rev2/config.h2
-rw-r--r--keyboards/prototypist/j01/keymaps/zyber/keymap.c40
-rw-r--r--keyboards/pteron36/config.h3
-rw-r--r--keyboards/pteron36/info.json3
-rw-r--r--keyboards/qvex/lynepad2/config.h2
-rw-r--r--keyboards/qvex/lynepad2/info.json3
-rw-r--r--keyboards/qwertykeys/qk100/ansi/config.h1
-rw-r--r--keyboards/rart/rartlice/config.h2
-rw-r--r--keyboards/redox_w/keymaps/danielo515/config.h5
-rw-r--r--keyboards/redox_w/keymaps/danielo515/keymap.c178
-rw-r--r--keyboards/redox_w/keymaps/danielo515/readme.md2
-rw-r--r--keyboards/redox_w/keymaps/danielo515/rules.mk6
-rw-r--r--keyboards/redox_w/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/redox_w/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/redox_w/rules.mk2
-rw-r--r--keyboards/redragon/k667/config.h5
-rw-r--r--keyboards/redragon/k667/k667.c2
-rw-r--r--keyboards/rgbkb/mun/config.h6
-rw-r--r--keyboards/rgbkb/mun/keymaps/default/config.h2
-rw-r--r--keyboards/rgbkb/mun/keymaps/via/config.h2
-rw-r--r--keyboards/rgbkb/mun/rev1/info.json14
-rw-r--r--keyboards/rgbkb/mun/rules.mk2
-rw-r--r--keyboards/rgbkb/pan/pan.c2
-rw-r--r--keyboards/rgbkb/sol/keymaps/kageurufu/keymap.c98
-rw-r--r--keyboards/rgbkb/sol/keymaps/kageurufu/rules.mk19
-rw-r--r--keyboards/rgbkb/sol/keymaps/xulkal/config.h33
-rw-r--r--keyboards/rgbkb/sol/keymaps/xulkal/keymap.c78
-rw-r--r--keyboards/rgbkb/sol/keymaps/xulkal/rules.mk24
-rw-r--r--keyboards/rgbkb/sol3/config.h10
-rw-r--r--keyboards/rgbkb/sol3/keymaps/default/config.h3
-rw-r--r--keyboards/rgbkb/sol3/keymaps/kageurufu/config.h30
-rw-r--r--keyboards/rgbkb/sol3/keymaps/kageurufu/keymap.c69
-rw-r--r--keyboards/rgbkb/sol3/keymaps/via/config.h3
-rw-r--r--keyboards/rgbkb/sol3/rev1/info.json20
-rw-r--r--keyboards/rgbkb/sol3/rules.mk2
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/333fred/config.h47
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/333fred/keymap.c145
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/333fred/rules.mk4
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/cwebster2/config.h20
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/cwebster2/keymap.c116
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/cwebster2/rules.mk2
-rw-r--r--keyboards/rgbkb/zen/rev1/keymaps/kageurufu/keymap.c62
-rw-r--r--keyboards/rgbkb/zygomorph/keymaps/kageurufu/config.h24
-rw-r--r--keyboards/rgbkb/zygomorph/keymaps/kageurufu/keymap.c85
-rw-r--r--keyboards/rgbkb/zygomorph/keymaps/kageurufu/readme.md132
-rw-r--r--keyboards/rgbkb/zygomorph/keymaps/kageurufu/rules.mk39
-rw-r--r--keyboards/rgbkb/zygomorph/keymaps/xulkal/keymap.c69
-rw-r--r--keyboards/rgbkb/zygomorph/keymaps/xulkal/rules.mk42
-rw-r--r--keyboards/riot_pad/config.h2
-rw-r--r--keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h9
-rw-r--r--keyboards/salicylic_acid3/naked48/keymaps/scheiklp/keymap.c68
-rw-r--r--keyboards/salicylic_acid3/naked48/keymaps/scheiklp/readme.md37
-rw-r--r--keyboards/salicylic_acid3/naked48/keymaps/scheiklp/rules.mk5
-rw-r--r--keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h24
-rw-r--r--keyboards/salicylic_acid3/naked60/keymaps/333fred/keymap.c75
-rw-r--r--keyboards/satt/comet46/rules.mk2
-rw-r--r--keyboards/satt/vision/keymaps/manna-harbour_miryoku/config.h21
-rw-r--r--keyboards/satt/vision/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/sawnsprojects/okayu/stm32f072/config.h2
-rw-r--r--keyboards/sawnsprojects/okayu/stm32f103/config.h2
-rw-r--r--keyboards/sawnsprojects/okayu/stm32f303/config.h2
-rw-r--r--keyboards/scottokeebs/scotto34/keymaps/scotto/config.h23
-rw-r--r--keyboards/scottokeebs/scotto34/keymaps/scotto/keymap.c246
-rw-r--r--keyboards/scottokeebs/scotto34/keymaps/scotto/rules.mk1
-rw-r--r--keyboards/sekigon/grs_70ec/rules.mk4
-rw-r--r--keyboards/shapeshifter4060/keymaps/vosechu/keymap.c53
-rw-r--r--keyboards/shapeshifter4060/keymaps/vosechu/readme.md82
-rw-r--r--keyboards/sirius/uni660/rev1/config.h2
-rw-r--r--keyboards/sirius/uni660/rev1/rules.mk2
-rw-r--r--keyboards/sirius/uni660/rev2/ansi/config.h2
-rw-r--r--keyboards/sirius/uni660/rev2/iso/config.h2
-rw-r--r--keyboards/sirius/uni660/rev2/rules.mk2
-rw-r--r--keyboards/skyloong/gk61/pro/config.h19
-rw-r--r--keyboards/skyloong/gk61/pro/halconf.h7
-rw-r--r--keyboards/skyloong/gk61/pro/info.json338
-rw-r--r--keyboards/skyloong/gk61/pro/keymaps/default/keymap.c44
-rw-r--r--keyboards/skyloong/gk61/pro/keymaps/default/rules.mk1
-rw-r--r--keyboards/skyloong/gk61/pro/keymaps/via/keymap.c67
-rw-r--r--keyboards/skyloong/gk61/pro/keymaps/via/rules.mk (renamed from keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/rules.mk)0
-rw-r--r--keyboards/skyloong/gk61/pro/mcuconf.h11
-rw-r--r--keyboards/skyloong/gk61/pro/pro.c235
-rw-r--r--keyboards/skyloong/gk61/pro/readme.md33
-rw-r--r--keyboards/skyloong/gk61/pro/rules.mk1
-rw-r--r--keyboards/skyloong/gk61/pro_48/config.h16
-rw-r--r--keyboards/skyloong/gk61/pro_48/halconf.h7
-rw-r--r--keyboards/skyloong/gk61/pro_48/info.json338
-rw-r--r--keyboards/skyloong/gk61/pro_48/keymaps/default/keymap.c44
-rw-r--r--keyboards/skyloong/gk61/pro_48/keymaps/default/rules.mk1
-rw-r--r--keyboards/skyloong/gk61/pro_48/keymaps/via/keymap.c68
-rw-r--r--keyboards/skyloong/gk61/pro_48/keymaps/via/rules.mk (renamed from keyboards/rgbkb/sol3/keymaps/kageurufu/rules.mk)0
-rw-r--r--keyboards/skyloong/gk61/pro_48/mcuconf.h11
-rw-r--r--keyboards/skyloong/gk61/pro_48/pro_48.c227
-rw-r--r--keyboards/skyloong/gk61/pro_48/readme.md33
-rw-r--r--keyboards/skyloong/gk61/pro_48/rules.mk1
-rw-r--r--keyboards/skyloong/gk61/v1/config.h25
-rw-r--r--keyboards/skyloong/gk61/v1/halconf.h21
-rw-r--r--keyboards/skyloong/gk61/v1/info.json331
-rw-r--r--keyboards/skyloong/gk61/v1/keymaps/default/keymap.c47
-rw-r--r--keyboards/skyloong/gk61/v1/keymaps/via/keymap.c47
-rw-r--r--keyboards/skyloong/gk61/v1/keymaps/via/rules.mk (renamed from keyboards/keychron/v2/ansi/keymaps/vnmm/rules.mk)0
-rw-r--r--keyboards/skyloong/gk61/v1/mcuconf.h21
-rw-r--r--keyboards/skyloong/gk61/v1/readme.md33
-rw-r--r--keyboards/skyloong/gk61/v1/rules.mk1
-rw-r--r--keyboards/skyloong/gk61/v1/v1.c119
-rw-r--r--keyboards/skyloong/qk21/v1/config.h12
-rw-r--r--keyboards/skyloong/qk21/v1/info.json129
-rw-r--r--keyboards/skyloong/qk21/v1/keymaps/default/keymap.c54
-rw-r--r--keyboards/skyloong/qk21/v1/keymaps/via/keymap.c54
-rw-r--r--keyboards/skyloong/qk21/v1/keymaps/via/rules.mk (renamed from keyboards/mlego/m65/keymaps/via/rules.mk)0
-rw-r--r--keyboards/skyloong/qk21/v1/readme.md27
-rw-r--r--keyboards/skyloong/qk21/v1/rules.mk1
-rw-r--r--keyboards/skyloong/qk21/v1/v1.c49
-rw-r--r--keyboards/smallkeyboard/config.h10
-rw-r--r--keyboards/smallkeyboard/smallkeyboard.c2
-rw-r--r--keyboards/smithrune/iron165r2/f411/info.json3
-rw-r--r--keyboards/smithrune/iron165r2/f411/rules.mk2
-rw-r--r--keyboards/snes_macropad/snes_macropad.c14
-rw-r--r--keyboards/soda/mango/info.json124
-rw-r--r--keyboards/soda/mango/readme.md23
-rw-r--r--keyboards/soda/pocket/info.json78
-rw-r--r--keyboards/soda/pocket/keymaps/via/rules.mk1
-rw-r--r--keyboards/soda/pocket/readme.md23
-rwxr-xr-xkeyboards/sofle/keyhive/config.h4
-rw-r--r--keyboards/sofle/keyhive/info.json7
-rw-r--r--keyboards/sofle/keymaps/devdev/config.h128
-rw-r--r--keyboards/sofle/keymaps/devdev/keymap.c573
-rw-r--r--keyboards/sofle/keymaps/devdev/rules.mk7
-rw-r--r--keyboards/sofle/keymaps/manna-harbour_miryoku/config.h22
-rw-r--r--keyboards/sofle/keymaps/manna-harbour_miryoku/keymap.c4
-rwxr-xr-xkeyboards/spaceholdings/nebula12/config.h6
-rwxr-xr-xkeyboards/spaceholdings/nebula12/nebula12.c31
-rwxr-xr-xkeyboards/spaceholdings/nebula12/rules.mk2
-rwxr-xr-xkeyboards/spaceholdings/nebula68/config.h5
-rwxr-xr-xkeyboards/spaceholdings/nebula68/nebula68.c144
-rwxr-xr-xkeyboards/spaceholdings/nebula68/rules.mk2
-rw-r--r--keyboards/spiderisland/split78/rules.mk2
-rw-r--r--keyboards/spleeb/config.h4
-rw-r--r--keyboards/spleeb/info.json7
-rw-r--r--keyboards/splitkb/aurora/corne/rev1/info.json1
-rw-r--r--keyboards/splitkb/aurora/helix/rev1/info.json1
-rw-r--r--keyboards/splitkb/aurora/lily58/rev1/info.json1
-rw-r--r--keyboards/splitkb/aurora/sofle_v2/rev1/info.json1
-rw-r--r--keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk1
-rw-r--r--keyboards/splitkb/aurora/sweep/rev1/info.json1
-rw-r--r--keyboards/splitkb/kyria/keymaps/cameronjlarsen/config.h47
-rw-r--r--keyboards/splitkb/kyria/keymaps/cameronjlarsen/keymap.c357
-rw-r--r--keyboards/splitkb/kyria/keymaps/cameronjlarsen/readme.md249
-rw-r--r--keyboards/splitkb/kyria/keymaps/cameronjlarsen/rules.mk12
-rw-r--r--keyboards/splitkb/kyria/keymaps/cjuniet/config.h46
-rw-r--r--keyboards/splitkb/kyria/keymaps/cjuniet/default.json33
-rw-r--r--keyboards/splitkb/kyria/keymaps/cjuniet/keymap.c121
-rw-r--r--keyboards/splitkb/kyria/keymaps/cjuniet/rules.mk6
-rw-r--r--keyboards/splitkb/kyria/keymaps/cwebster2/config.h48
-rw-r--r--keyboards/splitkb/kyria/keymaps/cwebster2/keymap.c411
-rw-r--r--keyboards/splitkb/kyria/keymaps/cwebster2/rules.mk5
-rw-r--r--keyboards/splitkb/kyria/keymaps/drashna/chconf.h24
-rw-r--r--keyboards/splitkb/kyria/keymaps/drashna/config.h90
-rw-r--r--keyboards/splitkb/kyria/keymaps/drashna/halconf.h24
-rw-r--r--keyboards/splitkb/kyria/keymaps/drashna/keymap.c229
-rw-r--r--keyboards/splitkb/kyria/keymaps/drashna/mcuconf.h35
-rw-r--r--keyboards/splitkb/kyria/keymaps/drashna/rules.mk40
-rwxr-xr-xkeyboards/splitkb/kyria/keymaps/ericgebhart/config.h25
-rw-r--r--keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk3
-rw-r--r--keyboards/splitkb/kyria/keymaps/gotham/rules.mk2
-rw-r--r--keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/config.h36
-rw-r--r--keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/splitkb/kyria/keymaps/muppetjones/.clang-format26
-rw-r--r--keyboards/splitkb/kyria/keymaps/muppetjones/README.md11
-rw-r--r--keyboards/splitkb/kyria/keymaps/muppetjones/config.h57
-rw-r--r--keyboards/splitkb/kyria/keymaps/muppetjones/keymap.c276
-rw-r--r--keyboards/splitkb/kyria/keymaps/muppetjones/rules.mk11
-rw-r--r--keyboards/splitkb/kyria/keymaps/ninjonas/README.md113
-rw-r--r--keyboards/splitkb/kyria/keymaps/ninjonas/config.h37
-rw-r--r--keyboards/splitkb/kyria/keymaps/ninjonas/keymap.c118
-rw-r--r--keyboards/splitkb/kyria/keymaps/ninjonas/oled.c210
-rw-r--r--keyboards/splitkb/kyria/keymaps/ninjonas/rules.mk6
-rw-r--r--keyboards/splitkb/kyria/keymaps/rmw/config.h43
-rw-r--r--keyboards/splitkb/kyria/keymaps/rmw/keymap.c160
-rw-r--r--keyboards/splitkb/kyria/keymaps/rmw/readme.md9
-rw-r--r--keyboards/splitkb/kyria/keymaps/rmw/rules.mk4
-rw-r--r--keyboards/splitkb/kyria/keymaps/uqs/config.h12
-rw-r--r--keyboards/splitkb/kyria/keymaps/uqs/keymap.c153
-rw-r--r--keyboards/splitkb/kyria/keymaps/uqs/rules.mk1
-rw-r--r--keyboards/splitkb/kyria/keymaps/zigotica/config.h43
-rw-r--r--keyboards/splitkb/kyria/keymaps/zigotica/keymap.c58
-rw-r--r--keyboards/splitkb/kyria/keymaps/zigotica/oled.c87
-rw-r--r--keyboards/splitkb/kyria/keymaps/zigotica/oled.h18
-rw-r--r--keyboards/splitkb/kyria/keymaps/zigotica/rules.mk10
-rw-r--r--keyboards/splitkb/kyria/rev3/info.json1
-rw-r--r--keyboards/splitkb/zima/keymaps/drashna/config.h37
-rw-r--r--keyboards/splitkb/zima/keymaps/drashna/keymap.c145
-rw-r--r--keyboards/splitkb/zima/keymaps/drashna/rules.mk3
-rw-r--r--keyboards/splitography/keymaps/default/keymap.c1
-rw-r--r--keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c1
-rw-r--r--keyboards/splitography/keymaps/dvorak/keymap.c1
-rw-r--r--keyboards/splitography/keymaps/jeandeaual/keymap.c1
-rw-r--r--keyboards/splitography/keymaps/multi/keymap.c1
-rw-r--r--keyboards/sporewoh/banime40/config.h20
-rw-r--r--keyboards/sporewoh/banime40/info.json3
-rw-r--r--keyboards/stenokeyboards/the_uni/keymaps/default/keymap.c1
-rw-r--r--keyboards/stenokeyboards/the_uni/keymaps/utility_belt/keymap.c1
-rw-r--r--keyboards/stront/config.h2
-rw-r--r--keyboards/stront/info.json9
-rw-r--r--keyboards/stront/rules.mk1
-rw-r--r--keyboards/studiokestra/line_friends_tkl/config.h (renamed from keyboards/studiokestra/line_tkl/config.h)0
-rw-r--r--keyboards/studiokestra/line_friends_tkl/info.json216
-rw-r--r--keyboards/studiokestra/line_friends_tkl/keymaps/default/keymap.c (renamed from keyboards/studiokestra/line_tkl/keymaps/default/keymap.c)0
-rw-r--r--keyboards/studiokestra/line_friends_tkl/keymaps/split_bs_rshift/keymap.c (renamed from keyboards/studiokestra/line_tkl/keymaps/split_bs_rshift/keymap.c)0
-rw-r--r--keyboards/studiokestra/line_friends_tkl/keymaps/via/keymap.c (renamed from keyboards/studiokestra/line_tkl/keymaps/via/keymap.c)0
-rw-r--r--keyboards/studiokestra/line_friends_tkl/keymaps/via/rules.mk (renamed from keyboards/soda/mango/keymaps/via/rules.mk)0
-rw-r--r--keyboards/studiokestra/line_friends_tkl/readme.md27
-rw-r--r--keyboards/studiokestra/line_friends_tkl/rules.mk1
-rw-r--r--keyboards/studiokestra/line_tkl/info.json216
-rw-r--r--keyboards/studiokestra/line_tkl/keymaps/via/rules.mk1
-rw-r--r--keyboards/studiokestra/line_tkl/readme.md27
-rw-r--r--keyboards/swiftrax/retropad/config.h21
-rw-r--r--keyboards/switchplate/southpaw_65/rules.mk2
-rwxr-xr-xkeyboards/sx60/rules.mk2
-rw-r--r--keyboards/system76/launch_1/keymaps/peterfalken/config.h43
-rw-r--r--keyboards/system76/launch_1/keymaps/peterfalken/keymap.c90
-rw-r--r--keyboards/system76/launch_1/keymaps/peterfalken/readme.md14
-rw-r--r--keyboards/system76/launch_1/rules.mk2
-rw-r--r--keyboards/tada68/keymaps/jarred/keymap.c39
-rw-r--r--keyboards/tada68/keymaps/jarred/readme.md9
-rw-r--r--keyboards/tada68/keymaps/jarred/rules.mk2
-rw-r--r--keyboards/tada68/keymaps/rupa/config.h3
-rwxr-xr-xkeyboards/tada68/keymaps/rupa/keymap.c38
-rwxr-xr-xkeyboards/tada68/keymaps/rupa/readme.md19
-rw-r--r--keyboards/tada68/keymaps/rupa/rules.mk3
-rw-r--r--keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/config.h40
-rw-r--r--keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/rules.mk4
-rw-r--r--keyboards/tau4/config.h9
-rw-r--r--keyboards/teleport/native/ansi/keymaps/default/keymap.c6
-rw-r--r--keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c6
-rw-r--r--keyboards/teleport/native/ansi/keymaps/via/keymap.c6
-rw-r--r--keyboards/teleport/native/config.h12
-rw-r--r--keyboards/teleport/native/iso/keymaps/default/keymap.c6
-rw-r--r--keyboards/teleport/native/iso/keymaps/perfmode/keymap.c6
-rw-r--r--keyboards/teleport/native/iso/keymaps/via/keymap.c6
-rw-r--r--keyboards/teleport/native/native.c2
-rw-r--r--keyboards/telophase/rules.mk2
-rw-r--r--keyboards/terrazzo/config.h3
-rw-r--r--keyboards/terrazzo/terrazzo.c2
-rwxr-xr-xkeyboards/tetris/keymaps/default/keymap.c34
-rw-r--r--keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c115
-rw-r--r--keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h33
-rw-r--r--keyboards/thevankeyboards/bananasplit/keymaps/talljoe/keymap.c1
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/dcompact/keymap.c1
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/halvves/keymap.c28
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/hvp/config.h4
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/hvp/keymap.c54
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/hvp/readme.md10
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/hvp/rules.mk2
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c8
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c20
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h65
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c1
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk3
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/tominabox1/keymap.c74
-rw-r--r--keyboards/tkc/osav2/keymaps/brandonschlack/config.h30
-rwxr-xr-xkeyboards/tkc/osav2/keymaps/brandonschlack/keymap.c243
-rwxr-xr-xkeyboards/tkc/osav2/keymaps/brandonschlack/rules.mk9
-rw-r--r--keyboards/tkc/osav2/keymaps/stanrc85/keymap.c58
-rw-r--r--keyboards/tkc/portico/config.h10
-rw-r--r--keyboards/tkc/portico/portico.c10
-rw-r--r--keyboards/tkc/portico/rules.mk2
-rw-r--r--keyboards/tkc/portico68v2/config.h3
-rw-r--r--keyboards/tkc/portico68v2/portico68v2.c2
-rw-r--r--keyboards/tkc/portico75/config.h7
-rw-r--r--keyboards/tkc/portico75/keymaps/via/rules.mk2
-rw-r--r--keyboards/tkc/portico75/portico75.c12
-rw-r--r--keyboards/tkc/tkc1800/keymaps/yanfali/keymap.c90
-rw-r--r--keyboards/tkc/tkc1800/keymaps/yanfali/rules.mk1
-rw-r--r--keyboards/tkw/grandiceps/rev2/info.json3
-rw-r--r--keyboards/tkw/grandiceps/rev2/rules.mk2
-rw-r--r--keyboards/tmo50/keymaps/talljoe/config.h33
-rw-r--r--keyboards/tmo50/keymaps/talljoe/keymap.c44
-rw-r--r--keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c145
-rw-r--r--keyboards/tominabox1/le_chiffre/keymaps/via/keymap.c106
-rw-r--r--keyboards/tominabox1/le_chiffre/le_chiffre.c123
-rw-r--r--keyboards/tominabox1/le_chiffre/le_chiffre.h17
-rw-r--r--keyboards/tominabox1/le_chiffre/post_config.h14
-rw-r--r--keyboards/torn/keymaps/manna-harbour_miryoku/config.h19
-rw-r--r--keyboards/torn/keymaps/manna-harbour_miryoku/keymap.c4
-rw-r--r--keyboards/torn/rules.mk2
-rw-r--r--keyboards/touchpad/rules.mk3
-rw-r--r--keyboards/tweetydabird/lotus58/config.h3
-rw-r--r--keyboards/tweetydabird/lotus58/info.json9
-rw-r--r--keyboards/tzarc/djinn/config.h6
-rw-r--r--keyboards/tzarc/djinn/info.json14
-rw-r--r--keyboards/tzarc/djinn/rev1/config.h3
-rw-r--r--keyboards/tzarc/djinn/rev2/config.h3
-rw-r--r--keyboards/tzarc/djinn/rules.mk2
-rw-r--r--keyboards/tzarc/ghoul/config.h3
-rw-r--r--keyboards/tzarc/ghoul/info.json3
-rw-r--r--keyboards/tzarc/ghoul/rules.mk3
-rw-r--r--keyboards/ungodly/launch_pad/rules.mk2
-rw-r--r--keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h23
-rw-r--r--keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/keymap.c155
-rw-r--r--keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/readme.md9
-rw-r--r--keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/rules.mk3
-rw-r--r--keyboards/v4n4g0rth0n/v2/rules.mk3
-rw-r--r--keyboards/v60_type_r/keymaps/xtonhasvim/config.h24
-rw-r--r--keyboards/v60_type_r/keymaps/xtonhasvim/keymap.c195
-rw-r--r--keyboards/v60_type_r/keymaps/xtonhasvim/readme.md20
-rw-r--r--keyboards/v60_type_r/keymaps/xtonhasvim/rules.mk5
-rw-r--r--keyboards/vertex/angle65/config.h2
-rw-r--r--keyboards/vertex/arc60/config.h2
-rw-r--r--keyboards/vertex/arc60h/config.h2
-rw-r--r--keyboards/viendi8l/info.json3
-rw-r--r--keyboards/viendi8l/rules.mk3
-rw-r--r--keyboards/viktus/minne_topre/rules.mk3
-rw-r--r--keyboards/viktus/osav2_numpad_topre/rules.mk3
-rw-r--r--keyboards/viktus/osav2_topre/rules.mk3
-rw-r--r--keyboards/viktus/sp111/rules.mk2
-rw-r--r--keyboards/viktus/styrka_topre/rules.mk3
-rw-r--r--keyboards/vinhcatba/uncertainty/config.h6
-rw-r--r--keyboards/vinhcatba/uncertainty/info.json3
-rw-r--r--keyboards/vinhcatba/uncertainty/rules.mk2
-rw-r--r--keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c132
-rw-r--r--keyboards/waterfowl/config.h3
-rw-r--r--keyboards/waterfowl/info.json8
-rw-r--r--keyboards/wilba_tech/rama_works_kara/config.h5
-rw-r--r--keyboards/wilba_tech/rama_works_kara/rama_works_kara.c90
-rw-r--r--keyboards/wilba_tech/rama_works_kara/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_koyu/config.h5
-rw-r--r--keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c90
-rw-r--r--keyboards/wilba_tech/rama_works_koyu/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_m10_b/config.h2
-rw-r--r--keyboards/wilba_tech/rama_works_m10_b/info.json3
-rw-r--r--keyboards/wilba_tech/rama_works_m10_c/config.h6
-rw-r--r--keyboards/wilba_tech/rama_works_m10_c/info.json3
-rw-r--r--keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c23
-rw-r--r--keyboards/wilba_tech/rama_works_m10_c/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_m50_a/config.h5
-rw-r--r--keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c88
-rw-r--r--keyboards/wilba_tech/rama_works_m50_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/config.h5
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/keymap.c82
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/readme.md15
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/rules.mk1
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/config.h8
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/keymap.c42
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/rules.mk1
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c90
-rw-r--r--keyboards/wilba_tech/rama_works_m60_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_m65_b/config.h5
-rw-r--r--keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c90
-rw-r--r--keyboards/wilba_tech/rama_works_m65_b/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_m65_bx/config.h5
-rw-r--r--keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c90
-rw-r--r--keyboards/wilba_tech/rama_works_m65_bx/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_m6_b/config.h2
-rw-r--r--keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c15
-rw-r--r--keyboards/wilba_tech/rama_works_m6_b/rules.mk4
-rw-r--r--keyboards/wilba_tech/rama_works_u80_a/config.h6
-rw-r--r--keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c132
-rw-r--r--keyboards/wilba_tech/rama_works_u80_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt60_a/config.h3
-rw-r--r--keyboards/wilba_tech/wt60_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt60_b/config.h5
-rw-r--r--keyboards/wilba_tech/wt60_b/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt60_b/wt60_b.c94
-rw-r--r--keyboards/wilba_tech/wt60_bx/config.h5
-rw-r--r--keyboards/wilba_tech/wt60_bx/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt60_bx/wt60_bx.c94
-rw-r--r--keyboards/wilba_tech/wt60_c/config.h5
-rw-r--r--keyboards/wilba_tech/wt60_c/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt60_c/wt60_c.c94
-rw-r--r--keyboards/wilba_tech/wt65_a/config.h3
-rw-r--r--keyboards/wilba_tech/wt65_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt65_b/config.h3
-rw-r--r--keyboards/wilba_tech/wt65_b/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt75_a/config.h3
-rw-r--r--keyboards/wilba_tech/wt75_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt75_b/config.h3
-rw-r--r--keyboards/wilba_tech/wt75_b/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt75_c/config.h3
-rw-r--r--keyboards/wilba_tech/wt75_c/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt80_a/config.h3
-rw-r--r--keyboards/wilba_tech/wt80_a/rules.mk4
-rw-r--r--keyboards/wilba_tech/wt_mono_backlight.c145
-rw-r--r--keyboards/wilba_tech/wt_rgb_backlight.c922
-rw-r--r--keyboards/wilba_tech/zeal60/config.h5
-rw-r--r--keyboards/wilba_tech/zeal60/keymaps/sethBarberee/config.h37
-rw-r--r--keyboards/wilba_tech/zeal60/keymaps/sethBarberee/keymap.c46
-rw-r--r--keyboards/wilba_tech/zeal60/keymaps/sethBarberee/rules.mk2
-rw-r--r--keyboards/wilba_tech/zeal60/rules.mk4
-rw-r--r--keyboards/wilba_tech/zeal60/zeal60.c90
-rw-r--r--keyboards/wilba_tech/zeal65/config.h5
-rw-r--r--keyboards/wilba_tech/zeal65/keymaps/zyber/config.h31
-rw-r--r--keyboards/wilba_tech/zeal65/keymaps/zyber/keymap.c39
-rw-r--r--keyboards/wilba_tech/zeal65/rules.mk4
-rw-r--r--keyboards/wilba_tech/zeal65/zeal65.c90
-rw-r--r--keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/README.md18
-rw-r--r--keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/config.h24
-rwxr-xr-xkeyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/keymap.c50
-rw-r--r--keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/rules.mk1
-rwxr-xr-xkeyboards/woodkeys/meira/TWIlib.c300
-rwxr-xr-xkeyboards/woodkeys/meira/TWIlib.h71
-rw-r--r--keyboards/woodkeys/meira/config.h2
-rw-r--r--keyboards/woodkeys/meira/featherble/config.h1
-rw-r--r--keyboards/woodkeys/meira/info.json10
-rwxr-xr-xkeyboards/woodkeys/meira/issi.c286
-rwxr-xr-xkeyboards/woodkeys/meira/issi.h39
-rw-r--r--keyboards/woodkeys/meira/keymaps/cole/keymap.c1
-rw-r--r--keyboards/woodkeys/meira/keymaps/default/keymap.c1
-rw-r--r--keyboards/woodkeys/meira/keymaps/grahampheath/keymap.c9
-rw-r--r--keyboards/woodkeys/meira/keymaps/grahampheath/rules.mk2
-rw-r--r--keyboards/woodkeys/meira/keymaps/takmiya/keymap.c10
-rwxr-xr-xkeyboards/woodkeys/meira/lighting.c84
-rwxr-xr-xkeyboards/woodkeys/meira/lighting.h6
-rw-r--r--keyboards/woodkeys/meira/matrix.c9
-rw-r--r--keyboards/woodkeys/meira/meira.c39
-rw-r--r--keyboards/woodkeys/meira/meira.h1
-rw-r--r--keyboards/woodkeys/meira/post_rules.mk9
-rw-r--r--keyboards/woodkeys/meira/promicro/config.h2
-rw-r--r--keyboards/woodkeys/meira/rules.mk4
-rw-r--r--keyboards/woodkeys/scarletbandana/rules.mk2
-rw-r--r--keyboards/work_louder/micro/keymaps/peterfalken/config.h7
-rw-r--r--keyboards/work_louder/micro/keymaps/peterfalken/keymap.c113
-rw-r--r--keyboards/work_louder/micro/keymaps/peterfalken/readme.md14
-rw-r--r--keyboards/work_louder/micro/keymaps/peterfalken/rules.mk3
-rw-r--r--keyboards/work_louder/rgb_functions.c2
-rw-r--r--keyboards/work_louder/work_board/keymaps/drashna/config.h22
-rw-r--r--keyboards/work_louder/work_board/keymaps/drashna/keymap.c167
-rw-r--r--keyboards/work_louder/work_board/keymaps/drashna/rules.mk10
-rw-r--r--keyboards/work_louder/work_board/keymaps/peterfalken/keymap.c88
-rw-r--r--keyboards/work_louder/work_board/keymaps/peterfalken/readme.md14
-rw-r--r--keyboards/work_louder/work_board/keymaps/peterfalken/rules.mk3
-rw-r--r--keyboards/xbows/knight/config.h7
-rw-r--r--keyboards/xbows/knight/knight.c2
-rw-r--r--keyboards/xbows/knight_plus/config.h7
-rw-r--r--keyboards/xbows/knight_plus/knight_plus.c2
-rw-r--r--keyboards/xbows/nature/config.h7
-rw-r--r--keyboards/xbows/nature/nature.c2
-rw-r--r--keyboards/xbows/numpad/config.h3
-rw-r--r--keyboards/xbows/numpad/numpad.c2
-rw-r--r--keyboards/xbows/ranger/config.h7
-rw-r--r--keyboards/xbows/ranger/ranger.c2
-rw-r--r--keyboards/xbows/woody/config.h5
-rw-r--r--keyboards/xbows/woody/woody.c2
-rw-r--r--keyboards/xelus/dawn60/rev1/config.h5
-rw-r--r--keyboards/xelus/dawn60/rev1/rev1.c82
-rw-r--r--keyboards/xelus/dawn60/rev1/rules.mk2
-rw-r--r--keyboards/xelus/dawn60/rev1_qmk/config.h9
-rw-r--r--keyboards/xelus/dawn60/rev1_qmk/rev1_qmk.c48
-rw-r--r--keyboards/xelus/dawn60/rev1_qmk/rules.mk2
-rw-r--r--keyboards/xelus/kangaroo/rev1/config.h3
-rw-r--r--keyboards/xelus/kangaroo/rev1/info.json3
-rw-r--r--keyboards/xelus/kangaroo/rev1/rules.mk2
-rw-r--r--keyboards/xelus/kangaroo/rev2/config.h3
-rw-r--r--keyboards/xelus/kangaroo/rev2/info.json5
-rw-r--r--keyboards/xelus/kangaroo/rev2/rules.mk5
-rw-r--r--keyboards/xelus/pachi/rgb/rev1/config.h9
-rw-r--r--keyboards/xelus/pachi/rgb/rev1/info.json3
-rw-r--r--keyboards/xelus/pachi/rgb/rev1/rev1.c14
-rw-r--r--keyboards/xelus/pachi/rgb/rev1/rules.mk2
-rw-r--r--keyboards/xelus/pachi/rgb/rev2/config.h6
-rw-r--r--keyboards/xelus/pachi/rgb/rev2/info.json3
-rw-r--r--keyboards/xelus/pachi/rgb/rev2/rev2.c14
-rw-r--r--keyboards/xelus/pachi/rgb/rev2/rules.mk2
-rw-r--r--keyboards/xelus/rs108/config.h9
-rw-r--r--keyboards/xelus/rs108/info.json3
-rw-r--r--keyboards/xelus/rs108/rules.mk2
-rw-r--r--keyboards/xelus/rs60/rev2_0/config.h9
-rw-r--r--keyboards/xelus/rs60/rev2_0/info.json3
-rw-r--r--keyboards/xelus/rs60/rev2_0/rules.mk1
-rw-r--r--keyboards/xelus/rs60/rev2_1/config.h3
-rw-r--r--keyboards/xelus/rs60/rev2_1/info.json5
-rw-r--r--keyboards/xelus/rs60/rev2_1/rules.mk3
-rw-r--r--keyboards/xelus/valor/rev2/config.h3
-rw-r--r--keyboards/xelus/valor/rev2/info.json3
-rw-r--r--keyboards/xelus/valor/rev2/rules.mk1
-rw-r--r--keyboards/xelus/valor_frl_tkl/rev1/config.h6
-rw-r--r--keyboards/xelus/valor_frl_tkl/rev1/info.json3
-rw-r--r--keyboards/xelus/valor_frl_tkl/rev1/rules.mk3
-rw-r--r--keyboards/xelus/xs108/config.h3
-rw-r--r--keyboards/xelus/xs108/info.json3
-rw-r--r--keyboards/xelus/xs108/rules.mk2
-rw-r--r--keyboards/xelus/xs60/hotswap/config.h3
-rw-r--r--keyboards/xelus/xs60/hotswap/info.json3
-rw-r--r--keyboards/xelus/xs60/hotswap/rules.mk2
-rw-r--r--keyboards/xelus/xs60/soldered/info.json3
-rw-r--r--keyboards/xelus/xs60/soldered/rules.mk2
-rw-r--r--keyboards/xiudi/xd002/keymaps/multilayer_rgb/rgblite.h2
-rw-r--r--keyboards/xiudi/xd002/keymaps/rgb_lite/rgblite.h2
-rw-r--r--keyboards/xiudi/xd004/keymaps/narze/keymap.c24
-rw-r--r--keyboards/xiudi/xd004/keymaps/narze/readme.md13
-rw-r--r--keyboards/xiudi/xd75/keymaps/billypython/config.h14
-rw-r--r--keyboards/xiudi/xd75/keymaps/billypython/keymap.c119
-rw-r--r--keyboards/xiudi/xd75/keymaps/billypython/rules.mk15
-rw-r--r--keyboards/xiudi/xd75/keymaps/ericgebhart/config.h21
-rw-r--r--keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c18
-rw-r--r--keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk3
-rw-r--r--keyboards/xiudi/xd75/keymaps/jarred/keymap.c37
-rw-r--r--keyboards/xiudi/xd75/keymaps/jarred/readme.md1
-rw-r--r--keyboards/xiudi/xd75/keymaps/odyssey/keymap.c8
-rw-r--r--keyboards/xiudi/xd75/keymaps/raoeus/keymap.c1
-rw-r--r--keyboards/xiudi/xd75/keymaps/scheiklp/config.h29
-rw-r--r--keyboards/xiudi/xd75/keymaps/scheiklp/keymap.c101
-rw-r--r--keyboards/xiudi/xd75/keymaps/scheiklp/readme.md9
-rw-r--r--keyboards/xiudi/xd75/keymaps/scheiklp/rules.mk9
-rw-r--r--keyboards/xiudi/xd75/keymaps/zigotica/config.h27
-rw-r--r--keyboards/xiudi/xd75/keymaps/zigotica/keymap.c63
-rw-r--r--keyboards/xiudi/xd75/keymaps/zigotica/rules.mk6
-rw-r--r--keyboards/xiudi/xd84/rules.mk2
-rw-r--r--keyboards/xiudi/xd96/rules.mk2
-rw-r--r--keyboards/yanghu/unicorne/keymaps/bcat/config.h19
-rw-r--r--keyboards/yanghu/unicorne/keymaps/bcat/keymap.c83
-rw-r--r--keyboards/yanghu/unicorne/keymaps/bcat/readme.md33
-rw-r--r--keyboards/yanghu/unicorne/keymaps/bcat/rules.mk1
-rw-r--r--keyboards/yiancardesigns/barleycorn/rules.mk2
-rw-r--r--keyboards/yiancardesigns/gingham/rules.mk4
-rw-r--r--keyboards/yiancardesigns/seigaiha/rules.mk2
-rw-r--r--keyboards/ymdk/id75/info.json1
-rw-r--r--keyboards/ymdk/melody96/hotswap/info.json501
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/default/keymap.c23
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/via/keymap.c23
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/via/rules.mk (renamed from keyboards/kprepublic/bm40hsrgb/keymaps/via/rules.mk)0
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/zunger/config.h (renamed from keyboards/ymdk/melody96/keymaps/zunger/config.h)0
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/zunger/keymap.c489
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/zunger/readme.md (renamed from keyboards/ymdk/melody96/keymaps/zunger/readme.md)0
-rw-r--r--keyboards/ymdk/melody96/hotswap/keymaps/zunger/rules.mk (renamed from keyboards/ymdk/melody96/keymaps/zunger/rules.mk)0
-rw-r--r--keyboards/ymdk/melody96/hotswap/matrix_diagram.md23
-rw-r--r--keyboards/ymdk/melody96/hotswap/readme.md19
-rw-r--r--keyboards/ymdk/melody96/hotswap/rules.mk1
-rw-r--r--keyboards/ymdk/melody96/keymaps/konstantin/config.h3
-rw-r--r--keyboards/ymdk/melody96/keymaps/konstantin/keymap.c77
-rw-r--r--keyboards/ymdk/melody96/keymaps/konstantin/rules.mk19
-rw-r--r--keyboards/ymdk/melody96/keymaps/zunger/keymap.c489
-rw-r--r--keyboards/ymdk/melody96/matrix_diagram.md35
-rw-r--r--keyboards/ymdk/melody96/readme.md19
-rw-r--r--keyboards/ymdk/melody96/rules.mk13
-rw-r--r--keyboards/ymdk/melody96/soldered/config.h (renamed from keyboards/ymdk/melody96/config.h)0
-rw-r--r--keyboards/ymdk/melody96/soldered/info.json (renamed from keyboards/ymdk/melody96/info.json)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/crilith/keymap.c (renamed from keyboards/ymdk/melody96/keymaps/crilith/keymap.c)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/default/keymap.c (renamed from keyboards/ymdk/melody96/keymaps/default/keymap.c)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/default_96_with60_split_num0/keymap.c (renamed from keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/dvz/config.h (renamed from keyboards/ymdk/melody96/keymaps/dvz/config.h)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/dvz/keymap.c (renamed from keyboards/ymdk/melody96/keymaps/dvz/keymap.c)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/dvz/readme.md (renamed from keyboards/ymdk/melody96/keymaps/dvz/readme.md)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/dvz/rules.mk (renamed from keyboards/ymdk/melody96/keymaps/dvz/rules.mk)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/via/keymap.c (renamed from keyboards/ymdk/melody96/keymaps/via/keymap.c)0
-rw-r--r--keyboards/ymdk/melody96/soldered/keymaps/via/rules.mk (renamed from keyboards/ymdk/melody96/keymaps/via/rules.mk)0
-rw-r--r--keyboards/ymdk/melody96/soldered/matrix_diagram.md35
-rw-r--r--keyboards/ymdk/melody96/soldered/readme.md19
-rw-r--r--keyboards/ymdk/melody96/soldered/rules.mk12
-rw-r--r--keyboards/ymdk/sp64/rules.mk2
-rw-r--r--keyboards/z12/keymaps/zigotica/config.h29
-rw-r--r--keyboards/z12/keymaps/zigotica/encoder.c110
-rw-r--r--keyboards/z12/keymaps/zigotica/encoder.h18
-rw-r--r--keyboards/z12/keymaps/zigotica/keymap.c189
-rw-r--r--keyboards/z12/keymaps/zigotica/oled.c56
-rw-r--r--keyboards/z12/keymaps/zigotica/oled.h18
-rw-r--r--keyboards/z12/keymaps/zigotica/readme.md3
-rw-r--r--keyboards/z12/keymaps/zigotica/rules.mk4
-rw-r--r--keyboards/z34/keymaps/zigotica/config.h26
-rw-r--r--keyboards/z34/keymaps/zigotica/keymap.c57
-rw-r--r--keyboards/z34/keymaps/zigotica/rules.mk7
-rw-r--r--keyboards/zoo/wampus/config.h2
-rw-r--r--keyboards/zykrah/fuyu/config.h2
-rw-r--r--keyboards/zykrah/fuyu/info.json3
-rw-r--r--keyboards/zykrah/fuyu/keymaps/via/keymap.c10
-rw-r--r--keyboards/zykrah/slime88/config.h2
-rw-r--r--keyboards/zykrah/slime88/info.json3
3238 files changed, 21439 insertions, 103043 deletions
diff --git a/keyboards/1k/keymaps/default/rgblite.h b/keyboards/1k/keymaps/default/rgblite.h
index e64f49ee0a..29d684ac08 100644
--- a/keyboards/1k/keymaps/default/rgblite.h
+++ b/keyboards/1k/keymaps/default/rgblite.h
@@ -7,7 +7,7 @@
#include "color.h"
static inline void rgblite_setrgb(RGB rgb) {
- LED_TYPE leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}};
+ rgb_led_t leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}};
ws2812_setleds(leds, RGBLED_NUM);
}
diff --git a/keyboards/1k/keymaps/media/rgblite.h b/keyboards/1k/keymaps/media/rgblite.h
index e64f49ee0a..29d684ac08 100644
--- a/keyboards/1k/keymaps/media/rgblite.h
+++ b/keyboards/1k/keymaps/media/rgblite.h
@@ -7,7 +7,7 @@
#include "color.h"
static inline void rgblite_setrgb(RGB rgb) {
- LED_TYPE leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}};
+ rgb_led_t leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}};
ws2812_setleds(leds, RGBLED_NUM);
}
diff --git a/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/config.h b/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/config.h
deleted file mode 100644
index 65293382cf..0000000000
--- a/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2018 Chuck "@vosechu" Lauer Vose
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// place overrides here
diff --git a/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/keymap.c b/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/keymap.c
deleted file mode 100644
index eeca330838..0000000000
--- a/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2018 Chuck "@vosechu" Lauer Vose
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-#define SPACEFN LT(1, KC_SPC)
-#define CTL_GRV CTL_T(KC_GRV)
-#define ALT_TAB ALT_T(KC_TAB)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_60_ansi(
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS , KC_EQL , KC_BSPC ,
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC , KC_RBRC , KC_BSLS ,
- KC_CAPS , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_QUOT , KC_ENT ,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_RSFT ,
- CTL_GRV , ALT_TAB , KC_LGUI , SPACEFN , KC_RALT , KC_RGUI , MO(1) , KC_RCTL
- ),
-
- [1] = LAYOUT_60_ansi(
- KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_DEL ,
- KC_TRNS , KC_TRNS , KC_UP , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_PSCR , KC_SCRL , KC_PAUS , KC_TRNS ,
- KC_TRNS , KC_LEFT , KC_DOWN , KC_RGHT , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_INS , KC_HOME , KC_PGUP , KC_TRNS ,
- KC_TRNS , KC_VOLU , KC_VOLD , KC_MUTE , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_END , KC_PGDN , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , MO(2) , KC_TRNS , KC_TRNS
- ),
-
- [2] = LAYOUT_60_ansi(
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , QK_BOOT,
- BL_TOGG , BL_UP , BL_DOWN , BL_STEP , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- RGB_TOG , RGB_MOD , RGB_HUI , RGB_SAI , RGB_VAI , RGB_SPI , RGB_M_P , RGB_M_B , RGB_M_R , RGB_M_SW , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , RGB_RMOD , RGB_HUD , RGB_SAD , RGB_VAD , RGB_SPD , RGB_M_SN , RGB_M_K , RGB_M_X , RGB_M_G , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
- )
-};
diff --git a/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/readme.md b/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/readme.md
deleted file mode 100644
index 97e9453b7c..0000000000
--- a/keyboards/1upkeyboards/1up60hse/keymaps/vosechu/readme.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# 1up60hse keymap made by vosechu
-
-Tweaks from default
-
-* Add in SpaceFN so arrows are reachable with just left hand (leaving right free for mousing).
-* Also add tab/grv under the alt/ctrl keys to make those easier to reach.
diff --git a/keyboards/1upkeyboards/1up60hte/keymaps/badger/keymap.c b/keyboards/1upkeyboards/1up60hte/keymaps/badger/keymap.c
deleted file mode 100644
index 197c449122..0000000000
--- a/keyboards/1upkeyboards/1up60hte/keymaps/badger/keymap.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
-Copyright 2020 Dan White <opensource@bluetufa.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include "badger.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY_MAC] = LAYOUT_tsangan(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MOVE_MAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_MAC,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RALT, KC_RGUI),
-
- [_MOVE_MAC] = LAYOUT_tsangan(
- MAC_FRC, MM_LEFT, MM_RGHT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_0, IJ_TOP, IJ_BOTT, _______, _______,
- KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, IJ_BACK, IJ_FWD, KC_NEXT,
- _______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN, _______,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______, _______,
- _______, _______, _______, _______, _______, _______, _______),
-
- [_QWERTY_LINUX] = LAYOUT_tsangan(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MOVE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_LNX,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, ADJUST, KC_RALT, KC_RGUI),
-
- [_MOVE_LINUX] = LAYOUT_tsangan(
- KC_GRV, VD_1, VD_2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- KC_BACK, WM_VD1, WM_UH, WM_VD2, QK_BOOT, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, _______, _______, KC_NEXT,
- _______, WM_LH, WM_MAX, WM_RH, WD_FRWD, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN, _______,
- _______, WM_VD3, WM_BH, OS_COPY, OS_PAST, WD_BACK, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______),
-
- [_ADJUST] = LAYOUT_tsangan(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- _______, _______, _______, _______, KC_WREF, KC_MSTP, KC_MPLY, KC_PGUP, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_CAPS, _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______, _______,
- _______, _______, _______, _______, _______, _______, _______),
-
- [_CONFIG] = LAYOUT_tsangan(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- _______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
- _______, GE_SWAP, GE_NORM, DB_TOGG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, RGB_M_B, _______, _______, RGB_TOG, _______,
- _______, DF_1, DF_2, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, RGB_M_K, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______)
-};
diff --git a/keyboards/1upkeyboards/1up60rgb/keymaps/badger/keymap.c b/keyboards/1upkeyboards/1up60rgb/keymaps/badger/keymap.c
deleted file mode 100644
index 214316cd65..0000000000
--- a/keyboards/1upkeyboards/1up60rgb/keymaps/badger/keymap.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
-Copyright 2020 Dan White <opensource@bluetufa.com>
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include "badger.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY_MAC] = LAYOUT_60_ansi_tsangan_split_rshift(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MOVE_MAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_MAC,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RALT, KC_RGUI),
-
- [_MOVE_MAC] = LAYOUT_60_ansi_tsangan_split_rshift(
- MAC_FRC, MM_LEFT, MM_RGHT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_0, IJ_TOP, IJ_BOTT, KC_DEL,
- KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, IJ_BACK, IJ_FWD, KC_NEXT,
- _______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN, _______,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______, _______,
- _______, _______, _______, _______, _______, _______, _______),
-
- [_QWERTY_LINUX] = LAYOUT_60_ansi_tsangan_split_rshift(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MOVE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, CFG_LNX,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, ADJUST, KC_LALT, KC_RGUI),
-
- [_MOVE_LINUX] = LAYOUT_60_ansi_tsangan_split_rshift(
- KC_GRV, VD_1, VD_2, VD_3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- KC_BACK, WM_VD1, WM_UH, WM_VD2, QK_BOOT, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, _______, _______, KC_NEXT,
- _______, WM_LH, WM_MAX, WM_RH, WD_FRWD, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN, _______,
- _______, WM_VD3, WM_BH, OS_COPY, OS_PAST, WD_BACK, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______),
-
- [_ADJUST] = LAYOUT_60_ansi_tsangan_split_rshift(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, _______, _______, KC_WREF, KC_MSTP, KC_MPLY, KC_PGUP, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, DF_1, DF_2, KC_CAPS, _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______, _______,
- _______, _______, _______, _______, _______, _______, _______),
-
- [_CONFIG] = LAYOUT_60_ansi_tsangan_split_rshift(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
- _______, GE_SWAP, GE_NORM, DB_TOGG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, RGB_M_B, _______, _______, RGB_TOG, _______,
- _______, LAG_SWP, LAG_NRM, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, RGB_M_K, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______)
-};
-
diff --git a/keyboards/1upkeyboards/1upocarina/info.json b/keyboards/1upkeyboards/1upocarina/info.json
index fccf9d8899..c6a3718082 100644
--- a/keyboards/1upkeyboards/1upocarina/info.json
+++ b/keyboards/1upkeyboards/1upocarina/info.json
@@ -37,6 +37,7 @@
]
},
"ws2812": {
+ "driver": "vendor",
"pin": "GP24"
},
"rgb_matrix": {
diff --git a/keyboards/1upkeyboards/1upocarina/rules.mk b/keyboards/1upkeyboards/1upocarina/rules.mk
index 8e853e0af7..6e7633bfe0 100644
--- a/keyboards/1upkeyboards/1upocarina/rules.mk
+++ b/keyboards/1upkeyboards/1upocarina/rules.mk
@@ -1 +1 @@
-WS2812_DRIVER = vendor \ No newline at end of file
+# This file intentionally left blank
diff --git a/keyboards/1upkeyboards/1upslider8/rules.mk b/keyboards/1upkeyboards/1upslider8/rules.mk
index 8515c3fae0..cc58820278 100644
--- a/keyboards/1upkeyboards/1upslider8/rules.mk
+++ b/keyboards/1upkeyboards/1upslider8/rules.mk
@@ -1 +1 @@
-SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/config.h b/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/config.h
deleted file mode 100644
index 834b7ee0ab..0000000000
--- a/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/config.h
+++ /dev/null
@@ -1,13 +0,0 @@
-// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
-// SPDX-License-Identifier: GPL-2.0+
-
-#pragma once
-
-# define TAPPING_TERM 160
-# define TAPPING_TERM_PER_KEY
-# define HOLD_ON_OTHER_KEY_PRESS
-# define QUICK_TAP_TERM TAPPING_TERM / 2
-# define QUICK_TAP_TERM_PER_KEY
-
-
-
diff --git a/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/keymap.c b/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/keymap.c
deleted file mode 100644
index 636aad675b..0000000000
--- a/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/keymap.c
+++ /dev/null
@@ -1,290 +0,0 @@
-// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
-// SPDX-License-Identifier: GPL-2.0+
-
-#include "miketronic.h"
-
-
-
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Workman
- * ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
- * │ TAB │ Q │ D │ R │ W │ B │ │ J │ F │ U │ P │ BSPC│ BSPC│
- * │ ESC │ ESC │ │ │ │ SYM │ │ SYM │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │ TAB │ A │ S │ H ┃ T ┃ G │ │ Y ┃ N ┃ E │ O │ I │ │
- * │SHIFT│ │ │ ┃ EX ┃ │ │ ┃ ┃ │ │ENTER│ENTER│
- * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │SHIFT| Z │ X │ M │ C │ V │ │ K │ L │ SPC │ SPC │ / │ UP |
- * │ │ │ │ │ │ │ │ │ │ , │ . │ │RIGHT|
- * ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
- * │ FN │CTRL │ OS │ ALT │LOWER│ │ │ │RAISE│ SS │CLIP │COPY │ DN │
- * │ │ │ │ │ │ │ │ │ │ │ │PASTE│LEFT │
- * └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
- */
-
- [_WM] = LAYOUT_ortho_4x12_wrapper (
- RGB_TOG,
- _____________WORKMAN_412_001_L_____________, _____________WORKMAN_412_001_R_____________,
- _____________WORKMAN_412_002_L_____________, _____________WORKMAN_412_002_R_____________,
- _____________WORKMAN_412_003_L_____________, _____________WORKMAN_412_003_R_____________,
- _____________WORKMAN_412_004_L_____________, _____________WORKMAN_412_004_R_____________
- ),
-
- [_QW] = LAYOUT_ortho_4x12_wrapper (
- RGB_TOG,
- KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- KC_ESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT,
- KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT,
- _____________WORKMAN_412_004_L_____________, _____________WORKMAN_412_004_R_____________
- ),
-
-
-
-
- /* Lower
- * ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
- * │ │ () │ [] │ /\ │ │ │ │ │ 7 │ 8 │ 9 │ │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │ │ @ # │ & % │ ┃ ┃ │ │ ┃ 4 ┃ 5 │ 6 │ │ │
- * │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
- * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ │ UP │
- * │ │ │ │ │ │ │ │ │ │ 0 │ │ │RIGHT│
- * ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ │ │LOWER│ │ │ │BPSC │ SPC │ . │ │ DN │
- * │ │ │ │ │ │ │ │ │ │ │ ENT │ │LEFT │
- * └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
- */
- [_LOWER] = LAYOUT_ortho_4x12_wrapper (
- KC_MUTE,
- _______________LOWER_412_L1________________, _______________LOWER_412_R1________________,
- _______________LOWER_412_L2________________, _______________LOWER_412_R2________________,
- _______________LOWER_412_L3________________, _______________LOWER_412_R3________________,
- _______________LOWER_412_L4________________, _______________LOWER_412_R4________________
- ),
-
-
- /* RAISE
- * ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
- * │BOOT │DEBUG│ │ │ │MAKE │ │ │ │ F7 │ F8 │ F9 │ F10 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │ │ RGB | RGB | RGB ┃ RGB ┃ WM │ │ ┃ / \ ┃ F4 │ F5 │ F6 │ F11 │
- * │ │ TOG │ MOD │ HUI ┃ HUD ┃ │ │ ┃ ┃ │ │ │ │
- * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │ │ RGB │ RGB │ RGB │ RGB │ QW │ │ │ _ │ F1 | F2 | F3 │ F12 │
- * │ │ SAI │ SAD │ VAI │ VAD │ │ │ │ - │ │ │ │ │
- * ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ │RAISE│ │ │ │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
- */
- [_RAISE] = LAYOUT_ortho_4x12_wrapper (
- KC_MUTE,
- _______________RAISE_412_L1________________, _______________RAISE_412_R1________________,
- _______________RAISE_412_L2________________, _______________RAISE_412_R2________________,
- _______________RAISE_412_L3________________, _______________RAISE_412_R3________________,
- _________________BLANK_6___________________, _________________BLANK_6___________________
- ),
-
-
- /* EXTRAS
- * ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
- * │ │ ! │ │ │ │ │ │ │ /\ | [ | ] | ; │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │SHIFT│ | |EXTRA┃ ┃ │ │ ┃ @ # ┃ & % | | ' | │
- * │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
- * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ │ │ , | . | ? │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
- */
- [_EX] = LAYOUT_ortho_4x12_wrapper (
- KC_MUTE,
- ______________EXTRAS_412_L1________________, ______________EXTRAS_412_R1________________,
- ______________EXTRAS_412_L2________________, ______________EXTRAS_412_R2________________,
- ______________EXTRAS_412_L3________________, ______________EXTRAS_412_R3________________,
- ______________EXTRAS_412_L4________________, ______________EXTRAS_412_R4________________
- ),
-
-
-
- /* FUNCTION
- * ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
- * │COPY │CLIP │ SS │ │ │ │ │ │ /\ │ UP │ │ │ DEL │
- * │PASTE│ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │TAB │ M05 | M06 | M07 ┃ M08 ┃ │ │ ┃LEFT ┃DOWN │RIGHT│ │UP │
- * │SHIFT│ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │RIGHT│
- * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │ │ M01 │ M02 │ M03 │ M04 │ │ │ │ │ , | . | ? │DOWN │
- * │ │ │ │ │ │ │ │ │ │ │ │ │LEFT │
- * ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │RGB1 │RGB2 │RGB3 │RGB4 │ │ │ │ │ │ │ │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
- */
- [_FN] = LAYOUT_ortho_4x12_wrapper (
- KC_MUTE,
- _____________FUNCTION_412_L1_______________, _____________FUNCTION_412_R1_______________,
- _____________FUNCTION_412_L2_______________, _____________FUNCTION_412_R2_______________,
- _____________FUNCTION_412_L3_______________, _____________FUNCTION_412_R3_______________,
- _____________FUNCTION_412_L4_______________, _____________FUNCTION_412_R4_______________
- ),
-
-
- /* SYMBOLS
- * ┌─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┐
- * │ | $ | ^ | < | > │ SYMB│ │ SYMB│ | | [ | ] | - | |
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │ | % | : | ; ┃ + ┃ = │ │ ┃ ┃ ( | ) | _ | |
- * │ │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │ │
- * ├─────┼─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * | | & | ' | " | * | # │ │ ! | ? | / | \ | @ | |
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┴─────┘
- */
-
- [_SYMB] = LAYOUT_ortho_4x12_wrapper (
- KC_MUTE,
- _______, _____________SYMBOLS_310_L1________________, _____________SYMBOLS_310_R1________________, _______,
- _______, _____________SYMBOLS_310_L2________________, _____________SYMBOLS_310_R2________________, _______,
- _______, _____________SYMBOLS_310_L3________________, _____________SYMBOLS_310_R3________________, _______,
- _________________BLANK_6___________________, _________________BLANK_6___________________
- )
-
-};
-
-#ifndef NUM_DIRECTIONS
-# define NUM_DIRECTIONS 2
-#endif
-
-#if defined(ENCODER_MAP_ENABLE) && defined(KEYBOARD_1upkeyboards_pi40_mit_v1_0)
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [_WM] = { ENCODER_CCW_CW(LCTL(KC_V), LCTL(KC_C)) },
- [_QW] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
- [_LOWER] = { ENCODER_CCW_CW(____, ____) },
- [_RAISE] = { ENCODER_CCW_CW(____, ____) },
- [_EX] = { ENCODER_CCW_CW(____, ____) },
- [_FN] = { ENCODER_CCW_CW(RGB_MOD, RGB_RMOD) },
- [_SYMB] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
-};
-#endif
-
-
-#ifdef OLED_ENABLE
-bool oled_task_user(void) {
- // Host Keyboard Layer Status
- oled_write_P(PSTR("Layer: "), false);
-
- switch (get_highest_layer(layer_state)) {
- case _LOWER:
- oled_write_P(PSTR("LOWER"), false);
- break;
- case _RAISE:
- oled_write_P(PSTR("RAISE"), false);
- break;
- case _EX:
- oled_write_P(PSTR("EXTRA"), false);
- break;
- case _FN:
- oled_write_P(PSTR("FUNCTION"), false);
- break;
- case _WM:
- oled_write_P(PSTR("WORKMAN"), false);
- break;
- case _SYMB:
- oled_write_P(PSTR("SYMBOLS"), false);
- break;
- default:
- // Or use the write_ln shortcut over adding '\n' to the end of your string
- oled_write_ln_P(PSTR("HOME"), false);
- }
-
-// Host Keyboard LED Status
- // led_t led_state = host_keyboard_led_state();
- // oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- // oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- // oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
-
- return false;
-}
-#endif
-
-
-bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case SFT_T(KC_A):
- // Do not force the mod-tap key press to be handled as a modifier
- // if any other key was pressed while the mod-tap key is held down.
- return false;
- case TEX:
- return false;
- case CTRLX:
- return false;
- case FNZ:
- return false;
- case MGUI:
- return false;
- case VLOWER:
- return false;
- case KRAISE:
- return false;
- default:
- // Force the dual-role key press to be handled as a modifier if any
- // other key was pressed while the mod-tap key is held down.
- return true;
- }
-}
-
-#ifdef AUDIO_ENABLE
-float leader_start_song[][2] = SONG(ONE_UP_SOUND);
-float leader_succeed_song[][2] = SONG(ALL_STAR);
-float leader_fail_song[][2] = SONG(RICK_ROLL);
-#endif
-
-void matrix_scan_user(void);
-
-void leader_start_user(void) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(leader_start_song);
-#endif
-}
-
-bool did_leader_succeed;
-
-void leader_end_user(void) {
- did_leader_succeed = false;
-
- if (leader_sequence_one_key(KC_E)) {
- SEND_STRING(SS_LCTL(SS_LSFT("t")));
- did_leader_succeed = true;
- } else if (leader_sequence_two_keys(KC_E, KC_D)) {
- SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c"));
- did_leader_succeed = true;
- } else if (leader_sequence_two_keys(KC_A, KC_T)) {
- SEND_STRING("@guidehouse.com");
- did_leader_succeed = true;
- }
-
-
-#ifdef AUDIO_ENABLE
- if (did_leader_succeed) {
- PLAY_SONG(leader_succeed_song);
- } else {
- PLAY_SONG(leader_fail_song);
- }
-#endif
-} \ No newline at end of file
diff --git a/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/rules.mk b/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/rules.mk
deleted file mode 100644
index b446776377..0000000000
--- a/keyboards/1upkeyboards/pi40/mit_v1_0/keymaps/miketronic/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# Common feature for all keyboards
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-EXTRAKEY_ENABLE = yes # Audio control and System control
-TAP_DANCE_ENABLE = yes # Tap Dance keys
-NKRO_ENABLE = yes # Enable N-Key Rollover
-MACROS_ENABLED = yes
-
-
-# Keyboard specific
-AUTO_SHIFT_ENABLE = no
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-MOUSEKEY_ENABLE = no # Mouse keys
-
-LEADER_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-ENCODER_ENABLE = yes
-ENCODER_MAP_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/1upkeyboards/pi60/config.h b/keyboards/1upkeyboards/pi60/config.h
index 8940acb004..6bbbb2293c 100644
--- a/keyboards/1upkeyboards/pi60/config.h
+++ b/keyboards/1upkeyboards/pi60/config.h
@@ -3,8 +3,6 @@
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
-
#define RGB_MATRIX_LED_COUNT 21
//#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
//#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/1upkeyboards/pi60/info.json b/keyboards/1upkeyboards/pi60/info.json
index 1f8bdb4592..4d0d21ea25 100644
--- a/keyboards/1upkeyboards/pi60/info.json
+++ b/keyboards/1upkeyboards/pi60/info.json
@@ -11,6 +11,9 @@
"vid": "0x6F75"
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"features": {
"audio": false,
"backlight": false,
@@ -66,8 +69,19 @@
{"flags": 2, "x": 20, "y": 13}
]
},
+ "community_layouts": [
+ "60_ansi",
+ "60_ansi_split_bs_rshift",
+ "60_ansi_tsangan",
+ "60_tsangan_hhkb",
+ "60_hhkb",
+ "60_ansi_arrow",
+ "60_iso",
+ "60_iso_split_bs_rshift",
+ "60_iso_tsangan"
+ ],
"layouts": {
- "LAYOUT_60_ansi": {
+ "LAYOUT_all": {
"layout": [
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
@@ -138,6 +152,777 @@
{"label": "Menu", "matrix": [4, 13], "x": 13, "y": 4},
{"label": "RCtrl", "matrix": [4, 14], "x": 14, "y": 4}
]
+ },
+ "LAYOUT_60_ansi": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_tsangan": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_tsangan_hhkb": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_hhkb": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "w": 1.5, "x": 13.5, "y": 1},
+
+ {"label": "Caps", "matrix": [2, 15], "w": 1.75, "x": 0, "y": 2},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3, "w": 1.75},
+ {"label": "RShift", "matrix": [3, 12], "x": 13, "y": 3},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4},
+ {"label": "Mid1U", "matrix": [4, 12], "x": 12, "y": 4},
+ {"label": "Menu", "matrix": [4, 13], "x": 13, "y": 4},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_iso": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
+ {"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
+ {"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso_tsangan": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
+ {"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_iso_tsangan_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
+ {"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_iso_arrow": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps", "matrix": [2, 15], "w": 1.75, "x": 0, "y": 2},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
+ {"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3, "w": 1.75},
+ {"label": "RShift", "matrix": [3, 12], "x": 13, "y": 3},
+ {"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
+
+ {"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
+ {"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4},
+ {"label": "FN", "matrix": [4, 11], "x": 11, "y": 4},
+ {"label": "Mid1U", "matrix": [4, 12], "x": 12, "y": 4},
+ {"label": "Menu", "matrix": [4, 13], "x": 13, "y": 4},
+ {"label": "RCtrl", "matrix": [4, 14], "x": 14, "y": 4}
+ ]
}
}
}
diff --git a/keyboards/1upkeyboards/pi60/keymaps/default/keymap.c b/keyboards/1upkeyboards/pi60/keymaps/default/keymap.c
index acf9ce1adb..8a83e83b52 100644
--- a/keyboards/1upkeyboards/pi60/keymaps/default/keymap.c
+++ b/keyboards/1upkeyboards/pi60/keymaps/default/keymap.c
@@ -18,7 +18,7 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_60_ansi(
+ [0] = LAYOUT_all(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_TRNS, KC_ENT,
@@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_TRNS, KC_APP, KC_RCTL
),
- [1] = LAYOUT_60_ansi(
+ [1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_TRNS,
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS,
@@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [2] = LAYOUT_60_ansi(
+ [2] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [3] = LAYOUT_60_ansi(
+ [3] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/1upkeyboards/pi60/keymaps/via/keymap.c b/keyboards/1upkeyboards/pi60/keymaps/via/keymap.c
index 80f9d3a9f6..e9af7a7138 100644
--- a/keyboards/1upkeyboards/pi60/keymaps/via/keymap.c
+++ b/keyboards/1upkeyboards/pi60/keymaps/via/keymap.c
@@ -18,7 +18,7 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_60_ansi(
+ [0] = LAYOUT_all(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_TRNS, KC_ENT,
@@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_TRNS, KC_APP, KC_RCTL
),
- [1] = LAYOUT_60_ansi(
+ [1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_TRNS,
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS,
@@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [2] = LAYOUT_60_ansi(
+ [2] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [3] = LAYOUT_60_ansi(
+ [3] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [4] = LAYOUT_60_ansi(
+ [4] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [5] = LAYOUT_60_ansi(
+ [5] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -66,7 +66,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [6] = LAYOUT_60_ansi(
+ [6] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [7] = LAYOUT_60_ansi(
+ [7] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -82,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [8] = LAYOUT_60_ansi(
+ [8] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -90,7 +90,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
- [9] = LAYOUT_60_ansi(
+ [9] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/1upkeyboards/pi60/matrix_diagram.md b/keyboards/1upkeyboards/pi60/matrix_diagram.md
new file mode 100644
index 0000000000..2300245bdb
--- /dev/null
+++ b/keyboards/1upkeyboards/pi60/matrix_diagram.md
@@ -0,0 +1,60 @@
+# Matrix Diagram for 1upkeyboards pi60
+
+```
+ ┌───────┐
+ 2u Backspace │0D │
+ └───────┘
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │ ─ Switch or Encoder
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ┌─────┐ ┌─────┐ ┌─────┐
+│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ │ │ │1D │ │1D │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌──┴┐2D │ ISO Enter ┌──┴┬────┤ 1u/1.25u Split Enter ┌──┴─┬───┤ 1.25u/1u Split Enter
+│2F │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │ │2C │ │ │2C │2D │ │2C │2D │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┬───┤ └───┴────┘ └───┴────┘ └────┴───┘
+│3F │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3E │─┐
+└────┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴──────┴───┴───┘ │
+┌────────┐ ┌───┬──────┬───┐ │
+│3F │ 2.25u LShift 1u/1.75u/1u RShift │3B │3C │3E │─┼─ Switch or Encoder
+└────────┘ └───┴──────┴───┘ │
+ ┌───┐ ┌───┬───┐ │
+ 1u/0.75u Gap/1u/1u RShift │3B │ │3C │3E │─┘
+ └───┘ └───┴───┘
+
+[Bottom Rows]────────────────────────────────────────────────
+────────────────────[6u & 6.25u Spacebar]────────────────────
+┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐
+│4F │41 │42 │46 │4A │4B │4D │4E │
+└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+┌─────┬───┬────┬──────────┬────┬────────┬────┬────┬───┬─────┐
+│4F │41 │42 │44 │46 │48 │4A │4B │4D │4E │
+└─────┴───┴────┴──────────┴────┴────────┴────┴────┴───┴─────┘
+ ┌────────┬────┬──────────┬───┬───┬───┬───┬───┐
+ │44 │46 │48 │4A │4B │4C │4D │4E │
+ └────────┴────┴──────────┴───┴───┴───┴───┴───┘
+ ┌───────────────────────┬───┬─────┬────┬────┐
+ │46 │4A │4B │4D │4E │
+ └───────────────────────┴───┴─────┴────┴────┘
+ ┌───┬─────┬───┬─────┐
+ │4A │4B │4D │4E │
+ └───┴─────┴───┴─────┘
+
+────────────────────────[7u Spacebar]────────────────────────
+┌────┬────┬─────┬───────────────────────────┬───┬───┬───┬───┐
+│4F │41 │42 │46 │4B │4C │4D │4E │
+└────┴────┴─────┴───────────────────────────┴───┴───┴───┴───┘
+┌─────┬───┬─────┬──────────┬─────┬──────────┬─────┬────┬────┐
+│4F │41 │42 │44 │46 │48 │4B │4D │4E │
+└─────┴───┴─────┴──────────┴─────┴──────────┴─────┴────┴────┘
+ ┌───────────┬───┬───────────┬─────┬───┬─────┐
+ │44 │46 │48 │4B │4D │4E │
+ └───────────┴───┴───────────┴─────┴───┴─────┘
+ └─ Switch or Encoder
+
+───────────────────────[10u Spacebar]────────────────────────
+┌────┬────┬───────────────────────────────────────┬────┬────┐
+│4F │41 │46 │4D │4E │
+└────┴────┴───────────────────────────────────────┴────┴────┘
+┌─────┬───┬───────────────────────────────────────┬───┬─────┐
+│4F │41 │46 │4D │4E │
+└─────┴───┴───────────────────────────────────────┴───┴─────┘
+```
diff --git a/keyboards/1upkeyboards/pi60_hse/config.h b/keyboards/1upkeyboards/pi60_hse/config.h
index a47120f7d3..b7c4d5e8bc 100644
--- a/keyboards/1upkeyboards/pi60_hse/config.h
+++ b/keyboards/1upkeyboards/pi60_hse/config.h
@@ -3,8 +3,6 @@
#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
#define RGB_MATRIX_LED_COUNT 16
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/1upkeyboards/pi60_hse/info.json b/keyboards/1upkeyboards/pi60_hse/info.json
index 310ad3d94b..5b3e6b35e5 100644
--- a/keyboards/1upkeyboards/pi60_hse/info.json
+++ b/keyboards/1upkeyboards/pi60_hse/info.json
@@ -11,6 +11,9 @@
"vid": "0x6F75"
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"features": {
"audio": false,
"backlight": false,
diff --git a/keyboards/1upkeyboards/super16/keymaps/15game/keymap.c b/keyboards/1upkeyboards/super16/keymaps/15game/keymap.c
index 5988a7cf0e..e92a9fc10d 100644
--- a/keyboards/1upkeyboards/super16/keymaps/15game/keymap.c
+++ b/keyboards/1upkeyboards/super16/keymaps/15game/keymap.c
@@ -85,7 +85,7 @@ uint8_t remap[16] = {
void refresh_leds(void) {
for (uint8_t index = 0; index < 16; ++index) {
uint8_t tile = tiles[index];
- setrgb(r[tile], g[tile], b[tile], (LED_TYPE *)&led[remap[index]]);
+ setrgb(r[tile], g[tile], b[tile], (rgb_led_t *)&led[remap[index]]);
}
rgblight_set();
}
diff --git a/keyboards/1upkeyboards/sweet16v2/kb2040/config.h b/keyboards/1upkeyboards/sweet16v2/kb2040/config.h
index 37a85b4711..e4609962f1 100644
--- a/keyboards/1upkeyboards/sweet16v2/kb2040/config.h
+++ b/keyboards/1upkeyboards/sweet16v2/kb2040/config.h
@@ -16,8 +16,6 @@
#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
#define RGB_MATRIX_LED_COUNT 20
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/1upkeyboards/sweet16v2/kb2040/info.json b/keyboards/1upkeyboards/sweet16v2/kb2040/info.json
index f1ac861c8c..928c8106bf 100644
--- a/keyboards/1upkeyboards/sweet16v2/kb2040/info.json
+++ b/keyboards/1upkeyboards/sweet16v2/kb2040/info.json
@@ -33,6 +33,9 @@
"rows": ["GP26", "GP1", "GP18", "GP5"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"encoder": {
"enabled": true,
"rotary": [
diff --git a/keyboards/1upkeyboards/sweet16v2/pro_micro/config.h b/keyboards/1upkeyboards/sweet16v2/pro_micro/config.h
index f773468d8f..e4609962f1 100644
--- a/keyboards/1upkeyboards/sweet16v2/pro_micro/config.h
+++ b/keyboards/1upkeyboards/sweet16v2/pro_micro/config.h
@@ -16,9 +16,6 @@
#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
-
#define RGB_MATRIX_LED_COUNT 20
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/1upkeyboards/sweet16v2/pro_micro/info.json b/keyboards/1upkeyboards/sweet16v2/pro_micro/info.json
index a8696ab64c..87f2f3574c 100644
--- a/keyboards/1upkeyboards/sweet16v2/pro_micro/info.json
+++ b/keyboards/1upkeyboards/sweet16v2/pro_micro/info.json
@@ -31,6 +31,9 @@
"rows": ["D1", "B5", "B4", "E6"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"encoder": {
"enabled": true,
"rotary": [
diff --git a/keyboards/25keys/zinc/keymaps/ginjake/keymap.c b/keyboards/25keys/zinc/keymaps/ginjake/keymap.c
index b7d0e5c93a..5cadafb4be 100644
--- a/keyboards/25keys/zinc/keymaps/ginjake/keymap.c
+++ b/keyboards/25keys/zinc/keymaps/ginjake/keymap.c
@@ -341,10 +341,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
//キー毎に時間差で色が変化していく
if (aqours_next_color_timer_count % NEXT_CHANGE_TARGET_TIME == 0) {
if (target_col < MATRIX_COLS) {
- sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (LED_TYPE *)&led[target_col]);
- sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (LED_TYPE *)&led[11 - target_col]);
- sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (LED_TYPE *)&led[12 + target_col]);
- sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (LED_TYPE *)&led[23 - target_col]);
+ sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (rgb_led_t *)&led[target_col]);
+ sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (rgb_led_t *)&led[11 - target_col]);
+ sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (rgb_led_t *)&led[12 + target_col]);
+ sethsv(aqours_h[aqours_num], aqours_s[aqours_num], aqours_v[aqours_num], (rgb_led_t *)&led[23 - target_col]);
target_col++;
rgblight_set();
}
diff --git a/keyboards/3w6/keymaps/manna-harbour_miryoku/config.h b/keyboards/3w6/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index fb567ad7d3..0000000000
--- a/keyboards/3w6/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright 2021 weteor
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// generated from users/manna-harbour_miryoku/miryoku.org -*- buffer-read-only: t -*-
-
-#pragma once
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- K32, K33, K34, K35, K36, K37 \
-)
diff --git a/keyboards/3w6/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/3w6/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index 74df5e0fe1..0000000000
--- a/keyboards/3w6/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright 2021 weteor
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// generated from users/manna-harbour_miryoku/miryoku.org -*- buffer-read-only: t -*-
diff --git a/keyboards/3w6/rev1/rules.mk b/keyboards/3w6/rev1/rules.mk
index 2194870d6b..b7988ce4f5 100644
--- a/keyboards/3w6/rev1/rules.mk
+++ b/keyboards/3w6/rev1/rules.mk
@@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes
LTO_ENABLE = no
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/3w6/rev2/rules.mk b/keyboards/3w6/rev2/rules.mk
index 2194870d6b..b7988ce4f5 100644
--- a/keyboards/3w6/rev2/rules.mk
+++ b/keyboards/3w6/rev2/rules.mk
@@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes
LTO_ENABLE = no
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/40percentclub/gherkin/keymaps/mjt/keymap.c b/keyboards/40percentclub/gherkin/keymaps/mjt/keymap.c
index 090fd1d296..3a5cef8fad 100644
--- a/keyboards/40percentclub/gherkin/keymaps/mjt/keymap.c
+++ b/keyboards/40percentclub/gherkin/keymaps/mjt/keymap.c
@@ -66,15 +66,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
void persistant_default_layer_set(uint16_t default_layer) {
@@ -166,39 +163,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
}
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
+void matrix_scan_user(void) {
}
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
-
//Tap Dance Definitions
tap_dance_action_t tap_dance_actions[] = {
//Tap once for Esc, twice for Caps Lock
diff --git a/keyboards/40percentclub/gherkin/keymaps/steno/keymap.c b/keyboards/40percentclub/gherkin/keymaps/steno/keymap.c
index 5f78ba1cde..ea473fa25f 100644
--- a/keyboards/40percentclub/gherkin/keymaps/steno/keymap.c
+++ b/keyboards/40percentclub/gherkin/keymaps/steno/keymap.c
@@ -1,5 +1,4 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT_ortho_3x10(
diff --git a/keyboards/40percentclub/gherkin/keymaps/talljoe-gherkin/keymap.c b/keyboards/40percentclub/gherkin/keymaps/talljoe-gherkin/keymap.c
index 111264c378..927192c63c 100644
--- a/keyboards/40percentclub/gherkin/keymaps/talljoe-gherkin/keymap.c
+++ b/keyboards/40percentclub/gherkin/keymaps/talljoe-gherkin/keymap.c
@@ -1,5 +1,4 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
#define ST_BOLT QK_STENO_BOLT
#define ST_GEM QK_STENO_GEMINI
diff --git a/keyboards/40percentclub/nano/keymaps/drashna/config.h b/keyboards/40percentclub/nano/keymaps/drashna/config.h
deleted file mode 100644
index 411ee8a81b..0000000000
--- a/keyboards/40percentclub/nano/keymaps/drashna/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define ANALOG_JOYSTICK_X_AXIS_PIN B4
-#define ANALOG_JOYSTICK_Y_AXIS_PIN B5
-
-#define ANALOG_JOYSTICK_CLICK_PIN E6
diff --git a/keyboards/40percentclub/nano/keymaps/drashna/keymap.c b/keyboards/40percentclub/nano/keymaps/drashna/keymap.c
deleted file mode 100644
index 04da4d16ec..0000000000
--- a/keyboards/40percentclub/nano/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-#include "analog.h"
-#include "pointing_device.h"
-
-#define KC_X0 LT(_FN, KC_ESC)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- KC_VOLU, KC_MPLY, KC_MPRV, QK_BOOT,
- KC_VOLD, KC_MUTE, KC_MNXT, QK_BOOT
- ),
-
-};
-// clang-format on
diff --git a/keyboards/40percentclub/nano/keymaps/drashna/rules.mk b/keyboards/40percentclub/nano/keymaps/drashna/rules.mk
deleted file mode 100644
index aa7966a8b5..0000000000
--- a/keyboards/40percentclub/nano/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-POINTING_DEVICE_ENABLE = yes
-POINTING_DEVICE_DRIVER = analog_joystick
-RGBLIGHT_ENABLE = no
-CONSOLE_ENABLE = no
-
-BOOTLOADER = qmk-dfu
diff --git a/keyboards/40percentclub/ut47/rules.mk b/keyboards/40percentclub/ut47/rules.mk
index 3b1b719e14..6ba6aa5f6f 100644
--- a/keyboards/40percentclub/ut47/rules.mk
+++ b/keyboards/40percentclub/ut47/rules.mk
@@ -13,4 +13,4 @@ AUDIO_ENABLE = no # Audio output
# custom matrix setup
CUSTOM_MATRIX = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/4pplet/eagle_viper_rep/rev_a/config.h b/keyboards/4pplet/eagle_viper_rep/rev_a/config.h
index 9bec945f24..350b9abad7 100644
--- a/keyboards/4pplet/eagle_viper_rep/rev_a/config.h
+++ b/keyboards/4pplet/eagle_viper_rep/rev_a/config.h
@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PWM_CHANNEL 4
/* Underglow */
-#define WS2812_SPI SPID1
+#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PIN A5
#define WS2812_SPI_SCK_PAL_MODE 0
@@ -41,6 +41,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LAYER_3 A8
#define LAYER_4 A9
#define LAYER_5 B9
-
-/* Added extra layer for use of layer leds */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
diff --git a/keyboards/4pplet/eagle_viper_rep/rev_a/info.json b/keyboards/4pplet/eagle_viper_rep/rev_a/info.json
index c08f53f7b7..baafb58153 100644
--- a/keyboards/4pplet/eagle_viper_rep/rev_a/info.json
+++ b/keyboards/4pplet/eagle_viper_rep/rev_a/info.json
@@ -13,6 +13,9 @@
"rows": ["A2", "A1", "B8", "A10", "C15", "A15", "B7", "B6", "C14", "C13"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
"backlight": {
"pin": "A3",
"levels": 10,
diff --git a/keyboards/4pplet/eagle_viper_rep/rev_b/config.h b/keyboards/4pplet/eagle_viper_rep/rev_b/config.h
index 5d5eefda21..b5957e6f30 100644
--- a/keyboards/4pplet/eagle_viper_rep/rev_b/config.h
+++ b/keyboards/4pplet/eagle_viper_rep/rev_b/config.h
@@ -34,6 +34,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LAYER_3 B0
#define LAYER_4 B9
#define LAYER_5 A9
-
-/* Added extra layer for use of layer leds */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
diff --git a/keyboards/4pplet/eagle_viper_rep/rev_b/info.json b/keyboards/4pplet/eagle_viper_rep/rev_b/info.json
index ad7513c13d..2ebb260686 100644
--- a/keyboards/4pplet/eagle_viper_rep/rev_b/info.json
+++ b/keyboards/4pplet/eagle_viper_rep/rev_b/info.json
@@ -13,6 +13,9 @@
"rows": ["A2", "A1", "B8", "A10", "C15", "A15", "B7", "B6", "C14", "C13"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
"backlight": {
"pin": "A6",
"levels": 6,
diff --git a/keyboards/4pplet/perk60_iso/rev_a/config.h b/keyboards/4pplet/perk60_iso/rev_a/config.h
index e033b16259..efad0a1718 100644
--- a/keyboards/4pplet/perk60_iso/rev_a/config.h
+++ b/keyboards/4pplet/perk60_iso/rev_a/config.h
@@ -21,10 +21,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_COUNT 1
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define RGB_MATRIX_LED_COUNT 62
-#define ISSI_PWM_FREQUENCY 0b010
+#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_DEFAULT_VAL 80
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/4pplet/perk60_iso/rev_a/rev_a.c b/keyboards/4pplet/perk60_iso/rev_a/rev_a.c
index 814a8f95d4..e3b8d71a90 100644
--- a/keyboards/4pplet/perk60_iso/rev_a/rev_a.c
+++ b/keyboards/4pplet/perk60_iso/rev_a/rev_a.c
@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "rev_a.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, K_2, J_2, L_2 }, //D402
{ 0, K_3, J_3, L_3 }, //D403
{ 0, K_4, J_4, L_4 }, //D404
diff --git a/keyboards/4pplet/waffling60/readme.md b/keyboards/4pplet/waffling60/readme.md
index acfa174eab..442de4d369 100644
--- a/keyboards/4pplet/waffling60/readme.md
+++ b/keyboards/4pplet/waffling60/readme.md
@@ -12,8 +12,8 @@ Make example for this keyboard (after setting up your build environment):
make 4pplet/waffling60/rev_a:default
make 4pplet/waffling60/rev_b:default
make 4pplet/waffling60/rev_c:default
-
make 4pplet/waffling60/rev_d:default
+ make 4pplet/waffling60/rev_e:default
make 4pplet/waffling60/rev_d_ansi:default
make 4pplet/waffling60/rev_d_iso:default
diff --git a/keyboards/4pplet/waffling60/rev_d/readme.md b/keyboards/4pplet/waffling60/rev_d/readme.md
index 3b6b9c94f2..092746325d 100644
--- a/keyboards/4pplet/waffling60/rev_d/readme.md
+++ b/keyboards/4pplet/waffling60/rev_d/readme.md
@@ -9,7 +9,7 @@ More info: https://geekhack.org/index.php?topic=103531.0
Make example for this keyboard (after setting up your build environment):
- make 4pplet/waffling60/rev_c:default
+ make 4pplet/waffling60/rev_d:default
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/4pplet/waffling60/rev_e/config.h b/keyboards/4pplet/waffling60/rev_e/config.h
new file mode 100644
index 0000000000..521ddf96a1
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/config.h
@@ -0,0 +1,20 @@
+/*
+Copyright 2023 Stefan Sundin "4pplet" <mail@4pplet.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#pragma once
+
+#define WS2812_EXTERNAL_PULLUP
+
diff --git a/keyboards/4pplet/waffling60/rev_e/info.json b/keyboards/4pplet/waffling60/rev_e/info.json
new file mode 100644
index 0000000000..3a75cf3d06
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/info.json
@@ -0,0 +1,917 @@
+{
+ "manufacturer": "4pplet",
+ "keyboard_name": "waffling60 Rev E",
+ "maintainer": "4pplet",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "COL2ROW",
+ "encoder": {
+ "rotary": [
+ {"pin_a": "A2", "pin_b": "A1", "resolution": 2}
+ ]
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "key_lock": true,
+ "mousekey": false,
+ "nkro": true,
+ "rgblight": true
+ },
+ "matrix_pins": {
+ "cols": ["B2", "A5", "A4", "A3", "F1", "F0", "C15", "C14", "C13", "B9", "B8", "B7", "A15", "B3"],
+ "rows": ["B14", "A9", "B6", "B5", "B4"]
+ },
+ "processor": "STM32F072",
+ "rgblight": {
+ "animations": {
+ "alternating": true,
+ "breathing": true,
+ "christmas": true,
+ "knight": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true,
+ "rgb_test": true,
+ "snake": true,
+ "static_gradient": true,
+ "twinkle": true
+ },
+ "led_count": 17
+ },
+ "url": "https://github.com/4pplet/waffling60",
+ "usb": {
+ "device_version": "0.0.5",
+ "pid": "0x0014",
+ "vid": "0x4444"
+ },
+ "ws2812": {
+ "pin": "A8"
+ },
+ "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_ansi_tsangan", "60_hhkb", "60_iso", "60_iso_split_bs_rshift", "60_iso_tsangan", "60_tsangan_hhkb"],
+ "layouts": {
+ "LAYOUT_60_ansi": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 13, "y": 0, "w": 2},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "Alt", "matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Fn", "matrix": [4, 12], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "Alt", "matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Fn", "matrix": [4, 12], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_tsangan": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 13, "y": 0, "w": 2},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 11], "x": 12.5, "y": 4},
+ {"label": "Ctrl", "matrix": [4, 12], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_hhkb": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 11], "x": 12.5, "y": 4}
+ ]
+ },
+ "LAYOUT_60_iso": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 13, "y": 0, "w": 2},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "Enter", "matrix": [3, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "NUHS", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "NUBS", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "Alt", "matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Fn", "matrix": [4, 12], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "Enter", "matrix": [3, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "NUHS", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "NUBS", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "Alt", "matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Fn", "matrix": [4, 12], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso_tsangan": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 13, "y": 0, "w": 2},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "Enter", "matrix": [3, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "NUHS", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "NUBS", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 11], "x": 12.5, "y": 4},
+ {"label": "Ctrl", "matrix": [4, 12], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_tsangan_hhkb": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 1], "x": 0, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 2], "x": 1.5, "y": 4},
+ {"label": "Alt", "matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
+ {"label": "Alt", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 11], "x": 12.5, "y": 4},
+ {"label": "Ctrl", "matrix": [4, 12], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+
+ "LAYOUT_6u_ansi": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 13, "y": 0, "w": 2},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"label": "Ctrl", "matrix": [4, 0], "x":0, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 1], "x":1.5, "y":4},
+ {"label": "Alt", "matrix": [4, 2], "x":2.5, "y":4, "w":1.5},
+ {"label": "Space", "matrix": [4, 6], "x":4, "y":4, "w":6},
+ {"label": "Alt", "matrix": [4, 9], "x":10, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 10], "x":11.5, "y":4},
+ {"label": "Menu", "matrix": [4, 11], "x":12.5, "y":4},
+ {"label": "Fn", "matrix": [4, 12], "x":13.5, "y":4, "w":1.5}
+ ]
+ },
+ "LAYOUT_6u_ansi_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x":0, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 1], "x":1.5, "y":4},
+ {"label": "Alt", "matrix": [4, 2], "x":2.5, "y":4, "w":1.5},
+ {"label": "Space", "matrix": [4, 6], "x":4, "y":4, "w":6},
+ {"label": "Alt", "matrix": [4, 9], "x":10, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 10], "x":11.5, "y":4},
+ {"label": "Menu", "matrix": [4, 11], "x":12.5, "y":4},
+ {"label": "Fn", "matrix": [4, 12], "x":13.5, "y":4, "w":1.5}
+ ]
+ },
+ "LAYOUT_6u_iso": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 13, "y": 0, "w": 2},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "Enter", "matrix": [3, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "NUHS", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "NUBS", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"label": "Ctrl", "matrix": [4, 0], "x":0, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 1], "x":1.5, "y":4},
+ {"label": "Alt", "matrix": [4, 2], "x":2.5, "y":4, "w":1.5},
+ {"label": "Space", "matrix": [4, 6], "x":4, "y":4, "w":6},
+ {"label": "Alt", "matrix": [4, 9], "x":10, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 10], "x":11.5, "y":4},
+ {"label": "Menu", "matrix": [4, 11], "x":12.5, "y":4},
+ {"label": "Fn", "matrix": [4, 12], "x":13.5, "y":4, "w":1.5}
+ ]
+ },
+ "LAYOUT_6u_iso_split_bs_rshift": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "~", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "Enter", "matrix": [3, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "NUHS", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "NUBS", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x":0, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 1], "x":1.5, "y":4},
+ {"label": "Alt", "matrix": [4, 2], "x":2.5, "y":4, "w":1.5},
+ {"label": "Space", "matrix": [4, 6], "x":4, "y":4, "w":6},
+ {"label": "Alt", "matrix": [4, 9], "x":10, "y":4, "w":1.5},
+ {"label": "Win", "matrix": [4, 10], "x":11.5, "y":4},
+ {"label": "Menu", "matrix": [4, 11], "x":12.5, "y":4},
+ {"label": "Fn", "matrix": [4, 12], "x":13.5, "y":4, "w":1.5}
+ ]
+ },
+ "LAYOUT_all": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "|", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "Backspace", "matrix": [2, 13], "x": 14, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "NUHS", "matrix": [2, 12], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [3, 13], "x": 13.75, "y": 2, "w": 1.25},
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "NUBS", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [4, 13], "x": 14, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 4], "x": 3.75, "y": 4, "w": 2.25},
+ {"label": "Space", "matrix": [4, 6], "x": 6, "y": 4, "w": 1.25},
+ {"label": "Space", "matrix": [4, 8], "x": 7.25, "y": 4, "w": 2.75},
+ {"label": "Alt", "matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Ctrl", "matrix": [4, 12], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/keymap.c b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/keymap.c
new file mode 100644
index 0000000000..1a0147f148
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/keymap.c
@@ -0,0 +1,40 @@
+/*
+Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+// main layer
+[0] = LAYOUT_6u_ansi(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL),
+// basic function layer
+[1] = LAYOUT_6u_ansi(
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(KC_BRID, KC_BRIU) }
+};
+#endif
diff --git a/keyboards/keychron/q0/rev_0131/keymaps/default/rules.mk b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/rules.mk
index ee32568148..ee32568148 100644
--- a/keyboards/keychron/q0/rev_0131/keymaps/default/rules.mk
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi/rules.mk
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/keymap.c b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/keymap.c
new file mode 100644
index 0000000000..1b68fce40e
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/keymap.c
@@ -0,0 +1,40 @@
+/*
+Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+// main layer
+[0] = LAYOUT_6u_ansi_split_bs_rshift(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL),
+// basic function layer
+[1] = LAYOUT_6u_ansi_split_bs_rshift(
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(KC_BRID, KC_BRIU) }
+};
+#endif
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/rules.mk b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_ansi_split_bs_rshift/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/keymap.c b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/keymap.c
new file mode 100644
index 0000000000..919eec54f9
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/keymap.c
@@ -0,0 +1,40 @@
+/*
+Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+// main layer
+[0] = LAYOUT_6u_iso(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS ,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL),
+// basic function layer
+[1] = LAYOUT_6u_iso(
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(KC_BRID, KC_BRIU) }
+};
+#endif
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/rules.mk b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/keymap.c b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/keymap.c
new file mode 100644
index 0000000000..4731a11d47
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/keymap.c
@@ -0,0 +1,40 @@
+/*
+Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+// main layer
+[0] = LAYOUT_6u_iso_split_bs_rshift(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL),
+// basic function layer
+[1] = LAYOUT_6u_iso_split_bs_rshift(
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(KC_BRID, KC_BRIU) }
+};
+#endif
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/rules.mk b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/6u_iso_split_bs_rshift/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/default/keymap.c b/keyboards/4pplet/waffling60/rev_e/keymaps/default/keymap.c
new file mode 100644
index 0000000000..8b1bb6a2c4
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/default/keymap.c
@@ -0,0 +1,40 @@
+/*
+Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+// main layer
+[0] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL),
+// basic function layer
+[1] = LAYOUT_all(
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(KC_BRID, KC_BRIU) }
+};
+#endif
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/default/rules.mk b/keyboards/4pplet/waffling60/rev_e/keymaps/default/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/default/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/4pplet/waffling60/rev_e/keymaps/via/keymap.c b/keyboards/4pplet/waffling60/rev_e/keymaps/via/keymap.c
new file mode 100644
index 0000000000..8b1bb6a2c4
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/via/keymap.c
@@ -0,0 +1,40 @@
+/*
+Copyright 2020 Stefan Sundin "4pplet" <4pplet@protonmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+// main layer
+[0] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL),
+// basic function layer
+[1] = LAYOUT_all(
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
+};
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(KC_BRID, KC_BRIU) }
+};
+#endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/rules.mk b/keyboards/4pplet/waffling60/rev_e/keymaps/via/rules.mk
index f1adcab005..f1adcab005 100644
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/rules.mk
+++ b/keyboards/4pplet/waffling60/rev_e/keymaps/via/rules.mk
diff --git a/keyboards/4pplet/waffling60/rev_e/matrix_diagram.md b/keyboards/4pplet/waffling60/rev_e/matrix_diagram.md
new file mode 100644
index 0000000000..fb49b758ec
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/matrix_diagram.md
@@ -0,0 +1,37 @@
+# Matrix Diagram for 4pplet Waffling60 Rev E Solder
+
+```
+ ┌───────┐
+ 2u Backspace │2D │
+ └───────┘
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │2D │
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ┌─────┐
+│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ │ │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌──┴┐3D │
+│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │3D │ │2C │ │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ └───┴────┘
+│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │4D │ ISO Enter
+├────┼───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴───┼───┴┬────┬┴───┤
+│40 │41 │42 │44 │46 │48 │49 │4A │4B │4C │
+└────┴────┴────┴────────┴────┴──────────┴────┴────┴────┴────┘
+┌────────┐ ┌──────────┐
+│30 │ 2.25u LShift 2.75u RShift │3C │
+└────────┘ └──────────┘
+┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐
+│40 │41 │42 │46 │49 │4A │4B │4C │ Standard
+└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
+│40 │41 │42 │46 │4A │4B │4C │ Tsangan/WKL
+└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
+┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐
+│40 │41 │42 │46 │49 │4A │4B │4C │ 6U bottom row
+└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+┌─────┬───┬─────┬──────────┬──────┬─────────┬─────┬───┬─────┐
+│40 │41 │42 │44 │46 │48 │4A │4B │4C │ 3U split space
+└─────┴───┴─────┴──────────┴──────┴─────────┴─────┴───┴─────┘
+┌─────┬───┬───────────────────────────────────────┬───┬─────┐
+│40 │41 │46 │4B │4C │ 10U space
+└─────┴───┴───────────────────────────────────────┴───┴─────┘
+
+```
diff --git a/keyboards/4pplet/waffling60/rev_e/readme.md b/keyboards/4pplet/waffling60/rev_e/readme.md
new file mode 100644
index 0000000000..ee13539e5d
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/readme.md
@@ -0,0 +1,20 @@
+# waffling60
+
+A 60% PCB for MX switches, one hot swap and one solder-pcb version with decent layout support. Revision E adds underglow and 6u space support.
+
+More info: https://github.com/4pplet/waffling60
+
+* Keyboard Maintainer: [4pplet](https://github.com/4pplet)
+* Hardware Supported: [waffling60](https://github.com/4pplet/waffling60)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make 4pplet/waffling60/rev_e:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+How to enter bootloader (DFU):
+* Short the reset-header (labled BL/RESET) on the back of the PCB for about 2 seconds for the keyboard to enter DFU. When in DFU, it's ready to flash the firmware. If using a APM MCU it will not automatically reset after flash. Simply short the reset-header for a very short time to just reset the PCB, alternatively unplug and repluck the USB-cable to the keyboard.
+
+Alternative option if the firmware is already pre-flashed:
+* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware.
diff --git a/keyboards/4pplet/waffling60/rev_e/rev_e.c b/keyboards/4pplet/waffling60/rev_e/rev_e.c
new file mode 100644
index 0000000000..81941d54be
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/rev_e.c
@@ -0,0 +1,35 @@
+/*
+Copyright 2022 Stefan Sundin "4pplet" <mail@4pplet.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#include "rev_e.h"
+
+void keyboard_pre_init_kb(void) {
+ rgblight_set_effect_range(0, 16);
+ keyboard_pre_init_user();
+}
+
+bool led_update_kb(led_t led_state) {
+ bool res = led_update_user(led_state);
+ if (CAPS_LOCK_ENABLE && res) {
+ if(led_state.caps_lock) {
+ rgblight_sethsv_at(CAPS_LOCK_COLOR, 16);
+ }
+ else{
+ rgblight_sethsv_at(HSV_OFF, 16);
+ }
+ }
+ return res;
+}
diff --git a/keyboards/4pplet/waffling60/rev_e/rev_e.h b/keyboards/4pplet/waffling60/rev_e/rev_e.h
new file mode 100644
index 0000000000..61ebac1912
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/rev_e.h
@@ -0,0 +1,22 @@
+/*
+Copyright 2022 Stefan Sundin "4pplet" <mail@4pplet.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+#pragma once
+
+#include "quantum.h"
+
+#define CAPS_LOCK_ENABLE true
+#define CAPS_LOCK_COLOR HSV_GREEN
diff --git a/keyboards/4pplet/waffling60/rev_e/rules.mk b/keyboards/4pplet/waffling60/rev_e/rules.mk
new file mode 100644
index 0000000000..04fe1eba2a
--- /dev/null
+++ b/keyboards/4pplet/waffling60/rev_e/rules.mk
@@ -0,0 +1,2 @@
+# Wildcard to allow APM32 MCU
+DFU_SUFFIX_ARGS = -p FFFF -v FFFF
diff --git a/keyboards/9key/keymaps/bcat/keymap.c b/keyboards/9key/keymaps/bcat/keymap.c
deleted file mode 100644
index 5a9ba1a88e..0000000000
--- a/keyboards/9key/keymaps/bcat/keymap.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "bcat.h"
-
-#define KY_LOCK LGUI(KC_L) /* Chrome OS: Lock screen */
-#define KY_MICM LSG(KC_1) /* Meet Shortcuts: Mute mic */
-#define KY_MICU LSG(KC_2) /* Meet Shortcuts: Unmute mic */
-#define KY_RHAND LSG(KC_3) /* Meet Shortcuts: Raise/lower hand */
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- [LAYER_DEFAULT] = LAYOUT(
- KC_MPLY, KC_VOLU, KY_RHAND,
- KY_LOCK, KC_VOLD, KY_MICU,
- LY_FN1, KC_MUTE, KY_MICM
- ),
- [LAYER_FUNCTION_1] = LAYOUT(
- EE_CLR, _______, QK_BOOT,
- _______, _______, _______,
- _______, _______, _______
- ),
- // clang-format on
-};
diff --git a/keyboards/9key/keymaps/bcat/readme.md b/keyboards/9key/keymaps/bcat/readme.md
deleted file mode 100644
index d38ae5463b..0000000000
--- a/keyboards/9key/keymaps/bcat/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# bcat's 9-Key layout
-
-This is a super simple PCB-mount macropad with nine keys, used on my
-work-from-home Chromebox for media/volume control and to activate some global
-shortcuts for Google Meet.
diff --git a/keyboards/a_dux/keymaps/manna-harbour_miryoku/config.h b/keyboards/a_dux/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index dbbff11bb6..0000000000
--- a/keyboards/a_dux/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2021 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define LAYOUT_miryoku( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- K33, K34, K35, K36 \
-)
diff --git a/keyboards/a_dux/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/a_dux/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/a_dux/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/a_dux/keymaps/manna-harbour_miryoku/rules.mk b/keyboards/a_dux/keymaps/manna-harbour_miryoku/rules.mk
deleted file mode 100644
index ef40279cbc..0000000000
--- a/keyboards/a_dux/keymaps/manna-harbour_miryoku/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Copyright 2021 Manna Harbour
-# https://github.com/manna-harbour/miryoku
-
-MIRYOKU_KLUDGE_THUMBCOMBOS=yes
diff --git a/keyboards/abacus/config.h b/keyboards/abacus/config.h
index ca764a9eeb..84e1acbb3c 100644
--- a/keyboards/abacus/config.h
+++ b/keyboards/abacus/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DIP_SWITCH_PINS { D0 }
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/abacus/info.json b/keyboards/abacus/info.json
index 2e14782997..ad8ebcc865 100644
--- a/keyboards/abacus/info.json
+++ b/keyboards/abacus/info.json
@@ -13,6 +13,9 @@
"rows": ["D3", "D2", "D4", "C6"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["D0"]
+ },
"encoder": {
"rotary": [
{"pin_a": "F1", "pin_b": "F0"}
diff --git a/keyboards/abko/ak84bt/ak84bt.c b/keyboards/abko/ak84bt/ak84bt.c
index 0ecd06b177..a51f1f458f 100644
--- a/keyboards/abko/ak84bt/ak84bt.c
+++ b/keyboards/abko/ak84bt/ak84bt.c
@@ -16,7 +16,7 @@
#include QMK_KEYBOARD_H
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{0, G_1, I_1, H_1},
{0, G_3, I_3, H_3},
{0, G_4, I_4, H_4},
diff --git a/keyboards/abko/ak84bt/config.h b/keyboards/abko/ak84bt/config.h
index f6a3b55851..0a7f31bf7d 100644
--- a/keyboards/abko/ak84bt/config.h
+++ b/keyboards/abko/ak84bt/config.h
@@ -17,10 +17,9 @@
#pragma once
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1010011
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_VCC
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 45
#define DRIVER_2_LED_TOTAL 45
diff --git a/keyboards/acheron/apollo/87h/gamma/config.h b/keyboards/acheron/apollo/87h/gamma/config.h
index 6209fa21f7..37c0aaef64 100644
--- a/keyboards/acheron/apollo/87h/gamma/config.h
+++ b/keyboards/acheron/apollo/87h/gamma/config.h
@@ -25,12 +25,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
// RGB Matrix defines
-#define DRIVER_ADDR_1 0b0110000
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define DRIVER_1_LED_TOTAL 87
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-#define ISSI_DRIVER_TOTAL RGB_MATRIX_LED_COUNT
#define RGB_MATRIX_DEFAULT_VAL 80
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/acheron/apollo/87h/gamma/gamma.c b/keyboards/acheron/apollo/87h/gamma/gamma.c
index fb381f52ce..19e9106287 100644
--- a/keyboards/acheron/apollo/87h/gamma/gamma.c
+++ b/keyboards/acheron/apollo/87h/gamma/gamma.c
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/acheron/shark/alpha/keymaps/ajp10304/readme.md b/keyboards/acheron/shark/alpha/keymaps/ajp10304/readme.md
deleted file mode 100644
index e091e5d318..0000000000
--- a/keyboards/acheron/shark/alpha/keymaps/ajp10304/readme.md
+++ /dev/null
@@ -1,126 +0,0 @@
-# AJP10304 Custom Shark Layout
-# Also available for the Planck, Quark, JJ40 and Atreus50
-
-**Note:** In the tables below where there are two characters on a key,
-the second is the output when shift is applied.
-
-**Note:** The below tables assume a UK layout.
-
-#### Flashing
-Refer to the README.md of the keyboard you want to flash.
-
-##### Main Qwerty Layer
-
-* Tab: when held, operates as shift.
-* Enter: when held, operates as shift.
-* MENU: perform right-click
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:|
-| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
-| Tab | A | S | D | F | G | H | J | K | L | ;: | Enter|
-| Shft | Z | X | C | V | B | N | M | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
-
-##### Main Colemak-DHm Layer
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:|:---:|:-----:|:----:|:-----:|:-----:|:-----:|:----:|:----:| ----:|
-| Esc | Q | W | F | P | B | J | L | U | Y | ;: | Bksp |
-| Tab | A | R | S | T | G | M | N | E | I | O | Enter|
-| Shft | Z | X | C | D | V | K | H | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI | Lower | Bksp | Space | Raise | Shift | MENU | Ctrl | Fn2 |
-
-##### Function Layer
-Activated when `fn` held in the above `qwerty` layer.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
-| Shift | \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn2 |
-
-##### Lower Layer
-Activated when `Lower` is held in the above `qwerty` layer.
-
-* Numbers are along the top row, their shifted counterparts are on row 2.
-* WrdBks: `backspace` with `ctrl` applied. I.e. delete a word.
-* WrdDel: `delete` with `ctrl` applied. I.e. forward delete a word.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | DEL | Bksp |
-| ! | " | £ | $ | % | ^ | & | * | ( | ) |WrdDel|WrdBks|
-| Shift | \| | `¬ | #~ | '@ | -_ | =+ | #~ | [{ | ]} | '@ |Shift |
-| | | | |Lower | Del |Space | | Next | Vol- | Vol+ | Play |
-
-##### Raise Layer
-Activated when `Raise` is held in the above `qwerty` layer.
-
-* Preferred layer for typing brackets.
-* Allows for cursor navigation to be used solely with the right hand.
-* WRDSEL: Select the word where the cursor is.
-* |< and >|: Apply `ctrl` to `left` and `right` respectively for word jumping.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
-| ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
-| ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
-| | | | { | } | |&#124;<| LEFT | DOWN |RIGHT |>&#124;|ZOOM -|
-| Mouse | | | | | Alt | Enter |Raise | | | | |
-
-##### Lower + Raise
-Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
-
-* Audio controls in the same position as cursor keys from the `Raise` layer.
-* ????: Runs a macro for outputting a text string. Do not use this store passwords.
-* Reset: Enter bootloader for flashing firmware to the keyboard.
-* CAPS: Toggle caps lock.
-* Macro functions: Allows recording of macros. To start recording the macro, press either REC1 or REC2.
-To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
-* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
-MRSE with RAISE, MFNC with FUNC and MFNC2 with FUNC2 respectively.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|:-------:|
-| ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
-| CAPS | | | | | PLAY1|PLAY2 | Mute | Vol+ | Play | | Qwerty |
-| MAC | | | | | STOP1|STOP2 | Prev | Vol- | Next | | Colemak |
-| | | | | | | | | DYN | | | |
-
-##### Function 2 Layer
-Activated when `fn` held in the above `qwerty` layer.
-* WRDSEL: Select the word where the cursor is.
-* LNDEL: Delete the line where the cursor is.
-* LNSEL: Select the line where the cursor is.
-* DUP: Duplicate the selected text.
-* LNJOIN: Join the line where the cursor is with the following line.
-* MODE: Print either `PC` or `OSX` depending on what layer mode is active.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | |WRDSEL| | | | LNDEL| | | | | |
-| | | LNSEL| DUP | | | | |LNJOIN| | | |
-| | UNDO | CUT | COPY | PASTE| | | | | | | MODE |
-| | | | | | | | | | | | |
-
-##### Mouse Layer
-Activated when `fn` and `raise` held together.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| ESC | | | | | | W_L | W_UP | BTN3 | W_DWN| W_R | |
-| ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
-| ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN | RIGHT| | |
-| | | | | | | | | | | | |
-
-##### Number Pad Layout
-Activated when holding `Esc` key.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | | | | | |NMLOCK| 7 | 8 | 9 | / | |
-| | | | | | | | 4 | 5 | 6 | * | |
-| | | | | | | | 1 | 2 | 3 | + | |
-| | | | | | | | 0 | . | , | - | |
diff --git a/keyboards/acheron/shark/beta/info.json b/keyboards/acheron/shark/beta/info.json
index 5ec2403638..7daab0a2c0 100644
--- a/keyboards/acheron/shark/beta/info.json
+++ b/keyboards/acheron/shark/beta/info.json
@@ -9,6 +9,9 @@
"rows": ["A8", "B14", "A4", "A3"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"encoder": {
"rotary": [
{"pin_a": "C15", "pin_b": "C14"}
diff --git a/keyboards/acheron/shark/beta/rules.mk b/keyboards/acheron/shark/beta/rules.mk
index a398475a3e..94335efa29 100644
--- a/keyboards/acheron/shark/beta/rules.mk
+++ b/keyboards/acheron/shark/beta/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
LTO_ENABLE = no
ENCODER_ENABLE = yes
-
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/acheron/themis/87h/config.h b/keyboards/acheron/themis/87h/config.h
index 8a1ff48583..605594eea2 100644
--- a/keyboards/acheron/themis/87h/config.h
+++ b/keyboards/acheron/themis/87h/config.h
@@ -28,6 +28,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define WS2812_PWM_PAL_MODE 1
#define WS2812_DMA_STREAM STM32_DMA2_STREAM5
#define WS2812_DMA_CHANNEL 6
-
-#define WEAR_LEVELING_LOGICAL_SIZE 4096
-#define WEAR_LEVELING_BACKING_SIZE 8192
diff --git a/keyboards/acheron/themis/87h/info.json b/keyboards/acheron/themis/87h/info.json
index ed5d48690d..cbff8f4eec 100644
--- a/keyboards/acheron/themis/87h/info.json
+++ b/keyboards/acheron/themis/87h/info.json
@@ -21,6 +21,11 @@
"nkro": true
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 8192
+ }
+ },
"ws2812": {
"pin": "B15"
},
diff --git a/keyboards/acheron/themis/87htsc/config.h b/keyboards/acheron/themis/87htsc/config.h
index 8a1ff48583..605594eea2 100644
--- a/keyboards/acheron/themis/87htsc/config.h
+++ b/keyboards/acheron/themis/87htsc/config.h
@@ -28,6 +28,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define WS2812_PWM_PAL_MODE 1
#define WS2812_DMA_STREAM STM32_DMA2_STREAM5
#define WS2812_DMA_CHANNEL 6
-
-#define WEAR_LEVELING_LOGICAL_SIZE 4096
-#define WEAR_LEVELING_BACKING_SIZE 8192
diff --git a/keyboards/acheron/themis/87htsc/info.json b/keyboards/acheron/themis/87htsc/info.json
index 854ad5a7d5..5b491690bb 100644
--- a/keyboards/acheron/themis/87htsc/info.json
+++ b/keyboards/acheron/themis/87htsc/info.json
@@ -21,6 +21,11 @@
"nkro": true
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 8192
+ }
+ },
"ws2812": {
"pin": "B15"
},
diff --git a/keyboards/acheron/themis/88htsc/config.h b/keyboards/acheron/themis/88htsc/config.h
index 8a1ff48583..605594eea2 100644
--- a/keyboards/acheron/themis/88htsc/config.h
+++ b/keyboards/acheron/themis/88htsc/config.h
@@ -28,6 +28,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define WS2812_PWM_PAL_MODE 1
#define WS2812_DMA_STREAM STM32_DMA2_STREAM5
#define WS2812_DMA_CHANNEL 6
-
-#define WEAR_LEVELING_LOGICAL_SIZE 4096
-#define WEAR_LEVELING_BACKING_SIZE 8192
diff --git a/keyboards/acheron/themis/88htsc/info.json b/keyboards/acheron/themis/88htsc/info.json
index cfce0702eb..073a16e946 100644
--- a/keyboards/acheron/themis/88htsc/info.json
+++ b/keyboards/acheron/themis/88htsc/info.json
@@ -21,6 +21,11 @@
"nkro": true
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 8192
+ }
+ },
"ws2812": {
"pin": "B15"
},
diff --git a/keyboards/adafruit/macropad/keymaps/drashna/config.h b/keyboards/adafruit/macropad/keymaps/drashna/config.h
deleted file mode 100644
index 4d85f039be..0000000000
--- a/keyboards/adafruit/macropad/keymaps/drashna/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-// Copyright 2023 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64
-#define TAPPING_TERM 499
diff --git a/keyboards/adafruit/macropad/keymaps/drashna/keymap.c b/keyboards/adafruit/macropad/keymaps/drashna/keymap.c
deleted file mode 100644
index d87e4afd66..0000000000
--- a/keyboards/adafruit/macropad/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,100 +0,0 @@
-// Copyright 2023 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "drashna.h"
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- LT(1,KC_MUTE),
- KC_ENT, KC_0, KC_BSPC,
- KC_7, KC_8, KC_9,
- KC_4, KC_5, KC_6,
- KC_1, KC_2, KC_3
- ),
- [1] = LAYOUT(
- _______,
- CK_TOGG, AU_TOGG, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______
- ),
-};
-// clang-format on
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [0] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
- [1] = {ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)},
-};
-#endif
-
-void render_oled_title(bool side) {
- oled_write_P(PSTR(" Macropad "), true);
-}
-
-void render_rgb_mode(uint8_t col, uint8_t line);
-
-void l_render_keylock_status(led_t led_usb_state, uint8_t col, uint8_t line) {
- oled_set_cursor(col, line);
-#ifdef CAPS_WORD_ENABLE
- led_usb_state.caps_lock |= is_caps_word_on();
-#endif
- oled_write_P(PSTR(OLED_RENDER_LOCK_NUML), led_usb_state.num_lock);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(OLED_RENDER_LOCK_CAPS), led_usb_state.caps_lock);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(OLED_RENDER_LOCK_SCLK), led_usb_state.scroll_lock);
-}
-
-bool oled_task_keymap(void) {
- oled_write_raw_P(header_image, sizeof(header_image));
- oled_set_cursor(0, 1);
- oled_write_raw_P(row_2_image, sizeof(row_2_image));
- oled_set_cursor(4, 0);
- render_oled_title(false);
-
- render_kitty(0, 2);
- render_matrix_scan_rate(1, 7, 2);
-
-#ifdef AUDIO_ENABLE
- oled_set_cursor(7, 4);
- bool l_is_audio_on = is_audio_on();
-
- static const char PROGMEM audio_status[2][3] = {{0xE0, 0xE1, 0}, {0xE2, 0xE3, 0}};
- oled_write_P(audio_status[l_is_audio_on], false);
-
-# ifdef AUDIO_CLICKY
- bool l_is_clicky_on = is_clicky_on();
- static const char PROGMEM audio_clicky_status[2][3] = {{0xF4, 0xF5, 0}, {0xF6, 0xF7, 0}};
- oled_write_P(audio_clicky_status[l_is_clicky_on && l_is_audio_on], false);
-# endif
-#endif
-
- static const char PROGMEM cat_mode[3] = {0xF8, 0xF9, 0};
- oled_write_P(cat_mode, get_keyboard_lock());
-
-#ifdef RGB_MATIRX_ENABLE
- static const char PROGMEM rgb_layer_status[2][3] = {{0xEE, 0xEF, 0}, {0xF0, 0xF1, 0}};
- oled_write_P(rgb_layer_status[rgb_matrix_is_enabled()], false);
-#endif
-
-#ifdef HAPTIC_ENABLE
- static const char PROGMEM nukem_good[2] = {0xFA, 0};
- oled_write_P(haptic_get_enable() ? nukem_good : PSTR(" "), false);
-#endif
-
- l_render_keylock_status(host_keyboard_led_state(), 7, 5);
- render_rgb_mode(1, 6);
-
- for (uint8_t i = 1; i < 7; i++) {
- oled_set_cursor(0, i);
- oled_write_raw_P(display_border, sizeof(display_border));
- oled_set_cursor(21, i);
- oled_write_raw_P(display_border, sizeof(display_border));
- }
- oled_set_cursor(0, 7);
- oled_write_raw_P(footer_image, sizeof(footer_image));
-
- return false;
-}
diff --git a/keyboards/adafruit/macropad/keymaps/drashna/rules.mk b/keyboards/adafruit/macropad/keymaps/drashna/rules.mk
deleted file mode 100644
index ea090a5756..0000000000
--- a/keyboards/adafruit/macropad/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-ENCODER_MAP_ENABLE = yes
-DEBUG_MATRIX_SCAN_RATE_ENABLE = api
-WPM_ENABLE = yes
diff --git a/keyboards/adafruit/macropad/keymaps/peterfalken/keymap.c b/keyboards/adafruit/macropad/keymaps/peterfalken/keymap.c
deleted file mode 100644
index f232a99861..0000000000
--- a/keyboards/adafruit/macropad/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "peterfalken.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_MUTE,
- KC_7, KC_8, KC_9,
- KC_4, KC_5, KC_6,
- KC_1, KC_2, KC_3,
- KC_ENT, KC_0, KC_BSPC
- )
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
-};
-#endif
-
-#ifdef OLED_ENABLE
-static void render_qmk_logo(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x3f, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
- 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x03, 0x83, 0x83, 0x83, 0x83, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe,
- 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x83, 0x83, 0x83, 0x83, 0x03,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x81, 0x83, 0x83, 0x83, 0x83, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x83, 0x83, 0x83, 0x83, 0x81,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x01, 0x07, 0x1f, 0x3f, 0x7f, 0x7e, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xff, 0xff,
- 0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0x7e, 0x7f, 0x3f, 0x1f, 0x07, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xc0, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0xff, 0xff,
- 0xff, 0xff, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc0,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfc, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc,
- 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- };
-
- oled_write_raw_P(qmk_logo, sizeof(qmk_logo));
-}
-
-bool oled_task_user(void) {
- render_qmk_logo();
- return true;
-}
-#endif // OLED_ENABLE
diff --git a/keyboards/adafruit/macropad/keymaps/peterfalken/rules.mk b/keyboards/adafruit/macropad/keymaps/peterfalken/rules.mk
deleted file mode 100644
index 59ffb099c2..0000000000
--- a/keyboards/adafruit/macropad/keymaps/peterfalken/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# Setup QMK features
-ENCODER_MAP_ENABLE = yes
-RGB_MATRIX_ENABLE = no # Disable RGB key matrix
diff --git a/keyboards/adm42/config.h b/keyboards/adm42/config.h
deleted file mode 100644
index b5ba2eb94e..0000000000
--- a/keyboards/adm42/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright 2020-2022 Lorenzo Leonini
- * SPDX-License-Identifier: GPL-2.0-only
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#if defined(CONSOLE_ENABLE)
- #define DEBUG_MATRIX_SCAN_RATE
-#endif
diff --git a/keyboards/adm42/info.json b/keyboards/adm42/info.json
deleted file mode 100644
index b2bdbc4dad..0000000000
--- a/keyboards/adm42/info.json
+++ /dev/null
@@ -1,90 +0,0 @@
-{
- "keyboard_name": "ADM42",
- "manufacturer": "Lorenzo Leonini",
- "url": "https://adm42.dev/",
- "maintainer": "lleonini",
- "debounce": 10,
- "usb": {
- "vid": "0x04D8",
- "pid": "0xE873",
- "device_version": "0.0.1"
- },
- "ws2812": {
- "pin": "B7"
- },
- "rgb_matrix": {
- "driver": "ws2812",
- "sat_steps": 24
- },
- "qmk": {
- "tap_keycode_delay": 1
- },
- "build": {
- "debounce_type": "sym_eager_pk"
- },
- "matrix_pins": {
- "cols": ["C6", "B6", "B5", "B4", "D7", "D6", "F0", "F1", "F4", "F5", "F6", "F7"],
- "rows": ["C7", "D5", "D3", "D2"]
- },
- "diode_direction": "ROW2COL",
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "layout_aliases": {
- "LAYOUT_adm42_3x12_6": "LAYOUT"
- },
- "layouts": {
- "LAYOUT": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0.8},
- {"matrix": [0, 1], "x": 1, "y": 0.8},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0.5},
- {"matrix": [0, 5], "x": 5, "y": 0.5},
-
- {"matrix": [0, 6], "x": 7.5, "y": 0.5},
- {"matrix": [0, 7], "x": 8.5, "y": 0.5},
- {"matrix": [0, 8], "x": 9.5, "y": 0},
- {"matrix": [0, 9], "x": 10.5, "y": 0},
- {"matrix": [0, 10], "x": 11.5, "y": 0.8},
- {"matrix": [0, 11], "x": 12.5, "y": 0.8},
-
- {"matrix": [1, 0], "x": 0, "y": 1.8},
- {"matrix": [1, 1], "x": 1, "y": 1.8},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1.5},
- {"matrix": [1, 5], "x": 5, "y": 1.5},
-
- {"matrix": [1, 6], "x": 7.5, "y": 1.5},
- {"matrix": [1, 7], "x": 8.5, "y": 1.5},
- {"matrix": [1, 8], "x": 9.5, "y": 1},
- {"matrix": [1, 9], "x": 10.5, "y": 1},
- {"matrix": [1, 10], "x": 11.5, "y": 1.8},
- {"matrix": [1, 11], "x": 12.5, "y": 1.8},
-
- {"matrix": [2, 0], "x": 0, "y": 2.8},
- {"matrix": [2, 1], "x": 1, "y": 2.8},
- {"matrix": [2, 2], "x": 2, "y": 2},
- {"matrix": [2, 3], "x": 3, "y": 2},
- {"matrix": [2, 4], "x": 4, "y": 2.5},
- {"matrix": [2, 5], "x": 5, "y": 2.5},
-
- {"matrix": [2, 6], "x": 7.5, "y": 2.5},
- {"matrix": [2, 7], "x": 8.5, "y": 2.5},
- {"matrix": [2, 8], "x": 9.5, "y": 2},
- {"matrix": [2, 9], "x": 10.5, "y": 2},
- {"matrix": [2, 10], "x": 11.5, "y": 2.8},
- {"matrix": [2, 11], "x": 12.5, "y": 2.8},
-
- {"matrix": [3, 3], "x": 4.25, "y": 3.55},
- {"matrix": [3, 4], "x": 5.25, "y": 3.65},
- {"matrix": [3, 6], "x": 6.25, "y": 1.875, "h": 1.25},
-
- {"matrix": [3, 5], "x": 6.25, "y": 4.05},
- {"matrix": [3, 7], "x": 7.25, "y": 3.65},
- {"matrix": [3, 8], "x": 8.25, "y": 3.55}
- ]
- }
- }
-}
diff --git a/keyboards/adm42/rev4/config.h b/keyboards/adm42/rev4/config.h
deleted file mode 100644
index 5553b18751..0000000000
--- a/keyboards/adm42/rev4/config.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2020-2022 Lorenzo Leonini
- * SPDX-License-Identifier: GPL-2.0-only
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define ADM42_LED E6
-
-#define RGB_MATRIX_LED_COUNT 42
-#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 170
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_MATRIX_LED_PROCESS_LIMIT 21
-#define RGB_MATRIX_LED_FLUSH_LIMIT 16
-#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 20
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-
-#define ENABLE_RGB_MATRIX_BREATHING
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGBLIGHT_MODE_STATIC_LIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-#define ENABLE_RGB_MATRIX_BAND_VAL
-#define ENABLE_RGB_MATRIX_SPLASH
diff --git a/keyboards/adm42/rev4/info.json b/keyboards/adm42/rev4/info.json
new file mode 100644
index 0000000000..efb0eea029
--- /dev/null
+++ b/keyboards/adm42/rev4/info.json
@@ -0,0 +1,163 @@
+{
+ "keyboard_name": "ADM42",
+ "manufacturer": "Lorenzo Leonini",
+ "url": "https://adm42.dev/",
+ "maintainer": "lleonini",
+ "debounce": 10,
+ "usb": {
+ "vid": "0x04D8",
+ "pid": "0xE873",
+ "device_version": "0.0.1"
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "ws2812": {
+ "pin": "B7"
+ },
+ "rgb_matrix": {
+ "driver": "ws2812",
+ "animations": {
+ "breathing": true,
+ "band_val": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_pinwheel": true,
+ "jellybean_raindrops": true,
+ "pixel_fractal": true,
+ "pixel_rain": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "splash": true
+ },
+ "layout": [
+ {"matrix": [3, 6], "x": 112, "y": 32, "flags": 4},
+ {"matrix": [2, 5], "x": 92, "y": 36, "flags": 4},
+ {"matrix": [1, 5], "x": 94, "y": 25, "flags": 4},
+ {"matrix": [0, 5], "x": 97, "y": 14, "flags": 4},
+ {"matrix": [0, 4], "x": 80, "y": 13, "flags": 4},
+ {"matrix": [1, 4], "x": 77, "y": 24, "flags": 4},
+ {"matrix": [1, 3], "x": 62, "y": 18, "flags": 4},
+ {"matrix": [0, 3], "x": 64, "y": 8, "flags": 4},
+ {"matrix": [0, 2], "x": 49, "y": 6, "flags": 4},
+ {"matrix": [1, 2], "x": 46, "y": 17, "flags": 4},
+ {"matrix": [1, 1], "x": 28, "y": 23, "flags": 4},
+ {"matrix": [0, 1], "x": 30, "y": 13, "flags": 4},
+ {"matrix": [0, 0], "x": 14, "y": 11, "flags": 4},
+ {"matrix": [1, 0], "x": 11, "y": 22, "flags": 4},
+ {"matrix": [2, 0], "x": 8, "y": 32, "flags": 4},
+ {"matrix": [2, 1], "x": 26, "y": 34, "flags": 4},
+ {"matrix": [2, 2], "x": 43, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 61, "y": 29, "flags": 4},
+ {"matrix": [2, 4], "x": 76, "y": 34, "flags": 4},
+ {"matrix": [3, 3], "x": 78, "y": 46, "flags": 4},
+ {"matrix": [3, 4], "x": 97, "y": 49, "flags": 4},
+ {"matrix": [3, 5], "x": 112, "y": 56, "flags": 4},
+ {"matrix": [3, 7], "x": 127, "y": 49, "flags": 4},
+ {"matrix": [3, 8], "x": 146, "y": 46, "flags": 4},
+ {"matrix": [2, 6], "x": 132, "y": 36, "flags": 4},
+ {"matrix": [2, 7], "x": 148, "y": 34, "flags": 4},
+ {"matrix": [2, 8], "x": 164, "y": 29, "flags": 4},
+ {"matrix": [2, 9], "x": 180, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 198, "y": 34, "flags": 4},
+ {"matrix": [2, 11], "x": 215, "y": 32, "flags": 4},
+ {"matrix": [1, 11], "x": 212, "y": 22, "flags": 4},
+ {"matrix": [1, 10], "x": 196, "y": 23, "flags": 4},
+ {"matrix": [1, 9], "x": 178, "y": 17, "flags": 4},
+ {"matrix": [1, 8], "x": 161, "y": 18, "flags": 4},
+ {"matrix": [1, 7], "x": 146, "y": 24, "flags": 4},
+ {"matrix": [1, 6], "x": 130, "y": 25, "flags": 4},
+ {"matrix": [0, 6], "x": 126, "y": 14, "flags": 4},
+ {"matrix": [0, 7], "x": 143, "y": 13, "flags": 4},
+ {"matrix": [0, 8], "x": 159, "y": 8, "flags": 4},
+ {"matrix": [0, 9], "x": 175, "y": 6, "flags": 4},
+ {"matrix": [0, 10], "x": 194, "y": 13, "flags": 4},
+ {"matrix": [0, 11], "x": 210, "y": 11, "flags": 4}
+ ],
+ "led_flush_limit": 16,
+ "led_process_limit": 21,
+ "max_brightness": 170,
+ "sat_steps": 24,
+ "sleep": true
+ },
+ "qmk": {
+ "tap_keycode_delay": 1
+ },
+ "build": {
+ "debounce_type": "sym_eager_pk",
+ "lto": true
+ },
+ "matrix_pins": {
+ "cols": ["C6", "B6", "B5", "B4", "D7", "D6", "F0", "F1", "F4", "F5", "F6", "F7"],
+ "rows": ["C7", "D5", "D3", "D2"]
+ },
+ "diode_direction": "ROW2COL",
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "layout_aliases": {
+ "LAYOUT_adm42_3x12_6": "LAYOUT"
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0.8},
+ {"matrix": [0, 1], "x": 1, "y": 0.8},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0.5},
+ {"matrix": [0, 5], "x": 5, "y": 0.5},
+
+ {"matrix": [0, 6], "x": 7.5, "y": 0.5},
+ {"matrix": [0, 7], "x": 8.5, "y": 0.5},
+ {"matrix": [0, 8], "x": 9.5, "y": 0},
+ {"matrix": [0, 9], "x": 10.5, "y": 0},
+ {"matrix": [0, 10], "x": 11.5, "y": 0.8},
+ {"matrix": [0, 11], "x": 12.5, "y": 0.8},
+
+ {"matrix": [1, 0], "x": 0, "y": 1.8},
+ {"matrix": [1, 1], "x": 1, "y": 1.8},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+ {"matrix": [1, 4], "x": 4, "y": 1.5},
+ {"matrix": [1, 5], "x": 5, "y": 1.5},
+
+ {"matrix": [1, 6], "x": 7.5, "y": 1.5},
+ {"matrix": [1, 7], "x": 8.5, "y": 1.5},
+ {"matrix": [1, 8], "x": 9.5, "y": 1},
+ {"matrix": [1, 9], "x": 10.5, "y": 1},
+ {"matrix": [1, 10], "x": 11.5, "y": 1.8},
+ {"matrix": [1, 11], "x": 12.5, "y": 1.8},
+
+ {"matrix": [2, 0], "x": 0, "y": 2.8},
+ {"matrix": [2, 1], "x": 1, "y": 2.8},
+ {"matrix": [2, 2], "x": 2, "y": 2},
+ {"matrix": [2, 3], "x": 3, "y": 2},
+ {"matrix": [2, 4], "x": 4, "y": 2.5},
+ {"matrix": [2, 5], "x": 5, "y": 2.5},
+
+ {"matrix": [2, 6], "x": 7.5, "y": 2.5},
+ {"matrix": [2, 7], "x": 8.5, "y": 2.5},
+ {"matrix": [2, 8], "x": 9.5, "y": 2},
+ {"matrix": [2, 9], "x": 10.5, "y": 2},
+ {"matrix": [2, 10], "x": 11.5, "y": 2.8},
+ {"matrix": [2, 11], "x": 12.5, "y": 2.8},
+
+ {"matrix": [3, 3], "x": 4.25, "y": 3.55},
+ {"matrix": [3, 4], "x": 5.25, "y": 3.65},
+ {"matrix": [3, 6], "x": 6.25, "y": 1.875, "h": 1.25},
+
+ {"matrix": [3, 5], "x": 6.25, "y": 4.05},
+ {"matrix": [3, 7], "x": 7.25, "y": 3.65},
+ {"matrix": [3, 8], "x": 8.25, "y": 3.55}
+ ]
+ }
+ }
+}
diff --git a/keyboards/adm42/rev4/keymaps/default/config.h b/keyboards/adm42/rev4/keymaps/default/config.h
deleted file mode 100644
index abfaf9af78..0000000000
--- a/keyboards/adm42/rev4/keymaps/default/config.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define HOLD_ON_OTHER_KEY_PRESS_PER_KEY
-#define QUICK_TAP_TERM_PER_KEY
diff --git a/keyboards/adm42/rev4/keymaps/default/keymap.c b/keyboards/adm42/rev4/keymaps/default/keymap.c
deleted file mode 100644
index 12e4e85a4a..0000000000
--- a/keyboards/adm42/rev4/keymaps/default/keymap.c
+++ /dev/null
@@ -1,204 +0,0 @@
-/* Copyright 2020-2022 Lorenzo Leonini
- * SPDX-License-Identifier: GPL-2.0-only
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-enum custom_layers {
- _QWERTY,
- _COLEMAKDH,
- _SPECIAL,
- _EXTRA,
- _ADM,
- _SETUP,
-};
-
-#define LW_GRV LWIN_T(KC_GRV)
-#define RW_EQU RWIN_T(KC_EQUAL)
-#define RW_BS RWIN_T(KC_BSLS)
-#define LC_TAB LCTL_T(KC_TAB)
-#define RC_QUT RCTL_T(KC_QUOT)
-#define LS_BPC LSFT_T(KC_BSPC)
-#define RS_SPC RSFT_T(KC_SPC)
-#define LA_BS LALT_T(KC_BSLS)
-#define LW_F11 LWIN_T(KC_F11)
-#define LC_APP LCTL_T(KC_APP)
-#define LA_TOG LALT_T(RGB_TOG)
-#define RW_F12 RWIN_T(KC_F12)
-
-#define LLS_ESC LT(_SPECIAL, KC_ESC)
-#define LLS_RALT LT(_SPECIAL, KC_RALT)
-#define LLE_ENT LT(_EXTRA, KC_ENT)
-#define LLA_DEL LT(_ADM, KC_DEL)
-#define SETUP MO(_SETUP)
-
-enum custom_keycodes {
- REFLASH = SAFE_RANGE,
- LC_CIRC,
- RC_DLR,
- DF_QWER,
- DF_COLE,
-};
-
-// Not a mistake to have KC_LALT (also) on the right, RALT is kept for compose (LLS_RALT)
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- LW_GRV, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, RW_EQU,
- LC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, RC_QUT,
- KC_LALT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LALT,
- LLS_ESC, LS_BPC, LLA_DEL, LLE_ENT, RS_SPC, LLS_RALT
- ),
- [_COLEMAKDH] = LAYOUT(
- LW_GRV, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, RW_EQU,
- LC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, RC_QUT,
- KC_LALT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_LALT,
- LLS_ESC, LS_BPC, LLA_DEL, LLE_ENT, RS_SPC, LLS_RALT
- ),
-
- [_SPECIAL] = LAYOUT(
- _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RW_BS,
- LC_CIRC, KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_EXLM, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_MINS, RC_DLR,
- _______, KC_AMPR, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_UNDS, KC_ASTR, KC_HASH, KC_PERC, KC_TILD, _______,
- KC_ESC, _______, KC_DEL, KC_ENT, _______, KC_RALT
- ),
- [_EXTRA] = LAYOUT(
- LW_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, RW_F12,
- KC_LCTL, KC_PAUS, KC_INS, KC_VOLD, KC_VOLU, KC_MUTE, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_APP, KC_RCTL,
- _______, KC_SLEP, KC_PWR, KC_MSTP, KC_MNXT, KC_MPLY, _______, KC_BRID, KC_BRIU, KC_PSCR, KC_WAKE, _______,
- KC_CAPS, _______, _______, _______, _______, KC_CAPS
- ),
- [_ADM] = LAYOUT(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_B, RGB_VAD, RGB_VAI, RGB_SAD, RGB_SAI, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUD, RGB_HUI, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_P, RGB_SPD, RGB_SPI, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, SETUP, XXXXXXX, XXXXXXX
- ),
- [_SETUP] = LAYOUT(
- REFLASH, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, DF_QWER, DF_COLE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, EE_CLR,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-};
-
-bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
- // Special if-condition outside the switch because `RC_QUT` overlaps with
- // the `QK_MOD_TAP ... QK_MOD_TAP_MAX` range.
- if (keycode == RC_QUT) {
- return false;
- }
- switch (keycode) {
- case QK_MOD_TAP ... QK_MOD_TAP_MAX:
- case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
- return true;
- default:
- return false;
- }
-}
-
-uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LLS_ESC:
- case LLS_RALT:
- return 0;
- default:
- return QUICK_TAP_TERM;
- }
-}
-
-static uint16_t last_timer = 0;
-static int last_key = 0;
-bool cleanup_return(uint16_t keycode, keyrecord_t *record, bool value) {
- if (record->event.pressed) {
- last_key = keycode;
- last_timer = timer_read();
- }
- return value;
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
-
-#ifdef CONSOLE_ENABLE
- uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count);
-#endif
-
- switch (keycode) {
-
- case RC_DLR:
- if (record->event.pressed) {
- register_code(KC_RCTL);
- } else {
- unregister_code(KC_RCTL);
- if (last_key == keycode && timer_elapsed(last_timer) <= TAPPING_TERM) {
- send_string("$");
- }
- }
- return cleanup_return(keycode, record, false);
-
- case LC_CIRC:
- if (record->event.pressed) {
- register_code(KC_LCTL);
- } else {
- unregister_code(KC_LCTL);
- if (last_key == keycode && timer_elapsed(last_timer) <= TAPPING_TERM) {
- send_string("^");
- }
- }
- return cleanup_return(keycode, record, false);
-
- case DF_QWER:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- send_string("QWERTY layout");
- }
- return false;
- case DF_COLE:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAKDH);
- send_string("COLEMAKDH layout");
- }
- return false;
-
- case REFLASH:
- eeconfig_init();
- eeconfig_update_rgb_matrix_default();
- writePinLow(ADM42_LED);
- reset_keyboard();
- return false;
-
- default:
- return cleanup_return(keycode, record, true);
- }
-}
-
-void keyboard_pre_init_kb(void) {
- setPinOutput(ADM42_LED);
- writePinHigh(ADM42_LED);
-}
-
-void keyboard_post_init_kb(void) {
- debug_enable = true;
- debug_matrix = false;
- debug_keyboard = false;
- writePinHigh(ADM42_LED);
-}
-
-void suspend_power_down_kb(void) {
- writePinLow(ADM42_LED);
-}
-
-void suspend_wakeup_init_kb(void) {
- writePinHigh(ADM42_LED);
-}
diff --git a/keyboards/adm42/rev4/keymaps/default/keymap.json b/keyboards/adm42/rev4/keymaps/default/keymap.json
new file mode 100644
index 0000000000..72eb7d50de
--- /dev/null
+++ b/keyboards/adm42/rev4/keymaps/default/keymap.json
@@ -0,0 +1,44 @@
+{
+ "keyboard": "adm42/rev4",
+ "keymap": "default",
+ "commit": "3bf01bb9ed202b14f78105db2aa2a75d01fc4323",
+ "layout": "LAYOUT",
+ "layers": [
+ [
+ "LWIN_T(KC_GRV)", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "RWIN_T(KC_EQL)",
+ "LCTL_T(KC_TAB)", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "RCTL_T(KC_QUOT)",
+ "KC_LALT", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_LALT",
+ "LT(2,KC_ESC)", "LSFT_T(KC_BSPC)", "LT(4,KC_DEL)", "LT(3,KC_ENT)", "RSFT_T(KC_SPC)", "LT(2,KC_RALT)"
+ ],
+ [
+ "LWIN_T(KC_GRV)", "KC_Q", "KC_W", "KC_F", "KC_P", "KC_B", "KC_J", "KC_L", "KC_U", "KC_Y", "KC_SCLN", "RWIN_T(KC_EQL)",
+ "LCTL_T(KC_TAB)", "KC_A", "KC_R", "KC_S", "KC_T", "KC_G", "KC_M", "KC_N", "KC_E", "KC_I", "KC_O", "RCTL_T(KC_QUOT)",
+ "KC_LALT", "KC_Z", "KC_X", "KC_C", "KC_D", "KC_V", "KC_K", "KC_H", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_LALT",
+ "LT(2,KC_ESC)", "LSFT_T(KC_BSPC)", "LT(4,KC_DEL)", "LT(3,KC_ENT)", "RSFT_T(KC_SPC)", "LT(2,KC_RALT)"
+ ],
+ [
+ "_______", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "RWIN_T(KC_BSLS)",
+ "KC_LCTL", "KC_LBRC", "KC_RBRC", "KC_LPRN", "KC_RPRN", "KC_EXLM", "KC_LEFT", "KC_DOWN", "KC_UP", "KC_RGHT", "KC_MINS", "KC_RCTL",
+ "_______", "KC_AMPR", "KC_AT", "KC_LCBR", "KC_RCBR", "KC_PIPE", "KC_UNDS", "KC_ASTR", "KC_HASH", "KC_PERC", "KC_TILD", "_______",
+ "KC_ESC", "_______", "KC_DEL", "KC_ENT", "_______", "KC_RALT"
+ ],
+ [
+ "LWIN_T(KC_F11)", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5", "KC_F6", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "RWIN_T(KC_F12)",
+ "KC_LCTL", "KC_PAUS", "KC_INS", "KC_VOLD", "KC_VOLU", "KC_MUTE", "KC_HOME", "KC_PGDN", "KC_PGUP", "KC_END", "KC_APP", "KC_RCTL",
+ "_______", "KC_SLEP", "KC_PWR", "KC_MSTP", "KC_MNXT", "KC_MPLY", "_______", "KC_BRID", "KC_BRIU", "KC_PSCR", "KC_WAKE", "_______",
+ "KC_CAPS", "_______", "_______", "_______", "_______", "KC_CAPS"
+ ],
+ [
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "RGB_M_B", "RGB_VAD", "RGB_VAI", "RGB_SAD", "RGB_SAI", "XXXXXXX",
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "RGB_TOG", "RGB_MOD", "RGB_RMOD", "RGB_HUD", "RGB_HUI", "XXXXXXX",
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "RGB_M_P", "RGB_SPD", "RGB_SPI", "XXXXXXX", "XXXXXXX", "XXXXXXX",
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "MO(5)", "XXXXXXX", "XXXXXXX"
+ ],
+ [
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX",
+ "XXXXXXX", "DF(0)", "DF(1)", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX",
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "EE_CLR",
+ "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX", "XXXXXXX"
+ ]
+ ]
+} \ No newline at end of file
diff --git a/keyboards/adm42/rev4/rev4.c b/keyboards/adm42/rev4/rev4.c
deleted file mode 100644
index 623b5cb5a3..0000000000
--- a/keyboards/adm42/rev4/rev4.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2020-2022 Lorenzo Leonini
- * SPDX-License-Identifier: GPL-2.0-only
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-led_config_t g_led_config = {
- {
- {12, 11, 8, 7, 4, 3, 36, 37, 38, 39, 40, 41},
- {13, 10, 9, 6, 5, 2, 35, 34, 33, 32, 31, 30},
- {14, 15, 16, 17, 18, 1, 24, 25, 26, 27, 28, 29},
- {NO_LED, NO_LED, NO_LED, 19, 20, 21, 0, 22, 23, NO_LED, NO_LED, NO_LED}
- }, {
- {112, 32}, {92, 36}, {94, 25}, {97, 14}, {80, 13}, {77, 24},
- {62, 18}, {64, 8}, {49, 6}, {46, 17}, {28, 23}, {30, 13},
- {14, 11}, {11, 22}, {8, 32}, {26, 34}, {43, 28}, {61, 29},
- {76, 34}, {78, 46}, {97, 49}, {112, 56}, {127, 49}, {146, 46},
- {132, 36}, {148, 34}, {164, 29}, {180, 28}, {198, 34}, {215, 32},
- {212, 22}, {196, 23}, {178, 17}, {161, 18}, {146, 24}, {130, 25},
- {126, 14}, {143, 13}, {159, 8}, {175, 6}, {194, 13}, {210, 11}
- }, {
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4
- }
-};
diff --git a/keyboards/adm42/rev4/rules.mk b/keyboards/adm42/rev4/rules.mk
index aad92997d0..6e7633bfe0 100644
--- a/keyboards/adm42/rev4/rules.mk
+++ b/keyboards/adm42/rev4/rules.mk
@@ -1 +1 @@
-RGB_MATRIX_ENABLE = yes
+# This file intentionally left blank
diff --git a/keyboards/adm42/rules.mk b/keyboards/adm42/rules.mk
index a2402f19a9..06fc88e9f6 100644
--- a/keyboards/adm42/rules.mk
+++ b/keyboards/adm42/rules.mk
@@ -1,15 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-LTO_ENABLE = yes
-
-DEFAULT_FOLDER = adm42/rev4
+DEFAULT_FOLDER = adm42/rev4 \ No newline at end of file
diff --git a/keyboards/aeboards/constellation/rev2/info.json b/keyboards/aeboards/constellation/rev2/info.json
index 87cb103d4a..b8dae5f20c 100644
--- a/keyboards/aeboards/constellation/rev2/info.json
+++ b/keyboards/aeboards/constellation/rev2/info.json
@@ -13,6 +13,9 @@
"rows": ["B15", "A14", "A2", "B13", "B14"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32L422",
"bootloader": "stm32-dfu",
"layout_aliases": {
diff --git a/keyboards/aeboards/constellation/rev2/rules.mk b/keyboards/aeboards/constellation/rev2/rules.mk
index 0fa89d45d2..c12086843f 100755
--- a/keyboards/aeboards/constellation/rev2/rules.mk
+++ b/keyboards/aeboards/constellation/rev2/rules.mk
@@ -9,5 +9,3 @@ COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-
-EEPROM_DRIVER = i2c
diff --git a/keyboards/aeboards/ext65/rev1/info.json b/keyboards/aeboards/ext65/rev1/info.json
index ffe8d2443e..0e110e9235 100644
--- a/keyboards/aeboards/ext65/rev1/info.json
+++ b/keyboards/aeboards/ext65/rev1/info.json
@@ -14,8 +14,11 @@
"cols": ["B2", "B3", "B1", "B0", "F7", "F0", "F1", "F4", "F5", "F6"],
"rows": ["C6", "C7", "B5", "B6", "D7", "B4", "D4", "D6", "B7", "E6"]
},
+ "layout_aliases": {
+ "LAYOUT_ext65": "LAYOUT"
+ },
"layouts": {
- "LAYOUT_ext65": {
+ "LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [1, 0], "x": 1, "y": 0},
diff --git a/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c b/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c
index c931729258..e246b5c471 100644
--- a/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c
+++ b/keyboards/aeboards/ext65/rev1/keymaps/default/keymap.c
@@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | . | 0 | | Ctrl | Win | Alt | Space | FN | Ctrl | |Left| Dn | Rght|
* `------------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ext65(
+ [0] = LAYOUT(
KC_PMNS, KC_PAST, KC_PSLS, KC_NUM, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV , KC_PSCR,
KC_PPLS, KC_P9 , KC_P8 , KC_P7 , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL ,
KC_PPLS, KC_P6 , KC_P5 , KC_P4 , KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
@@ -37,27 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PENT, KC_PDOT, KC_P0 , KC_P0 , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_ext65(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR,
KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG,
KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [2] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c b/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c
index c931729258..e246b5c471 100644
--- a/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c
+++ b/keyboards/aeboards/ext65/rev1/keymaps/via/keymap.c
@@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | . | 0 | | Ctrl | Win | Alt | Space | FN | Ctrl | |Left| Dn | Rght|
* `------------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ext65(
+ [0] = LAYOUT(
KC_PMNS, KC_PAST, KC_PSLS, KC_NUM, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV , KC_PSCR,
KC_PPLS, KC_P9 , KC_P8 , KC_P7 , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL ,
KC_PPLS, KC_P6 , KC_P5 , KC_P4 , KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
@@ -37,27 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PENT, KC_PDOT, KC_P0 , KC_P0 , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_ext65(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR,
KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG,
KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [2] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/aeboards/ext65/rev2/config.h b/keyboards/aeboards/ext65/rev2/config.h
index 78d20f300f..c5149f5741 100644
--- a/keyboards/aeboards/ext65/rev2/config.h
+++ b/keyboards/aeboards/ext65/rev2/config.h
@@ -17,7 +17,7 @@
#pragma once
//SPI
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/aeboards/ext65/rev2/info.json b/keyboards/aeboards/ext65/rev2/info.json
index d9d0ee62ee..ab229e19ec 100644
--- a/keyboards/aeboards/ext65/rev2/info.json
+++ b/keyboards/aeboards/ext65/rev2/info.json
@@ -38,8 +38,11 @@
"cols": ["B14", "B6", "A0", "B1", "B0", "A7", "A6", "A5", "A4", "A3"],
"rows": ["A10", "A9", "A8", "B7", "A2", "A1", "B12", "B11", "B10", "B2"]
},
+ "layout_aliases": {
+ "LAYOUT_ext65": "LAYOUT"
+ },
"layouts": {
- "LAYOUT_ext65": {
+ "LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [1, 0], "x": 1, "y": 0},
diff --git a/keyboards/aeboards/ext65/rev2/keymaps/default/keymap.c b/keyboards/aeboards/ext65/rev2/keymaps/default/keymap.c
index c931729258..e246b5c471 100644
--- a/keyboards/aeboards/ext65/rev2/keymaps/default/keymap.c
+++ b/keyboards/aeboards/ext65/rev2/keymaps/default/keymap.c
@@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | . | 0 | | Ctrl | Win | Alt | Space | FN | Ctrl | |Left| Dn | Rght|
* `------------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ext65(
+ [0] = LAYOUT(
KC_PMNS, KC_PAST, KC_PSLS, KC_NUM, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV , KC_PSCR,
KC_PPLS, KC_P9 , KC_P8 , KC_P7 , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL ,
KC_PPLS, KC_P6 , KC_P5 , KC_P4 , KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
@@ -37,27 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PENT, KC_PDOT, KC_P0 , KC_P0 , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_ext65(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR,
KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG,
KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [2] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/aeboards/ext65/rev2/keymaps/via/keymap.c b/keyboards/aeboards/ext65/rev2/keymaps/via/keymap.c
index c931729258..e246b5c471 100644
--- a/keyboards/aeboards/ext65/rev2/keymaps/via/keymap.c
+++ b/keyboards/aeboards/ext65/rev2/keymaps/via/keymap.c
@@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | . | 0 | | Ctrl | Win | Alt | Space | FN | Ctrl | |Left| Dn | Rght|
* `------------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ext65(
+ [0] = LAYOUT(
KC_PMNS, KC_PAST, KC_PSLS, KC_NUM, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV , KC_PSCR,
KC_PPLS, KC_P9 , KC_P8 , KC_P7 , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL ,
KC_PPLS, KC_P6 , KC_P5 , KC_P4 , KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
@@ -37,27 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PENT, KC_PDOT, KC_P0 , KC_P0 , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_ext65(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR,
KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG,
KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [2] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ext65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/aeboards/ext65/rev3/info.json b/keyboards/aeboards/ext65/rev3/info.json
index bb507545a0..0faf6fa135 100644
--- a/keyboards/aeboards/ext65/rev3/info.json
+++ b/keyboards/aeboards/ext65/rev3/info.json
@@ -19,8 +19,11 @@
"cols": ["F6", "F7", "B1", "B3", "B2", "D5", "D3", "D2", "D1", "D0"],
"rows": ["B5", "B6", "C6", "C7", "E6", "B0", "B4", "D7", "D4", "D6"]
},
+ "layout_aliases": {
+ "LAYOUT_ext65_hotswap": "LAYOUT"
+ },
"layouts": {
- "LAYOUT_ext65_hotswap": {
+ "LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [1, 0], "x": 1, "y": 0},
diff --git a/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c b/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c
index 72a10cae1b..ac6dd4dfed 100644
--- a/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c
+++ b/keyboards/aeboards/ext65/rev3/keymaps/default/keymap.c
@@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | . | 0 | | Ctrl | Win | Alt | Space | FN | Ctrl | |Left| Dn | Rght|
* `------------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ext65_hotswap(
+ [0] = LAYOUT(
KC_PMNS, KC_PAST, KC_PSLS, KC_NUM, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_PSCR,
KC_PPLS, KC_P9 , KC_P8 , KC_P7 , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
KC_P6 , KC_P5 , KC_P4 , KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
@@ -37,27 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PDOT, KC_P0 , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_ext65_hotswap(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR,
RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG,
KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [2] = LAYOUT_ext65_hotswap(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ext65_hotswap(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c b/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c
index 72a10cae1b..ac6dd4dfed 100644
--- a/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c
+++ b/keyboards/aeboards/ext65/rev3/keymaps/via/keymap.c
@@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | . | 0 | | Ctrl | Win | Alt | Space | FN | Ctrl | |Left| Dn | Rght|
* `------------------------------------------------------------------------------------------'
*/
- [0] = LAYOUT_ext65_hotswap(
+ [0] = LAYOUT(
KC_PMNS, KC_PAST, KC_PSLS, KC_NUM, KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_PSCR,
KC_PPLS, KC_P9 , KC_P8 , KC_P7 , KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
KC_P6 , KC_P5 , KC_P4 , KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
@@ -37,27 +37,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_PDOT, KC_P0 , KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_ext65_hotswap(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EE_CLR,
RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG,
KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [2] = LAYOUT_ext65_hotswap(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ext65_hotswap(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
diff --git a/keyboards/aeboards/satellite/rev1/config.h b/keyboards/aeboards/satellite/rev1/config.h
index 508689faf5..429bc2af54 100644
--- a/keyboards/aeboards/satellite/rev1/config.h
+++ b/keyboards/aeboards/satellite/rev1/config.h
@@ -17,14 +17,13 @@
#pragma once
//RGB Matrix defines
-#define DRIVER_ADDR_1 0x74
-#define DRIVER_ADDR_2 0x76
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 36
#define DRIVER_2_LED_TOTAL 36
-#define ISSI_DRIVER_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define RGB_MATRIX_LED_COUNT ISSI_DRIVER_TOTAL
+#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT IS31FL3731_LED_COUNT
#define RGB_MATRIX_DEFAULT_VAL 80
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/aeboards/satellite/rev1/rev1.c b/keyboards/aeboards/satellite/rev1/rev1.c
index 785fa8af9f..6727894e06 100644
--- a/keyboards/aeboards/satellite/rev1/rev1.c
+++ b/keyboards/aeboards/satellite/rev1/rev1.c
@@ -18,7 +18,7 @@
#include "drivers/led/issi/is31fl3731.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -145,38 +145,27 @@ led_config_t g_led_config = { {
// Custom Driver
static void init(void) {
i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
- is31fl3731_init(DRIVER_ADDR_2);
- for (int index = 0; index < ISSI_DRIVER_TOTAL; index++) {
+
+ is31fl3731_init(IS31FL3731_I2C_ADDRESS_1);
+ is31fl3731_init(IS31FL3731_I2C_ADDRESS_2);
+
+ for (int index = 0; index < IS31FL3731_LED_COUNT; index++) {
bool enabled = !( ( index == 18+5) || //B5
( index == 36+17) || //C17
( index == 54+13) //D13
);
is31fl3731_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
- is31fl3731_update_led_control_registers(DRIVER_ADDR_2, 1);
-}
-
-static void flush(void) {
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_2, 1);
-}
-
-static void set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
- is31fl3731_set_color(index, red, green, blue);
-}
-static void set_color_all(uint8_t red, uint8_t green, uint8_t blue) {
- is31fl3731_set_color_all( red, green, blue );
+ is31fl3731_update_led_control_registers(IS31FL3731_I2C_ADDRESS_1, 0);
+ is31fl3731_update_led_control_registers(IS31FL3731_I2C_ADDRESS_2, 1);
}
-
const rgb_matrix_driver_t rgb_matrix_driver = {
.init = init,
- .flush = flush,
- .set_color = set_color,
- .set_color_all = set_color_all
+ .flush = is31fl3731_flush,
+ .set_color = is31fl3731_set_color,
+ .set_color_all = is31fl3731_set_color_all
};
#endif
diff --git a/keyboards/aeboards/satellite/rev1/rules.mk b/keyboards/aeboards/satellite/rev1/rules.mk
index 1a4657b08c..f95b0f015d 100644
--- a/keyboards/aeboards/satellite/rev1/rules.mk
+++ b/keyboards/aeboards/satellite/rev1/rules.mk
@@ -18,4 +18,4 @@ COMMON_VPATH += $(DRIVER_PATH)/issi
# project specific files
SRC += drivers/led/issi/is31fl3731.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/ai03/lunar/keymaps/zyber/keymap.c b/keyboards/ai03/lunar/keymaps/zyber/keymap.c
deleted file mode 100644
index 5e2c9f3178..0000000000
--- a/keyboards/ai03/lunar/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,23 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT( /* Base */
- KC_ESC, KC_1, KC_2, KC_3, TD(SSHT), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_PGDN,
- L1_EXPL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_DEL,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, MO(1),
- KC_LCTL, ROPT_SRH,KC_LCMD, _______, LCMD_T(KC_SPC), _______, ROPT_SRH, KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT( /* FN */
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, KC_PAUS,
- C_BLK, _______, KC_UP, _______, _______, _______, KC_NUM, KC_P7, KC_P8, KC_P9, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_SCRL,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_VOLD, KC_VOLU, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______,
- _______, KC_RCTL, KC_RGUI, KC_RALT, _______, _______, KC_P0, KC_P1, KC_P2, KC_P3, _______, _______, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- )
-};
-
diff --git a/keyboards/ai03/orbit/config.h b/keyboards/ai03/orbit/config.h
index f4157a1729..53a057875f 100644
--- a/keyboards/ai03/orbit/config.h
+++ b/keyboards/ai03/orbit/config.h
@@ -19,9 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define SELECT_SOFT_SERIAL_SPEED 1
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_LAYER_STATE_ENABLE
-
#define SPLIT_HAND_PIN D5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
diff --git a/keyboards/ai03/orbit/info.json b/keyboards/ai03/orbit/info.json
index 4c5cd1ee51..d7ff0b786c 100644
--- a/keyboards/ai03/orbit/info.json
+++ b/keyboards/ai03/orbit/info.json
@@ -23,6 +23,12 @@
"cols": ["D4", "D6", "F1", "F0", "F4", "F5", "C6"],
"rows": ["B6", "B5", "B4", "D7", "E6"]
}
+ },
+ "transport":{
+ "sync" :{
+ "indicators": true,
+ "layer_state": true
+ }
}
},
"processor": "atmega32u4",
diff --git a/keyboards/akko/5087/config.h b/keyboards/akko/5087/config.h
index 50a1f224f8..3a6b7030ee 100644
--- a/keyboards/akko/5087/config.h
+++ b/keyboards/akko/5087/config.h
@@ -34,7 +34,6 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
#define DRIVER_COUNT 2
diff --git a/keyboards/akko/5087/info.json b/keyboards/akko/5087/info.json
index 43bec927db..1b4059b0d5 100644
--- a/keyboards/akko/5087/info.json
+++ b/keyboards/akko/5087/info.json
@@ -29,6 +29,13 @@
"rows": ["B15", "C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"indicators": {
"caps_lock": "A15"
},
diff --git a/keyboards/akko/5087/rules.mk b/keyboards/akko/5087/rules.mk
index 0dc7a33142..6e7633bfe0 100644
--- a/keyboards/akko/5087/rules.mk
+++ b/keyboards/akko/5087/rules.mk
@@ -1,3 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
+# This file intentionally left blank
diff --git a/keyboards/akko/5108/5108.c b/keyboards/akko/5108/5108.c
index a14f02bc76..91f53e1e55 100644
--- a/keyboards/akko/5108/5108.c
+++ b/keyboards/akko/5108/5108.c
@@ -17,8 +17,8 @@
#include "quantum.h"
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/akko/5108/config.h b/keyboards/akko/5108/config.h
index f56e825e05..7154ce44d2 100644
--- a/keyboards/akko/5108/config.h
+++ b/keyboards/akko/5108/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 5 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
/* LED Indicators */
#define LED_WIN_LOCK_PIN C11
@@ -35,12 +32,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_SCL_PAL_MODE 4
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
diff --git a/keyboards/akko/5108/info.json b/keyboards/akko/5108/info.json
index 7049b20a64..662a949a53 100644
--- a/keyboards/akko/5108/info.json
+++ b/keyboards/akko/5108/info.json
@@ -26,12 +26,22 @@
"rows": ["B15", "C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"indicators": {
"num_lock": "A15",
"caps_lock": "C10"
},
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 180,
"animations": {
"breathing": true,
diff --git a/keyboards/akko/5108/rules.mk b/keyboards/akko/5108/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/akko/5108/rules.mk
+++ b/keyboards/akko/5108/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/akko/acr87/acr87.c b/keyboards/akko/acr87/acr87.c
index e175e21368..7ee9ec6470 100644
--- a/keyboards/akko/acr87/acr87.c
+++ b/keyboards/akko/acr87/acr87.c
@@ -17,8 +17,8 @@
#include "quantum.h"
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/akko/acr87/config.h b/keyboards/akko/acr87/config.h
index 221cad86ad..4c1fb9afa1 100644
--- a/keyboards/akko/acr87/config.h
+++ b/keyboards/akko/acr87/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 5 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
@@ -32,13 +29,11 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 3
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_ADDR_3 0b1110110
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_3 SNLED27351_I2C_ADDRESS_SDA
#define I2C1_SCL_PAL_MODE 4
#define I2C1_OPMODE OPMODE_I2C
diff --git a/keyboards/akko/acr87/info.json b/keyboards/akko/acr87/info.json
index 5ff1926d0c..5ccb0c3f73 100644
--- a/keyboards/akko/acr87/info.json
+++ b/keyboards/akko/acr87/info.json
@@ -26,8 +26,18 @@
"rows": [ "B15", "C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 180,
"animations": {
"breathing": true,
diff --git a/keyboards/akko/acr87/rules.mk b/keyboards/akko/acr87/rules.mk
index 0dc7a33142..6e7633bfe0 100644
--- a/keyboards/akko/acr87/rules.mk
+++ b/keyboards/akko/acr87/rules.mk
@@ -1,3 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
+# This file intentionally left blank
diff --git a/keyboards/akko/top40/config.h b/keyboards/akko/top40/config.h
index bd849292e6..1d601a189c 100644
--- a/keyboards/akko/top40/config.h
+++ b/keyboards/akko/top40/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 5 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
@@ -32,12 +29,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_SCL_PAL_MODE 4
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
diff --git a/keyboards/akko/top40/info.json b/keyboards/akko/top40/info.json
index 48252e6c77..243952ccc8 100644
--- a/keyboards/akko/top40/info.json
+++ b/keyboards/akko/top40/info.json
@@ -26,8 +26,18 @@
"rows": ["C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 180,
"animations": {
"breathing": true,
diff --git a/keyboards/akko/top40/rules.mk b/keyboards/akko/top40/rules.mk
index b753f0682e..6e7633bfe0 100644
--- a/keyboards/akko/top40/rules.mk
+++ b/keyboards/akko/top40/rules.mk
@@ -1,6 +1 @@
-# Build Options
-# change yes to no to disable
-#
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
+# This file intentionally left blank
diff --git a/keyboards/akko/top40/top40.c b/keyboards/akko/top40/top40.c
index 7fe193447d..028e4bdd05 100644
--- a/keyboards/akko/top40/top40.c
+++ b/keyboards/akko/top40/top40.c
@@ -17,8 +17,8 @@
#include "quantum.h"
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/alpha/keymaps/hvp/keymap.c b/keyboards/alpha/keymaps/hvp/keymap.c
deleted file mode 100755
index 13071b0830..0000000000
--- a/keyboards/alpha/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,51 +0,0 @@
-#include QMK_KEYBOARD_H
-
-enum layer_names {
- HOME,
- MODS,
- MODS2,
- OTHER,
-};
-
-enum custom_keycodes {
- MACRO1 = SAFE_RANGE
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- switch (keycode) {
- case MACRO1:
- SEND_STRING("I'm so sorry... -PyroL");
- return false;
- }
- }
- return true;
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [HOME] = LAYOUT(
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, MT(MOD_LCTL,KC_P),
- KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MT(MOD_LSFT,KC_ENT),
- KC_Z, KC_X, KC_C, LT(MODS2,KC_V), LT(MODS, KC_SPC), LT(OTHER,KC_B), KC_N, KC_M),
-
- [MODS] = LAYOUT(
- KC_TAB, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_BSPC,
- KC_LSFT, KC_ESC, _______, KC_SCLN, KC_QUOT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______,
- KC_LCTL, KC_LGUI, KC_LALT, _______, _______, KC_COMM, KC_DOT, KC_SLSH),
-
- [MODS2] = LAYOUT(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_ESC, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, _______,
- RGB_VAI, RGB_VAD, RGB_HUI, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU),
-
- [OTHER] = LAYOUT(
- KC_ESC, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, _______,
- KC_F10, KC_F11, KC_F12, _______, _______, KC_NO, KC_NO, KC_NO),
-};
-
-void matrix_init_user(void) {
-}
-
-void matrix_scan_user(void) {
-} \ No newline at end of file
diff --git a/keyboards/alps64/keymaps/mechmerlin/keymap.c b/keyboards/alps64/keymaps/mechmerlin/keymap.c
deleted file mode 100644
index 9b6d1cd717..0000000000
--- a/keyboards/alps64/keymaps/mechmerlin/keymap.c
+++ /dev/null
@@ -1,26 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "mechmerlin.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* 0: qwerty */
- [_BL] = LAYOUT_infinity(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(_AL),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FL), KC_RALT, KC_RGUI, KC_RCTL),
-
- [_FL] = LAYOUT_infinity(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_DEL,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
- [_AL] = LAYOUT_infinity(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RSFT_T(KC_UP), KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT),
-};
diff --git a/keyboards/alps64/keymaps/mechmerlin/readme.md b/keyboards/alps64/keymaps/mechmerlin/readme.md
deleted file mode 100644
index 896e7ec3cb..0000000000
--- a/keyboards/alps64/keymaps/mechmerlin/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# MechMerlin Alps64 Infinity Keymap
-
-This is the 60% infinity layout used by u/merlin36, host of the [MechMerlin](www.youtube.com/mechmerlin)
-YouTube channel.
-
-## Keymap Notes
-- `Caps Lock` can be held to act as a `Left Control`
-
-### Build
-To build the firmware file associated with this keymap, simply run `make alps64:mechmerlin`.
diff --git a/keyboards/alps64/keymaps/zyber/keymap.c b/keyboards/alps64/keymaps/zyber/keymap.c
deleted file mode 100644
index 5d7cf1a64d..0000000000
--- a/keyboards/alps64/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-enum keyboard_layers {
- _BL = 0,
- _FL
-};
-
-// Custom #defined keycodes (shorter macros for readability)
-#define KC_CTES CTL_T(KC_ESC)
-#define KC_RSUP RSFT_T(KC_UP)
-#define KC_FNDN LT(_FL, KC_DOWN)
-#define KC_RGLT RCMD_T(KC_LEFT)
-#define KC_RCRT RCTL_T(KC_RIGHT)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BL] = LAYOUT_aek_103(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS,
- CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSUP,
- MO(_FL), KC_LALT, KC_LGUI, KC_SPC, KC_RGLT, KC_FNDN, KC_RCRT
- ),
- [_FL] = LAYOUT_aek_103(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, KC_HOME, KC_UP, KC_END, _______, _______, _______, _______, KC_MUTE, _______, _______, KC_PGDN, KC_PGUP, _______,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_SCRL, KC_VOLD, KC_VOLU, KC_PAUS, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, QK_BOOT, _______, _______, _______
- )
-};
diff --git a/keyboards/anavi/knob1/rules.mk b/keyboards/anavi/knob1/rules.mk
index 0e5631b02b..dd68e9d3b0 100644
--- a/keyboards/anavi/knob1/rules.mk
+++ b/keyboards/anavi/knob1/rules.mk
@@ -1,3 +1 @@
OLED_ENABLE = yes
-
-OPT_DEFS += -DHAL_USE_I2C=TRUE
diff --git a/keyboards/anavi/knobs3/rules.mk b/keyboards/anavi/knobs3/rules.mk
index 0e5631b02b..dd68e9d3b0 100644
--- a/keyboards/anavi/knobs3/rules.mk
+++ b/keyboards/anavi/knobs3/rules.mk
@@ -1,3 +1 @@
OLED_ENABLE = yes
-
-OPT_DEFS += -DHAL_USE_I2C=TRUE
diff --git a/keyboards/annepro2/annepro2_ble.c b/keyboards/annepro2/annepro2_ble.c
index 375f551cc2..a382c61638 100644
--- a/keyboards/annepro2/annepro2_ble.c
+++ b/keyboards/annepro2/annepro2_ble.c
@@ -31,7 +31,7 @@ static void ap2_ble_swtich_ble_driver(void);
/* -------------------- Static Local Variables ------------------------------ */
static host_driver_t ap2_ble_driver = {
- ap2_ble_leds, ap2_ble_keyboard, ap2_ble_mouse, ap2_ble_extra
+ ap2_ble_leds, ap2_ble_keyboard, NULL, ap2_ble_mouse, ap2_ble_extra
};
static uint8_t ble_mcu_wakeup[11] = {0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x01, 0x7d, 0x02, 0x01, 0x02};
@@ -167,5 +167,5 @@ static void ap2_ble_extra(report_extra_t *report) {
static void ap2_ble_keyboard(report_keyboard_t *report) {
sdPut(&SD1, 0x0);
sdWrite(&SD1, ble_mcu_send_report, sizeof(ble_mcu_send_report));
- sdWrite(&SD1, &report->raw[0], KEYBOARD_REPORT_SIZE);
+ sdWrite(&SD1, (uint8_t *)report, KEYBOARD_REPORT_SIZE);
}
diff --git a/keyboards/annepro2/c15/config.h b/keyboards/annepro2/c15/config.h
index ea38f4dce3..f488b9d8f3 100644
--- a/keyboards/annepro2/c15/config.h
+++ b/keyboards/annepro2/c15/config.h
@@ -57,7 +57,3 @@
#define EXTERNAL_FLASH_SECTOR_SIZE 4096
#define EXTERNAL_FLASH_BLOCK_SIZE 4096
#define EXTERNAL_FLASH_SIZE (256 * 1024) // 2M-bit flash size
-
-// Wear-leveling driver configuration
-#define WEAR_LEVELING_LOGICAL_SIZE 1024
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
diff --git a/keyboards/annepro2/c15/info.json b/keyboards/annepro2/c15/info.json
index 15c3ca8ba1..b7624dd6c5 100644
--- a/keyboards/annepro2/c15/info.json
+++ b/keyboards/annepro2/c15/info.json
@@ -3,6 +3,13 @@
"usb": {
"pid": "0xAC15"
},
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"rgb_matrix": {
"driver": "custom"
},
diff --git a/keyboards/annepro2/c15/rules.mk b/keyboards/annepro2/c15/rules.mk
index 05b715e034..8694893ac2 100644
--- a/keyboards/annepro2/c15/rules.mk
+++ b/keyboards/annepro2/c15/rules.mk
@@ -26,10 +26,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-# Wear-levelling driver
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
# Custom RGB matrix handling
RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/annepro2/c18/config.h b/keyboards/annepro2/c18/config.h
index 6b6307c3d0..36f4a25c8d 100644
--- a/keyboards/annepro2/c18/config.h
+++ b/keyboards/annepro2/c18/config.h
@@ -55,7 +55,3 @@
#define EXTERNAL_FLASH_SECTOR_SIZE 4096
#define EXTERNAL_FLASH_BLOCK_SIZE 4096
#define EXTERNAL_FLASH_SIZE (256 * 1024) // 2M-bit flash size
-
-// Wear-leveling driver configuration
-#define WEAR_LEVELING_LOGICAL_SIZE 1024
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
diff --git a/keyboards/annepro2/c18/info.json b/keyboards/annepro2/c18/info.json
index f7acff808c..c8f524e3cf 100644
--- a/keyboards/annepro2/c18/info.json
+++ b/keyboards/annepro2/c18/info.json
@@ -3,6 +3,13 @@
"usb": {
"pid": "0xAC18"
},
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"rgb_matrix": {
"driver": "custom"
},
diff --git a/keyboards/annepro2/c18/rules.mk b/keyboards/annepro2/c18/rules.mk
index 1d53851df6..dab7269570 100644
--- a/keyboards/annepro2/c18/rules.mk
+++ b/keyboards/annepro2/c18/rules.mk
@@ -26,10 +26,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-# Wear-levelling driver
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
# Custom RGB matrix handling
RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/aozora/config.h b/keyboards/aozora/config.h
deleted file mode 100644
index 5171d0c312..0000000000
--- a/keyboards/aozora/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright 2021 Salmon Cat Studio
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* EEPROM for via */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 2
diff --git a/keyboards/arisu/keymaps/stanrc85/keymap.c b/keyboards/arisu/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 417b1663b5..0000000000
--- a/keyboards/arisu/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Copyright 2021 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
- KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, MO(_FN2_60),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, LT_BPCF, KC_LGUI, LT_SPCF, TD_TWIN, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_DEFAULT] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, MO(_FN2_60),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_FN1_60] = LAYOUT(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, _______,
- _______, _______, CA_QUOT, _______, CA_SCLN, KC_VOLU, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PSCR, _______, _______, KC_INS, _______,
- KC_CAPS, _______, _______, KC_LCTL, KC_LSFT, KC_VOLD, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______,
- _______, KC_RDP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FN2_60] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, TG(_DEFAULT)
- )
-};
diff --git a/keyboards/arisu/keymaps/stanrc85/rules.mk b/keyboards/arisu/keymaps/stanrc85/rules.mk
deleted file mode 100644
index 9db643c8e6..0000000000
--- a/keyboards/arisu/keymaps/stanrc85/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-USER_NAME := stanrc85 \ No newline at end of file
diff --git a/keyboards/atreus/keymaps/dvorak_42_key/README.md b/keyboards/atreus/keymaps/dvorak_42_key/README.md
deleted file mode 100644
index 86ce738023..0000000000
--- a/keyboards/atreus/keymaps/dvorak_42_key/README.md
+++ /dev/null
@@ -1,21 +0,0 @@
-Overview
-========
-
-This is a dvorak based layout for the Atreus. Its basic key layout is similar to the ergodox_ez "dvorak_42_key" layout. In fact this layout was created for seamless switching between the Ergodox EZ and Atreus.
-
-How to build and flash
-----------------------
-
-to build;
-make atreus:dvorak_42_key
-
-to flash:
-avrdude -p atmega32u4 -c avr109 -U flash:w:atreus_dvorak_42_key.hex -P COM7
-
-Layers
-------
-* BASE: basic dvorak layout
-* KEYNAV: arrow-key navigation. Momentary toggle held by thumb allows the right hand to navigate through text as well as copy/paste/cut, page up/page down
-* KEYSEL: similar to KEYNAV, except for shift-selection
-* COMBINED: this is a layer that combines numbers, brackets and special characters. !@#$%^&*( can be type by shift+COMBINED+1/2/3/etc..
-* MOUSE: mouse navigation, as well as browser tab-left/tab-right shortcuts \ No newline at end of file
diff --git a/keyboards/atreus/keymaps/dvorak_42_key/config.h b/keyboards/atreus/keymaps/dvorak_42_key/config.h
deleted file mode 100644
index ac5db196d9..0000000000
--- a/keyboards/atreus/keymaps/dvorak_42_key/config.h
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-// place overrides here
-
-// mouse speed
-
-#define MOUSEKEY_INTERVAL 15
-#define MOUSEKEY_DELAY 100
-#define MOUSEKEY_TIME_TO_MAX 100
-#define MOUSEKEY_MAX_SPEED 3
-
-#define MOUSEKEY_WHEEL_DELAY 500
-#define MOUSEKEY_WHEEL_DELTA 1
-#define MOUSEKEY_WHEEL_MAX_SPEED 1
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 100
diff --git a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
deleted file mode 100644
index c6a628e217..0000000000
--- a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c
+++ /dev/null
@@ -1,167 +0,0 @@
-
-#include QMK_KEYBOARD_H
-
-// layers
-#define BASE 0
-#define KEYNAV 1
-#define KEYSEL 2
-#define COMBINED 3
-#define BROWSER_CONTROL 4
-
-// aliases
-// shell
-#define SHELL_DEL_WORD RCTL(KC_W)
-
-// comment out to use android studio macros instead
-#define USE_VSCODE_MACROS
-
-// android studio shortcuts
-#define AS_TABLEFT LALT(KC_LEFT)
-#define AS_TABRIGHT LALT(KC_RIGHT)
-#define AS_SYMBOL LCTL(LALT(KC_N))
-#define AS_CLASS LCTL(KC_N)
-#define AS_FINDUSAGE LALT(KC_F7)
-#define AS_BACK LCTL(LALT(KC_LEFT))
-#define AS_GO_DECLARATION LCTL(KC_B)
-#define AS_GO_IMPLEMENTATION LCTL(LALT(KC_B))
-#define AS_CLOSETAB LCTL(KC_F4)
-#define AS_CLOSETOOLWINDOW LCTL(LSFT(KC_F4))
-#define AS_ALTENTER LALT(KC_ENTER)
-
-// visual studio code shortcuts
-#define VS_FILE LCTL(KC_P)
-#define VS_OPEN_FILE LCTL(KC_O)
-#define VS_LINE LCTL(KC_G)
-#define VS_SYMBOLEDITOR LCTL(LSFT(KC_O))
-#define VS_DEFINITION MEH(KC_F5)
-#define VS_IMPLEMENTATION MEH(KC_F6)
-#define VS_REFERENCES MEH(KC_F7)
-#define VS_BACK LALT(KC_LEFT)
-#define VS_BRACKET LCTL(LSFT(KC_BSLS))
-#define VS_TABLEFT MEH(KC_F1)
-#define VS_TABRIGHT MEH(KC_F2)
-#define VS_CLOSETAB MEH(KC_F3)
-#define VS_CLOSEPANEL LCTL(LSFT(KC_W))
-#define VS_GROUP_1 LCTL(KC_1)
-#define VS_GROUP_2 LCTL(KC_2)
-#define VS_TERMINAL LCTL(KC_GRAVE)
-#define VS_BUILD LCTL(LSFT(KC_B))
-#define VS_COMMANDS MEH(KC_F4)
-#define VS_CMT_BLOCK LSFT(LALT(KC_A))
-#define VS_CMT_LINE LCTL(KC_SLSH)
-#define VS_DEL_LINE LCTL(LSFT(KC_K))
-#define VS_COPYLINEDOWN LSFT(LALT(KC_DOWN))
-// visual studio bookmark commands
-#define VS_BM_LIST LCTL(LALT(KC_L))
-#define VS_BM_LISTALL LCTL(LALT(KC_A))
-#define VS_BM_PREV LCTL(LALT(KC_P))
-#define VS_BM_NEXT LCTL(LALT(KC_N))
-#define VS_BM_TOGGLE LCTL(LALT(KC_K))
-#define VS_BM_CLEARALL LCTL(LALT(KC_C))
-// visual studio code navigation shortcuts
-#define VS_FOCUS_EDITOR MEH(KC_F8)
-#define VS_FOCUS_TERMINAL MEH(KC_F9)
-#define VS_TOGGLE_TERMINAL MEH(KC_F10)
-#define VS_CLEAR_TERMINAL MEH(KC_F11)
-#define VS_TERMINAL_PREV MEH(KC_F12)
-#define VS_TERMINAL_NEXT MEH(KC_F13)
-#define VS_TERMINAL_NEW MEH(KC_F14)
-#define VS_TERMINAL_DETACH MEH(KC_F15)
-#define VS_TERMINAL_RENAME MEH(KC_F16)
-#define VS_JUMPY MEH(KC_F17)
-
-/*
-// VS code bookmark prev/next requires the following in vscode shortcuts config
- {
- "key": "ctrl+alt+p",
- "command": "bookmarks.jumpToPrevious"
- },
- {
- "key": "ctrl+alt+n",
- "command": "bookmarks.jumpToNext"
- },
-*/
-
-enum custom_keycodes {
- PLACEHOLDER = SAFE_RANGE, // can always be here
-
- // Windows 10 macros
- W10_TASKVIEW,
- W10_WORKSPACE_LEFT,
- W10_WORKSPACE_RIGHT,
-
-};
-
-// building/flashing instructions:
-// make atreus/astar:dvorak_42_key:flash
-// or
-// qmk compile -kb atreus -km dvorak_42_key
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT(
- KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L,
- KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S,
- KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z,
- OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL), MO(COMBINED), MO(KEYNAV), KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_CAPS, OSM(MOD_LSFT)
- ),
-
-#ifdef USE_VSCODE_MACROS
-// use visual studio code macros on the KEYNAV layer
- [KEYNAV] = LAYOUT(
- KC_ESC, VS_DEFINITION, RCTL(KC_Z), RCTL(KC_S), MEH(KC_A), MEH(KC_B), KC_HOME, KC_UP, KC_END, KC_PGUP,
- VS_BACK, VS_SYMBOLEDITOR, RSFT(KC_TAB), KC_TAB, SHELL_DEL_WORD, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT),
- VS_LINE, VS_FILE, VS_TABLEFT, VS_TABRIGHT, VS_CLOSETAB, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDN,
- VS_COMMANDS, VS_CMT_LINE, VS_BM_PREV, VS_BM_NEXT, VS_BM_TOGGLE, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE)
- ),
-#else
-// use android studio macros on the KEYNAV layer
- [KEYNAV] = LAYOUT(
- KC_ESC, AS_GO_IMPLEMENTATION, RCTL(KC_Z), RCTL(KC_S), MEH(KC_A), MEH(KC_B), KC_HOME, KC_UP, KC_END, KC_PGUP,
- AS_BACK, AS_SYMBOL, RSFT(KC_TAB), KC_TAB, SHELL_DEL_WORD, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT),
- AS_FINDUSAGE, AS_CLASS, AS_TABLEFT, AS_TABRIGHT, AS_CLOSETAB, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDN,
- AS_CLOSETOOLWINDOW, AS_GO_DECLARATION, KC_TRNS, KC_TRNS, AS_ALTENTER, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE)
- ),
-#endif
-
- [KEYSEL] = LAYOUT(
- MEH(KC_G), MEH(KC_H),MEH(KC_I), MEH(KC_J), MEH(KC_K), KC_TRNS, RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP),
- MEH(KC_L), MEH(KC_M),MEH(KC_N), MEH(KC_O), MEH(KC_P), RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)),
- MEH(KC_Q), MEH(KC_R),MEH(KC_S), MEH(KC_T), MEH(KC_U), KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), RSFT(KC_PGDN),
- QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENTER, KC_SPACE, KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE)
- ),
-
- [COMBINED] = LAYOUT(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR,
- KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_UNDS, KC_MINS, KC_4, KC_5, KC_6, KC_SLSH,
- KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_AMPR, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES,
- KC_TRNS, KC_TILD, KC_GRAVE, KC_CIRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_DOT, KC_PIPE, KC_BSLS
- ),
-
- [BROWSER_CONTROL] = LAYOUT(
- MEH(KC_C), KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_UP, KC_PGUP, KC_PGDN, KC_MS_WH_UP, MEH(KC_9),
- MEH(KC_D), KC_MS_L, KC_MS_D, KC_MS_R, MEH(KC_6), KC_DOWN, RSFT(RCTL(KC_TAB)), RCTL(KC_TAB), KC_MS_WH_DOWN, LALT(KC_LEFT),
- MEH(KC_E), W10_TASKVIEW, W10_WORKSPACE_LEFT, W10_WORKSPACE_RIGHT, MEH(KC_7), MEH(KC_8), RCTL(KC_1), RCTL(KC_9), KC_F6, KC_F5,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if(record->event.pressed) {
- switch (keycode) {
- // windows 10 workspace shortcuts
- case W10_TASKVIEW:
- tap_code16(G(KC_TAB));
- return true;
- break;
- case W10_WORKSPACE_LEFT:
- tap_code16(G(C(KC_LEFT)));
- return true;
- break;
- case W10_WORKSPACE_RIGHT:
- tap_code16(G(C(KC_RIGHT)));
- break;
- }
- }
-
- return true;
-}
diff --git a/keyboards/atreus/keymaps/ibnuda/keymap.c b/keyboards/atreus/keymaps/ibnuda/keymap.c
deleted file mode 100644
index 3bdfccad98..0000000000
--- a/keyboards/atreus/keymaps/ibnuda/keymap.c
+++ /dev/null
@@ -1,47 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#include "ibnuda.h"
-
-// clang-format off
-#define LAYOUT_atreus_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
- KTA, KTB, KTC, KTD \
- ) \
- LAYOUT_wrapper( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
- ___, ___, ___, ___, KTA, KTB, KTC, KTD, ___, ___, ___, ___ \
- )
-#define LAYOUT_atreus_base_wrapper(...) LAYOUT_atreus_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_BASE] = LAYOUT_atreus_base_wrapper(
- ________________DVORAK_L1_______________, ________________DVORAK_R1_______________,
- ________________DVORAK_L2_______________, ________________DVORAK_R2_______________,
- ________________DVORAK_L3_______________, ________________DVORAK_R3_______________,
- LW_BSPC,SFT_ESC, ALT_ENT,RS_SPC
-),
-
-[_RAISE] = LAYOUT_atreus_base_wrapper(
- ________________RAISE_L1________________, ________________RAISE_R1________________,
- ________________RAISE_L2________________, ________________RAISE_R2________________,
- ________________RAISE_L3________________, ________________RAISE_R3________________,
- ADDDD, _______, _______,_______
-),
-[_LOWER] = LAYOUT_atreus_base_wrapper(
- ________________LOWER_L1________________, ________________LOWER_R1________________,
- ________________LOWER_L2________________, ________________LOWER_R2________________,
- ________________LOWER_L3________________, ________________LOWER_R3________________,
- _______,_______, _______,ADDDD
-),
-[_ADJUST] = LAYOUT_atreus_base_wrapper(
- ________________ADJUST_L1_______________, ________________ADJUST_R1_______________,
- ________________ADJUST_L2_______________, ________________ADJUST_R2_______________,
- ________________ADJUST_L3_______________, ________________ADJUST_R3_______________,
- _______,_______, _______,_______
-),
-};
-// clang-format on
diff --git a/keyboards/atreus/keymaps/ibnuda/rules.mk b/keyboards/atreus/keymaps/ibnuda/rules.mk
deleted file mode 100644
index 14227c90d7..0000000000
--- a/keyboards/atreus/keymaps/ibnuda/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-LTO_ENABLE=yes
diff --git a/keyboards/atreus/keymaps/manna-harbour_miryoku/config.h b/keyboards/atreus/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 30a066fa5b..0000000000
--- a/keyboards/atreus/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
-XXX, XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX, XXX\
-)
diff --git a/keyboards/atreus/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/atreus/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/atreus/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/atreus/keymaps/ridingqwerty/config.h b/keyboards/atreus/keymaps/ridingqwerty/config.h
deleted file mode 100644
index 349d7b1c49..0000000000
--- a/keyboards/atreus/keymaps/ridingqwerty/config.h
+++ /dev/null
@@ -1,13 +0,0 @@
-#pragma once
-
-#undef MATRIX_ROWS
-#define MATRIX_ROWS 8
-
-#undef MATRIX_COLS
-#define MATRIX_COLS 6
-
-#undef MATRIX_ROW_PINS
-#define MATRIX_ROW_PINS { A6, A7, A8, A15, B11, B12, A14, A13 }
-
-#undef MATRIX_COL_PINS
-#define MATRIX_COL_PINS { B5, B4, B3, B2, B1, B0 }
diff --git a/keyboards/atreus/keymaps/ridingqwerty/keymap.c b/keyboards/atreus/keymaps/ridingqwerty/keymap.c
deleted file mode 100644
index 9b0826402e..0000000000
--- a/keyboards/atreus/keymaps/ridingqwerty/keymap.c
+++ /dev/null
@@ -1,153 +0,0 @@
-/* Copyright 2019 George Koenig
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "ridingqwerty.h"
-
-/* Atreus
- ┏━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┓ ┏━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┓
- ┃ Q │ W │ E │ R │ T ┃ ┃ Y │ U │ I │ O │ P ┃
- ┠────────┼────────┼────────┼────────┼────────┨ ┠────────┼────────┼────────┼────────┼────────┨
- /┃ ¶ A │ S │ D │ F │ G ┃ ┃ H │ J │ K │ L │ 🔢 ; ┃
- ┠────────┼────────┼────────┼────────┼────────┞━━━━━━━━┳━━━━━━━━┞────────┼────────┼────────┼────────┼────────┨
- /┃ ⇧ Z │ X │ C │ V │ B │ ┃ │ N │ M │ , │ 𝔽 . │ ⇧ / ┃
- ┠────────┼────────┼────────┼────────┼────────┤ ¶ ⎋ ┃ ❦ ⇥ ├────────┼────────┼────────┼────────┼────────┨
- ┃ ⎈ ⎋ │ ⌘ ⇥ │ ⎇ [ │ ⇧ ] │ 🔢 ⌫ │ ┃ │ ★ ␣ │ ⇧ - │ ⎇ = │ ⌘ ' │ ⎈ ↵ ┃
- ┗━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┻━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┛
- MODS // LAYERS // MODS //
-*/
-
-#define LAYOUT_atreus( \
- K00, K01, K02, K03, K04, K40, K41, K42, K43, K44, \
- K10, K11, K12, K13, K14, K50, K51, K52, K53, K54, \
- K20, K21, K22, K23, K24, K60, K61, K62, K63, K64, \
- K30, K31, K32, K33, K34, K35, K70, K71, K72, K73, K74, K75 \
-) { \
- { K00, K01, K02, K03, K04, KC_NO }, \
- { K10, K11, K12, K13, K14, KC_NO }, \
- { K20, K21, K22, K23, K24, KC_NO }, \
- { K30, K31, K32, K33, K34, K35 }, \
- { K44, K43, K42, K41, K40, KC_NO }, \
- { K54, K53, K52, K51, K50, KC_NO }, \
- { K64, K63, K62, K61, K60, KC_NO }, \
- { K75, K74, K73, K72, K71, K70 } \
-}
-
-//#define ALPHA UP(UCM_LDEL, UCM_UDEL)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_atreus_wrapper( /* Qwerty */
- ________________ATREUS_L1__________________, ________________ATREUS_R1__________________,
- ________________ATREUS_L2__________________, ________________ATREUS_R2__________________,
- ________________ATREUS_L3__________________, ________________ATREUS_R3__________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
- [_DVORAK] = LAYOUT_atreus_wrapper( /* Qwerty */
- ________________DVORAK_L1__________________, ________________DVORAK_R1__________________,
- ________________DVORAK_L2__________________, ________________DVORAK_R2__________________,
- ________________DVORAK_L3__________________, ________________DVORAK_R3__________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
- [_COLEMAK] = LAYOUT_atreus_wrapper( /* Qwerty */
- ________________COLEMAK_L1_________________, ________________COLEMAK_R1_________________,
- ________________COLEMAK_L2_________________, ________________COLEMAK_R2_________________,
- ________________COLEMAK_L3_________________, ________________COLEMAK_R3_________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
-//#if defined(UNICODEMAP_ENABLE)
-//#ifdef UNICODE_H
-#ifdef UNICODEMAP_ENABLE
- [_GREEK] = LAYOUT_atreus_wrapper(
- ________________GREEK_L1___________________, ________________GREEK_R1___________________,
- ________________GREEK_L2___________________, ________________GREEK_R2___________________,
- ________________GREEK_L3___________________, ________________GREEK_R3___________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
- [_RUSSIAN] = LAYOUT_atreus_wrapper(
- ________________CYRLC_L1___________________, ________________CYRLC_R1___________________,
- ________________CYRLC_L2___________________, ________________CYRLC_R2___________________,
- ________________CYRLC_L3___________________, ________________CYRLC_R3___________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________CYRLC_R4___________________
- ),
- [_RUNES] = LAYOUT_atreus_wrapper(
- ________________FTHRK_L1___________________, ________________FTHRK_R1___________________,
- ________________FTHRK_L2___________________, ________________FTHRK_R2___________________,
- ________________FTHRK_L3___________________, ________________FTHRK_R3___________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
- [_HIRA1] = LAYOUT_atreus_wrapper(
- ________________JIS1_L1____________________, ________________JIS1_R1____________________,
- ________________JIS1_L2____________________, ________________JIS1_R2____________________,
- ________________JIS1_L3____________________, ________________JIS1_R3____________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
- [_HIRA2] = LAYOUT_atreus_wrapper(
- ________________JIS2_L1____________________, ________________JIS2_R1____________________,
- ________________JIS2_L2____________________, ________________JIS2_R2____________________,
- ________________JIS2_L3____________________, ________________JIS2_R3____________________,
- ________________BOTTOM_L4__________________, ____THUMBS_R4___, ________________BOTTOM_R4__________________
- ),
-#endif
- [_EDITOR] = LAYOUT_atreus_wrapper( /* ED_A, ED_ESC */
- ________________EDITOR_L1__________________, ________________EDITOR_R1__________________,
- ________________EDITOR_L2__________________, ________________EDITOR_R2__________________,
- ________________EDITOR_L3__________________, ________________EDITOR_R3__________________,
- _______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______
- ),
- [_NUMBER] = LAYOUT_atreus_wrapper( /* NM_SCLN, NM_BSPC */
- ________________NUMROW_L1__________________, ________________NUMROW_R1__________________,
- ________________NUMROW_R1__________________, ________________NUMPAD_R2__________________,
- ___________________________________________, ________________NUMPAD_R3__________________,
- ___________________________________________, ________________, ________________NUMPAD_R4__________________
- ),
- [_SYMBOL] = LAYOUT_atreus_wrapper( /* SM_SPC */
- ________________SYMROW_L1__________________, ________________SYMROW_R1__________________,
- ________________SYMROW_R1__________________, ________________SYMROW_R1__________________,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSLS,
- KC_LBRC, _______, _______, _______, _______, ________________, _______, _______, _______, _______, KC_RBRC
- ),
- [_F_KEYS] = LAYOUT_atreus_wrapper( /* FK_DOT */
- ________________FKEYROW_L1_________________, ________________FKEYROW_R1_________________,
- ________________FKEYROW_R1_________________, ________________FKEYROW_L1_________________,
- KC_F11, KC_F12, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_DEBUG] = LAYOUT_atreus_wrapper( /* shhhh... */
- ________________DEBUG_L1___________________, ________________DEBUG_R1___________________,
- ________________DEBUG_L2___________________, ________________DEBUG_R2___________________,
- ________________DEBUG_L3___________________, ________________DEBUG_R3___________________,
- _______, _______, _______, _______, _______, ________________, _______, _______, _______, _______, _______
- ),
- [_SECRET] = LAYOUT_atreus_wrapper( /* shhhh... */
-/*
- _______, _______, _______, RUSTY, FUEL, _______, _______, _______, _______, _______,
- AR1ST, SYSNOC, _______, _______, _______, _______, _______, _______, OS_LAB, _______,
- CDLOCAL, _______, C0RE, VAXIS, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-*/
- ________________SECRET_L1__________________, ________________SECRET_R1__________________,
- ________________SECRET_L2__________________, ________________SECRET_R2__________________,
- ________________SECRET_L3__________________, ________________SECRET_R3__________________,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-
- ),
- [_FINAL] = LAYOUT_atreus( /* . */
- _______, _______, _______, _______, TESTING, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/atreus/keymaps/ridingqwerty/readme.md b/keyboards/atreus/keymaps/ridingqwerty/readme.md
deleted file mode 100644
index 936df36099..0000000000
--- a/keyboards/atreus/keymaps/ridingqwerty/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-This is a handwired Atreus42 using a Proton C
diff --git a/keyboards/atreus/keymaps/ridingqwerty/rules.mk b/keyboards/atreus/keymaps/ridingqwerty/rules.mk
deleted file mode 100644
index ecead0e01b..0000000000
--- a/keyboards/atreus/keymaps/ridingqwerty/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# MCU name
-MCU = STM32F303
-BOARD = QMK_PROTON_C
-
-# Bootloader selection
-BOOTLOADER = stm32-dfu
-
-# Build Options
-# comment out to disable the options.
-#
-BACKLIGHT_ENABLE = no
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # USB Nkey Rollover
-AUDIO_ENABLE = yes # Doot
-RGBLIGHT_ENABLE = no
-TAP_DANCE_ENABLE = no
-UNICODE_ENABLE = no
-UNICODEMAP_ENABLE = yes
diff --git a/keyboards/atreus/keymaps/talljoe/config.h b/keyboards/atreus/keymaps/talljoe/config.h
deleted file mode 100644
index 71c7864b7c..0000000000
--- a/keyboards/atreus/keymaps/talljoe/config.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright 2020 Joseph Wasson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define SPACE_COUNT 3
-
-#define TEMPLATE_TKL( \
- KESC, KF01, KF02, KF03, KF04, KF05, KF06, KF07, KF08, KF09, KF10, KF11, KF12, KSCL, KPRS, KADJ, \
- KGRV, K_1 , K_2 , K_3 , K_4 , K_5 , K_6 , K_7 , K_8 , K_9 , K_0 , KMIN, KEQL, KBSP, KINS, KHOM, KPUP, \
- KTAB, K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , KLBR, KRBR, KBLS, KDEL, KEND, LPDN, \
- KCAP, K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, KQUO, KENT, \
- KLSH, K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, KRSH, K_UP, \
- KLCT, KLOS, KLAL, KSP3, KSP2, KSP1, KRAL, KROS, KRCT, KPTT, K_LT, K_DN, K_RT \
-) LAYOUT( \
- K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , \
- K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, \
- K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, \
- KTAB, KLOS, KLAL, KLSH, KSP3, KSP2, KCAP, KSP1, KRSH, KBLS, KQUO, KADJ \
-)
-
-#define TEMPLATE_NUM( \
- KGRV, K_1 , K_2 , K_3 , K_4 , K_5 , K_6 , K_7 , K_8 , K_9 , K_0 , KMIN, KEQL, KBSL, KESC, \
- KTAB, K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , KLBR, KRBR, KBSP, \
- KCAP, K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, KQUO, KENT, \
- KLSH, K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, KRSH, KADJ, \
- KLCT, KLOS, KLAL, KSP3, KSP2, KSP1, KRAL, KROS, KRCT, KPTT \
-) LAYOUT( \
- K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , \
- K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, \
- K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, \
- KTAB, KLOS, KLAL, KLSH, KSP3, KSP2, KCAP, KSP1, KRAL, KROS, KQUO, KADJ \
-)
-
-#define TEMPLATE_RESET LAYOUT( \
- QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
- QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
-)
diff --git a/keyboards/atreus/keymaps/talljoe/keymap.c b/keyboards/atreus/keymaps/talljoe/keymap.c
deleted file mode 100644
index 7812add812..0000000000
--- a/keyboards/atreus/keymaps/talljoe/keymap.c
+++ /dev/null
@@ -1 +0,0 @@
-// This space intentionally left blank
diff --git a/keyboards/atreus/keymaps/talljoe/rules.mk b/keyboards/atreus/keymaps/talljoe/rules.mk
deleted file mode 100644
index 92007fe8ad..0000000000
--- a/keyboards/atreus/keymaps/talljoe/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-USER_NAME := talljoe
diff --git a/keyboards/atreus62/keymaps/d4mation/keymap.c b/keyboards/atreus62/keymaps/d4mation/keymap.c
deleted file mode 100644
index e01f5b9ec6..0000000000
--- a/keyboards/atreus62/keymaps/d4mation/keymap.c
+++ /dev/null
@@ -1,196 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "d4mation.h"
-
-enum layer_names {
- _DVR,
- _QWR,
- _LOWER,
- _RAISE,
- _NUM,
- _ADJUST
-};
-
-enum keymap_custom_keycodes {
- LOWER = NEW_SAFE_RANGE,
- RAISE
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Default/Dvorak layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | / |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | ' | , | . | P | Y | | F | G | C | R | L | = |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | A | O | E | U | I |,------.,------.| D | H | T | N | S | - |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * |Shift | ; | Q | J | K | X ||Super ||Enter || B | M | W | V | Z | \ |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | NUM | Alt | Home | End |Lower | Bksp |`------'`------'|Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------' `-----------------------------------------'
- */
-
- [_DVR] = LAYOUT(
- _GRAVE_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_EQL,
- KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,
- TD(SHIFT_CAPS), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_BSLS,
- TG(_NUM), KC_RALT, KC_HOME, KC_END, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
- ),
-
- /* Qwerty layer, more "standard" for other people who may need to use my keyboard or for games where using Qwerty is just easier
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | A | S | D | F | G |,------.,------.| H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * |Shift | Z | X | C | V | B ||Super ||Enter || N | M | , | . | / | = |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | NUM | Alt | Home | End |Lower | Bksp |`------'`------'|Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------' `-----------------------------------------'
- */
-
- [_QWR] = LAYOUT(
- _GRAVE_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- TD(SHIFT_CAPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_EQL,
- TG(_NUM), KC_RALT, KC_HOME, KC_END, LOWER, KC_BSPC, KC_LGUI, KC_ENT, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
- ),
-
- /* "Lower" layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | |SLEEP | | | | | SCRGB| | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |,------.,------.| | | | { | } | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | | | | | || || || | Mute | VolD | VolU | | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | |PageUp|PgDown| | Del |`------'`------'| Ins | | | | | |
- * `-----------------------------------------' `-----------------------------------------'
- */
-
- [_LOWER] = LAYOUT(
- KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
- _______, _______, _______, _______, SLEEP, _______, _______, _______, SCRGB, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
- _______, _______, KC_PGUP, KC_PGDN, _______, KC_DEL, _______, _______, KC_INS, _______, _______, _______, _______, _______
- ),
-
- /* "Raise" layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | |<?php>| ?> | | | |ZALGO | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Shrug|Lenny |Magic |Disfac| |,------.,------.| | | | [ | ] | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | Ameno| Tflip| Tput | | || || || | Prev | Play | Next | | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | |PageUp|PgDown| | Del |`------'`------'| Ins | | | | | |
- * `-----------------------------------------' `-----------------------------------------'
- */
-
- [_RAISE] = LAYOUT(
- KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
- _______, _______, PHPOPEN, PHPCLSE, _______, _______, ZALGO, _______, _______, _______, _______, _______,
- _______, SHRUG, LENNY, MAGIC, DISFACE, _______, _______, _______, _______, KC_LBRC, KC_RBRC,_______,
- _______, AMENO, TFLIP, TPUT, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______,
- _______, _______, KC_PGUP, KC_PGDN, _______, KC_DEL, _______, _______, KC_INS, _______, _______, _______, _______, _______
- ),
-
- /* "Numpad" layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | / | * | - | | | | | / | * | - | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | 7 | 8 | 9 | + | | | | 7 | 8 | 9 | + | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | 4 | 5 | 6 | + | |,------.,------.| | 4 | 5 | 6 | + | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | 1 | 2 | 3 | Enter| || || || | 1 | 2 | 3 | Enter| |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | 0 | 0 | . | Enter| |`------'`------'| | 0 | 0 | . | Enter| |
- * `-----------------------------------------' `-----------------------------------------'
- */
-
- [_NUM] = LAYOUT(
- _______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______, _______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______,
- _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, _______,
- _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______,
- _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______,
- _______, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, _______, _______, _______, _______, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, _______
- ),
-
- /* "Adjust" layer, only active if both "Lower" and "Raise" are active at the same time
- * All unused keys are blanked out for this layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | NO | NO | NO | NO | NO | NO | | NO | NO | NO | NO | NO | NO |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | NO |QK_BOOT | NO | NO | NO | NO | | NO | NO | NO | NO | NO | NO |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | NO | NO | NO |UC WIN|UC OSX| NO |,------.,------.| NO |Dvorak|Qwerty| NO | NO | NO |
- * |------+------+------+------+------+------|| Swap || ||------+------+------+------+------+------|
- * | NO | NO | NO | NO | NO | NO || to || Swap || NO | NO | NO | NO | NO | NO |
- * |------+------+------+------+------+------|| Ctrl || Back ||------+------+------+------+------+------|
- * | NO | NO | NO | NO | | NO |`------'`------'| NO | | NO | NO | NO | NO |
- * `-----------------------------------------' `-----------------------------------------'
- */
-
- [_ADJUST] = LAYOUT(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, UC_WIN, UC_MAC, XXXXXXX, XXXXXXX, DF(_DVR),DF(_QWR),XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, CG_SWAP, CG_NORM, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
-};
-
-/* Runs just one time when the keyboard initializes. */
-void eeconfig_init_keymap( void ) {
- set_unicode_input_mode( UNICODE_MODE_MACOS );
-};
-
-bool process_record_keymap( uint16_t keycode, keyrecord_t *record ) {
-
- switch ( keycode ) {
-
- case LOWER:
-
- if ( record->event.pressed ) {
- layer_on( _LOWER );
- update_tri_layer( _LOWER, _RAISE, _ADJUST );
- }
- else {
- layer_off( _LOWER );
- update_tri_layer( _LOWER, _RAISE, _ADJUST );
- }
-
- return false;
- break;
-
- case RAISE :
-
- if ( record->event.pressed ) {
- layer_on( _RAISE );
- update_tri_layer( _LOWER, _RAISE, _ADJUST );
- }
- else {
- layer_off( _RAISE );
- update_tri_layer( _LOWER, _RAISE, _ADJUST );
- }
-
- return false;
- break;
-
- }
-
- return true;
-
-}; \ No newline at end of file
diff --git a/keyboards/atreus62/keymaps/d4mation/readme.md b/keyboards/atreus62/keymaps/d4mation/readme.md
deleted file mode 100644
index 5642e8e432..0000000000
--- a/keyboards/atreus62/keymaps/d4mation/readme.md
+++ /dev/null
@@ -1,40 +0,0 @@
-# d4mation's keymap for the Atreus62
-
-This is a bit of a work in-progress, but for the most part I like what I have done here.
-
-I switched to Dvorak some time ago and software-based support in most OS's for Dvorak isn't very great, so this keymap by default is set to Dvorak.
-
-## Table of Contents
-
-* [Layers](#layers)
- - [Base layer](#base)
- - [Num](#num)
- - [Lower](#lower)
- - [Raise](#raise)
- - [Adjust](#adjust)
-
-# Layers
-
-## Base
-
-* By default, this layer is Dvorak. But using the Adjust layer you can switch to Qwerty
-* Double-tapping Shift enables and disables Caps Lock
-* Quickly tapping the Grave accent key will output a Grave Accent, but holding it for 200ms will output the ESC key instead
-
-## Num
-
-This layer gets toggled off and on to place a numpad on both the left and right sides of the keyboard.
-
-## Lower
-
-This layer holds some handy shortcuts that I use often, like the screen grab shortcut and sleep shortcut in OS X.
-
-It also has quick access to {} as they are inaccessible in the base layer
-
-## Raise
-
-Aside from quick access to [] and Play/Pause/Next/Previous, this layer is mostly just goofy things I decided to program into the keyboard because I could. There's a bunch of [kaomoji](https://en.wikipedia.org/wiki/Emoticon#Japanese_style_(kaomoji))/"unicode smileys" and I added a toggle switch to enable a [Zalgo Text](https://zalgo.org/) mode.
-
-## Adjust
-
-This layer is a "here be dragons" layer. It can only be accessed by holding down the keys for Lower and Raise at the same time. I added exclusively keys that drastically transformed the keyboard's layout or function on this layer. The ability to switch to Qwerty is on this layer, a way to switch CTRL and CMD back and forth is on this layer, and a hotkey to enter bootloader mode also exists.
diff --git a/keyboards/atreus62/keymaps/d4mation/rules.mk b/keyboards/atreus62/keymaps/d4mation/rules.mk
deleted file mode 100644
index 517f2700e1..0000000000
--- a/keyboards/atreus62/keymaps/d4mation/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-UNICODE_ENABLE = yes
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/atreus62/keymaps/hvp/config.h b/keyboards/atreus62/keymaps/hvp/config.h
deleted file mode 100644
index 8013c0cb6d..0000000000
--- a/keyboards/atreus62/keymaps/hvp/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define TAPPING_TERM 150
-#define PERMISSIVE_HOLD
diff --git a/keyboards/atreus62/keymaps/hvp/keymap.c b/keyboards/atreus62/keymaps/hvp/keymap.c
deleted file mode 100644
index 1a49f838fa..0000000000
--- a/keyboards/atreus62/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-
-#define LT3_ESC LT(3, KC_ESC)
-#define LT4_TAB LT(4, KC_TAB)
-#define LT1_ENT LT(1, KC_ENTER)
-#define LT2_BSP LT(2, KC_BSPC)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- LAYOUT( /* qwerty */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC ,
- LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
- LT3_ESC, KC_A, KC_S, KC_D, LT(3,KC_F), LT(4,KC_G), KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2) ,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT ,
- KC_LCTL, KC_APP, _______, KC_LGUI, KC_LALT,SFT_T(KC_SPC), LT2_BSP, LT1_ENT, SFT_T(KC_SPC), KC_LSFT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
-
- LAYOUT( /* Right */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS ,
- KC_DEL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC ,
- KC_DEL, _______, _______, _______, _______, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
-
- LAYOUT(/* Left */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS ,
- KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_BSPC,
- KC_DELETE, _______, _______, _______, _______, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
- _______ , _______ , _______ , _______ , _______ , KC_LEFT_CURLY_BRACE , KC_RIGHT_CURLY_BRACE ,KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_TILD,
- _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
-
-
- LAYOUT(/* Esc */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- KC_NO, KC_NO, KC_NO, D_NAVI, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_NO ,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_NO, KC_NO ,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MSTP, KC_MPLY, KC_NO, KC_MUTE, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
- ),
-
-
-
- LAYOUT(/* Tab */
- _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______ ,
- _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______ ,
- _______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, _______, _______ ,
- KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /*
- [_TRNS] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- */
-};
diff --git a/keyboards/atreus62/keymaps/hvp/readme.md b/keyboards/atreus62/keymaps/hvp/readme.md
deleted file mode 100644
index 766533d3be..0000000000
--- a/keyboards/atreus62/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: Atreus62
-Keys: 62 keyed ortho staggered keyboard with a split layout and num row.
-Layout: Swedish characters on main layer using tap dance. Built for Eurkey keyboard layout.
-Flash instructions: Flash using avrdude, will req the hvp user space to compile.
-
-> make make atreus62:hvp:avrdude
-
-Links:
-Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/atreus62
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/atreus62/keymaps/hvp/rules.mk b/keyboards/atreus62/keymaps/hvp/rules.mk
deleted file mode 100644
index 1ba2fa8fbe..0000000000
--- a/keyboards/atreus62/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/atreus62/keymaps/jarred/config.h b/keyboards/atreus62/keymaps/jarred/config.h
deleted file mode 100644
index 34ab0baaf0..0000000000
--- a/keyboards/atreus62/keymaps/jarred/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright 2018 Jarred Steenvoorden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// My hand wire diodes are in the opposite direction to the Atreus62 PCB
-#undef DIODE_DIRECTION
-#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/atreus62/keymaps/jarred/keymap.c b/keyboards/atreus62/keymaps/jarred/keymap.c
deleted file mode 100644
index 7a49b2890c..0000000000
--- a/keyboards/atreus62/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2018 Jarred Steenvoorden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "jarred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_atreus62_grid_wrapper(BLANK_12, QWERTY_1_12, QWERTY_2_12, QWERTY_3_12, QWERTY_L4, KC_NO, KC_NO, QWERTY_R4),
- [_LW] = LAYOUT_atreus62_grid_wrapper(BLANK_12, LOWER_1_12 , LOWER_2_12 , LOWER_3_12 , LOWER_L4 , KC_NO, KC_NO, LOWER_R4 ),
- [_NV] = LAYOUT_atreus62_grid_wrapper(BLANK_12, NAV_1_12 , NAV_2_12 , NAV_3_12 , NAV_L4 , KC_NO, KC_NO, NAV_R4 ),
- [_NP] = LAYOUT_atreus62_grid_wrapper(BLANK_12, NUMPAD_1_12, NUMPAD_2_12, NUMPAD_3_12, NUMPAD_L4, KC_NO, KC_NO, NUMPAD_R4),
- [_MS] = LAYOUT_atreus62_grid_wrapper(BLANK_12, MOUSE_1_12 , MOUSE_2_12 , MOUSE_3_12 , MOUSE_L4 , KC_NO, KC_NO, MOUSE_R4 )
-};
diff --git a/keyboards/atreus62/keymaps/pcewing/keymap.c b/keyboards/atreus62/keymaps/pcewing/keymap.c
deleted file mode 100644
index c8dfd5734b..0000000000
--- a/keyboards/atreus62/keymaps/pcewing/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define FN MO(_FN)
-#define TODO KC_NO
-
-enum atreus62_layers {
- _DEFAULT,
- _FN,
- _RESET
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Default layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Esc | A | S | D | F | G |,------.,------.| H | J | K | L | ; | " |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * |Shift | Z | X | C | V | B ||Delete||Enter || N | M | , | . | / |Shift |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | Ctrl | Win | Alt | ` | Fn | Bksp |`------'`------'|Space | Fn | | Alt | Win | Ctrl |
- * `-----------------------------------------' `-----------------------------------------'
- */
- [_DEFAULT] = LAYOUT( /* qwerty */
- KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_GRV, FN, KC_BSPC, KC_DEL, KC_ENT, KC_SPC, FN, TODO, KC_RALT, KC_RGUI, KC_RCTL
- ),
-
- /* Function layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | F10 | F11 | F12 | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Home | Up | End | PgUp | | | PrSc | F7 | F8 | F9 | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Caps | Left | Down |Right | PgDn | |,------.,------.|Pause | F4 | F5 | F6 | | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | { | } | [ | ] | || || ||Insert| F1 | F2 | F3 | | |
- * |------+------+------+------+------+------|| || ||------+------+------+------+------+------|
- * | | | | | | |`------'`------'| | | | | | |
- * `-----------------------------------------' `-----------------------------------------'
- */
- [_FN] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, KC_F10, KC_F11, KC_F12, _______, TO(_RESET),
- _______, KC_HOME, KC_UP, KC_END, KC_PGDN, _______, KC_PSCR, KC_F7, KC_F8, KC_F9, _______, _______,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGUP, _______, KC_PAUS, KC_F4, KC_F5, KC_F6, _______, _______,
- _______, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, _______, KC_INS, KC_F1, KC_F2, KC_F3, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- /*
- * This layer makes it possible to reset the firmware; don't get rid of it and make sure there is a way to activate it.
- */
- [_RESET] = LAYOUT(
- TO(_DEFAULT), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT
- )
-
- /*
- [_TRNS] = LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- */
-};
diff --git a/keyboards/atreus62/keymaps/scheiklp/config.h b/keyboards/atreus62/keymaps/scheiklp/config.h
deleted file mode 100644
index d8b7abe8d3..0000000000
--- a/keyboards/atreus62/keymaps/scheiklp/config.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Copyright 2017 Benjamin Kesselring
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-// place overrides here
-#define AUTO_SHIFT_TIMEOUT 125
-#define NO_AUTO_SHIFT_SPECIAL
-#define NO_AUTO_SHIFT_NUMERIC
-
-// require two taps for a TT layer switch (default 5)
-#define TAPPING_TOGGLE 2
-
-// Mouse control
-// constant mode (velocity)
-#define MK_3_SPEED
-// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
-
-// Cursor offset per movement (unmodified)
-#define MK_C_OFFSET_UNMOD 20
-// Time between cursor movements (unmodified)
-#define MK_C_INTERVAL_UNMOD 1
-/* #define MK_C_INTERVAL_UNMOD 16 */
-
-// Cursor offset per movement (KC_ACL0)
-#define MK_C_OFFSET_0 1
-// Time between cursor movements (KC_ACL0)
-#define MK_C_INTERVAL_0 10
-
-// Cursor offset per movement (KC_ACL1)
-#define MK_C_OFFSET_1 4
-// Time between cursor movements (KC_ACL1)
-#define MK_C_INTERVAL_1 16
-
-// Cursor offset per movement (KC_ACL2)
-#define MK_C_OFFSET_2 20
-/* #define MK_C_OFFSET_2 32 */
-// Time between cursor movements (KC_ACL2)
-#define MK_C_INTERVAL_2 16
diff --git a/keyboards/atreus62/keymaps/scheiklp/keymap.c b/keyboards/atreus62/keymaps/scheiklp/keymap.c
deleted file mode 100644
index 13ad3e4f51..0000000000
--- a/keyboards/atreus62/keymaps/scheiklp/keymap.c
+++ /dev/null
@@ -1,43 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-// Layer shorthand
-#define _1 0
-#define _3 1
-#define _4 2
-#define _7 3
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_1] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_K, KC_DOT, KC_O, KC_COMM, N_Y, KC_V, KC_G, KC_C, KC_L, N_SS, N_Z,
- MO(_3), KC_H, KC_A, KC_E, KC_I, KC_U, KC_D, KC_T, KC_R, KC_N, KC_S, KC_F,
- KC_LSFT, KC_X, KC_Q, N_AE, N_UE, N_OE, KC_B, KC_P, KC_W, KC_M, KC_J, KC_RSFT,
- KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_SPC, KC_ENTER, KC_RCTL, MO(_3), MO(_4), KC_TRNS, KC_TRNS, KC_CAPS, TT(_7)
- ),
-
- [_3] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSPC,
- KC_TAB, N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC, N_EXKL, N_LT, N_GT, N_EQ, N_AMP, N_ACUT,
- KC_TRNS, N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR, N_QUES, N_LPARN, N_RPARN, N_MINS, N_COLN, N_AT,
- KC_LSFT, N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE, N_PLUS, N_PERC, N_QUOT, N_SING, N_SEMI, KC_RSFT,
- KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_SPC, KC_ENTER, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [_4] = LAYOUT(
- KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC,
- KC_TAB, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN, KC_KP_SLASH, KC_7, KC_8, KC_9, KC_KP_MINUS, KC_TRNS,
- KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_KP_ASTERISK, KC_4, KC_5, KC_6, KC_KP_PLUS, KC_TRNS,
- KC_LSFT, KC_ESC, KC_TAB, KC_INS, KC_ENTER, N_UNDO, KC_KP_ENTER, KC_1, KC_2, KC_3, KC_KP_DOT, KC_RSFT,
- KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_0, KC_ENTER, KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [_7] = LAYOUT(
- KC_ESC, KC_TRNS, KC_TRNS, KC_MS_BTN3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TAB, KC_MS_WH_UP, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_WH_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_MS_ACCEL0, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LSFT, KC_MS_ACCEL1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LCTL, KC_MS_ACCEL2, KC_TRNS, KC_LALT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- )
-};
diff --git a/keyboards/atreus62/keymaps/scheiklp/readme.md b/keyboards/atreus62/keymaps/scheiklp/readme.md
deleted file mode 100644
index b5590b6f2f..0000000000
--- a/keyboards/atreus62/keymaps/scheiklp/readme.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# KOY Layout for the atreus62 pcb board
-Compile the layout
-```bash
-qmk compile -kb atreus62 -km scheiklp
-```
-disable this service that interfers with the pro micro
-```
-sudo systemctl stop ModemManager.service
-```
-and flash it to the board
-```bash
-qmk flash -kb atreus62 -km scheiklp
-```
diff --git a/keyboards/atreus62/keymaps/scheiklp/rules.mk b/keyboards/atreus62/keymaps/scheiklp/rules.mk
deleted file mode 100644
index 681e7507b4..0000000000
--- a/keyboards/atreus62/keymaps/scheiklp/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-AUTO_SHIFT_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-NKRO_ENABLE = yes
diff --git a/keyboards/axolstudio/yeti/hotswap/config.h b/keyboards/axolstudio/yeti/hotswap/config.h
index 694a6449f0..02077e05a7 100644
--- a/keyboards/axolstudio/yeti/hotswap/config.h
+++ b/keyboards/axolstudio/yeti/hotswap/config.h
@@ -61,7 +61,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_LED_FLUSH_LIMIT 16 // 16 is equivalent to limiting to 60fps
# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 64
#endif
diff --git a/keyboards/axolstudio/yeti/hotswap/hotswap.c b/keyboards/axolstudio/yeti/hotswap/hotswap.c
index 98d37290e6..527bec17ee 100644
--- a/keyboards/axolstudio/yeti/hotswap/hotswap.c
+++ b/keyboards/axolstudio/yeti/hotswap/hotswap.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, B_1, A_1, C_1 },
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
diff --git a/keyboards/bajjak/rules.mk b/keyboards/bajjak/rules.mk
index 13148ecb04..21db4112e0 100644
--- a/keyboards/bajjak/rules.mk
+++ b/keyboards/bajjak/rules.mk
@@ -26,4 +26,4 @@ AUDIO_SUPPORTED = no
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/barleycorn_smd/rules.mk b/keyboards/barleycorn_smd/rules.mk
index 173368a047..69ecebae2a 100644
--- a/keyboards/barleycorn_smd/rules.mk
+++ b/keyboards/barleycorn_smd/rules.mk
@@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = lite
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/bastardkb/charybdis/3x5/blackpill/info.json b/keyboards/bastardkb/charybdis/3x5/blackpill/info.json
index 89e181b8f9..a20b2ce636 100644
--- a/keyboards/bastardkb/charybdis/3x5/blackpill/info.json
+++ b/keyboards/bastardkb/charybdis/3x5/blackpill/info.json
@@ -3,6 +3,9 @@
"usb": {
"device_version": "1.0.0"
},
+ "eeprom": {
+ "driver": "spi"
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/bastardkb/charybdis/3x5/blackpill/rules.mk b/keyboards/bastardkb/charybdis/3x5/blackpill/rules.mk
index 9cc216bb71..4bd570ddd8 100644
--- a/keyboards/bastardkb/charybdis/3x5/blackpill/rules.mk
+++ b/keyboards/bastardkb/charybdis/3x5/blackpill/rules.mk
@@ -23,5 +23,4 @@ POINTING_DEVICE_DRIVER = pmw3360
MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
KEYBOARD_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c
index 8f02227c01..21e823575e 100644
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c
+++ b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c
@@ -210,15 +210,3 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
// Forward-declare this helper function since it is defined in rgb_matrix.c.
void rgb_matrix_update_pwm_buffers(void);
#endif
-
-void shutdown_user(void) {
-#ifdef RGBLIGHT_ENABLE
- rgblight_enable_noeeprom();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_setrgb(RGB_RED);
-#endif // RGBLIGHT_ENABLE
-#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_set_color_all(RGB_RED);
- rgb_matrix_update_pwm_buffers();
-#endif // RGB_MATRIX_ENABLE
-}
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/config.h b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/config.h
deleted file mode 100644
index 6d24808af2..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/config.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
-
-Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#ifdef KEYBOARD_bastardkb_charybdis_3x5_blackpill
-
-# undef MATRIX_ROW_PINS
-# define MATRIX_ROW_PINS \
- { B12, B13, B14, B15 }
-# undef MATRIX_COL_PINS
-# define MATRIX_COL_PINS \
- { A15, B3, B4, B5, B6 }
-
-# undef MATRIX_ROW_PINS_RIGHT
-# define MATRIX_ROW_PINS_RIGHT \
- { B12, B13, B14, B15 }
-# undef MATRIX_COL_PINS_RIGHT
-# define MATRIX_COL_PINS_RIGHT \
- { A15, B3, B4, B5, B6 }
-
-# define USB_VBUS_PIN B10
-# undef SPLIT_HAND_PIN
-# define SPLIT_HAND_PIN C14 // high = left, low = right
-
-// WS2812 RGB LED strip input and number of LEDs
-# undef WS2812_DI_PIN
-# define WS2812_DI_PIN A1
-# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150
-# define WS2812_PWM_DRIVER PWMD2 // default: PWMD2
-# define WS2812_PWM_CHANNEL 2 // default: 2
-# define WS2812_PWM_PAL_MODE 1 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2
-# define WS2812_EXTERNAL_PULLUP
-//#define WS2812_PWM_COMPLEMENTARY_OUTPUT // Define for a complementary timer output (TIMx_CHyN); omit for a normal timer output (TIMx_CHy).
-# undef WS2812_DMA_STREAM
-# define WS2812_DMA_STREAM STM32_DMA1_STREAM7 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU.
-# define WS2812_DMA_CHANNEL 3 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU.
-# define WS2812_PWM_TARGET_PERIOD 800000
-
-# define DEBUG_LED_PIN C13
-
-/* Audio config */
-# define AUDIO_PIN B1
-# define AUDIO_PWM_DRIVER PWMD3
-# define AUDIO_PWM_CHANNEL 4
-# define AUDIO_PWM_PAL_MODE 2
-
-/* serial.c configuration for split keyboard */
-# undef SOFT_SERIAL_PIN
-# define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode.
-# undef SERIAL_USART_TX_PIN
-# define SERIAL_USART_TX_PIN A2
-# undef SERIAL_USART_RX_PIN
-# define SERIAL_USART_RX_PIN A3
-# define SERIAL_USART_DRIVER SD2
-# define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
-# define SERIAL_USART_RX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
-# define SERIAL_USART_TIMEOUT 100 // USART driver timeout. default 100
-# define SERIAL_USART_SPEED 921600
-// #define SERIAL_USART_PIN_SWAP // swap RX and TX pins on master
-// To use the highest possible baudrate (3.75Mbit/s) uncomment the following
-// line, this can result in dropped communications so lower the speed if there
-// are many timeouts.
-// #define SERIAL_USART_SPEED (STM32_PCLK2 >> 4)
-
-# define CRC8_USE_TABLE
-# define CRC8_OPTIMIZE_SPEED
-
-/* spi config for eeprom and pmw3360 sensor */
-# define SPI_DRIVER SPID1
-# define SPI_SCK_PIN A5
-# define SPI_SCK_PAL_MODE 5
-# define SPI_MOSI_PIN A7
-# define SPI_MOSI_PAL_MODE 5
-# define SPI_MISO_PIN A6
-# define SPI_MISO_PAL_MODE 5
-
-/* eeprom config */
-# define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4
-# define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 64
-// #define EXTERNAL_EEPROM_BYTE_COUNT 8196
-// #define EXTERNAL_EEPROM_PAGE_SIZE 32
-// #define EXTERNAL_EEPROM_ADDRESS_SIZE 2
-
-/* pmw3360 config */
-# undef PMW33XX_CS_PIN
-# define PMW33XX_CS_PIN B0
-#endif
-
-#define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200
-#define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 400
-#define CHARYBDIS_MINIMUM_SNIPING_DPI 200
-#define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 100
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/halconf.h b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/halconf.h
deleted file mode 100644
index 3b254172b4..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/halconf.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2020 Nick Brassel (tzarc)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#if defined(KEYBOARD_bastardkb_charybdis_3x5_blackpill)
-# define HAL_USE_PWM TRUE
-# define HAL_USE_SERIAL TRUE
-# define HAL_USE_I2C TRUE
-# define HAL_USE_SPI TRUE
-# define SPI_USE_WAIT TRUE
-# define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
-#endif
-
-#include_next <halconf.h>
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c
deleted file mode 100644
index e458a84373..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
- * Copyright 2021 Drashna Jael're @drashna
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-#define LAYOUT_charybdis_3x5_wrapper(...) LAYOUT_charybdis_3x5(__VA_ARGS__)
-#define LAYOUT_charybdis_3x5_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_charybdis_3x5 ( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- ALT_T(K11), K12, K13, K14, GUI_T(K15), LGUI_T(K16), K17, K18, K19, LALT_T(K1A), \
- CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), \
- LSFT_T(KC_GRV), KC_SPC, BK_LWER, DL_RAIS, RSFT_T(KC_ENT) \
- )
-#define LAYOUT_charybdis_3x5_base_wrapper(...) LAYOUT_charybdis_3x5_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_DEFAULT_LAYER_1] = LAYOUT_charybdis_3x5_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_charybdis_3x5_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_charybdis_3x5_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_charybdis_3x5_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_MOUSE] = LAYOUT_charybdis_3x5(
- _______, _______, _______, _______, _______, KC_WH_U, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD,
- _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6,
- _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______,
- _______, SNIPING, _______, _______, _______
- ),
- [_LOWER] = LAYOUT_charybdis_3x5_wrapper(
- _________________LOWER_L1__________________, _________________LOWER_R1__________________,
- _________________LOWER_L2__________________, _________________LOWER_R2__________________,
- _________________LOWER_L3__________________, _________________LOWER_R3__________________,
- _______, _______, _______, _______, AUTO_CTN
- ),
- [_RAISE] = LAYOUT_charybdis_3x5_wrapper(
- _________________RAISE_L1__________________, _________________RAISE_R1__________________,
- _________________RAISE_L2__________________, _________________RAISE_R2__________________,
- _________________RAISE_L3__________________, _________________RAISE_R3__________________,
- QK_RBT, _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT_charybdis_3x5_wrapper(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- EE_CLR, KC_NUKE, _______, _______, QK_BOOT
- ),
-};
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h
deleted file mode 100644
index 3defeed4dd..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Copyright 2020 Nick Brassel (tzarc)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#if defined(KEYBOARD_bastardkb_charybdis_3x5_blackpill)
-# undef STM32_I2C_USE_I2C1
-# define STM32_I2C_USE_I2C1 TRUE
-
-// #undef STM32_I2C_I2C1_RX_DMA_STREAM
-// #define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0)
-# undef STM32_I2C_I2C1_TX_DMA_STREAM
-# define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 1)
-
-# undef STM32_PWM_USE_TIM2
-# define STM32_PWM_USE_TIM2 TRUE
-
-# undef STM32_PWM_USE_TIM3
-# define STM32_PWM_USE_TIM3 TRUE
-
-# undef STM32_SPI_USE_SPI1
-# define STM32_SPI_USE_SPI1 TRUE
-
-# undef STM32_SERIAL_USE_USART2
-# define STM32_SERIAL_USE_USART2 TRUE
-
-# undef STM32_ST_USE_TIMER
-# define STM32_ST_USE_TIMER 5
-#endif
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk
deleted file mode 100644
index 029b4a498b..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,43 +0,0 @@
-RGB_MATRIX_ENABLE = no
-CUSTOM_UNICODE_ENABLE = no
-CUSTOM_POINTING_DEVICE = no
-CUSTOM_SPLIT_TRANSPORT_SYNC = no
-
-
-ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/3x5/blackpill)
- # Bootloader selection
- BOOTLOADER := tinyuf2
-
- LTO_ENABLE := no
-
- AUDIO_SUPPORTED = yes
- AUDIO_ENABLE = yes
- AUDIO_DRIVER = pwm_hardware
-
- OVERLOAD_FEATURES = yes
-endif
-
-ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/3x5/v2/stemcell)
- OVERLOAD_FEATURES = yes
-endif
-ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/3x5/v2/splinky)
- OVERLOAD_FEATURES = yes
-endif
-
-
-ifeq ($(strip $(OVERLOAD_FEATURES)), yes)
- BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
- KEYBOARD_SHARED_EP = yes
- MOUSE_SHARED_EP = yes
-
- MOUSEKEY_ENABLE = yes
- NKRO_ENABLE = yes
- CONSOLE_ENABLE = yes
- RGB_MATRIX_ENABLE = yes
-
- AUTOCORRECT_ENABLE = yes
-
- CUSTOM_UNICODE_ENABLE = yes
- CUSTOM_POINTING_DEVICE = yes
- CUSTOM_SPLIT_TRANSPORT_SYNC = yes
-endif
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/config.h b/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 935444af1b..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define LAYOUT_miryoku( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT_charybdis_3x5( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- K32, K33, K34, K35, K36 \
-)
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/rules.mk b/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/rules.mk
deleted file mode 100644
index ef40279cbc..0000000000
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/manna-harbour_miryoku/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Copyright 2021 Manna Harbour
-# https://github.com/manna-harbour/miryoku
-
-MIRYOKU_KLUDGE_THUMBCOMBOS=yes
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c
index 4a91548090..5299444ad3 100644
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c
+++ b/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c
@@ -255,15 +255,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
// rgb_matrix.c.
void rgb_matrix_update_pwm_buffers(void);
#endif
-
-void shutdown_user(void) {
-#ifdef RGBLIGHT_ENABLE
- rgblight_enable_noeeprom();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_setrgb(RGB_RED);
-#endif // RGBLIGHT_ENABLE
-#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_set_color_all(RGB_RED);
- rgb_matrix_update_pwm_buffers();
-#endif // RGB_MATRIX_ENABLE
-}
diff --git a/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/rules.mk b/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/rules.mk
index 80098fbbf6..87a2d912b8 100644
--- a/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/rules.mk
+++ b/keyboards/bastardkb/charybdis/3x5/v2/splinky_2/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/rules.mk b/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/rules.mk
index 80098fbbf6..87a2d912b8 100644
--- a/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/rules.mk
+++ b/keyboards/bastardkb/charybdis/3x5/v2/splinky_3/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/charybdis/3x6/blackpill/info.json b/keyboards/bastardkb/charybdis/3x6/blackpill/info.json
index 5ac7a1cdca..bda53275f8 100644
--- a/keyboards/bastardkb/charybdis/3x6/blackpill/info.json
+++ b/keyboards/bastardkb/charybdis/3x6/blackpill/info.json
@@ -3,6 +3,9 @@
"usb": {
"device_version": "1.0.0"
},
+ "eeprom": {
+ "driver": "spi"
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/bastardkb/charybdis/3x6/blackpill/rules.mk b/keyboards/bastardkb/charybdis/3x6/blackpill/rules.mk
index 9cc216bb71..4bd570ddd8 100644
--- a/keyboards/bastardkb/charybdis/3x6/blackpill/rules.mk
+++ b/keyboards/bastardkb/charybdis/3x6/blackpill/rules.mk
@@ -23,5 +23,4 @@ POINTING_DEVICE_DRIVER = pmw3360
MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
KEYBOARD_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c
index fd56cce25d..d78ce8b7ff 100644
--- a/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c
+++ b/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c
@@ -134,15 +134,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
// Forward-declare this helper function since it is defined in rgb_matrix.c.
void rgb_matrix_update_pwm_buffers(void);
#endif
-
-void shutdown_user(void) {
-#ifdef RGBLIGHT_ENABLE
- rgblight_enable_noeeprom();
- rgblight_mode_noeeprom(1);
- rgblight_setrgb(RGB_RED);
-#endif // RGBLIGHT_ENABLE
-#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_set_color_all(RGB_RED);
- rgb_matrix_update_pwm_buffers();
-#endif // RGB_MATRIX_ENABLE
-}
diff --git a/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/rules.mk b/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/rules.mk
index 80098fbbf6..87a2d912b8 100644
--- a/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/rules.mk
+++ b/keyboards/bastardkb/charybdis/3x6/v2/splinky_2/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/rules.mk b/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/rules.mk
index 80098fbbf6..87a2d912b8 100644
--- a/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/rules.mk
+++ b/keyboards/bastardkb/charybdis/3x6/v2/splinky_3/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/info.json b/keyboards/bastardkb/charybdis/4x6/blackpill/info.json
index b9fb103496..b4040e84a5 100644
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/info.json
+++ b/keyboards/bastardkb/charybdis/4x6/blackpill/info.json
@@ -3,6 +3,9 @@
"usb": {
"device_version": "1.0.0"
},
+ "eeprom": {
+ "driver": "spi"
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk b/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk
index 1cfe4724b4..f8de9a3fb1 100644
--- a/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk
+++ b/keyboards/bastardkb/charybdis/4x6/blackpill/rules.mk
@@ -23,5 +23,4 @@ POINTING_DEVICE_DRIVER = pmw3360
MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
KEYBOARD_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h
deleted file mode 100644
index 7fa9826125..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#if defined(KEYBOARD_bastardkb_charybdis_4x6_blackpill)
-# undef MATRIX_COL_PINS
-# define MATRIX_COL_PINS \
- { B0, B1, B12, B3, B4, B5 }
-
-# define USB_VBUS_PIN B10
-# define DEBUG_LED_PIN C13
-
-# define AUDIO_PIN B7
-# define AUDIO_PWM_DRIVER PWMD4
-# define AUDIO_PWM_CHANNEL 2
-# define AUDIO_PWM_PAL_MODE 2
-# define AUDIO_INIT_DELAY
-# define AUDIO_ENABLE_TONE_MULTIPLEXING
-# define AUDIO_TONE_MULTIPLEXING_RATE_DEFAULT 10
-
-# define SERIAL_USART_SPEED (1 * 1024 * 1024)
-
-# undef POINTING_DEVICE_CS_PIN
-# define POINTING_DEVICE_CS_PIN A15 // b14
-# define PMW33XX_LIFTOFF_DISTANCE 0b1111
-
-# define RGB_MATRIX_LED_FLUSH_LIMIT 33
-# define RGB_MATRIX_LED_PROCESS_LIMIT 29
-#endif
-
-#undef ROTATIONAL_TRANSFORM_ANGLE
-#define ROTATIONAL_TRANSFORM_ANGLE 25
-#define POINTING_DEVICE_ROTATION_270
-
-/* RGB Matrix. */
-#undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
-#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150
-
-#define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200
-#define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 400
-#define CHARYBDIS_MINIMUM_SNIPING_DPI 200
-#define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 100
-
-#define CHARYBDIS_CONFIG_SYNC
-
-#define BOOTMAGIC_LITE_ROW 0
-#define BOOTMAGIC_LITE_COLUMN 0
-#define BOOTMAGIC_LITE_ROW_RIGHT 5
-#define BOOTMAGIC_LITE_COLUMN_RIGHT 0
-#define BOOTMAGIC_LITE_EEPROM_ROW 1
-#define BOOTMAGIC_LITE_EEPROM_COLUMN 0
-#define BOOTMAGIC_LITE_EEPROM_ROW_RIGHT 1
-#define BOOTMAGIC_LITE_EEPROM_COLUMN_RIGHT 0
-
-#define DEBOUNCE 15
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c
deleted file mode 100644
index 31d1e92a7f..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,154 +0,0 @@
-/**
- * Copyright 2021 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "drashna.h"
-
-// clang-format off
-#define LAYOUT_charybdis_4x6_wrapper(...) LAYOUT_charybdis_4x6(__VA_ARGS__)
-#define LAYOUT_charybdis_4x6_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_charybdis_4x6_wrapper( \
- KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, UC_CLUE, \
- SH_TT, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, SH_TT, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- OS_LSFT,CTL_T(K21),ALT_T(K22),GUI_T(K23),K24,K25, K26,K27,RGUI_T(K28),RALT_T(K29),RCTL_T(K2A), OS_RSFT, \
- SFT_T(KC_GRV), OS_LALT, OS_LGUI, TT(_MOUSE), KC_ENT, \
- KC_SPC, BK_LWER, DL_RAIS \
- )
-
-#define LAYOUT_base_wrapper(...) LAYOUT_charybdis_4x6_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_GAMEPAD] = LAYOUT_charybdis_4x6(
- KC_ESC, KC_NO, KC_1, KC_2, KC_3, KC_4, _______, _______, _______, _______, _______, _______,
- KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_H, _______, _______, _______, _______, _______, _______,
- KC_V, _______, _______, _______, TG_GAME,
- KC_SPC, KC_H, _______
- ),
- [_DIABLO] = LAYOUT_charybdis_4x6(
- KC_ESC, KC_V, KC_D, KC_LALT, KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO,
- KC_TAB, KC_S, KC_I, KC_F, KC_M, KC_T, _______, _______, _______, _______, _______, _______,
- KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, _______, _______, _______, _______, _______, _______,
- KC_G, _______, _______, TO(_DIABLOII), TG_DBLO,
- KC_LSFT, KC_LCTL, _______
- ),
- [_DIABLOII] = LAYOUT_charybdis_4x6(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_GRV, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_A, KC_T, KC_Q, KC_I, KC_M, _______, _______, _______, _______, _______, _______,
- KC_S, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______,
- KC_DIABLO_CLEAR, _______, _______, _______, TG(_DIABLOII),
- SFT_T(KC_SPACE), ALT_T(KC_Q), _______
- ),
- [_MOUSE] = LAYOUT_charybdis_4x6(
- _______, _______, _______, _______, _______, _______, _______, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, PD_JIGGLER,
- _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______, _______, DRGSCRL,
- _______, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, SNIPING,
- _______, _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______
- ),
-
- [_LOWER] = LAYOUT_charybdis_4x6_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
- _______, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______,
- _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_charybdis_4x6_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
- KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_charybdis_4x6_wrapper(
- QK_MAKE, KC_WIDE,KC_AUSSIE,KC_SCRIPT,KC_ZALGO,KC_SUPER, KC_NOMODE,KC_COMIC,KC_REGIONAL,TG_GAME,TG_DBLO, QK_BOOT,
- VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EE_CLR,
- KEYLOCK, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS,
- UC_NEXT, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY,
- QK_RBT, AUTO_CTN, _______, _______, KC_NUKE,
- _______, _______, _______
- )
-};
-// clang-format on
-
-void keyboard_post_init_keymap(void) {
-#ifdef RGB_MATRIX_ENABLE
- g_led_config.flags[53] = g_led_config.flags[54] = g_led_config.flags[55] = g_led_config.flags[0] = g_led_config.flags[1] = g_led_config.flags[2] = g_led_config.flags[3] = g_led_config.flags[29] = g_led_config.flags[30] = g_led_config.flags[31] = g_led_config.flags[32] = LED_FLAG_MODIFIER;
-#endif
-}
-
-#if defined(KEYBOARD_bastardkb_charybdis_4x6_blackpill)
-void keyboard_pre_init_keymap(void) {
- setPinInputHigh(A0);
-}
-#endif
-
-#ifdef SWAP_HANDS_ENABLE
-const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
- /* Left hand, matrix positions */
- {{0, 5}, {1, 5}, {2, 5}, {3, 5}, {4, 5}, {5, 5}},
- {{0, 6}, {1, 6}, {2, 6}, {3, 6}, {4, 6}, {5, 6}},
- {{0, 7}, {1, 7}, {2, 7}, {3, 7}, {4, 7}, {5, 7}},
- {{0, 8}, {1, 8}, {2, 8}, {3, 8}, {4, 8}, {5, 8}},
- {{2, 9}, {4, 9}, {5, 9}, {1, 9}, {0, 9}, {3, 9}},
- /* Right hand, matrix positions */
- {{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}},
- {{0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}},
- {{0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}, {5, 2}},
- {{0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}, {5, 3}},
- {{0, 4}, {3, 4}, {2, 4}, {5, 4}, {4, 4}, {2, 4}}
-};
-
-# ifdef ENCODER_MAP_ENABLE
-const uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS] = {1, 0};
-# endif
-#endif
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h
deleted file mode 100644
index 0541043c53..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2020 Nick Brassel (tzarc)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#if defined(KEYBOARD_bastardkb_charybdis_4x6_blackpill)
-# undef STM32_PWM_USE_ADVANCED
-# define STM32_PWM_USE_ADVANCED TRUE
-
-# undef STM32_PWM_USE_TIM4
-# define STM32_PWM_USE_TIM4 TRUE
-#endif
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk
deleted file mode 100644
index ef6b7cd24b..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,52 +0,0 @@
-CUSTOM_UNICODE_ENABLE = no
-CUSTOM_POINTING_DEVICE = no
-CUSTOM_SPLIT_TRANSPORT_SYNC = no
-PER_KEY_TAPPING = yes
-
-ifeq ($(strip $(KEYBOARD)), bastardkb/charybdis/4x6/blackpill)
- # MCU name
- # Bootloader selection
- BOOTLOADER := tinyuf2
-
- AUDIO_ENABLE = yes # Audio output
- AUDIO_SUPPORTED = yes # is set to no in kb, needs to be forcibly enabled
- AUDIO_DRIVER = pwm_hardware
-
- BACKLIGHT_DRIVER = pwm
-
- OVERLOAD_FEATURES = yes
-endif
-
-ifeq ($(strip $(MCU)), atmega32u4)
- LTO_ENABLE = yes
- BOOTLOADER = qmk-hid
- BOOTLOADER_SIZE = 512
- EXTRAKEY_ENABLE = no
-else
- OVERLOAD_FEATURES = yes
-endif
-
-ifeq ($(strip $(OVERLOAD_FEATURES)), yes)
- BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
- MOUSEKEY_ENABLE = yes # Mouse keys
- EXTRAKEY_ENABLE = yes # Audio control and System control
- CONSOLE_ENABLE = yes # Console for debug
- COMMAND_ENABLE = no # Commands for debug and configuration
- NKRO_ENABLE = yes # Enable N-Key Rollover
- RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-
- MOUSE_SHARED_EP = no
-
- AUTOCORRECT_ENABLE = yes
- CAPS_WORD_ENABLE = yes
- SWAP_HANDS_ENABLE = yes
- TAP_DANCE_ENABLE = yes
- WPM_ENABLE = yes
- LTO_ENABLE = no
- # OPT = 3
-
- CUSTOM_UNICODE_ENABLE = yes
- CUSTOM_POINTING_DEVICE = yes
- CUSTOM_SPLIT_TRANSPORT_SYNC = yes
-
-endif
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/config.h b/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index aa8dc85054..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT_charybdis_4x6( \
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
- K32, K33, K34, K35, K36, \
- XXX, K32, K37 \
-)
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/rules.mk b/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/rules.mk
deleted file mode 100644
index ef40279cbc..0000000000
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/manna-harbour_miryoku/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Copyright 2021 Manna Harbour
-# https://github.com/manna-harbour/miryoku
-
-MIRYOKU_KLUDGE_THUMBCOMBOS=yes
diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c
index fb795829fd..a0657b02ec 100644
--- a/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c
+++ b/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c
@@ -157,15 +157,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
// Forward-declare this helper function since it is defined in rgb_matrix.c.
void rgb_matrix_update_pwm_buffers(void);
#endif
-
-void shutdown_user(void) {
-#ifdef RGBLIGHT_ENABLE
- rgblight_enable_noeeprom();
- rgblight_mode_noeeprom(1);
- rgblight_setrgb(RGB_RED);
-#endif // RGBLIGHT_ENABLE
-#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_set_color_all(RGB_RED);
- rgb_matrix_update_pwm_buffers();
-#endif // RGB_MATRIX_ENABLE
-}
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk
index 80098fbbf6..87a2d912b8 100644
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk
+++ b/keyboards/bastardkb/charybdis/4x6/v2/splinky_2/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk
index 80098fbbf6..87a2d912b8 100644
--- a/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk
+++ b/keyboards/bastardkb/charybdis/4x6/v2/splinky_3/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/charybdis/charybdis.c b/keyboards/bastardkb/charybdis/charybdis.c
index c321af7aa9..c9f0e63172 100644
--- a/keyboards/bastardkb/charybdis/charybdis.c
+++ b/keyboards/bastardkb/charybdis/charybdis.c
@@ -382,3 +382,20 @@ void matrix_scan_kb(void) {
matrix_scan_user();
}
#endif // KEYBOARD_bastardkb_charybdis_3x5_blackpill || KEYBOARD_bastardkb_charybdis_4x6_blackpill
+
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
+#ifdef RGBLIGHT_ENABLE
+ rgblight_enable_noeeprom();
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+ rgblight_setrgb(RGB_RED);
+#endif // RGBLIGHT_ENABLE
+#ifdef RGB_MATRIX_ENABLE
+ void rgb_matrix_update_pwm_buffers(void);
+ rgb_matrix_set_color_all(RGB_RED);
+ rgb_matrix_update_pwm_buffers();
+#endif // RGB_MATRIX_ENABLE
+ return true;
+}
diff --git a/keyboards/bastardkb/dilemma/3x5_2/assembled/rules.mk b/keyboards/bastardkb/dilemma/3x5_2/assembled/rules.mk
index 5db74a9d84..b4722fc8e6 100644
--- a/keyboards/bastardkb/dilemma/3x5_2/assembled/rules.mk
+++ b/keyboards/bastardkb/dilemma/3x5_2/assembled/rules.mk
@@ -22,6 +22,3 @@ POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = cirque_pinnacle_spi # Assembled version uses SPI.
SPLIT_KEYBOARD = yes
-
-# RP2040-specific options
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/keymap.c b/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/keymap.c
index e8c0441d7b..5f22184928 100644
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/keymap.c
+++ b/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/keymap.c
@@ -210,15 +210,3 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
// Forward-declare this helper function since it is defined in rgb_matrix.c.
void rgb_matrix_update_pwm_buffers(void);
#endif
-
-void shutdown_user(void) {
-#ifdef RGBLIGHT_ENABLE
- rgblight_enable_noeeprom();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_setrgb(RGB_RED);
-#endif // RGBLIGHT_ENABLE
-#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_set_color_all(RGB_RED);
- rgb_matrix_update_pwm_buffers();
-#endif // RGB_MATRIX_ENABLE
-}
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/config.h b/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/config.h
deleted file mode 100644
index 7c46c83310..0000000000
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/config.h
+++ /dev/null
@@ -1,10 +0,0 @@
-// Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#define CIRQUE_PINNACLE_TAP_ENABLE
-#define POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE
-#define POINTING_DEVICE_GESTURES_SCROLL_ENABLE
-
-#define OLED_DISPLAY_128X128
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/halconf.h b/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/halconf.h
deleted file mode 100644
index 906bd65197..0000000000
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/halconf.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define HAL_USE_SPI TRUE
-#define HAL_USE_I2C TRUE
-
-#include_next <halconf.h>
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/keymap.c b/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/keymap.c
deleted file mode 100644
index bf75e97841..0000000000
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,176 +0,0 @@
-/**
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-// clang-format off
-#define LAYOUT_split_3x5_2_wrapper(...) LAYOUT_split_3x5_2(__VA_ARGS__)
-#define LAYOUT_split_3x5_2_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_split_3x5_2 ( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- ALT_T(K11), K12, K13, K14, GUI_T(K15), LGUI_T(K16), K17, K18, K19, LALT_T(K1A), \
- CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), \
- KC_SPC, BK_LWER, DL_RAIS, RSFT_T(KC_ENT) \
- )
-
-#define LAYOUT_split_3x5_2_base_wrapper(...) LAYOUT_split_3x5_2_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_DEFAULT_LAYER_1] = LAYOUT_split_3x5_2_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_split_3x5_2_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_split_3x5_2_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_split_3x5_2_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_MOUSE] = LAYOUT_split_3x5_2(
- _______, _______, _______, _______, _______, KC_WH_U, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD,
- _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6,
- _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______,
- SNIPING, _______, _______, _______
- ),
- [_LOWER] = LAYOUT_split_3x5_2_wrapper(
- _________________LOWER_L1__________________, _________________LOWER_R1__________________,
- _________________LOWER_L2__________________, _________________LOWER_R2__________________,
- _________________LOWER_L3__________________, _________________LOWER_R3__________________,
- _______, _______, _______, AUTO_CTN
- ),
- [_RAISE] = LAYOUT_split_3x5_2_wrapper(
- _________________RAISE_L1__________________, _________________RAISE_R1__________________,
- _________________RAISE_L2__________________, _________________RAISE_R2__________________,
- _________________RAISE_L3__________________, _________________RAISE_R3__________________,
- _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT_split_3x5_2_wrapper(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- KC_NUKE, _______, _______, QK_BOOT
- ),
-};
-
-#if defined(OLED_ENABLE) && defined(OLED_DISPLAY_128X128)
-# ifdef UNICODE_COMMON_ENABLE
-# include "process_unicode_common.h"
-# include "keyrecords/unicode.h"
-# endif
-
-extern const char PROGMEM display_border[3];
-
-extern bool is_oled_enabled;
-
-
-bool oled_task_keymap(void) {
- static const char PROGMEM header_image[] = {
- 0, 192, 32, 16, 8, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 7, 15, 31, 63, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 63, 31, 15, 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, 8, 16, 32, 192, 0,
- // 0,255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 7, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 7, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255, 0
- };
- oled_write_raw_P(header_image, sizeof(header_image));
- oled_set_cursor(7, 0);
- oled_write_P(PSTR("Dilemma"), true);
-
- render_default_layer_state(1, 1);
- render_layer_state(1, 2);
- render_kitty(0, 5);
- render_wpm(1, 7, 5);
-# if defined(POINTING_DEVICE_ENABLE)
- render_pointing_dpi_status(dilemma_get_pointer_sniping_enabled() ? dilemma_get_pointer_sniping_dpi() : dilemma_get_pointer_default_dpi(), 1, 7, 6);
- render_mouse_mode(17, 6);
-# elif defined(WPM_ENABLE) && defined(DEBUG_MATRIX_SCAN_RATE)
- render_matrix_scan_rate(1, 7, 6);
-# endif
- render_bootmagic_status(7, 7);
- render_user_status(1, 9);
-
- render_mod_status(get_mods() | get_oneshot_mods(), 1, 10);
- render_keylock_status(host_keyboard_led_state(), 1, 11);
- render_unicode_mode(1, 12);
-
-// render_rgb_hsv(1, 13);
- oled_set_cursor(1, 13);
- oled_write_P(PSTR("OS: "), false);
- extern os_variant_t os_type;
- switch (os_type) {
- case OS_LINUX:
- oled_write_ln_P(PSTR("Linux"), false);
- break;
- case OS_WINDOWS:
- oled_write_ln_P(PSTR("Windows"), false);
- break;
- case OS_MACOS:
- oled_write_ln_P(PSTR("MacOS"), false);
- break;
- case OS_IOS:
- oled_write_ln_P(PSTR("iOS"), false);
- break;
- default:
- break;
- }
-
- render_keylogger_status(1, 14);
-
- for (uint8_t i = 1; i < 15; i++) {
- oled_set_cursor(0, i);
- oled_write_raw_P(display_border, sizeof(display_border));
- oled_set_cursor(21, i);
- oled_write_raw_P(display_border, sizeof(display_border));
- }
-
- static const char PROGMEM footer_image[] = {0, 3, 4, 8, 16, 32, 64, 128, 128, 128, 128, 128, 128, 128, 192, 224, 240, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 240, 224, 192, 128, 128, 128, 128, 128, 128, 128, 64, 32, 16, 8, 4, 3, 0};
- oled_set_cursor(0, 15);
- oled_write_raw_P(footer_image, sizeof(footer_image));
-
- return false;
-}
-#endif
-
-
-#ifdef SWAP_HANDS_ENABLE
-const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
- /* Left hand, matrix positions */
- {{0, 4}, {3, 4}, {2, 4}, {5, 4}, {4, 4}},
- {{0, 5}, {1, 5}, {2, 5}, {3, 5}, {4, 5}},
- {{0, 6}, {1, 6}, {2, 6}, {3, 6}, {4, 6}},
- {{0, 7}, {1, 7}, {2, 7}, {3, 7}, {4, 7}},
- /* Right hand, matrix positions */
- {{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}},
- {{0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}},
- {{0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}},
- {{0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}},
- };
-#endif
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/mcuconf.h b/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/mcuconf.h
deleted file mode 100644
index f194dd225c..0000000000
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/mcuconf.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#undef RP_SPI_USE_SPI1
-#define RP_SPI_USE_SPI1 TRUE
-
-#undef RP_I2C_USE_I2C1
-#define RP_I2C_USE_I2C1 TRUE
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/rules.mk b/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/rules.mk
deleted file mode 100644
index a1be9cb8fd..0000000000
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-SWAP_HANDS_ENABLE = no
-AUTOCORRECT_ENABLE = yes
-CAPS_WORD_ENABLE = yes
-CONSOLE_ENABLE = yes
-KEYLOGGER_ENABLE = no
-WPM_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/bastardkb/dilemma/3x5_2/splinky/rules.mk b/keyboards/bastardkb/dilemma/3x5_2/splinky/rules.mk
index 1e33cc1086..227d42fa24 100644
--- a/keyboards/bastardkb/dilemma/3x5_2/splinky/rules.mk
+++ b/keyboards/bastardkb/dilemma/3x5_2/splinky/rules.mk
@@ -22,6 +22,3 @@ POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c # DIY version uses I2C.
SPLIT_KEYBOARD = yes
-
-# RP2040-specific options
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c
index 2c262521bc..b55d99b56b 100644
--- a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c
+++ b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c
@@ -210,7 +210,7 @@ layer_state_t layer_state_set_user(layer_state_t state) {
void rgb_matrix_update_pwm_buffers(void);
#endif
-void shutdown_user(void) {
+bool shutdown_user(bool jump_to_bootloader) {
#ifdef RGBLIGHT_ENABLE
rgblight_enable_noeeprom();
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
@@ -220,4 +220,5 @@ void shutdown_user(void) {
rgb_matrix_set_color_all(RGB_RED);
rgb_matrix_update_pwm_buffers();
#endif // RGB_MATRIX_ENABLE
+ return true;
}
diff --git a/keyboards/bastardkb/dilemma/3x5_3/rules.mk b/keyboards/bastardkb/dilemma/3x5_3/rules.mk
index 2b52cffbf7..3cdb41160c 100644
--- a/keyboards/bastardkb/dilemma/3x5_3/rules.mk
+++ b/keyboards/bastardkb/dilemma/3x5_3/rules.mk
@@ -22,6 +22,3 @@ POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = cirque_pinnacle_spi
SPLIT_KEYBOARD = yes
-
-# RP2040-specific options
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
diff --git a/keyboards/bastardkb/dilemma/4x6_4/keymaps/via/keymap.c b/keyboards/bastardkb/dilemma/4x6_4/keymaps/via/keymap.c
index 68602b2722..6ac228d723 100644
--- a/keyboards/bastardkb/dilemma/4x6_4/keymaps/via/keymap.c
+++ b/keyboards/bastardkb/dilemma/4x6_4/keymaps/via/keymap.c
@@ -123,10 +123,3 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
};
// clang-format on
#endif // ENCODER_MAP_ENABLE
-
-void shutdown_user(void) {
-#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_sethsv_noeeprom(HSV_RED);
- rgb_matrix_update_pwm_buffers();
-#endif // RGB_MATRIX_ENABLE
-}
diff --git a/keyboards/bastardkb/dilemma/dilemma.c b/keyboards/bastardkb/dilemma/dilemma.c
index 5452f9e7f6..7c87fdcadd 100644
--- a/keyboards/bastardkb/dilemma/dilemma.c
+++ b/keyboards/bastardkb/dilemma/dilemma.c
@@ -343,3 +343,20 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
+
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
+#ifdef RGBLIGHT_ENABLE
+ rgblight_enable_noeeprom();
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+ rgblight_setrgb(RGB_RED);
+#endif // RGBLIGHT_ENABLE
+#ifdef RGB_MATRIX_ENABLE
+ void rgb_matrix_update_pwm_buffers(void);
+ rgb_matrix_set_color_all(RGB_RED);
+ rgb_matrix_update_pwm_buffers();
+#endif // RGB_MATRIX_ENABLE
+ return true;
+}
diff --git a/keyboards/bastardkb/scylla/blackpill/info.json b/keyboards/bastardkb/scylla/blackpill/info.json
index 24fb8bc701..8d7cb4c823 100644
--- a/keyboards/bastardkb/scylla/blackpill/info.json
+++ b/keyboards/bastardkb/scylla/blackpill/info.json
@@ -3,6 +3,9 @@
"usb": {
"device_version": "1.0.0"
},
+ "eeprom": {
+ "driver": "spi"
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/bastardkb/scylla/blackpill/rules.mk b/keyboards/bastardkb/scylla/blackpill/rules.mk
index 8c0e9b5891..b5612ce38a 100644
--- a/keyboards/bastardkb/scylla/blackpill/rules.mk
+++ b/keyboards/bastardkb/scylla/blackpill/rules.mk
@@ -21,5 +21,4 @@ SPLIT_KEYBOARD = yes
MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
KEYBOARD_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/config.h b/keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 5a3153ae37..0000000000
--- a/keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT_split_4x6_5( \
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
- K32, K33, K34, K35, K36, K37, \
- XXX, XXX, XXX, XXX \
-)
diff --git a/keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/bastardkb/scylla/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/bastardkb/scylla/v2/splinky_2/rules.mk b/keyboards/bastardkb/scylla/v2/splinky_2/rules.mk
index 274e95c039..53f4c0baa8 100644
--- a/keyboards/bastardkb/scylla/v2/splinky_2/rules.mk
+++ b/keyboards/bastardkb/scylla/v2/splinky_2/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/scylla/v2/splinky_3/rules.mk b/keyboards/bastardkb/scylla/v2/splinky_3/rules.mk
index 274e95c039..53f4c0baa8 100644
--- a/keyboards/bastardkb/scylla/v2/splinky_3/rules.mk
+++ b/keyboards/bastardkb/scylla/v2/splinky_3/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/skeletyl/blackpill/info.json b/keyboards/bastardkb/skeletyl/blackpill/info.json
index 1d25639281..c0f0d6a3b1 100644
--- a/keyboards/bastardkb/skeletyl/blackpill/info.json
+++ b/keyboards/bastardkb/skeletyl/blackpill/info.json
@@ -3,6 +3,9 @@
"usb": {
"device_version": "1.0.0"
},
+ "eeprom": {
+ "driver": "spi"
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/bastardkb/skeletyl/blackpill/rules.mk b/keyboards/bastardkb/skeletyl/blackpill/rules.mk
index 8c0e9b5891..b5612ce38a 100644
--- a/keyboards/bastardkb/skeletyl/blackpill/rules.mk
+++ b/keyboards/bastardkb/skeletyl/blackpill/rules.mk
@@ -21,5 +21,4 @@ SPLIT_KEYBOARD = yes
MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
KEYBOARD_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/skeletyl/v2/splinky_2/rules.mk b/keyboards/bastardkb/skeletyl/v2/splinky_2/rules.mk
index 274e95c039..53f4c0baa8 100644
--- a/keyboards/bastardkb/skeletyl/v2/splinky_2/rules.mk
+++ b/keyboards/bastardkb/skeletyl/v2/splinky_2/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/skeletyl/v2/splinky_3/rules.mk b/keyboards/bastardkb/skeletyl/v2/splinky_3/rules.mk
index 274e95c039..53f4c0baa8 100644
--- a/keyboards/bastardkb/skeletyl/v2/splinky_3/rules.mk
+++ b/keyboards/bastardkb/skeletyl/v2/splinky_3/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/tbkmini/blackpill/info.json b/keyboards/bastardkb/tbkmini/blackpill/info.json
index dcdce8f63b..c410460857 100644
--- a/keyboards/bastardkb/tbkmini/blackpill/info.json
+++ b/keyboards/bastardkb/tbkmini/blackpill/info.json
@@ -3,6 +3,9 @@
"usb": {
"device_version": "1.0.0"
},
+ "eeprom": {
+ "driver": "spi"
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/bastardkb/tbkmini/blackpill/rules.mk b/keyboards/bastardkb/tbkmini/blackpill/rules.mk
index 8c0e9b5891..b5612ce38a 100644
--- a/keyboards/bastardkb/tbkmini/blackpill/rules.mk
+++ b/keyboards/bastardkb/tbkmini/blackpill/rules.mk
@@ -21,5 +21,4 @@ SPLIT_KEYBOARD = yes
MOUSE_SHARED_EP = no # Unify multiple HID interfaces into a single Endpoint
KEYBOARD_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
diff --git a/keyboards/bastardkb/tbkmini/v2/splinky_2/rules.mk b/keyboards/bastardkb/tbkmini/v2/splinky_2/rules.mk
index 274e95c039..53f4c0baa8 100644
--- a/keyboards/bastardkb/tbkmini/v2/splinky_2/rules.mk
+++ b/keyboards/bastardkb/tbkmini/v2/splinky_2/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bastardkb/tbkmini/v2/splinky_3/rules.mk b/keyboards/bastardkb/tbkmini/v2/splinky_3/rules.mk
index 274e95c039..53f4c0baa8 100644
--- a/keyboards/bastardkb/tbkmini/v2/splinky_3/rules.mk
+++ b/keyboards/bastardkb/tbkmini/v2/splinky_3/rules.mk
@@ -1,7 +1,3 @@
-# RP2040-specific options
-ALLOW_WARNINGS = yes
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS.
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/bemeier/bmek/bmek.c b/keyboards/bemeier/bmek/bmek.c
index eaae446d63..dd0372aaee 100755
--- a/keyboards/bemeier/bmek/bmek.c
+++ b/keyboards/bemeier/bmek/bmek.c
@@ -15,9 +15,12 @@
*/
#include "quantum.h"
-__attribute__((weak))
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
#ifdef RGBLIGHT_ENABLE
rgblight_setrgb(255, 0, 0);
#endif
+ return true;
}
diff --git a/keyboards/bemeier/bmek/config.h b/keyboards/bemeier/bmek/config.h
index 4553454096..1deca961a0 100755
--- a/keyboards/bemeier/bmek/config.h
+++ b/keyboards/bemeier/bmek/config.h
@@ -15,6 +15,4 @@
*/
#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 20
diff --git a/keyboards/bemeier/bmek/info.json b/keyboards/bemeier/bmek/info.json
index 0959f9f3a6..31d2b5f9bd 100755
--- a/keyboards/bemeier/bmek/info.json
+++ b/keyboards/bemeier/bmek/info.json
@@ -7,6 +7,9 @@
"vid": "0x626D",
"pid": "0x656B"
},
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/bfake/keymaps/mechmerlin/keymap.c b/keyboards/bfake/keymaps/mechmerlin/keymap.c
deleted file mode 100644
index fec728d87e..0000000000
--- a/keyboards/bfake/keymaps/mechmerlin/keymap.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_all(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TG(2),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(1), KC_RALT, KC_RGUI, KC_RCTL
- ),
- [1] = LAYOUT_all(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_DEL,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [2] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
- [3] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-};
-
diff --git a/keyboards/bfake/keymaps/mechmerlin/readme.md b/keyboards/bfake/keymaps/mechmerlin/readme.md
deleted file mode 100644
index b85b6537c1..0000000000
--- a/keyboards/bfake/keymaps/mechmerlin/readme.md
+++ /dev/null
@@ -1,18 +0,0 @@
-MechMerlin's FaceW Sprit Edition Layout
-======================
-
-This is the preferred 60% layout used by u/merlin36, host of the [MechMerlin YouTube channel](www.youtube.com/mechmerlin).
-
-## Keyboard Notes
-- The FaceW Sprit Edition can be purchased on [mechanicalkeyboards.com](www.mechanicalkeyboards.com)
-- Uses ps2avru instead of ps2avrgb
-- To put in reset mode hold `q` while inserting the USB cable
-- Use flashing instructions from ps2avrgb QMK port
-
-## Keymap Notes
-- Does not support any form of inswitch lighting as Merlin hates them.
-- Arrow toggle switch to the right of right shift
-- Reset is FN + Left Shift + R
-
-### Build
-To build this keymap, simply run `make bfake:mechmerlin` from the qmk_firmware directory.
diff --git a/keyboards/binepad/bn006/config.h b/keyboards/binepad/bn006/config.h
index 41c3822655..0569ccff03 100755
--- a/keyboards/binepad/bn006/config.h
+++ b/keyboards/binepad/bn006/config.h
@@ -4,14 +4,6 @@
#pragma once
/*
- * Wear Leveling EEPROM Emulation
- */
-
-#define WEAR_LEVELING_LOGICAL_SIZE 2048 // Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM.
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) // Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size.
-
-
-/*
* RGB Matrix
*/
diff --git a/keyboards/binepad/bn006/info.json b/keyboards/binepad/bn006/info.json
index 756b82e330..81e68d2e0c 100755
--- a/keyboards/binepad/bn006/info.json
+++ b/keyboards/binepad/bn006/info.json
@@ -24,6 +24,11 @@
"pid": "0x426E",
"device_version": "1.0.0"
},
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"ws2812": {
"pin": "B15"
},
diff --git a/keyboards/binepad/bn006/rules.mk b/keyboards/binepad/bn006/rules.mk
index 58561c984b..7ff128fa69 100755
--- a/keyboards/binepad/bn006/rules.mk
+++ b/keyboards/binepad/bn006/rules.mk
@@ -1,5 +1 @@
-# Copyright 2022 Binepad (@binpad)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-EPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/binepad/bn009/r2/config.h b/keyboards/binepad/bn009/r2/config.h
deleted file mode 100644
index 45b63ec105..0000000000
--- a/keyboards/binepad/bn009/r2/config.h
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2023 Binepad (@binepad)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-
-/*
- * Wear Leveling EEPROM Emulation
- */
-
-#define WEAR_LEVELING_LOGICAL_SIZE 2048 // Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM.
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) // Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size.
diff --git a/keyboards/binepad/bn009/r2/info.json b/keyboards/binepad/bn009/r2/info.json
index c011fe0e32..870608b5c8 100644
--- a/keyboards/binepad/bn009/r2/info.json
+++ b/keyboards/binepad/bn009/r2/info.json
@@ -6,6 +6,11 @@
"cols": ["A1", "A2", "A6"],
"rows": ["B6", "B7", "B2"]
},
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"processor": "STM32F103",
"usb": {
"device_version": "2.0.0"
diff --git a/keyboards/binepad/bnr1/v2/config.h b/keyboards/binepad/bnr1/v2/config.h
deleted file mode 100644
index c408f95d38..0000000000
--- a/keyboards/binepad/bnr1/v2/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-// Copyright 2022 BINEPAD (@binepad)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#define WEAR_LEVELING_LOGICAL_SIZE 1024
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
diff --git a/keyboards/binepad/bnr1/v2/rules.mk b/keyboards/binepad/bnr1/v2/rules.mk
index 77b90d035d..6e7633bfe0 100644
--- a/keyboards/binepad/bnr1/v2/rules.mk
+++ b/keyboards/binepad/bnr1/v2/rules.mk
@@ -1,5 +1 @@
-# This file only contains EFL/WL settings and enables F103 low-power mode
-
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank
diff --git a/keyboards/bioi/ble.c b/keyboards/bioi/ble.c
deleted file mode 100644
index 12c180966a..0000000000
--- a/keyboards/bioi/ble.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
-Copyright 2019 Basic I/O Instruments(Scott Wei) <scot.wei@gmail.com>
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "bluetooth.h"
-#include "ble.h"
-#include "usart.h"
-#include "progmem.h"
-#include "wait.h"
-#include "debug.h"
-#include "usb_descriptor.h"
-#include "report.h"
-
-keyboard_config_t ble_config;
-
-static void bluefruit_serial_send(uint8_t);
-
-void send_str(const char *str)
-{
- uint8_t c;
- while ((c = pgm_read_byte(str++)))
- uart1_putc(c);
-}
-
-void serial_send(uint8_t data)
-{
- dprintf("Sending: %u\n", data);
-}
-
-void send_bytes(uint8_t data)
-{
- char hexStr[3];
- sprintf(hexStr, "%02X", data);
- for (int j = 0; j < sizeof(hexStr) - 1; j++)
- {
- uart1_putc(hexStr[j]);
- }
-}
-
-#ifdef BLUEFRUIT_TRACE_SERIAL
-static void bluefruit_trace_header(void)
-{
- dprintf("+------------------------------------+\n");
- dprintf("| HID report to Bluefruit via serial |\n");
- dprintf("+------------------------------------+\n|");
-}
-
-static void bluefruit_trace_footer(void)
-{
- dprintf("|\n+------------------------------------+\n\n");
-}
-#endif
-
-static void bluefruit_serial_send(uint8_t data)
-{
-#ifdef BLUEFRUIT_TRACE_SERIAL
- dprintf(" ");
- debug_hex8(data);
- dprintf(" ");
-#endif
- serial_send(data);
-}
-
-void bluetooth_init(void) {
- usart_init();
-}
-
-void bluetooth_task(void) {}
-
-void bluetooth_send_keyboard(report_keyboard_t *report)
-{
-#ifdef BLUEFRUIT_TRACE_SERIAL
- bluefruit_trace_header();
-#endif
- dprintf("Sending...\n");
-
- send_str(PSTR("AT+BLEKEYBOARDCODE="));
-
- for (uint8_t i = 0; i < KEYBOARD_EPSIZE; i++)
- {
- send_bytes(report->raw[i]);
- if (i < (KEYBOARD_EPSIZE - 1))
- {
- send_str(PSTR("-"));
- }
- }
-
- send_str(PSTR("\r\n"));
-#ifdef BLUEFRUIT_TRACE_SERIAL
- bluefruit_trace_footer();
-#endif
-}
-
-void bluetooth_send_mouse(report_mouse_t *report)
-{
-#ifdef BLUEFRUIT_TRACE_SERIAL
- bluefruit_trace_header();
-#endif
- bluefruit_serial_send(0xFD);
- bluefruit_serial_send(0x00);
- bluefruit_serial_send(0x03);
- bluefruit_serial_send(report->buttons);
- bluefruit_serial_send(report->x);
- bluefruit_serial_send(report->y);
- bluefruit_serial_send(report->v); // should try sending the wheel v here
- bluefruit_serial_send(report->h); // should try sending the wheel h here
- bluefruit_serial_send(0x00);
-#ifdef BLUEFRUIT_TRACE_SERIAL
- bluefruit_trace_footer();
-#endif
-}
-
-/*
-+-----------------+-------------------+-------+
-| Consumer Key | Bit Map | Hex |
-+-----------------+-------------------+-------+
-| Home | 00000001 00000000 | 01 00 |
-| KeyboardLayout | 00000010 00000000 | 02 00 |
-| Search | 00000100 00000000 | 04 00 |
-| Snapshot | 00001000 00000000 | 08 00 |
-| VolumeUp | 00010000 00000000 | 10 00 |
-| VolumeDown | 00100000 00000000 | 20 00 |
-| Play/Pause | 01000000 00000000 | 40 00 |
-| Fast Forward | 10000000 00000000 | 80 00 |
-| Rewind | 00000000 00000001 | 00 01 |
-| Scan Next Track | 00000000 00000010 | 00 02 |
-| Scan Prev Track | 00000000 00000100 | 00 04 |
-| Random Play | 00000000 00001000 | 00 08 |
-| Stop | 00000000 00010000 | 00 10 |
-+-------------------------------------+-------+
-*/
-#define CONSUMER2BLUEFRUIT(usage) \
- (usage == AUDIO_MUTE ? 0x00e2 : (usage == AUDIO_VOL_UP ? 0x00e9 : (usage == AUDIO_VOL_DOWN ? 0x00ea : (usage == TRANSPORT_NEXT_TRACK ? 0x00b5 : (usage == TRANSPORT_PREV_TRACK ? 0x00b6 : (usage == TRANSPORT_STOP ? 0x00b7 : (usage == TRANSPORT_STOP_EJECT ? 0x00b8 : (usage == TRANSPORT_PLAY_PAUSE ? 0x00b1 : (usage == AL_CC_CONFIG ? 0x0183 : (usage == AL_EMAIL ? 0x018c : (usage == AL_CALCULATOR ? 0x0192 : (usage == AL_LOCAL_BROWSER ? 0x0196 : (usage == AC_SEARCH ? 0x021f : (usage == AC_HOME ? 0x0223 : (usage == AC_BACK ? 0x0224 : (usage == AC_FORWARD ? 0x0225 : (usage == AC_STOP ? 0x0226 : (usage == AC_REFRESH ? 0x0227 : (usage == AC_BOOKMARKS ? 0x022a : 0)))))))))))))))))))
-
-void bluetooth_send_consumer(uint16_t usage)
-{
- uint16_t bitmap = CONSUMER2BLUEFRUIT(usage);
-
-#ifdef BLUEFRUIT_TRACE_SERIAL
- dprintf("\nData: ");
- debug_hex16(data);
- dprintf("; bitmap: ");
- debug_hex16(bitmap);
- dprintf("\n");
- bluefruit_trace_header();
-#endif
- send_str(PSTR("AT+BLEHIDCONTROLKEY=0x"));
- send_bytes((bitmap >> 8) & 0xFF);
- send_bytes(bitmap & 0xFF);
- send_str(PSTR("\r\n"));
-#ifdef BLUEFRUIT_TRACE_SERIAL
- bluefruit_trace_footer();
-#endif
-}
-
-void usart_init(void)
-{
- uart1_init(UART_BAUD_SELECT_DOUBLE_SPEED(76800, 8000000L));
- wait_ms(250);
-
- send_str(PSTR("\r\n"));
- send_str(PSTR("\r\n"));
- send_str(PSTR("\r\n"));
-}
diff --git a/keyboards/bioi/ble.h b/keyboards/bioi/ble.h
deleted file mode 100644
index 529ebf5241..0000000000
--- a/keyboards/bioi/ble.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-Copyright 2019 Basic I/O Instruments(Scott Wei) <scot.wei@gmail.com>
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#include <stdbool.h>
-
-typedef union {
- uint32_t raw;
- struct {
- bool init : 1;
- };
-} keyboard_config_t;
-
-extern keyboard_config_t ble_config;
-
-void send_str(const char *str);
-void usart_init(void);
-void module_reset(void);
diff --git a/keyboards/bioi/bluetooth_custom.c b/keyboards/bioi/bluetooth_custom.c
new file mode 100644
index 0000000000..4ea277f731
--- /dev/null
+++ b/keyboards/bioi/bluetooth_custom.c
@@ -0,0 +1,163 @@
+/*
+Copyright 2019 Basic I/O Instruments(Scott Wei) <scot.wei@gmail.com>
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "bluetooth.h"
+#include "uart.h"
+#include "progmem.h"
+#include "wait.h"
+#include "debug.h"
+#include "usb_descriptor.h"
+#include "report.h"
+
+void send_str(const char *str)
+{
+ uint8_t c;
+ while ((c = pgm_read_byte(str++)))
+ uart_write(c);
+}
+
+void serial_send(uint8_t data)
+{
+ dprintf("Sending: %u\n", data);
+}
+
+void send_bytes(uint8_t data)
+{
+ char hexStr[3];
+ sprintf(hexStr, "%02X", data);
+ for (int j = 0; j < sizeof(hexStr) - 1; j++)
+ {
+ uart_write(hexStr[j]);
+ }
+}
+
+#ifdef BLUEFRUIT_TRACE_SERIAL
+static void bluefruit_trace_header(void)
+{
+ dprintf("+------------------------------------+\n");
+ dprintf("| HID report to Bluefruit via serial |\n");
+ dprintf("+------------------------------------+\n|");
+}
+
+static void bluefruit_trace_footer(void)
+{
+ dprintf("|\n+------------------------------------+\n\n");
+}
+#endif
+
+static void bluefruit_serial_send(uint8_t data)
+{
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ dprintf(" ");
+ debug_hex8(data);
+ dprintf(" ");
+#endif
+ serial_send(data);
+}
+
+void bluetooth_init(void) {
+ uart_init(76800);
+ wait_ms(250);
+
+ send_str(PSTR("\r\n"));
+ send_str(PSTR("\r\n"));
+ send_str(PSTR("\r\n"));
+}
+
+void bluetooth_task(void) {}
+
+void bluetooth_send_keyboard(report_keyboard_t *report)
+{
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ bluefruit_trace_header();
+#endif
+ dprintf("Sending...\n");
+
+ send_str(PSTR("AT+BLEKEYBOARDCODE="));
+
+ send_bytes(report->mods);
+ send_str(PSTR("-"));
+ send_bytes(0);
+ for (uint8_t i = 0; i < KEYBOARD_REPORT_KEYS; i++) {
+ send_str(PSTR("-"));
+ send_bytes(report->keys[i]);
+ }
+
+ send_str(PSTR("\r\n"));
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ bluefruit_trace_footer();
+#endif
+}
+
+void bluetooth_send_mouse(report_mouse_t *report)
+{
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ bluefruit_trace_header();
+#endif
+ bluefruit_serial_send(0xFD);
+ bluefruit_serial_send(0x00);
+ bluefruit_serial_send(0x03);
+ bluefruit_serial_send(report->buttons);
+ bluefruit_serial_send(report->x);
+ bluefruit_serial_send(report->y);
+ bluefruit_serial_send(report->v); // should try sending the wheel v here
+ bluefruit_serial_send(report->h); // should try sending the wheel h here
+ bluefruit_serial_send(0x00);
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ bluefruit_trace_footer();
+#endif
+}
+
+/*
++-----------------+-------------------+-------+
+| Consumer Key | Bit Map | Hex |
++-----------------+-------------------+-------+
+| Home | 00000001 00000000 | 01 00 |
+| KeyboardLayout | 00000010 00000000 | 02 00 |
+| Search | 00000100 00000000 | 04 00 |
+| Snapshot | 00001000 00000000 | 08 00 |
+| VolumeUp | 00010000 00000000 | 10 00 |
+| VolumeDown | 00100000 00000000 | 20 00 |
+| Play/Pause | 01000000 00000000 | 40 00 |
+| Fast Forward | 10000000 00000000 | 80 00 |
+| Rewind | 00000000 00000001 | 00 01 |
+| Scan Next Track | 00000000 00000010 | 00 02 |
+| Scan Prev Track | 00000000 00000100 | 00 04 |
+| Random Play | 00000000 00001000 | 00 08 |
+| Stop | 00000000 00010000 | 00 10 |
++-------------------------------------+-------+
+*/
+#define CONSUMER2BLUEFRUIT(usage) \
+ (usage == AUDIO_MUTE ? 0x00e2 : (usage == AUDIO_VOL_UP ? 0x00e9 : (usage == AUDIO_VOL_DOWN ? 0x00ea : (usage == TRANSPORT_NEXT_TRACK ? 0x00b5 : (usage == TRANSPORT_PREV_TRACK ? 0x00b6 : (usage == TRANSPORT_STOP ? 0x00b7 : (usage == TRANSPORT_STOP_EJECT ? 0x00b8 : (usage == TRANSPORT_PLAY_PAUSE ? 0x00b1 : (usage == AL_CC_CONFIG ? 0x0183 : (usage == AL_EMAIL ? 0x018c : (usage == AL_CALCULATOR ? 0x0192 : (usage == AL_LOCAL_BROWSER ? 0x0196 : (usage == AC_SEARCH ? 0x021f : (usage == AC_HOME ? 0x0223 : (usage == AC_BACK ? 0x0224 : (usage == AC_FORWARD ? 0x0225 : (usage == AC_STOP ? 0x0226 : (usage == AC_REFRESH ? 0x0227 : (usage == AC_BOOKMARKS ? 0x022a : 0)))))))))))))))))))
+
+void bluetooth_send_consumer(uint16_t usage)
+{
+ uint16_t bitmap = CONSUMER2BLUEFRUIT(usage);
+
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ dprintf("\nData: ");
+ debug_hex16(data);
+ dprintf("; bitmap: ");
+ debug_hex16(bitmap);
+ dprintf("\n");
+ bluefruit_trace_header();
+#endif
+ send_str(PSTR("AT+BLEHIDCONTROLKEY=0x"));
+ send_bytes((bitmap >> 8) & 0xFF);
+ send_bytes(bitmap & 0xFF);
+ send_str(PSTR("\r\n"));
+#ifdef BLUEFRUIT_TRACE_SERIAL
+ bluefruit_trace_footer();
+#endif
+}
diff --git a/keyboards/bioi/g60/rules.mk b/keyboards/bioi/g60/rules.mk
index 2b955ce793..375cb52732 100644
--- a/keyboards/bioi/g60/rules.mk
+++ b/keyboards/bioi/g60/rules.mk
@@ -18,7 +18,5 @@ BLUETOOTH_ENABLE = yes
VIA_ENABLE = yes # VIA support should be enabled here due to the main() loop will be compiled first.
-SRC += usart.c ble.c
-
-OPT_DEFS += -DUART_RX1_BUFFER_SIZE=16 -DUART_TX1_BUFFER_SIZE=16
-OPT_DEFS += -DUSART1_ENABLED
+UART_DRIVER_REQUIRED = yes
+SRC += bluetooth_custom.c
diff --git a/keyboards/bioi/g60ble/rules.mk b/keyboards/bioi/g60ble/rules.mk
index 31cc2c22b6..6bfcc62d7e 100644
--- a/keyboards/bioi/g60ble/rules.mk
+++ b/keyboards/bioi/g60ble/rules.mk
@@ -13,8 +13,7 @@ BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes
LTO_ENABLE = yes
-# these lines are all for bluetooth
BLUETOOTH_ENABLE = yes
-SRC += usart.c ble.c
-OPT_DEFS += -DUART_RX1_BUFFER_SIZE=16 -DUART_TX1_BUFFER_SIZE=16
-OPT_DEFS += -DUSART1_ENABLED
+
+UART_DRIVER_REQUIRED = yes
+SRC += bluetooth_custom.c
diff --git a/keyboards/bioi/morgan65/rules.mk b/keyboards/bioi/morgan65/rules.mk
index 2b955ce793..375cb52732 100644
--- a/keyboards/bioi/morgan65/rules.mk
+++ b/keyboards/bioi/morgan65/rules.mk
@@ -18,7 +18,5 @@ BLUETOOTH_ENABLE = yes
VIA_ENABLE = yes # VIA support should be enabled here due to the main() loop will be compiled first.
-SRC += usart.c ble.c
-
-OPT_DEFS += -DUART_RX1_BUFFER_SIZE=16 -DUART_TX1_BUFFER_SIZE=16
-OPT_DEFS += -DUSART1_ENABLED
+UART_DRIVER_REQUIRED = yes
+SRC += bluetooth_custom.c
diff --git a/keyboards/bioi/usart.c b/keyboards/bioi/usart.c
deleted file mode 100644
index f37845e5c6..0000000000
--- a/keyboards/bioi/usart.c
+++ /dev/null
@@ -1,1522 +0,0 @@
-/*************************************************************************
-
- Title: Interrupt UART library with receive/transmit circular buffers
- Author: Andy Gock
- Software: AVR-GCC 4.1, AVR Libc 1.4
- Hardware: any AVR with built-in UART, tested on AT90S8515 & ATmega8 at 4 Mhz
- License: GNU General Public License
- Usage: see README.md and Doxygen manual
-
- Based on original library by Peter Fluery, Tim Sharpe, Nicholas Zambetti.
-
- https://github.com/andygock/avr-uart
-
- Updated UART library (this one) by Andy Gock
- https://github.com/andygock/avr-uart
-
- Based on updated UART library (this one) by Tim Sharpe
- http://beaststwo.org/avr-uart/index.shtml
-
- Based on original library by Peter Fluery
- http://homepage.hispeed.ch/peterfleury/avr-software.html
-
-*************************************************************************/
-
-/*************************************************************************
-
-LICENSE:
- Copyright (C) 2012 Andy Gock
- Copyright (C) 2006 Peter Fleury
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
-*************************************************************************/
-
-/************************************************************************
-uart_available, uart_flush, uart1_available, and uart1_flush functions
-were adapted from the Arduino HardwareSerial.h library by Tim Sharpe on
-11 Jan 2009. The license info for HardwareSerial.h is as follows:
-
- HardwareSerial.cpp - Hardware serial library for Wiring
- Copyright (c) 2006 Nicholas Zambetti. All right reserved.
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
- Modified 23 November 2006 by David A. Mellis
-************************************************************************/
-
-/************************************************************************
-Changelog for modifications made by Tim Sharpe, starting with the current
- library version on his Web site as of 05/01/2009.
-
-Date Description
-=========================================================================
-05/11/2009 Changed all existing UARTx_RECEIVE_INTERRUPT and UARTx_TRANSMIT_INTERRUPT
- macros to use the "_vect" format introduced in AVR-Libc
- v1.4.0. Had to split the 3290 and 6490 out of their existing
- macro due to an inconsistency in the UART0_RECEIVE_INTERRUPT
- vector name (seems like a typo: USART_RX_vect for the 3290/6490
- vice USART0_RX_vect for the others in the macro).
- Verified all existing macro register names against the device
- header files in AVR-Libc v1.6.6 to catch any inconsistencies.
-05/12/2009 Added support for 48P, 88P, 168P, and 328P by adding them to the
- existing 48/88/168 macro.
- Added Arduino-style available() and flush() functions for both
- supported UARTs. Really wanted to keep them out of the library, so
- that it would be as close as possible to Peter Fleury's original
- library, but has scoping issues accessing internal variables from
- another program. Go C!
-05/13/2009 Changed Interrupt Service Routine label from the old "SIGNAL" to
- the "ISR" format introduced in AVR-Libc v1.4.0.
-
-************************************************************************/
-
-#include <avr/io.h>
-#include <avr/interrupt.h>
-#include <avr/pgmspace.h>
-#include <util/atomic.h>
-#include "usart.h"
-
-/*
- * constants and macros
- */
-
-/* size of RX/TX buffers */
-#define UART_RX0_BUFFER_MASK (UART_RX0_BUFFER_SIZE - 1)
-#define UART_RX1_BUFFER_MASK (UART_RX1_BUFFER_SIZE - 1)
-#define UART_RX2_BUFFER_MASK (UART_RX2_BUFFER_SIZE - 1)
-#define UART_RX3_BUFFER_MASK (UART_RX3_BUFFER_SIZE - 1)
-
-#define UART_TX0_BUFFER_MASK (UART_TX0_BUFFER_SIZE - 1)
-#define UART_TX1_BUFFER_MASK (UART_TX1_BUFFER_SIZE - 1)
-#define UART_TX2_BUFFER_MASK (UART_TX2_BUFFER_SIZE - 1)
-#define UART_TX3_BUFFER_MASK (UART_TX3_BUFFER_SIZE - 1)
-
-#if (UART_RX0_BUFFER_SIZE & UART_RX0_BUFFER_MASK)
- #error RX0 buffer size is not a power of 2
-#endif
-#if (UART_TX0_BUFFER_SIZE & UART_TX0_BUFFER_MASK)
- #error TX0 buffer size is not a power of 2
-#endif
-
-#if (UART_RX1_BUFFER_SIZE & UART_RX1_BUFFER_MASK)
- #error RX1 buffer size is not a power of 2
-#endif
-#if (UART_TX1_BUFFER_SIZE & UART_TX1_BUFFER_MASK)
- #error TX1 buffer size is not a power of 2
-#endif
-
-#if (UART_RX2_BUFFER_SIZE & UART_RX2_BUFFER_MASK)
- #error RX2 buffer size is not a power of 2
-#endif
-#if (UART_TX2_BUFFER_SIZE & UART_TX2_BUFFER_MASK)
- #error TX2 buffer size is not a power of 2
-#endif
-
-#if (UART_RX3_BUFFER_SIZE & UART_RX3_BUFFER_MASK)
- #error RX3 buffer size is not a power of 2
-#endif
-#if (UART_TX3_BUFFER_SIZE & UART_TX3_BUFFER_MASK)
- #error TX3 buffer size is not a power of 2
-#endif
-
-#if defined(__AVR_AT90S2313__) \
- || defined(__AVR_AT90S4414__) || defined(__AVR_AT90S4434__) \
- || defined(__AVR_AT90S8515__) || defined(__AVR_AT90S8535__) \
- || defined(__AVR_ATmega103__)
- /* old AVR classic or ATmega103 with one UART */
- #define AT90_UART
- #define UART0_RECEIVE_INTERRUPT UART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT UART_UDRE_vect
- #define UART0_STATUS USR
- #define UART0_CONTROL UCR
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_AT90S2333__) || defined(__AVR_AT90S4433__)
- /* old AVR classic with one UART */
- #define AT90_UART
- #define UART0_RECEIVE_INTERRUPT UART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT UART_UDRE_vect
- #define UART0_STATUS UCSRA
- #define UART0_CONTROL UCSRB
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_ATmega8__) || defined(__AVR_ATmega16__) || defined(__AVR_ATmega32__) \
- || defined(__AVR_ATmega323__)
- /* ATmega with one USART */
- #define ATMEGA_USART
- #define UART0_RECEIVE_INTERRUPT USART_RXC_vect
- #define UART0_TRANSMIT_INTERRUPT USART_UDRE_vect
- #define UART0_STATUS UCSRA
- #define UART0_CONTROL UCSRB
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_ATmega8U2__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega16U4__) || \
- defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega32U6__)
- /* ATmega with one USART, but is called USART1 (untested) */
- #define ATMEGA_USART1
- #define UART1_RECEIVE_INTERRUPT USART1_RX_vect
- #define UART1_TRANSMIT_INTERRUPT USART1_UDRE_vect
- #define UART1_STATUS UCSR1A
- #define UART1_CONTROL UCSR1B
- #define UART1_DATA UDR1
- #define UART1_UDRIE UDRIE1
-#elif defined(__AVR_ATmega8515__) || defined(__AVR_ATmega8535__)
- /* ATmega with one USART */
- #define ATMEGA_USART
- #define UART0_RECEIVE_INTERRUPT USART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART_UDRE_vect
- #define UART0_STATUS UCSRA
- #define UART0_CONTROL UCSRB
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_ATmega163__)
- /* ATmega163 with one UART */
- #define ATMEGA_UART
- #define UART0_RECEIVE_INTERRUPT UART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT UART_UDRE_vect
- #define UART0_STATUS UCSRA
- #define UART0_CONTROL UCSRB
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_ATmega162__)
- /* ATmega with two USART */
- #define ATMEGA_USART0
- #define ATMEGA_USART1
- #define UART0_RECEIVE_INTERRUPT USART0_RXC_vect
- #define UART1_RECEIVE_INTERRUPT USART1_RXC_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART1_TRANSMIT_INTERRUPT USART1_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
- #define UART1_STATUS UCSR1A
- #define UART1_CONTROL UCSR1B
- #define UART1_DATA UDR1
- #define UART1_UDRIE UDRIE1
-#elif defined(__AVR_ATmega64__) || defined(__AVR_ATmega128__)
- /* ATmega with two USART */
- #define ATMEGA_USART0
- #define ATMEGA_USART1
- #define UART0_RECEIVE_INTERRUPT USART0_RX_vect
- #define UART1_RECEIVE_INTERRUPT USART1_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART1_TRANSMIT_INTERRUPT USART1_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
- #define UART1_STATUS UCSR1A
- #define UART1_CONTROL UCSR1B
- #define UART1_DATA UDR1
- #define UART1_UDRIE UDRIE1
-#elif defined(__AVR_ATmega161__)
- /* ATmega with UART */
- #error "AVR ATmega161 currently not supported by this libaray !"
-#elif defined(__AVR_ATmega169__)
- /* ATmega with one USART */
- #define ATMEGA_USART
- #define UART0_RECEIVE_INTERRUPT USART0_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART0_STATUS UCSRA
- #define UART0_CONTROL UCSRB
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_ATmega48__) ||defined(__AVR_ATmega88__) || defined(__AVR_ATmega168__) || \
- defined(__AVR_ATmega48P__) ||defined(__AVR_ATmega88P__) || defined(__AVR_ATmega168P__) || \
- defined(__AVR_ATmega328P__)
- /* TLS-Added 48P/88P/168P/328P */
- /* ATmega with one USART */
- #define ATMEGA_USART0
- #define UART0_RECEIVE_INTERRUPT USART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
-#elif defined(__AVR_ATtiny2313__) || defined(__AVR_ATtiny2313A__) || defined(__AVR_ATtiny4313__)
- #define ATMEGA_USART
- #define UART0_RECEIVE_INTERRUPT USART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART_UDRE_vect
- #define UART0_STATUS UCSRA
- #define UART0_CONTROL UCSRB
- #define UART0_DATA UDR
- #define UART0_UDRIE UDRIE
-#elif defined(__AVR_ATmega329__) ||\
- defined(__AVR_ATmega649__) ||\
- defined(__AVR_ATmega325__) ||defined(__AVR_ATmega3250__) ||\
- defined(__AVR_ATmega645__) ||defined(__AVR_ATmega6450__)
- /* ATmega with one USART */
- #define ATMEGA_USART0
- #define UART0_RECEIVE_INTERRUPT USART0_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
-#elif defined(__AVR_ATmega3290__) ||\
- defined(__AVR_ATmega6490__)
- /* TLS-Separated these two from the previous group because of inconsistency in the USART_RX */
- /* ATmega with one USART */
- #define ATMEGA_USART0
- #define UART0_RECEIVE_INTERRUPT USART_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
-#elif defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega640__)
- /* ATmega with four USART */
- #define ATMEGA_USART0
- #define ATMEGA_USART1
- #define ATMEGA_USART2
- #define ATMEGA_USART3
- #define UART0_RECEIVE_INTERRUPT USART0_RX_vect
- #define UART1_RECEIVE_INTERRUPT USART1_RX_vect
- #define UART2_RECEIVE_INTERRUPT USART2_RX_vect
- #define UART3_RECEIVE_INTERRUPT USART3_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART1_TRANSMIT_INTERRUPT USART1_UDRE_vect
- #define UART2_TRANSMIT_INTERRUPT USART2_UDRE_vect
- #define UART3_TRANSMIT_INTERRUPT USART3_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
- #define UART1_STATUS UCSR1A
- #define UART1_CONTROL UCSR1B
- #define UART1_DATA UDR1
- #define UART1_UDRIE UDRIE1
- #define UART2_STATUS UCSR2A
- #define UART2_CONTROL UCSR2B
- #define UART2_DATA UDR2
- #define UART2_UDRIE UDRIE2
- #define UART3_STATUS UCSR3A
- #define UART3_CONTROL UCSR3B
- #define UART3_DATA UDR3
- #define UART3_UDRIE UDRIE3
-#elif defined(__AVR_ATmega644__)
- /* ATmega with one USART */
- #define ATMEGA_USART0
- #define UART0_RECEIVE_INTERRUPT USART0_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
-#elif defined(__AVR_ATmega164P__) || defined(__AVR_ATmega324P__) || defined(__AVR_ATmega644P__) || \
- defined(__AVR_ATmega1284P__)
- /* ATmega with two USART */
- #define ATMEGA_USART0
- #define ATMEGA_USART1
- #define UART0_RECEIVE_INTERRUPT USART0_RX_vect
- #define UART1_RECEIVE_INTERRUPT USART1_RX_vect
- #define UART0_TRANSMIT_INTERRUPT USART0_UDRE_vect
- #define UART1_TRANSMIT_INTERRUPT USART1_UDRE_vect
- #define UART0_STATUS UCSR0A
- #define UART0_CONTROL UCSR0B
- #define UART0_DATA UDR0
- #define UART0_UDRIE UDRIE0
- #define UART1_STATUS UCSR1A
- #define UART1_CONTROL UCSR1B
- #define UART1_DATA UDR1
- #define UART1_UDRIE UDRIE1
-#else
- #error "no UART definition for MCU available"
-#endif
-
-/*
- * Module global variables
- */
-
-#if defined(USART0_ENABLED)
- #if defined(ATMEGA_USART) || defined(ATMEGA_USART0)
- static volatile uint8_t UART_TxBuf[UART_TX0_BUFFER_SIZE];
- static volatile uint8_t UART_RxBuf[UART_RX0_BUFFER_SIZE];
-
- #if defined(USART0_LARGE_BUFFER)
- static volatile uint16_t UART_TxHead;
- static volatile uint16_t UART_TxTail;
- static volatile uint16_t UART_RxHead;
- static volatile uint16_t UART_RxTail;
- static volatile uint8_t UART_LastRxError;
- #else
- static volatile uint8_t UART_TxHead;
- static volatile uint8_t UART_TxTail;
- static volatile uint8_t UART_RxHead;
- static volatile uint8_t UART_RxTail;
- static volatile uint8_t UART_LastRxError;
- #endif
-
- #endif
-#endif
-
-#if defined(USART1_ENABLED)
- #if defined(ATMEGA_USART1)
- static volatile uint8_t UART1_TxBuf[UART_TX1_BUFFER_SIZE];
- static volatile uint8_t UART1_RxBuf[UART_RX1_BUFFER_SIZE];
-
- #if defined(USART1_LARGE_BUFFER)
- static volatile uint16_t UART1_TxHead;
- static volatile uint16_t UART1_TxTail;
- static volatile uint16_t UART1_RxHead;
- static volatile uint16_t UART1_RxTail;
- static volatile uint8_t UART1_LastRxError;
- #else
- static volatile uint8_t UART1_TxHead;
- static volatile uint8_t UART1_TxTail;
- static volatile uint8_t UART1_RxHead;
- static volatile uint8_t UART1_RxTail;
- static volatile uint8_t UART1_LastRxError;
- #endif
- #endif
-#endif
-
-#if defined(USART2_ENABLED)
- #if defined(ATMEGA_USART2)
- static volatile uint8_t UART2_TxBuf[UART_TX2_BUFFER_SIZE];
- static volatile uint8_t UART2_RxBuf[UART_RX2_BUFFER_SIZE];
-
- #if defined(USART2_LARGE_BUFFER)
- static volatile uint16_t UART2_TxHead;
- static volatile uint16_t UART2_TxTail;
- static volatile uint16_t UART2_RxHead;
- static volatile uint16_t UART2_RxTail;
- static volatile uint8_t UART2_LastRxError;
- #else
- static volatile uint8_t UART2_TxHead;
- static volatile uint8_t UART2_TxTail;
- static volatile uint8_t UART2_RxHead;
- static volatile uint8_t UART2_RxTail;
- static volatile uint8_t UART2_LastRxError;
- #endif
- #endif
-#endif
-
-#if defined(USART3_ENABLED)
- #if defined(ATMEGA_USART3)
- static volatile uint8_t UART3_TxBuf[UART_TX3_BUFFER_SIZE];
- static volatile uint8_t UART3_RxBuf[UART_RX3_BUFFER_SIZE];
-
- #if defined(USART3_LARGE_BUFFER)
- static volatile uint16_t UART3_TxHead;
- static volatile uint16_t UART3_TxTail;
- static volatile uint16_t UART3_RxHead;
- static volatile uint16_t UART3_RxTail;
- static volatile uint8_t UART3_LastRxError;
- #else
- static volatile uint8_t UART3_TxHead;
- static volatile uint8_t UART3_TxTail;
- static volatile uint8_t UART3_RxHead;
- static volatile uint8_t UART3_RxTail;
- static volatile uint8_t UART3_LastRxError;
- #endif
-
- #endif
-#endif
-
-#if defined(USART0_ENABLED)
-
-#if defined(AT90_UART) || defined(ATMEGA_USART) || defined(ATMEGA_USART0)
-
-ISR(UART0_RECEIVE_INTERRUPT)
-/*************************************************************************
-Function: UART Receive Complete interrupt
-Purpose: called when the UART has received a character
-**************************************************************************/
-{
- uint16_t tmphead;
- uint8_t data;
- uint8_t usr;
- uint8_t lastRxError;
-
- /* read UART status register and UART data register */
- usr = UART0_STATUS;
- data = UART0_DATA;
-
- /* */
-#if defined(AT90_UART)
- lastRxError = (usr & (_BV(FE)|_BV(DOR)));
-#elif defined(ATMEGA_USART)
- lastRxError = (usr & (_BV(FE)|_BV(DOR)));
-#elif defined(ATMEGA_USART0)
- lastRxError = (usr & (_BV(FE0)|_BV(DOR0)));
-#elif defined (ATMEGA_UART)
- lastRxError = (usr & (_BV(FE)|_BV(DOR)));
-#endif
-
- /* calculate buffer index */
- tmphead = (UART_RxHead + 1) & UART_RX0_BUFFER_MASK;
-
- if (tmphead == UART_RxTail) {
- /* error: receive buffer overflow */
- lastRxError = UART_BUFFER_OVERFLOW >> 8;
- } else {
- /* store new index */
- UART_RxHead = tmphead;
- /* store received data in buffer */
- UART_RxBuf[tmphead] = data;
- }
- UART_LastRxError = lastRxError;
-}
-
-
-ISR(UART0_TRANSMIT_INTERRUPT)
-/*************************************************************************
-Function: UART Data Register Empty interrupt
-Purpose: called when the UART is ready to transmit the next byte
-**************************************************************************/
-{
- uint16_t tmptail;
-
- if (UART_TxHead != UART_TxTail) {
- /* calculate and store new buffer index */
- tmptail = (UART_TxTail + 1) & UART_TX0_BUFFER_MASK;
- UART_TxTail = tmptail;
- /* get one byte from buffer and write it to UART */
- UART0_DATA = UART_TxBuf[tmptail]; /* start transmission */
- } else {
- /* tx buffer empty, disable UDRE interrupt */
- UART0_CONTROL &= ~_BV(UART0_UDRIE);
- }
-}
-
-
-/*************************************************************************
-Function: uart0_init()
-Purpose: initialize UART and set baudrate
-Input: baudrate using macro UART_BAUD_SELECT()
-Returns: none
-**************************************************************************/
-void uart0_init(uint16_t baudrate)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART_TxHead = 0;
- UART_TxTail = 0;
- UART_RxHead = 0;
- UART_RxTail = 0;
- }
-
-#if defined(AT90_UART)
- /* set baud rate */
- UBRR = (uint8_t) baudrate;
-
- /* enable UART receiver and transmitter and receive complete interrupt */
- UART0_CONTROL = _BV(RXCIE)|_BV(RXEN)|_BV(TXEN);
-
-#elif defined (ATMEGA_USART)
- /* Set baud rate */
- if (baudrate & 0x8000) {
- UART0_STATUS = (1<<U2X); //Enable 2x speed
- baudrate &= ~0x8000;
- }
- UBRRH = (uint8_t) (baudrate>>8);
- UBRRL = (uint8_t) baudrate;
-
- /* Enable USART receiver and transmitter and receive complete interrupt */
- UART0_CONTROL = _BV(RXCIE)|(1<<RXEN)|(1<<TXEN);
-
- /* Set frame format: asynchronous, 8data, no parity, 1stop bit */
-#ifdef URSEL
- UCSRC = (1<<URSEL)|(3<<UCSZ0);
-#else
- UCSRC = (3<<UCSZ0);
-#endif
-
-#elif defined (ATMEGA_USART0)
- /* Set baud rate */
- if (baudrate & 0x8000) {
- UART0_STATUS = (1<<U2X0); //Enable 2x speed
- baudrate &= ~0x8000;
- }
- UBRR0H = (uint8_t)(baudrate>>8);
- UBRR0L = (uint8_t) baudrate;
-
- /* Enable USART receiver and transmitter and receive complete interrupt */
- UART0_CONTROL = _BV(RXCIE0)|(1<<RXEN0)|(1<<TXEN0);
-
- /* Set frame format: asynchronous, 8data, no parity, 1stop bit */
-#ifdef URSEL0
- UCSR0C = (1<<URSEL0)|(3<<UCSZ00);
-#else
- UCSR0C = (3<<UCSZ00);
-#endif
-
-#elif defined (ATMEGA_UART)
- /* set baud rate */
- if (baudrate & 0x8000) {
- UART0_STATUS = (1<<U2X); //Enable 2x speed
- baudrate &= ~0x8000;
- }
- UBRRHI = (uint8_t) (baudrate>>8);
- UBRR = (uint8_t) baudrate;
-
- /* Enable UART receiver and transmitter and receive complete interrupt */
- UART0_CONTROL = _BV(RXCIE)|(1<<RXEN)|(1<<TXEN);
-
-#endif
-
-} /* uart0_init */
-
-
-/*************************************************************************
-Function: uart0_getc()
-Purpose: return byte from ringbuffer
-Returns: lower byte: received byte from ringbuffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart0_getc(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART_RxHead == UART_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- /* calculate / store buffer index */
- tmptail = (UART_RxTail + 1) & UART_RX0_BUFFER_MASK;
-
- UART_RxTail = tmptail;
-
- /* get data from receive buffer */
- data = UART_RxBuf[tmptail];
-
- return (UART_LastRxError << 8) + data;
-
-} /* uart0_getc */
-
-/*************************************************************************
-Function: uart0_peek()
-Purpose: Returns the next byte (character) of incoming UART data without
- removing it from the ring buffer. That is, successive calls to
- uartN_peek() will return the same character, as will the next
- call to uartN_getc()
-Returns: lower byte: next byte in ring buffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart0_peek(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART_RxHead == UART_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- tmptail = (UART_RxTail + 1) & UART_RX0_BUFFER_MASK;
-
- /* get data from receive buffer */
- data = UART_RxBuf[tmptail];
-
- return (UART_LastRxError << 8) + data;
-
-} /* uart0_peek */
-
-/*************************************************************************
-Function: uart0_putc()
-Purpose: write byte to ringbuffer for transmitting via UART
-Input: byte to be transmitted
-Returns: none
-**************************************************************************/
-void uart0_putc(uint8_t data)
-{
-
-#ifdef USART0_LARGE_BUFFER
- uint16_t tmphead;
- uint16_t txtail_tmp;
-
- tmphead = (UART_TxHead + 1) & UART_TX0_BUFFER_MASK;
-
- do {
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- txtail_tmp = UART_TxTail;
- }
- } while (tmphead == txtail_tmp); /* wait for free space in buffer */
-#else
- uint16_t tmphead;
-
- tmphead = (UART_TxHead + 1) & UART_TX0_BUFFER_MASK;
-
- while (tmphead == UART_TxTail); /* wait for free space in buffer */
-#endif
-
- UART_TxBuf[tmphead] = data;
- UART_TxHead = tmphead;
-
- /* enable UDRE interrupt */
- UART0_CONTROL |= _BV(UART0_UDRIE);
-
-} /* uart0_putc */
-
-
-/*************************************************************************
-Function: uart0_puts()
-Purpose: transmit string to UART
-Input: string to be transmitted
-Returns: none
-**************************************************************************/
-void uart0_puts(const char *s)
-{
- while (*s) {
- uart0_putc(*s++);
- }
-
-} /* uart0_puts */
-
-
-/*************************************************************************
-Function: uart0_puts_p()
-Purpose: transmit string from program memory to UART
-Input: program memory string to be transmitted
-Returns: none
-**************************************************************************/
-void uart0_puts_p(const char *progmem_s)
-{
- register char c;
-
- while ((c = pgm_read_byte(progmem_s++))) {
- uart0_putc(c);
- }
-
-} /* uart0_puts_p */
-
-
-
-/*************************************************************************
-Function: uart0_available()
-Purpose: Determine the number of bytes waiting in the receive buffer
-Input: None
-Returns: Integer number of bytes in the receive buffer
-**************************************************************************/
-uint16_t uart0_available(void)
-{
- uint16_t ret;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- ret = (UART_RX0_BUFFER_SIZE + UART_RxHead - UART_RxTail) & UART_RX0_BUFFER_MASK;
- }
- return ret;
-} /* uart0_available */
-
-/*************************************************************************
-Function: uart0_flush()
-Purpose: Flush bytes waiting the receive buffer. Actually ignores them.
-Input: None
-Returns: None
-**************************************************************************/
-void uart0_flush(void)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART_RxHead = UART_RxTail;
- }
-} /* uart0_flush */
-
-#endif
-
-#endif /* defined(USART0_ENABLED) */
-
-#if defined(USART1_ENABLED)
-
-/*
- * these functions are only for ATmegas with two USART
- */
-#if defined(ATMEGA_USART1)
-
-ISR(UART1_RECEIVE_INTERRUPT)
-/*************************************************************************
-Function: UART1 Receive Complete interrupt
-Purpose: called when the UART1 has received a character
-**************************************************************************/
-{
- uint16_t tmphead;
- uint8_t data;
- uint8_t usr;
- uint8_t lastRxError;
-
- /* read UART status register and UART data register */
- usr = UART1_STATUS;
- data = UART1_DATA;
-
- /* */
- lastRxError = (usr & (_BV(FE1)|_BV(DOR1)));
-
- /* calculate buffer index */
- tmphead = (UART1_RxHead + 1) & UART_RX1_BUFFER_MASK;
-
- if (tmphead == UART1_RxTail) {
- /* error: receive buffer overflow */
- lastRxError = UART_BUFFER_OVERFLOW >> 8;
- } else {
- /* store new index */
- UART1_RxHead = tmphead;
- /* store received data in buffer */
- UART1_RxBuf[tmphead] = data;
- }
- UART1_LastRxError = lastRxError;
-}
-
-
-ISR(UART1_TRANSMIT_INTERRUPT)
-/*************************************************************************
-Function: UART1 Data Register Empty interrupt
-Purpose: called when the UART1 is ready to transmit the next byte
-**************************************************************************/
-{
- uint16_t tmptail;
-
- if (UART1_TxHead != UART1_TxTail) {
- /* calculate and store new buffer index */
- tmptail = (UART1_TxTail + 1) & UART_TX1_BUFFER_MASK;
- UART1_TxTail = tmptail;
- /* get one byte from buffer and write it to UART */
- UART1_DATA = UART1_TxBuf[tmptail]; /* start transmission */
- } else {
- /* tx buffer empty, disable UDRE interrupt */
- UART1_CONTROL &= ~_BV(UART1_UDRIE);
- }
-}
-
-
-/*************************************************************************
-Function: uart1_init()
-Purpose: initialize UART1 and set baudrate
-Input: baudrate using macro UART_BAUD_SELECT()
-Returns: none
-**************************************************************************/
-void uart1_init(uint16_t baudrate)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART1_TxHead = 0;
- UART1_TxTail = 0;
- UART1_RxHead = 0;
- UART1_RxTail = 0;
- }
-
- /* Set baud rate */
- if (baudrate & 0x8000) {
- UART1_STATUS = (1<<U2X1); //Enable 2x speed
- baudrate &= ~0x8000;
- }
- UBRR1H = (uint8_t) (baudrate>>8);
- UBRR1L = (uint8_t) baudrate;
-
- /* Enable USART receiver and transmitter and receive complete interrupt */
- UART1_CONTROL = _BV(RXCIE1)|(1<<RXEN1)|(1<<TXEN1);
-
- /* Set frame format: asynchronous, 8data, no parity, 1stop bit */
-#ifdef URSEL1
- UCSR1C = (1<<URSEL1)|(3<<UCSZ10);
-#else
- UCSR1C = (3<<UCSZ10);
-#endif
-} /* uart_init */
-
-
-/*************************************************************************
-Function: uart1_getc()
-Purpose: return byte from ringbuffer
-Returns: lower byte: received byte from ringbuffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart1_getc(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART1_RxHead == UART1_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
-
- /* calculate / store buffer index */
- tmptail = (UART1_RxTail + 1) & UART_RX1_BUFFER_MASK;
- UART1_RxTail = tmptail;
- }
-
- /* get data from receive buffer */
- data = UART1_RxBuf[tmptail];
-
- return (UART1_LastRxError << 8) + data;
-
-} /* uart1_getc */
-
-/*************************************************************************
-Function: uart1_peek()
-Purpose: Returns the next byte (character) of incoming UART data without
- removing it from the ring buffer. That is, successive calls to
- uartN_peek() will return the same character, as will the next
- call to uartN_getc()
-Returns: lower byte: next byte in ring buffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart1_peek(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART1_RxHead == UART1_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- tmptail = (UART1_RxTail + 1) & UART_RX1_BUFFER_MASK;
-
- /* get data from receive buffer */
- data = UART1_RxBuf[tmptail];
-
- return (UART1_LastRxError << 8) + data;
-
-} /* uart1_peek */
-
-/*************************************************************************
-Function: uart1_putc()
-Purpose: write byte to ringbuffer for transmitting via UART
-Input: byte to be transmitted
-Returns: none
-**************************************************************************/
-void uart1_putc(uint8_t data)
-{
-
-#ifdef USART1_LARGE_BUFFER
- uint16_t tmphead;
- uint16_t txtail_tmp;
-
- tmphead = (UART1_TxHead + 1) & UART_TX1_BUFFER_MASK;
-
- do {
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- txtail_tmp = UART1_TxTail;
- }
- } while (tmphead == txtail_tmp); /* wait for free space in buffer */
-#else
- uint16_t tmphead;
-
- tmphead = (UART1_TxHead + 1) & UART_TX1_BUFFER_MASK;
-
- while (tmphead == UART1_TxTail); /* wait for free space in buffer */
-#endif
-
- UART1_TxBuf[tmphead] = data;
- UART1_TxHead = tmphead;
-
- /* enable UDRE interrupt */
- UART1_CONTROL |= _BV(UART1_UDRIE);
-
-} /* uart1_putc */
-
-
-/*************************************************************************
-Function: uart1_puts()
-Purpose: transmit string to UART1
-Input: string to be transmitted
-Returns: none
-**************************************************************************/
-void uart1_puts(const char *s)
-{
- while (*s) {
- uart1_putc(*s++);
- }
-
-} /* uart1_puts */
-
-
-/*************************************************************************
-Function: uart1_puts_p()
-Purpose: transmit string from program memory to UART1
-Input: program memory string to be transmitted
-Returns: none
-**************************************************************************/
-void uart1_puts_p(const char *progmem_s)
-{
- register char c;
-
- while ((c = pgm_read_byte(progmem_s++))) {
- uart1_putc(c);
- }
-
-} /* uart1_puts_p */
-
-
-
-/*************************************************************************
-Function: uart1_available()
-Purpose: Determine the number of bytes waiting in the receive buffer
-Input: None
-Returns: Integer number of bytes in the receive buffer
-**************************************************************************/
-uint16_t uart1_available(void)
-{
- uint16_t ret;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- ret = (UART_RX1_BUFFER_SIZE + UART1_RxHead - UART1_RxTail) & UART_RX1_BUFFER_MASK;
- }
- return ret;
-} /* uart1_available */
-
-
-
-/*************************************************************************
-Function: uart1_flush()
-Purpose: Flush bytes waiting the receive buffer. Actually ignores them.
-Input: None
-Returns: None
-**************************************************************************/
-void uart1_flush(void)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART1_RxHead = UART1_RxTail;
- }
-} /* uart1_flush */
-
-#endif
-
-#endif /* defined(USART1_ENABLED) */
-
-#if defined(USART2_ENABLED)
-
-/*
- * these functions are only for ATmegas with four USART
- */
-#if defined(ATMEGA_USART2)
-
-ISR(UART2_RECEIVE_INTERRUPT)
-/*************************************************************************
-Function: UART2 Receive Complete interrupt
-Purpose: called when the UART2 has received a character
-**************************************************************************/
-{
- uint16_t tmphead;
- uint8_t data;
- uint8_t usr;
- uint8_t lastRxError;
-
-
- /* read UART status register and UART data register */
- usr = UART2_STATUS;
- data = UART2_DATA;
-
- /* */
- lastRxError = (usr & (_BV(FE2)|_BV(DOR2)));
-
- /* calculate buffer index */
- tmphead = (UART2_RxHead + 1) & UART_RX2_BUFFER_MASK;
-
- if (tmphead == UART2_RxTail) {
- /* error: receive buffer overflow */
- lastRxError = UART_BUFFER_OVERFLOW >> 8;
- } else {
- /* store new index */
- UART2_RxHead = tmphead;
- /* store received data in buffer */
- UART2_RxBuf[tmphead] = data;
- }
- UART2_LastRxError = lastRxError;
-}
-
-
-ISR(UART2_TRANSMIT_INTERRUPT)
-/*************************************************************************
-Function: UART2 Data Register Empty interrupt
-Purpose: called when the UART2 is ready to transmit the next byte
-**************************************************************************/
-{
- uint16_t tmptail;
-
-
- if (UART2_TxHead != UART2_TxTail) {
- /* calculate and store new buffer index */
- tmptail = (UART2_TxTail + 1) & UART_TX2_BUFFER_MASK;
- UART2_TxTail = tmptail;
- /* get one byte from buffer and write it to UART */
- UART2_DATA = UART2_TxBuf[tmptail]; /* start transmission */
- } else {
- /* tx buffer empty, disable UDRE interrupt */
- UART2_CONTROL &= ~_BV(UART2_UDRIE);
- }
-}
-
-
-/*************************************************************************
-Function: uart2_init()
-Purpose: initialize UART2 and set baudrate
-Input: baudrate using macro UART_BAUD_SELECT()
-Returns: none
-**************************************************************************/
-void uart2_init(uint16_t baudrate)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART2_TxHead = 0;
- UART2_TxTail = 0;
- UART2_RxHead = 0;
- UART2_RxTail = 0;
- }
-
- /* Set baud rate */
- if (baudrate & 0x8000) {
- UART2_STATUS = (1<<U2X2); //Enable 2x speed
- baudrate &= ~0x8000;
- }
- UBRR2H = (uint8_t) (baudrate>>8);
- UBRR2L = (uint8_t) baudrate;
-
- /* Enable USART receiver and transmitter and receive complete interrupt */
- UART2_CONTROL = _BV(RXCIE2)|(1<<RXEN2)|(1<<TXEN2);
-
- /* Set frame format: asynchronous, 8data, no parity, 1stop bit */
-#ifdef URSEL2
- UCSR2C = (1<<URSEL2)|(3<<UCSZ20);
-#else
- UCSR2C = (3<<UCSZ20);
-#endif
-} /* uart_init */
-
-
-/*************************************************************************
-Function: uart2_getc()
-Purpose: return byte from ringbuffer
-Returns: lower byte: received byte from ringbuffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart2_getc(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART2_RxHead == UART2_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- /* calculate / store buffer index */
-
- tmptail = (UART2_RxTail + 1) & UART_RX2_BUFFER_MASK;
- UART2_RxTail = tmptail;
-
- /* get data from receive buffer */
- data = UART2_RxBuf[tmptail];
-
- return (UART2_LastRxError << 8) + data;
-
-} /* uart2_getc */
-
-/*************************************************************************
-Function: uart2_peek()
-Purpose: Returns the next byte (character) of incoming UART data without
- removing it from the ring buffer. That is, successive calls to
- uartN_peek() will return the same character, as will the next
- call to uartN_getc()
-Returns: lower byte: next byte in ring buffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart2_peek(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART2_RxHead == UART2_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- tmptail = (UART2_RxTail + 1) & UART_RX2_BUFFER_MASK;
-
- /* get data from receive buffer */
- data = UART2_RxBuf[tmptail];
-
- return (UART2_LastRxError << 8) + data;
-
-} /* uart2_peek */
-
-/*************************************************************************
-Function: uart2_putc()
-Purpose: write byte to ringbuffer for transmitting via UART
-Input: byte to be transmitted
-Returns: none
-**************************************************************************/
-void uart2_putc(uint8_t data)
-{
-
-#ifdef USART2_LARGE_BUFFER
- uint16_t tmphead;
- uint16_t txtail_tmp;
-
- tmphead = (UART2_TxHead + 1) & UART_TX2_BUFFER_MASK;
-
- do {
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- txtail_tmp = UART2_TxTail;
- }
- } while (tmphead == txtail_tmp); /* wait for free space in buffer */
-#else
- uint16_t tmphead;
-
- tmphead = (UART2_TxHead + 1) & UART_TX2_BUFFER_MASK;
-
- while (tmphead == UART2_TxTail); /* wait for free space in buffer */
-#endif
-
- UART2_TxBuf[tmphead] = data;
- UART2_TxHead = tmphead;
-
- /* enable UDRE interrupt */
- UART2_CONTROL |= _BV(UART2_UDRIE);
-
-} /* uart2_putc */
-
-
-/*************************************************************************
-Function: uart2_puts()
-Purpose: transmit string to UART2
-Input: string to be transmitted
-Returns: none
-**************************************************************************/
-void uart2_puts(const char *s)
-{
- while (*s)
- uart2_putc(*s++);
-
-} /* uart2_puts */
-
-
-/*************************************************************************
-Function: uart2_puts_p()
-Purpose: transmit string from program memory to UART2
-Input: program memory string to be transmitted
-Returns: none
-**************************************************************************/
-void uart2_puts_p(const char *progmem_s)
-{
- register char c;
-
- while ((c = pgm_read_byte(progmem_s++))) {
- uart2_putc(c);
- }
-
-} /* uart2_puts_p */
-
-
-
-/*************************************************************************
-Function: uart2_available()
-Purpose: Determine the number of bytes waiting in the receive buffer
-Input: None
-Returns: Integer number of bytes in the receive buffer
-**************************************************************************/
-uint16_t uart2_available(void)
-{
- uint16_t ret;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- ret = (UART_RX2_BUFFER_SIZE + UART2_RxHead - UART2_RxTail) & UART_RX2_BUFFER_MASK;
- }
- return ret;
-} /* uart2_available */
-
-
-
-/*************************************************************************
-Function: uart2_flush()
-Purpose: Flush bytes waiting the receive buffer. Actually ignores them.
-Input: None
-Returns: None
-**************************************************************************/
-void uart2_flush(void)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART2_RxHead = UART2_RxTail;
- }
-} /* uart2_flush */
-
-#endif
-
-#endif /* defined(USART2_ENABLED) */
-
-#if defined(USART3_ENABLED)
-
-/*
- * these functions are only for ATmegas with four USART
- */
-#if defined(ATMEGA_USART3)
-
-ISR(UART3_RECEIVE_INTERRUPT)
-/*************************************************************************
-Function: UART3 Receive Complete interrupt
-Purpose: called when the UART3 has received a character
-**************************************************************************/
-{
- uint16_t tmphead;
- uint8_t data;
- uint8_t usr;
- uint8_t lastRxError;
-
- /* read UART status register and UART data register */
- usr = UART3_STATUS;
- data = UART3_DATA;
-
- /* */
- lastRxError = (usr & (_BV(FE3)|_BV(DOR3)));
-
- /* calculate buffer index */
- tmphead = (UART3_RxHead + 1) & UART_RX3_BUFFER_MASK;
-
- if (tmphead == UART3_RxTail) {
- /* error: receive buffer overflow */
- lastRxError = UART_BUFFER_OVERFLOW >> 8;
- } else {
- /* store new index */
- UART3_RxHead = tmphead;
- /* store received data in buffer */
- UART3_RxBuf[tmphead] = data;
- }
- UART3_LastRxError = lastRxError;
-}
-
-
-ISR(UART3_TRANSMIT_INTERRUPT)
-/*************************************************************************
-Function: UART3 Data Register Empty interrupt
-Purpose: called when the UART3 is ready to transmit the next byte
-**************************************************************************/
-{
- uint16_t tmptail;
-
-
- if (UART3_TxHead != UART3_TxTail) {
- /* calculate and store new buffer index */
- tmptail = (UART3_TxTail + 1) & UART_TX3_BUFFER_MASK;
- UART3_TxTail = tmptail;
- /* get one byte from buffer and write it to UART */
- UART3_DATA = UART3_TxBuf[tmptail]; /* start transmission */
- } else {
- /* tx buffer empty, disable UDRE interrupt */
- UART3_CONTROL &= ~_BV(UART3_UDRIE);
- }
-}
-
-
-/*************************************************************************
-Function: uart3_init()
-Purpose: initialize UART3 and set baudrate
-Input: baudrate using macro UART_BAUD_SELECT()
-Returns: none
-**************************************************************************/
-void uart3_init(uint16_t baudrate)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART3_TxHead = 0;
- UART3_TxTail = 0;
- UART3_RxHead = 0;
- UART3_RxTail = 0;
- }
-
- /* Set baud rate */
- if (baudrate & 0x8000) {
- UART3_STATUS = (1<<U2X3); //Enable 2x speed
- baudrate &= ~0x8000;
- }
- UBRR3H = (uint8_t)(baudrate>>8);
- UBRR3L = (uint8_t) baudrate;
-
- /* Enable USART receiver and transmitter and receive complete interrupt */
- UART3_CONTROL = _BV(RXCIE3)|(1<<RXEN3)|(1<<TXEN3);
-
- /* Set frame format: asynchronous, 8data, no parity, 1stop bit */
-#ifdef URSEL3
- UCSR3C = (1<<URSEL3)|(3<<UCSZ30);
-#else
- UCSR3C = (3<<UCSZ30);
-#endif
-} /* uart_init */
-
-
-/*************************************************************************
-Function: uart3_getc()
-Purpose: return byte from ringbuffer
-Returns: lower byte: received byte from ringbuffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart3_getc(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART3_RxHead == UART3_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- /* calculate / store buffer index */
- tmptail = (UART3_RxTail + 1) & UART_RX3_BUFFER_MASK;
- UART3_RxTail = tmptail;
-
- /* get data from receive buffer */
- data = UART3_RxBuf[tmptail];
-
- return (UART3_LastRxError << 8) + data;
-
-} /* uart3_getc */
-
-/*************************************************************************
-Function: uart3_peek()
-Purpose: Returns the next byte (character) of incoming UART data without
- removing it from the ring buffer. That is, successive calls to
- uartN_peek() will return the same character, as will the next
- call to uartN_getc()
-Returns: lower byte: next byte in ring buffer
- higher byte: last receive error
-**************************************************************************/
-uint16_t uart3_peek(void)
-{
- uint16_t tmptail;
- uint8_t data;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- if (UART3_RxHead == UART3_RxTail) {
- return UART_NO_DATA; /* no data available */
- }
- }
-
- tmptail = (UART3_RxTail + 1) & UART_RX3_BUFFER_MASK;
-
- /* get data from receive buffer */
- data = UART3_RxBuf[tmptail];
-
- return (UART3_LastRxError << 8) + data;
-
-} /* uart3_peek */
-
-/*************************************************************************
-Function: uart3_putc()
-Purpose: write byte to ringbuffer for transmitting via UART
-Input: byte to be transmitted
-Returns: none
-**************************************************************************/
-void uart3_putc(uint8_t data)
-{
-
-#ifdef USART3_LARGE_BUFFER
- uint16_t tmphead;
- uint16_t txtail_tmp;
-
- tmphead = (UART3_TxHead + 1) & UART_TX3_BUFFER_MASK;
-
- do {
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- txtail_tmp = UART3_TxTail;
- }
- } while (tmphead == txtail_tmp); /* wait for free space in buffer */
-#else
- uint16_t tmphead;
-
- tmphead = (UART3_TxHead + 1) & UART_TX3_BUFFER_MASK;
-
- while (tmphead == UART3_TxTail); /* wait for free space in buffer */
-#endif
-
- UART3_TxBuf[tmphead] = data;
- UART3_TxHead = tmphead;
-
- /* enable UDRE interrupt */
- UART3_CONTROL |= _BV(UART3_UDRIE);
-
-} /* uart3_putc */
-
-
-/*************************************************************************
-Function: uart3_puts()
-Purpose: transmit string to UART3
-Input: string to be transmitted
-Returns: none
-**************************************************************************/
-void uart3_puts(const char *s)
-{
- while (*s) {
- uart3_putc(*s++);
- }
-
-} /* uart3_puts */
-
-
-/*************************************************************************
-Function: uart3_puts_p()
-Purpose: transmit string from program memory to UART3
-Input: program memory string to be transmitted
-Returns: none
-**************************************************************************/
-void uart3_puts_p(const char *progmem_s)
-{
- register char c;
-
- while ((c = pgm_read_byte(progmem_s++))) {
- uart3_putc(c);
- }
-
-} /* uart3_puts_p */
-
-
-
-/*************************************************************************
-Function: uart3_available()
-Purpose: Determine the number of bytes waiting in the receive buffer
-Input: None
-Returns: Integer number of bytes in the receive buffer
-**************************************************************************/
-uint16_t uart3_available(void)
-{
- uint16_t ret;
-
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- ret = (UART_RX3_BUFFER_SIZE + UART3_RxHead - UART3_RxTail) & UART_RX3_BUFFER_MASK;
- }
- return ret;
-} /* uart3_available */
-
-
-
-/*************************************************************************
-Function: uart3_flush()
-Purpose: Flush bytes waiting the receive buffer. Actually ignores them.
-Input: None
-Returns: None
-**************************************************************************/
-void uart3_flush(void)
-{
- ATOMIC_BLOCK(ATOMIC_FORCEON) {
- UART3_RxHead = UART3_RxTail;
- }
-} /* uart3_flush */
-
-#endif
-
-#endif /* defined(USART3_ENABLED) */
diff --git a/keyboards/bioi/usart.h b/keyboards/bioi/usart.h
deleted file mode 100644
index cc59c7236b..0000000000
--- a/keyboards/bioi/usart.h
+++ /dev/null
@@ -1,436 +0,0 @@
-#ifndef USART_H
-#define USART_H
-
-/************************************************************************
-Title: Interrupt UART library with receive/transmit circular buffers
-Author: Andy Gock
-Software: AVR-GCC 4.1, AVR Libc 1.4
-Hardware: any AVR with built-in UART, tested on AT90S8515 & ATmega8 at 4 Mhz
-License: GNU General Public License
-Usage: see README.md and Doxygen manual
-
-Based on original library by Peter Fluery, Tim Sharpe, Nicholas Zambetti.
-
-https://github.com/andygock/avr-uart
-
-LICENSE:
-
- Copyright (C) 2012 Andy Gock
- Copyright (C) 2006 Peter Fleury
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
-************************************************************************/
-
-/************************************************************************
-uart_available, uart_flush, uart1_available, and uart1_flush functions
-were adapted from the Arduino HardwareSerial.h library by Tim Sharpe on
-11 Jan 2009. The license info for HardwareSerial.h is as follows:
-
- HardwareSerial.h - Hardware serial library for Wiring
- Copyright (c) 2006 Nicholas Zambetti. All right reserved.
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-************************************************************************/
-
-/**
- * @defgroup avr-uart UART Library
- * @code #include <uart.h> @endcode
- *
- * @brief Interrupt UART library using the built-in UART with transmit and receive circular buffers.
- * @see README.md
- *
- * This library can be used to transmit and receive data through the built in UART.
- *
- * An interrupt is generated when the UART has finished transmitting or
- * receiving a byte. The interrupt handling routines use circular buffers
- * for buffering received and transmitted data.
- *
- * The UART_RXn_BUFFER_SIZE and UART_TXn_BUFFER_SIZE constants define
- * the size of the circular buffers in bytes. Note that these constants must be a power of 2.
- *
- * You need to define these buffer sizes as a symbol in your compiler settings or in uart.h
- *
- * See README.md for more detailed information. Especially that relating to symbols: USARTn_ENABLED and USARTn_LARGE_BUFFER
- *
- * @author Andy Gock <andy@gock.net>
- * @note Based on Atmel Application Note AVR306 and original library by Peter Fleury and Tim Sharpe.
- */
-
-/**@{*/
-#include <stdint.h>
-#include <avr/io.h>
-
-#if (__GNUC__ * 100 + __GNUC_MINOR__) < 304
-#error "This library requires AVR-GCC 3.4 or later, update to newer AVR-GCC compiler !"
-#endif
-
-/*
- * constants and macros
- */
-
-/* Enable USART 1, 2, 3 as required */
-/* Can be defined in compiler symbol setup with -D option (preferred) */
-#ifndef USART0_ENABLED
- #define USART0_ENABLED /**< Enable USART0 */
-#endif
-//#define USART1_ENABLED
-//#define USART2_ENABLED
-//#define USART3_ENABLED
-
-/* Set size of receive and transmit buffers */
-
-#ifndef UART_RX0_BUFFER_SIZE
- #define UART_RX0_BUFFER_SIZE 128 /**< Size of the circular receive buffer, must be power of 2 */
-#endif
-#ifndef UART_RX1_BUFFER_SIZE
- #define UART_RX1_BUFFER_SIZE 128 /**< Size of the circular receive buffer, must be power of 2 */
-#endif
-#ifndef UART_RX2_BUFFER_SIZE
- #define UART_RX2_BUFFER_SIZE 128 /**< Size of the circular receive buffer, must be power of 2 */
-#endif
-#ifndef UART_RX3_BUFFER_SIZE
- #define UART_RX3_BUFFER_SIZE 128 /**< Size of the circular receive buffer, must be power of 2 */
-#endif
-
-#ifndef UART_TX0_BUFFER_SIZE
- #define UART_TX0_BUFFER_SIZE 128 /**< Size of the circular transmit buffer, must be power of 2 */
-#endif
-#ifndef UART_TX1_BUFFER_SIZE
- #define UART_TX1_BUFFER_SIZE 128 /**< Size of the circular transmit buffer, must be power of 2 */
-#endif
-#ifndef UART_TX2_BUFFER_SIZE
- #define UART_TX2_BUFFER_SIZE 128 /**< Size of the circular transmit buffer, must be power of 2 */
-#endif
-#ifndef UART_TX3_BUFFER_SIZE
- #define UART_TX3_BUFFER_SIZE 128 /**< Size of the circular transmit buffer, must be power of 2 */
-#endif
-
-/* Check buffer sizes are not too large for 8-bit positioning */
-
-#if (UART_RX0_BUFFER_SIZE > 256 & !defined(USART0_LARGE_BUFFER))
- #error "Buffer too large, please use -DUSART0_LARGE_BUFFER switch in compiler options"
-#endif
-
-#if (UART_RX1_BUFFER_SIZE > 256 & !defined(USART1_LARGE_BUFFER))
- #error "Buffer too large, please use -DUSART1_LARGE_BUFFER switch in compiler options"
-#endif
-
-#if (UART_RX2_BUFFER_SIZE > 256 & !defined(USART2_LARGE_BUFFER))
- #error "Buffer too large, please use -DUSART2_LARGE_BUFFER switch in compiler options"
-#endif
-
-#if (UART_RX3_BUFFER_SIZE > 256 & !defined(USART3_LARGE_BUFFER))
- #error "Buffer too large, please use -DUSART3_LARGE_BUFFER switch in compiler options"
-#endif
-
-/* Check buffer sizes are not too large for *_LARGE_BUFFER operation (16-bit positioning) */
-
-#if (UART_RX0_BUFFER_SIZE > 32768)
- #error "Buffer too large, maximum allowed is 32768 bytes"
-#endif
-
-#if (UART_RX1_BUFFER_SIZE > 32768)
- #error "Buffer too large, maximum allowed is 32768 bytes"
-#endif
-
-#if (UART_RX2_BUFFER_SIZE > 32768)
- #error "Buffer too large, maximum allowed is 32768 bytes"
-#endif
-
-#if (UART_RX3_BUFFER_SIZE > 32768)
- #error "Buffer too large, maximum allowed is 32768 bytes"
-#endif
-
-/** @brief UART Baudrate Expression
- * @param xtalCpu system clock in Mhz, e.g. 4000000L for 4Mhz
- * @param baudRate baudrate in bps, e.g. 1200, 2400, 9600
- */
-#define UART_BAUD_SELECT(baudRate,xtalCpu) (((xtalCpu)+8UL*(baudRate))/(16UL*(baudRate))-1UL)
-
-/** @brief UART Baudrate Expression for ATmega double speed mode
- * @param xtalCpu system clock in Mhz, e.g. 4000000L for 4Mhz
- * @param baudRate baudrate in bps, e.g. 1200, 2400, 9600
- */
-#define UART_BAUD_SELECT_DOUBLE_SPEED(baudRate,xtalCpu) ((((xtalCpu)+4UL*(baudRate))/(8UL*(baudRate))-1)|0x8000)
-
-/* test if the size of the circular buffers fits into SRAM */
-
-#if defined(USART0_ENABLED) && ( (UART_RX0_BUFFER_SIZE+UART_TX0_BUFFER_SIZE) >= (RAMEND-0x60))
- #error "size of UART_RX0_BUFFER_SIZE + UART_TX0_BUFFER_SIZE larger than size of SRAM"
-#endif
-
-#if defined(USART1_ENABLED) && ( (UART_RX1_BUFFER_SIZE+UART_TX1_BUFFER_SIZE) >= (RAMEND-0x60))
- #error "size of UART_RX1_BUFFER_SIZE + UART_TX1_BUFFER_SIZE larger than size of SRAM"
-#endif
-
-#if defined(USART2_ENABLED) && ( (UART_RX2_BUFFER_SIZE+UART_RX2_BUFFER_SIZE) >= (RAMEND-0x60))
- #error "size of UART_RX2_BUFFER_SIZE + UART_TX2_BUFFER_SIZE larger than size of SRAM"
-#endif
-
-#if defined(USART3_ENABLED) && ( (UART_RX3_BUFFER_SIZE+UART_RX3_BUFFER_SIZE) >= (RAMEND-0x60))
- #error "size of UART_RX3_BUFFER_SIZE + UART_TX3_BUFFER_SIZE larger than size of SRAM"
-#endif
-
-/*
-** high byte error return code of uart_getc()
-*/
-#define UART_FRAME_ERROR 0x0800 /**< Framing Error by UART */
-#define UART_OVERRUN_ERROR 0x0400 /**< Overrun condition by UART */
-#define UART_BUFFER_OVERFLOW 0x0200 /**< receive ringbuffer overflow */
-#define UART_NO_DATA 0x0100 /**< no receive data available */
-
-/* Macros, to allow use of legacy names */
-
-/** @brief Macro to initialize USART0 (only available on selected ATmegas) @see uart0_init */
-#define uart_init(b) uart0_init(b)
-
-/** @brief Macro to get received byte of USART0 from ringbuffer. (only available on selected ATmega) @see uart0_getc */
-#define uart_getc() uart0_getc()
-
-/** @brief Macro to peek at next byte in USART0 ringbuffer */
-#define uart_peek() uart0_peek()
-
-/** @brief Macro to put byte to ringbuffer for transmitting via USART0 (only available on selected ATmega) @see uart0_putc */
-#define uart_putc(d) uart0_putc(d)
-
-/** @brief Macro to put string to ringbuffer for transmitting via USART0 (only available on selected ATmega) @see uart0_puts */
-#define uart_puts(s) uart0_puts(s)
-
-/** @brief Macro to put string from program memory to ringbuffer for transmitting via USART0 (only available on selected ATmega) @see uart0_puts_p */
-#define uart_puts_p(s) uart0_puts_p(s)
-
-/** @brief Macro to return number of bytes waiting in the receive buffer of USART0 @see uart0_available */
-#define uart_available() uart0_available()
-
-/** @brief Macro to flush bytes waiting in receive buffer of USART0 @see uart0_flush */
-#define uart_flush() uart0_flush()
-
-/*
-** function prototypes
-*/
-
-/**
- @brief Initialize UART and set baudrate
- @param baudrate Specify baudrate using macro UART_BAUD_SELECT()
- @return none
-*/
-/*extern*/void uart0_init(uint16_t baudrate);
-
-
-/**
- * @brief Get received byte from ringbuffer
- *
- * Returns in the lower byte the received character and in the
- * higher byte the last receive error.
- * UART_NO_DATA is returned when no data is available.
- *
- * @return lower byte: received byte from ringbuffer
- * @return higher byte: last receive status
- * - \b 0 successfully received data from UART
- * - \b UART_NO_DATA
- * <br>no receive data available
- * - \b UART_BUFFER_OVERFLOW
- * <br>Receive ringbuffer overflow.
- * We are not reading the receive buffer fast enough,
- * one or more received character have been dropped
- * - \b UART_OVERRUN_ERROR
- * <br>Overrun condition by UART.
- * A character already present in the UART UDR register was
- * not read by the interrupt handler before the next character arrived,
- * one or more received characters have been dropped.
- * - \b UART_FRAME_ERROR
- * <br>Framing Error by UART
- */
-/*extern*/uint16_t uart0_getc(void);
-
-/**
- * @brief Peek at next byte in ringbuffer
- *
- * Returns the next byte (character) of incoming UART data without removing it from the
- * internal ring buffer. That is, successive calls to uartN_peek() will return the same
- * character, as will the next call to uartN_getc().
- *
- * UART_NO_DATA is returned when no data is available.
- *
- * @return lower byte: next byte in ringbuffer
- * @return higher byte: last receive status
- * - \b 0 successfully received data from UART
- * - \b UART_NO_DATA
- * <br>no receive data available
- * - \b UART_BUFFER_OVERFLOW
- * <br>Receive ringbuffer overflow.
- * We are not reading the receive buffer fast enough,
- * one or more received character have been dropped
- * - \b UART_OVERRUN_ERROR
- * <br>Overrun condition by UART.
- * A character already present in the UART UDR register was
- * not read by the interrupt handler before the next character arrived,
- * one or more received characters have been dropped.
- * - \b UART_FRAME_ERROR
- * <br>Framing Error by UART
- */
-/*extern*/uint16_t uart0_peek(void);
-
-/**
- * @brief Put byte to ringbuffer for transmitting via UART
- * @param data byte to be transmitted
- * @return none
- */
-/*extern*/void uart0_putc(uint8_t data);
-
-
-/**
- * @brief Put string to ringbuffer for transmitting via UART
- *
- * The string is buffered by the uart library in a circular buffer
- * and one character at a time is transmitted to the UART using interrupts.
- * Blocks if it can not write the whole string into the circular buffer.
- *
- * @param s string to be transmitted
- * @return none
- */
-/*extern*/void uart0_puts(const char *s);
-
-
-/**
- * @brief Put string from program memory to ringbuffer for transmitting via UART.
- *
- * The string is buffered by the uart library in a circular buffer
- * and one character at a time is transmitted to the UART using interrupts.
- * Blocks if it can not write the whole string into the circular buffer.
- *
- * @param s program memory string to be transmitted
- * @return none
- * @see uart0_puts_P
- */
-/*extern*/void uart0_puts_p(const char *s);
-
-/**
- * @brief Macro to automatically put a string constant into program memory
- * \param __s string in program memory
- */
-#define uart_puts_P(__s) uart0_puts_p(PSTR(__s))
-
-/** @brief Macro to automatically put a string constant into program memory */
-#define uart0_puts_P(__s) uart0_puts_p(PSTR(__s))
-
-/**
- * @brief Return number of bytes waiting in the receive buffer
- * @return bytes waiting in the receive buffer
- */
-/*extern*/uint16_t uart0_available(void);
-
-/**
- * @brief Flush bytes waiting in receive buffer
- */
-/*extern*/void uart0_flush(void);
-
-
-/** @brief Initialize USART1 (only available on selected ATmegas) @see uart_init */
-/*extern*/void uart1_init(uint16_t baudrate);
-
-/** @brief Get received byte of USART1 from ringbuffer. (only available on selected ATmega) @see uart_getc */
-/*extern*/uint16_t uart1_getc(void);
-
-/** @brief Peek at next byte in USART1 ringbuffer */
-/*extern*/uint16_t uart1_peek(void);
-
-/** @brief Put byte to ringbuffer for transmitting via USART1 (only available on selected ATmega) @see uart_putc */
-/*extern*/void uart1_putc(uint8_t data);
-
-/** @brief Put string to ringbuffer for transmitting via USART1 (only available on selected ATmega) @see uart_puts */
-/*extern*/void uart1_puts(const char *s);
-
-/** @brief Put string from program memory to ringbuffer for transmitting via USART1 (only available on selected ATmega) @see uart_puts_p */
-/*extern*/void uart1_puts_p(const char *s);
-
-/** @brief Macro to automatically put a string constant into program memory of USART1 @see uart1_puts_p */
-#define uart1_puts_P(__s) uart1_puts_p(PSTR(__s))
-
-/** @brief Return number of bytes waiting in the receive buffer of USART1 */
-/*extern*/uint16_t uart1_available(void);
-
-/** @brief Flush bytes waiting in receive buffer of USART1 */
-/*extern*/void uart1_flush(void);
-
-
-/** @brief Initialize USART2 (only available on selected ATmegas) @see uart_init */
-/*extern*/void uart2_init(uint16_t baudrate);
-
-/** @brief Get received byte of USART2 from ringbuffer. (only available on selected ATmega) @see uart_getc */
-/*extern*/uint16_t uart2_getc(void);
-
-/** @brief Peek at next byte in USART2 ringbuffer */
-/*extern*/uint16_t uart2_peek(void);
-
-/** @brief Put byte to ringbuffer for transmitting via USART2 (only available on selected ATmega) @see uart_putc */
-/*extern*/void uart2_putc(uint8_t data);
-
-/** @brief Put string to ringbuffer for transmitting via USART2 (only available on selected ATmega) @see uart_puts */
-/*extern*/void uart2_puts(const char *s);
-
-/** @brief Put string from program memory to ringbuffer for transmitting via USART2 (only available on selected ATmega) @see uart_puts_p */
-/*extern*/void uart2_puts_p(const char *s);
-
-/** @brief Macro to automatically put a string constant into program memory of USART2 @see uart2_puts_p */
-#define uart2_puts_P(__s) uart2_puts_p(PSTR(__s))
-
-/** @brief Return number of bytes waiting in the receive buffer of USART2 */
-/*extern*/uint16_t uart2_available(void);
-
-/** @brief Flush bytes waiting in receive buffer of USART2 */
-/*extern*/void uart2_flush(void);
-
-
-/** @brief Initialize USART3 (only available on selected ATmegas) @see uart_init */
-/*extern*/void uart3_init(uint16_t baudrate);
-
-/** @brief Get received byte of USART3 from ringbuffer. (only available on selected ATmega) @see uart_getc */
-/*extern*/uint16_t uart3_getc(void);
-
-/** @brief Peek at next byte in USART3 ringbuffer */
-/*extern*/uint16_t uart3_peek(void);
-
-/** @brief Put byte to ringbuffer for transmitting via USART3 (only available on selected ATmega) @see uart_putc */
-/*extern*/void uart3_putc(uint8_t data);
-
-/** @brief Put string to ringbuffer for transmitting via USART3 (only available on selected ATmega) @see uart_puts */
-/*extern*/void uart3_puts(const char *s);
-
-/** @brief Put string from program memory to ringbuffer for transmitting via USART3 (only available on selected ATmega) @see uart_puts_p */
-/*extern*/void uart3_puts_p(const char *s);
-
-/** @brief Macro to automatically put a string constant into program memory of USART3 @see uart3_puts_p */
-#define uart3_puts_P(__s) uart3_puts_p(PSTR(__s))
-
-/** @brief Return number of bytes waiting in the receive buffer of USART3 */
-/*extern*/uint16_t uart3_available(void);
-
-/** @brief Flush bytes waiting in receive buffer of USART3 */
-/*extern*/void uart3_flush(void);
-
-/**@}*/
-
-#endif // UART_H
-
diff --git a/keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/config.h b/keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index b4249396da..0000000000
--- a/keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
- XXX, K32, K33, K34, K35, K36, K37, XXX\
-)
diff --git a/keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/boardsource/lulu/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/boardsource/lulu/keymaps/rmeli/config.h b/keyboards/boardsource/lulu/keymaps/rmeli/config.h
deleted file mode 100644
index 171eaed0db..0000000000
--- a/keyboards/boardsource/lulu/keymaps/rmeli/config.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
-Copyright 2022 Rocco Meli <@RMeli>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define MASTER_LEFT // Left side is the master
-#define SPLIT_LED_STATE_ENABLE
-
-#ifdef RGB_MATRIX_ENABLE
-// Configure RGB Matrix
-# define RGB_MATRIX_KEYPRESSES // enable keypress effects
-# define RGB_MATRIX_LED_FLUSH_LIMIT 16
-# define RGB_DISABLE_WHEN_USB_SUSPENDED
-# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
-# define RGB_MATRIX_DEFAULT_HUE 10
-# define RGB_MATRIX_DEFAULT_SAT 255
-# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
-// Disable RGB Matrix effects (from lulu/config.h)
-# undef ENABLE_RGB_MATRIX_ALPHAS_MODS
-# undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-# undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-# undef ENABLE_RGB_MATRIX_BREATHING
-# undef ENABLE_RGB_MATRIX_BAND_SAT
-# undef ENABLE_RGB_MATRIX_BAND_VAL
-// Enable RGB Matrix effects
-# define ENABLE_RGB_MATRIX_BREATHING
-# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-# define ENABLE_RGB_MATRIX_SOLID_COLOR
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#endif
diff --git a/keyboards/boardsource/lulu/keymaps/rmeli/keymap.c b/keyboards/boardsource/lulu/keymaps/rmeli/keymap.c
deleted file mode 100644
index f9be18ee2d..0000000000
--- a/keyboards/boardsource/lulu/keymaps/rmeli/keymap.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
-Copyright 2022 Cole Smith <cole@boadsource.xyz>
-Copyright 2022 Rocco Meli <@RMeli>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include "rmeli.h"
-
-enum layers {
- _QWERTY,
- _COLEMAK_DH,
- _RAISE,
- _LOWER,
- _ADJUST,
-};
-
-#define RAISE MO(_RAISE)
-#define LOWER MO(_LOWER)
-
-#define QWY_DF DF(_QWERTY)
-#define CMK_DF DF(_COLEMAK_DH)
-
-// clang-format off
-#define __________THUMB_LEFT_x4___________ KC_LALT, KC_LGUI, LOWER, KC_SPC
-#define __________THUMB_RIGHT_x4__________ KC_ENT, RAISE, KC_LCTL, KC_RGUI
-// clang-format on
-
-/* LAYOUT
- *
- * ,-----------------------------. ,-----------------------------.
- * | | | | | | | | | | | | | |
- * |----+----+----+----+----+----| |----+----+----+----+----+----|
- * | | | | | | | | | | | | | |
- * |----+----+----+----+----+----| |----+----+----+----+----+----|
- * | | | | | | |-----. ,-----| | | | | | |
- * |----+----+----+----+----+----| | | |----+----+----+----+----+----|
- * | | | | | | |-----| |-----| | | | | | |
- * `----------------------------/ / \ \----------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `--------------''-----' '------''--------------'
- */
-
-// Define wrapper for standard LULU layout
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_wrapper(
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- ___________________QWERTY_L1_x6_____________________, ___________________QWERTY_R1_x6_____________________,
- ___________________QWERTY_L2_x6_____________________, ___________________QWERTY_R2_x6_____________________,
- ___________________QWERTY_L3_x6_____________________, KC_LBRC, KC_RBRC, ___________________QWERTY_R3_x6_____________________,
- __________THUMB_LEFT_x4___________, __________THUMB_RIGHT_x4__________
- ),
-
- [_COLEMAK_DH] = LAYOUT_wrapper(
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- ________________COLEMAK_MOD_DH_L1_x6________________, ________________COLEMAK_MOD_DH_R1_x6________________,
- ________________COLEMAK_MOD_DH_L2_x6________________, ________________COLEMAK_MOD_DH_R2_x6________________,
- ________________COLEMAK_MOD_DH_L3_x6________________, KC_LBRC, KC_RBRC, ________________COLEMAK_MOD_DH_R3_x6________________,
- __________THUMB_LEFT_x4___________, __________THUMB_RIGHT_x4__________
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- ____________________FUNC_LEFT_x6____________________, ____________________FUNC_RIGHT_x6___________________,
- _______, ______________NUMBER_LEFT_x5_______________, ______________NUMBER_RIGHT_x5______________, _______,
- _______, ______________UNICODE_L2_x5________________, ________________NAV_R2_x5__________________, XXXXXXX,
- _______, ______________UNICODE_L3_x5________________, _______, _______, ________________NAV_R3_x5__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- ___________________SYMBOL_LEFT_x6___________________, ___________________SYMBOL_RIGHT_x6__________________,
- _______, ____________NAV_VIM_x4____________, XXXXXXX, ____________________SYMBOL_R2_x6____________________,
- _______, _________________NONE_5x___________________, _______, _______, ____________________SYMBOL_R3_x6____________________,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- QK_BOOT, _________________NONE_5x___________________, ______________________NONE_6x_______________________,
- XXXXXXX, _________________NONE_5x___________________, _______________CONFIG_R1_x5________________, QWY_DF,
- RGB_TOG, ________________RGB_L2_x5__________________, _______________CONFIG_R2_x5________________, XXXXXXX,
- XXXXXXX, ________________RGB_L3_x5__________________, _______, _______, _______________CONFIG_R3_x5________________, CMK_DF,
- _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
-// clang-format on
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/boardsource/lulu/keymaps/rmeli/rules.mk b/keyboards/boardsource/lulu/keymaps/rmeli/rules.mk
deleted file mode 100644
index 035e9814e2..0000000000
--- a/keyboards/boardsource/lulu/keymaps/rmeli/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-TAP_DANCE_ENABLE = yes
-AUTO_SHIFT_ENABLE = no // disable auto-shift with home row mods
-
-UNICODEMAP_ENABLE = yes
-NKRO_ENABLE = yes
-MAGIC_ENABLE = yes
-
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/boardsource/the_mark/keymaps/stanrc85/keymap.c b/keyboards/boardsource/the_mark/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 5b37bb6667..0000000000
--- a/keyboards/boardsource/the_mark/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,98 +0,0 @@
-/* Copyright 2020 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base */
-[_QWERTY] = LAYOUT_all(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_MPLY,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, CA_SCLN,
- KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, CA_QUOT,
- KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, LT_SPCF, LT_SPCF, LT_SPCF, TD_TWIN, MO(_FN2_60), KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT
-),
-[_DEFAULT] = LAYOUT_all(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_MPLY,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, CA_SCLN,
- KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, CA_QUOT,
- KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, LT_SPCF, LT_SPCF, LT_SPCF, TD_TWIN, MO(_FN2_60), KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT
-),
-[_FN1_60] = LAYOUT_all(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, _______,
- _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, _______, KC_HOME, KC_UP, KC_END, KC_PSCR, _______, _______, KC_INS, _______,
- KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______,
- _______, _______, KC_RDP, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-[_FN2_60] = LAYOUT_all(
- RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, RGB_SAI, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TG(_DEFAULT)
-)
-
-};
-
-
-bool rgb_matrix_indicators_user(void) {
- uint8_t layer = get_highest_layer(layer_state);
- switch (layer) {
- case _FN1_60:
- rgb_matrix_set_color(10, 0, 0, 255);
- break;
- case _FN2_60:
- rgb_matrix_set_color(10, 255, 255, 255);
- break;
- case _DEFAULT:
- rgb_matrix_set_color(10, 0, 255, 0);
- break;
- default:
- break;
- }
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(10, 255, 0, 0);
- }
- return false;
-}
-
-void matrix_init_kb(void){
-
-#ifdef RGB_MATRIX_ENABLE
-
- g_led_config = (led_config_t){ {
- // Key Matrix to LED Index
- { 10 , 10 , 9 , 9 , 8 , 7 , 7 , 6 , 5 , 5 , 4 , 3 , 3 , 2 , 1 , 1 },
- { 11 , 11 , 9 , 9 , 8 , 7 , 7 , 6 , 5 , 5 , 4 , 3 , 3 , 2 , 0 , 1 },
- { 12 , 12 , 9 , 9 , 8 , 7 , 7 , 6 , 5 , 5 , 4 , 3 , 3 , 2 , 23 , 1 },
- { 13 , 13 , 14 , 14 , 15 , 16 , 16 , 17 , 18 , 18 , 19 , 20 , 20 , 21 , 22 , 22 },
- { 13 , 13 , 14 , 14 , 15 , 16 , 16 , 17 , 18 , 18 , 19 , 20 , 20 , 21 , 22 , 22 },
- }, {
- // LED Index to Physical Position
- {224, 42}, {224, 21}, {209, 21}, {179, 21}, {164, 21}, {134, 21}, {119, 21}, {89, 21}, {74, 21}, {45, 21}, {30, 21}, {30, 42},
- {30, 64}, {30, 85}, {45, 85}, {74, 85}, {89, 85}, {119, 85}, {134, 85}, {164, 85}, {179, 85}, {209, 85}, {224, 85}, {224, 64}
- }, {
- // LED Index to Flag
- LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
- LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
- LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL
- } };
-
-#endif
- matrix_init_user();
-}
diff --git a/keyboards/boardsource/unicorne/config.h b/keyboards/boardsource/unicorne/config.h
index d0d466bb54..5843a0c847 100644
--- a/keyboards/boardsource/unicorne/config.h
+++ b/keyboards/boardsource/unicorne/config.h
@@ -8,8 +8,6 @@
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
-#define SPLIT_LAYER_STATE_ENABLE
-
#define I2C_DRIVER I2CD1
#define I2C1_SDA_PIN GP22
#define I2C1_SCL_PIN GP23
diff --git a/keyboards/boardsource/unicorne/info.json b/keyboards/boardsource/unicorne/info.json
index aeeb348125..4184c870fe 100644
--- a/keyboards/boardsource/unicorne/info.json
+++ b/keyboards/boardsource/unicorne/info.json
@@ -20,7 +20,12 @@
},
"split": {
"enabled": true,
- "soft_serial_pin": "GP0"
+ "soft_serial_pin": "GP0",
+ "transport": {
+ "sync": {
+ "layer_state": true
+ }
+ }
},
"usb": {
"device_version": "1.0.0",
diff --git a/keyboards/boardwalk/keymaps/nchristus/config.h b/keyboards/boardwalk/keymaps/nchristus/config.h
deleted file mode 100644
index a2530241f4..0000000000
--- a/keyboards/boardwalk/keymaps/nchristus/config.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
diff --git a/keyboards/boardwalk/keymaps/nchristus/keymap.c b/keyboards/boardwalk/keymaps/nchristus/keymap.c
deleted file mode 100644
index df642bcd6f..0000000000
--- a/keyboards/boardwalk/keymaps/nchristus/keymap.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-// Layer shorthand
-#define _QW 0
-
-#define LOWER LT(1, KC_SPC)
-#define RAISE LT(2, KC_ENT)
-
-#define CTRLESC CTL_T(KC_ESC)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Keymap _QWE: Base Layer (Default Layer) */
- [_QW] = LAYOUT_ortho_hhkb(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, _______, _______, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- CTRLESC, KC_A, KC_S, KC_D, KC_F, KC_G, _______, _______, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, _______, _______, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- MO(3), KC_LCTL, KC_LALT, KC_LGUI, RAISE, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
-
- /* Keymap LOWER: Lower Layer */
- [1] = LAYOUT_ortho_hhkb(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______
- ),
-
- /* Keymap RAISE: Raise Layer */
- [2] = LAYOUT_ortho_hhkb(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______
- ),
-
- /* Keymap _FL: Function Layer */
- [3] = LAYOUT_ortho_hhkb(
- QK_BOOT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/boardwalk/keymaps/nchristus/readme.md b/keyboards/boardwalk/keymaps/nchristus/readme.md
deleted file mode 100644
index 73cf19b06f..0000000000
--- a/keyboards/boardwalk/keymaps/nchristus/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default keymap for Boardwalk
diff --git a/keyboards/boardwalk/keymaps/nchristus/rules.mk b/keyboards/boardwalk/keymaps/nchristus/rules.mk
deleted file mode 100644
index b07a6475be..0000000000
--- a/keyboards/boardwalk/keymaps/nchristus/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c b/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c
index f0c75284f7..a2f36a303a 100644
--- a/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c
+++ b/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c
@@ -1,5 +1,4 @@
#include QMK_KEYBOARD_H
-#include "mousekey.h"
#define MEDAPP LT(MEDIA, KC_APP)
diff --git a/keyboards/bt66tech/bt66tech60/config.h b/keyboards/bt66tech/bt66tech60/config.h
index 45693628a6..b49e0a11cd 100644
--- a/keyboards/bt66tech/bt66tech60/config.h
+++ b/keyboards/bt66tech/bt66tech60/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
/*
* Feature disable options
diff --git a/keyboards/buzzard/rev1/config.h b/keyboards/buzzard/rev1/config.h
index f29441fac8..36313a1c6a 100644
--- a/keyboards/buzzard/rev1/config.h
+++ b/keyboards/buzzard/rev1/config.h
@@ -10,7 +10,6 @@
#ifdef OLED_ENABLE
#define OLED_DISPLAY_128X32
-#define SPLIT_OLED_ENABLE
#endif
#ifdef PS2_DRIVER_INTERRUPT
diff --git a/keyboards/buzzard/rev1/info.json b/keyboards/buzzard/rev1/info.json
index d0fa9603f7..0e7d246ae3 100644
--- a/keyboards/buzzard/rev1/info.json
+++ b/keyboards/buzzard/rev1/info.json
@@ -14,7 +14,12 @@
},
"diode_direction": "COL2ROW",
"split": {
- "soft_serial_pin": "D2"
+ "soft_serial_pin": "D2",
+ "transport": {
+ "sync": {
+ "oled": true
+ }
+ }
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
diff --git a/keyboards/canary/canary60rgb/canary60rgb.c b/keyboards/canary/canary60rgb/canary60rgb.c
index c47abf57fd..065268c531 100644
--- a/keyboards/canary/canary60rgb/canary60rgb.c
+++ b/keyboards/canary/canary60rgb/canary60rgb.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, J_14, K_14, L_14 },
{ 0, J_13, K_13, L_13 },
{ 0, J_12, K_12, L_12 },
diff --git a/keyboards/canary/canary60rgb/v1/config.h b/keyboards/canary/canary60rgb/v1/config.h
index e8d0808384..ab5c817000 100644
--- a/keyboards/canary/canary60rgb/v1/config.h
+++ b/keyboards/canary/canary60rgb/v1/config.h
@@ -33,7 +33,6 @@
# define DISABLE_RGB_MATRIX_MULTISPLASH
# define DISABLE_RGB_MATRIX_SOLID_SPLASH
# define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 63
#endif
diff --git a/keyboards/cannonkeys/an_c/config.h b/keyboards/cannonkeys/an_c/config.h
index bea77ceac2..f3d6237a78 100644
--- a/keyboards/cannonkeys/an_c/config.h
+++ b/keyboards/cannonkeys/an_c/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/atlas/config.h b/keyboards/cannonkeys/atlas/config.h
index e8d571f7a9..38f684a861 100644
--- a/keyboards/cannonkeys/atlas/config.h
+++ b/keyboards/cannonkeys/atlas/config.h
@@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/brutalv2_1800/rules.mk b/keyboards/cannonkeys/brutalv2_1800/rules.mk
index 59f8593f18..6e7633bfe0 100644
--- a/keyboards/cannonkeys/brutalv2_1800/rules.mk
+++ b/keyboards/cannonkeys/brutalv2_1800/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = rp2040_flash
+# This file intentionally left blank
diff --git a/keyboards/cannonkeys/caerdroia/rules.mk b/keyboards/cannonkeys/caerdroia/rules.mk
index 59f8593f18..6e7633bfe0 100644
--- a/keyboards/cannonkeys/caerdroia/rules.mk
+++ b/keyboards/cannonkeys/caerdroia/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = rp2040_flash
+# This file intentionally left blank
diff --git a/keyboards/cannonkeys/cloudline/config.h b/keyboards/cannonkeys/cloudline/config.h
index cff0a03945..41e58784b4 100644
--- a/keyboards/cannonkeys/cloudline/config.h
+++ b/keyboards/cannonkeys/cloudline/config.h
@@ -12,7 +12,7 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/db60/config.h b/keyboards/cannonkeys/db60/config.h
index bea77ceac2..f3d6237a78 100644
--- a/keyboards/cannonkeys/db60/config.h
+++ b/keyboards/cannonkeys/db60/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/devastatingtkl/config.h b/keyboards/cannonkeys/devastatingtkl/config.h
index bea77ceac2..f3d6237a78 100644
--- a/keyboards/cannonkeys/devastatingtkl/config.h
+++ b/keyboards/cannonkeys/devastatingtkl/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/instant60/config.h b/keyboards/cannonkeys/instant60/config.h
index bea77ceac2..f3d6237a78 100644
--- a/keyboards/cannonkeys/instant60/config.h
+++ b/keyboards/cannonkeys/instant60/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/instant65/config.h b/keyboards/cannonkeys/instant65/config.h
index 0adcfdfa92..0b1e0948b3 100644
--- a/keyboards/cannonkeys/instant65/config.h
+++ b/keyboards/cannonkeys/instant65/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/malicious_ergo/config.h b/keyboards/cannonkeys/malicious_ergo/config.h
index 70d39892fd..f2314b6077 100644
--- a/keyboards/cannonkeys/malicious_ergo/config.h
+++ b/keyboards/cannonkeys/malicious_ergo/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/obliterated75/config.h b/keyboards/cannonkeys/obliterated75/config.h
index 0adcfdfa92..0b1e0948b3 100644
--- a/keyboards/cannonkeys/obliterated75/config.h
+++ b/keyboards/cannonkeys/obliterated75/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/ortho48/config.h b/keyboards/cannonkeys/ortho48/config.h
index 703975ab86..32412b1d54 100644
--- a/keyboards/cannonkeys/ortho48/config.h
+++ b/keyboards/cannonkeys/ortho48/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
/*
* Feature disable options
diff --git a/keyboards/cannonkeys/ortho48v2/rules.mk b/keyboards/cannonkeys/ortho48v2/rules.mk
index 59f8593f18..6e7633bfe0 100644
--- a/keyboards/cannonkeys/ortho48v2/rules.mk
+++ b/keyboards/cannonkeys/ortho48v2/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = rp2040_flash
+# This file intentionally left blank
diff --git a/keyboards/cannonkeys/ortho60/config.h b/keyboards/cannonkeys/ortho60/config.h
index 703975ab86..32412b1d54 100644
--- a/keyboards/cannonkeys/ortho60/config.h
+++ b/keyboards/cannonkeys/ortho60/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
/*
* Feature disable options
diff --git a/keyboards/cannonkeys/ortho60v2/rules.mk b/keyboards/cannonkeys/ortho60v2/rules.mk
index 59f8593f18..6e7633bfe0 100644
--- a/keyboards/cannonkeys/ortho60v2/rules.mk
+++ b/keyboards/cannonkeys/ortho60v2/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = rp2040_flash
+# This file intentionally left blank
diff --git a/keyboards/cannonkeys/ortho75/config.h b/keyboards/cannonkeys/ortho75/config.h
index 703975ab86..32412b1d54 100644
--- a/keyboards/cannonkeys/ortho75/config.h
+++ b/keyboards/cannonkeys/ortho75/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
/*
* Feature disable options
diff --git a/keyboards/cannonkeys/practice60/config.h b/keyboards/cannonkeys/practice60/config.h
index 703975ab86..32412b1d54 100644
--- a/keyboards/cannonkeys/practice60/config.h
+++ b/keyboards/cannonkeys/practice60/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
/*
* Feature disable options
diff --git a/keyboards/cannonkeys/practice65/config.h b/keyboards/cannonkeys/practice65/config.h
index 703975ab86..32412b1d54 100644
--- a/keyboards/cannonkeys/practice65/config.h
+++ b/keyboards/cannonkeys/practice65/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
/*
* Feature disable options
diff --git a/keyboards/cannonkeys/ripple/config.h b/keyboards/cannonkeys/ripple/config.h
index 68745474c9..d95e23cfaa 100644
--- a/keyboards/cannonkeys/ripple/config.h
+++ b/keyboards/cannonkeys/ripple/config.h
@@ -12,7 +12,7 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/sagittarius/config.h b/keyboards/cannonkeys/sagittarius/config.h
index b48d66fd78..b8cdc797d0 100644
--- a/keyboards/cannonkeys/sagittarius/config.h
+++ b/keyboards/cannonkeys/sagittarius/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/savage65/config.h b/keyboards/cannonkeys/savage65/config.h
index 0adcfdfa92..0b1e0948b3 100644
--- a/keyboards/cannonkeys/savage65/config.h
+++ b/keyboards/cannonkeys/savage65/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/serenity/config.h b/keyboards/cannonkeys/serenity/config.h
index 4b06e24a1c..5f31f2374d 100644
--- a/keyboards/cannonkeys/serenity/config.h
+++ b/keyboards/cannonkeys/serenity/config.h
@@ -21,7 +21,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/tmov2/config.h b/keyboards/cannonkeys/tmov2/config.h
index bea77ceac2..f3d6237a78 100644
--- a/keyboards/cannonkeys/tmov2/config.h
+++ b/keyboards/cannonkeys/tmov2/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c b/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 2a95402863..0000000000
--- a/keyboards/cannonkeys/tmov2/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,173 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-/**
- * Layer Names
- *
- * Layers mostly used for macro keys
- */
-#define _REEDER _M1
-#define _NAV _M2
-#define _MOUSE _M3
-
-/**
- * Keycodes & Macros
- */
-#define TG_BASE TO(_BASE)
-#define TG_REDR TO(_REEDER)
-#define TG_NAV TO(_NAV)
-#define TG_MOUS TO(_MOUSE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /**
- * Base
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│││Tab  │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│Bck│
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │PgU│││HyEsc │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │PgD│││Shift   │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│Shft│ Fn│
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │End│││││││││││Opt│Cmd  │        │          │  Cmd│Ctl│││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_BASE] = LAYOUT_default(
- KC_ESC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_PGUP, HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_PGDN, KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1,
- KC_END, KC_LOPT, KC_LCMD, SPC_RAI, SPC_RAI, KC_RCMD, KC_RCTL
- ),
- /**
- * Reeder
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ P │││     │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │ K │││      │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │ J │││        │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │ N │││││││││││   │     │        │          │     │   │││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_REEDER] = LAYOUT_default(
- KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_J, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_N, _______, _______, _______, _______, _______, _______
- ),
- /**
- * Nav
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ → │││     │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │ ↑ │││      │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │ ↓ │││        │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │ ← │││││││││││   │     │        │          │     │   │││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_NAV] = LAYOUT_default(
- KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LEFT, _______, _______, _______, _______, _______, _______
- ),
- /**
- * Mouse
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │WhU│││     │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │ ↑ │││      │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │ ↓ │││        │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │WhD│││││││││││   │     │        │          │     │   │││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_MOUSE] = LAYOUT_default(
- MC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_DOWN, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- MC_WH_D, _______, _______, _______, _______, _______, _______
- ),
- /**
- * Lower
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Nxt│││Del  │BrD│BrU│Msn│LHP│   │   │   │   │   │   │ ↑ │Mut│SlD│
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │VlU│││HyCaps│   │   │NxW│PvT│Bck│Fwd│NxT│   │   │ ← │ → │ Play │
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │VlD│││        │   │   │   │1PX│1Ps│   │   │   │   │ ↓ │    │   │
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │Prv│││││││││││   │     │        │          │     │   │││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_LOWER] = LAYOUT_default(
- KC_MNXT, KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD,
- KC_VOLU, HY_CAPS, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, _______, KC_LEFT, KC_RGHT, KC_MPLY,
- KC_VOLD, _______, XXXXXXX, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, _______, KC_DOWN, _______, _______,
- KC_MPRV, _______, _______, _______, _______, _______, _______
- ),
-
- /**
- * Raise
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Hom│││~ `  │! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│   │
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │PgU│││      │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│   │   │   │      │
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │PgD│││        │ F7│ F8│ F9│F10│F11│F12│   │   │   │| \│    │   │
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │End│││││││││││   │     │        │          │     │   │││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_RAISE] = LAYOUT_default(
- KC_HOME, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______,
- KC_PGUP, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, _______, _______, _______,
- KC_PGDN, _______, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_BSLS, _______, _______,
- KC_END, _______, _______, _______, _______, _______, _______
- ),
- /**
- * Adjust
- * ┌───┬┬┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Bse│││Make │   │   │EEP│RST│   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │Rdr│││      │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │Nav│││        │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬┬┬┬┴──┬┴───┴┬──┴───┴─┬─┴───┴───┴┬──┴──┬┴──┬┼┬┬┬┬┼┬┬┬┤
- * │Mse│││││││││││   │     │        │          │     │   │││││││││││
- * └───┴┴┴┴┴┴┴┴┴┴┴───┴─────┴────────┴──────────┴─────┴───┴┴┴┴┴┴┴┴┴┴┘
- */
- [_ADJUST] = LAYOUT_default(
- TG_BASE, QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_REDR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_NAV, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_MOUS, _______, _______, _______, _______, _______, _______
- ),
-};
-
-void keyboard_post_init_keymap(void) {
- rgblight_disable_noeeprom();
-}
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/cannonkeys/tsukuyomi/config.h b/keyboards/cannonkeys/tsukuyomi/config.h
index 0adcfdfa92..0b1e0948b3 100644
--- a/keyboards/cannonkeys/tsukuyomi/config.h
+++ b/keyboards/cannonkeys/tsukuyomi/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/cannonkeys/typeb/rules.mk b/keyboards/cannonkeys/typeb/rules.mk
index 59f8593f18..6e7633bfe0 100644
--- a/keyboards/cannonkeys/typeb/rules.mk
+++ b/keyboards/cannonkeys/typeb/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = rp2040_flash
+# This file intentionally left blank
diff --git a/keyboards/capsunlocked/cu75/config.h b/keyboards/capsunlocked/cu75/config.h
index b8cd9eeebb..b9449c4714 100644
--- a/keyboards/capsunlocked/cu75/config.h
+++ b/keyboards/capsunlocked/cu75/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define BACKLIGHT_PWM_MAP {8, 16, 40, 55, 70, 128, 200, 255}
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/capsunlocked/cu75/cu75.c b/keyboards/capsunlocked/cu75/cu75.c
index c894d18602..f980b0d9e1 100644
--- a/keyboards/capsunlocked/cu75/cu75.c
+++ b/keyboards/capsunlocked/cu75/cu75.c
@@ -1,15 +1,8 @@
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
#include "cu75.h"
-#include "debug.h"
-#include "../lfkeyboards/issi.h"
-#include "../lfkeyboards/TWIlib.h"
-#include "../lfkeyboards/lighting.h"
+#include <avr/wdt.h>
#ifdef AUDIO_ENABLE
float test_sound[][2] = SONG(STARTUP_SOUND);
-#include "audio.h"
#endif
uint16_t click_hz = CLICK_HZ;
@@ -34,9 +27,6 @@ void matrix_init_kb(void)
setPinOutput(C6);
writePinLow(C6);
#endif
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
}
void matrix_scan_kb(void)
@@ -44,30 +34,6 @@ void matrix_scan_kb(void)
#ifdef WATCHDOG_ENABLE
wdt_reset();
#endif
-#ifdef ISSI_ENABLE
- // switch/underglow lighting update
- static uint32_t issi_device = 0;
- static uint32_t twi_last_ready = 0;
- if(twi_last_ready > 1000){
- // Its been way too long since the last ISSI update, reset the I2C bus and start again
- dprintf("TWI failed to recover, TWI re-init\n");
- twi_last_ready = 0;
- TWIInit();
- force_issi_refresh();
- }
- if(isTWIReady()){
- twi_last_ready = 0;
- // If the i2c bus is available, kick off the issi update, alternate between devices
- update_issi(issi_device, issi_device);
- if(issi_device){
- issi_device = 0;
- }else{
- issi_device = 3;
- }
- }else{
- twi_last_ready++;
- }
-#endif
matrix_scan_user();
}
@@ -92,7 +58,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
}
if (keycode == QK_BOOT) {
reset_keyboard_kb();
- } else {
}
return process_record_user(keycode, record);
}
@@ -105,11 +70,3 @@ void reset_keyboard_kb(void){
#endif
reset_keyboard();
}
-
-// LFK lighting info
-const uint8_t switch_matrices[] = {0, 1};
-const uint8_t rgb_matrices[] = {6, 7};
-const uint8_t rgb_sequence[] = {
- 24, 23, 22, 21, 20, 19, 18, 17, 1, 2, 3, 4, 5,
- 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 9
-};
diff --git a/keyboards/capsunlocked/cu75/cu75.h b/keyboards/capsunlocked/cu75/cu75.h
index d17c1da26f..36797efd8f 100644
--- a/keyboards/capsunlocked/cu75/cu75.h
+++ b/keyboards/capsunlocked/cu75/cu75.h
@@ -1,23 +1,6 @@
#pragma once
#include "quantum.h"
-#include "matrix.h"
-#include <avr/sfr_defs.h>
-
-typedef struct RGB_Color {
- uint16_t red;
- uint16_t green;
- uint16_t blue;
-} RGB_Color;
-
-typedef struct Layer_Info {
- uint32_t layer;
- uint32_t mask;
- RGB_Color color;
-} Layer_Info;
-
-extern const uint32_t layer_count;
-extern const Layer_Info layer_info[];
#define CLICK_HZ 500
#define CLICK_MS 2
diff --git a/keyboards/capsunlocked/cu75/info.json b/keyboards/capsunlocked/cu75/info.json
index 24aed787ef..25e3ca049f 100644
--- a/keyboards/capsunlocked/cu75/info.json
+++ b/keyboards/capsunlocked/cu75/info.json
@@ -13,30 +13,6 @@
"rows": ["F1", "B7", "B3", "D2", "D3", "B2"]
},
"diode_direction": "COL2ROW",
- "backlight": {
- "driver": "custom",
- "levels": 8
- },
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 24,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/capsunlocked/cu75/keymaps/default/rules.mk b/keyboards/capsunlocked/cu75/keymaps/default/rules.mk
index 483baa7993..b4a28dd964 100644
--- a/keyboards/capsunlocked/cu75/keymaps/default/rules.mk
+++ b/keyboards/capsunlocked/cu75/keymaps/default/rules.mk
@@ -4,10 +4,5 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = yes # Disable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = yes # Disable RGB underlight
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/capsunlocked/cu75/keymaps/iso/rules.mk b/keyboards/capsunlocked/cu75/keymaps/iso/rules.mk
index 0058113605..c692135bf3 100644
--- a/keyboards/capsunlocked/cu75/keymaps/iso/rules.mk
+++ b/keyboards/capsunlocked/cu75/keymaps/iso/rules.mk
@@ -4,10 +4,5 @@ EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = yes # Console for debug(+400)
COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes
-# BACKLIGHT_ENABLE = no # Disable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = no # Disable RGB underlight
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = no # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = yes # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/capsunlocked/cu75/post_rules.mk b/keyboards/capsunlocked/cu75/post_rules.mk
index a5d9746664..1a3c10d3a1 100644
--- a/keyboards/capsunlocked/cu75/post_rules.mk
+++ b/keyboards/capsunlocked/cu75/post_rules.mk
@@ -1,7 +1,3 @@
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
diff --git a/keyboards/capsunlocked/cu75/rules.mk b/keyboards/capsunlocked/cu75/rules.mk
index cf757fc166..e69de29bb2 100644
--- a/keyboards/capsunlocked/cu75/rules.mk
+++ b/keyboards/capsunlocked/cu75/rules.mk
@@ -1,3 +0,0 @@
-# TODO: These boards need to be converted to RGB Matrix
-VPATH += keyboards/lfkeyboards
-SRC = TWIlib.c issi.c lighting.c
diff --git a/keyboards/centromere/keymaps/mattly/keymap.c b/keyboards/centromere/keymaps/mattly/keymap.c
deleted file mode 100644
index bee7e98e12..0000000000
--- a/keyboards/centromere/keymaps/mattly/keymap.c
+++ /dev/null
@@ -1,55 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "mattly.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- // I apparently soldered in my switches on the wrong sides of the boards, so this is mirrored
-
- [_BASE_MAC] = LAYOUT_split_3x6_3(
- KC_SCLN, KC_P, O_CTL, I_ALT, U_GUI, KC_Y, KC_T, R_GUI, E_ALT, W_CTL, KC_Q, KC_BSPC,
- KC_QUOT, MINSCTL, L_ALT, K_GUI, J_SFT, KC_H, KC_G, F_SFT, D_GUI, S_ALT, A_CTL, KC_CAPS,
- KC_ENT, KC_SLSH, KC_DOT, KC_COMM, KC_M, KC_N, KC_B, KC_V, KC_C, KC_X, KC_Z, NAVLOCK,
- DEL_WRP, BSP_SYM, SPC_SFT, SPC_SFT, TAB_NUM, ESC_HYP
- ),
-
- [_OVER_WIN] = LAYOUT_split_3x6_3(
- _______, _______, O_GUI, _______, U_CTL, _______, _______, R_CTL, _______, W_GUI, _______, _______,
- _______, MINSGUI, _______, K_CTL, _______, _______, _______, _______, D_CTL, _______, A_GUI, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
-
- [_SYMBOL] = LAYOUT_split_3x6_3(
- _______, XXXXXXX, KC_ASTR, KC_PLUS, KC_RABK, KC_LABK, KC_RBRC, KC_LBRC, KC_TILD, KC_GRV, KC_AMPR, _______,
- _______, KC_UNDS, KC_AT, KC_EXLM, KC_COLN, KC_SCLN, KC_RPRN, KC_LPRN, KC_EQL, KC_PERC, KC_DLR, _______,
- _______, KC_QUES, KC_BSLS, KC_PIPE, KC_DQUO, KC_QUOT, KC_RCBR, KC_LCBR, KC_HASH, KC_CIRC, KC_HASH, XXXXXXX,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_NAVNUM] = LAYOUT_split_3x6_3(
- KC_PLUS, KC_DOT, KC_P9, KC_P8, KC_P7, KC_DLR, KC_PGUP, M_FWORD, KC_UP, M_BWORD, M_NAVFW, M_NXWIN,
- KC_MINS, KC_EQL, KC_P6, KC_P5, KC_P4, KC_PERC, KC_PGDN, KC_RGHT, KC_DOWN, KC_LEFT, M_NAVBK, M_PVWIN,
- KC_ASTR, KC_COMM, KC_P3, KC_P2, KC_P1, KC_P0, M_NXTAB, KC_END, XXXXXXX, KC_HOME, M_PVTAB, _______,
- KC_P0, _______, _______, _______, _______, _______
- ),
- [_NAVNUM_WIN] = LAYOUT_split_3x6_3(
- _______, _______, _______, _______, _______, _______, _______, W_FWORD, _______, W_BWORD, W_NAVFW, W_NXWIN,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, W_NAVBK, W_PVWIN,
- _______, _______, _______, _______, _______, _______, W_NXTAB, _______, _______, _______, W_PVTAB, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_FUNCT] = LAYOUT_split_3x6_3(
- KC_F15, KC_F12, KC_F9, KC_F8, KC_F7, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT,
- KC_F14, KC_F11, KC_F6, KC_F5, KC_F4, KC_MUTE, XXXXXXX, TOG_WIN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_F13, KC_F10, KC_F3, KC_F2, KC_F1, KC_VOLD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, _______, _______, _______, _______, _______
- ),
- [_FUNCT_WIN] = LAYOUT_split_3x6_3(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-};
diff --git a/keyboards/centromere/keymaps/mattly/rules.mk b/keyboards/centromere/keymaps/mattly/rules.mk
deleted file mode 100644
index 0a5b666e85..0000000000
--- a/keyboards/centromere/keymaps/mattly/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-MOUSEKEY_ENABLE = no
diff --git a/keyboards/centromere/rules.mk b/keyboards/centromere/rules.mk
index 2171d801e5..26081e4132 100644
--- a/keyboards/centromere/rules.mk
+++ b/keyboards/centromere/rules.mk
@@ -18,4 +18,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/checkerboards/quark/keymaps/ajp10304/keymap.c b/keyboards/checkerboards/quark/keymaps/ajp10304/keymap.c
deleted file mode 100644
index b5b4721ce6..0000000000
--- a/keyboards/checkerboards/quark/keymaps/ajp10304/keymap.c
+++ /dev/null
@@ -1,219 +0,0 @@
-/* Copyright 2021 Alan Pocklington
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "ajp10304.h"
-#include "keymap_uk.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ;: | Enter|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shft | Z | X | C | V | B | N | M | ,< | .> | /? | Shft |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_ortho_4x12(
- LT(_NUMPAD, KC_ESC), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
- MT(MOD_LSFT, KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MT(MOD_RSFT, KC_ENT) ,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT ,
- MO(_FUNC), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LSFT, KC_BTN2, KC_RCTL, MO(_FUNC2)
-),
-
-/* Colemak-DHm
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | F | P | B | J | L | U | Y | ;: | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | R | S | T | G | M | N | E | I | O | Enter|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shft | Z | X | C | D | V | K | H | ,< | .> | /? | Shft |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
- * `-----------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_ortho_4x12(
- LT(_NUMPAD, KC_ESC), KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC ,
- MT(MOD_LSFT, KC_TAB), KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, MT(MOD_RSFT, KC_ENT) ,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT ,
- MO(_FUNC), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LSFT, KC_BTN2, KC_RCTL, MO(_FUNC2)
-),
-
-/* Function
- * ,-----------------------------------------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn |
- * `-----------------------------------------------------------------------------------'
- */
-[_FUNC] = LAYOUT_ortho_4x12(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 ,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, UK_TILD, KC_INSERT ,
- KC_LSFT, KC_NUBS, KC_GRAVE, KC_NONUS_HASH, KC_PAST, KC_MINS, KC_EQL, KC_BSLS, KC_LBRC, KC_RBRC, KC_QUOT, MT(MOD_RSFT, KC_ENT) ,
- _______, _______, _______, _______, _______, _______, _______, MO(_MOUSE), _______, _______, _______, _______
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | DEL | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ! | " | £ | $ | % | ^ | & | * | ( | ) |WrdDel|WrdBks|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| \| | `¬ | #~ | '@ | -_ | =+ | #~ | [{ | ]} | '@ |Shift |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | |Lower | Del |Space | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_ortho_4x12(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_BSPC ,
- LSFT(KC_1), LSFT(KC_2), LSFT(KC_3), LSFT(KC_4), LSFT(KC_5), LSFT(KC_6), LSFT(KC_7), LSFT(KC_8), LSFT(KC_9), LSFT(KC_0), LCTL(KC_DEL), LCTL(KC_BSPC) ,
- SC_LSPO, KC_NUBS, KC_GRAVE, KC_NONUS_HASH, KC_QUOT, KC_MINS, KC_EQL, KC_NONUS_HASH, KC_LBRC, KC_RBRC, KC_QUOT, MT(MOD_RSFT, KC_ENT) ,
- _______, _______, _______, _______, _______, KC_DEL, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | { | } | | |< | LEFT | DOWN |RIGHT | >| |ZOOM -|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Mouse| | | | | Alt | Enter|Raise | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_ortho_4x12(
- KC_GRV, XXXXXXX, M_WORD_SEL, KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX, KC_PGUP, KC_HOME, KC_PGDN, XXXXXXX, KC_PSCR ,
- KC_GRV, XXXXXXX, XXXXXXX, LSFT(KC_9), LSFT(KC_0), XXXXXXX, XXXXXXX, KC_HOME, KC_UP, KC_END, XXXXXXX, LCTL(LSFT(KC_EQL)) ,
- _______, XXXXXXX, XXXXXXX, LSFT(KC_LBRC), LSFT(KC_RBRC), XXXXXXX, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), LCTL(KC_MINS) ,
- MO(_MOUSE), _______, _______, _______, _______, KC_LALT, KC_ENT, _______, XXXXXXX, _______, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,------------------------------------------------------------------------------------.
- * | ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+-------|
- * | CAPS | | | | | PLAY1| PLAY2| Mute | Vol+ | Play | |Qwerty |
- * |------+------+------+------+------+------|------+------+------+------+------+-------|
- * | PC/MC| | | | | STOP | STOP | Prev | Vol- | Next | |Colemak|
- * |------+------+------+------+------+------+------+------+------+------+------+-------|
- * | | | | | | | | | | | |
- * `------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_ortho_4x12(
- M_CUSTOM, QK_BOOT, QWERTY, BL_ON, BL_OFF, DM_REC1, DM_REC2, _______, _______, _______, _______, KC_DEL ,
- KC_CAPS, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, DM_PLY1, DM_PLY2, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, KC_MEDIA_PLAY_PAUSE, _______, QWERTY ,
- TG(_MAC), RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, DM_RSTP, DM_RSTP, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK, _______, COLEMAK ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Mouse
- * ,-----------------------------------------------------------------------------------.
- * | ESC | | | | | | | | BTN3 | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN |RIGHT | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_MOUSE] = LAYOUT_ortho_4x12(
- KC_ESC , _______, _______, _______, _______, _______, _______, _______, KC_MS_BTN3, _______, _______, _______,
- KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, _______, _______,
- KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Num Pad
- * ,-----------------------------------------------------------------------------------.
- * | ESC | | | | | |NMLOCK| 7 | 8 | 9 | / | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | 4 | 5 | 6 | * | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | 1 | 2 | 3 | + | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | 0 | . | , | - | |
- * `-----------------------------------------------------------------------------------'
- */
-[_NUMPAD] = LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, KC_NUM, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_SLASH, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_ASTERISK, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_PLUS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_0, KC_KP_DOT, KC_COMM, KC_KP_MINUS, _______
-),
-
-/* Function 2 (Right hand side)
- * ,-----------------------------------------------------------------------------------.
- * | | |WRDSEL| | | | LNDEL| | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | LNSEL| DUP | | | | |LNJOIN| | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | UNDO | CUT | COPY | PASTE| | | | | | | MODE |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_FUNC2] = LAYOUT_ortho_4x12(
- _______, _______, M_WORD_SEL, _______, _______, _______, M_LINE_DEL, _______, _______, _______, _______, _______,
- _______, _______, M_LINE_SEL, M_DUP, _______, _______, _______, M_JOIN, _______, _______, _______, _______,
- _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, _______, _______, _______, _______, M_MODE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MAC]= LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- MFNC, _______, _______, _______, MLWR, _______, _______, MRSE, _______, _______, _______, MFNC2
-),
-
-[_MLWR] = LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MRSE] = LAYOUT_ortho_4x12(
- _______, _______, M_WORD_SEL_MAC, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, LCTL(KC_A), _______, LCTL(KC_E), _______, LGUI(KC_EQL) ,
- _______, _______, _______, _______, _______, _______, LALT(KC_LEFT), _______, _______, _______, LALT(KC_RIGHT), LGUI(KC_MINS) ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MFNC]= LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, LGUI(KC_PENT) ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MFNC2] = LAYOUT_ortho_4x12(
- _______, _______, M_WORD_SEL_MAC, _______, _______, _______, M_LINE_DEL_MAC, _______, _______, _______, _______, _______,
- _______, _______, M_LINE_SEL_MAC, M_DUP_MAC, _______, _______, _______, M_JOIN_MAC, _______, _______, _______, _______,
- _______, LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), _______, _______, _______, _______, _______, _______, M_MODE_MAC,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
diff --git a/keyboards/checkerboards/quark/keymaps/ajp10304/readme.md b/keyboards/checkerboards/quark/keymaps/ajp10304/readme.md
deleted file mode 100644
index 5c9169fa47..0000000000
--- a/keyboards/checkerboards/quark/keymaps/ajp10304/readme.md
+++ /dev/null
@@ -1,126 +0,0 @@
-# AJP10304 Custom Quark Layout
-# Also available for the Planck, JJ40 and Atreus50
-
-**Note:** In the tables below where there are two characters on a key,
-the second is the output when shift is applied.
-
-**Note:** The below tables assume a UK layout.
-
-#### Flashing
-Refer to the README.md of the keyboard you want to flash.
-
-##### Main Qwerty Layer
-
-* Tab: when held, operates as shift.
-* Enter: when held, operates as shift.
-* MENU: perform right-click
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:|
-| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
-| Tab | A | S | D | F | G | H | J | K | L | ;: | Enter|
-| Shft | Z | X | C | V | B | N | M | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
-
-##### Main Colemak-DHm Layer
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:|:---:|:-----:|:----:|:-----:|:-----:|:-----:|:----:|:----:| ----:|
-| Esc | Q | W | F | P | B | J | L | U | Y | ;: | Bksp |
-| Tab | A | R | S | T | G | M | N | E | I | O | Enter|
-| Shft | Z | X | C | D | V | K | H | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI | Lower | Bksp | Space | Raise | Shift | MENU | Ctrl | Fn2 |
-
-##### Function Layer
-Activated when `fn` held in the above `qwerty` layer.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
-| Shift | \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn2 |
-
-##### Lower Layer
-Activated when `Lower` is held in the above `qwerty` layer.
-
-* Numbers are along the top row, their shifted counterparts are on row 2.
-* WrdBks: `backspace` with `ctrl` applied. I.e. delete a word.
-* WrdDel: `delete` with `ctrl` applied. I.e. forward delete a word.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | DEL | Bksp |
-| ! | " | £ | $ | % | ^ | & | * | ( | ) |WrdDel|WrdBks|
-| Shift | \| | `¬ | #~ | '@ | -_ | =+ | #~ | [{ | ]} | '@ |Shift |
-| | | | |Lower | Del |Space | | Next | Vol- | Vol+ | Play |
-
-##### Raise Layer
-Activated when `Raise` is held in the above `qwerty` layer.
-
-* Preferred layer for typing brackets.
-* Allows for cursor navigation to be used solely with the right hand.
-* WRDSEL: Select the word where the cursor is.
-* |< and >|: Apply `ctrl` to `left` and `right` respectively for word jumping.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
-| ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
-| ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
-| | | | { | } | |&#124;<| LEFT | DOWN |RIGHT |>&#124;|ZOOM -|
-| Mouse | | | | | Alt | Enter |Raise | | | | |
-
-##### Lower + Raise
-Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
-
-* Audio controls in the same position as cursor keys from the `Raise` layer.
-* ????: Runs a macro for outputting a text string. Do not use this store passwords.
-* Reset: Enter bootloader for flashing firmware to the keyboard.
-* CAPS: Toggle caps lock.
-* Macro functions: Allows recording of macros. To start recording the macro, press either REC1 or REC2.
-To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
-* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
-MRSE with RAISE, MFNC with FUNC and MFNC2 with FUNC2 respectively.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|:-------:|
-| ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
-| CAPS | | | | | PLAY1|PLAY2 | Mute | Vol+ | Play | | Qwerty |
-| MAC | | | | | STOP1|STOP2 | Prev | Vol- | Next | | Colemak |
-| | | | | | | | | DYN | | | |
-
-##### Function 2 Layer
-Activated when `fn` held in the above `qwerty` layer.
-* WRDSEL: Select the word where the cursor is.
-* LNDEL: Delete the line where the cursor is.
-* LNSEL: Select the line where the cursor is.
-* DUP: Duplicate the selected text.
-* LNJOIN: Join the line where the cursor is with the following line.
-* MODE: Print either `PC` or `OSX` depending on what layer mode is active.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | |WRDSEL| | | | LNDEL| | | | | |
-| | | LNSEL| DUP | | | | |LNJOIN| | | |
-| | UNDO | CUT | COPY | PASTE| | | | | | | MODE |
-| | | | | | | | | | | | |
-
-##### Mouse Layer
-Activated when `fn` and `raise` held together.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| ESC | | | | | | W_L | W_UP | BTN3 | W_DWN| W_R | |
-| ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
-| ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN | RIGHT| | |
-| | | | | | | | | | | | |
-
-##### Number Pad Layout
-Activated when holding `Esc` key.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | | | | | |NMLOCK| 7 | 8 | 9 | / | |
-| | | | | | | | 4 | 5 | 6 | * | |
-| | | | | | | | 1 | 2 | 3 | + | |
-| | | | | | | | 0 | . | , | - | |
diff --git a/keyboards/checkerboards/quark/keymaps/ajp10304/rules.mk b/keyboards/checkerboards/quark/keymaps/ajp10304/rules.mk
deleted file mode 100644
index 6c605daecf..0000000000
--- a/keyboards/checkerboards/quark/keymaps/ajp10304/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-MOUSEKEY_ENABLE = yes
diff --git a/keyboards/chord/zero/keymaps/default/keymap.c b/keyboards/chord/zero/keymaps/default/keymap.c
index a1edbe0cff..1134f264bc 100644
--- a/keyboards/chord/zero/keymaps/default/keymap.c
+++ b/keyboards/chord/zero/keymaps/default/keymap.c
@@ -2,7 +2,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
diff --git a/keyboards/chosfox/cf81/cf81.c b/keyboards/chosfox/cf81/cf81.c
index ab8afd0c63..ad7ec9bc55 100644
--- a/keyboards/chosfox/cf81/cf81.c
+++ b/keyboards/chosfox/cf81/cf81.c
@@ -18,8 +18,8 @@
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/chosfox/cf81/config.h b/keyboards/chosfox/cf81/config.h
index b1ea8bba20..ae0d87d935 100644
--- a/keyboards/chosfox/cf81/config.h
+++ b/keyboards/chosfox/cf81/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 4 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
@@ -32,12 +29,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
diff --git a/keyboards/chosfox/cf81/info.json b/keyboards/chosfox/cf81/info.json
index 827347f41e..5dff610071 100644
--- a/keyboards/chosfox/cf81/info.json
+++ b/keyboards/chosfox/cf81/info.json
@@ -10,7 +10,11 @@
"suspend_wakeup_delay": 400
},
"eeprom": {
- "driver": "wear_leveling"
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
},
"processor": "WB32FQ95",
"bootloader": "wb32-dfu",
@@ -35,7 +39,7 @@
]
},
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"animations": {
"breathing": true,
"cycle_all": true,
diff --git a/keyboards/chosfox/cf81/rules.mk b/keyboards/chosfox/cf81/rules.mk
index 002458405e..6e7633bfe0 100644
--- a/keyboards/chosfox/cf81/rules.mk
+++ b/keyboards/chosfox/cf81/rules.mk
@@ -1 +1 @@
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/chromatonemini/chromatonemini.c b/keyboards/chromatonemini/chromatonemini.c
index d7dc33a0e0..200ed31d36 100644
--- a/keyboards/chromatonemini/chromatonemini.c
+++ b/keyboards/chromatonemini/chromatonemini.c
@@ -19,66 +19,6 @@
#ifdef RGB_MATRIX_ENABLE
# define NO_LED 255
-led_config_t g_led_config = {
- {
-#if 0
- // register bottom two rows
- { 0, 4, 3, 2, 1, 41, 5, NO_LED },
- { 40, 6, 39, 7, 38, 8, 37, NO_LED },
- { 9, 36, 10, 35, 11, 34, 12, NO_LED },
- { 33, 13, 32, 14, 31, 15, 30, NO_LED },
- { 16, 29, 17, 28, 18, 27, 19, NO_LED },
- { 26, 20, 25, 21, 24, 22, 23, NO_LED }
-
- // register middle two rows
- { 0, 4, 3, 2, 1, 78, 42, NO_LED },
- { 77, 43, 76, 44, 75, 45, 74, NO_LED },
- { 46, 73, 47, 72, 48, 71, 49, NO_LED },
- { 70, 50, 69, 51, 68, 52, 67, NO_LED },
- { 53, 66, 54, 65, 55, 64, 56, NO_LED },
- { 63, 57, 62, 58, 61, 59, 60, NO_LED }
-
- // register top and bottom rows
- { 0, 4, 3, 2, 1, 115, 5, NO_LED },
- { 114, 6, 113, 7, 112, 8, 111, NO_LED },
- { 9, 110, 10, 109, 11, 108, 12, NO_LED },
- { 107, 13, 106, 14, 105, 15, 104, NO_LED },
- { 16, 103, 17, 102, 18, 101, 19, NO_LED },
- { 100, 20, 99, 21, 98, 22, 97, NO_LED }
-#else
- // register top two rows
- { 0, 4, 3, 2, 1, 115, 79, NO_LED },
- { 114, 80, 113, 81, 112, 82, 111, NO_LED },
- { 83, 110, 84, 109, 85, 108, 86, NO_LED },
- { 107, 87, 106, 88, 105, 89, 104, NO_LED },
- { 90, 103, 91, 102, 92, 101, 93, NO_LED },
- { 100, 94, 99, 95, 98, 96, 97, NO_LED }
-#endif
- }, {
- { 14, 12 },
- { 14, 36 },
- { 19, 48 }, { 9, 48 },
- { 14, 60 },
- { 39, 60 }, { 49, 60 }, { 59, 60 }, { 69, 60 }, { 79, 60 }, { 89, 60 }, { 99, 60 }, { 109, 60 }, { 119, 60 }, { 129, 60 }, { 139, 60 }, { 149, 60 }, { 159, 60 }, { 169, 60 }, { 179, 60 }, { 189, 60 }, { 199, 60 }, { 209, 60 },
- { 214, 48 }, { 204, 48 }, { 194, 48 }, { 184, 48 }, { 174, 48 }, { 164, 48 }, { 154, 48 }, { 144, 48 }, { 134, 48 }, { 124, 48 }, { 114, 48 }, { 104, 48 }, { 94, 48 }, { 84, 48 }, { 74, 48 }, { 64, 48 }, { 54, 48 }, { 44, 48 }, { 34, 48 },
- { 39, 36 }, { 49, 36 }, { 59, 36 }, { 69, 36 }, { 79, 36 }, { 89, 36 }, { 99, 36 }, { 109, 36 }, { 119, 36 }, { 129, 36 }, { 139, 36 }, { 149, 36 }, { 159, 36 }, { 169, 36 }, { 179, 36 }, { 189, 36 }, { 199, 36 }, { 209, 36 },
- { 214, 24 }, { 204, 24 }, { 194, 24 }, { 184, 24 }, { 174, 24 }, { 164, 24 }, { 154, 24 }, { 144, 24 }, { 134, 24 }, { 124, 24 }, { 114, 24 }, { 104, 24 }, { 94, 24 }, { 84, 24 }, { 74, 24 }, { 64, 24 }, { 54, 24 }, { 44, 24 }, { 34, 24 },
- { 39, 12 }, { 49, 12 }, { 59, 12 }, { 69, 12 }, { 79, 12 }, { 89, 12 }, { 99, 12 }, { 109, 12 }, { 119, 12 }, { 129, 12 }, { 139, 12 }, { 149, 12 }, { 159, 12 }, { 169, 12 }, { 179, 12 }, { 189, 12 }, { 199, 12 }, { 209, 12 },
- { 214, 0 }, { 204, 0 }, { 194, 0 }, { 184, 0 }, { 174, 0 }, { 164, 0 }, { 154, 0 }, { 144, 0 }, { 134, 0 }, { 124, 0 }, { 114, 0 }, { 104, 0 }, { 94, 0 }, { 84, 0 }, { 74, 0 }, { 64, 0} , { 54, 0 }, { 44, 0 }, { 34, 0 }
- }, {
- 1,
- 4,
- 4, 4,
- 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
- }
-};
-
// indicator
const uint8_t led_scale_indicator[12][12] = {
{23, 29, 35, 41, 60, 66, 72, 78, 97, 103, 109, 115}, // C
diff --git a/keyboards/chromatonemini/config.h b/keyboards/chromatonemini/config.h
index b5d7155516..83e6ccfe0e 100644
--- a/keyboards/chromatonemini/config.h
+++ b/keyboards/chromatonemini/config.h
@@ -21,16 +21,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* ws2812 RGB MATRIX */
# define RGB_MATRIX_LED_COUNT 116
-
// reacts to keypresses
# define RGB_MATRIX_KEYPRESSES
// for all fingers used at once.
# define LED_HITS_TO_REMEMBER 10
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 50
# define RGB_MATRIX_DEFAULT_SPD 127
-# define RGB_MATRIX_CENTER { 124, 32 }
+
// the above brighness setting has no effect on rgb_matrix_set_color().
// Use darker colors instead.
/* RGB darker COLORS */
@@ -56,51 +54,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// https://docs.qmk.fm/#/feature_rgb_matrix
// Enable suspend mode.
# define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-# ifdef CONSOLE_ENABLE
-# define ENABLE_RGB_MATRIX_SOLID_COLOR
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-# else
-# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-# define ENABLE_RGB_MATRIX_BREATHING
-# define ENABLE_RGB_MATRIX_BAND_SAT
-# define ENABLE_RGB_MATRIX_BAND_VAL
-# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-# define ENABLE_RGB_MATRIX_CYCLE_ALL
-# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-# define ENABLE_RGB_MATRIX_DUAL_BEACON
-# define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-# define ENABLE_RGB_MATRIX_RAINDROPS
-# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-# define ENABLE_RGB_MATRIX_HUE_BREATHING
-# define ENABLE_RGB_MATRIX_HUE_PENDULUM
-# define ENABLE_RGB_MATRIX_HUE_WAVE
-# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-# define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-# define ENABLE_RGB_MATRIX_SPLASH
-# define ENABLE_RGB_MATRIX_MULTISPLASH
-# define ENABLE_RGB_MATRIX_SOLID_SPLASH
-# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# endif // CONSOLE_ENABLE
#endif // RGB_MATRIX_ENABLE
/* Audio */
diff --git a/keyboards/chromatonemini/info.json b/keyboards/chromatonemini/info.json
index 3dd10d7381..fb4f0c737f 100644
--- a/keyboards/chromatonemini/info.json
+++ b/keyboards/chromatonemini/info.json
@@ -3,8 +3,10 @@
"manufacturer": "3araht",
"url": "https://github.com/3araht/chromatonemini",
"maintainer": "3araht",
- "bootloader": "caterina",
- "processor": "atmega32u4",
+ "development_board": "promicro",
+ "build": {
+ "lto": true
+ },
"features": {
"midi": true,
"extrakey": true,
@@ -13,15 +15,179 @@
"bootmagic": false,
"console": false,
"mousekey": false,
- "nkro": false,
- "rgblight": false,
- "audio": false
+ "nkro": false
},
"ws2812": {
"pin": "D3"
},
"rgb_matrix": {
- "driver": "ws2812"
+ "driver": "ws2812",
+ "layout": [
+ {"matrix": [0, 0], "x": 14, "y": 12, "flags": 1},
+ {"matrix": [0, 4], "x": 14, "y": 36, "flags": 4},
+ {"matrix": [0, 3], "x": 19, "y": 48, "flags": 4},
+ {"matrix": [0, 2], "x": 9, "y": 48, "flags": 4},
+ {"matrix": [0, 1], "x": 14, "y": 60, "flags": 4},
+ {"x": 39, "y": 60, "flags": 4},
+ {"x": 49, "y": 60, "flags": 4},
+ {"x": 59, "y": 60, "flags": 4},
+ {"x": 69, "y": 60, "flags": 4},
+ {"x": 79, "y": 60, "flags": 4},
+ {"x": 89, "y": 60, "flags": 4},
+ {"x": 99, "y": 60, "flags": 4},
+ {"x": 109, "y": 60, "flags": 4},
+ {"x": 119, "y": 60, "flags": 4},
+ {"x": 129, "y": 60, "flags": 4},
+ {"x": 139, "y": 60, "flags": 4},
+ {"x": 149, "y": 60, "flags": 4},
+ {"x": 159, "y": 60, "flags": 4},
+ {"x": 169, "y": 60, "flags": 4},
+ {"x": 179, "y": 60, "flags": 4},
+ {"x": 189, "y": 60, "flags": 4},
+ {"x": 199, "y": 60, "flags": 4},
+ {"x": 209, "y": 60, "flags": 4},
+ {"x": 214, "y": 48, "flags": 4},
+ {"x": 204, "y": 48, "flags": 4},
+ {"x": 194, "y": 48, "flags": 4},
+ {"x": 184, "y": 48, "flags": 4},
+ {"x": 174, "y": 48, "flags": 4},
+ {"x": 164, "y": 48, "flags": 4},
+ {"x": 154, "y": 48, "flags": 4},
+ {"x": 144, "y": 48, "flags": 4},
+ {"x": 134, "y": 48, "flags": 4},
+ {"x": 124, "y": 48, "flags": 4},
+ {"x": 114, "y": 48, "flags": 4},
+ {"x": 104, "y": 48, "flags": 4},
+ {"x": 94, "y": 48, "flags": 4},
+ {"x": 84, "y": 48, "flags": 4},
+ {"x": 74, "y": 48, "flags": 4},
+ {"x": 64, "y": 48, "flags": 4},
+ {"x": 54, "y": 48, "flags": 4},
+ {"x": 44, "y": 48, "flags": 4},
+ {"x": 34, "y": 48, "flags": 4},
+ {"x": 39, "y": 36, "flags": 4},
+ {"x": 49, "y": 36, "flags": 4},
+ {"x": 59, "y": 36, "flags": 4},
+ {"x": 69, "y": 36, "flags": 4},
+ {"x": 79, "y": 36, "flags": 4},
+ {"x": 89, "y": 36, "flags": 4},
+ {"x": 99, "y": 36, "flags": 4},
+ {"x": 109, "y": 36, "flags": 4},
+ {"x": 119, "y": 36, "flags": 4},
+ {"x": 129, "y": 36, "flags": 4},
+ {"x": 139, "y": 36, "flags": 4},
+ {"x": 149, "y": 36, "flags": 4},
+ {"x": 159, "y": 36, "flags": 4},
+ {"x": 169, "y": 36, "flags": 4},
+ {"x": 179, "y": 36, "flags": 4},
+ {"x": 189, "y": 36, "flags": 4},
+ {"x": 199, "y": 36, "flags": 4},
+ {"x": 209, "y": 36, "flags": 4},
+ {"x": 214, "y": 24, "flags": 4},
+ {"x": 204, "y": 24, "flags": 4},
+ {"x": 194, "y": 24, "flags": 4},
+ {"x": 184, "y": 24, "flags": 4},
+ {"x": 174, "y": 24, "flags": 4},
+ {"x": 164, "y": 24, "flags": 4},
+ {"x": 154, "y": 24, "flags": 4},
+ {"x": 144, "y": 24, "flags": 4},
+ {"x": 134, "y": 24, "flags": 4},
+ {"x": 124, "y": 24, "flags": 4},
+ {"x": 114, "y": 24, "flags": 4},
+ {"x": 104, "y": 24, "flags": 4},
+ {"x": 94, "y": 24, "flags": 4},
+ {"x": 84, "y": 24, "flags": 4},
+ {"x": 74, "y": 24, "flags": 4},
+ {"x": 64, "y": 24, "flags": 4},
+ {"x": 54, "y": 24, "flags": 4},
+ {"x": 44, "y": 24, "flags": 4},
+ {"x": 34, "y": 24, "flags": 4},
+ {"matrix": [0, 6], "x": 39, "y": 12, "flags": 4},
+ {"matrix": [1, 1], "x": 49, "y": 12, "flags": 4},
+ {"matrix": [1, 3], "x": 59, "y": 12, "flags": 4},
+ {"matrix": [1, 5], "x": 69, "y": 12, "flags": 4},
+ {"matrix": [2, 0], "x": 79, "y": 12, "flags": 4},
+ {"matrix": [2, 2], "x": 89, "y": 12, "flags": 4},
+ {"matrix": [2, 4], "x": 99, "y": 12, "flags": 4},
+ {"matrix": [2, 6], "x": 109, "y": 12, "flags": 4},
+ {"matrix": [3, 1], "x": 119, "y": 12, "flags": 4},
+ {"matrix": [3, 3], "x": 129, "y": 12, "flags": 4},
+ {"matrix": [3, 5], "x": 139, "y": 12, "flags": 4},
+ {"matrix": [4, 0], "x": 149, "y": 12, "flags": 4},
+ {"matrix": [4, 2], "x": 159, "y": 12, "flags": 4},
+ {"matrix": [4, 4], "x": 169, "y": 12, "flags": 4},
+ {"matrix": [4, 6], "x": 179, "y": 12, "flags": 4},
+ {"matrix": [5, 1], "x": 189, "y": 12, "flags": 4},
+ {"matrix": [5, 3], "x": 199, "y": 12, "flags": 4},
+ {"matrix": [5, 5], "x": 209, "y": 12, "flags": 4},
+ {"matrix": [5, 6], "x": 214, "y": 0, "flags": 4},
+ {"matrix": [5, 4], "x": 204, "y": 0, "flags": 4},
+ {"matrix": [5, 2], "x": 194, "y": 0, "flags": 4},
+ {"matrix": [5, 0], "x": 184, "y": 0, "flags": 4},
+ {"matrix": [4, 5], "x": 174, "y": 0, "flags": 4},
+ {"matrix": [4, 3], "x": 164, "y": 0, "flags": 4},
+ {"matrix": [4, 1], "x": 154, "y": 0, "flags": 4},
+ {"matrix": [3, 6], "x": 144, "y": 0, "flags": 4},
+ {"matrix": [3, 4], "x": 134, "y": 0, "flags": 4},
+ {"matrix": [3, 2], "x": 124, "y": 0, "flags": 4},
+ {"matrix": [3, 0], "x": 114, "y": 0, "flags": 4},
+ {"matrix": [2, 5], "x": 104, "y": 0, "flags": 4},
+ {"matrix": [2, 3], "x": 94, "y": 0, "flags": 4},
+ {"matrix": [2, 1], "x": 84, "y": 0, "flags": 4},
+ {"matrix": [1, 6], "x": 74, "y": 0, "flags": 4},
+ {"matrix": [1, 4], "x": 64, "y": 0, "flags": 4},
+ {"matrix": [1, 2], "x": 54, "y": 0, "flags": 4},
+ {"matrix": [1, 0], "x": 44, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 34, "y": 0, "flags": 4}
+ ],
+ "max_brightness": 50,
+ "sat_steps": 8,
+ "speed_steps": 10,
+ "val_steps": 8,
+ "center_point": [124, 32],
+ "animations": {
+ "solid_color": true,
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "rainbow_moving_chevron": true,
+ "dual_beacon": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "rainbow_beacon": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ }
},
"diode_direction": "COL2ROW",
"matrix_pins": {
@@ -33,7 +199,7 @@
"pid": "0xF4B4",
"device_version": "0.0.1"
},
- "layouts": {
+ "layouts": {
"LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0.5, "y": 0},
diff --git a/keyboards/chromatonemini/rules.mk b/keyboards/chromatonemini/rules.mk
index 4da205a168..e69de29bb2 100644
--- a/keyboards/chromatonemini/rules.mk
+++ b/keyboards/chromatonemini/rules.mk
@@ -1 +0,0 @@
-LTO_ENABLE = yes
diff --git a/keyboards/cipulot/ec_23u/rules.mk b/keyboards/cipulot/ec_23u/rules.mk
index ed348e8618..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_23u/rules.mk
+++ b/keyboards/cipulot/ec_23u/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_60/rules.mk b/keyboards/cipulot/ec_60/rules.mk
index ed348e8618..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_60/rules.mk
+++ b/keyboards/cipulot/ec_60/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_alveus/1_0_0/rules.mk b/keyboards/cipulot/ec_alveus/1_0_0/rules.mk
index b8929fa590..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_alveus/1_0_0/rules.mk
+++ b/keyboards/cipulot/ec_alveus/1_0_0/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_alveus/1_2_0/rules.mk b/keyboards/cipulot/ec_alveus/1_2_0/rules.mk
index b8929fa590..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_alveus/1_2_0/rules.mk
+++ b/keyboards/cipulot/ec_alveus/1_2_0/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_pro2/rules.mk b/keyboards/cipulot/ec_pro2/rules.mk
index b27b0f7ac0..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_pro2/rules.mk
+++ b/keyboards/cipulot/ec_pro2/rules.mk
@@ -1,2 +1,4 @@
CUSTOM_MATRIX = lite
-SRC += analog.c matrix.c ec_switch_matrix.c
+SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_prox/ansi_iso/rules.mk b/keyboards/cipulot/ec_prox/ansi_iso/rules.mk
index ed348e8618..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_prox/ansi_iso/rules.mk
+++ b/keyboards/cipulot/ec_prox/ansi_iso/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_prox/jis/rules.mk b/keyboards/cipulot/ec_prox/jis/rules.mk
index ed348e8618..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_prox/jis/rules.mk
+++ b/keyboards/cipulot/ec_prox/jis/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/ec_theca/rules.mk b/keyboards/cipulot/ec_theca/rules.mk
index b8929fa590..fc2dcf32ab 100644
--- a/keyboards/cipulot/ec_theca/rules.mk
+++ b/keyboards/cipulot/ec_theca/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/cipulot/rf_r1_8_9xu/rules.mk b/keyboards/cipulot/rf_r1_8_9xu/rules.mk
index ed348e8618..fc2dcf32ab 100644
--- a/keyboards/cipulot/rf_r1_8_9xu/rules.mk
+++ b/keyboards/cipulot/rf_r1_8_9xu/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += matrix.c ec_switch_matrix.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/citrus/erdnuss65/info.json b/keyboards/citrus/erdnuss65/info.json
index 44d597ffb4..4faaa05431 100644
--- a/keyboards/citrus/erdnuss65/info.json
+++ b/keyboards/citrus/erdnuss65/info.json
@@ -1,43 +1,39 @@
{
- "keyboard_name": "Erdnuss65",
"manufacturer": "Citrus Lab",
- "processor": "STM32F103",
- "bootloader": "stm32duino",
+ "keyboard_name": "Erdnuss65",
"maintainer": "ctt",
- "usb": {
- "vid": "0x636C",
- "pid": "0x6374",
- "device_version": "0.0.1"
- },
- "matrix_pins": {
- "rows": ["B10", "B1", "B0", "A7", "A6"],
- "cols": ["B12", "B14", "B15", "A8", "B13", "B3", "B4", "B5", "A1", "A2", "A0", "A3", "A4", "A5", "B11"]
- },
+ "bootloader": "stm32duino",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
- "mousekey": true,
"extrakey": true,
- "console": false,
- "command": false,
+ "mousekey": true,
"nkro": true,
- "backlight": false,
- "rgblight": true,
- "audio": false
+ "rgblight": true
},
- "ws2812": {
- "pin": "A15"
+ "matrix_pins": {
+ "cols": ["B12", "B14", "B15", "B5", "B13", "B3", "B4", "B6", "A0", "A1", "A2", "A3", "A4", "A5", "B11"],
+ "rows": ["B10", "B1", "B0", "A7", "A6"]
},
+ "processor": "STM32F103",
"rgblight": {
"led_count": 1
},
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x6374",
+ "vid": "0x636C"
+ },
+ "ws2812": {
+ "pin": "A15"
+ },
"layouts": {
"LAYOUT": {
"layout": [
{"label": "ESC K00 (B10,B12)", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "1 K01 (B10,B14)", "matrix": [0, 1], "x": 1, "y": 0},
{"label": "2 K02 (B10,B15)", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "3 K03 (B10,A8)", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "3 K03 (B10,B5)", "matrix": [0, 3], "x": 3, "y": 0},
{"label": "4 K04 (B10,B13)", "matrix": [0, 4], "x": 4, "y": 0},
{"label": "5 K05 (B10,B3)", "matrix": [0, 5], "x": 5, "y": 0},
{"label": "6 K06 (B10,B4)", "matrix": [0, 6], "x": 6, "y": 0},
@@ -52,7 +48,7 @@
{"label": "TAB (B1,B12)", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
{"label": "Q (B1,B14)", "matrix": [1, 1], "x": 1.5, "y": 1},
{"label": "W (B1,B15)", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E (B1,A8)", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "E (B1,B5)", "matrix": [1, 3], "x": 3.5, "y": 1},
{"label": "R (B1,B13)", "matrix": [1, 4], "x": 4.5, "y": 1},
{"label": "T (B1,B3)", "matrix": [1, 5], "x": 5.5, "y": 1},
{"label": "Y (B1,B4)", "matrix": [1, 6], "x": 6.5, "y": 1},
@@ -64,10 +60,10 @@
{"label": "] (B1,A4)", "matrix": [1, 12], "x": 12.5, "y": 1},
{"label": "\" (B1,A5)", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
{"label": "DEL (B1,B11)", "matrix": [1, 14], "x": 15, "y": 1},
- {"label": "CAPSLOCK (B0,B12)", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.25},
+ {"label": "CAPSLOCK (B0,B12)", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
{"label": "A (B0,B14)", "matrix": [2, 1], "x": 1.75, "y": 2},
{"label": "S (B0,B15)", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D (B0,A8)", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "D (B0,B5)", "matrix": [2, 3], "x": 3.75, "y": 2},
{"label": "F (B0,B13)", "matrix": [2, 4], "x": 4.75, "y": 2},
{"label": "G (B0,B3)", "matrix": [2, 5], "x": 5.75, "y": 2},
{"label": "H (B0,B4)", "matrix": [2, 6], "x": 6.75, "y": 2},
@@ -81,7 +77,7 @@
{"label": "LSHIFT (A7,B12)", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
{"label": "Z (A7,B14)", "matrix": [3, 1], "x": 2.25, "y": 3},
{"label": "X (A7,B15)", "matrix": [3, 2], "x": 3.25, "y": 3},
- {"label": "C (A7,A8)", "matrix": [3, 3], "x": 4.25, "y": 3},
+ {"label": "C (A7,B5)", "matrix": [3, 3], "x": 4.25, "y": 3},
{"label": "V (A7,B13)", "matrix": [3, 4], "x": 5.25, "y": 3},
{"label": "B (A7,B3)", "matrix": [3, 5], "x": 6.25, "y": 3},
{"label": "N (A7,B4)", "matrix": [3, 6], "x": 7.25, "y": 3},
@@ -95,12 +91,12 @@
{"label": "LCTRL (A6,B12)", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
{"label": "WIN (A6,B14)", "matrix": [4, 1], "x": 1.5, "y": 4},
{"label": "ALT (A6,B15)", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
- {"label": "SPACE (A6,A8)", "matrix": [4, 3], "x": 4, "y": 4, "w": 7},
+ {"label": "SPACE (A6,B5)", "matrix": [4, 3], "x": 4, "y": 4, "w": 7},
{"label": "FN (A6,A0)", "matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
{"label": "LEFT (A6,A4)", "matrix": [4, 12], "x": 13, "y": 4},
{"label": "DOWN (A6,A5)", "matrix": [4, 13], "x": 14, "y": 4},
{"label": "RIGHT (A6,B11)", "matrix": [4, 14], "x": 15, "y": 4}
- ]
+ ]
}
}
}
diff --git a/keyboards/citrus/erdnuss65/keymaps/default/keymap.c b/keyboards/citrus/erdnuss65/keymaps/default/keymap.c
index 0daef5af64..fdc36ae65e 100644
--- a/keyboards/citrus/erdnuss65/keymaps/default/keymap.c
+++ b/keyboards/citrus/erdnuss65/keymaps/default/keymap.c
@@ -5,19 +5,18 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS,
+ QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_MPRV,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, RESET, KC_MNXT,
+ KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_MPRV,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, QK_BOOT, KC_MNXT,
_______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, _______, _______, KC_HOME,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MYCM, KC_VOLU, KC_END,
- _______, _______, _______, _______, _______, KC_MUTE, KC_VOLU, KC_MPLY
+ _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_MPLY
)
};
-
diff --git a/keyboards/citrus/erdnuss65/keymaps/via/keymap.c b/keyboards/citrus/erdnuss65/keymaps/via/keymap.c
index 0f1bf9525e..3014b72cfe 100644
--- a/keyboards/citrus/erdnuss65/keymaps/via/keymap.c
+++ b/keyboards/citrus/erdnuss65/keymaps/via/keymap.c
@@ -5,19 +5,19 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS,
+ QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_MPRV,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, RESET, KC_MNXT,
+ KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_MPRV,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, QK_BOOT, KC_MNXT,
_______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, _______, _______, KC_HOME,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MYCM, KC_VOLU, KC_END,
- _______, _______, _______, _______, _______, KC_MUTE, KC_VOLU, KC_MPLY
+ _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_MPLY
),
[2] = LAYOUT(
@@ -34,6 +34,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
- ),
-
+ )
};
diff --git a/keyboards/clickety_split/leeloo/info.json b/keyboards/clickety_split/leeloo/info.json
index a2510f9f7f..c83fedeb28 100644
--- a/keyboards/clickety_split/leeloo/info.json
+++ b/keyboards/clickety_split/leeloo/info.json
@@ -1,24 +1,31 @@
{
- "keyboard_name": "Leeloo",
"manufacturer": "Clickety Split Ltd",
"url": "https://clicketysplit.ca/pages/leeloo",
"maintainer": "ClicketySplit",
"usb": {
"vid": "0x4013",
- "pid": "0x2022",
- "device_version": "0.1.3"
+ "pid": "0x2022"
},
+ "diode_direction": "COL2ROW",
"matrix_pins": {
- "cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
- "rows": ["C6", "D7", "E6", "B4", "B5"]
+ "cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
+ "rows": ["C6", "D7", "E6", "B4", "B5"]
+ },
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "extrakey": true,
+ "oled": true
},
- "diode_direction": "COL2ROW",
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "F5", "pin_b": "F4"}
]
},
"split": {
+ "enabled": true,
"soft_serial_pin": "D2",
"encoder": {
"right": {
@@ -28,81 +35,77 @@
}
}
},
- "tapping": {
- "term": 100
- },
- "processor": "atmega32u4",
- "bootloader": "caterina",
+ "development_board": "promicro",
"layouts": {
"LAYOUT": {
"layout": [
- {"matrix": [0, 0], "x": 0, "y": 0.5},
- {"matrix": [0, 1], "x": 1, "y": 0.4},
- {"matrix": [0, 2], "x": 2, "y": 0.2},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0.2},
- {"matrix": [0, 5], "x": 5, "y": 0.4},
+ {"label":"Esc", "matrix": [0, 0], "x": 0.0, "y":0.5},
+ {"label":"1", "matrix": [0, 1], "x": 1.0, "y":0.4},
+ {"label":"2", "matrix": [0, 2], "x": 2.0, "y":0.2},
+ {"label":"3", "matrix": [0, 3], "x": 3.0, "y":0.0},
+ {"label":"4", "matrix": [0, 4], "x": 4.0, "y":0.2},
+ {"label":"5", "matrix": [0, 5], "x": 5.0, "y":0.4},
- {"matrix": [5, 5], "x": 9, "y": 0.4},
- {"matrix": [5, 4], "x": 10, "y": 0.2},
- {"matrix": [5, 3], "x": 11, "y": 0},
- {"matrix": [5, 2], "x": 12, "y": 0.2},
- {"matrix": [5, 1], "x": 13, "y": 0.4},
- {"matrix": [5, 0], "x": 14, "y": 0.5},
+ {"label":"6", "matrix": [5, 5], "x": 9.0, "y":0.4},
+ {"label":"7", "matrix": [5, 4], "x": 10.0, "y":0.2},
+ {"label":"8", "matrix": [5, 3], "x": 11.0, "y":0.0},
+ {"label":"9", "matrix": [5, 2], "x": 12.0, "y":0.2},
+ {"label":"0", "matrix": [5, 1], "x": 13.0, "y":0.4},
+ {"label":"BSL", "matrix": [5, 0], "x": 14.0, "y":0.5},
- {"matrix": [1, 0], "x": 0, "y": 1.5},
- {"matrix": [1, 1], "x": 1, "y": 1.4},
- {"matrix": [1, 2], "x": 2, "y": 1.2},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1.2},
- {"matrix": [1, 5], "x": 5, "y": 1.4},
+ {"label":"TAB", "matrix": [1, 0], "x": 0.0, "y":1.5},
+ {"label":"Q", "matrix": [1, 1], "x": 1.0, "y":1.4},
+ {"label":"W", "matrix": [1, 2], "x": 2.0, "y":1.2},
+ {"label":"E", "matrix": [1, 3], "x": 3.0, "y":1.0},
+ {"label":"R", "matrix": [1, 4], "x": 4.0, "y":1.2},
+ {"label":"T", "matrix": [1, 5], "x": 5.0, "y":1.4},
- {"matrix": [6, 5], "x": 9, "y": 1.4},
- {"matrix": [6, 4], "x": 10, "y": 1.2},
- {"matrix": [6, 3], "x": 11, "y": 1},
- {"matrix": [6, 2], "x": 12, "y": 1.2},
- {"matrix": [6, 1], "x": 13, "y": 1.4},
- {"matrix": [6, 0], "x": 14, "y": 1.5},
+ {"label":"Y", "matrix": [6, 5], "x": 9.0, "y":1.4},
+ {"label":"U", "matrix": [6, 4], "x": 10.0, "y":1.2},
+ {"label":"I", "matrix": [6, 3], "x": 11.0, "y":1.0},
+ {"label":"O", "matrix": [6, 2], "x": 12.0, "y":1.2},
+ {"label":"P", "matrix": [6, 1], "x": 13.0, "y":1.4},
+ {"label":"GRV", "matrix": [6, 0], "x": 14.0, "y":1.5},
- {"matrix": [2, 0], "x": 0, "y": 2.5},
- {"matrix": [2, 1], "x": 1, "y": 2.4},
- {"matrix": [2, 2], "x": 2, "y": 2.2},
- {"matrix": [2, 3], "x": 3, "y": 2},
- {"matrix": [2, 4], "x": 4, "y": 2.2},
- {"matrix": [2, 5], "x": 5, "y": 2.4},
+ {"label":"CAPS", "matrix": [2, 0], "x": 0.0, "y":2.5},
+ {"label":"A", "matrix": [2, 1], "x": 1.0, "y":2.4},
+ {"label":"S", "matrix": [2, 2], "x": 2.0, "y":2.2},
+ {"label":"D", "matrix": [2, 3], "x": 3.0, "y":2.0},
+ {"label":"F", "matrix": [2, 4], "x": 4.0, "y":2.2},
+ {"label":"G", "matrix": [2, 5], "x": 5.0, "y":2.4},
- {"matrix": [7, 5], "x": 9, "y": 2.4},
- {"matrix": [7, 4], "x": 10, "y": 2.2},
- {"matrix": [7, 3], "x": 11, "y": 2},
- {"matrix": [7, 2], "x": 12, "y": 2.2},
- {"matrix": [7, 1], "x": 13, "y": 2.4},
- {"matrix": [7, 0], "x": 14, "y": 2.5},
+ {"label":"H", "matrix": [7, 5], "x": 9.0, "y":2.4},
+ {"label":"J", "matrix": [7, 4], "x": 10.0, "y":2.2},
+ {"label":"K", "matrix": [7, 3], "x": 11.0, "y":2.0},
+ {"label":"L", "matrix": [7, 2], "x": 12.0, "y":2.2},
+ {"label":";", "matrix": [7, 1], "x": 13.0, "y":2.4},
+ {"label":"'", "matrix": [7, 0], "x": 14.0, "y":2.5},
- {"matrix": [3, 0], "x": 0, "y": 3.5},
- {"matrix": [3, 1], "x": 1, "y": 3.4},
- {"matrix": [3, 2], "x": 2, "y": 3.2},
- {"matrix": [3, 3], "x": 3, "y": 3},
- {"matrix": [3, 4], "x": 4, "y": 3.2},
- {"matrix": [3, 5], "x": 5, "y": 3.4},
- {"matrix": [4, 5], "x": 6.25, "y": 3.4},
+ {"label":"SFT", "matrix": [3, 0], "x": 0.0, "y":3.5},
+ {"label":"Z", "matrix": [3, 1], "x": 1.0, "y":3.4},
+ {"label":"X", "matrix": [3, 2], "x": 2.0, "y":3.2},
+ {"label":"C", "matrix": [3, 3], "x": 3.0, "y":3.0},
+ {"label":"V", "matrix": [3, 4], "x": 4.0, "y":3.2},
+ {"label":"B", "matrix": [3, 5], "x": 5.0, "y":3.4},
+ {"label":"GUI", "matrix": [4, 5], "x": 6.25, "y":3.4},
- {"matrix": [9, 5], "x": 7.75, "y": 3.4},
- {"matrix": [8, 5], "x": 9, "y": 3.4},
- {"matrix": [8, 4], "x": 10, "y": 3.2},
- {"matrix": [8, 3], "x": 11, "y": 3},
- {"matrix": [8, 2], "x": 12, "y": 3.2},
- {"matrix": [8, 1], "x": 13, "y": 3.4},
- {"matrix": [8, 0], "x": 14, "y": 3.5},
+ {"label":"GUI", "matrix": [9, 5], "x": 7.75, "y":3.4},
+ {"label":"N", "matrix": [8, 5], "x": 9.0, "y":3.4},
+ {"label":"M", "matrix": [8, 4], "x": 10.0, "y":3.2},
+ {"label":",", "matrix": [8, 3], "x": 11.0, "y":3.0},
+ {"label":".", "matrix": [8, 2], "x": 12.0, "y":3.2},
+ {"label":"/", "matrix": [8, 1], "x": 13.0, "y":3.4},
+ {"label":"SFT", "matrix": [8, 0], "x": 14.0, "y":3.5},
- {"matrix": [4, 1], "x": 2.7, "y": 4.6},
- {"matrix": [4, 2], "x": 3.8, "y": 4.5},
- {"matrix": [4, 3], "x": 4.9, "y": 4.55},
- {"matrix": [4, 4], "x": 6.1, "y": 4.65},
+ {"label":"ALT", "matrix": [4, 1], "x": 2.7, "y":4.6},
+ {"label":"CTL", "matrix": [4, 2], "x": 3.8, "y":4.5},
+ {"label":"ENT", "matrix": [4, 3], "x": 4.9, "y":4.55},
+ {"label":"MINS", "matrix": [4, 4], "x": 6.1, "y":4.65},
- {"matrix": [9, 4], "x": 7.9, "y": 4.65},
- {"matrix": [9, 3], "x": 9.1, "y": 4.55},
- {"matrix": [9, 2], "x": 10.2, "y": 4.5},
- {"matrix": [9, 1], "x": 11.3, "y": 4.6}
+ {"label":"EQL", "matrix": [9, 4], "x": 7.9, "y":4.65},
+ {"label":"SPC", "matrix": [9, 3], "x": 9.1, "y":4.55},
+ {"label":"BSP", "matrix": [9, 2], "x": 10.2, "y":4.5},
+ {"label":"DEL", "matrix": [9, 1], "x": 11.3, "y":4.6}
]
}
}
diff --git a/keyboards/clickety_split/leeloo/keymaps/default/config.h b/keyboards/clickety_split/leeloo/keymaps/default/config.h
index d0348d06ef..e41b3d34aa 100644
--- a/keyboards/clickety_split/leeloo/keymaps/default/config.h
+++ b/keyboards/clickety_split/leeloo/keymaps/default/config.h
@@ -1,5 +1,4 @@
-/* Copyright 2022 Clickety Split Ltd.
- * https://clicketysplit.ca
+/* Copyright 2023 Clickety Split Ltd.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -17,17 +16,30 @@
#pragma once
-// Select hand configuration
-// #define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#ifdef TAPPING_TERM
- #undef TAPPING_TERM
- #define QUICK_TAP_TERM 0
- #define TAPPING_TERM 150
-#endif
-
// If rotary encoders are used, and they require more or less resolution/sensitivity
// you may try increasing or decreasing the value.
// #define ENCODER_RESOLUTION 2
+
+ #define RGB_MATRIX_KEYPRESSES // reacts to keypresses
+// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
+// #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
+ #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
+ #define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+
+ #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 115 // limits maximum brightness of LEDs to 150 out of 255.
+ // Higher may cause the controller to crash.
+ #define RGB_MATRIX_HUE_STEP 10
+ #define RGB_MATRIX_SAT_STEP 10
+ #define RGB_MATRIX_VAL_STEP 10
+ #define RGB_MATRIX_SPD_STEP 10
+
+
+/* By default, the RGB_MATRIX effects are disabled.
+ *
+ * For a complete list, visit: https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects.
+ * Some of the effects take up a lot of memory, so you may need to manage the number of
+ * effects that are loaded at any given time.
+*/
+ #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
+ #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
+ #define ENABLE_RGB_MATRIX_SPLASH
diff --git a/keyboards/clickety_split/leeloo/keymaps/default/keymap.c b/keyboards/clickety_split/leeloo/keymaps/default/keymap.c
index bac722a7c3..6bf9824472 100644
--- a/keyboards/clickety_split/leeloo/keymaps/default/keymap.c
+++ b/keyboards/clickety_split/leeloo/keymaps/default/keymap.c
@@ -1,5 +1,4 @@
-/* Copyright 2022 Clickety Split Ltd.
- * https://clicketysplit.ca
+/* Copyright 2023 Clickety Split Ltd.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -92,23 +91,34 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* ,-----------------------------------------. ,-----------------------------------------.
* | | | | | | | | | | | | | |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
+ * | | | | | | | | | | +VOL | | | |
* |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |--------. ,-------| | | | | | |
+ * | | | | | | |--------. ,-------| | | -VOL | | | |
* |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |--------| |-------| | | | | | |
+ * | | | | | | |--------| |-------| | MUTE | | | | |
* `-----------------------------------------/ / \ \-----------------------------------------'
* | LALT | LCTL | ENT | / MINS / \ EQL \ | SPC | BSPC | DEL |
* | | | LOWR |/ RAISE / \RAISE \ | LOWR | | |
* `-------------------------------' '------''-----------------------'
+ *
+ * NOTE: For Leeloo v1 the RGB Keycodes will not have any effect.
+ *
*/
[_ADJUST] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______,
+ _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, KC_VOLD, _______, _______, _______,
+ _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
)
};
+/* Tri Layer
+ * When Lower and Raise are pressed at the same time, and wrapped with LT(),
+ * Adjust is activated with the following method.
+ */
+layer_state_t layer_state_set_user(layer_state_t state) {
+ state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
+ return state;
+}
diff --git a/keyboards/clickety_split/leeloo/leeloo.c b/keyboards/clickety_split/leeloo/leeloo.c
index 864f31cbb7..3922556f5c 100644
--- a/keyboards/clickety_split/leeloo/leeloo.c
+++ b/keyboards/clickety_split/leeloo/leeloo.c
@@ -1,5 +1,4 @@
-/* Copyright 2022 Clickety Split Ltd.
- * https://clicketysplit.ca
+/* Copyright 2023 Clickety Split Ltd.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -48,9 +47,24 @@ static void render_mod_status(uint8_t modifiers) {
static void render_secondary_oled(void) {
// Version Information
- oled_write_P(PSTR("Leeloo\n\n"), false);
+#if defined(KEYBOARD_clickety_split_leeloo_rev1)
+ oled_write_P(PSTR("Leeloo v1\n\n"), false);
+#elif defined(KEYBOARD_clickety_split_leeloo_rev2)
+ oled_write_P(PSTR("Leeloo v2\n\n"), false);
+#else
+ oled_write_P(PSTR("Leeloo v2.1\n\n"), false);
+#endif
+
oled_write_P(PSTR("Firmware: "), false);
- oled_write_P(PSTR("v1.0"), false);
+
+#if defined(KEYBOARD_clickety_split_leeloo_rev1)
+ oled_write_P(PSTR("v1.13"), false);
+#elif defined(KEYBOARD_clickety_split_leeloo_rev2)
+ oled_write_P(PSTR("v2.13"), false);
+#else
+ oled_write_P(PSTR("v2.14"), false);
+#endif
+
oled_write_P(PSTR("\n"), false);
oled_write_P(PSTR("Clickety Split Ltd."), false);
}
@@ -58,7 +72,7 @@ static void render_secondary_oled(void) {
static void render_status(void) {
// Host Keyboard Layer Status
switch (get_highest_layer(default_layer_state)) {
- case _BASE:
+ case 0:
oled_write_P(PSTR("QWERTY | "), false);
break;
}
@@ -69,15 +83,15 @@ static void render_status(void) {
oled_write_P(PSTR("Base \n"), false);
break;
- case _LOWER:
+ case 1:
oled_write_P(PSTR("Lower \n"), false);
break;
- case _RAISE:
+ case 2:
oled_write_P(PSTR("Raise \n"), false);
break;
- case _ADJUST:
+ case 3:
oled_write_P(PSTR("Adjust \n"), false);
break;
@@ -128,4 +142,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) {
}
return true;
}
-#endif
+#endif // ENCODER_ENABLE
diff --git a/keyboards/clickety_split/leeloo/readme.md b/keyboards/clickety_split/leeloo/readme.md
index f672294e14..65f1069cdb 100644
--- a/keyboards/clickety_split/leeloo/readme.md
+++ b/keyboards/clickety_split/leeloo/readme.md
@@ -1,16 +1,33 @@
-# Leeloo
+# Clickety Split | Leeloo v2.1
-![Leeloo](https://cdn.shopify.com/s/files/1/0599/3460/5491/files/Leeloo-rev1.0-w.jpg?v=1646798726)
+![Leeloo v2.1](https://i.imgur.com/swPHS0Bh.jpg)
-Leeloo is a 4x6x5m ortholinear split keyboard kit made and sold by Clickety Split Ltd.
+Leeloo v2.1 is a small evolution of Leeloo v2.0, which is a 4x6x5m ortholinear split keyboard designed, created, and sold by Clickety Split Ltd.
* Keyboard Maintainer: [Clickety Split](https://github.com/ClicketySplit)
-* Hardware Supported: Leeloo PCB rev1, Pro Micro, Elite-C
-* Hardware Availability: [clicketysplit.ca](https://clicketysplit.ca/pages/leeloo)
+* Hardware Supported: Leeloo PCB rev1/rev2/rev3, Pro Micro, Elite-C
+* Hardware Availability: [clicketysplit.ca/pages/leeloo](https://clicketysplit.ca/pages/leeloo)
+
+
+## Differences between v2.1 and v2.0
+* Removed 8 RGB LEDs on each side, which served as backlighting.
+* Added a solderable jumper to bypass circuitry used for wireless configurations with nice!nanos.
+* Simplified socketing of nice!view and OLED Displays.
+
+
+# Leeloo
+
+![Leeloo](https://i.imgur.com/x1ew17Dh.jpg)
+
+The original design and release of Leeloo.
+
+# Sample Build Commands for Leeloo v1, v2, and v2.1
-Make example, after setting up build environment:
+Make example for this keyboard (after setting up your build environment):
make clickety_split/leeloo/rev1:default
+ make clickety_split/leeloo/rev2:default
+ make clickety_split/leeloo/rev3:default
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file
diff --git a/keyboards/clickety_split/leeloo/rev1/info.json b/keyboards/clickety_split/leeloo/rev1/info.json
new file mode 100644
index 0000000000..e9396f3f81
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev1/info.json
@@ -0,0 +1,6 @@
+{
+ "keyboard_name": "Leeloo v1",
+ "usb": {
+ "device_version": "0.1.3"
+ }
+}
diff --git a/keyboards/clickety_split/leeloo/rev2/config.h b/keyboards/clickety_split/leeloo/rev2/config.h
new file mode 100644
index 0000000000..2aa1acd972
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev2/config.h
@@ -0,0 +1,22 @@
+/* Copyright 2023 Clickety Split Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+# define RGB_MATRIX_LED_COUNT 74
+# define RGB_MATRIX_SPLIT {37, 37}
+# define RGB_DISABLE_WHEN_USB_SUSPENDED
+# define SPLIT_TRANSPORT_MIRROR
diff --git a/keyboards/clickety_split/leeloo/rev2/info.json b/keyboards/clickety_split/leeloo/rev2/info.json
new file mode 100644
index 0000000000..6db77714a4
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev2/info.json
@@ -0,0 +1,104 @@
+{
+ "keyboard_name": "Leeloo v2",
+ "usb": {
+ "device_version": "0.2.0"
+ },
+ "features": {
+ "rgb_matrix": true
+ },
+ "split": {
+ "transport": {
+ "sync" :{
+ "matrix_state": true
+ }
+ }
+ },
+ "rgblight": {
+ "led_count": 74,
+ "split": true,
+ "split_count": [37, 37],
+ "max_brightness": 115
+ },
+ "ws2812": {
+ "pin": "D3"
+ },
+ "rgb_matrix": {
+ "driver": "ws2812",
+ "layout": [
+ {"flags": 2, "x": 86, "y": 8}, // L LU01
+ {"flags": 2, "x": 52, "y": 8}, // L LU02
+ {"flags": 2, "x": 17, "y": 8}, // L LU03
+ {"flags": 2, "x": 0, "y": 24}, // L LU04
+ {"flags": 2, "x": 0, "y": 40}, // L LU05
+ {"flags": 2, "x": 17, "y": 56}, // L LU06
+ {"flags": 2, "x": 52, "y": 56}, // L LU07
+ {"flags": 2, "x": 86, "y": 56}, // L LU08
+ {"flags": 4, "matrix": [4, 5], "x": 103, "y": 48}, // L LB09 | SW29
+ {"flags": 4, "matrix": [4, 4], "x": 103, "y": 64}, // L LB10 | SW28
+ {"flags": 4, "matrix": [4, 3], "x": 86, "y": 64}, // L LB11 | SW27
+ {"flags": 4, "matrix": [3, 5], "x": 86, "y": 48}, // L LB12 | SW24
+ {"flags": 4, "matrix": [2, 5], "x": 86, "y": 32}, // L LB13 | SW18
+ {"flags": 4, "matrix": [1, 5], "x": 86, "y": 15}, // L LB14 | SW12
+ {"flags": 4, "matrix": [0, 5], "x": 86, "y": 0}, // L LB15 | SW6
+ {"flags": 4, "matrix": [0, 4], "x": 69, "y": 0}, // L LB16 | SW5
+ {"flags": 4, "matrix": [1, 4], "x": 69, "y": 16}, // L LB17 | SW11
+ {"flags": 4, "matrix": [2, 4], "x": 69, "y": 32}, // L LB18 | SW17
+ {"flags": 4, "matrix": [3, 4], "x": 69, "y": 48}, // L LB19 | SW23
+ {"flags": 4, "matrix": [4, 2], "x": 69, "y": 64}, // L LB20 | SW26
+ {"flags": 4, "matrix": [4, 1], "x": 52, "y": 64}, // L LB21 | SW25
+ {"flags": 4, "matrix": [3, 3], "x": 52, "y": 48}, // L LB22 | SW22
+ {"flags": 4, "matrix": [2, 3], "x": 52, "y": 32}, // L LB23 | SW16
+ {"flags": 4, "matrix": [1, 3], "x": 52, "y": 16}, // L LB24 | SW10
+ {"flags": 4, "matrix": [0, 3], "x": 52, "y": 0}, // L LB25 | SW4
+ {"flags": 4, "matrix": [0, 2], "x": 34, "y": 0}, // L LB26 | SW3
+ {"flags": 4, "matrix": [1, 2], "x": 34, "y": 16}, // L LB27 | SW9
+ {"flags": 4, "matrix": [2, 2], "x": 34, "y": 32}, // L LB28 | SW15
+ {"flags": 4, "matrix": [3, 2], "x": 34, "y": 48}, // L LB29 | SW21
+ {"flags": 4, "matrix": [3, 1], "x": 17, "y": 48}, // L LB30 | SW20
+ {"flags": 4, "matrix": [2, 1], "x": 17, "y": 32}, // L LB31 | SW14
+ {"flags": 4, "matrix": [1, 1], "x": 17, "y": 16}, // L LB32 | SW8
+ {"flags": 4, "matrix": [0, 1], "x": 17, "y": 0}, // L LB33 | SW2
+ {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, // L LB34 | SW1
+ {"flags": 4, "matrix": [1, 0], "x": 0, "y": 16}, // L LB35 | SW7
+ {"flags": 4, "matrix": [2, 0], "x": 0, "y": 32}, // L LB36 | SW13
+ {"flags": 4, "matrix": [3, 0], "x": 0, "y": 48}, // L LB37 | SW19
+ {"flags": 2, "x": 137, "y": 8}, // R LU38
+ {"flags": 2, "x": 172, "y": 8}, // R LU39
+ {"flags": 2, "x": 206, "y": 8}, // R LU40
+ {"flags": 2, "x": 224, "y": 24}, // R LU41
+ {"flags": 2, "x": 224, "y": 40}, // R LU42
+ {"flags": 2, "x": 206, "y": 56}, // R LU43
+ {"flags": 2, "x": 172, "y": 56}, // R LU44
+ {"flags": 2, "x": 137, "y": 56}, // R LU45
+ {"flags": 4, "matrix": [9, 5], "x": 120, "y": 48}, // R LB46 | SW58
+ {"flags": 4, "matrix": [9, 4], "x": 120, "y": 64}, // R LB47 | SW57
+ {"flags": 4, "matrix": [9, 3], "x": 137, "y": 64}, // R LB48 | SW56
+ {"flags": 4, "matrix": [8, 5], "x": 137, "y": 48}, // R LB49 | SW53
+ {"flags": 4, "matrix": [7, 5], "x": 137, "y": 32}, // R LB50 | SW47
+ {"flags": 4, "matrix": [6, 5], "x": 137, "y": 15}, // R LB51 | SW41
+ {"flags": 4, "matrix": [5, 5], "x": 137, "y": 0}, // R LB52 | SW35
+ {"flags": 4, "matrix": [5, 4], "x": 155, "y": 0}, // R LB53 | SW34
+ {"flags": 4, "matrix": [6, 4], "x": 155, "y": 16}, // R LB54 | SW40
+ {"flags": 4, "matrix": [7, 4], "x": 155, "y": 32}, // R LB55 | SW46
+ {"flags": 4, "matrix": [8, 4], "x": 155, "y": 48}, // R LB56 | SW52
+ {"flags": 4, "matrix": [9, 2], "x": 155, "y": 64}, // R LB57 | SW55
+ {"flags": 4, "matrix": [9, 1], "x": 172, "y": 64}, // R LB58 | SW54
+ {"flags": 4, "matrix": [8, 3], "x": 172, "y": 48}, // R LB59 | SW51
+ {"flags": 4, "matrix": [7, 3], "x": 172, "y": 32}, // R LB60 | SW45
+ {"flags": 4, "matrix": [6, 3], "x": 172, "y": 16}, // R LB61 | SW39
+ {"flags": 4, "matrix": [5, 3], "x": 172, "y": 0}, // R LB62 | SW33
+ {"flags": 4, "matrix": [5, 2], "x": 189, "y": 0}, // R LB63 | SW32
+ {"flags": 4, "matrix": [6, 2], "x": 189, "y": 16}, // R LB64 | SW38
+ {"flags": 4, "matrix": [7, 2], "x": 189, "y": 32}, // R LB65 | SW44
+ {"flags": 4, "matrix": [8, 2], "x": 189, "y": 48}, // R LB66 | SW50
+ {"flags": 4, "matrix": [8, 1], "x": 206, "y": 48}, // R LB67 | SW49
+ {"flags": 4, "matrix": [7, 1], "x": 206, "y": 32}, // R LB68 | SW43
+ {"flags": 4, "matrix": [6, 1], "x": 206, "y": 16}, // R LB69 | SW37
+ {"flags": 4, "matrix": [5, 1], "x": 206, "y": 0}, // R LB70 | SW31
+ {"flags": 4, "matrix": [5, 0], "x": 224, "y": 0}, // R LB71 | SW30
+ {"flags": 4, "matrix": [6, 0], "x": 224, "y": 16}, // R LB72 | SW36
+ {"flags": 4, "matrix": [7, 0], "x": 224, "y": 32}, // R LB73 | SW42
+ {"flags": 4, "matrix": [8, 0], "x": 224, "y": 48} // R LB74 | SW48
+ ]
+ }
+ }
diff --git a/keyboards/clickety_split/leeloo/rev2/rules.mk b/keyboards/clickety_split/leeloo/rev2/rules.mk
new file mode 100644
index 0000000000..80a6663b9c
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev2/rules.mk
@@ -0,0 +1 @@
+# Intentionally left blank.
diff --git a/keyboards/clickety_split/leeloo/rev3/config.h b/keyboards/clickety_split/leeloo/rev3/config.h
new file mode 100644
index 0000000000..ac93150221
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev3/config.h
@@ -0,0 +1,22 @@
+/* Copyright 2023 Clickety Split Ltd.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+# define RGB_MATRIX_LED_COUNT 58
+# define RGB_MATRIX_SPLIT {29, 29}
+# define RGB_DISABLE_WHEN_USB_SUSPENDED
+# define SPLIT_TRANSPORT_MIRROR
diff --git a/keyboards/clickety_split/leeloo/rev3/info.json b/keyboards/clickety_split/leeloo/rev3/info.json
new file mode 100644
index 0000000000..2c92f5226e
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev3/info.json
@@ -0,0 +1,88 @@
+{
+ "keyboard_name": "Leeloo v2.1",
+ "usb": {
+ "device_version": "0.2.1"
+ },
+ "features": {
+ "rgb_matrix": true
+ },
+ "split": {
+ "transport": {
+ "sync" :{
+ "matrix_state": true
+ }
+ }
+ },
+ "rgblight": {
+ "led_count": 58,
+ "split": true,
+ "split_count": [29, 29],
+ "max_brightness": 115
+ },
+ "ws2812": {
+ "pin": "D3"
+ },
+ "rgb_matrix": {
+ "driver": "ws2812",
+ "layout": [
+ {"flags": 4, "matrix": [4, 5], "x": 103, "y": 48}, // L LB01 | SW29
+ {"flags": 4, "matrix": [4, 4], "x": 103, "y": 64}, // L LB02 | SW28
+ {"flags": 4, "matrix": [4, 3], "x": 86, "y": 64}, // L LB03 | SW27
+ {"flags": 4, "matrix": [3, 5], "x": 86, "y": 48}, // L LB04 | SW24
+ {"flags": 4, "matrix": [2, 5], "x": 86, "y": 32}, // L LB05 | SW18
+ {"flags": 4, "matrix": [1, 5], "x": 86, "y": 15}, // L LB06 | SW12
+ {"flags": 4, "matrix": [0, 5], "x": 86, "y": 0}, // L LB07 | SW6
+ {"flags": 4, "matrix": [0, 4], "x": 69, "y": 0}, // L LB08 | SW5
+ {"flags": 4, "matrix": [1, 4], "x": 69, "y": 16}, // L LB09 | SW11
+ {"flags": 4, "matrix": [2, 4], "x": 69, "y": 32}, // L LB10 | SW17
+ {"flags": 4, "matrix": [3, 4], "x": 69, "y": 48}, // L LB11 | SW23
+ {"flags": 4, "matrix": [4, 2], "x": 69, "y": 64}, // L LB12 | SW26
+ {"flags": 4, "matrix": [4, 1], "x": 52, "y": 64}, // L LB13 | SW25
+ {"flags": 4, "matrix": [3, 3], "x": 52, "y": 48}, // L LB14 | SW22
+ {"flags": 4, "matrix": [2, 3], "x": 52, "y": 32}, // L LB15 | SW16
+ {"flags": 4, "matrix": [1, 3], "x": 52, "y": 16}, // L LB16 | SW10
+ {"flags": 4, "matrix": [0, 3], "x": 52, "y": 0}, // L LB17 | SW4
+ {"flags": 4, "matrix": [0, 2], "x": 34, "y": 0}, // L LB18 | SW3
+ {"flags": 4, "matrix": [1, 2], "x": 34, "y": 16}, // L LB19 | SW9
+ {"flags": 4, "matrix": [2, 2], "x": 34, "y": 32}, // L LB20 | SW15
+ {"flags": 4, "matrix": [3, 2], "x": 34, "y": 48}, // L LB21 | SW21
+ {"flags": 4, "matrix": [3, 1], "x": 17, "y": 48}, // L LB22 | SW20
+ {"flags": 4, "matrix": [2, 1], "x": 17, "y": 32}, // L LB23 | SW14
+ {"flags": 4, "matrix": [1, 1], "x": 17, "y": 16}, // L LB24 | SW8
+ {"flags": 4, "matrix": [0, 1], "x": 17, "y": 0}, // L LB25 | SW2
+ {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, // L LB26 | SW1
+ {"flags": 4, "matrix": [1, 0], "x": 0, "y": 16}, // L LB27 | SW7
+ {"flags": 4, "matrix": [2, 0], "x": 0, "y": 32}, // L LB28 | SW13
+ {"flags": 4, "matrix": [3, 0], "x": 0, "y": 48}, // L LB29 | SW19
+ {"flags": 4, "matrix": [9, 5], "x": 120, "y": 48}, // R LB30 | SW58
+ {"flags": 4, "matrix": [9, 4], "x": 120, "y": 64}, // R LB31 | SW57
+ {"flags": 4, "matrix": [9, 3], "x": 137, "y": 64}, // R LB32 | SW56
+ {"flags": 4, "matrix": [8, 5], "x": 137, "y": 48}, // R LB33 | SW53
+ {"flags": 4, "matrix": [7, 5], "x": 137, "y": 32}, // R LB34 | SW47
+ {"flags": 4, "matrix": [6, 5], "x": 137, "y": 15}, // R LB35 | SW41
+ {"flags": 4, "matrix": [5, 5], "x": 137, "y": 0}, // R LB36 | SW35
+ {"flags": 4, "matrix": [5, 4], "x": 155, "y": 0}, // R LB37 | SW34
+ {"flags": 4, "matrix": [6, 4], "x": 155, "y": 16}, // R LB38 | SW40
+ {"flags": 4, "matrix": [7, 4], "x": 155, "y": 32}, // R LB39 | SW46
+ {"flags": 4, "matrix": [8, 4], "x": 155, "y": 48}, // R LB40 | SW52
+ {"flags": 4, "matrix": [9, 2], "x": 155, "y": 64}, // R LB41 | SW55
+ {"flags": 4, "matrix": [9, 1], "x": 172, "y": 64}, // R LB42 | SW54
+ {"flags": 4, "matrix": [8, 3], "x": 172, "y": 48}, // R LB43 | SW51
+ {"flags": 4, "matrix": [7, 3], "x": 172, "y": 32}, // R LB44 | SW45
+ {"flags": 4, "matrix": [6, 3], "x": 172, "y": 16}, // R LB45 | SW39
+ {"flags": 4, "matrix": [5, 3], "x": 172, "y": 0}, // R LB46 | SW33
+ {"flags": 4, "matrix": [5, 2], "x": 189, "y": 0}, // R LB47 | SW32
+ {"flags": 4, "matrix": [6, 2], "x": 189, "y": 16}, // R LB48 | SW38
+ {"flags": 4, "matrix": [7, 2], "x": 189, "y": 32}, // R LB49 | SW44
+ {"flags": 4, "matrix": [8, 2], "x": 189, "y": 48}, // R LB50 | SW50
+ {"flags": 4, "matrix": [8, 1], "x": 206, "y": 48}, // R LB51 | SW49
+ {"flags": 4, "matrix": [7, 1], "x": 206, "y": 32}, // R LB52 | SW43
+ {"flags": 4, "matrix": [6, 1], "x": 206, "y": 16}, // R LB53 | SW37
+ {"flags": 4, "matrix": [5, 1], "x": 206, "y": 0}, // R LB54 | SW31
+ {"flags": 4, "matrix": [5, 0], "x": 224, "y": 0}, // R LB55 | SW30
+ {"flags": 4, "matrix": [6, 0], "x": 224, "y": 16}, // R LB56 | SW36
+ {"flags": 4, "matrix": [7, 0], "x": 224, "y": 32}, // R LB57 | SW42
+ {"flags": 4, "matrix": [8, 0], "x": 224, "y": 48} // R LB58 | SW48
+ ]
+ }
+ }
diff --git a/keyboards/clickety_split/leeloo/rev3/rules.mk b/keyboards/clickety_split/leeloo/rev3/rules.mk
new file mode 100644
index 0000000000..80a6663b9c
--- /dev/null
+++ b/keyboards/clickety_split/leeloo/rev3/rules.mk
@@ -0,0 +1 @@
+# Intentionally left blank.
diff --git a/keyboards/clickety_split/leeloo/rules.mk b/keyboards/clickety_split/leeloo/rules.mk
index e99b3e15ed..9d35960f7c 100644
--- a/keyboards/clickety_split/leeloo/rules.mk
+++ b/keyboards/clickety_split/leeloo/rules.mk
@@ -1,15 +1,2 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = no # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-SPLIT_KEYBOARD = yes
-
-DEFAULT_FOLDER = clickety_split/leeloo/rev1
+# Default Folder
+DEFAULT_FOLDER = clickety_split/leeloo/rev3
diff --git a/keyboards/clueboard/2x1800/2021/rules.mk b/keyboards/clueboard/2x1800/2021/rules.mk
index e9f44d7bd2..19c7eb2946 100644
--- a/keyboards/clueboard/2x1800/2021/rules.mk
+++ b/keyboards/clueboard/2x1800/2021/rules.mk
@@ -1 +1,2 @@
-QUANTUM_LIB_SRC += max7219.c spi_master.c
+SPI_DRIVER_REQUIRED = yes
+QUANTUM_LIB_SRC += max7219.c
diff --git a/keyboards/clueboard/66/keymaps/badger/keymap.c b/keyboards/clueboard/66/keymaps/badger/keymap.c
deleted file mode 100644
index 4c40e5ec19..0000000000
--- a/keyboards/clueboard/66/keymaps/badger/keymap.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-Copyright 2020 Dan White <opensource@bluetufa.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include "badger.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY_LINUX] = LAYOUT_66_ansi(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- MOVE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RGUI, KC_LALT, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [_MOVE_LINUX] = LAYOUT_66_ansi(
- KC_ESC, VD_1, VD_2, VD_3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, IJ_UP, IJ_DOWN, KC_DEL, KC_PGUP,
- _______, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, IJ_OUT, KC_PGUP, KC_HOME, KC_END, KC_PGDN, IJ_BACK, IJ_FWD, KC_INS, KC_PGDN,
- _______, WM_LH, WM_UH, WM_RH, WD_FRWD, MAC_POP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN, _______,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, WD_BACK, KC_MNXT, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______, KC_BRIU,
- _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_BRID, KC_END),
-
- [_QWERTY_MAC] = LAYOUT_66_ansi(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- MOVE_MAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RGUI, KC_LALT, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [_MOVE_MAC] = LAYOUT_66_ansi(
- KC_ESC, M_VD1, M_VD2, M_VD3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, IJ_UP, IJ_DOWN, KC_DEL, KC_PGUP,
- _______, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, IJ_OUT, KC_PGUP, KC_HOME, KC_END, KC_PGDN, IJ_BACK, IJ_FWD, KC_INS, KC_PGDN,
- _______, MM_LH, MM_MAX, MM_RH, WD_FRWD, MAC_POP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN, _______,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, WD_BACK, KC_MNXT, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______, KC_BRIU,
- _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_BRID, KC_END),
-
- [_ADJUST] = LAYOUT_66_ansi(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_VOLU,
- _______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, AG_SWAP, AG_NORM, KC_INS, KC_VOLD,
- _______, GE_SWAP, GE_NORM, DB_TOGG, AG_SWAP, AG_NORM, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
- _______, DF_1, DF_2, KC_CAPS, _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, _______, _______, KC_BRIU,
- _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_BRID, KC_END)
-};
-
diff --git a/keyboards/clueboard/66/keymaps/magicmonty/keymap.c b/keyboards/clueboard/66/keymaps/magicmonty/keymap.c
index 238147537d..2a0cf1509f 100644
--- a/keyboards/clueboard/66/keymaps/magicmonty/keymap.c
+++ b/keyboards/clueboard/66/keymaps/magicmonty/keymap.c
@@ -172,7 +172,7 @@ void clueboard_set_midi_led(uint8_t base_oct, uint8_t val)
uint8_t sat = 255;
for (uint8_t i = 0; i < RGBLED_NUM; i++) {
- sethsv(oct_hues[base_oct], sat, val, (LED_TYPE *)&led[i]);
+ sethsv(oct_hues[base_oct], sat, val, (rgb_led_t *)&led[i]);
}
uint8_t next_oct = base_oct < MAX_OCT ? base_oct + 1 : base_oct;
@@ -183,11 +183,11 @@ void clueboard_set_midi_led(uint8_t base_oct, uint8_t val)
for (uint8_t i = 0; i < 3; i++) {
- sethsv(next_hue, next_sat, next_val, (LED_TYPE *)&led[i]);
+ sethsv(next_hue, next_sat, next_val, (rgb_led_t *)&led[i]);
}
for (uint8_t i = 11; i < 14; i++) {
- sethsv(next_hue, next_sat, next_val, (LED_TYPE *)&led[i]);
+ sethsv(next_hue, next_sat, next_val, (rgb_led_t *)&led[i]);
}
rgblight_set();
diff --git a/keyboards/clueboard/66_hotswap/gen1/config.h b/keyboards/clueboard/66_hotswap/gen1/config.h
index b50b676713..922426e87b 100644
--- a/keyboards/clueboard/66_hotswap/gen1/config.h
+++ b/keyboards/clueboard/66_hotswap/gen1/config.h
@@ -33,18 +33,10 @@
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define LED_DRIVER_ADDR_1 0b1110100
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define I2C1_SCL_PIN B8
#define I2C1_SDA_PIN B9
-#define LED_DRIVER_COUNT 1
#define LED_MATRIX_LED_COUNT 71
// LED Matrix Animation modes. Explicitly enabled
diff --git a/keyboards/clueboard/66_hotswap/gen1/gen1.c b/keyboards/clueboard/66_hotswap/gen1/gen1.c
index a935884a0b..7af0b964da 100644
--- a/keyboards/clueboard/66_hotswap/gen1/gen1.c
+++ b/keyboards/clueboard/66_hotswap/gen1/gen1.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef LED_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | LED address
diff --git a/keyboards/contra/keymaps/losinggeneration/README.md b/keyboards/contra/keymaps/losinggeneration/README.md
deleted file mode 100644
index affd2fb9b4..0000000000
--- a/keyboards/contra/keymaps/losinggeneration/README.md
+++ /dev/null
@@ -1,30 +0,0 @@
-losinggeneration's Contra Layout
-============================
-
-This build uses the MIT layout.
-
-See description of the layout in the common folder
-[here](../../../../users/losinggeneration/README.md)
-
-## Features
-- Adjust
- - Removed AGSwap, AGNorm, & Del
- - Added Caps Lock, F1-F12 in a 4x3 grid, arrow cluster,
- and layer transitions to the new layers.
- - Moved Reset & Audio control to the right side
-
-## Layouts
-
-### Adjust (Lower + Raise)
-
-```
- ,-----------------------------------------------------------------------------------.
- | | F1 | F2 | F3 | F4 | | RESET| Game |Numpad|Mouse | |Sleep |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | F5 | F6 | F7 | F8 | | |Qwerty|Colmak|Workmn|Dvorak| |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | CAPS | F9 | F10 | F11 | F12 | | | | | | Up | |
- |------+------+------+------+------+-------------+------+------+------+------+------|
- | | | | | | | | XXX | Left | Down |Right |
- `-----------------------------------------------------------------------------------'
-```
diff --git a/keyboards/contra/keymaps/losinggeneration/config.h b/keyboards/contra/keymaps/losinggeneration/config.h
deleted file mode 100644
index 4a64e977c9..0000000000
--- a/keyboards/contra/keymaps/losinggeneration/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@hexwire.com>
-Copyright 2018 Harley Laue <losinggeneration@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-long with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define USE_MIT_LAYOUT
-
-#define TAPPING_TERM 250
diff --git a/keyboards/contra/keymaps/losinggeneration/keymap.c b/keyboards/contra/keymaps/losinggeneration/keymap.c
deleted file mode 100644
index c7fb08b8d8..0000000000
--- a/keyboards/contra/keymaps/losinggeneration/keymap.c
+++ /dev/null
@@ -1,40 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "losinggeneration-config.h"
-#include "losinggeneration-keymap.h"
-
-extern keymap_config_t keymap_config;
-
-#define MT_CAPS LSFT_T(KC_CAPS)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QWERTY] = CATMAP( QWERTY_LAYER ),
-[_COLEMAK] = CATMAP( COLEMAK_LAYER ),
-[_WORKMAN] = CATMAP( WORKMAN_LAYER ),
-[_DVORAK] = CATMAP( DVORAK_LAYER ),
-[_GAME] = CATMAP( GAME_LAYER ),
-[_NUMPAD] = CATMAP( NUMPAD_LAYER ),
-[_MOUSE] = CATMAP( MOUSE_LAYER ),
-[_LOWER] = CATMAP( LOWER_LAYER ),
-[_RAISE] = CATMAP( RAISE_LAYER ),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | | QK_BOOT| Game |Numpad|Mouse | |Sleep |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F5 | F6 | F7 | F8 | | |Qwerty|Colmak|Workmn|Dvorak| |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | CAPS | F9 | F10 | F11 | F12 | | | | | | Up | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | XXX | Left | Down |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = CATMAP(
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, QK_BOOT, TO_GAME, TO_NUM , TO_MS , _______, KC_SLEP,
- _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , _______, _______, QWERTY , COLEMAK, WORKMAN, DVORAK , _______,
- MT_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, KC_UP , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT
-)
-
-};
-
diff --git a/keyboards/contra/keymaps/losinggeneration/rules.mk b/keyboards/contra/keymaps/losinggeneration/rules.mk
deleted file mode 100644
index 34b0ba318f..0000000000
--- a/keyboards/contra/keymaps/losinggeneration/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-AUDIO_ENABLE = no # Audio output on port C6
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-COMMAND_ENABLE = no # Commands for debug and configuration
-CONSOLE_ENABLE = no # Console for debug(+400)
-MIDI_ENABLE = no # MIDI controls
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
diff --git a/keyboards/controllerworks/mini36/config.h b/keyboards/controllerworks/mini36/config.h
index 3a094c2fd1..4a0c48b1b0 100644
--- a/keyboards/controllerworks/mini36/config.h
+++ b/keyboards/controllerworks/mini36/config.h
@@ -22,11 +22,6 @@
#define RGB_MATRIX_SPLIT \
{ 24, 24 }
-#define SPLIT_TRANSPORT_MIRROR
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-
#define I2C_DRIVER I2CD0
#define I2C1_SCL_PIN GP25
#define I2C1_SDA_PIN GP24
diff --git a/keyboards/controllerworks/mini36/info.json b/keyboards/controllerworks/mini36/info.json
index 534dee94f1..3a49b210ac 100644
--- a/keyboards/controllerworks/mini36/info.json
+++ b/keyboards/controllerworks/mini36/info.json
@@ -41,7 +41,13 @@
},
"soft_serial_pin": "GP1",
"transport": {
- "protocol": "serial"
+ "protocol": "serial",
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true,
+ "modifiers": true
+ }
}
},
"features": {
diff --git a/keyboards/controllerworks/mini42/config.h b/keyboards/controllerworks/mini42/config.h
index e7fc529592..20b6bbac8d 100644
--- a/keyboards/controllerworks/mini42/config.h
+++ b/keyboards/controllerworks/mini42/config.h
@@ -20,11 +20,6 @@
#define WS2812_PIO_USE_PIO1
#define RGB_MATRIX_LED_COUNT 54
-#define SPLIT_TRANSPORT_MIRROR
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-
#undef I2C_DRIVER
#define I2C_DRIVER I2CD0
#undef I2C1_SCL_PIN
diff --git a/keyboards/controllerworks/mini42/info.json b/keyboards/controllerworks/mini42/info.json
index ae70408a9f..5d1d56db1a 100644
--- a/keyboards/controllerworks/mini42/info.json
+++ b/keyboards/controllerworks/mini42/info.json
@@ -29,7 +29,6 @@
},
"split": {
"enabled": true,
- "main": "left",
"matrix_pins": {
"right": {
"direct": [
@@ -42,7 +41,13 @@
},
"soft_serial_pin": "GP1",
"transport": {
- "protocol": "serial"
+ "protocol": "serial",
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true,
+ "modifiers": true
+ }
}
},
"features": {
diff --git a/keyboards/converter/adb_usb/keymaps/zyber/keymap.c b/keyboards/converter/adb_usb/keymaps/zyber/keymap.c
deleted file mode 100644
index a34b46d6de..0000000000
--- a/keyboards/converter/adb_usb/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,15 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- LAYOUT_ext_ansi(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR,KC_SCRL,KC_PAUS, KC_EJCT,
- KC_GRV, KC_1, KC_2, KC_3, TD(SSHT), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_EQL, KC_PSLS, KC_PAST,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS,
- KC_LCAP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT
- ),
-};
diff --git a/keyboards/converter/m0110_usb/keymaps/zyber/keymap.c b/keyboards/converter/m0110_usb/keymaps/zyber/keymap.c
deleted file mode 100644
index c3b85313ce..0000000000
--- a/keyboards/converter/m0110_usb/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Default:
- * M0110 M0120
- * ,---------------------------------------------------------. ,---------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backs| |Nlk| =| /| *|
- * |---------------------------------------------------------| |---------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| Å| ¨|Ent| | 7| 8| 9| -|
- * |------------------------------------------------------| e| |---------------|
- * |Ctrl | A| S| D| F| G| H| J| K| L| Ö| Ä| '| r| | 4| 5| 6| +|
- * |---------------------------------------------------------| |---------------|
- * |Shft| §| Z| X| C| V| B| N| M| ,| .| /| -|Shft| | 1| 2| 3| |
- * `---------------------------------------------------------' |-----------|Ent|
- * |Opt|Mac | Space |Fn |Opt| | 0| .| |
- * `-----------------------------------------------' `---------------'
- * M0110A
- * ,---------------------------------------------------------. ,---------------.
- * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backs| |Nlk| =| /| *|
- * |---------------------------------------------------------| |---------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | 7| 8| 9| -|
- * |-----------------------------------------------------' | |---------------|
- * |Caps | A| S| D| F| G| H| J| K| L| ;| '|Return| | 4| 5| 6| +|
- * |---------------------------------------------------------| |---------------|
- * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shft|Up | | 1| 2| 3| |
- * |---------------------------------------------------------| |-----------|Ent|
- * |Opt |Mac | Space | \|Lft|Rgt|Dn | | 0| .| |
- * `---------------------------------------------------------' `---------------'
- */
-
- [0] = LAYOUT_iso(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NUM, KC_EQL, KC_PSLS, KC_PAST,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_P7, KC_P8, KC_P9, KC_PMNS,
- CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_P4, KC_P5, KC_P6, KC_PPLS,
- KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_P1, KC_P2, KC_P3, KC_PENT,
- KC_LALT, KC_LGUI, KC_SPC, MO(1), LT(1, KC_BSLS), KC_DOWN),
-
-
- /* Cursor Layer:
- * M0110 M0120
- * ,---------------------------------------------------------. ,---------------.
- * |RES| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delet| |Nlk| =| /| *|
- * |---------------------------------------------------------| |---------------|
- * |Tab |Hom| Up|PgU|Rst| | | |Psc|Slk|Pau|Up |INS| | | 7| 8| 9| -|
- * |---------------------------------------------------------| |---------------|
- * |Ctrl |Lef|Dow|Rig| | | | |Hom|PgU|Lef|Rig|Return| | 4| 5| 6| +|
- * |---------------------------------------------------------| |---------------|
- * |Shift |End| |PgD| | | | |End|PgD|Dow|Shift | | 1| 2| 3| |
- * `---------------------------------------------------------' |-----------|Ent|
- * |Opt|Mac | Space |Fn |Opt| | 0| .| |
- * `-----------------------------------------------' `---------------'
- * M0110A
- * ,---------------------------------------------------------. ,---------------.
- * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delet| |Nlk| =| /| *|
- * |---------------------------------------------------------| |---------------|
- * |Tab |Hom| Up|PgU| | | | |Psc|Slk|Pau|Up |INS| | | 7| 8| 9| -|
- * |-----------------------------------------------------' | |---------------|
- * |Caps |Lef|Dow|Rig| | | | |Hom|PgU|Lef|Rig|Return| | 4| 5| 6| +|
- * |---------------------------------------------------------| |---------------|
- * |Ctrl |End| |PgD| | | | |End|PgD|Dow|Shft|PgU| | 1| 2| 3| |
- * |---------------------------------------------------------| |-----------|Ent|
- * |Opt |Mac | Space | \|Hom|End|PgD| | 0| .| |
- * `---------------------------------------------------------' `---------------'
- */
-
- [1] = LAYOUT_iso(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______),
-};
diff --git a/keyboards/converter/m0110_usb/keymaps/zyber/rules.mk b/keyboards/converter/m0110_usb/keymaps/zyber/rules.mk
deleted file mode 100644
index adaa1b5696..0000000000
--- a/keyboards/converter/m0110_usb/keymaps/zyber/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-F_CPU = 16000000
-BOOTLOADER = atmel-dfu
-CONSOLE_ENABLE = no
diff --git a/keyboards/converter/palm_usb/rules.mk b/keyboards/converter/palm_usb/rules.mk
index e02b683d3b..72d9daf6d9 100644
--- a/keyboards/converter/palm_usb/rules.mk
+++ b/keyboards/converter/palm_usb/rules.mk
@@ -14,6 +14,6 @@ RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
CUSTOM_MATRIX = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
DEFAULT_FOLDER = converter/palm_usb/stowaway
diff --git a/keyboards/converter/sun_usb/rules.mk b/keyboards/converter/sun_usb/rules.mk
index ee54c6cf11..ae20f51b37 100644
--- a/keyboards/converter/sun_usb/rules.mk
+++ b/keyboards/converter/sun_usb/rules.mk
@@ -14,6 +14,6 @@ RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
CUSTOM_MATRIX = yes
SRC += matrix.c led.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
DEFAULT_FOLDER = converter/sun_usb/type5
diff --git a/keyboards/converter/sun_usb/type5/keymaps/sigma/keymap.c b/keyboards/converter/sun_usb/type5/keymaps/sigma/keymap.c
deleted file mode 100644
index 3996b7d2e1..0000000000
--- a/keyboards/converter/sun_usb/type5/keymaps/sigma/keymap.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-Copyright 2018 Yann Hodique <yann.hodique@gmail.com> @sigma
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "sigma.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] =
- {
- [_QWERTY] = LAYOUT_us_unix(
- QK_LEAD, KC_SCRT, KC_F1,KC_F2,KC_F3,KC_F4, KC_F5,KC_F6,KC_F7,KC_F8, KC_F9,KC_F10,KC_F11,KC_F12, KC_PSCR,KC_SCRL,KC_PAUS, KC_MUTE,KC_VOLD,KC_VOLU,KC_OS_LOCK,
- KC_STOP, KC_OS_REDO, KC_ESC,KC_1,KC_2,KC_3,KC_4,KC_5,KC_6,KC_7,KC_8,KC_9,KC_0,KC_MINS,KC_EQL,KC_BSLS,KC_GRV, KC_INS, KC_HOME,KC_PGUP, KC_NUM, KC_PSLS,KC_PAST,KC_PMNS,
- VRSN, KC_OS_UNDO, KC_TAB, KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_O,KC_P,KC_LBRC,KC_RBRC, KC_BSPC, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS,
- KC_MAKE, KC_OS_COPY, KC_LCTL, KC_A,KC_S,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_SCLN,KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6,
- KC_EXECUTE,KC_OS_PASTE, KC_LSFT, KC_Z,KC_X,KC_C,KC_V,KC_B,KC_N,KC_M,KC_COMM,KC_DOT,KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT,
- KC_FIND, KC_OS_CUT, KC_CAPS,KC_LGUI,KC_LALT, KC_SPC, KC_RGUI,KC_APP,KC_RALT, KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT
- ),
- };
diff --git a/keyboards/converter/sun_usb/type5/keymaps/sigma/readme.md b/keyboards/converter/sun_usb/type5/keymaps/sigma/readme.md
deleted file mode 100644
index 6ae011f866..0000000000
--- a/keyboards/converter/sun_usb/type5/keymaps/sigma/readme.md
+++ /dev/null
@@ -1,12 +0,0 @@
-Overview
-========
-
-This is my personal Sun Type 5 configuration.
-
-How to build
-------------
-
- make converter/sun_usb/type5:sigma:teensy
-
-Layers
-------
diff --git a/keyboards/converter/sun_usb/type5/keymaps/sigma/rules.mk b/keyboards/converter/sun_usb/type5/keymaps/sigma/rules.mk
deleted file mode 100644
index f1de332c0c..0000000000
--- a/keyboards/converter/sun_usb/type5/keymaps/sigma/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-BOOTLOADER = halfkay
-UNICODE_ENABLE = yes
diff --git a/keyboards/converter/usb_usb/keymaps/narze/README.md b/keyboards/converter/usb_usb/keymaps/narze/README.md
deleted file mode 100644
index eb9dbbf60b..0000000000
--- a/keyboards/converter/usb_usb/keymaps/narze/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# narze's layout for usb-usb converter
-
-## Key features
-- Qwerty + [Colemak](https://colemak.com) layouts, and you can type Qwerty on software-level Colemak as well. Very useful for gaming or when your friend wanna type something but don't use Colemak.
-- [(S)uper (D)uper Mode](/users/narze/readme.md)
-
-## Build instructions
-- `cd /path/to/qmk_firmware`
-- Ensure latest libraries are loaded `make git-submodule`
-- Build & flash : `make converter/usb_usb:narze:flash`
diff --git a/keyboards/converter/usb_usb/keymaps/narze/config.h b/keyboards/converter/usb_usb/keymaps/narze/config.h
deleted file mode 100644
index a7fccc4187..0000000000
--- a/keyboards/converter/usb_usb/keymaps/narze/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#pragma once
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 100
-
-#define COMBO_TERM 20
-
-#define PERMISSIVE_HOLD
-
-#define SUPER_DUPER_SOUND S__NOTE(_B1)
-
-#define MOUSEKEY_DELAY 100
-
-#define USB_POLLING_INTERVAL_MS 1
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
diff --git a/keyboards/converter/usb_usb/keymaps/narze/keymap.c b/keyboards/converter/usb_usb/keymaps/narze/keymap.c
deleted file mode 100644
index 7b1b0ec445..0000000000
--- a/keyboards/converter/usb_usb/keymaps/narze/keymap.c
+++ /dev/null
@@ -1,167 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "narze.h"
-#include "keymap_colemak.h"
-
-enum usb_usb_layers {
- _QWERTY,
- _COLEMAK,
- _QWOC,
- _SUPERDUPER,
-};
-
-enum usb_usb_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- QWOC,
- SUPERDUPER,
- SDTOGG, // Toggle SuperDuper
- GUI_UNDS,
- LSFT_LPRN,
- RSFT_RPRN,
-};
-
-#define HPR_ESC ALL_T(KC_ESC)
-#define SFT_ENT SFT_T(KC_ENT)
-#define BRWS_L S(LGUI(KC_LBRC))
-#define BRWS_R S(LGUI(KC_RBRC))
-
-enum process_combo_event {
- CB_SUPERDUPER,
-};
-
-const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = {
- /* 0: plain Qwerty without layer switching
- * ,---------------. ,---------------. ,---------------.
- * |F13|F14|F15|F16| |F17|F18|F19|F20| |F21|F22|F23|F24|
- * ,---. |---------------| |---------------| |---------------| ,-----------. ,---------------. ,-------.
- * |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau| |VDn|VUp|Mut|Pwr| | Help |
- * `---' `---------------' `---------------' `---------------' `-----------' `---------------' `-------'
- * ,-----------------------------------------------------------. ,-----------. ,---------------. ,-------.
- * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|JPY|Bsp| |Ins|Hom|PgU| |NmL| /| *| -| |Stp|Agn|
- * |-----------------------------------------------------------| |-----------| |---------------| |-------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ | |Del|End|PgD| | 7| 8| 9| +| |Mnu|Und|
- * |-----------------------------------------------------------| `-----------' |---------------| |-------|
- * |CapsL | A| S| D| F| G| H| J| K| L| ;| :| #|Retn| | 4| 5| 6|KP,| |Sel|Cpy|
- * |-----------------------------------------------------------| ,---. |---------------| |-------|
- * |Shft| <| Z| X| C| V| B| N| M| ,| ,| /| RO|Shift | |Up | | 1| 2| 3|KP=| |Exe|Pst|
- * |-----------------------------------------------------------| ,-----------. |---------------| |-------|
- * |Ctl|Gui|Alt|MHEN|HNJ| Space |H/E|HENK|KANA|Alt|Gui|App|Ctl| |Lef|Dow|Rig| | 0 | .|Ent| |Fnd|Cut|
- * `-----------------------------------------------------------' `-----------' `---------------' `-------'
- */
- [_QWERTY] = LAYOUT_all(
- KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24,
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, KC_HELP,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_STOP, KC_AGIN,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_MENU, KC_UNDO,
- HPR_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PCMM, KC_SLCT, KC_COPY,
- LSFT_LPRN,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, RSFT_RPRN, KC_UP, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_EXEC, KC_PSTE,
- KC_LCTL, KC_LALT, GUI_UNDS,KC_INT5, KC_LNG2, KC_SPC, KC_LNG1, KC_INT4, KC_INT2, KC_BSPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT, KC_FIND, KC_CUT
- ),
- [_COLEMAK] = LAYOUT_all(
- KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24,
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, KC_HELP,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_STOP, KC_AGIN,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_MENU, KC_UNDO,
- HPR_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PCMM, KC_SLCT, KC_COPY,
- LSFT_LPRN,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, RSFT_RPRN, KC_UP, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_EXEC, KC_PSTE,
- KC_LCTL, KC_LALT, GUI_UNDS,KC_INT5, KC_LNG2, KC_SPC, KC_LNG1, KC_INT4, KC_INT2, KC_BSPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT, KC_FIND, KC_CUT
- ),
- [_QWOC] = LAYOUT_all(
- KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24,
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, KC_HELP,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_STOP, KC_AGIN,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_MENU, KC_UNDO,
- HPR_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PCMM, KC_SLCT, KC_COPY,
- LSFT_LPRN,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, RSFT_RPRN, KC_UP, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_EXEC, KC_PSTE,
- KC_LCTL, KC_LALT, GUI_UNDS,KC_INT5, KC_LNG2, KC_SPC, KC_LNG1, KC_INT4, KC_INT2, KC_BSPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT, KC_FIND, KC_CUT
- ),
- [_SUPERDUPER] = LAYOUT_all(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, BRWS_L, BRWS_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_SPC, KC_LALT, _______, _______, KC_BSPC, KC_LGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
-
-void matrix_init_user(void) {
-
-}
-
-void matrix_scan_user(void) {
-
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
-
- set_superduper_key_combo_layer(_QWERTY);
- }
- return false;
-
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
-
- set_superduper_key_combo_layer(_COLEMAK);
- }
- return false;
-
- case QWOC:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWOC);
-
- set_superduper_key_combo_layer(_QWOC);
- }
- return false;
-
- case SDTOGG:
- if (record->event.pressed) {
- toggle_superduper_mode();
- }
- return false;
-
- // Macros
-
- // 1. Hold for LGUI, tap for Underscore
- case GUI_UNDS:
- perform_space_cadet(record, keycode, KC_LGUI, KC_LSFT, KC_MINS);
- return false;
-
- // 2. Hold for LSHIFT, tap for Parens open
- case LSFT_LPRN:
- perform_space_cadet(record, keycode, KC_LSFT, KC_LSFT, KC_9);
- return false;
-
- // 3. Hold for RSHIFT, tap for Parens close
- case RSFT_RPRN:
- perform_space_cadet(record, keycode, KC_RSFT, KC_RSFT, KC_0);
- return false;
-
- default:
- return true;
- }
- return true;
-}
-
-void matrix_setup(void) {
- set_superduper_key_combos();
-}
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- if (pressed) {
- switch(combo_index) {
- case CB_SUPERDUPER:
- layer_on(_SUPERDUPER);
- break;
- }
- } else {
- layer_off(_SUPERDUPER);
- unregister_mods(MOD_BIT(KC_LGUI) | MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT)); // Sometimes mods are held, unregister them
- }
-}
diff --git a/keyboards/converter/usb_usb/keymaps/narze/rules.mk b/keyboards/converter/usb_usb/keymaps/narze/rules.mk
deleted file mode 100644
index 2d982de628..0000000000
--- a/keyboards/converter/usb_usb/keymaps/narze/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-EXTRAKEY_ENABLE = no
-COMBO_ENABLE = yes
diff --git a/keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c b/keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index e5b110790d..0000000000
--- a/keyboards/coseyfannitutti/discipline/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ Bckspc│Hom│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│| \│PgU│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │HyCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│End│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤
- * │Ctrl│ Opt│ Cmd│ Space │ Cmd │FnPly│Lef│Dow│Rig│
- * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
- */
-[_BASE] = LAYOUT_65_ansi_2_right_mods(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, PLY_FN1, KC_LEFT, KC_DOWN, KC_RGHT
-),
-/* Function Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- * │` ~│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│ Del │SlD│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │F13│F14│F15│ LHP │VlU│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │VlD│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │RST│ │Mke│Prv│Nxt│Ply│ │PgU│Mut│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤
- * │ │ │ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
- */
-[_FN1] = LAYOUT_65_ansi_2_right_mods(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, MC_SLPD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, MC_LHPD, KC_VOLU,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD,
- _______, _______, _______, _______, _______, QK_BOOT, _______, QM_MAKE, KC_MPRV, KC_MNXT, KC_MPLY, _______, KC_PGUP, KC_MUTE,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
-)
-};
diff --git a/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/config.h b/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/config.h
deleted file mode 100644
index 1c1f66c89f..0000000000
--- a/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright 2021 James Young (@noroadsleft)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define ANSI_NUBS_ROW 3
-#define ANSI_NUBS_COL 2
diff --git a/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/keymap.c b/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/keymap.c
deleted file mode 100644
index 1c7f42f210..0000000000
--- a/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/keymap.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright 2021-2022 James Young (@noroadsleft)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "noroadsleft.h"
-
-enum layer_names {
- _DV,
- _QW,
- _NP,
- _FN,
- _SY
-};
-
-#define FN_CAPS LT(_FN, KC_CAPS)
-#define CTL_GRV MT(MOD_LCTL, KC_GRV)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_DV] = LAYOUT_65_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSPC, KC_HOME,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_PGUP,
- FN_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, KC_PGDN,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_UP, KC_END,
- CTL_GRV, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_QW] = LAYOUT_65_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- CTL_GRV, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_NP] = LAYOUT_65_ansi(
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, KC_E, KC_F, _______, KC_P4, KC_P5, KC_P6, KC_PAST, KC_PSLS, KC_PEQL, _______, _______,
- _______, _______, _______, _______, KC_C, KC_D, _______, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PMNS, KC_PENT, _______,
- _______, _______, _______, _______, KC_A, KC_B, _______, KC_P0, _______, KC_PDOT, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_FN] = LAYOUT_65_ansi(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, DM_REC1,
- _______, KC_CALC, KC_APP, _______, _______, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SCRL, KC_PAUS, DM_REC2,
- _______, M_SALL, _______, _______, G_PWD, _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, DM_RSTP, DM_PLY1,
- _______, M_UNDO, M_CUT, M_COPY, M_PASTE, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, TO(_SY), _______, _______, DM_PLY2,
- _______, _______, _______, TG(_NP), _______, _______, _______, _______, _______, _______
- ),
-
- [_SY] = LAYOUT_65_ansi(
- TG(_SY), TO(_DV), TO(_QW), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, DB_TOGG, XXXXXXX, VRSN, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- )
-
-};
diff --git a/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/rules.mk b/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/rules.mk
deleted file mode 100644
index 9e6797ed30..0000000000
--- a/keyboards/coseyfannitutti/discipline/keymaps/noroadsleft/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-DYNAMIC_MACRO_ENABLE = yes
diff --git a/keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c b/keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index dd95901367..0000000000
--- a/keyboards/coseyfannitutti/romeo/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,111 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base Layer
-* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
-* │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ Bspc│
-* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
-* │HyEsc │ A │ S │ D │ F │ G │ H │ J │ K │ L │ Enter│
-* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
-* │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│ ?/Sft│
-* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
-* │Ctrl│Opt│Cmd│ Space │ Cmd│Opt│ Lwr│
-* └────┴───┴───┴────────────────────────┴────┴───┴────┘
-*/
-[_BASE] = LAYOUT_ansi_40(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SF_SLSH,
- KC_LCTL, KC_LOPT, KC_LCMD, SPC_RAI, KC_RCMD, KC_ROPT, LOWER
-),
-/* Lower
-* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
-* │Del │BrD│BrU│Msn│LHP│   │   │   │PgU│Hom│End│ SlpD│
-* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
-* │HyCaps│Mut│VlU│NxW│PvT│Bck│Fwd│NxT│PgD│ ↑ │ Play│
-* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
-* │ │Prv│VlD│Nxt│1PX│1Ps│   │ ← │ ↓ │ → │ │
-* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
-* │ │ │ │ │ │ │ │
-* └────┴───┴───┴────────────────────────┴────┴───┴────┘
-*/
-[_LOWER] = LAYOUT_ansi_40(
- KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, KC_PGUP, KC_HOME, KC_END, MC_SLPD,
- HY_CAPS, KC_MUTE, KC_VOLU, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, KC_PGDN, KC_UP, KC_MPLY,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, PX_AFLL, OP_AFLL, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______,
- _______, _______, _______, _______, _______, _______, _______
-),
-/* Raise
-* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
-* │~ `  │! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│ │
-* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
-* │     │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│: ;│ " '│
-* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
-* │ │ F7│ F8│ F9│F10│F11│F12│   │{ [│} ]│ |\Sft│
-* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
-* │ │ │ │ │    │   │    │
-* └────┴───┴───┴────────────────────────┴────┴───┴────┘
-*/
-[_RAISE] = LAYOUT_ansi_40(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_LBRC, KC_RBRC, SF_BSLS,
- _______, _______, _______, _______, _______, _______, _______
-),
-/* Adjust/Macro Layer
-* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
-* │Make │   │   │EEP│RST│ │ │ │ │ │ │     │
-* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
-* │ │ │ │ │ │ │ │ │ │ │ │
-* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
-* │ │ │ │ │ │ │ │ │ │ │ │
-* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
-* │ │ │ │ │ │ │ │
-* └────┴───┴───┴────────────────────────┴────┴───┴────┘
-*/
-[_ADJUST] = LAYOUT_ansi_40(
- QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-)
-/* Blank Layer
-* ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
-* │ │ │ │ │ │ │ │ │ │ │ │ │
-* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
-* │ │ │ │ │ │ │ │ │ │ │ │
-* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
-* │ │ │ │ │ │ │ │ │ │ │ │
-* ├────┬───┼───┼───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
-* │ │ │ │ │ │ │ │
-* └────┴───┴───┴────────────────────────┴────┴───┴────┘
-*/
-/*
-[BLANK] = LAYOUT_ansi_40(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-)
-*/
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/cozykeys/speedo/v3/keymaps/pcewing/keymap.c b/keyboards/cozykeys/speedo/v3/keymaps/pcewing/keymap.c
deleted file mode 100644
index 51fb5ca67c..0000000000
--- a/keyboards/cozykeys/speedo/v3/keymaps/pcewing/keymap.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright 2022 Paul Ewing
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "key_repeater.h"
-
-#include <stdlib.h>
-
-enum {
- LAYER_DEFAULT,
- LAYER_FN,
- LAYER_MACRO,
-
- __LAYER_COUNT,
-};
-
-#define TO_MACRO TO(LAYER_MACRO)
-#define TO_DFLT TO(LAYER_DEFAULT)
-#define MO_FN MO(LAYER_FN)
-
-#define RGB_N RGB_MOD // Rotate to next RGB mode
-#define RGB_P RGB_RMOD // Rotate to next RGB mode
-
-#define KC_YANK LCTL(KC_INS) // Copy shortcut in most terminal emulators
-#define KC_PUT LSFT(KC_INS) // Paste shortcut in most terminal emulators
-
-// Custom keycodes
-enum {
- SH_TOG = SAFE_RANGE, // Toggle shift
- SH_BTN1, // Shift left click
- RP_BTN1, // Click repeatedly while key is held
-};
-
-const uint16_t PROGMEM keymaps[__LAYER_COUNT][MATRIX_ROWS][MATRIX_COLS] = {
-
-[LAYER_DEFAULT] = LAYOUT(
- KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_UP, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LEFT, KC_RGHT, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DOWN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_GRV, MO_FN, KC_BSPC, KC_DEL, KC_ENT, KC_SPC, KC_LBRC, KC_RBRC, KC_RALT, KC_RGUI, KC_RCTL
-),
-
-[LAYER_FN] = LAYOUT(
- RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, QK_BOOT,
- _______, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, RGB_TOG, KC_YANK, KC_GRV, KC_LBRC, KC_RBRC, KC_PUT, _______,
- KC_CAPS, KC_F5, KC_F6, KC_F7, KC_F8, KC_INS, RGB_N, RGB_P, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_PAUS, RGB_M_P, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, TO_MACRO, _______, _______, _______, _______, _______, _______
-),
-
-[LAYER_MACRO] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, RP_BTN1, SH_TOG, _______, _______, _______, _______, _______, _______, _______,
- TO_DFLT, _______, _______, KC_BTN1, SH_BTN1, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_1, KC_6, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-};
-
-static bool shift_enabled = false;
-
-static struct key_repeater_t* click_repeater = NULL;
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case SH_TOG:
- if (record->event.pressed) {
- if (shift_enabled) {
- unregister_code(KC_LSFT);
- } else {
- register_code(KC_LSFT);
- }
- shift_enabled = !shift_enabled;
- }
- return false; // Skip all further processing of this key
- case SH_BTN1:
- if (record->event.pressed) {
- register_code(KC_LSFT);
- register_code(KC_BTN1);
- } else {
- unregister_code(KC_BTN1);
- unregister_code(KC_LSFT);
- }
- return false;
- case RP_BTN1:
- if (record->event.pressed) {
- kr_enable(click_repeater);
- } else {
- kr_disable(click_repeater);
- }
- return false;
- default:
- return true; // Process all other keycodes normally
- }
-}
-
-void keyboard_post_init_user(void) {
- // Seed the random number generator which is used by the key repeater
- srand(timer_read32());
-
- // Configure and instantiate a key repeater for mouse button 1 "rapid fire"
- struct key_repeater_config_t cfg = {
- .key = KC_BTN1,
- .key_duration_min = 20,
- .key_duration_max = 50,
- .wait_duration_min = 90,
- .wait_duration_max = 140,
- };
-
- click_repeater = kr_new(&cfg);
-}
-
-void matrix_scan_user(void) {
- kr_poll(click_repeater);
-}
diff --git a/keyboards/crimsonkeyboards/resume1800/info.json b/keyboards/crimsonkeyboards/resume1800/info.json
index 0a967d11d6..23257be46e 100644
--- a/keyboards/crimsonkeyboards/resume1800/info.json
+++ b/keyboards/crimsonkeyboards/resume1800/info.json
@@ -20,8 +20,12 @@
},
"processor": "atmega32a",
"bootloader": "usbasploader",
+ "layout_aliases": {
+ "LAYOUT_resume1800_ansi_all": "LAYOUT_ansi_all",
+ "LAYOUT_resume1800_iso_all": "LAYOUT_iso_all"
+ },
"layouts": {
- "LAYOUT_resume1800_ansi_all": {
+ "LAYOUT_ansi_all": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
@@ -138,7 +142,7 @@
{"matrix": [5, 19], "x": 19, "y": 5}
]
},
- "LAYOUT_resume1800_iso_all": {
+ "LAYOUT_iso_all": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c
index c7f471a113..27e1e2bc50 100644
--- a/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c
+++ b/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c
@@ -34,7 +34,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_resume1800_iso_all(
+ [0] = LAYOUT_iso_all(
/* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, KC_PRINT_SCREEN, KC_SCRL, KC_PAUS, KC_INS, KC_END,
/* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */
diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c
index b8adef49b0..a8bb2c13d5 100644
--- a/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c
+++ b/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c
@@ -34,7 +34,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_resume1800_ansi_all(
+ [0] = LAYOUT_ansi_all(
/* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_END,
/* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */
diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c
index ea08c07b19..2f5f351f13 100644
--- a/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c
+++ b/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c
@@ -34,7 +34,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_resume1800_iso_all(
+ [0] = LAYOUT_iso_all(
/* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_END,
/* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */
diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c
index b8adef49b0..a8bb2c13d5 100644
--- a/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c
+++ b/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c
@@ -34,7 +34,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_resume1800_ansi_all(
+ [0] = LAYOUT_ansi_all(
/* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_END,
/* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */
diff --git a/keyboards/crkbd/keymaps/cameronjlarsen/config.h b/keyboards/crkbd/keymaps/cameronjlarsen/config.h
deleted file mode 100644
index 1d83214a77..0000000000
--- a/keyboards/crkbd/keymaps/cameronjlarsen/config.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2022 Cameron Larsen <@cameronjlarsen>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-
-/* Select hand configuration */
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define TAPPING_FORCE_HOLD
-#define TAPPING_TERM 135
-
-#define CAPS_WORD_IDLE_TIMEOUT 5000 // Turn off Caps Word after 5 seconds.
-
-#ifdef RGBLIGHT_ENABLE
- #define RGBLIGHT_EFFECT_BREATHING
- #define RGBLIGHT_EFFECT_RAINBOW_MOOD
- #define RGBLIGHT_EFFECT_RAINBOW_SWIRL
- #define RGBLIGHT_EFFECT_SNAKE
- #define RGBLIGHT_EFFECT_KNIGHT
- #define RGBLIGHT_EFFECT_CHRISTMAS
- #define RGBLIGHT_EFFECT_STATIC_GRADIENT
- #define RGBLIGHT_EFFECT_RGB_TEST
- #define RGBLIGHT_EFFECT_ALTERNATING
- #define RGBLIGHT_EFFECT_TWINKLE
- #define RGBLIGHT_LIMIT_VAL 120
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-#endif
-
-#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
diff --git a/keyboards/crkbd/keymaps/cameronjlarsen/keymap.c b/keyboards/crkbd/keymaps/cameronjlarsen/keymap.c
deleted file mode 100644
index 54ad19dc0b..0000000000
--- a/keyboards/crkbd/keymaps/cameronjlarsen/keymap.c
+++ /dev/null
@@ -1,357 +0,0 @@
-/* Copyright 2022 Cameron Larsen <@cameronjlarsen>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include <stdio.h>
-#include "features/oneshot.h"
-
-enum layers {
- _QWERTY = 0,
- SYM,
- NAV,
- FUN,
-};
-// Aliases for readability
-#define QWERTY DF(_QWERTY)
-#define LA_SYM LT(SYM, KC_TAB)
-#define LA_NAV MO(NAV)
-
-// One shot mods
-enum keycodes {
- OS_SHFT = QK_USER,
- OS_CTRL,
- OS_ALT,
- OS_GUI,
-};
-
-// Note: LAlt/Enter (ALT_ENT) is not the same thing as the keyboard shortcut Alt+Enter.
-// The notation `mod/tap` denotes a key that activates the modifier `mod` when held down, and
-// produces the key `tap` when tapped (i.e. pressed and released).
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * Base Layer: QWERTY
- *
- * Inspiration:
- *
- * https://github.com/serebrov/qmk_firmware/blob/custom/keyboards/kyria/keymaps/kyria-mini/keymap.c
- *
- * Notes:
- * - F & J enables CAPSWORD, disables after 5 seconds
- * - Left thumb CTRL and SHIFT are one shot
- * - Enter is moved to ; location and ; is moved to Sym layer
- * - ESC can be accessed by NAV and G
- * - BKSP is accessed by NAV and Enter
- * - Tab is accessed by tapping SYM layer
- * - FUN layer is accessed by holding NAV and SYM layers at the same time
- *
- * ,----------------------------------. ,----------------------------------.
- * | Q | W | E | R | T | | Y | U | I | O | P |
- * |------+------+------+------+------| |------+------+------+------+------|
- * | A | S | D | F | G | | H | J | K | L | Enter|
- * |------+------+------+------+------. ,------+------+------+------+------|
- * | Z | X | C | V | B | | N | M | , < | . > | / ? |
- * `------+------+------+------+------+------. ,------+------+------+------+-------------'
- * | OSM | OSM | Nav | | Sym | Space| GUI |
- * | Ctrl | Shift| | | Tab | | |
- * `---------------------' `--------------------'
- */
- [_QWERTY] = LAYOUT_split_3x5_3(
- KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y, KC_U , KC_I , KC_O , KC_P ,
- KC_A , KC_S , KC_D , KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_ENT ,
- KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N, KC_M ,KC_COMM, KC_DOT , KC_SLSH,
- OS_CTRL, OS_SHFT, LA_NAV , LA_SYM , KC_SPC, OS_GUI
- ),
-
-/*
- * Sym Layer: Numbers and symbols
- *
- * Notes:
- * - Symbols are grouped together and shifted symbols from middle row are on bottom row
- * - Exception is angle brackets
- *
- * ,----------------------------------. ,----------------------------------.
- * | 1 ! | 2 @ | 3 # | 4 $ | 5 % | | 6 ^ | 7 & | 8 * | 9 ( | 0 ) |
- * |------+------+------+------+------| |------+------+------+------+------|
- * | ` | ( | ) | ' | = | | \ | - | [ | ] | ; |
- * |------+------+------+------+------+ +------+------+------+------+------|
- * | ~ | < | > | " | + | | | | _ | { | } | : |
- * `-------------+------+------+------+------. ,------+------+------+------+-------------'
- * | | | | | | | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
- [SYM] = LAYOUT_split_3x5_3(
- KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,
- KC_GRV , KC_LPRN, KC_RPRN, KC_QUOT, KC_EQL , KC_BSLS, KC_MINS, KC_LBRC, KC_RBRC, KC_SCLN,
- KC_TILD, KC_LABK, KC_RABK, KC_DQUO, KC_PLUS, KC_PIPE, KC_UNDS, KC_LCBR, KC_RCBR, KC_COLN,
- _______, _______, _______, _______, _______, _______
- ),
-
-/*
- * Nav Layer: Navigation, Media
- *
- * Notes:
- * - Vim style navigation keys
- * - Volume and Media Keys
- * - BKSP on Enter
- * - DEL on /
- * - Esc on G
- *
- * ,----------------------------------. ,----------------------------------.
- * | | | | BriUp| BriDn| | Home | PgDn | PgUp | End |PrtScr|
- * |------+------+------+------+------| |------+------+------+------+------|
- * | GUI | Alt | Ctrl | Shift| Esc | | ← | ↓ | ↑ | → | Bksp |
- * |------+------+------+------+------+ +------+------+------+------+------|
- * | | Vol- | Mute | Vol+ |NumLck| | MPrev| MPlay| MStop| MNext|Delete|
- * `-------------+------+------+------+------. ,------+------+------+------+-------------'
- * | | | | | | | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
- [NAV] = LAYOUT_split_3x5_3(
- _______, _______, _______, KC_BRIU, KC_BRID, KC_HOME, KC_PGDN, KC_PGUP, KC_END , KC_PSCR,
- OS_GUI , OS_ALT , OS_CTRL, OS_SHFT, KC_ESC , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_BSPC,
- _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_NUM , KC_MPRV, KC_MPLY, KC_MSTP, KC_MNXT, KC_DEL ,
- _______, _______, _______, _______, _______, _______
- ),
-
-/*
- * Function Layer: Function keys
- *
- * Notes:
- * - F1-F10 on bottom row
- * - F11-F12 on index finger inner row
- * - Homerow mods
- * - Num keys on top row
- *
- * ,----------------------------------. ,----------------------------------.
- * | 1 ! | 2 @ | 3 # | 4 $ | 5 % | | 6 ^ | 7 & | 8 * | 9 ( | 0 ) |
- * |------+------+------+------+------| |------+------+------+------+------|
- * | GUI | Alt | Ctrl | Shift| F11 | | F12 | Shift| Ctrl | Alt | GUI |
- * |------+------+------+------+------+ +------+------+------+------+------|
- * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 |
- * `-------------+------+------+------+------. ,------+------+------+------+-------------'
- * | | | | | | | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
- [FUN] = LAYOUT_split_3x5_3(
- KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,
- OS_GUI , OS_ALT , OS_CTRL, OS_SHFT, KC_F11 , KC_F12 , OS_SHFT, OS_CTRL, OS_ALT , OS_GUI ,
- KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 ,
- _______, _______, _______, _______, _______, _______
- ),
-
-};
-
-enum combo_events {
- CAPS_COMBO
-};
-
-const uint16_t PROGMEM caps_combo[] = {KC_F, KC_J, COMBO_END};
-
-combo_t key_combos[] = {
- [CAPS_COMBO] = COMBO_ACTION(caps_combo),
- // Other combos...C
-};
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- switch(combo_index) {
- case CAPS_COMBO:
- if (pressed) {
- caps_word_on(); // Activate Caps Word!
- }
- break;
-
- // Other combos...
- }
-}
-
-bool is_oneshot_cancel_key(uint16_t keycode){
- switch (keycode) {
- case LA_NAV:
- return true;
- default:
- return false;
- }
-}
-
-bool is_oneshot_ignored_key(uint16_t keycode){
- switch (keycode) {
- case LA_NAV:
- case LA_SYM:
- case OS_SHFT:
- case OS_CTRL:
- case OS_ALT:
- case OS_GUI:
- return true;
- default:
- return false;
- }
-}
-
-oneshot_state os_shft_state = os_up_unqueued;
-oneshot_state os_ctrl_state = os_up_unqueued;
-oneshot_state os_alt_state = os_up_unqueued;
-oneshot_state os_cmd_state = os_up_unqueued;
-
-
-
-bool caps_word_press_user(uint16_t keycode) {
- switch (keycode) {
- // Keycodes that continue Caps Word, with shift applied.
- case KC_A ... KC_Z:
- case KC_MINS:
- add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key.
- return true;
-
- // Keycodes that continue Caps Word, without shifting.
- case KC_1 ... KC_0:
- case KC_BSPC:
- case KC_DEL:
- case KC_UNDS:
- return true;
-
- default:
- return false; // Deactivate Caps Word.
- }
-}
-
-
-layer_state_t layer_state_set_user(layer_state_t state){
- return update_tri_layer_state(state, SYM, NAV, FUN);
-}
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master()) {
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- }
- return rotation;
-}
-
-void oled_render_layer_state(void) {
- oled_write_P(PSTR("Layer: "), false);
- switch (get_highest_layer(layer_state | default_layer_state)) {
- case _QWERTY:
- oled_write_ln_P(PSTR("QWERTY"), false);
- break;
- case SYM:
- oled_write_ln_P(PSTR("Sym"), false);
- break;
- case NAV:
- oled_write_ln_P(PSTR("Nav"), false);
- break;
- case FUN:
- oled_write_ln_P(PSTR("Function"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undefined"), false);
- }
-}
-
-char keylog_str[24] = {};
-
-const char code_to_name[60] = {
- ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
- 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
- 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
- '1', '2', '3', '4', '5', '6', '7', '8', '9', '0',
- 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\',
- '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '};
-
-void set_keylog(uint16_t keycode, keyrecord_t *record) {
- char name = ' ';
- if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) ||
- (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { keycode = keycode & 0xFF; }
- if (keycode < 60) {
- name = code_to_name[keycode];
- }
-
- // update keylog
- snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c",
- record->event.key.row, record->event.key.col,
- keycode, name);
-}
-
-void oled_render_keylog(void) {
- oled_write(keylog_str, false);
-}
-
-void render_bootmagic_status(bool status) {
- /* Show Ctrl-Gui Swap options */
- static const char PROGMEM logo[][2][3] = {
- {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}},
- {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}},
- };
- if (status) {
- oled_write_ln_P(logo[0][0], false);
- oled_write_ln_P(logo[0][1], false);
- } else {
- oled_write_ln_P(logo[1][0], false);
- oled_write_ln_P(logo[1][1], false);
- }
-}
-
-void oled_render_logo(void) {
- static const char PROGMEM crkbd_logo[] = {
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4,
- 0};
- oled_write_P(crkbd_logo, false);
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- oled_render_layer_state();
- oled_render_keylog();
- } else {
- oled_render_logo();
- }
- return false;
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
- if (!process_caps_word(keycode, record)) { return false; }
- // Your macros ...
- update_oneshot(
- &os_shft_state, KC_LSFT, OS_SHFT,
- keycode, record
- );
-
- update_oneshot(
- &os_ctrl_state, KC_LCTL, OS_CTRL,
- keycode, record
- );
-
- update_oneshot(
- &os_alt_state, KC_LALT, OS_ALT,
- keycode, record
- );
-
- update_oneshot(
- &os_cmd_state, KC_LGUI, OS_GUI,
- keycode, record
- );
- if (record->event.pressed) {
- set_keylog(keycode, record);
- }
- return true;
-}
-
-#endif
diff --git a/keyboards/crkbd/keymaps/cameronjlarsen/rules.mk b/keyboards/crkbd/keymaps/cameronjlarsen/rules.mk
deleted file mode 100644
index f0b00f3cf0..0000000000
--- a/keyboards/crkbd/keymaps/cameronjlarsen/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-BOOTMAGIC_ENABLE = no
-BOOLOADER = atmel-dfu
-OLED_ENABLE = yes
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-COMMAND_ENABLE = no # Disables the command feature
-COMBO_ENABLE = yes
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-AUDIO_ENABLE = no
-MIDI_ENABLE = no
-BLUETOOTH_ENABLE = no
-BACKLIGHT_ENABLE = no
-CAPS_WORD_ENABLE = yes
-CUSTOM_ONESHOT_ENABLE = yes
diff --git a/keyboards/crkbd/keymaps/curry/config.h b/keyboards/crkbd/keymaps/curry/config.h
deleted file mode 100644
index a82b4439cf..0000000000
--- a/keyboards/crkbd/keymaps/curry/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#pragma once
-
-#define EE_HANDS
-
-#define OLED_DISABLE_TIMEOUT
-#define TAPPING_TERM_PER_KEY
-
-#if defined(RGB_MATRIX_ENABLE)
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
-# define RGB_MATRIX_HUE_STEP 8
-# define RGB_MATRIX_SAT_STEP 8
-# define RGB_MATRIX_VAL_STEP 5
-# define RGB_MATRIX_SPD_STEP 10
-#endif
-
-// comment out unnecessary layouts
-#define ENABLE_QWERTY
-#define ENABLE_COLEMAK
-#define ENABLE_DVORAK
-#define ENABLE_WORKMAN
diff --git a/keyboards/crkbd/keymaps/curry/keymap.c b/keyboards/crkbd/keymaps/curry/keymap.c
deleted file mode 100644
index 5157a22379..0000000000
--- a/keyboards/crkbd/keymaps/curry/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-#include "curry.h"
-
-#define LAYOUT_crkbd_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \
- MT_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \
- OS_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, OS_RSFT, \
- QK_LEAD,OS_LALT, SP_LWER, ET_RAIS, KC_BSPC, KC_RGUI \
- )
-#define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-#if defined(ENABLE_QWERTY)
- [_QWERTY] = LAYOUT_crkbd_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-#endif
-
-#if defined(ENABLE_COLEMAK)
- [_COLEMAK] = LAYOUT_crkbd_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-#endif
-
-#if defined(ENABLE_DVORAK)
- [_DVORAK] = LAYOUT_crkbd_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-#endif
-
-#if defined(ENABLE_WORKMAN)
- [_WORKMAN] = LAYOUT_crkbd_base_wrapper(
- _________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
- _________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
- _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
- ),
-#endif
-
- [_MODS] = LAYOUT_wrapper(
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- KC_LSFT, ___________________BLANK___________________, ___________________BLANK___________________, KC_RSFT,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- KC_F11, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F12,
- KC_GRV, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- _______, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RST,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- MG_NKRO, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, RGB_IDL,
- _______, _______, _______, _______, TG_MODS, _______
- )
-};
diff --git a/keyboards/crkbd/keymaps/curry/rules.mk b/keyboards/crkbd/keymaps/curry/rules.mk
deleted file mode 100644
index fc0e7e1924..0000000000
--- a/keyboards/crkbd/keymaps/curry/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = yes
-
-OLED_ENABLE = yes
-
-BOOTLOADER = atmel-dfu
-SPLIT_TRANSPORT = mirror
diff --git a/keyboards/crkbd/keymaps/devdev/config.h b/keyboards/crkbd/keymaps/devdev/config.h
deleted file mode 100644
index 337a86df8e..0000000000
--- a/keyboards/crkbd/keymaps/devdev/config.h
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2021 Dane Evans
-
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define CUSTOM_FONT
-
-#define CUSTOM_LAYER_READ //if you remove this it causes issues - needs better guarding
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 200
-
-#define RGBLIGHT_SLEEP
-//
-#define RGBLIGHT_LAYERS
-
-#ifdef RGBLIGHT_ENABLE
- #undef RGBLED_NUM
-
- #define RGBLIGHT_EFFECT_BREATHING
- #define RGBLIGHT_EFFECT_RAINBOW_MOOD
- #define RGBLIGHT_EFFECT_RAINBOW_SWIRL
- #define RGBLIGHT_EFFECT_SNAKE
- #define RGBLIGHT_EFFECT_KNIGHT
- //#define RGBLIGHT_EFFECT_CHRISTMAS
- //#define RGBLIGHT_EFFECT_STATIC_GRADIENT
- //#define RGBLIGHT_EFFECT_RGB_TEST
- //#define RGBLIGHT_EFFECT_ALTERNATING
- //#define RGBLIGHT_EFFECT_TWINKLE
-
- //#define RGBLED_NUM 54
- //#define RGBLED_SPLIT 27
- //#define RGBLED_SPLIT { 27, 27 } // haven't figured out how to use this yet
-
- #define RGBLED_NUM 27
- #define RGBLIGHT_LIMIT_VAL 120
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-#endif
-
-#ifdef RGB_MATRIX_ENABLE
-# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
-// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
-# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
-# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
-// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
-
-#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_GRADIENT_LEFT_RIGHT
-
-# define RGB_MATRIX_HUE_STEP 8
-# define RGB_MATRIX_SAT_STEP 8
-# define RGB_MATRIX_VAL_STEP 8
-# define RGB_MATRIX_SPD_STEP 10
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-// # define ENABLE_RGB_MATRIX_ALPHAS_MODS
-# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-# define ENABLE_RGB_MATRIX_BREATHING
-# define ENABLE_RGB_MATRIX_BAND_SAT
-# define ENABLE_RGB_MATRIX_BAND_VAL
-# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-# define ENABLE_RGB_MATRIX_CYCLE_ALL
-# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-# define ENABLE_RGB_MATRIX_DUAL_BEACON
-# define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-# define ENABLE_RGB_MATRIX_RAINDROPS
-# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-# define ENABLE_RGB_MATRIX_HUE_BREATHING
-# define ENABLE_RGB_MATRIX_HUE_PENDULUM
-# define ENABLE_RGB_MATRIX_HUE_WAVE
-# define ENABLE_RGB_MATRIX_PIXEL_RAIN
-# define ENABLE_RGB_MATRIX_PIXEL_FLOW
-# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-// # define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-# define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-# define ENABLE_RGB_MATRIX_SPLASH
-# define ENABLE_RGB_MATRIX_MULTISPLASH
-# define ENABLE_RGB_MATRIX_SOLID_SPLASH
-# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#endif
diff --git a/keyboards/crkbd/keymaps/devdev/keymap.c b/keyboards/crkbd/keymaps/devdev/keymap.c
deleted file mode 100644
index 0327101157..0000000000
--- a/keyboards/crkbd/keymaps/devdev/keymap.c
+++ /dev/null
@@ -1,396 +0,0 @@
-/* Copyright 2020 Dane Evans
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// CRKBD
-
-#include QMK_KEYBOARD_H
-
-
-char layer_state_str[24];
-
-
- enum userspace_layers {
- _DEFAULTS = 0,
- _COLEMAK = 0,
- _COLEMAKDH,
- _QWERTY,
- _NUM,
- _SYM,
- _COMMAND,
- _NUMPAD,
- _SWITCH,
- _MOVE,
-
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- // colemak
- [_COLEMAK] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- LT(_NUMPAD,KC_TAB), KC_Q, KC_W, KC_F, KC_P, KC_G, LT(_SWITCH,KC_J), KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_LSFT, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I,LT(_NUMPAD,KC_O),KC_QUOT,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_LGUI, MO(_NUM), KC_SPC, KC_ENT, MO(_SYM), KC_LALT
- //`--------------------------' `--------------------------'
- ),
-
- // colemak DH
- [_COLEMAKDH] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- LT(_NUMPAD,KC_TAB), KC_Q, KC_W, KC_F, KC_P, KC_B, LT(_SWITCH,KC_J), KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_LSFT, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I,LT(_NUMPAD,KC_O),KC_QUOT,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_LCTL, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_LGUI, MO(_NUM), KC_SPC, KC_ENT, MO(_SYM), KC_LALT
- //`--------------------------' `--------------------------'
- ),
-
- // qwerty
- [_QWERTY] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, LT(_SWITCH,KC_Y), KC_U, KC_I, KC_O, KC_P, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(_NUMPAD,KC_SCLN), KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
-
-
- // numbers - L thumb
- [_NUM] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_NO, KC_NO, KC_NO, KC_WH_U, KC_PGUP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_DEL,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_NO, KC_NO, KC_NO, KC_WH_D, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_COMMAND), KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
- // symbols - R thumb
- [_SYM] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_ESC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, MO(_COMMAND), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
- // commands - both thumbs
- [_COMMAND] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, DF(1), DF(0), C(G(KC_LEFT)), KC_NO, KC_NO, C(G(KC_RGHT)), KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, DF(2), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
- // numpad
- [_NUMPAD] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- LT(0,KC_NO), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_CIRC, KC_P7, KC_P8, KC_P9, KC_ASTR, KC_BSPC,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MINS, KC_P4, KC_P5, KC_P6, KC_EQL, KC_DEL,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PLUS, KC_P1, KC_P2, KC_P3, KC_SLSH, KC_NO,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- OSM(MOD_MEH), KC_NO, KC_TRNS, KC_ENT, KC_P0, KC_PDOT
- //`--------------------------' `--------------------------'
- ),
-
- // layer switcher
- [_SWITCH] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- TO(0), TO(1), TO(2), TO(3), TO(4), TO(5), KC_NO, TO(7), KC_NO, KC_NO, KC_NO, QK_BOOT,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_NO, KC_NO, KC_BRIU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, EE_CLR,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_SYSTEM_SLEEP, KC_NO, KC_BRID, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- //`--------------------------' `--------------------------'
-
- ),
-
- // amovement
- [_MOVE] = LAYOUT(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- LT(0,KC_NO), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_UP, KC_PGUP, KC_NO, KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_ENT, KC_RGHT, KC_NO, KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_APP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_DOWN, KC_PGDN, KC_DEL, KC_NO, KC_NO,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO
- //`--------------------------' `--------------------------'
- )
-
-};
-
-
-// it appears that these are different to the board numbering.
-// when you specify n here, it lightss up n+1 on the board diagram - actually may be an entirely different pattern
-
-// _QWERTY,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_qwerty_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_AZURE}
-);
-
-// _COLEMAKDH,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_colemakdh_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_RED}
-);
-
-// _NUM,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_num_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_TEAL}
-);
-// _SYMBOL,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_symbol_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_BLUE}
-);
-// _COMMAND,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_command_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_PURPLE}
-);
-
-
-//_NUMPAD
-//havent worked out how to do each side individually either
-const rgblight_segment_t PROGMEM layer_numpad_lights[] = RGBLIGHT_LAYER_SEGMENTS(
-{0, 10, HSV_ORANGE}
-);
-const rgblight_segment_t PROGMEM layer_numpad_rh_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_ORANGE},
- {10, 5, HSV_BLUE},
- {15, 3, HSV_BLUE},
- {18, 3, HSV_BLUE}
-);
-
-// _MOVE,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_move_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 10, HSV_PINK}
-);
-
-// _SWITCHER // light up top row
-const rgblight_segment_t PROGMEM layer_switcher_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 6, HSV_GREEN},
- {9, 2, HSV_GREEN},
- {17, 2, HSV_GREEN},
- {23, 2, HSV_GREEN}
-);
-
-
-// Now define the array of layers. Later layers take precedence
-const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- layer_qwerty_lights,
- layer_colemakdh_lights,
- layer_num_lights,// overrides layer 1
- layer_symbol_lights,
- layer_command_lights,
- layer_numpad_lights,
- layer_numpad_rh_lights,
- layer_move_lights,
- layer_switcher_lights // Overrides other layers
-);
-
-void keyboard_post_init_user(void) {
- // Enable the LED layers
- rgblight_layers = my_rgb_layers;
- rgblight_mode(10);// haven't found a way to set this in a more useful way
-
-}
-
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(0, layer_state_cmp(state, _DEFAULTS) && layer_state_cmp(default_layer_state,_QWERTY));
- rgblight_set_layer_state(1, layer_state_cmp(state, _DEFAULTS) && layer_state_cmp(default_layer_state,_QWERTY));
-
- rgblight_set_layer_state(2, layer_state_cmp(state, _NUM));
- rgblight_set_layer_state(3, layer_state_cmp(state, _SYM));
- rgblight_set_layer_state(4, layer_state_cmp(state, _COMMAND));
- rgblight_set_layer_state(5, layer_state_cmp(state, _NUMPAD));
- if (!is_keyboard_master())
- rgblight_set_layer_state(6, layer_state_cmp(state, _NUMPAD));
- rgblight_set_layer_state(7, layer_state_cmp(state, _MOVE));
- rgblight_set_layer_state(8, layer_state_cmp(state, _SWITCH));
- return state;
-}
-
-/*
-bool led_update_user(led_t led_state) {
- rgblight_set_layer_state(0, led_state.caps_lock);
- return true;
-}
-*/
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master()) {
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- }
- return rotation;
-}
-// When add source files to SRC in rules.mk, you can use functions.
-const char *read_layer_state(void);
-const char *read_logo(void);
-void set_keylog(uint16_t keycode, keyrecord_t *record);
-const char *read_keylog(void);
-const char *read_keylogs(void);
-
-
-const char *read_mode_icon(bool swap);
-// const char *read_host_led_state(void);
-// void set_timelog(void);
-// const char *read_timelog(void);
-
-
-void oled_render_layer_state(void) {
- char string [24];
- switch (get_highest_layer(default_layer_state|layer_state))
- {
- case _QWERTY:
- oled_write_ln_P(PSTR("Layer: QWERTY"),false);
- break;
- case _COLEMAK:
- oled_write_ln_P(PSTR("Layer: COLEMAK"),false);
- break;
- case _COLEMAKDH:
- oled_write_ln_P(PSTR("Layer: COLEMAKDH"),false);
- break;
- case _NUM:
- oled_write_ln_P(PSTR("Layer: Numbers"),false);
- break;
- case _SYM:
- oled_write_ln_P(PSTR("Layer: Symbols"),false);
- break;
- case _COMMAND:
- oled_write_ln_P(PSTR("Layer: Command"),false);
- break;
- case _NUMPAD:
- oled_write_ln_P(PSTR("Layer: Numpad"),false);
- break;
- case _MOVE:
- oled_write_ln_P(PSTR("Layer: Movement"),false);
- break;
- case _SWITCH:
- oled_write_ln_P(PSTR("Layer: Layer Switch"),false);
- break;
- default:
-#if defined (LAYER_STATE_32BIT)
- snprintf(string, sizeof(string), "%ld",layer_state);
-#else
- snprintf(string, sizeof(string), "%d",layer_state);
-#endif
- oled_write_P(PSTR("Layer: Undef-"),false);
- oled_write_ln(string, false);
- }
-}
-
-char keylog_str[24] = {};
-const char code_to_name[60] = {
- ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
- 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
- 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
- '1', '2', '3', '4', '5', '6', '7', '8', '9', '0',
- 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\',
- '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '};
-
-void set_keylog(uint16_t keycode, keyrecord_t *record) {
- char name = ' ';
- if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) ||
- (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { keycode = keycode & 0xFF; }
- if (keycode < 60) {
- name = code_to_name[keycode];
- }
-
- // update keylog
- snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c",
- record->event.key.row, record->event.key.col,
- keycode, name);
-}
-
-void oled_render_keylog(void) {
- oled_write(keylog_str, false);
-}
-
-void render_bootmagic_status(bool status) {
- /* Show Ctrl-Gui Swap options */
- static const char PROGMEM logo[][2][3] = {
- {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}},
- {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}},
- };
- if (status) {
- oled_write_ln_P(logo[0][0], false);
- oled_write_ln_P(logo[0][1], false);
- } else {
- oled_write_ln_P(logo[1][0], false);
- oled_write_ln_P(logo[1][1], false);
- }
-}
-
-void oled_render_logo(void) {
- static const char PROGMEM crkbd_logo[] = {
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4,
- 0};
- oled_write_P(crkbd_logo, false);
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- oled_render_layer_state();
- oled_render_keylog();
- } else {
- oled_render_logo();
- }
- return false;
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- set_keylog(keycode, record);
- }
- return true;
-}
-#endif // OLED_ENABLE
diff --git a/keyboards/crkbd/keymaps/devdev/rules.mk b/keyboards/crkbd/keymaps/devdev/rules.mk
deleted file mode 100644
index 4d53cc7564..0000000000
--- a/keyboards/crkbd/keymaps/devdev/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/crkbd/keymaps/edvorakjp/config.h b/keyboards/crkbd/keymaps/edvorakjp/config.h
deleted file mode 100644
index 94896f6898..0000000000
--- a/keyboards/crkbd/keymaps/edvorakjp/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define SWAP_SCLN
-
-// #define QUICK_TAP_TERM 0
-#define TAPPING_TERM 300
-
-#ifdef RGBLIGHT_ENABLE
-# undef RGBLED_NUM
-# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-# define RGBLED_NUM 27
-# define RGBLIGHT_LIMIT_VAL 100
-# define RGBLIGHT_HUE_STEP 10
-# define RGBLIGHT_SAT_STEP 17
-# define RGBLIGHT_VAL_STEP 17
-#endif // RGBLIGHT_ENABLE
-
-#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
diff --git a/keyboards/crkbd/keymaps/edvorakjp/keymap.c b/keyboards/crkbd/keymaps/edvorakjp/keymap.c
deleted file mode 100644
index 0cc8a0c4ba..0000000000
--- a/keyboards/crkbd/keymaps/edvorakjp/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-#include QMK_KEYBOARD_H
-#ifdef PROTOCOL_LUFA
-# include "split_util.h"
-#endif
-
-#include "edvorakjp.h"
-
-#define LAYOUT_wrapper(...) LAYOUT_split_3x6_3(__VA_ARGS__)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_EDVORAKJP_BASE] = LAYOUT_wrapper(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_GRV, __EDVORAKJP_BASE_L1__ , __EDVORAKJP_BASE_R1__ , KC_BSLS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_EQL, __EDVORAKJP_BASE_L2__ , __EDVORAKJP_BASE_R2__ , KC_MINS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_ESC, __EDVORAKJP_BASE_L3__ , __EDVORAKJP_BASE_R3__ , KC_SLSH,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- LA_TAB, LS_SPC,LOWER_TD, RAISE_TD, RC_BSPC, RG_ENT
- //`--------------------------' `--------------------------'
- ),
-
- [L_EDVORAKJP_LOWER] = LAYOUT_wrapper(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- XXXXXXX, XXXXXXX, __EDVORAKJP_BRACKET_L__ , XXXXXXX, XXXXXXX, __EDVORAKJP_BRACKET_R__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- __EDVORAKJP_FUNCTION_L__ , __EDVORAKJP_FUNCTION_R__ ,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_PSCR, XXXXXXX, __EDVORAKJP_PAGE__ , __EDVORAKJP_CURSOR__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, XXXXXXX, KC_MAC, RC_DEL, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
- [L_EDVORAKJP_RAISE] = LAYOUT_wrapper(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- XXXXXXX, XXXXXXX, __EDVORAKJP_SYMBOL_L__ , __EDVORAKJP_SYMBOL_R__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- XXXXXXX, __EDVORAKJP_NUMBER_L__ , __EDVORAKJP_NUMBER_R__ , XXXXXXX,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_PSCR, XXXXXXX, __EDVORAKJP_PAGE__ , __EDVORAKJP_CURSOR__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_WIN, XXXXXXX, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- )
-};
-// clang-format on
-
-#ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- switch (get_highest_layer(state)) {
- case L_EDVORAKJP_LOWER:
- rgblight_sethsv_noeeprom(HSV_RED);
- break;
- case L_EDVORAKJP_RAISE:
- rgblight_sethsv_noeeprom(HSV_GREEN);
- break;
- default: // for any other layers, or the default layer
- rgblight_mode(RGBLIGHT_MODE_STATIC_GRADIENT + 3);
- rgblight_sethsv(HSV_RED);
- break;
- }
- return state;
-}
-#endif
diff --git a/keyboards/crkbd/keymaps/edvorakjp/oled.c b/keyboards/crkbd/keymaps/edvorakjp/oled.c
deleted file mode 100644
index cd75f8e277..0000000000
--- a/keyboards/crkbd/keymaps/edvorakjp/oled.c
+++ /dev/null
@@ -1,56 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include "oled.h"
-
-#ifdef OLED_ENABLE
-void render_host_led_state(void) { oled_write(read_host_led_state(), false); }
-
-void render_layer_state(void) {
- char layer_name[17];
- oled_write_P(PSTR("Layer: "), false);
-
- switch (get_highest_layer(layer_state)) {
- case L_EDVORAKJP_BASE:
- oled_write_ln_P(PSTR("Default"), false);
- break;
- case L_EDVORAKJP_LOWER:
- oled_write_ln_P(PSTR("Lower"), false);
- break;
- case L_EDVORAKJP_RAISE:
- oled_write_ln_P(PSTR("Raise"), false);
- break;
- default:
- snprintf(layer_name, sizeof(layer_name), "Undef-%ld", layer_state);
- oled_write_ln(layer_name, false);
- }
-}
-
-void render_logo(void) { oled_write(read_logo(), false); }
-
-void render_mode_icon(bool is_windows) {
- static const char logo[][2][3] = {
- {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}},
- {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}},
- };
- static char mode_icon[10];
-
- snprintf(mode_icon, sizeof(mode_icon), "%s\n%s ", logo[is_windows][0], logo[is_windows][1]);
- oled_write(mode_icon, false);
-}
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- // flips the display 180 degrees if offhand
- return is_keyboard_left() ? rotation : rotation ^ OLED_ROTATION_180;
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_left()) {
- render_mode_icon(!get_enable_kc_lang());
- render_layer_state();
- render_host_led_state();
- } else {
- render_logo();
- }
- return false;
-}
-#endif // OLED_ENABLE
diff --git a/keyboards/crkbd/keymaps/edvorakjp/oled.h b/keyboards/crkbd/keymaps/edvorakjp/oled.h
deleted file mode 100644
index d9939c83a0..0000000000
--- a/keyboards/crkbd/keymaps/edvorakjp/oled.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#pragma once
-
-#include "edvorakjp.h"
-
-extern bool japanese_mode;
-
-// method prototypes defined in crkbd/lib
-extern const char *read_host_led_state(void);
-extern const char *read_logo(void);
-extern const char *read_mode_icon(bool swap);
-
-void render_host_led_state(void);
-void render_layer_state(void);
-void render_logo(void);
-void render_mode_icon(bool is_windows);
-oled_rotation_t oled_init_user(oled_rotation_t rotation);
-void oled_task_user(void);
diff --git a/keyboards/crkbd/keymaps/edvorakjp/readme.md b/keyboards/crkbd/keymaps/edvorakjp/readme.md
deleted file mode 100644
index dd406523d2..0000000000
--- a/keyboards/crkbd/keymaps/edvorakjp/readme.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# edvorakjp
-
-Epaew's Enhanced Dvorak layout for Japanese Programmer
-see [here](/users/edvorakjp) for more informations.
-
-## License
-
-Copyright 2018 Ryo Maeda epaew.333@gmail.com @epaew
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/crkbd/keymaps/edvorakjp/rules.mk b/keyboards/crkbd/keymaps/edvorakjp/rules.mk
deleted file mode 100644
index c019c30756..0000000000
--- a/keyboards/crkbd/keymaps/edvorakjp/rules.mk
+++ /dev/null
@@ -1,28 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = no # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-TAP_DANCE_ENABLE = yes
-OLED_ENABLE = yes
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-# If you want to change the display of OLED, you need to change here
-SRC += ./lib/host_led_state_reader.c \
- ./lib/logo_reader.c \
- ./lib/mode_icon_reader.c \
- oled.c
diff --git a/keyboards/crkbd/keymaps/ericgebhart/config.h b/keyboards/crkbd/keymaps/ericgebhart/config.h
deleted file mode 100755
index d1844f6807..0000000000
--- a/keyboards/crkbd/keymaps/ericgebhart/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// otherwise the other promicro v3 isn't found
-#define SPLIT_USB_DETECT
diff --git a/keyboards/crkbd/keymaps/ericgebhart/keymap.c b/keyboards/crkbd/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/crkbd/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/crkbd/keymaps/hvp/config.h b/keyboards/crkbd/keymaps/hvp/config.h
deleted file mode 100644
index 1a9ac69498..0000000000
--- a/keyboards/crkbd/keymaps/hvp/config.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-//#define QUICK_TAP_TERM 0
-//#define TAPPING_TERM 100
-
-#define TAPPING_TERM 150
-#define PERMISSIVE_HOLD
-
-#ifdef RGBLIGHT_ENABLE
-# undef RGBLED_NUM
-# define RGBLIGHT_EFFECT_BREATHING
-# define RGBLIGHT_EFFECT_RAINBOW_MOOD
-# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-# define RGBLIGHT_EFFECT_SNAKE
-# define RGBLIGHT_EFFECT_KNIGHT
-# define RGBLIGHT_EFFECT_CHRISTMAS
-# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-# define RGBLIGHT_EFFECT_RGB_TEST
-# define RGBLIGHT_EFFECT_ALTERNATING
-# define RGBLIGHT_EFFECT_TWINKLE
-# define RGBLED_NUM 27
-# define RGBLIGHT_LIMIT_VAL 120
-# define RGBLIGHT_HUE_STEP 10
-# define RGBLIGHT_SAT_STEP 17
-# define RGBLIGHT_VAL_STEP 17
-#endif
diff --git a/keyboards/crkbd/keymaps/hvp/keymap.c b/keyboards/crkbd/keymaps/hvp/keymap.c
deleted file mode 100644
index fc57fc1bb0..0000000000
--- a/keyboards/crkbd/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,160 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-#ifdef RGBLIGHT_ENABLE
-//Following line allows macro to read current RGB settings
-extern rgblight_config_t rgblight_config;
-#endif
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-#define _QWERTY 0
-#define _LOWER 1
-#define _RAISE 2
-#define _ADJUST 3
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- LOWER,
- RAISE,
- ADJUST
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_split_3x6_3(
- //,-----------------------------------------. ,-----------------------------------------.
- LT(_ADJUST,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,KC_BSPC,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- LSFT_T(KC_ESC), KC_A, KC_S, KC_D, LT(3,KC_F), KC_G, KC_H, KC_J, KC_K, KC_L,TD(TD1),TD(TD2),
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M,KC_COMM,KC_DOT,TD(TD3),SC_SENT,
- //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- KC_LGUI, LT(1,KC_SPC),MT(MOD_LSFT, KC_SPC), MT(MOD_LSFT,KC_ENT), LT(2,KC_SPC),KC_LALT
- //`--------------------' `--------------------'
- ),
-
- [_RAISE] = LAYOUT_split_3x6_3(
- //,-----------------------------------------. ,-----------------------------------------.
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,KC_BSPC,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- KC_DEL, _______, _______, _______, _______, _______, _______,KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- KC_LCTL, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- _______, _______, _______, _______, _______, _______
- //`--------------------' `--------------------'
- ),
-
- [_LOWER] = LAYOUT_split_3x6_3(
- //,-----------------------------------------. ,-----------------------------------------.
- KC_TAB,KC_EXLM,KC_AT,KC_HASH,KC_DLR,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_BSPC,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- KC_DEL, _______, _______, _______, _______, _______, _______,KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- KC_LCTL, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_TILD,
- //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- _______, _______, _______, _______, _______, _______
- //`--------------------' `--------------------'
- ),
-
- [_ADJUST] = LAYOUT_split_3x6_3(
- //,-----------------------------------------. ,-----------------------------------------.
- _______,KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- KC_F1,_______,_______,D_NAVI,_______,_______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, _______, _______,
- //|------+------+------+------+------+------| |------+------+------+------+------+------|
- QK_BOOT,KC_PSCR,_______,_______,_______,_______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- _______, KC_VOLD,KC_MPLY, KC_MNXT, KC_VOLU,_______
- //`--------------------' `--------------------'
- )
-};
-
-int RGB_current_mode;
-
-// Setting ADJUST layer RGB back to default
-void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
- if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) {
- layer_on(layer3);
- } else {
- layer_off(layer3);
- }
-}
-
-void matrix_init_user(void) {
- #ifdef RGBLIGHT_ENABLE
- RGB_current_mode = rgblight_config.mode;
- #endif
-}
-
-#ifdef OLED_ENABLE
-
-// When add source files to SRC in rules.mk, you can use functions.
-const char *read_layer_state(void);
-const char *read_logo(void);
-void set_keylog(uint16_t keycode, keyrecord_t *record);
-const char *read_keylog(void);
-const char *read_keylogs(void);
-
-// const char *read_mode_icon(bool swap);
-// const char *read_host_led_state(void);
-// void set_timelog(void);
-// const char *read_timelog(void);
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- // If you want to change the display of OLED, you need to change here
- oled_write(read_layer_state(), false);
- oled_write(read_keylog(), false);
- //oled_write_ln(read_keylogs(), false);
- //oled_write_ln(read_mode_icon(keymap_config.swap_lalt_lgui), false);
- //oled_write_ln(read_host_led_state()), false;
- //oled_write_ln(read_timelog(), false);
- } else {
- oled_write(read_logo(), false);
- }
- return false;
-}
-
-#endif
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
-#ifdef OLED_ENABLE
- set_keylog(keycode, record);
-#endif
- // set_timelog();
- }
-
- switch (keycode) {
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case ADJUST:
- if (record->event.pressed) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- return false;
- break;
- }
- return true;
-}
diff --git a/keyboards/crkbd/keymaps/hvp/readme.md b/keyboards/crkbd/keymaps/hvp/readme.md
deleted file mode 100644
index 3ccdc12193..0000000000
--- a/keyboards/crkbd/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: Corne Keyboard (CRKBD)
-Keys: A split keyboard with 3x6 vertically staggered keys and 3 thumb keys.
-Layout: Swedish characters on main layer using tapdance. Built for eurkey keyboard layout.
-Flash instructions: Flash using avrdude, will req the hvp user space to compile.
-
-> make crkbd:hvp:avrdude
-
-Links:
-Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/crkbd
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/crkbd/keymaps/hvp/rules.mk b/keyboards/crkbd/keymaps/hvp/rules.mk
deleted file mode 100644
index 3091ed20af..0000000000
--- a/keyboards/crkbd/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# If you want to change the display of OLED, you need to change here
-SRC += ./lib/rgb_state_reader.c \
- ./lib/layer_state_reader.c \
- ./lib/logo_reader.c \
- ./lib/keylogger.c \
- # ./lib/mode_icon_reader.c \
- # ./lib/host_led_state_reader.c \
- # ./lib/timelogger.c \
-
-TAP_DANCE_ENABLE = yes
-EXTRAKEY_ENABLE = yes # Audio control and System control
-OLED_ENABLE = yes
-# LOCAL_GLCDFONT = yes
diff --git a/keyboards/crkbd/keymaps/jarred/config.h b/keyboards/crkbd/keymaps/jarred/config.h
deleted file mode 100644
index c95deb1abb..0000000000
--- a/keyboards/crkbd/keymaps/jarred/config.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-//#define QUICK_TAP_TERM 0
-//#define TAPPING_TERM 100
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 27
-#define RGBLIGHT_LIMIT_VAL 120
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 17
-#define RGBLIGHT_VAL_STEP 17
diff --git a/keyboards/crkbd/keymaps/jarred/keymap.c b/keyboards/crkbd/keymaps/jarred/keymap.c
deleted file mode 100644
index b0e181b37f..0000000000
--- a/keyboards/crkbd/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,152 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "jarred.h"
-
-#ifdef PROTOCOL_LUFA
- #include "lufa.h"
- #include "split_util.h"
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-//Following line allows macro to read current RGB settings
-extern rgblight_config_t rgblight_config;
-#endif
-
-#define LAYOUT_crkbd_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K31, K32, K33, K34, K35, K36 \
- )
-
-#define LAYOUT_crkbd_wrapper(...) LAYOUT_split_3x6_3(__VA_ARGS__)
-
-#define QWERTY_4_CRKBD KC_LCTL, MO(_LW), KC_SPC, KC_ENT, MO(_LW), KC_RALT
-
-#define BLANK_4_CRKBD KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_crkbd_wrapper(
- QWERTY_1_12,
- QWERTY_2_12,
- QWERTY_3_12,
- QWERTY_4_DOX
- ),
-
- [_LW] = LAYOUT_crkbd_wrapper(
- LOWER_1_12,
- LOWER_2_12,
- LOWER_3_12,
- LOWER_4_DOX
- ),
-
- [_NV] = LAYOUT_crkbd_wrapper(
- NAV_1_12,
- NAV_2_12,
- NAV_3_12,
- NAV_4_DOX
- ),
-
- [_NP] = LAYOUT_crkbd_wrapper(
- NUMPAD_1_12,
- NUMPAD_2_12,
- NUMPAD_3_12,
- NUMPAD_4_DOX
- ),
-
- [_MS] = LAYOUT_crkbd_wrapper(
- MOUSE_1_12,
- MOUSE_2_12,
- MOUSE_3_12,
- MOUSE_4_DOX
- )
-};
-
-#ifdef OLED_ENABLE
-
-// When add source files to SRC in rules.mk, you can use functions.
-const char *read_logo(void);
-void set_keylog(uint16_t keycode, keyrecord_t *record);
-const char *read_keylog(void);
-const char *read_keylogs(void);
-
-char matrix_line_str[24];
-
-const char *read_layer_state(void) {
- uint8_t layer = get_highest_layer(layer_state);
-
- strcpy(matrix_line_str, "Layer: ");
-
- switch (layer)
- {
- case _QW:
- strcat(matrix_line_str, "Default");
- break;
- case _LW:
- strcat(matrix_line_str, "Lower");
- break;
- case _NV:
- strcat(matrix_line_str, "Navigation");
- break;
- case _NP:
- strcat(matrix_line_str, "Adjust");
- break;
- case _MS:
- strcat(matrix_line_str, "Mouse");
- break;
- default:
- sprintf(matrix_line_str + strlen(matrix_line_str), "Unknown (%d)", layer);
- }
-
- return matrix_line_str;
-}
-
-const char *read_usb_state(void) {
-
- strcpy(matrix_line_str, "USB : ");
-
- switch (USB_DeviceState) {
- case DEVICE_STATE_Unattached:
- strcat(matrix_line_str, "Unattached");
- break;
- case DEVICE_STATE_Suspended:
- strcat(matrix_line_str, "Suspended");
- break;
- case DEVICE_STATE_Configured:
- strcat(matrix_line_str, "Connected");
- break;
- case DEVICE_STATE_Powered:
- strcat(matrix_line_str, "Powered");
- break;
- case DEVICE_STATE_Default:
- strcat(matrix_line_str, "Default");
- break;
- case DEVICE_STATE_Addressed:
- strcat(matrix_line_str, "Addressed");
- break;
- default:
- strcat(matrix_line_str, "Invalid");
- }
-
- return matrix_line_str;
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- oled_write_ln(read_layer_state(), false);
- oled_write_ln(read_usb_state(), false);
- oled_write_ln(read_keylogs(), false);
- } else {
- oled_write(read_logo(), false);
- }
- return false;
-}
-
-#endif
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- set_keylog(keycode, record);
- }
-
- return true;
-}
diff --git a/keyboards/crkbd/keymaps/jarred/readme.md b/keyboards/crkbd/keymaps/jarred/readme.md
deleted file mode 100644
index 15e355bbca..0000000000
--- a/keyboards/crkbd/keymaps/jarred/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Jarred's CRKBD Layout
-
-Check out [user space readme](../../../../users/jarred/readme.md) for more info
-
-# Build
-
-```
-make crkbd:jarred:avrdude
-```
diff --git a/keyboards/crkbd/keymaps/jarred/rules.mk b/keyboards/crkbd/keymaps/jarred/rules.mk
deleted file mode 100644
index efa378b099..0000000000
--- a/keyboards/crkbd/keymaps/jarred/rules.mk
+++ /dev/null
@@ -1,31 +0,0 @@
-
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = no # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-OLED_ENABLE = yes
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-# If you want to change the display of OLED, you need to change here
-SRC += ./lib/rgb_state_reader.c \
- ./lib/logo_reader.c \
- ./lib/keylogger.c \
- #./lib/layer_state_reader.c \
- # ./lib/mode_icon_reader.c \
- # ./lib/host_led_state_reader.c \
- # ./lib/timelogger.c \
diff --git a/keyboards/crkbd/keymaps/ninjonas/README.md b/keyboards/crkbd/keymaps/ninjonas/README.md
deleted file mode 100644
index 84b55906f8..0000000000
--- a/keyboards/crkbd/keymaps/ninjonas/README.md
+++ /dev/null
@@ -1,99 +0,0 @@
-# ninjonas Keymap for [Corne Keyboard (crkbd)](https://github.com/foostan/crkbd)
-
-## Keymap
-This keymap is designed based off my typing habits and is subject to change. Information about custom user macros and tap dances can be found [here](../../../../users/ninjonas).
-
-More information about the crkbd keyboard can be found [here](https://thomasbaart.nl/2018/11/26/corne-keyboard-helidox-build-log/)
-
-### QWERTY
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // Tab, Q, W, E, R, T, Y, U, I, O, P, \
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // ESC, A, S, D, F, G, H, J, K, L, ;, '
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // LShift, Z, X, C, V, B, N, M, ,, ., /, =
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // Cmd, Ctrl, Space, Enter, BackSP, Del
- //`---------------------' `---------------------'
-```
-
-### DVORAK
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // Tab, ', ,, ., P, Y, F, G, C, R, L, \
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // ESC, A, O, E, U, I, D, H, T, N, S, /
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // LShift, ;, Q, J, K, X, B, M, W, V, Z, =
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // Cmd, Ctrl, Space, Enter, BackSP, Del
- //`---------------------' `---------------------'
-```
-
-### COLEMAK
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // Tab, Q, W, F, P, G, J, L, U, Y, ;, \
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // ESC, A, R, S, T, D, H, N, E, I, O, '
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // LShift, Z, X, C, V, B, K, M, ,, ., /, =
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // Cmd, Ctrl, Space, Enter, BackSP, Del
- //`---------------------' `---------------------'
-```
-
-### LOWER
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // , , KC_BRIU, Play, Mute, K_CSCN, PgUp, Home, Up, End, , K_MDSH
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , KC_BRID, Next, VolUp, , PgDn, Left, Down, Right, K_LOCK,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , Prev, VolDn, [, ], , , M_CODE, M_XXX1, M_PYNV,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , , ,
- //`---------------------' `---------------------'
-```
-
-### RAISE
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // `, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // ~, !, @, #, $, %, ^, &, *, (, ), _
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // F11, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F12
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , , ,
- //`---------------------' `---------------------'
-```
-
-### ADJUST
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // M_MAKE, EE_CLR , , , , , RGB_TOG, , , COLEMAK, DVORAK, QWERTY,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // M_VRSN, M_MALL, , RGB_SAI, RGB_HUI, RGB_VAI, , , , , , ,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // M_FLSH, , , RGB_SAD, RGB_HUD, RGB_VAD, RGB_M_P, RGB_M_B,RGB_M_SW, , , ,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , , ,
- //`---------------------' `---------------------'
-```
-
-<!--
-### TEMPLATE
-```c
- //,----------------------------------------------------. ,----------------------------------------------------.
- // , , , , , , , , , , ,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , , , , , , , , ,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , , , , , , , , ,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- // , , , , ,
- //`---------------------' `---------------------'
-```
---> \ No newline at end of file
diff --git a/keyboards/crkbd/keymaps/ninjonas/config.h b/keyboards/crkbd/keymaps/ninjonas/config.h
deleted file mode 100644
index fa3711ce8f..0000000000
--- a/keyboards/crkbd/keymaps/ninjonas/config.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define TAPPING_TERM 200
-
-#define MASTER_LEFT
-
-#define QUICK_TAP_TERM 0
-
-#ifdef RGB_MATRIX_ENABLE
- #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
- #define RGB_MATRIX_HUE_STEP 10
- #define RGB_MATRIX_SAT_STEP 10
- #define RGB_MATRIX_VAL_STEP 10
- #define RGB_MATRIX_SPD_STEP 10
- // #define RGB_MATRIX_KEYPRESSES
- #define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-
-// BEGIN: Disable RGB Effects
-//#undef ENABLE_RGB_MATRIX_SOLID_COLOR
-//#undef ENABLE_RGB_MATRIX_ALPHAS_MODS
-//#undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-# undef ENABLE_RGB_MATRIX_BREATHING
-# undef ENABLE_RGB_MATRIX_BAND_SAT
-# undef ENABLE_RGB_MATRIX_BAND_VAL
-// #undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-# undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-# undef ENABLE_RGB_MATRIX_CYCLE_ALL
-# undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-# undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-# undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-# undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-# undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-# undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-# undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-# undef ENABLE_RGB_MATRIX_DUAL_BEACON
-# undef ENABLE_RGB_MATRIX_RAINBOW_BEACON
-# undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-# undef ENABLE_RGB_MATRIX_RAINDROPS
-# undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-
-// BEGIN: RGB_MATRIX_FRAMEBUFFER_EFFECTS
-# undef ENABLE_RGB_MATRIX_TYPING_HEATMAP
-// #undef ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// END: RGB_MATRIX_FRAMEBUFFER_EFFECTS
-
-// BEGIN: RGB_MATRIX_KEYPRESSES
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-# undef ENABLE_RGB_MATRIX_SPLASH
-# undef ENABLE_RGB_MATRIX_MULTISPLASH
-# undef ENABLE_RGB_MATRIX_SOLID_SPLASH
-# undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-// END: RGB_MATRIX_KEYPRESSES
-// END: Disable RGB Effects
-#endif
-
-#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
-#define OLED_DISABLE_TIMEOUT
-
-#define LAYOUT LAYOUT_split_3x6_3
diff --git a/keyboards/crkbd/keymaps/ninjonas/keymap.c b/keyboards/crkbd/keymaps/ninjonas/keymap.c
deleted file mode 100644
index 66b89f3a98..0000000000
--- a/keyboards/crkbd/keymaps/ninjonas/keymap.c
+++ /dev/null
@@ -1,101 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "ninjonas.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _____________________QWERTY_L1______________________, _____________________QWERTY_R1______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________QWERTY_L2______________________, _____________________QWERTY_R2______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________QWERTY_L3______________________, _____________________QWERTY_R3______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- ________MOD_LEFT_________, ________MOD_RIGHT________
- //`---------------------' `---------------------'
- ),
-
- [_DVORAK] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _____________________DVORAK_L1______________________, _____________________DVORAK_R1______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________DVORAK_L2______________________, _____________________DVORAK_R2______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________DVORAK_L3______________________, _____________________DVORAK_R3______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- ________MOD_LEFT_________, ________MOD_RIGHT________
- //`---------------------' `---------------------'
- ),
-
- [_COLEMAK] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _____________________COLEMAK_L1_____________________, _____________________COLEMAK_R1_____________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________COLEMAK_L2_____________________, _____________________COLEMAK_R2_____________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________COLEMAK_L3_____________________, _____________________COLEMAK_R3_____________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- ________MOD_LEFT_________, ________MOD_RIGHT________
- //`---------------------' `---------------------'
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _____________________LOWER_L1_______________________, _____________________LOWER_R1_______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________LOWER_L2_______________________, _____________________LOWER_R2_______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________LOWER_L3_______________________, _____________________LOWER_R3_______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______,_______,_______, _______,_______,_______
- //`---------------------' `---------------------'
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _____________________NUM_LEFT_______________________, _____________________NUM_RIGHT______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________SYM_LEFT_______________________, _____________________SYM_RIGHT______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________FUNC_LEFT______________________, _____________________FUNC_RIGHT_____________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______,_______,_______, _______,_______,_______
- //`---------------------' `---------------------'
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _____________________ADJUST_L1______________________, _____________________ADJUST_R1______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________ADJUST_L2______________________, _____________________ADJUST_R2______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _____________________ADJUST_L3______________________, _____________________ADJUST_R3______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______,_______,_______, _______,_______,_______
- //`---------------------' `---------------------'
- ),
-
- [_NUMPAD] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- _______, _______, _______, _______, _______, _______, _____________________NUMPAD_1_______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______, _______, _______, _______, _______, _______, _____________________NUMPAD_2_______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______, _______, _______, _______, _______, _______, _____________________NUMPAD_3_______________________,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______,_______,_______, _______,_______,_______
- //`---------------------' `---------------------'
- ),
-/*
- [_TEMPLATE] = LAYOUT_wrapper(
- //,----------------------------------------------------. ,----------------------------------------------------.
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+-------| |--------+--------+--------+--------+--------+-------|
- _______,_______,_______, _______,_______,_______
- //`---------------------' `---------------------'
- ),
-*/
-};
diff --git a/keyboards/crkbd/keymaps/ninjonas/rules.mk b/keyboards/crkbd/keymaps/ninjonas/rules.mk
deleted file mode 100644
index 6dd34f26d7..0000000000
--- a/keyboards/crkbd/keymaps/ninjonas/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-RGB_MATRIX_ENABLE = yes
-MOUSEKEY_ENABLE = no
-OLED_ENABLE = yes
-LTO_ENABLE = yes
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
diff --git a/keyboards/crkbd/keymaps/ollyhayes/config.h b/keyboards/crkbd/keymaps/ollyhayes/config.h
deleted file mode 100644
index 9ad1ce2c58..0000000000
--- a/keyboards/crkbd/keymaps/ollyhayes/config.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2022 Olly Hayes (@ollyhayes)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define EE_HANDS
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 100
-
-#define NO_ACTION_ONESHOT
-
-#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
-
-#define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX
-
-#ifdef RGB_MATRIX_ENABLE
-# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
-// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
-# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
-# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
-// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
-# define RGB_MATRIX_HUE_STEP 8
-# define RGB_MATRIX_SAT_STEP 8
-# define RGB_MATRIX_VAL_STEP 8
-# define RGB_MATRIX_SPD_STEP 10
-
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-# define ENABLE_RGB_MATRIX_SOLID_COLOR
-// # define ENABLE_RGB_MATRIX_ALPHAS_MODS
-// # define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-// # define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-// # define ENABLE_RGB_MATRIX_BREATHING
-// # define ENABLE_RGB_MATRIX_BAND_SAT
-// # define ENABLE_RGB_MATRIX_BAND_VAL
-// # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-// # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-// # define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-// # define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-// # define ENABLE_RGB_MATRIX_CYCLE_ALL
-// # define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-// # define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-// # define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-// # define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-// # define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-// # define ENABLE_RGB_MATRIX_DUAL_BEACON
-// # define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-// # define ENABLE_RGB_MATRIX_RAINDROPS
-// # define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-// # define ENABLE_RGB_MATRIX_HUE_BREATHING
-// # define ENABLE_RGB_MATRIX_HUE_PENDULUM
-// # define ENABLE_RGB_MATRIX_HUE_WAVE
-// # define ENABLE_RGB_MATRIX_PIXEL_RAIN
-// # define ENABLE_RGB_MATRIX_PIXEL_FLOW
-// # define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-# define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 200
-// # define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-// # define ENABLE_RGB_MATRIX_SPLASH
-// # define ENABLE_RGB_MATRIX_MULTISPLASH
-// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
-// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-
-#endif
diff --git a/keyboards/crkbd/keymaps/ollyhayes/keymap.c b/keyboards/crkbd/keymaps/ollyhayes/keymap.c
deleted file mode 100644
index 5b9bc6cd4e..0000000000
--- a/keyboards/crkbd/keymaps/ollyhayes/keymap.c
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Copyright 2022 Olly Hayes (@ollyhayes)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "ollyhayes.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_split_3x6_3(
-// +------------+------+------+---------+----------+---------+--------+----------+---------+--------+---------+---------+
- NUM_SWITCH , KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN , KC_BSPC ,
- KC_ESC , KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , KC_ENT ,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_RSFT ,
- KC_LCTL , MO(PUNC) , MO(ARR) , KC_SPC , MO(PUNC) , KC_RCTL
-// +------------+------+------+---------+----------+---------+--------+----------+---------+--------+---------+---------+
- ),
-
- [QWERTY] = LAYOUT_split_3x6_3(
-// +---------+------+------+---------+---------+---------+---------+---------+---------+--------+---------+---------+
- KC_TRNS , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_TRNS ,
- KC_TRNS , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_TRNS ,
- KC_TRNS , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
-// +---------+------+------+---------+---------+---------+---------+---------+---------+--------+---------+---------+
- ),
-
- [GAMES] = LAYOUT_split_3x6_3(
-// +---------+------+------+---------+---------+----------+---------+---------+---------+--------+---------+---------+
- KC_TRNS , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_TRNS ,
- KC_TRNS , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_TRNS ,
- KC_TRNS , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_TRNS ,
- KC_TRNS , KC_LALT , KC_SPACE , MO(ARR) , KC_TRNS , KC_TRNS
-// +---------+------+------+---------+---------+----------+---------+---------+---------+--------+---------+---------+
- ),
-
- [NUM] = LAYOUT_split_3x6_3(
-// +---------+---------------+------+--------+---------+-----------+-----------+------+--------+------+---------+---------+
- KC_TRNS , MO(FUNCTIONS) , KC_1 , KC_2 , KC_3 , DF(BASE) , C(KC_GRV) , KC_7 , KC_8 , KC_9 , KC_TRNS , KC_TRNS ,
- KC_TRNS , MO(MEDIA) , KC_4 , KC_5 , KC_6 , DF(GAMES) , KC_NO , KC_4 , KC_5 , KC_6 , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_0 , KC_7 , KC_8 , KC_9 , DF(QWERTY), KC_NO , KC_1 , KC_2 , KC_3 , KC_TRNS , KC_TRNS ,
- KC_DOT , KC_TRNS , KC_TAB , KC_TRNS , KC_0 , KC_DOT
-// +---------+---------------+------+--------+---------+-----------+-----------+------+--------+------+---------+---------+
- ),
-
- [FUNCTIONS] = LAYOUT_split_3x6_3(
-// +---------------+---------+---------+---------+---------+---------+---------+---------+---------+-------+---------+---------+
- KC_TRNS , KC_TRNS , KC_TRNS , KC_F8 , KC_F9 , KC_F12 , KC_F12 , KC_F7 , KC_F8 , KC_F9 , KC_TRNS , KC_TRNS ,
- TG(FUNCTIONS) , KC_TRNS , KC_F4 , KC_F5 , KC_F6 , KC_F11 , KC_F11 , KC_F4 , KC_F5 , KC_F6 , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_F1 , KC_F2 , KC_F3 , KC_F10 , KC_F10 , KC_F1 , KC_F2 , KC_F3 , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
-// +---------------+---------+---------+---------+---------+---------+---------+---------+---------+-------+---------+---------+
- ),
-
- [ARR] = LAYOUT_split_3x6_3(
-// +---------+---------+-----------+---------+---------+------------+-----------+---------+---------+-----------+---------+---------+
- KC_TRNS , KC_TRNS , KC_HOME , KC_PGUP , KC_PGDN , KC_END , KC_HOME , KC_PGDN , KC_PGUP , KC_END , KC_TRNS , KC_TRNS ,
- KC_ENT , KC_DEL , KC_LEFT , KC_UP , KC_DOWN , KC_RGHT , KC_LEFT , KC_DOWN , KC_UP , KC_RGHT , KC_DEL , KC_TRNS ,
- KC_TRNS , KC_INS , C(KC_LEFT), KC_LGUI , KC_LALT , C(KC_RGHT) , C(KC_LEFT), DOWN4 , UP4 , C(KC_RGHT), KC_INS , KC_TRNS ,
- KC_TRNS , KC_F12 , KC_TRNS , KC_TRNS , KC_F12 , KC_TRNS
-// +---------+---------+-----------+---------+---------+------------+-----------+---------+---------+-----------+---------+---------+
- ),
-
- [PUNC] = LAYOUT_split_3x6_3(
-// +---------+------------+-----------+-----------+-------------+------------+------------+-------------+------------+------------+-----------+---------+
- ALTTAB , S(KC_1) , S(KC_2) , UC(0x20ac), S(KC_4) , S(KC_5) , S(KC_6) , S(KC_7) , S(KC_8) , S(KC_9) , S(KC_0) , KC_TRNS ,
- KC_TRNS , S(KC_NUBS) , S(KC_GRV) , KC_LBRC , KC_RBRC , S(KC_NUHS) , KC_QUOT , S(KC_LBRC) , S(KC_RBRC) , KC_MINS , S(KC_EQL) , KC_TRNS ,
- KC_TRNS , KC_NUBS , KC_GRV , KC_LGUI , KC_LALT , KC_NUHS , S(KC_QUOT) , KC_LALT , KC_LGUI , S(KC_MINS) , KC_EQL , KC_TRNS ,
- KC_TRNS , MO(DUBPUNC) , KC_MPLY , KC_TRNS , MO(DUBPUNC) , KC_TRNS
-// +---------+------------+-----------+-----------+-------------+------------+------------+-------------+------------+------------+-----------+---------+
- ),
-
- [MEDIA] = LAYOUT_split_3x6_3(
-// +------------+-----------+---------+---------+---------+----------------+----------------+---------+---------+---------+----------+---------+
- QK_BOOT , RGB_RMOD , RGB_MOD , RGB_TOG , RGB_HUD , RGB_HUI , RGB_HUD , RGB_HUI , RGB_TOG , RGB_RMOD, RGB_MOD , KC_SLEP ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_VOLD , KC_VOLU , RGB_MODE_PLAIN , RGB_MODE_PLAIN , KC_VOLD , KC_VOLU , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , RGB_VAD , RGB_VAI , RGB_SAD , RGB_SAI , RGB_SAD , RGB_SAI , RGB_VAD , RGB_VAI , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
-// +------------+-----------+---------+---------+---------+----------------+----------------+---------+---------+---------+----------+---------+
- ),
-
- [DUBPUNC] = LAYOUT_split_3x6_3(
-// +---------+----------+-----------+-----------+------------+---------+-----------+---------+----------+---------+----------+---------+
- KC_TRNS , KC_TRNS , KC_TRNS , UC(0x00a3), KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , U_UMLAUT , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , A_UMLAUT , KC_TRNS , UC(0x00df), UC(0x2713) , KC_TRNS , UC(0x00b0), KC_TRNS , KC_TRNS , KC_TRNS , O_UMLAUT , KC_TRNS ,
- KC_TRNS , KC_TRNS , UC(0x2717), KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
-// +---------+----------+-----------+-----------+------------+---------+-----------+---------+----------+---------+----------+---------+
- )
-};
-
-/*
-[TEMPLATE] = LAYOUT_split_3x6_3(
-// +--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
-// +--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+--------------+
-),
-*/
diff --git a/keyboards/crkbd/keymaps/ollyhayes/oled.c b/keyboards/crkbd/keymaps/ollyhayes/oled.c
deleted file mode 100644
index 33db85fbb7..0000000000
--- a/keyboards/crkbd/keymaps/ollyhayes/oled.c
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Copyright 2022 Olly Hayes (@ollyhayes)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "ollyhayes.h"
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master()) {
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- }
- return rotation;
-}
-
-#define L_BASE 0
-#define L_NUM 8
-#define L_FUNCTIONS 16
-#define L_ARR 32
-#define L_PUNC 64
-#define L_DUBPUNC 128
-#define L_MEDIA 256
-
-#define DL_COLEMAK 1
-#define DL_QWERTY 2
-#define DL_GAMES 4
-
-void oled_render_layer_state(void) {
- oled_write_P(PSTR("Layer: "), false);
- switch (layer_state) {
- case L_BASE:
- switch (default_layer_state) {
- case DL_QWERTY:
- oled_write_ln_P(PSTR("Qwerty"), false);
- break;
- case DL_GAMES:
- oled_write_ln_P(PSTR("Games"), false);
- break;
- case DL_COLEMAK:
- default:
- oled_write_ln_P(PSTR("Colemak"), false);
- break;
- }
- break;
- case L_NUM:
- oled_write_ln_P(PSTR("Numbers"), false);
- break;
- case L_FUNCTIONS:
- case L_FUNCTIONS|L_NUM:
- oled_write_ln_P(PSTR("Functions"), false);
- break;
- case L_ARR:
- oled_write_ln_P(PSTR("Navigation"), false);
- break;
- case L_PUNC:
- oled_write_ln_P(PSTR("Punctuation"), false);
- break;
- case L_MEDIA:
- case L_MEDIA|L_NUM:
- oled_write_ln_P(PSTR("Media"), false);
- break;
- case L_DUBPUNC:
- case L_DUBPUNC|L_PUNC:
- oled_write_ln_P(PSTR("Specials"), false);
- break;
- }
-}
-
-void oled_render_timer(void) {
- static uint16_t microticks = 0;
- static uint16_t ticks = 0;
-
- if (microticks++ % 1000 == 0) {
- ticks++;
- }
-
- oled_write_P(PSTR("Ticks: "), false);
- oled_write_ln(get_u16_str(ticks, ' '), false);
-}
-
-void oled_render_presses(void) {
- oled_write_P(PSTR("Presses: "), false);
- oled_write_ln(get_u16_str(key_presses, ' '), false);
-}
-
-void oled_render_rgb_mode(void) {
- oled_write_P(PSTR("Animation: "), false);
- oled_write_ln(get_u8_str(rgb_matrix_get_mode(), ' '), false);
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- oled_render_layer_state();
- }
- oled_render_timer();
- if (is_keyboard_master()) {
- oled_render_presses();
- }
- oled_render_rgb_mode();
- return false;
-}
diff --git a/keyboards/crkbd/keymaps/ollyhayes/readme.md b/keyboards/crkbd/keymaps/ollyhayes/readme.md
deleted file mode 100644
index 9e63f780ff..0000000000
--- a/keyboards/crkbd/keymaps/ollyhayes/readme.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# ollyhayes's keymap for [Corne Keyboard (crkbd)](https://github.com/foostan/crkbd)
-
-## Keymap
-
-After many years of changing my keymap often and reperatedly, I finally came to a stable version. I've been using this for a while now with only small tweaks every so often.
-
-All layers are activated only whilst the layer key is held, except the default layers.
-
-Lots of keys are repeated on both sides. I find this really useful for two reasons:
-
-* I like to have the option to use the opposite hand to hold modifiers shift/ctrl etc as the hand pressing the key, I find this really comfortable.
-* When using the mouse, I like to be able to do common things with just my left hand.
-
-### Colemak
-
-The base layer:
-
-![colemak](https://i.imgur.com/uxLJzul.png)
-
-### Navigation
-
-All things for moving the cursor around, inspired by vim.
-
-* `c←` is ctrl+left
-* `↓↓↓↓` is ↓ pressed four times
-
-![navigation](https://i.imgur.com/xfkA0ze.png)
-
-### Symbols
-
-The shifted number row and all brackets and other symbols.
-
-* `a/t` is alt-tab for window switching in windows/linux. Using some special code to release alt when the punc key is released, this works quite nicely.
-
-![symbols](https://i.imgur.com/t9Jygs1.png)
-
-### Specials
-
-Some extra symbols (linux only for now) that work by sending UTF sequences. Layer activated by holding both punctuation layer keys.
-
-![specials](https://i.imgur.com/AtPWKrA.png)
-
-### Numbers
-
-Numbpads (left version is reversed so 1, 2, 3 are easy to reach with one hand (like on a regular keyboard).
-
-Also the keys to switch the default layer are here.
-
-![numbers](https://i.imgur.com/9XXcAXK.png)
-
-### Functions
-
-Function keys, nothing too interesting.
-
-![functions](https://i.imgur.com/ttrw3FJ.png)
-
-### Games (default layer)
-
-Used for some games, qwerty with space bar and alt for the left hand.
-
-![games](https://i.imgur.com/zVvHWKd.png)
-
-### Qwerty (default layer)
-
-Mostly for guests.
-
-![qwerty](https://i.imgur.com/Bqs1bjV.png)
diff --git a/keyboards/crkbd/keymaps/ollyhayes/rules.mk b/keyboards/crkbd/keymaps/ollyhayes/rules.mk
deleted file mode 100644
index f2bf2ce07b..0000000000
--- a/keyboards/crkbd/keymaps/ollyhayes/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-SRC += oled.c
-
-OLED_ENABLE = yes
-
-EXTRAKEY_ENABLE = yes
-UNICODE_ENABLE = yes
-
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = yes
-# RGB_MATRIX_CUSTOM_USER = yes
-
-VIRTSER_ENABLE = yes
-
-LTO_ENABLE = yes
-
-MOUSEKEY_ENABLE = no
diff --git a/keyboards/crkbd/keymaps/pdl/config.h b/keyboards/crkbd/keymaps/pdl/config.h
deleted file mode 100644
index f2a5a522ea..0000000000
--- a/keyboards/crkbd/keymaps/pdl/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2021 Daniel Perrett
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-
-#define TAPPING_TOGGLE 2
-#define TAPPING_TERM 200
-
-#define COMBO_PDL
-#define COMBO_TERM 100
diff --git a/keyboards/crkbd/keymaps/pdl/keymap.c b/keyboards/crkbd/keymaps/pdl/keymap.c
deleted file mode 100644
index 1060a92650..0000000000
--- a/keyboards/crkbd/keymaps/pdl/keymap.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2022 Daniel Perrett
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "pdl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- MY_FESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO,
- MY_SBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, MY_CENT,
- KC_LCTL, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN
- ),
- [_PROXIM] = LAYOUT_wrapper(
- MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC,
- KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL,
- MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, MY_CENT,
- KC_LCTL, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN
- ),
- [_NAVIGN] = LAYOUT_wrapper(
- _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
- [_PUNCTN] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
- [_NUMBRS] = LAYOUT_wrapper(
- _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
- [_CODING] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
- [_FUNCTN] = LAYOUT_wrapper(
- _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD,
- _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR,
- _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/crkbd/keymaps/rmeli/config.h b/keyboards/crkbd/keymaps/rmeli/config.h
deleted file mode 100644
index 86104fbacb..0000000000
--- a/keyboards/crkbd/keymaps/rmeli/config.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2021 Rocco Meli <@RMeli>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define MASTER_LEFT // Left side is the master
-#define SPLIT_LED_STATE_ENABLE
-
-#ifdef RGB_MATRIX_ENABLE
-// RGB matrix options
-# define RGB_MATRIX_KEYPRESSES // enable keypress effects
-# define RGB_MATRIX_LED_FLUSH_LIMIT 16
-# define RGB_DISABLE_WHEN_USB_SUSPENDED
-// Disable unwanted R2G effects (from r2g/config.h)
-# undef ENABLE_RGB_MATRIX_ALPHAS_MODS
-# undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-# undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-# define ENABLE_RGB_MATRIX_BREATHING
-# undef ENABLE_RGB_MATRIX_BAND_SAT
-# undef ENABLE_RGB_MATRIX_BAND_VAL
-# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-# undef ENABLE_RGB_MATRIX_CYCLE_ALL
-# undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-# undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-# undef ENABLE_RGB_MATRIX_RAINDROPS
-# undef ENABLE_RGB_MATRIX_HUE_BREATHING
-# undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-# undef ENABLE_RGB_MATRIX_SPLASH
-# undef ENABLE_RGB_MATRIX_SOLID_SPLASH
-// Enable effects
-# define ENABLE_RGB_MATRIX_SOLID_COLOR
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-// Default effect
-# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
-# define RGB_MATRIX_DEFAULT_HUE 10
-# define RGB_MATRIX_DEFAULT_SAT 255
-# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
-#endif
-
-// https://github.com/qmk/qmk_firmware/blob/develop/docs/squeezing_avr.md
-#undef LOCKING_SUPPORT_ENABLE
-#undef LOCKING_RESYNC_ENABLE
-#define NO_MUSIC_MODE
-#define LAYER_STATE_8BIT // Limit to 8 layers
diff --git a/keyboards/crkbd/keymaps/rmeli/keymap.c b/keyboards/crkbd/keymaps/rmeli/keymap.c
deleted file mode 100644
index 5a04e8150f..0000000000
--- a/keyboards/crkbd/keymaps/rmeli/keymap.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
-Copyright 2019 @foostan
-Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
-Copyright 2021 Rocco Meli <@RMeli>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include "rmeli.h"
-
-// + -------------------- +
-// + RGB MATRIX CALLBACKS |
-// + -------------------- +
-
-// LED numbers:
-// https://github.com/foostan/crkbd/blob/main/corne-classic/doc/buildguide_en.md
-
-// Change LED color to red when CAPS LOCK is active
-bool rgb_matrix_indicators_user(void) {
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(26, 255, 0, 0);
- // Only works with SPLIT_LED_STATE_ENABLE
- rgb_matrix_set_color(53, 255, 0, 0);
- }
- return false;
-}
-
-// + ---- +
-// + OLED |
-// + ---- +
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- oled_render_rocco();
- } else {
- oled_render_meli();
- }
- return false;
-}
-
-// + ------- +
-// + KEY MAP |
-// + ------- +
-
-// Layer names
-enum layer_names {
- _QWERTY,
- _COLEMAK_DH,
- _DWN,
- _UP,
- _CONFIG,
-};
-
-// Layer names shortcuts
-#define _QWY 0
-#define _CMK 1
-#define _CFG 4
-
-#define ______THUMB_LEFT_x3______ KC_LGUI, MO(_DWN), KC_SPC
-#define ______THUMB_RIGHT_x3_____ KC_ENT, MO(_UP), KC_RCTL
-
-// LAYOUT
-//
-// |-----------------------------| |-----------------------------|
-// | | | | | | | | | | | | | |
-// |----+----+----+----+----+----| |----+----+----+----+----+----|
-// | | | | | | | | | | | | | |
-// |----+----+----+----+----+----| |----+----+----+----+----+----|
-// | | | | | | | | | | | | | |
-// |----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
-// | | | | | | | |
-// |--------------| |--------------|
-
-// Define wrapper for standard CRKB layout
-#define LAYOUT_wrapper(...) LAYOUT_split_3x6_3(__VA_ARGS__)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_wrapper(
- // clang-format off
- ___________________QWERTY_L1_x6_____________________, ___________________QWERTY_R1_x6_____________________,
- ___________________QWERTY_L2_x6_____________________, ___________________QWERTY_R2_x6_____________________,
- ___________________QWERTY_L3_x6_____________________, ___________________QWERTY_R3_x6_____________________,
- ______THUMB_LEFT_x3______, ______THUMB_RIGHT_x3_____
- ),
-
- [_COLEMAK_DH] = LAYOUT_wrapper(
- ________________COLEMAK_MOD_DH_L1_x6________________, ________________COLEMAK_MOD_DH_R1_x6________________,
- ________________COLEMAK_MOD_DH_L2_x6________________, ________________COLEMAK_MOD_DH_R2_x6________________,
- ________________COLEMAK_MOD_DH_L3_x6________________, ________________COLEMAK_MOD_DH_R3_x6________________,
- ______THUMB_LEFT_x3______, ______THUMB_RIGHT_x3_____
- ),
-
- [_DWN] = LAYOUT_wrapper(
- _______, ______________NUMBER_LEFT_x5_______________, ______________NUMBER_RIGHT_x5______________, _______,
- _______, ______________UNICODE_L2_x5________________, ________________NAV_R2_x5__________________, XXXXXXX,
- _______, ______________UNICODE_L3_x5________________, ________________NAV_R3_x5__________________, _______,
- KC_LGUI, _______, _______, _______,MO(_CFG), _______
- ),
-
- [_UP] = LAYOUT_wrapper(
- ___________________SYMBOL_LEFT_x6___________________, ___________________SYMBOL_RIGHT_x6__________________,
- _______, ____________NAV_VIM_x4____________, XXXXXXX, ____________________SYMBOL_R2_x6____________________,
- _______, _________________NONE_5x___________________, ____________________SYMBOL_R3_x6____________________,
- _______,MO(_CFG), _______, _______, _______, _______
- ),
-
- [_CONFIG] = LAYOUT_wrapper(
- QK_BOOT, _________________NONE_5x___________________, _______________CONFIG_R1_x5________________,DF(_QWY),
- RGB_TOG, ________________RGB_L2_x5__________________, _______________CONFIG_R2_x5________________, XXXXXXX,
- XXXXXXX, ________________RGB_L3_x5__________________, _______________CONFIG_R3_x5________________,DF(_CMK),
- _______, _______, _______, _______, _______, _______
- )
-};
-// clang-format on
diff --git a/keyboards/crkbd/keymaps/rmeli/rules.mk b/keyboards/crkbd/keymaps/rmeli/rules.mk
deleted file mode 100644
index 107c493978..0000000000
--- a/keyboards/crkbd/keymaps/rmeli/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-OLED_ENABLE = yes
-
-TAP_DANCE_ENABLE = yes
-AUTO_SHIFT_ENABLE = no // disable auto-shift with home row mods
-
-UNICODEMAP_ENABLE = yes
-NKRO_ENABLE = yes
-MAGIC_ENABLE = yes
-
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/crkbd/keymaps/rs/config.h b/keyboards/crkbd/keymaps/rs/config.h
deleted file mode 100644
index bbdb0d8106..0000000000
--- a/keyboards/crkbd/keymaps/rs/config.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 300
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 27
-#define RGBLIGHT_LIMIT_VAL 120
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 17
-#define RGBLIGHT_VAL_STEP 17
diff --git a/keyboards/crkbd/keymaps/rs/keymap.c b/keyboards/crkbd/keymaps/rs/keymap.c
deleted file mode 100644
index 7e2a2e066e..0000000000
--- a/keyboards/crkbd/keymaps/rs/keymap.c
+++ /dev/null
@@ -1,39 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rs.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_EQL ,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_ESCC, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
- //|----+----+----+----+----+----+ |----+----+----+----+----+----|
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_ENTS,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- KC_LALT,KC_LGUI,KC_SPC , KC_BSPC,KC_CODE,KC_FN
- // `----+----+----' `+---+----+----'c
- ),
- [_CODE] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- KC_GRV ,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC, KC_CIRC,KC_LPLT,KC_ASTR,KC_RPGT,KC_NEQL,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_MINS,KC_LBRC, KC_UP ,KC_RBRC,_______,KC_BSLS,
- //|----+----+----+----+----+----+ |----+----+----+----+----+----|
- _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_AMPR,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_PIPE,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,_______,KC_DOT , _______,_______,_______
- // `----+----+----' `----+----+----'
- ),
- [_FN] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_LTOG,KC_LHUI,KC_LSAI,KC_LVAI,KC_LRST,KC_BRMU, KC_VOLU,_______,KC_PGUP,_______,_______,_______,
- //|----+----+----+----+----+----+ |----+----+----+----+----+----|
- KC_LMOD,KC_LHUD,KC_LSAD,KC_LVAD,KC_RST ,KC_BRMD, KC_VOLD,KC_CTRA,KC_PGDN,KC_CTRE,_______,_______,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,_______,_______, KC_MUTE,_______,_______
- // `----+----+----' `----+----+----'
- ),
-};
-
diff --git a/keyboards/crkbd/keymaps/rs/oled.c b/keyboards/crkbd/keymaps/rs/oled.c
deleted file mode 100644
index a4c71daac2..0000000000
--- a/keyboards/crkbd/keymaps/rs/oled.c
+++ /dev/null
@@ -1,87 +0,0 @@
-#ifdef OLED_ENABLE
-#include QMK_KEYBOARD_H
-#ifdef PROTOCOL_LUFA
-#include "lufa.h"
-#include "split_util.h"
-#endif
-
-// When add source files to SRC in rules.mk, you can use functions.
-const char *read_logo(void);
-const char *read_keylog(void);
-const char *read_keylogs(void);
-void set_keylog(uint16_t keycode, keyrecord_t *record);
-
-void matrix_scan_user(void) { iota_gfx_task(); }
-
-typedef struct {
- uint8_t state;
- char name[8];
-} LAYER_DISPLAY_NAME;
-
-#define LAYER_DISPLAY_MAX 5
-const LAYER_DISPLAY_NAME layer_display_name[LAYER_DISPLAY_MAX] = {
- {0, "Base"},
- {2, "Code"},
- {4, "Fn"},
- {6, "Fn+Code"},
- {__UINT8_MAX__, "?"},
-};
-static uint8_t layer_name_idx;
-static char layer_status_buf[24] = "Layer: Base\n";
-
-#ifdef RGBLIGHT_ENABLE
-// Following line allows macro to read current RGB settings
-extern rgblight_config_t rgblight_config;
-void update_keymap_status(void) {
- snprintf(layer_status_buf, sizeof(layer_status_buf) - 1, "Layer:%s RGB: %d\n",
- layer_display_name[layer_name_idx].name, rgblight_config.mode);
-}
-#else
-void update_keymap_status(void) {
- snprintf(layer_status_buf, sizeof(layer_status_buf) - 1, "Layer:%s\n",
- layer_display_name[layer_name_idx].name);
-}
-#endif
-
-void matrix_init_user(void) {
- update_keymap_status();
-}
-
-// declared in users/rs/rs.c
-void rgb_mod_changed_keymap(void) {
- update_keymap_status();
-}
-
-// declared in users/rs/rs.c
-void keylog_set_keymap(uint16_t keycode, keyrecord_t *record) {
- set_keylog(keycode, record);
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- for (layer_name_idx = 0; layer_name_idx < LAYER_DISPLAY_MAX; ++layer_name_idx) {
- if (state == 0 && layer_display_name[layer_name_idx].state == default_layer_state) {
- break;
- } else if (state != 0 && layer_display_name[layer_name_idx].state == state) {
- break;
- }
- }
- update_keymap_status();
- return state;
-}
-
-static inline void render_keymap_status(struct CharacterMatrix *matrix) {
- oled_write(layer_status_buf);
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- render_keymap_status(matrix);
- oled_write_ln(read_keylog(), false);
- oled_write_ln(read_keylogs(), false);
- } else {
- oled_write(read_logo(), false);
- }
- return false;
-}
-
-#endif
diff --git a/keyboards/crkbd/keymaps/rs/readme.md b/keyboards/crkbd/keymaps/rs/readme.md
deleted file mode 100644
index d7f7bb6459..0000000000
--- a/keyboards/crkbd/keymaps/rs/readme.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# RS40: Code Friendly 40% Keymap
-
-This keymap is an evolution of my previous keymap optimized for coding with a 60% keyboards like the Iris. I tried to keep the simplicity of my previous keymap with all the keys necessary for coding on a single layer in addition to the base one.
-
-Because I sometime have to use my internal keyboard I my macbook, a karabiner configuration is also provided to get most of the features of this keyboard, including the code layer / backspace on right command key etc.
-
-See [rs readme](../../../../users/rs/readme.md) for a list of other keyboards supported by this keymap.
-
-## Base Layer
-
-[![](http://poitr.us/moooMf+)](http://www.keyboard-layout-editor.com/##@_backcolor=%23d8c1f5&switchMount=cherry&pcb:false&plate:true%3B&@_x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=E&_x:8%3B&=I%3B&@_y:-0.87&x:2%3B&=W&_x:1%3B&=R&_x:6%3B&=U&_x:1%3B&=O%3B&@_y:-0.8799999999999999&x:5%3B&=T&_x:4%3B&=Y%3B&@_y:-0.87&c=%233a1ee6&t=%23b84465%3B&=Tab&_c=%236750f2&t=%2344b8b8%3B&=Q&_x:12%3B&=P&_c=%233a1ee6&t=%23b84465&a:5%3B&=+%0A%2F=%3B&@_y:-0.3799999999999999&x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=D&_x:8%3B&=K%3B&@_y:-0.8700000000000001&x:2%3B&=S&_x:1%3B&=F&_x:6%3B&=J&_x:1%3B&=L%3B&@_y:-0.8799999999999999&x:5%3B&=G&_x:4%3B&=H%3B&@_y:-0.8700000000000001&c=%233a1ee6&t=%23b84465&a:5%3B&=Esc%0ACtrl&_c=%236750f2&t=%2344b8b8&a:7%3B&=A&_x:12&a:5%3B&=%2F:%0A%2F%3B&_c=%233a1ee6&t=%23b84465%3B&=%22%0A'%3B&@_y:-0.3799999999999999&x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=C&_x:8&a:5%3B&=%3C%0A,%3B&@_y:-0.8700000000000001&x:2&a:7%3B&=X&_x:1%3B&=V&_x:6%3B&=M&_x:1&a:5%3B&=%3E%0A.%3B&@_y:-0.8799999999999999&x:5&a:7%3B&=B&_x:4%3B&=N%3B&@_y:-0.8700000000000001&c=%233a1ee6&t=%23b84465%3B&=Shift&_c=%236750f2&t=%2344b8b8%3B&=Z&_x:12&a:5%3B&=%3F%0A%2F%2F&_c=%233a1ee6&t=%23b84465&a:7%3B&=Enter%3B&@_y:-0.17999999999999972&x:11.75%3B&=Fn%3B&@_ry:0.25&y:2.95&x:3.3%3B&=Alt%3B&@_r:12&ry:1.75&y:0.5&x:4.8%3B&=Cmd%3B&@_r:35&rx:6.5&ry:4.25&y:-0.75&x:-0.75&c=%23d12424&t=%23ffffff&h:1.5%3B&=Space%3B&@_r:-35&rx:13&y:-2.75&x:-3.0999999999999996&h:1.5%3B&=Back%20Space%3B&@_r:-12&rx:0&ry:0&y:5.55&x:9.55&c=%233a1ee6&t=%23b84465%3B&=Code)
-
-## Code Layer
-
-[![](http://poitr.us/GvljvC+)](http://www.keyboard-layout-editor.com/##@_backcolor=%23d8c1f5&switchMount=cherry&pcb:false&plate:true%3B&@_x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=%23&_x:8%3B&=*%3B&@_y:-0.87&x:2%3B&=%2F@&_x:1%3B&=$&_x:6&a:5%3B&=%3C%0A(&_x:1%3B&=%3E%0A)%3B&@_y:-0.8799999999999999&x:5&a:7%3B&=%25&_x:4%3B&=%5E%3B&@_y:-0.87&c=%233a1ee6&t=%23b84465%3B&=Tab&_c=%236750f2&t=%2344b8b8%3B&=!&_x:12%3B&=!%2F=&_c=%233a1ee6&t=%23b84465&a:5%3B&=+%0A%2F=%3B&@_y:-0.3799999999999999&x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=3&_x:8%3B&=↑%3B&@_y:-0.8700000000000001&x:2%3B&=2&_x:1%3B&=4&_x:6&a:5%3B&=%7B%0A%5B&_x:1%3B&=%7D%0A%5D%3B&@_y:-0.8799999999999999&x:5&a:7%3B&=5&_x:4&a:5%3B&=%2F_%0A-%3B&@_y:-0.8700000000000001&c=%233a1ee6&t=%23b84465%3B&=Esc%0ACtrl&_c=%236750f2&t=%2344b8b8&a:7%3B&=1&_x:12&a:5%3B&=%2F:%0A%2F%3B&_c=%233a1ee6&t=%23b84465%3B&=%7C%0A%5C%3B&@_y:-0.3799999999999999&x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=8&_x:8%3B&=↓%3B&@_y:-0.8700000000000001&x:2%3B&=7&_x:1%3B&=9&_x:6%3B&=←&_x:1%3B&=→%3B&@_y:-0.8799999999999999&x:5%3B&=0&_x:4%3B&=%2F&%3B&@_y:-0.8700000000000001&c=%233a1ee6&t=%23b84465%3B&=Shift&_c=%236750f2&t=%2344b8b8%3B&=6&_x:12&a:5%3B&=%3F%0A%2F%2F&_c=%233a1ee6&t=%23b84465&a:7%3B&=Enter%3B&@_y:-0.17999999999999972&x:11.75%3B&=Fn%3B&@_ry:0.25&y:2.95&x:3.3%3B&=Alt%3B&@_r:12&ry:1.75&y:0.5&x:4.8%3B&=Cmd%3B&@_r:35&rx:6.5&ry:4.25&y:-0.75&x:-0.75&c=%23d12424&t=%23ffffff&h:1.5%3B&=.%3B&@_r:-35&rx:13&y:-2.75&x:-3.0999999999999996&h:1.5%3B&=Back%20Space%3B&@_r:-12&rx:0&ry:0&y:5.55&x:9.55&c=%233a1ee6&t=%23b84465%3B&=Code)
-
-## Fn Layer
-
-[![](http://poitr.us/OXwmBK+)](http://www.keyboard-layout-editor.com/##@_backcolor=%23d8c1f5&switchMount=cherry&pcb:false&plate:true%3B&@_x:3&c=%236750f2&t=%2344b8b8&a:7%3B&=F3&_x:8%3B&=F8%3B&@_y:-0.87&x:2%3B&=F2&_x:1%3B&=F4&_x:6%3B&=F7&_x:1%3B&=F9%3B&@_y:-0.8799999999999999&x:5%3B&=F5&_x:4%3B&=F6%3B&@_y:-0.87&c=%233a1ee6&t=%23b84465%3B&=&_c=%236750f2&t=%2344b8b8%3B&=F1&_x:12%3B&=F10&_c=%233a1ee6&t=%23b84465%3B&=F11%3B&@_y:-0.3799999999999999&x:3&c=%236750f2&t=%2344b8b8%3B&=RGB%20Value+&_x:8%3B&=Page%20Up%3B&@_y:-0.8700000000000001&x:2%3B&=RGB%20Sat+&_x:1%3B&=RGB%20Reset&_x:6%3B&=&_x:1%3B&=%3B&@_y:-0.8799999999999999&x:5%3B&=Bright+&_x:4%3B&=Vol+%3B&@_y:-0.8700000000000001&c=%233a1ee6&t=%23b84465%3B&=RGB%20Toggle&_c=%236750f2&t=%2344b8b8%3B&=RGB%20Hue+&_x:12%3B&=&_c=%233a1ee6&t=%23b84465%3B&=%3B&@_y:-0.3799999999999999&x:3&c=%236750f2&t=%2344b8b8%3B&=RGB%20Value-&_x:8%3B&=Page%20Down%3B&@_y:-0.8700000000000001&x:2%3B&=RGB%20Sat-&_x:1%3B&=Reset&_x:6%3B&=Ctrl+A&_x:1%3B&=Ctrl+E%3B&@_y:-0.8799999999999999&x:5%3B&=Bright-&_x:4%3B&=Vol-%3B&@_y:-0.8700000000000001&c=%233a1ee6&t=%23b84465%3B&=RGB%20Mode&_c=%236750f2&t=%2344b8b8%3B&=RGB%20Hue-&_x:12%3B&=&_c=%233a1ee6&t=%23b84465%3B&=%3B&@_y:-0.17999999999999972&x:11.75%3B&=Fn%3B&@_ry:0.25&y:2.95&x:3.3%3B&=%3B&@_r:12&ry:1.75&y:0.5&x:4.8%3B&=%3B&@_r:35&rx:6.5&ry:4.25&y:-0.75&x:-0.75&c=%23d12424&t=%23ffffff&h:1.5%3B&=%3B&@_r:-35&rx:13&y:-2.75&x:-3.0999999999999996&h:1.5%3B&=Mute%3B&@_r:-12&rx:0&ry:0&y:5.55&x:9.55&c=%233a1ee6&t=%23b84465%3B&=Code) \ No newline at end of file
diff --git a/keyboards/crkbd/keymaps/rs/rules.mk b/keyboards/crkbd/keymaps/rs/rules.mk
deleted file mode 100644
index 5a76c38f38..0000000000
--- a/keyboards/crkbd/keymaps/rs/rules.mk
+++ /dev/null
@@ -1,31 +0,0 @@
-
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-TAP_DANCE_ENABLE = no
-
-BOOTLOADER = atmel-dfu
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-# If you want to change the display of OLED, you need to change here
-SRC += oled.c \
- ./lib/rgb_state_reader.c \
- ./lib/layer_state_reader.c \
- ./lib/logo_reader.c \
- ./lib/keylogger.c \
diff --git a/keyboards/crkbd/keymaps/snowe/config.h b/keyboards/crkbd/keymaps/snowe/config.h
deleted file mode 100644
index 82097c503a..0000000000
--- a/keyboards/crkbd/keymaps/snowe/config.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 200
-
-#undef PERMISSIVE_HOLD
-
-#ifdef RGBLIGHT_ENABLE
- #undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
- #define RGBLED_NUM 27
- #define RGBLIGHT_LIMIT_VAL 120
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-#endif
-
-#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
-
-#define LAYER_STATE_8BIT
-#define SPLIT_WPM_ENABLE
diff --git a/keyboards/crkbd/keymaps/snowe/keycode_aliases.h b/keyboards/crkbd/keymaps/snowe/keycode_aliases.h
deleted file mode 100644
index c19fb11d4b..0000000000
--- a/keyboards/crkbd/keymaps/snowe/keycode_aliases.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright 2020 Drashna Jaelre <@drashna>
- * Copyright 2021 Tyler Thrailkill <@snowe/@snowe2010>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define GUI_ESC GUI_T(KC_ESC)
-#define CTL_ESC CTL_T(KC_ESC)
-#define SH_BKSP SFT_T(KC_BSPC)
-#define SP_RAIS LT(_UPPER, KC_SPC)
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_UPPER)
-#define ADJUST MO(_ADJUST)
-#define TG_MODS TG(_MODS)
-//#define TG_GAME TG(_GAMEPAD)
-//#define OS_LWR OSL(_LOWER)
-//#define OS_RSE OSL(_UPPER)
-
-//#define KC_SEC1 KC_SECRET_1
-//#define KC_SEC2 KC_SECRET_2
-//#define KC_SEC3 KC_SECRET_3
-//#define KC_SEC4 KC_SECRET_4
-//#define KC_SEC5 KC_SECRET_5
-
-#define QWERTY KC_QWERTY
-#define DVORAK KC_DVORAK
-#define COLEMAK KC_COLEMAK
-#define WORKMAN KC_WORKMAN
-
-#define KC_RESET QK_BOOT
-#define KC_RST KC_RESET
-
-#ifdef SWAP_HANDS_ENABLE
-# define KC_C1R3 SH_TT
-#else // SWAP_HANDS_ENABLE
-# define KC_C1R3 KC_BSPC
-#endif // SWAP_HANDS_ENABLE
-
-#define BK_LWER LT(_LOWER, KC_BSPC)
-#define SP_LWER LT(_LOWER, KC_SPC)
-#define DL_RAIS LT(_UPPER, KC_DEL)
-#define ET_RAIS LT(_UPPER, KC_ENTER)
-#define SFT_ENT SFT_T(KC_ENTER)
-#define SP_RAIS LT(_UPPER, KC_SPC)
-
-/* OSM keycodes, to keep things clean and easy to change */
-#define KC_MLSF OSM(MOD_LSFT)
-#define KC_MRSF OSM(MOD_RSFT)
-
-#define OS_LGUI OSM(MOD_LGUI)
-#define OS_RGUI OSM(MOD_RGUI)
-#define OS_LSFT OSM(MOD_LSFT)
-#define OS_RSFT OSM(MOD_RSFT)
-#define OS_LCTL OSM(MOD_LCTL)
-#define OS_RCTL OSM(MOD_RCTL)
-#define OS_LALT OSM(MOD_LALT)
-#define OS_RALT OSM(MOD_RALT)
-#define OS_MEH OSM(MOD_MEH)
-#define OS_HYPR OSM(MOD_HYPR)
-
-#define ALT_APP ALT_T(KC_APP)
-
-#define MG_NKRO MAGIC_TOGGLE_NKRO
-
-#define UC_IRNY UC(0x2E2E)
-#define UC_CLUE UC(0x203D)
diff --git a/keyboards/crkbd/keymaps/snowe/keymap.c b/keyboards/crkbd/keymaps/snowe/keymap.c
deleted file mode 100644
index c605089bfb..0000000000
--- a/keyboards/crkbd/keymaps/snowe/keymap.c
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
-Copyright 2019 @foostan
-Copyright 2020 Drashna Jaelre <@drashna>
-Copyright 2021 Tyler Thrailkill <@snowe/@snowe2010>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "snowe.h"
-
-// Symbols chart
-// ↯ hyper key (ctrl, alt, shift, super)
-// ⌘ command
-// ⌥ option
-// ⌃ control
-// ⇧ shift
-// ⌫ backspace
-// ⌦ delete
-// ⎋ escape
-// ↩ enter
-
-/* Wrapper
- * ,-----------------------------------------------. .-----------------------------------------------.
- * | Tab | K01 | K02 | K03 | K04 | K05 | | K06 | K07 | K08 | K09 | K0A | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | ⌘/⎋ | ⌃/K11 | K12 | K13 | K14 | K15 | | K16 | K17 | K18 | K19 | ⌥/K1A | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | ↯/⌦ | ⌥/K21 | K22 | K23 | K24 | K25 | | K26 | K27 | K28 | K29 | ⌃/K2A | |
- * `-----------------------. | | .-----------------------'
- * |-------+-------+-------| |-------+-------+-------|
- * | ⌃ | ⇧/↩ | ⌫/LWR | | ␣/RAY | ␣ | R ⌥ |
- * `-----------------------' '-----------------------'
- */
-// clang-format off
-#define LAYOUT_crkbd_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \
- GUI_ESC, CTL_T(K11), K12, K13, K14, K15, K16, K17, K18, K19, ALT_T(K1A), KC_QUOT, \
- HYPR_T(KC_DEL), ALT_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), KC_BSLS, \
- KC_LCTL, LOWER, SH_BKSP, KC_ENTER, SP_RAIS, KC_LALT \
- )
-// clang-format on
-#define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__)
-// clang-format off
-#define LAYOUT_crkbd_no_hold_shortcuts( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \
- GUI_ESC, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \
- KC_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_BSLS, \
- KC_LCTL, LOWER, KC_BSPC, KC_ENTER, SP_RAIS, KC_LALT \
- )
-// clang-format on
-#define LAYOUT_crkbd_no_hold_shortcuts_wrapper(...) LAYOUT_crkbd_no_hold_shortcuts(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- /* QWERTY
- * ,-----------------------------------------------. .-----------------------------------------------.
- * | | Q | W | E | R | T | | Y | U | I | O | P | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | A | S | D | F | G | | H | J | K | L | ; | ' |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | Z | X | C | V | B | | N | M | , | . | / | |
- * `-----------------------. | | .-----------------------'
- * |-------+-------+-------| |-------+-------+-------|
- * | | | | | | | |
- * `-----------------------' '-----------------------'
- */
- [_MAIN] = LAYOUT_crkbd_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
- [_GAMING] = LAYOUT_crkbd_no_hold_shortcuts_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- /* Lower
- * ,-----------------------------------------------. .-----------------------------------------------.
- * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | _ | + | [ | ] | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | ← | ↑ | ↓ | → | |
- * `-----------------------. | | .-----------------------'
- * |-------+-------+-------| |-------+-------+-------|
- * | | | | | | | |
- * `-----------------------' '-----------------------'
- */
- [_LOWER] = LAYOUT_wrapper(
- KC_TILDE, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11,
- KC_F12 , _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______ , _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
-
- /*
- * ,-----------------------------------------------. .-----------------------------------------------.
- * | | | | | | | | | | | | | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | | | | | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | | | | | |
- * `-----------------------. | | .-----------------------'
- * |-------+-------+-------| |-------+-------+-------|
- * | | | | | | | |
- * `-----------------------' '-----------------------'
- */
- /* Raise
- * ,-----------------------------------------------. .-----------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | ← | ↑ | ↓ | → | |
- * |-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | home |pg down| pg up | end | |
- * `-----------------------. | | .-----------------------'
- * |-------+-------+-------| |-------+-------+-------|
- * | | | | | | | |
- * `-----------------------' '-----------------------'
- */
- [_UPPER] = LAYOUT_wrapper(
- KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- _______, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RESET,
- _______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY,
- _______, _______, _______, _______, _______, _______
- )
- // clang-format on
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _LOWER, _UPPER, _ADJUST); }
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case KC_LCTL:
- case KC_RCTL:
-#ifdef OCEAN_DREAM_ENABLE
- is_calm = (record->event.pressed) ? true : false;
-#endif
-#ifdef LUNA_ENABLE
- if (record->event.pressed) {
- isSneaking = true;
- } else {
- isSneaking = false;
- }
-#endif
- break;
- case KC_SPC:
-#ifdef LUNA_ENABLE
- if (record->event.pressed) {
- isJumping = true;
- showedJump = false;
- } else {
- isJumping = false;
- }
-#endif
- break;
- }
- return true;
-}
-
-// uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
-// switch (keycode) {
-// case ALT_T(KC_A):
-// case SH_BKSP:
-// return TAPPING_TERM + 500;
-// default:
-// return TAPPING_TERM;
-// }
-//}
-//
-// bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
-// if (keycode == ALT_T(KC_A) || keycode == SH_BKSP) {
-// return false;
-// }
-// switch (keycode) {
-// case QK_MOD_TAP ... QK_MOD_TAP_MAX:
-// return true;
-// default:
-// return false;
-// }
-//}
diff --git a/keyboards/crkbd/keymaps/snowe/rules.mk b/keyboards/crkbd/keymaps/snowe/rules.mk
deleted file mode 100644
index 10cf2fa97c..0000000000
--- a/keyboards/crkbd/keymaps/snowe/rules.mk
+++ /dev/null
@@ -1,25 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-AUDIO_ENABLE = no # Audio output on port C6
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-LEADER_ENABLE = no
-MIDI_ENABLE = no # MIDI controls
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-RGBLIGHT_TWINKLE = no
-OLED_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-
-OCEAN_DREAM_ENABLE = yes
-LUNA_ENABLE = no # disabled so travis build succeeds
-
-# if firmware size over limit, try this option
-LTO_ENABLE = yes
-
-WPM_ENABLE = yes
diff --git a/keyboards/crkbd/keymaps/toinux/config.h b/keyboards/crkbd/keymaps/toinux/config.h
deleted file mode 100644
index 83fe82aa8d..0000000000
--- a/keyboards/crkbd/keymaps/toinux/config.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-//#define QUICK_TAP_TERM 0
-//#define TAPPING_TERM 100
-
-#ifdef RGBLIGHT_ENABLE
- #define RGBLIGHT_EFFECT_BREATHING
- // #define RGBLIGHT_EFFECT_RAINBOW_MOOD
- // #define RGBLIGHT_EFFECT_RAINBOW_SWIRL
- #define RGBLIGHT_EFFECT_SNAKE
- #define RGBLIGHT_EFFECT_KNIGHT
- #define RGBLIGHT_EFFECT_CHRISTMAS
- #define RGBLIGHT_EFFECT_STATIC_GRADIENT
- #define RGBLIGHT_EFFECT_RGB_TEST
- #define RGBLIGHT_EFFECT_ALTERNATING
- #define RGBLIGHT_EFFECT_TWINKLE
- #define RGBLIGHT_LIMIT_VAL 120
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-#endif
-
-#ifdef RGB_MATRIX_ENABLE
-# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
-// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
-# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
-# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
-// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
-# define RGB_MATRIX_HUE_STEP 8
-# define RGB_MATRIX_SAT_STEP 8
-# define RGB_MATRIX_VAL_STEP 8
-# define RGB_MATRIX_SPD_STEP 10
-
-/* Enable the animations you want/need. You may need to enable only a small number of these because *
- * they take up a lot of space. Enable and confirm that you can still successfully compile your firmware. */
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-# undef ENABLE_RGB_MATRIX_ALPHAS_MODS
-# undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-# undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-# undef ENABLE_RGB_MATRIX_BREATHING
-# undef ENABLE_RGB_MATRIX_BAND_SAT
-# undef ENABLE_RGB_MATRIX_BAND_VAL
-# undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-# undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-# undef ENABLE_RGB_MATRIX_CYCLE_ALL
-# undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-# undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-# undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-# undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-# undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-# undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-# undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-# undef ENABLE_RGB_MATRIX_DUAL_BEACON
-# undef ENABLE_RGB_MATRIX_RAINBOW_BEACON
-# undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-# undef ENABLE_RGB_MATRIX_RAINDROPS
-# undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-# undef ENABLE_RGB_MATRIX_HUE_BREATHING
-# undef ENABLE_RGB_MATRIX_HUE_PENDULUM
-# undef ENABLE_RGB_MATRIX_HUE_WAVE
-# undef ENABLE_RGB_MATRIX_PIXEL_RAIN
-# undef ENABLE_RGB_MATRIX_PIXEL_FLOW
-# undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-# undef ENABLE_RGB_MATRIX_TYPING_HEATMAP
-# undef ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-# define ENABLE_RGB_MATRIX_SPLASH
-# undef ENABLE_RGB_MATRIX_MULTISPLASH
-# undef ENABLE_RGB_MATRIX_SOLID_SPLASH
-# undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#endif
-
-#define OLED_FONT_H "keyboards/crkbd/keymaps/toinux/glcdfont.c"
-
-#define SPLIT_LAYER_STATE_ENABLE
-// #define SPLIT_LED_STATE_ENABLE
-
-#define LAYER_STATE_16BIT
-
-#define HOLD_ON_OTHER_KEY_PRESS_PER_KEY
diff --git a/keyboards/crkbd/keymaps/toinux/glcdfont.c b/keyboards/crkbd/keymaps/toinux/glcdfont.c
deleted file mode 100644
index 74cce5a952..0000000000
--- a/keyboards/crkbd/keymaps/toinux/glcdfont.c
+++ /dev/null
@@ -1,232 +0,0 @@
-// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0.
-// See gfxfont.h for newer custom bitmap font info.
-
-#include "progmem.h"
-
-// Standard ASCII 5x7 font
-const unsigned char font[] PROGMEM = {
- 0x24, 0x7E, 0x24, 0x24, 0x7E, 0x24,
- 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
- 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
- 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
- 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
- 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
- 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
- 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
- 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
- 0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
- 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
- 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
- 0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
- 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
- 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
- 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
- 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
- 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
- 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
- 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
- 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
- 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
- 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
- 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
- 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
- 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
- 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
- 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
- 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
- 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
- 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
- 0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
- 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
- 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
- 0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
- 0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
- 0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
- 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
- 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
- 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
- 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
- 0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
- 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
- 0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
- 0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
- 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
- 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
- 0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
- 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
- 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
- 0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
- 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
- 0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
- 0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
- 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
- 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
- 0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
- 0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
- 0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
- 0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
- 0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
- 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
- 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
- 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
- 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
- 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
- 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
- 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
- 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
- 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
- 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
- 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
- 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
- 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
- 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
- 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
- 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
- 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
- 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
- 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
- 0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
- 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
- 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
- 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
- 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
- 0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
- 0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
- 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
- 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
- 0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
- 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
- 0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
- 0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
- 0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
- 0x20, 0xD4, 0x54, 0x78, 0x40, 0x00,
- 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
- 0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
- 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
- 0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
- 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
- 0x48, 0x54, 0x54, 0x54, 0x28, 0x00,
- 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
- 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
- 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
- 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
- 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
- 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
- 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
- 0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
- 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
- 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
- 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
- 0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
- 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
- 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
- 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
- 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
- 0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
- 0x4C, 0x50, 0x50, 0x50, 0x3C, 0x00,
- 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
- 0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
- 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
- 0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
- 0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
- 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
- 0x83, 0xC3, 0xC3, 0xC3, 0x9B, 0x03,
- 0x03, 0x01, 0x00, 0x00, 0x00, 0x00,
- 0x36, 0x32, 0x32, 0x32, 0x32, 0x32,
- 0x32, 0xE6, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xFE,
- 0xFF, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF,
- 0x80, 0x80, 0x80, 0x80, 0x9E, 0x81,
- 0x80, 0x9E, 0x80, 0x80, 0x80, 0x80,
- 0xFF, 0xEF, 0xD7, 0x0F, 0xDF, 0xDF,
- 0xDF, 0xDF, 0x0F, 0xD7, 0xEF, 0xFF,
- 0x01, 0x11, 0x29, 0xF1, 0x21, 0x21,
- 0x21, 0x21, 0xF1, 0x29, 0x11, 0x01,
- 0x00, 0x00, 0x00, 0xFC, 0xFE, 0xFF,
- 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xEF,
- 0xDF, 0xBF, 0x7F, 0xFF, 0xFF, 0xFF,
- 0xFF, 0xFE, 0xFC, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xFC, 0x02, 0x01,
- 0x01, 0x01, 0x01, 0x01, 0x09, 0x11,
- 0x21, 0x41, 0x81, 0x01, 0x01, 0x01,
- 0x01, 0x02, 0xFC, 0x00, 0x00, 0x00,
- 0x3E, 0xFF, 0xF8, 0xF8, 0xFF, 0x3E,
- 0x00, 0xE0, 0xF0, 0xF0, 0xF0, 0xE0,
- 0x63, 0x73, 0x7B, 0x6F, 0x67, 0x63,
- 0x07, 0x7F, 0x7F, 0x07, 0x7F, 0x7F,
- 0x08, 0x08, 0x7F, 0x3E, 0x1C, 0x08,
- 0x08, 0x1C, 0x3E, 0x7F, 0x08, 0x08,
- 0x63, 0x7F, 0x7F, 0x63, 0x7F, 0x3E,
- 0x1F, 0x3F, 0x63, 0x63, 0x3F, 0x1F,
- 0x73, 0x3B, 0x1F, 0x1F, 0x3B, 0x73,
- 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x8F, 0x8C, 0x0C, 0x0C, 0x0F, 0x0C,
- 0x8C, 0xAC, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x80, 0x83, 0x82, 0x82, 0x9E, 0x88,
- 0x84, 0x82, 0x81, 0x80, 0x80, 0x80,
- 0xFF, 0xEF, 0xD7, 0xE0, 0xF7, 0xF7,
- 0xF7, 0xF7, 0xE0, 0xD7, 0xEF, 0xFF,
- 0x00, 0x10, 0x28, 0x1F, 0x08, 0x08,
- 0x08, 0x08, 0x1F, 0x28, 0x10, 0x00,
- 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
- 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xEF,
- 0xF7, 0xFB, 0xFD, 0xFE, 0xFF, 0xFF,
- 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x20, 0x10,
- 0x08, 0x04, 0x02, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
- 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
- 0xFF, 0xFF, 0xBD, 0x81, 0x81, 0x00,
- 0x63, 0x7F, 0x7F, 0x63, 0x7F, 0x3E,
- 0x3E, 0x7F, 0x77, 0x77, 0x77, 0x77,
- 0x08, 0x08, 0x7F, 0x3E, 0x1C, 0x08,
- 0x08, 0x1C, 0x3E, 0x7F, 0x08, 0x08,
- 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F,
- 0x1C, 0x1C, 0x1C, 0x1C, 0x7F, 0x7F,
- 0x03, 0x7F, 0x7F, 0x63, 0x7F, 0x1F,
- 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xD9, 0x99, 0x9B, 0x9E, 0x9E, 0x9B,
- 0x99, 0xD9, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xFF, 0xFC, 0xFD, 0xFD, 0xE1, 0xF7,
- 0xFB, 0xFD, 0xFE, 0xFF, 0xFF, 0xFF,
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- 0x7F, 0xBF, 0xDF, 0xE1, 0xFF, 0xFF,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x80, 0x40, 0x3C, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x3F, 0x7F, 0xFF,
- 0xFF, 0x1F, 0xDF, 0xDF, 0xC3, 0xF7,
- 0xEF, 0xDF, 0xBF, 0x7F, 0xFF, 0xFF,
- 0xFF, 0x7F, 0x3F, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x3F, 0x40, 0x80,
- 0x00, 0xE0, 0x20, 0x20, 0x3C, 0x08,
- 0x10, 0x20, 0x40, 0x80, 0x00, 0x00,
- 0x80, 0x40, 0x3F, 0x00, 0x00, 0x00,
- 0x00, 0x7F, 0xE3, 0xE3, 0x7F, 0x00,
- 0x00, 0x07, 0x0F, 0x0F, 0x0F, 0x07,
- 0x1C, 0x3E, 0x77, 0x63, 0x63, 0x63,
- 0x63, 0x73, 0x7B, 0x6F, 0x67, 0x63,
- 0x08, 0x08, 0x7F, 0x3E, 0x1C, 0x08,
- 0x08, 0x1C, 0x3E, 0x7F, 0x08, 0x08,
- 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F,
- 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F,
- 0x3E, 0x7F, 0x63, 0x63, 0x63, 0x63,
- 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
diff --git a/keyboards/crkbd/keymaps/toinux/keycodes.h b/keyboards/crkbd/keymaps/toinux/keycodes.h
deleted file mode 100644
index 0d7c1e3260..0000000000
--- a/keyboards/crkbd/keymaps/toinux/keycodes.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2022 @toinux
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-enum crkbd_layers {
- _BASE,
- _GAMING,
- _GAMING2,
- _ACCENTS,
- _LOWER,
- _RAISE,
- _FUN,
- _NAV,
- _MOUSE,
- _ADJUST
-};
-
-#define CTRLSC LCTL_T(KC_ESC)
-#define QUORCTL RCTL_T(KC_QUOT)
-#define MOSCLN LT(_MOUSE,KC_SCLN)
-#define ACCENTS LT(_ACCENTS,KC_RALT)
-#define FUN LT(_FUN,KC_SPC)
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-#define SPCNAV LT(_NAV,KC_SPC)
-#define SFTENT MT(MOD_RSFT,KC_ENT)
-#define TABLGUI LGUI_T(KC_TAB)
-#define BASE DF(_BASE)
-#define GAMING DF(_GAMING)
-#define GAMING2 MO(_GAMING2)
-
-#define SC_F1 LSFT(LCTL(KC_F1))
-#define SC_F2 LSFT(LCTL(KC_F2))
-#define SC_F3 LSFT(LCTL(KC_F3))
-#define SC_F4 LSFT(LCTL(KC_F4))
diff --git a/keyboards/crkbd/keymaps/toinux/keymap.c b/keyboards/crkbd/keymaps/toinux/keymap.c
deleted file mode 100644
index 3742ed9b82..0000000000
--- a/keyboards/crkbd/keymaps/toinux/keymap.c
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
-Copyright 2019 @foostan
-Copyright 2020 Drashna Jaelre <@drashna>
-Copyright 2022 @toinux
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "users/toinux/keymap_qwerty_fr.h"
-#include "keycodes.h"
-
-#ifdef OLED_ENABLE
-#include "oled.h"
-#endif
-
-// TEMPLATE
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | | | | | | | | | | | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | | | | | | | | | | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | | | | | | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// Base
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// |Tab/LGui| Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | CtrlSc | A | S | D | F | G | | H | J | K | L | ;/Mous | '/Rctl |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | Shift | Z | X | C | V | B | | N | M | , | . | / | SftEnT |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | LALT | LOWER |Spc/FUN | | Spc/NAV| RAISE |ACCENTS |
-// `--------------------------' `--------------------------'
- [_BASE] = LAYOUT_split_3x6_3(
- TABLGUI, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- CTRLSC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MOSCLN, QUORCTL,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFTENT,
- KC_LALT, LOWER, FUN, SPCNAV, RAISE, ACCENTS
-
- ),
-
-// Gaming
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | Ctrl | A | S | D | F | G | | H | J | K | L | ;/Mous | ' |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | Shift | Z | X | C | V | B | | N | M | , | . | / | SftEnT |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | LALT |GAMING2 | Space | | Spc/NAV| RAISE |ACCENTS |
-// `--------------------------' `--------------------------'
- [_GAMING] = LAYOUT_split_3x6_3(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MOSCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFTENT,
- KC_LALT, GAMING2, KC_SPC, SPCNAV, RAISE, ACCENTS
-
- ),
-
-// Gaming 2
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | Tab | 1 | 2 | 3 | 4 | 5 | | | | | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | Esc | 6 | 7 | 8 | 9 | 0 | | | | | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | LGui | Base | | Vol- | Vol+ | Mute | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_GAMING2] = LAYOUT_split_3x6_3(
- KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_LGUI, BASE, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, _______, _______, _______, _______, _______
-
- ),
-
-// Accents, see http://marin.jb.free.fr/qwerty-fr/
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | | â | é | è | ê | € | | û | ù | î | ô | œ | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | à | æ | ë | | « | | » | ü | ï | ö | ° | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | à | | ç | | | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_ACCENTS] = LAYOUT_split_3x6_3(
- _______, QF_ACIR, QF_EACU, QF_EGRV, QF_ECIR, QF_EURO, QF_UCIR, QF_UGRV, QF_ICIR, QF_OCIR, QF_OE, _______,
- _______, QF_AGRV, QF_AE, QF_EDIA, _______, QF_LDAQ, QF_RDAQ, QF_UDIA, QF_IDIA, QF_ODIA, QF_DEG, _______,
- _______, QF_AGRV, _______, QF_CCED, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
-
- ),
-
-// Lower
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | Del |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | SC_F1 | SC_F2 | SC_F3 | SC_F4 | | | | _ | + | { | } | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | Gaming | | Vol- | Vol+ | Mute | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_LOWER] = LAYOUT_split_3x6_3(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- _______, SC_F1, SC_F2, SC_F3, SC_F4, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, GAMING, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- _______, _______, _______, _______, _______, _______
-
- ),
-
-// Raise
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Del |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | | | | | | | | - | = | [ | ] | \ |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | | | | | | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_RAISE] = LAYOUT_split_3x6_3(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- _______, _______, _______, _______, _______, _______
-
- ),
-
-// Functions and keypad
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | | F1 | F2 | F2 | F4 | | | | 7 | 8 | 9 | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | F5 | F6 | F7 | F8 | | | | 4 | 5 | 6 | - | / |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | F9 | F10 | F11 | F12 | | | | 1 | 2 | 3 | + | * |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | = | 0 | . |
-// `--------------------------' `--------------------------'
- [_FUN] = LAYOUT_split_3x6_3(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, XXXXXXX, _______,
- _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PSLS,
- _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PAST,
- _______, _______, _______, KC_PENT, KC_P0, KC_PDOT
-
- ),
-
-// Navigation and function keys
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | | F1 | F2 | F2 | F4 | | | | Pg Up | Up | Pg Dn | Ins | Del |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | F5 | F6 | F7 | F8 | | | Home | Left | Down | Right | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | F9 | F10 | F11 | F12 | | | Space | End | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_NAV] = LAYOUT_split_3x6_3(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_PGUP, KC_UP, KC_PGDN, KC_INS, KC_DEL,
- _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX,
- _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_SPC, KC_END, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- _______, _______, _______, _______, _______, _______
-
- ),
-
-// Mouse
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | | | Wh up | Ms up | Wh dn | | | | | | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | | Ms lft | Ms dn | Ms rgt | | | | btn1 | btn3 | btn2 | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | | | Wh lft | | Wh rgt | | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_MOUSE] = LAYOUT_split_3x6_3(
- _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN3, KC_BTN2, _______, _______,
- _______, _______, KC_WH_L, _______, KC_WH_R, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
-
- ),
-
-// Adjust
-// ,-----------------------------------------------------. ,-----------------------------------------------------.
-// | Reset | | | | | Print | | Num | Caps | Scroll | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | On/Off | Hue ↑ | Sat ↑ | Brght ↑| | | | | | | | | |
-// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-// | Cycle | Hue ↓ | Sat ↓ | Brght ↓| | | | | | | | | |
-// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------'
-// | | | | | | | |
-// `--------------------------' `--------------------------'
- [_ADJUST] = LAYOUT_split_3x6_3(
- QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_NUM, KC_CAPS, KC_SCRL, XXXXXXX, XXXXXXX, XXXXXXX,
- RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, _______, _______, _______, _______, _______
- )
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
-bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case CTRLSC:
- return true;
- default:
- return false;
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
-
-#ifdef OLED_ENABLE
- if (record->event.pressed) {
- set_keylog(keycode, record);
- }
-#endif // OLED_ENABLE
-
- switch (keycode) {
- case FUN:
- if (!host_keyboard_led_state().num_lock) {
- tap_code(KC_NUM_LOCK);
- }
- return true;
- break;
- }
- return true;
-}
-
-void keyboard_post_init_user(void) {
-#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE)
- rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR);
- rgb_matrix_sethsv_noeeprom(HSV_OFF);
-#endif
-}
diff --git a/keyboards/crkbd/keymaps/toinux/oled.c b/keyboards/crkbd/keymaps/toinux/oled.c
deleted file mode 100644
index df2a693d8d..0000000000
--- a/keyboards/crkbd/keymaps/toinux/oled.c
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Copyright 2022 @toinux
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include QMK_KEYBOARD_H
-#include "keycodes.h"
-#include "oled.h"
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master()) {
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- }
- return rotation;
-}
-
-
-void oled_render_mod_status(void) {
-
- const uint8_t modifiers = get_mods() | get_oneshot_mods();
-
- for (uint8_t i = 0; i < 2; i++) {
- oled_set_cursor(9,i);
- oled_write_P(gui_icon[(modifiers & MOD_MASK_GUI) ? 1 : 0][i], false);
- oled_write_P(ctrl_icon[(modifiers & MOD_MASK_CTRL) ? 1 : 0][i], false);
- oled_set_cursor(9,i+2);
- oled_write_P(alt_icon[(modifiers & MOD_MASK_ALT) ? 1 : 0][i], false);
- oled_write_P(shift_icon[(modifiers & MOD_MASK_SHIFT) ? 1 : 0][i], false);
- }
-
-}
-
-void oled_render_layer_state(void) {
-
- char c = 0x9F - get_highest_layer(layer_state|default_layer_state);
-
- oled_set_cursor(20,0);
- oled_write_char(0X00, false);
-
- oled_set_cursor(20,1);
- oled_write_char(c, false);
- c += 32;
- oled_set_cursor(20,2);
- oled_write_char(c, false);
- c += 32;
- oled_set_cursor(20,3);
- oled_write_char(c, false);
-
-}
-
-void oled_render_led_state(void) {
- // oled_advance_page(false) instead of oled_write_ln_P to not break OLED_TIMEOUT
- oled_write_P(PSTR("NUM"), host_keyboard_led_state().num_lock);
- oled_advance_page(false);
- oled_write_P(PSTR("CAP"), host_keyboard_led_state().caps_lock);
- oled_advance_page(false);
- oled_write_P(PSTR("SCL"), host_keyboard_led_state().scroll_lock);
- oled_advance_page(false);
-}
-
-uint8_t last_row = 0;
-uint8_t last_col = 0;
-
-void set_keylog(uint16_t keycode, keyrecord_t *record) {
- last_row = record->event.key.row;
- last_col = record->event.key.col;
-}
-
-void oled_render_keylog(void) {
- oled_write_char(last_row + '0', false);
- oled_write_char('x', false);
- oled_write_char(last_col + '0', false);
-}
-
-void oled_render_logo(void) {
- static const char PROGMEM kpu_logo[][3] = {
- {0x82, 0x83, 0},
- {0x80, 0x81, 0},
- {0xa0, 0xa1, 0},
- {0xc0, 0xc1, 0}
- };
- for (uint8_t i = 0; i < 4; i++) {
- oled_write_ln_P(kpu_logo[i], false);
- }
-
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master ()) {
- oled_render_led_state();
- oled_render_keylog();
- oled_render_mod_status();
- oled_render_layer_state();
- } else {
- oled_render_logo();
- oled_scroll_right();
- oled_scroll_set_speed(4);
- }
- return false;
-}
diff --git a/keyboards/crkbd/keymaps/toinux/oled.h b/keyboards/crkbd/keymaps/toinux/oled.h
deleted file mode 100644
index 30be16e602..0000000000
--- a/keyboards/crkbd/keymaps/toinux/oled.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright 2022 @toinux
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-static const char PROGMEM ctrl_icon[2][2][4] = {
- {
- // off
- {0x93, 0x94, 0x95, 0},
- {0xB3, 0xB4, 0xB5, 0},
- },
- {
- // on
- {0x8F ,0x90, 0x91, 0},
- {0xAF ,0xB0, 0xB1, 0},
- }
-};
-
-static const char PROGMEM shift_icon[2][2][4] = {
- {
- // off
- {0xD3, 0xD4, 0xB5, 0},
- {0xA8, 0xA9, 0xD5, 0},
- },
- {
- // on
- {0xCF ,0xD0, 0xB1, 0},
- {0xC8 ,0xC9, 0xD1, 0},
- }
-};
-
-static const char PROGMEM gui_icon[2][2][4] = {
- {
- // off
- {0x92, 0x8C, 0x8D, 0},
- {0xB2, 0xAC, 0xAD, 0},
- },
- {
- // on
- {0x8E ,0x8A, 0x8B, 0},
- {0xAE ,0xAA, 0xAB, 0},
- }
-};
-
-static const char PROGMEM alt_icon[2][2][4] = {
- {
- // off
- {0xB2, 0xCC, 0xCD, 0},
- {0xD2, 0x88, 0x89, 0},
- },
- {
- // on
- {0xAE ,0xCA, 0xCB, 0},
- {0xCE ,0x86, 0x87, 0},
- }
-};
-
-void set_keylog(uint16_t keycode, keyrecord_t *record);
diff --git a/keyboards/crkbd/keymaps/toinux/rgb.c b/keyboards/crkbd/keymaps/toinux/rgb.c
deleted file mode 100644
index 2b1a226602..0000000000
--- a/keyboards/crkbd/keymaps/toinux/rgb.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright 2022 @toinux
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include QMK_KEYBOARD_H
-#include "keycodes.h"
-
-static const char gaming_leds[] = {18, 22, 19, 16};
-static const char gaming2_leds[] = {23, 18, 17, 10, 9, 22, 19, 16, 11, 8};
-static const char nav_leds[] = {38, 43, 44, 46};
-static const char fun_leds[] = {45, 44, 37, 46, 43, 38, 47, 42, 39, 40};
-static const char mouse_leds[] = {11, 16, 17, 19};
-static const char adjust_leds[] = {6, 33};
-
-bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(26, RGB_RED);
- }
- switch(get_highest_layer(layer_state|default_layer_state)) {
- case _GAMING:
- if (is_keyboard_master()) {
- for (uint8_t i = 0; i < 4; i++) {
- rgb_matrix_set_color(gaming_leds[i], 0x88, 0x00, 0x00);
- }
- }
- break;
- case _GAMING2:
- if (is_keyboard_master()) {
- for (uint8_t i = 0; i < 10; i++) {
- rgb_matrix_set_color(gaming2_leds[i], RGB_GREEN);
- }
- }
- break;
- case _NAV:
- for (uint8_t i = 0; i < 4; i++) {
- rgb_matrix_set_color(nav_leds[i], RGB_BLUE);
- }
- break;
- case _FUN:
- for (uint8_t i = 0; i < 10; i++) {
- rgb_matrix_set_color(fun_leds[i], RGB_GREEN);
- }
- break;
- case _ADJUST:
- for (uint8_t i = 0; i < 2; i++) {
- rgb_matrix_set_color(adjust_leds[i], RGB_RED);
- }
- break;
- case _MOUSE:
- if (is_keyboard_master()) {
- for (uint8_t i = 0; i < 4; i++) {
- rgb_matrix_set_color(mouse_leds[i], RGB_PURPLE);
- }
- }
- break;
-
- }
- return false;
-}
diff --git a/keyboards/crkbd/keymaps/toinux/rules.mk b/keyboards/crkbd/keymaps/toinux/rules.mk
deleted file mode 100644
index 59b90c792c..0000000000
--- a/keyboards/crkbd/keymaps/toinux/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-MOUSEKEY_ENABLE = yes # Mouse keys
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = yes
-OLED_ENABLE = yes
-LTO_ENABLE = yes
-BOOTLOADER = atmel-dfu
-
-SRC += ./oled.c ./rgb.c
diff --git a/keyboards/crkbd/keymaps/tominabox1/keymap.c b/keyboards/crkbd/keymaps/tominabox1/keymap.c
deleted file mode 100755
index d58911194e..0000000000
--- a/keyboards/crkbd/keymaps/tominabox1/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "tominabox1.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT_wrapper(
- ___________________CRKBD1__________________,
- ___________________CRKBD2__________________,
- ___________________CRKBD3__________________,
- ___________________CRKBD4__________________
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- ___________________RAISE1__________________,
- ___________________RAISE2__________________,
- ___________________CRKBD_RAISE3____________,
- ___________________CRKBD_RAISE4____________
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- _________________LOWER_1___________________,
- _________________LOWER_2___________________,
- ___________________CRKBD_LOW3______________,
- ___________________CRKBD_LOW4______________
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- ___________________ADJST1__________________,
- ___________________CRKBD_ADJST2____________,
- ___________________CRKBD_ADJST3____________,
- ___________________CRKBD_ADJST4____________
- ),
-
- [_ARROW] = LAYOUT_wrapper(
- ___________________ARROW1__________________,
- ___________________ARROW2__________________,
- ___________________ARROW3__________________,
- ___________________ARROW4__________________
- ),
- [_FKEY] = LAYOUT_wrapper(
- ___________________FKEY1___________________,
- ___________________FKEY2___________________,
- ___________________CRKBD_FKEY3_____________,
- ___________________CRKBD_FKEY4_____________
- )
-
-};
diff --git a/keyboards/crkbd/keymaps/vlukash_trackpad_right/keymap.c b/keyboards/crkbd/keymaps/vlukash_trackpad_right/keymap.c
index 2d2535cda9..5f95ad497f 100644
--- a/keyboards/crkbd/keymaps/vlukash_trackpad_right/keymap.c
+++ b/keyboards/crkbd/keymaps/vlukash_trackpad_right/keymap.c
@@ -1,13 +1,4 @@
#include QMK_KEYBOARD_H
-#include "bootloader.h"
-#include "mousekey.h"
-#include "pointing_device.h"
-#include "report.h"
-
-#ifdef PROTOCOL_LUFA
- #include "lufa.h"
- #include "split_util.h"
-#endif
extern bool isScrollMode;
diff --git a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h b/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h
deleted file mode 100644
index fcf6befb16..0000000000
--- a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright 2022 LucW (@luc-languagetools)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-
-#pragma once
-
-
-/* Select hand configuration */
-
-// #define MASTER_LEFT
-#define MASTER_RIGHT
-// #define EE_HANDS
-
-//#define QUICK_TAP_TERM 0
-//#define TAPPING_TERM 100
-
-// #define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD
-#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD
-
-// MOUSE SETTINGS
-// ==============
-
-#define MOUSEKEY_TIME_TO_MAX 200
-
-#define RGBLIGHT_LAYERS
-
-#ifdef RGBLIGHT_ENABLE
- #define RGBLIGHT_LIMIT_VAL 90
- // #define RGBLIGHT_LIMIT_VAL 0
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-#endif
-
-#ifdef RGB_MATRIX_ENABLE
- // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
- // #define RGB_MATRIX_KEYPRESSES // reacts to keypresses
- // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
- // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
- // #define ENABLE_RGB_MATRIX_SPLASH
- //#define ENABLE_RGB_MATRIX_SOLID_SPLASH
-#endif
-
-#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
diff --git a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/keymap.c b/keyboards/crkbd/rev1/keymaps/dvorak_42_key/keymap.c
deleted file mode 100644
index 43bbd9a617..0000000000
--- a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/keymap.c
+++ /dev/null
@@ -1,289 +0,0 @@
-// Copyright 2022 LucW (@luc-languagetools)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-
-#include QMK_KEYBOARD_H
-#include <stdio.h>
-#include "dvorak_42_key.h"
-
-// to build: qmk compile -kb crkbd/rev1 -km dvorak_42_key
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- OSL(VSCODE), KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_TAB,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-OSL(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, TD(TD_DEL_WORD_DEL),
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-OSM(MOD_LSFT),KC_SEMICOLON, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, OSM(MOD_LSFT),
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- MO(BROWSER_CONTROL), MO(COMBINED),MO(KEYNAV), KC_ENTER, KC_SPACE, OSL(SHORTCUTS)
- //`--------------------------' `--------------------------'
-
- ),
-
- [KEYNAV] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
-KC_ESC, RCTL(KC_ENTER), RCTL(KC_K), RCTL(KC_Z), RCTL(KC_S), RCTL(KC_N), KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_DELETE,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS, MO(KEYSEL), KC_TRNS, RSFT(KC_TAB), KC_TAB, RCTL(KC_F), LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), KC_BSPC,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS, RCTL(KC_P), RCTL(KC_O), RCTL(KC_A), RCTL(KC_B), NP_DUPE_LINE, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDN, RCTL(KC_DELETE),
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
-
- [KEYSEL] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP), KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)), KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), RSFT(KC_PGDN), KC_TRNS,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
-
- [SHELL_NAV] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
-TO(BASE),SHELL_GIT_DIFF, SHELL_PGREP, SHELL_PLESS, SHELL_LESS, KC_TRNS, RCTL(KC_D), KC_HOME, KC_UP, KC_END, RCTL(KC_L), RCTL(KC_X),
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-OSL(SHELL_SCREEN),SHELL_GIT_STATUS,SHELL_CDPRE,SHELL_LSLTR,SHELL_LS, SHELL_LSLA, LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), RCTL(KC_W),
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS,SHELL_SCREEN_LIST, SHELL_SCREENRD, SHELL_SCREEN_NEW, SHELL_TAILF, KC_TRNS, RCTL(KC_U), LALT(KC_DOT), RCTL(KC_R), KC_BTN2, RCTL(KC_K), RCTL(KC_C),
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, LCTL(LSFT(KC_V)), KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
- [SHELL_SCREEN] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
-TO(BASE),KC_TRNS, SCREEN_READREG_3, SCREEN_READREG_2, SCREEN_READREG_1,KC_TRNS, KC_TRNS, SCREEN_7, SCREEN_8, SCREEN_9, SCREEN_RENAME, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-TO(BASE),KC_TRNS,SCREEN_PASTEREG_3,SCREEN_PASTEREG_2,SCREEN_PASTEREG_1,SCREEN_DETACH, SCREEN_TAB_LEFT, SCREEN_4, SCREEN_5, SCREEN_6, SCREEN_TAB_RIGHT, SCREEN_COPY_MODE,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SCREEN_1, SCREEN_2, SCREEN_3, SCREEN_NUMBER, SCREEN_PASTE,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, SCREEN_KILL, SCREEN_NEW_TAB, SCREEN_0
- //`--------------------------' `--------------------------'
- ),
-
- [VSCODE] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
-TO(BASE), KC_TRNS, VS_FIND_FILES, VS_CMT_BLOCK, VS_CMT_LINE, VS_BM_LISTALL, VS_COPYLINEDOWN, VS_REFERENCES, VS_DEFINITION, VS_IMPLEMENTATION, VS_LINE, VS_BRACKET,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS, KC_TRNS, VS_TOGGLE_TERMINAL, VS_FOCUS_TERMINAL, VS_FOCUS_EDITOR, VS_BM_LIST, VS_CLOSETAB, VS_TABLEFT, VS_TABRIGHT, VS_SYMBOLEDITOR, VS_FILE, VS_BACK,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, VS_BM_CLEARALL, VS_JUMPY, VS_BM_PREV, VS_BM_NEXT, VS_GROUP_1, VS_GROUP_2, VS_BM_TOGGLE,
-//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, VS_DEL_LEFT, VS_DEL_RIGHT, VS_DEL_LINE, VS_JUMPY, VS_COMMANDS
- //`--------------------------' `--------------------------'
- ),
-
- [COMBINED] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR, KC_PIPE,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_GRAVE, KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_UNDS, KC_MINUS, KC_4, KC_5, KC_6, KC_SLSH, KC_BSLS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_CIRC, KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_AMPR, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES, KC_DOT,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0
- //`--------------------------' `--------------------------'
- ),
-
- // chrome OS keyboard shortcuts: https://support.google.com/chromebook/answer/183101?hl=en
- // search key == windows key
- [BROWSER_CONTROL] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
-KC_TRNS, KC_TRNS, KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_UP, KC_PGUP, KC_PGDN, KC_MS_WH_UP, KC_TRNS, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- CO_WS_LEFT, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_DOWN, RCTL(KC_PGUP), RCTL(KC_PGDN), KC_MS_WH_DOWN, LALT(KC_LEFT), CO_WS_RIGHT,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS, RCTL(LSFT(KC_TAB)), RCTL(KC_TAB), WINDOWS10_WORKSPACE_LEFT, WINDOWS10_WORKSPACE_RIGHT, WINDOWS10_TASK_VIEW, KC_TRNS, RCTL(KC_1), RCTL(KC_9), LCTL(KC_L), KC_F5, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_W), RCTL(KC_T), KC_TRNS
- //`--------------------------' `--------------------------'
- ),
-
-
- [SHORTCUTS] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, MEH(KC_F1), MEH(KC_F2), MEH(KC_F3), MEH(KC_F4), MEH(KC_F5), MEH(KC_F6),
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MEH(KC_F7), MEH(KC_F8), MEH(KC_F9), MEH(KC_F10), MEH(KC_F11), MEH(KC_F12),
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
-KC_TRNS, OSM(MOD_LSFT), OSM(MOD_LGUI), OSM(MOD_LALT), OSM(MOD_LCTL), KC_TRNS, MEH(KC_F13), MEH(KC_F14), MEH(KC_F15), MEH(KC_F16), MEH(KC_F17), MEH(KC_F18),
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TO(SHORTCUTS), TO(BASE)
- //`--------------------------' `--------------------------'
- ),
-
- /*
- // empty layer
- [15] = LAYOUT_split_3x6_3(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- //`--------------------------' `--------------------------'
- ),
- */
-
-
-};
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master()) {
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- }
- // return rotation;
- return OLED_ROTATION_180;
-}
-
-
-#define DISPLAY_LAYER_NAME(LAYER_NAME, LAYER_STRING) \
- if(get_highest_layer(layer_state) == LAYER_NAME) { \
- oled_write_ln_P(PSTR(LAYER_STRING), false); \
- return;\
- }\
-
-
-void oled_render_layer_state(void) {
- // if caps word is enabled, show
- if(is_caps_word_on()) {
- oled_write_ln_P(PSTR("CAPS WORD"), false);
- return;
- }
- DISPLAY_LAYER_NAME(SHORTCUTS, "SHORTCUTS");
- DISPLAY_LAYER_NAME(VSCODE, "VSCODE");
- DISPLAY_LAYER_NAME(COMBINED, "SYMBOLS");
- DISPLAY_LAYER_NAME(BROWSER_CONTROL, "BROWSER");
- DISPLAY_LAYER_NAME(SHELL_SCREEN, "SHELL SCREEN");
- DISPLAY_LAYER_NAME(SHELL_NAV, "SHELL NAV");
- DISPLAY_LAYER_NAME(KEYSEL, "KEYSEL");
- DISPLAY_LAYER_NAME(KEYNAV, "KEYNAV");
- DISPLAY_LAYER_NAME(BASE, "BASE");
-
-}
-
-const rgblight_segment_t PROGMEM rgb_layer_off[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 0, 0}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_blue[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_BLUE}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_purple[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_PURPLE}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_red[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_RED}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_orange[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_ORANGE}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_yellow[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_YELLOW}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_green[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_GREEN}
-);
-
-const rgblight_segment_t PROGMEM rgb_layer_pink[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, RGBLED_NUM, HSV_PINK}
-);
-
-
-// Now define the array of layers. Later layers take precedence
-const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- rgb_layer_off,
- rgb_layer_blue,
- rgb_layer_purple,
- rgb_layer_red,
- rgb_layer_orange,
- rgb_layer_yellow,
- rgb_layer_green,
- rgb_layer_pink
-);
-
-void keyboard_post_init_user(void) {
- // Enable the LED layers
- rgblight_layers = my_rgb_layers;
-}
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(0, layer_state_cmp(state, BASE));
- return state;
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-
-
- rgblight_set_layer_state(1, layer_state_cmp(state, KEYNAV));
- rgblight_set_layer_state(2, layer_state_cmp(state, KEYSEL));
-
-
- rgblight_set_layer_state(3, layer_state_cmp(state, SHELL_NAV));
- rgblight_set_layer_state(4, layer_state_cmp(state, SHELL_SCREEN));
-
- rgblight_set_layer_state(5, layer_state_cmp(state, SHORTCUTS));
-
- rgblight_set_layer_state(6, layer_state_cmp(state, VSCODE));
-
- return state;
-}
-
-void caps_word_set_user(bool active) {
- // will enable/disable rgb layer 7 based on whether caps word is active
- rgblight_set_layer_state(7, active);
-}
-
-void render_bootmagic_status(bool status) {
- /* Show Ctrl-Gui Swap options */
- static const char PROGMEM logo[][2][3] = {
- {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}},
- {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}},
- };
- if (status) {
- oled_write_ln_P(logo[0][0], false);
- oled_write_ln_P(logo[0][1], false);
- } else {
- oled_write_ln_P(logo[1][0], false);
- oled_write_ln_P(logo[1][1], false);
- }
-}
-
-void oled_render_logo(void) {
- static const char PROGMEM crkbd_logo[] = {
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4,
- 0};
- oled_write_P(crkbd_logo, false);
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master( )) {
- oled_render_layer_state();
- } else {
- oled_render_logo();
- }
- return false;
-}
-
-#endif // OLED_ENABLE
diff --git a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/rules.mk b/keyboards/crkbd/rev1/keymaps/dvorak_42_key/rules.mk
deleted file mode 100644
index 9fe565335a..0000000000
--- a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright 2022 LucW (@luc-languagetools)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-MOUSEKEY_ENABLE = yes # Mouse keys
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-# RGB_MATRIX_ENABLE = no
-OLED_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/crowboard/rules.mk b/keyboards/crowboard/rules.mk
index 37ad1d4c60..6e7633bfe0 100644
--- a/keyboards/crowboard/rules.mk
+++ b/keyboards/crowboard/rules.mk
@@ -1 +1 @@
-PICO_INTRINSICS_ENABLED = no # ATM Unsupported by ChibiOS!
+# This file intentionally left blank
diff --git a/keyboards/custommk/ergostrafer/info.json b/keyboards/custommk/ergostrafer/info.json
index 590925065e..92d1fe99e8 100644
--- a/keyboards/custommk/ergostrafer/info.json
+++ b/keyboards/custommk/ergostrafer/info.json
@@ -4,6 +4,9 @@
"maintainer": "customMK",
"bootloader": "stm32-dfu",
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "spi"
+ },
"features": {
"bootmagic": true,
"command": false,
diff --git a/keyboards/custommk/ergostrafer/rules.mk b/keyboards/custommk/ergostrafer/rules.mk
index ee519ea8b5..72f75f4367 100644
--- a/keyboards/custommk/ergostrafer/rules.mk
+++ b/keyboards/custommk/ergostrafer/rules.mk
@@ -1,3 +1 @@
-EEPROM_DRIVER = spi
-
AUDIO_DRIVER = pwm_hardware
diff --git a/keyboards/custommk/evo70_r2/config.h b/keyboards/custommk/evo70_r2/config.h
index 25ab789d75..62606cf1ee 100644
--- a/keyboards/custommk/evo70_r2/config.h
+++ b/keyboards/custommk/evo70_r2/config.h
@@ -26,6 +26,7 @@
#define MATRIX_ROW_PINS { A8, A1, A2, B1, A7 }
// FRAM configuration
+#define EEPROM_SPI_MB85RS64V
#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A0
#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 4 // 48MHz / 4 = 12MHz; max supported by MB85R64 is 20MHz
diff --git a/keyboards/custommk/evo70_r2/info.json b/keyboards/custommk/evo70_r2/info.json
index 18c618abc6..a11daef092 100644
--- a/keyboards/custommk/evo70_r2/info.json
+++ b/keyboards/custommk/evo70_r2/info.json
@@ -24,6 +24,9 @@
"device_version": "1.0.0"
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "spi"
+ },
"processor": "STM32F411",
"bootloader": "stm32-dfu",
"rgblight": {
diff --git a/keyboards/custommk/evo70_r2/rules.mk b/keyboards/custommk/evo70_r2/rules.mk
index b79d08c6b7..193fe4f1a4 100644
--- a/keyboards/custommk/evo70_r2/rules.mk
+++ b/keyboards/custommk/evo70_r2/rules.mk
@@ -3,8 +3,6 @@ AUDIO_DRIVER = pwm_hardware
# project specific files
SRC += matrix.c
-EEPROM_DRIVER = spi
-
QUANTUM_PAINTER_DRIVERS = st7735_spi
CUSTOM_MATRIX = lite
diff --git a/keyboards/cutie_club/borsdorf/keymaps/zyber/keymap.c b/keyboards/cutie_club/borsdorf/keymaps/zyber/keymap.c
deleted file mode 100644
index 468a16f92d..0000000000
--- a/keyboards/cutie_club/borsdorf/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2020 Cutie Club
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base */
- [0] = LAYOUT_rshift(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, LGUI(KC_LEFT),
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, LGUI(KC_RIGHT),
- L1_EXPL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
- KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- [1] = LAYOUT_rshift(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_VOLU,
- KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- )
-};
diff --git a/keyboards/darkproject/kd87a_bfg_edition/config.h b/keyboards/darkproject/kd87a_bfg_edition/config.h
index 335648df9a..4ac83ab9f6 100644
--- a/keyboards/darkproject/kd87a_bfg_edition/config.h
+++ b/keyboards/darkproject/kd87a_bfg_edition/config.h
@@ -25,7 +25,6 @@
/* External spi flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* SPI Config for LED Driver */
#define SPI_DRIVER SPIDQ
@@ -38,7 +37,6 @@
#define DRIVER_1_EN C13
#define DRIVER_2_EN C13
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 68
#define DRIVER_2_LED_TOTAL 54
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/darkproject/kd87a_bfg_edition/info.json b/keyboards/darkproject/kd87a_bfg_edition/info.json
index 1cf428a97f..94717c6baa 100644
--- a/keyboards/darkproject/kd87a_bfg_edition/info.json
+++ b/keyboards/darkproject/kd87a_bfg_edition/info.json
@@ -7,6 +7,13 @@
"matrix": [1, 3]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"features": {
"bootmagic": true,
"extrakey": true,
@@ -174,9 +181,6 @@
"pid": "0xE393",
"vid": "0x342D"
},
- "eeprom": {
- "driver": "wear_leveling"
- },
"community_layouts": ["tkl_ansi"],
"layouts": {
"LAYOUT_tkl_ansi": {
diff --git a/keyboards/darkproject/kd87a_bfg_edition/rules.mk b/keyboards/darkproject/kd87a_bfg_edition/rules.mk
index 002458405e..6e7633bfe0 100644
--- a/keyboards/darkproject/kd87a_bfg_edition/rules.mk
+++ b/keyboards/darkproject/kd87a_bfg_edition/rules.mk
@@ -1 +1 @@
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/dc01/left/rules.mk b/keyboards/dc01/left/rules.mk
index 72485a3dd6..3a9422733c 100644
--- a/keyboards/dc01/left/rules.mk
+++ b/keyboards/dc01/left/rules.mk
@@ -11,5 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = yes # Use custom matrix
-SRC += matrix.c \
- i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/deng/thirty/config.h b/keyboards/deng/thirty/config.h
index 20e6673dd2..8ec8f6b0d3 100644
--- a/keyboards/deng/thirty/config.h
+++ b/keyboards/deng/thirty/config.h
@@ -78,8 +78,3 @@
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
#endif
-
-/* VIA */
-#ifdef VIA_ENABLE
-#define DYNAMIC_KEYMAP_LAYER_COUNT 8
-#endif
diff --git a/keyboards/deng/thirty/info.json b/keyboards/deng/thirty/info.json
index 8836273865..b93881c086 100644
--- a/keyboards/deng/thirty/info.json
+++ b/keyboards/deng/thirty/info.json
@@ -16,6 +16,9 @@
"rows": ["B15", "A5", "A3", "A15", "B7", "B8"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 8
+ },
"backlight": {
"pin": "B11",
"levels": 5,
diff --git a/keyboards/dichotomy/rules.mk b/keyboards/dichotomy/rules.mk
index 040710a460..bfa5252a03 100755
--- a/keyboards/dichotomy/rules.mk
+++ b/keyboards/dichotomy/rules.mk
@@ -14,4 +14,4 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
# # project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/dm9records/lain/config.h b/keyboards/dm9records/lain/config.h
index e34b4d34ab..ddb4b6702f 100644
--- a/keyboards/dm9records/lain/config.h
+++ b/keyboards/dm9records/lain/config.h
@@ -12,5 +12,3 @@
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
diff --git a/keyboards/dm9records/lain/info.json b/keyboards/dm9records/lain/info.json
index 8ae8a33b44..250eb2ddaf 100644
--- a/keyboards/dm9records/lain/info.json
+++ b/keyboards/dm9records/lain/info.json
@@ -13,6 +13,9 @@
"rows": ["C6", "D7", "D6", "D4"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c b/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c
index 0d1ec2b762..a91664f0c9 100644
--- a/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c
+++ b/keyboards/dm9records/plaid/keymaps/gipsy-king/keymap.c
@@ -15,8 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "mousekey.h"
-
enum plaid_layers {
_QWERTY,
diff --git a/keyboards/dmqdesign/spin/keymaps/spidey3_pad/keymap.c b/keyboards/dmqdesign/spin/keymaps/spidey3_pad/keymap.c
index dd452dae1a..4acb0ee59b 100644
--- a/keyboards/dmqdesign/spin/keymaps/spidey3_pad/keymap.c
+++ b/keyboards/dmqdesign/spin/keymaps/spidey3_pad/keymap.c
@@ -147,11 +147,12 @@ void keyboard_post_init_user(void) {
do_rgb_layers(layer_state, LAYER_BASE, LAYER_BASE_END);
}
-void shutdown_user(void) {
+bool shutdown_user(bool jump_to_bootloader) {
clear_rgb_layers();
rgblight_enable();
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
rgblight_sethsv_noeeprom(HSV_RED);
+ return false;
}
void spidey_glow(void) {
@@ -218,4 +219,3 @@ void post_process_record_user(uint16_t keycode, keyrecord_t *record) {
break;
}
}
-
diff --git a/keyboards/doio/kb16/rev2/rules.mk b/keyboards/doio/kb16/rev2/rules.mk
index 88879a4ffa..2145c9fbe1 100644
--- a/keyboards/doio/kb16/rev2/rules.mk
+++ b/keyboards/doio/kb16/rev2/rules.mk
@@ -25,7 +25,3 @@ RGB_MATRIX_ENABLE = yes
# Encoder enabled
ENCODER_ENABLE = yes
-
-# Wear-levelling driver
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
diff --git a/keyboards/doio/kb30/config.h b/keyboards/doio/kb30/config.h
index a87532c459..2a1a827375 100644
--- a/keyboards/doio/kb30/config.h
+++ b/keyboards/doio/kb30/config.h
@@ -89,9 +89,6 @@
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
#endif
-
-
-// #define DYNAMIC_KEYMAP_LAYER_COUNT 4
/*
* Feature disable options
* These options are also useful to firmware size reduction.
diff --git a/keyboards/doro67/multi/keymaps/konstantin/config.h b/keyboards/doro67/multi/keymaps/konstantin/config.h
deleted file mode 100644
index 3c2583e2d4..0000000000
--- a/keyboards/doro67/multi/keymaps/konstantin/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define LAYER_FN
-#define LAYER_NUMPAD
diff --git a/keyboards/doro67/multi/keymaps/konstantin/keymap.c b/keyboards/doro67/multi/keymaps/konstantin/keymap.c
deleted file mode 100644
index 02687f8248..0000000000
--- a/keyboards/doro67/multi/keymaps/konstantin/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "konstantin.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │PSc│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │Del│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │PgU│
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │LSft│RAG│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RShift│ ↑ │PgD│
- * ├────┼───┴┬──┴─┬─┴───┴───┴┬──┴─┬─┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │LCtl│LGui│LAlt│ Space │FnLk│ Fn │RAlG│RCtl│ │ ← │ ↓ │ → │
- * └────┴────┴────┴──────────┴────┴────────┴────┴────┘ └───┴───┴───┘
- */
- [L_BASE] = LAYOUT_multi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_PSCR,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, RAL_RGU, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, FNLK, FN, RAL_RGU, KC_RCTL, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Fn layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Num│SLk│Pau│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │UCM│ │Stp│Ply│Prv│Nxt│Clear│Ins│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │M← │M↓ │M→ │MW↑│ │ │ │ │ │ │ │ │Top│
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │MA0│MA2│MW←│MW→│ │ │App│Vo-│Vo+│Mut│ │PgU│Btm│
- * ├────┼───┴┬──┴─┬─┴───┴───┴┬──┴─┬─┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │DtPR│DtNA│ MW↓ │ │ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴──────────┴────┴────────┴────┴────┘ └───┴───┴───┘
- */
- [L_FN] = LAYOUT_multi(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, NUMPAD, KC_SCRL, KC_PAUS,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, UC_NEXT, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, CLEAR, KC_INS,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, TOP,
- _______, _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, KC_APP, KC_VOLD, KC_VOLU, KC_MUTE, _______, KC_PGUP, BOTTOM,
- _______, DST_P_R, DST_N_A, KC_WH_D, _______, _______, _______, _______, XXXXXXX, KC_HOME, KC_PGDN, KC_END
- ),
-
- /* Numpad layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │P7 │P8 │P9 │P- │ − │ = │Num│ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │ │ │ │ │P4 │P5 │P6 │P+ │ ( │ ) │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │P1 │P2 │P3 │P* │ × │ PEnter │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │ │ │P0 │P0 │ , │P. │P/ │ ÷ │ │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴┬──┴─┬─┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴──────────┴────┴────────┴────┴────┘ └───┴───┴───┘
- */
- [L_NUMPAD] = LAYOUT_multi(
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PMNS, MINUS, EQUALS, NUMPAD, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, L_PAREN, R_PAREN, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PAST, TIMES, KC_PENT, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_P0, COMMA, KC_PDOT, KC_PSLS, DIVIDE, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______
- ),
-};
diff --git a/keyboards/doro67/multi/keymaps/konstantin/rules.mk b/keyboards/doro67/multi/keymaps/konstantin/rules.mk
deleted file mode 100644
index 7bab7513ed..0000000000
--- a/keyboards/doro67/multi/keymaps/konstantin/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Generic features
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-UNICODEMAP_ENABLE = yes
-
-# Keyboard-specific features
-BACKLIGHT_ENABLE = no
-VIA_ENABLE = yes
-
-# Firmware size reduction
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/doro67/multi/keymaps/zyber/keymap.c b/keyboards/doro67/multi/keymaps/zyber/keymap.c
deleted file mode 100644
index 05200e8855..0000000000
--- a/keyboards/doro67/multi/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2019 ShadeDream
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "zyber.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_multi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_F2, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_PGUP,
- LCTL(KC_UP), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_PGDN,
- KC_LSFT, KC_GRV, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_HOME,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_NO, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT_multi(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, ,
- BL_TOGG, BL_STEP, BL_DOWN, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-}; \ No newline at end of file
diff --git a/keyboards/dp3000/info.json b/keyboards/dp3000/info.json
index cdb9fe4547..442d6d6a66 100644
--- a/keyboards/dp3000/info.json
+++ b/keyboards/dp3000/info.json
@@ -1,6 +1,5 @@
{
"manufacturer": "depermana12",
- "keyboard_name": "dp3000",
"maintainer": "depermana12",
"diode_direction": "COL2ROW",
"development_board": "promicro",
@@ -10,7 +9,6 @@
"console": false,
"extrakey": true,
"encoder": true,
- "rgb_matrix": true,
"oled": true,
"mousekey": false,
"nkro": false
@@ -20,64 +18,17 @@
},
"url": "https://github.com/depermana12",
"usb": {
- "device_version": "1.0.1",
- "vid": "0x4450",
- "pid": "0x6470"
+ "vid": "0x4450"
},
"encoder": {
"rotary": [
- { "pin_a": "B2", "pin_b": "B1"},
- { "pin_a": "F4", "pin_b": "F5"}
+ { "pin_a": "B2", "pin_b": "B1" },
+ { "pin_a": "F4", "pin_b": "F5" }
]
},
- "ws2812": {
- "pin": "B5"
- },
- "rgb_matrix":{
- "driver":"ws2812",
- "max_brightness": 180,
- "animations": {
- "alphas_mods": true,
- "gradient_up_down": true,
- "gradient_left_right": true,
- "breathing": true,
- "band_sat": true,
- "band_val": true,
- "band_pinwheel_sat": true,
- "band_pinwheel_val": true,
- "band_spiral_sat": true,
- "band_spiral_val": true,
- "cycle_all": true,
- "cycle_left_right": true,
- "cycle_up_down": true,
- "rainbow_moving_chevron":true,
- "cycle_pinwheel": true,
- "cycle_spiral": true,
- "raindrops": true,
- "hue_breathing": true,
- "hue_pendulum": true,
- "hue_wave": true,
- "typing_heatmap": true,
- "solid_reactive_simple": true,
- "solid_reactive": true,
- "solid_reactive_multinexus": true,
- "splash": true,
- "solid_splash": true
- },
- "layout":[
- { "matrix": [1, 0], "x": 0, "y": 32, "flags":4 },
- { "matrix": [1, 1], "x": 25, "y": 32, "flags":4 },
- { "matrix": [1, 2], "x": 37, "y": 32, "flags":4 },
- { "matrix": [1, 3], "x": 75, "y": 32, "flags":4 },
- { "matrix": [2, 0], "x": 75, "y": 16, "flags":4 },
- { "matrix": [2, 1], "x": 37, "y": 16, "flags":4 },
- { "matrix": [2, 2], "x": 25, "y": 16, "flags":4 },
- { "matrix": [2, 3], "x": 0, "y": 16, "flags":4 }
- ]
- },
"matrix_pins": {
- "cols": ["D4", "D7", "B4", "C6"],
- "rows": ["F6", "F7", "B3"]
+ "cols": [ "D4", "D7", "B4", "C6" ],
+ "rows": [ "F6", "F7", "B3" ]
},
"layouts": {
"LAYOUT": {
diff --git a/keyboards/dp3000/readme.md b/keyboards/dp3000/readme.md
index 3844a66757..8e2c8871d9 100644
--- a/keyboards/dp3000/readme.md
+++ b/keyboards/dp3000/readme.md
@@ -3,18 +3,21 @@
![dp3000 macropad](https://i.imgur.com/uBHS8EYh.jpg)
dp3000 is a simple yet elegant macropad, 2x4 (8 keys), dual encoder, embedded with an Atmel 32u4 chip, powered by QMK.
-
+* Rev. 1 Support RGB matrix
+* Rev. 2 Support RGB light (underglow)
* Keyboard Maintainer: [Deddia Permana](https://github.com/depermana12)
-* Hardware Supported: DP3000 PCB, ATmega32u4
+* Hardware Supported: DP3000 PCB rev1 and rev2, ATmega32u4
* Hardware Availability: [tokopedia.com/gundamtricks](https://www.tokopedia.com/gundamtricks)
Make example for this keyboard (after setting up your build environment):
- make dp3000:default
+ make dp3000/rev1:default
+ make dp3000/rev2:default
Flashing example for this keyboard:
- make dp3000:default:flash
+ make dp3000/rev1:default:flash
+ make dp3000/rev2:default:flash
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
@@ -22,6 +25,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
Enter the bootloader in 3 ways:
-* Bootmagic reset: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* Bootmagic reset: Hold down the key at (0,0) in the matrix (left rotary encoder push switch) and plug in the keyboard
* Physical reset button: Briefly press reset button twice, located in front of the first rotary encoder (left rotary encoder)
* Keycode in layout: Press the key mapped to QK_BOOT if it is available
diff --git a/keyboards/dp3000/rev1/info.json b/keyboards/dp3000/rev1/info.json
new file mode 100644
index 0000000000..7ea2d101c4
--- /dev/null
+++ b/keyboards/dp3000/rev1/info.json
@@ -0,0 +1,59 @@
+{
+ "keyboard_name": "dp3000",
+ "features": {
+ "rgb_matrix": true
+ },
+ "usb": {
+ "device_version": "1.0.1",
+ "pid": "0x6470"
+ },
+ "rgb_matrix": {
+ "animations": {
+ "alphas_mods": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_sat": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "band_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "gradient_left_right": true,
+ "gradient_up_down": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "rainbow_moving_chevron": true,
+ "raindrops": true,
+ "solid_color": true,
+ "solid_reactive": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_simple": true,
+ "solid_splash": true,
+ "splash": true,
+ "typing_heatmap": true
+ },
+ "driver": "ws2812",
+ "layout": [
+ {"matrix": [1, 0], "x": 0, "y": 32, "flags": 4},
+ {"matrix": [1, 1], "x": 25, "y": 32, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 32, "flags": 4},
+ {"matrix": [1, 3], "x": 75, "y": 32, "flags": 4},
+ {"matrix": [2, 0], "x": 75, "y": 16, "flags": 4},
+ {"matrix": [2, 1], "x": 37, "y": 16, "flags": 4},
+ {"matrix": [2, 2], "x": 25, "y": 16, "flags": 4},
+ {"matrix": [2, 3], "x": 0, "y": 16, "flags": 4}
+ ],
+ "max_brightness": 180,
+ "sat_steps": 8,
+ "speed_steps": 10,
+ "val_steps": 8
+ },
+ "ws2812": {
+ "pin": "B5"
+ }
+}
diff --git a/keyboards/studiokestra/line_tkl/rules.mk b/keyboards/dp3000/rev1/rules.mk
index 6e7633bfe0..6e7633bfe0 100644
--- a/keyboards/studiokestra/line_tkl/rules.mk
+++ b/keyboards/dp3000/rev1/rules.mk
diff --git a/keyboards/dp3000/rev2/info.json b/keyboards/dp3000/rev2/info.json
new file mode 100644
index 0000000000..f6f03eeb63
--- /dev/null
+++ b/keyboards/dp3000/rev2/info.json
@@ -0,0 +1,31 @@
+{
+ "keyboard_name": "dp3000 rev2",
+ "features": {
+ "rgblight": true
+ },
+ "usb": {
+ "device_version": "2.0.0",
+ "pid": "0x3132"
+ },
+ "rgblight": {
+ "animations": {
+ "alternating": true,
+ "breathing": true,
+ "christmas": true,
+ "knight": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true,
+ "rgb_test": true,
+ "snake": true,
+ "static_gradient": true,
+ "twinkle": true
+ },
+ "led_count": 4,
+ "max_brightness": 180,
+ "saturation_steps": 8,
+ "sleep": true
+ },
+ "ws2812": {
+ "pin": "B6"
+ }
+}
diff --git a/keyboards/dp3000/rev2/rules.mk b/keyboards/dp3000/rev2/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/dp3000/rev2/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/dp3000/rules.mk b/keyboards/dp3000/rules.mk
index 6e7633bfe0..0f44aefd44 100644
--- a/keyboards/dp3000/rules.mk
+++ b/keyboards/dp3000/rules.mk
@@ -1 +1 @@
-# This file intentionally left blank
+DEFAULT_FOLDER = dp3000/rev1
diff --git a/keyboards/dp60/config.h b/keyboards/dp60/config.h
index fd83fe2d68..3c65d94736 100644
--- a/keyboards/dp60/config.h
+++ b/keyboards/dp60/config.h
@@ -33,9 +33,8 @@
//#define NO_PRINT
//rgb matrix setting
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define DRIVER_1_LED_TOTAL 36
#define DRIVER_2_LED_TOTAL 36
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/dp60/dp60.c b/keyboards/dp60/dp60.c
index 75e6649ad5..588acd591d 100644
--- a/keyboards/dp60/dp60.c
+++ b/keyboards/dp60/dp60.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/dp60/keymaps/indicator/indicator.c b/keyboards/dp60/keymaps/indicator/indicator.c
index 683ae3625a..02450ce68d 100644
--- a/keyboards/dp60/keymaps/indicator/indicator.c
+++ b/keyboards/dp60/keymaps/indicator/indicator.c
@@ -70,9 +70,9 @@ void keyboard_post_init_user(void) {
extern rgblight_config_t rgblight_config;
extern void rgblight_layers_write(void);
-extern void indicator_write(LED_TYPE *start_led, uint8_t num_leds);
+extern void indicator_write(rgb_led_t *start_led, uint8_t num_leds);
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
ws2812_setleds(start_led, RGBLED_NUM-RGB_INDICATOR_NUM);
diff --git a/keyboards/dp60/keymaps/indicator/led_driver.c b/keyboards/dp60/keymaps/indicator/led_driver.c
index 677eb8af57..b31e2daacd 100644
--- a/keyboards/dp60/keymaps/indicator/led_driver.c
+++ b/keyboards/dp60/keymaps/indicator/led_driver.c
@@ -20,7 +20,7 @@
#define ws2812_setleds_pin indicator_setleds_pin
#include "ws2812_bitbang.c"
-void indicator_write(LED_TYPE *start_led, uint8_t num_leds)
+void indicator_write(rgb_led_t *start_led, uint8_t num_leds)
{
indicator_setleds(start_led, num_leds);
}
diff --git a/keyboards/draculad/keymaps/manna-harbour_miryoku/config.h b/keyboards/draculad/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index e49cb1539f..0000000000
--- a/keyboards/draculad/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#undef LAYER_STATE_8BIT
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- XXX, XXX, \
- K32, K33, K34, K35, K36, K37 \
-)
diff --git a/keyboards/draculad/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/draculad/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/draculad/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/drop/alt/v2/config.h b/keyboards/drop/alt/v2/config.h
index 5de22f7bcf..2dfae36a49 100644
--- a/keyboards/drop/alt/v2/config.h
+++ b/keyboards/drop/alt/v2/config.h
@@ -14,15 +14,9 @@
#define EXTERNAL_EEPROM_WP_PIN B5
#define EEPROM_I2C_24LC256
-#define DRIVER_ADDR_1 0b1010011
-#define DRIVER_ADDR_2 0b1011111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 111
-#define ISSI_PWM_FREQUENCY 0b010 // 26k
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_VCC
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_VCC_VCC
+#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_CYCLE_ZONES_ENABLE
#define RGB_MATRIX_CAPS_LOCK_INDEX 30
diff --git a/keyboards/drop/alt/v2/info.json b/keyboards/drop/alt/v2/info.json
index c234f03090..d0fc31f624 100644
--- a/keyboards/drop/alt/v2/info.json
+++ b/keyboards/drop/alt/v2/info.json
@@ -106,6 +106,7 @@
"rgb_matrix": {
"driver": "is31fl3733",
"max_brightness": 191,
+ "sleep": true,
"animations": {
"alphas_mods": true,
"gradient_up_down": true,
diff --git a/keyboards/drop/alt/v2/rules.mk b/keyboards/drop/alt/v2/rules.mk
index a504f81cb1..3c300442da 100644
--- a/keyboards/drop/alt/v2/rules.mk
+++ b/keyboards/drop/alt/v2/rules.mk
@@ -1,4 +1,6 @@
UF2_DEVICE_TYPE_ID = 0x35446147
UF2CONV_ARGS = --device-type $(UF2_DEVICE_TYPE_ID)
-SRC += analog.c lib/common.c lib/mux.c
+SRC += lib/common.c lib/mux.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/drop/alt/v2/v2.c b/keyboards/drop/alt/v2/v2.c
index 2e183fe4d8..fcdad7f2df 100644
--- a/keyboards/drop/alt/v2/v2.c
+++ b/keyboards/drop/alt/v2/v2.c
@@ -3,7 +3,7 @@
#ifdef RGB_MATRIX_ENABLE
# include "rgb_matrix.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 1, B_2, A_2, C_2 },
{ 1, E_3, D_3, F_3 },
{ 1, E_4, D_4, F_4 },
diff --git a/keyboards/drop/cstm80/config.h b/keyboards/drop/cstm80/config.h
index 2aefadfe30..3b3f6ae6b7 100644
--- a/keyboards/drop/cstm80/config.h
+++ b/keyboards/drop/cstm80/config.h
@@ -9,14 +9,8 @@
#define EXTERNAL_EEPROM_WP_PIN B7
#define EEPROM_I2C_24LC256
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1011111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 88
-#define ISSI_PWM_FREQUENCY 0b010 // 26k
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_VCC_VCC
+#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_CAPS_LOCK_INDEX 48
diff --git a/keyboards/drop/cstm80/cstm80.c b/keyboards/drop/cstm80/cstm80.c
index c60f347cb9..75e7049c20 100644
--- a/keyboards/drop/cstm80/cstm80.c
+++ b/keyboards/drop/cstm80/cstm80.c
@@ -3,7 +3,7 @@
#ifdef RGB_MATRIX_ENABLE
# include "rgb_matrix.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, E_1, D_1, F_1 },
{ 0, E_2, D_2, F_2 },
{ 0, E_3, D_3, F_3 },
diff --git a/keyboards/drop/cstm80/info.json b/keyboards/drop/cstm80/info.json
index 170538027e..12331eb097 100644
--- a/keyboards/drop/cstm80/info.json
+++ b/keyboards/drop/cstm80/info.json
@@ -128,6 +128,7 @@
},
"rgb_matrix": {
"driver": "is31fl3733",
+ "sleep": true,
"animations": {
"alphas_mods": true,
"gradient_up_down": true,
diff --git a/keyboards/drop/ctrl/v2/config.h b/keyboards/drop/ctrl/v2/config.h
index 2cff42074a..c0a259492b 100644
--- a/keyboards/drop/ctrl/v2/config.h
+++ b/keyboards/drop/ctrl/v2/config.h
@@ -14,15 +14,9 @@
#define EXTERNAL_EEPROM_WP_PIN B5
#define EEPROM_I2C_24LC256
-#define DRIVER_ADDR_1 0b1010011
-#define DRIVER_ADDR_2 0b1011111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 119
-#define ISSI_PWM_FREQUENCY 0b010 // 26k
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_VCC
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_VCC_VCC
+#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_CYCLE_ZONES_ENABLE
#define RGB_MATRIX_CAPS_LOCK_INDEX 50
diff --git a/keyboards/drop/ctrl/v2/info.json b/keyboards/drop/ctrl/v2/info.json
index 11af6a553c..f461800dde 100644
--- a/keyboards/drop/ctrl/v2/info.json
+++ b/keyboards/drop/ctrl/v2/info.json
@@ -126,6 +126,7 @@
"rgb_matrix": {
"driver": "is31fl3733",
"max_brightness": 191,
+ "sleep": true,
"animations": {
"alphas_mods": true,
"gradient_up_down": true,
diff --git a/keyboards/drop/ctrl/v2/rules.mk b/keyboards/drop/ctrl/v2/rules.mk
index 13c11c1833..02a766b5c3 100644
--- a/keyboards/drop/ctrl/v2/rules.mk
+++ b/keyboards/drop/ctrl/v2/rules.mk
@@ -1,4 +1,6 @@
UF2_DEVICE_TYPE_ID = 0x27b9a6ea
UF2CONV_ARGS = --device-type $(UF2_DEVICE_TYPE_ID)
-SRC += analog.c lib/common.c lib/mux.c
+SRC += lib/common.c lib/mux.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/drop/ctrl/v2/v2.c b/keyboards/drop/ctrl/v2/v2.c
index 6f3091035b..6b565efbe1 100644
--- a/keyboards/drop/ctrl/v2/v2.c
+++ b/keyboards/drop/ctrl/v2/v2.c
@@ -3,7 +3,7 @@
#ifdef RGB_MATRIX_ENABLE
# include "rgb_matrix.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 1, B_2, A_2, C_2 },
{ 1, E_3, D_3, F_3 },
{ 1, E_4, D_4, F_4 },
diff --git a/keyboards/drop/sense75/config.h b/keyboards/drop/sense75/config.h
index b8d47c311c..448d223d48 100644
--- a/keyboards/drop/sense75/config.h
+++ b/keyboards/drop/sense75/config.h
@@ -9,15 +9,9 @@
#define EXTERNAL_EEPROM_WP_PIN B7
#define EEPROM_I2C_24LC256
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1011111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 111
-#define ISSI_PWM_FREQUENCY 0b010 // 26k
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_VCC_VCC
+#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_CYCLE_ZONES_ENABLE
#define RGB_MATRIX_CAPS_LOCK_INDEX 62
diff --git a/keyboards/drop/sense75/info.json b/keyboards/drop/sense75/info.json
index 2df7b0ae5a..052b494375 100644
--- a/keyboards/drop/sense75/info.json
+++ b/keyboards/drop/sense75/info.json
@@ -44,7 +44,7 @@
{"matrix": [0, 11], "label": "F11", "x": 11.75, "y": 0},
{"matrix": [0, 12], "label": "F12", "x": 12.75, "y": 0},
{"matrix": [0, 13], "label": "PrtSc", "x": 14, "y": 0},
- {"matrix": [0, 14], "label": "Mute", "x": 15.25, "y": 0},
+ {"matrix": [0, 14], "encoder":0, "label": "Mute", "x": 15.25, "y": 0},
{"matrix": [1, 0], "label": "~", "x": 0, "y": 1.25},
{"matrix": [1, 1], "label": "!", "x": 1, "y": 1.25},
{"matrix": [1, 2], "label": "@", "x": 2, "y": 1.25},
@@ -117,6 +117,7 @@
},
"rgb_matrix": {
"driver": "is31fl3733",
+ "sleep": true,
"animations": {
"alphas_mods": true,
"gradient_up_down": true,
diff --git a/keyboards/drop/sense75/sense75.c b/keyboards/drop/sense75/sense75.c
index 40577054cc..057e310748 100644
--- a/keyboards/drop/sense75/sense75.c
+++ b/keyboards/drop/sense75/sense75.c
@@ -3,7 +3,7 @@
#ifdef RGB_MATRIX_ENABLE
# include "rgb_matrix.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
// top underglow sd2-sd17
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
diff --git a/keyboards/drop/shift/v2/config.h b/keyboards/drop/shift/v2/config.h
index a4faafe394..e912e3805f 100644
--- a/keyboards/drop/shift/v2/config.h
+++ b/keyboards/drop/shift/v2/config.h
@@ -14,15 +14,9 @@
#define EXTERNAL_EEPROM_WP_PIN B5
#define EEPROM_I2C_24LC256
-#define DRIVER_ADDR_1 0b1010011
-#define DRIVER_ADDR_2 0b1011111
-#define DRIVER_ADDR_3 0b1010000
-#define DRIVER_COUNT 3
-#define RGB_MATRIX_LED_COUNT 166
-#define ISSI_PWM_FREQUENCY 0b010 // 26k
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_VCC
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_VCC_VCC
+#define IS31FL3733_I2C_ADDRESS_3 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_CYCLE_ZONES_ENABLE
diff --git a/keyboards/drop/shift/v2/info.json b/keyboards/drop/shift/v2/info.json
index 3615fdef4f..212263d71c 100644
--- a/keyboards/drop/shift/v2/info.json
+++ b/keyboards/drop/shift/v2/info.json
@@ -134,6 +134,7 @@
"rgb_matrix": {
"driver": "is31fl3733",
"max_brightness": 191,
+ "sleep": true,
"animations": {
"alphas_mods": true,
"gradient_up_down": true,
diff --git a/keyboards/drop/shift/v2/rules.mk b/keyboards/drop/shift/v2/rules.mk
index aec83326d0..f4f3ce1498 100644
--- a/keyboards/drop/shift/v2/rules.mk
+++ b/keyboards/drop/shift/v2/rules.mk
@@ -1,4 +1,6 @@
UF2_DEVICE_TYPE_ID = 0x9bc1e968
UF2CONV_ARGS = --device-type $(UF2_DEVICE_TYPE_ID)
-SRC += analog.c lib/common.c lib/mux.c
+SRC += lib/common.c lib/mux.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/drop/shift/v2/v2.c b/keyboards/drop/shift/v2/v2.c
index 326c418279..8565a0cb26 100644
--- a/keyboards/drop/shift/v2/v2.c
+++ b/keyboards/drop/shift/v2/v2.c
@@ -4,7 +4,7 @@
# include "host.h"
# include "rgb_matrix.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, K_1, J_1, L_1 },// LED1
{ 0, K_2, J_2, L_2 },
{ 0, K_3, J_3, L_3 },
diff --git a/keyboards/ducky/one2mini/1861st/config.h b/keyboards/ducky/one2mini/1861st/config.h
index 92448f54d1..1bb511107d 100644
--- a/keyboards/ducky/one2mini/1861st/config.h
+++ b/keyboards/ducky/one2mini/1861st/config.h
@@ -17,6 +17,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DIP_SWITCH_MATRIX_GRID { {0,14}, {1,14}, {2,14}, {3,14} }
-
#define GPIO_INPUT_PIN_DELAY (NUC123_HCLK / 6 / 1000000L)
diff --git a/keyboards/ducky/one2mini/1861st/info.json b/keyboards/ducky/one2mini/1861st/info.json
index 1f1783f635..4eb7c4941e 100644
--- a/keyboards/ducky/one2mini/1861st/info.json
+++ b/keyboards/ducky/one2mini/1861st/info.json
@@ -12,6 +12,9 @@
"rows": ["D11", "B4", "B5", "B6", "B7"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "matrix_grid": [ [0,14], [1,14], [2,14], [3,14] ]
+ },
"layout_aliases": {
"LAYOUT_iso": "LAYOUT_60_iso"
},
diff --git a/keyboards/ducky/one2sf/1967st/config.h b/keyboards/ducky/one2sf/1967st/config.h
index 92448f54d1..1bb511107d 100644
--- a/keyboards/ducky/one2sf/1967st/config.h
+++ b/keyboards/ducky/one2sf/1967st/config.h
@@ -17,6 +17,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DIP_SWITCH_MATRIX_GRID { {0,14}, {1,14}, {2,14}, {3,14} }
-
#define GPIO_INPUT_PIN_DELAY (NUC123_HCLK / 6 / 1000000L)
diff --git a/keyboards/ducky/one2sf/1967st/info.json b/keyboards/ducky/one2sf/1967st/info.json
index 72ba3c8ae8..3774be1bc0 100644
--- a/keyboards/ducky/one2sf/1967st/info.json
+++ b/keyboards/ducky/one2sf/1967st/info.json
@@ -13,6 +13,9 @@
"rows": ["D11", "B4", "B5", "B6", "B7"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "matrix_grid": [ [0,14], [1,14], [2,14], [3,14] ]
+ },
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/dumbpad/v0x/v0x.c b/keyboards/dumbpad/v0x/v0x.c
index 6c89edaa11..d7e3841d76 100644
--- a/keyboards/dumbpad/v0x/v0x.c
+++ b/keyboards/dumbpad/v0x/v0x.c
@@ -22,10 +22,14 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/dumbpad/v0x_dualencoder/v0x_dualencoder.c b/keyboards/dumbpad/v0x_dualencoder/v0x_dualencoder.c
index 6c89edaa11..d7e3841d76 100644
--- a/keyboards/dumbpad/v0x_dualencoder/v0x_dualencoder.c
+++ b/keyboards/dumbpad/v0x_dualencoder/v0x_dualencoder.c
@@ -22,10 +22,14 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/dumbpad/v0x_right/v0x_right.c b/keyboards/dumbpad/v0x_right/v0x_right.c
index 6c89edaa11..d7e3841d76 100644
--- a/keyboards/dumbpad/v0x_right/v0x_right.c
+++ b/keyboards/dumbpad/v0x_right/v0x_right.c
@@ -22,10 +22,14 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/dumbpad/v1x/keymaps/imchipwood/keymap.c b/keyboards/dumbpad/v1x/keymaps/imchipwood/keymap.c
deleted file mode 100644
index 96a98b11c5..0000000000
--- a/keyboards/dumbpad/v1x/keymaps/imchipwood/keymap.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2020 imchipwood
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "imchipwood.h"
-
-enum custom_layers {
- _BASE,
- _SUB,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- BASE LAYER
- /-----------------------------------------------------`
- | | 7 | 8 | 9 | Bkspc |
- | |---------|---------|---------|---------|
- | | 4 | 5 | 6 | + |
- | |---------|---------|---------|---------|
- | | 1 | 2 | 3 | * |
- |-------------|---------|---------|---------|---------|
- | Play/Pause | TT(SUB) | 0 | . | Enter |
- \-----------------------------------------------------'
- */
- [_BASE] = LAYOUT(
- KC_P7, KC_P8, KC_P9, KC_BSPC,
- KC_P4, KC_P5, KC_P6, KC_KP_PLUS,
- KC_P1, KC_P2, KC_P3, KC_KP_ASTERISK,
- MEH_T(KC_MPLY), TT(_SUB), KC_P0, KC_PDOT, KC_KP_ENTER
- ),
- /*
- SUB LAYER
- /-----------------------------------------------------`
- | | F7 | F8 | F9 | Del/NLK |
- | |---------|---------|---------|---------|
- | | F4 | F5 | F6 | - |
- | |---------|---------|---------|---------|
- | | F1 | F2 | F3 | / |
- |-------------|---------|---------|---------|---------|
- | MUTE | | LSFT | LCTL | = |
- \-----------------------------------------------------'
- */
- [_SUB] = LAYOUT(
- TD(ALT_F7), KC_F8, KC_F9, TD(DEL_NLCK),
- KC_F4, TD(CTL_F5), KC_F6, KC_KP_MINUS,
- KC_F1, TD(ALT_F2), KC_F3, KC_KP_SLASH,
- KC_MUTE, _______, OSM(MOD_LSFT), OSM(MOD_LCTL), KC_KP_EQUAL
- )
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- // main layer - volume up/down
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
-
- case _SUB:
- // sub layer - next/previous track
- if (clockwise) {
- tap_code(KC_MNXT);
- } else {
- tap_code(KC_MPRV);
- }
- break;
-
- default:
- // default - volume up/down
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- }
- }
- return true;
-}
diff --git a/keyboards/dumbpad/v1x/v1x.c b/keyboards/dumbpad/v1x/v1x.c
index f1b1d66c7f..1022ad0605 100644
--- a/keyboards/dumbpad/v1x/v1x.c
+++ b/keyboards/dumbpad/v1x/v1x.c
@@ -23,11 +23,15 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
writePinLow(LED_02);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/dumbpad/v1x_dualencoder/v1x_dualencoder.c b/keyboards/dumbpad/v1x_dualencoder/v1x_dualencoder.c
index f1b1d66c7f..1022ad0605 100644
--- a/keyboards/dumbpad/v1x_dualencoder/v1x_dualencoder.c
+++ b/keyboards/dumbpad/v1x_dualencoder/v1x_dualencoder.c
@@ -23,11 +23,15 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
writePinLow(LED_02);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/dumbpad/v1x_right/v1x_right.c b/keyboards/dumbpad/v1x_right/v1x_right.c
index f1b1d66c7f..1022ad0605 100644
--- a/keyboards/dumbpad/v1x_right/v1x_right.c
+++ b/keyboards/dumbpad/v1x_right/v1x_right.c
@@ -23,11 +23,15 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
writePinLow(LED_02);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/dumbpad/v3x/v3x.c b/keyboards/dumbpad/v3x/v3x.c
index d0acca1947..89f13684f2 100644
--- a/keyboards/dumbpad/v3x/v3x.c
+++ b/keyboards/dumbpad/v3x/v3x.c
@@ -54,11 +54,15 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
writePinLow(LED_02);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/durgod/dgk6x/config.h b/keyboards/durgod/dgk6x/config.h
index beb580a588..7c85f977ba 100644
--- a/keyboards/durgod/dgk6x/config.h
+++ b/keyboards/durgod/dgk6x/config.h
@@ -34,21 +34,9 @@
#define LED_MR_LOCK_PIN LED_SCROLL_LOCK_PIN
#ifdef RGB_MATRIX_ENABLE
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 00 <-> GND
-// 01 <-> SCL
-// 10 <-> SDA
-// 11 <-> VCC
-// ADDR1 represents A1:A0 of the 7-bit address.
-// ADDR2 represents A3:A2 of the 7-bit address.
-// The result is: 0b101(ADDR2)(ADDR1)
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_VCC
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1010011
-
-#define DRIVER_COUNT 2
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
/* I2C Alternate function settings */
diff --git a/keyboards/durgod/dgk6x/galaxy/galaxy.c b/keyboards/durgod/dgk6x/galaxy/galaxy.c
index 9d0d25f823..aa903c3a0a 100644
--- a/keyboards/durgod/dgk6x/galaxy/galaxy.c
+++ b/keyboards/durgod/dgk6x/galaxy/galaxy.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/durgod/dgk6x/hades_ansi/hades_ansi.c b/keyboards/durgod/dgk6x/hades_ansi/hades_ansi.c
index fb54c95667..2d1907f4db 100644
--- a/keyboards/durgod/dgk6x/hades_ansi/hades_ansi.c
+++ b/keyboards/durgod/dgk6x/hades_ansi/hades_ansi.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/durgod/dgk6x/hades_iso/hades_iso.c b/keyboards/durgod/dgk6x/hades_iso/hades_iso.c
index 5f7a724aea..42f43645f5 100644
--- a/keyboards/durgod/dgk6x/hades_iso/hades_iso.c
+++ b/keyboards/durgod/dgk6x/hades_iso/hades_iso.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/durgod/dgk6x/venus/venus.c b/keyboards/durgod/dgk6x/venus/venus.c
index 8c5ba712b1..d48e95fb21 100644
--- a/keyboards/durgod/dgk6x/venus/venus.c
+++ b/keyboards/durgod/dgk6x/venus/venus.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/durgod/k320/keymaps/moults31/config.h b/keyboards/durgod/k320/keymaps/moults31/config.h
deleted file mode 100644
index 01f47b8c10..0000000000
--- a/keyboards/durgod/k320/keymaps/moults31/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Copyright 2021 moults31
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/durgod/k320/keymaps/moults31/keymap.c b/keyboards/durgod/k320/keymaps/moults31/keymap.c
deleted file mode 100644
index cdda3964e8..0000000000
--- a/keyboards/durgod/k320/keymaps/moults31/keymap.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/* Copyright 2021 moults31
- * Adapted from kuenhlee and Don Kjer and Coirault
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-#include "moults31.h"
-
-// Layer shorthand
-enum _layer {
- _BASE,
- _FUNC,
- _LAYER3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Keymap _BASE: Base Layer (Default Layer)
- * ,-----------------------------------------------------------. ,--------------.
- * |Esc |f1| f2| f3| f4| | f5| f6| f7| f8| | f9|f10|f11|f12| |Prnt|ScLk|Paus|
- * |-----------------------------------------------------------| |--------------|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backsp | | Ins|Home|PgUp|
- * |-----------------------------------------------------------| |--------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | Del| End|PgDn|
- * |------------------------------------------------------ Ret | `--------------'
- * |CAPS | A| S| D| F| G| H| J| K| L| ;| '| #| |
- * |-----------------------------------------------------------| ,----.
- * |Shift| \| Z| X| C| V| B| N| M| ,| .| /|Shift | | Up |
- * |-----------------------------------------------------------| ,-------------.
- * |Ctrl|Gui |Alt | Space |Alt | Fn |App |Ctrl| |Lft| Dn |Rig |
- * `-----------------------------------------------------------' `-------------'
- */
- [_BASE] = LAYOUT_tkl_ansi( /* Base Layer */
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FUNC),KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- /* Keymap _FUNC: Function Layer
- * ,-----------------------------------------------------------. ,--------------.
- * | |Play|Stop|Prev|Next| |Mute|Vol+|Vol-| | | | | | | | | | |
- * |-----------------------------------------------------------| |--------------|
- * | | | | | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------| |--------------|
- * | | | | | | | | | | | | | | | | | | |
- * |------------------------------------------------------- | `--------------'
- * | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------| ,----.
- * | | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------| ,-------------.
- * | | | | | |Func | | | | | | |
- * `-----------------------------------------------------------' `-------------'
- */
- [_FUNC] = LAYOUT_tkl_ansi( /* Function Layer */
- _______, KC_MPLY, KC_MSTP, KC_MRWD, KC_MFFD, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, M_VSC_VIEWSIZEINC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, M_VSC_EDGRPPRV, M_VSC_VIEWSIZEDEC, M_VSC_EDGRPNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, M_VSC_MVEDTRPRVGRP, _______, M_VSC_MVEDTRNXTGRP
- ),
- [_LAYER3] = LAYOUT_tkl_ansi( /* Function Layer */
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
-
diff --git a/keyboards/durgod/k320/keymaps/moults31/readme.md b/keyboards/durgod/k320/keymaps/moults31/readme.md
deleted file mode 100644
index e3a3f150f3..0000000000
--- a/keyboards/durgod/k320/keymaps/moults31/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# The default keymap for Durgod Taurus K320.
-
-Layer 0 : Standard Keys TKL layout
-
-Layer 1 : Media control and VScode navigation
-- Reusing Durgod's Original Media Control for Fn + F1 ~ Fn + F7
-
-## Supported PCBs
-
-This keymap intended for use on Durgod K320 ANSI
diff --git a/keyboards/dyz/dyz40/config.h b/keyboards/dyz/dyz40/config.h
deleted file mode 100644
index 7e7ca8b694..0000000000
--- a/keyboards/dyz/dyz40/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021 dayatz
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/dyz/dyz60/config.h b/keyboards/dyz/dyz60/config.h
deleted file mode 100644
index 7e7ca8b694..0000000000
--- a/keyboards/dyz/dyz60/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021 dayatz
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/dyz/dyz60_hs/config.h b/keyboards/dyz/dyz60_hs/config.h
deleted file mode 100644
index 7e7ca8b694..0000000000
--- a/keyboards/dyz/dyz60_hs/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021 dayatz
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/dyz/dyz_tkl/config.h b/keyboards/dyz/dyz_tkl/config.h
deleted file mode 100644
index 7e7ca8b694..0000000000
--- a/keyboards/dyz/dyz_tkl/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021 dayatz
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/dyz/selka40/config.h b/keyboards/dyz/selka40/config.h
deleted file mode 100644
index 7e7ca8b694..0000000000
--- a/keyboards/dyz/selka40/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021 dayatz
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/dyz/synthesis60/config.h b/keyboards/dyz/synthesis60/config.h
deleted file mode 100644
index d70ad316b6..0000000000
--- a/keyboards/dyz/synthesis60/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2022 dayatz
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/dz60/keymaps/billypython/config.h b/keyboards/dz60/keymaps/billypython/config.h
deleted file mode 100644
index 4b511eb848..0000000000
--- a/keyboards/dz60/keymaps/billypython/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define LAYER_FN
diff --git a/keyboards/dz60/keymaps/billypython/keymap.c b/keyboards/dz60/keymaps/billypython/keymap.c
deleted file mode 100644
index 66ce559c1a..0000000000
--- a/keyboards/dz60/keymaps/billypython/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "billypython.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │
- * ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤
- * │LShift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RSC│ ↑ │Del│
- * ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤
- * │LCtl│LGui│LAlt│ Space │RAl│FnL│ ← │ ↓ │ → │
- * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘
- */
- [L_BASE] = LAYOUT_directional(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSF_RCT, KC_UP, KC_DEL,
- KC_LCTL, KC_LGUI, KC_LALT, XXXXXXX, KC_SPC, XXXXXXX, KC_RALT, FN_FNLK, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Function layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ │PSc│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │PgU│ ↑ │PgD│Ply│Prv│Nxt│Clear│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ │M← │M↓ │M→ │MW↑│ │Hom│ ← │ ↓ │ → │End│ │ │
- * ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤
- * │ │MA0│MA2│MW←│MW→│ │ │ │Vo-│Vo+│Mut│App│PgU│Ins│
- * ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤
- * │ │ │ │ MW↓ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘
- */
- [L_FN] = LAYOUT_directional(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_PSCR,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, KC_PGUP, KC_UP, KC_PGDN, KC_MPLY, KC_MPRV, KC_MNXT, CLEAR,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______, _______,
- _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_APP, KC_PGUP, KC_INS,
- _______, _______, _______, XXXXXXX, KC_WH_D, XXXXXXX, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
-};
diff --git a/keyboards/dz60/keymaps/billypython/rules.mk b/keyboards/dz60/keymaps/billypython/rules.mk
deleted file mode 100644
index 3b7016f570..0000000000
--- a/keyboards/dz60/keymaps/billypython/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-BACKLIGHT_ENABLE = no
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-RGBLIGHT_ENABLE = no
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/dz60/keymaps/doogle999/keymap.c b/keyboards/dz60/keymaps/doogle999/keymap.c
deleted file mode 100644
index 60fe258e25..0000000000
--- a/keyboards/dz60/keymaps/doogle999/keymap.c
+++ /dev/null
@@ -1,74 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#include "doogle999.h"
-
-#define ______ KC_NO
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Base layer
- * ,-----------------------------------------------------------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Backspace |
- * |-----------------------------------------------------------------------------------------+
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
- * |-----------------------------------------------------------------------------------------+
- * | Fn | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
- * |-----------------------------------------------------------------------------------------+
- * | Shift | Z | X | C | V | B | N | M | , | . | Shift | U | Del |
- * |-----------------------------------------------------------------------------------------+
- * | Ctrl | Cmd | Alt | Space | / | Fn | L | D | R |
- * `-----------------------------------------------------------------------------------------'
- */
-
- LAYOUT_directional(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, ______, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, ______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_DELETE,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SLSH, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
-/* Fn layer
- * ,-----------------------------------------------------------------------------------------.
- * | ~ | F1 | F2 | F3 | F4 | F5 | F6 | f7 | F8 | F9 | F10 | F11 | F12 | Backspace |
- * |-----------------------------------------------------------------------------------------+
- * | Reset | NP1 | NP2 | NP3 | NP4 | NP5 | NP6 | NP7 | NP8 | NP9 | NP0 |VolD |VolU | Mute |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | | | | | BlD | BlI | BlT | Menu |
- * |-----------------------------------------------------------------------------------------+
- * | Shift | Cyc+| Cyc-| Val+| Val-| Hue+| Hue-| Sat+| Sat-| Tog | Shift | Pup | Ins |
- * |-----------------------------------------------------------------------------------------+
- * | Ctrl | Cmd | Alt | Space |HwCal| |Home | Pdn | End |
- * `-----------------------------------------------------------------------------------------'
- */
-
- LAYOUT_directional(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ______, KC_CALC,
- QK_BOOT, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_0, KC_VOLD, KC_VOLU, KC_MUTE,
- ______, ______, ______, ______, ______, ______, ______, ______, ______, BL_DOWN,BL_UP, BL_TOGG, KC_APP,
- KC_LSFT, ______, RGB_MOD, RGB_RMOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_TOG, KC_RSFT, KC_PGUP, KC_INSERT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, TO(2), ______, KC_HOME, KC_PGDN, KC_END
- ),
-
- /* Hardware calculator layer
- * ,-----------------------------------------------------------------------------------------.
- * |EndCa| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Backspace |
- * |-----------------------------------------------------------------------------------------+
- * | | Q | | E | | T | | | | | P | | | |
- * |-----------------------------------------------------------------------------------------+
- * | | | S | | | | | | | L | | | Calc |
- * |-----------------------------------------------------------------------------------------+
- * | Shift | | | | C | | | | | . | Shift | | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | / | | | | |
- * `-----------------------------------------------------------------------------------------'
- */
-
- LAYOUT_directional(
- ENDCALC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, ______, KC_BSPC,
- ______, KC_Q, ______, KC_E, ______, KC_T, ______, ______, ______, ______, KC_P, ______, ______, ______,
- ______, ______, KC_S, ______, ______, ______, ______, ______, ______, KC_L, ______, ______, CALC,
- KC_LSFT, ______, ______, ______, KC_C, ______, ______, ______, ______, ______, KC_DOT, KC_RSFT, ______, ______,
- ______, ______, ______, ______, ______, ______, KC_SLSH, ______, ______, ______, ______
- ),
-}; \ No newline at end of file
diff --git a/keyboards/dz60/keymaps/draevin/keymap.c b/keyboards/dz60/keymaps/draevin/keymap.c
deleted file mode 100644
index b22dfb5561..0000000000
--- a/keyboards/dz60/keymaps/draevin/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2020 Draevin Luke <contact@drae.vin> @draevin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "draevin.h"
-
-#define LAYOUT_wrapped(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_CM] = LAYOUT_wrapped (
- HYPR_T(KC_ESC), ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_BSPC, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, KC_ENT,
- TD(TD_CAPS), XXXXXXX, _________________COLEMAK_L3________________, _________________COLEMAK_R3________________, KC_RSFT, MO(_FN),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_SPC, KC_RCTL, KC_RALT, XXXXXXX, KC_RGUI, KC_HYPR
- ),
-
- [_QW] = LAYOUT_wrapped (
- HYPR_T(KC_ESC), ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_BSPC, _________________QWERTY_L2_________________, _________________QWERTY_L2_________________, KC_QUOT, KC_ENT,
- TD(TD_CAPS), XXXXXXX, _________________QWERTY_L3_________________, _________________QWERTY_L3_________________, KC_RSFT, MO(_FN),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_SPC, KC_RCTL, KC_RALT, XXXXXXX, KC_RGUI, KC_HYPR
- ),
-
- [_FN] = LAYOUT_wrapped (
- KC_GRV, _________________FROW_LEFT_________________, _________________FROW_RIGHT________________, KC_F11, KC_F12, _______, _______,
- _______, ___________________FN_L1___________________, ___________________FN_R1___________________, _______, _______, KC_MAKE,
- _______, ___________________FN_L2___________________, ___________________FN_R2___________________, _______, _______,
- _______, XXXXXXX, ___________________BLANK___________________, ___________________FN_R3___________________, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CM_QW
- )
-};
diff --git a/keyboards/dz60/keymaps/jarred/keymap.c b/keyboards/dz60/keymaps/jarred/keymap.c
deleted file mode 100644
index 32ad434f6f..0000000000
--- a/keyboards/dz60/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define _QW 0
-#define _NV 1
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QW] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_BSLS,
- MO(_NV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT,
- KC_LSFT, XXXXXXX,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT,XXXXXXX,
- KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT,KC_RGUI, XXXXXXX,KC_APP, KC_RCTL),
-
- [_NV] = LAYOUT(
- KC_GRV ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,XXXXXXX,_______,
- _______,RGB_TOG,RGB_MOD,_______,KC_DEL ,KC_BSPC,_______,KC_HOME,KC_UP ,KC_END ,KC_INS ,_______,_______,_______,
- _______,RGB_HUI,RGB_HUD,KC_LSFT,KC_LCTL,KC_ENT ,_______,KC_LEFT,KC_DOWN,KC_RGHT,KC_DEL ,KC_DEL , _______,
- _______,XXXXXXX,RGB_SAD,RGB_SAI,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______,_______,_______,XXXXXXX,
- _______,RGB_VAD,RGB_VAI, _______,_______,_______, _______,_______,XXXXXXX, QK_BOOT,_______)
-};
diff --git a/keyboards/dz60/keymaps/jdelkins/config.h b/keyboards/dz60/keymaps/jdelkins/config.h
deleted file mode 100644
index 9d50abd3ec..0000000000
--- a/keyboards/dz60/keymaps/jdelkins/config.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* My hhkb variant
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │
- * ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┤
- * │40 │41 │43 │44 │46 │48 │4a │4b │4c │4d │4e │
- * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┘
- */
-
-#define LAYOUT_hhkb_split( \
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
- k10, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, \
- k20, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
- k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, k3e, \
- k40, k41, k43, k44, k46, k48, k4a, k4b, k4c, k4d, k4e \
-) { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e }, \
- { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e }, \
- { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, KC_NO }, \
- { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, KC_NO, k3d, k3e }, \
- { k40, k41, KC_NO, k43, k44, KC_NO, k46, KC_NO, k48, KC_NO, k4a, k4b, k4c, k4d, k4e } \
-}
-
-#define AUTO_SHIFT_TIMEOUT 160
-#define AUTO_SHIFT_REPEAT
-#define RGBLIGHT_LAYERS
-#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
-#define LEADER_TIMEOUT 400
-#define LEADER_PER_KEY_TIMING
-#define USB_MAX_POWER_CONSUMPTION 100
diff --git a/keyboards/dz60/keymaps/jdelkins/keymap.c b/keyboards/dz60/keymaps/jdelkins/keymap.c
deleted file mode 100644
index 2a989fe545..0000000000
--- a/keyboards/dz60/keymaps/jdelkins/keymap.c
+++ /dev/null
@@ -1,352 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "jdelkins.h"
-
-#undef LAYOUT
-#define LAYOUT LAYOUT_hhkb_split
-
-#define IDLE_TIMEOUT 360
-
-uint16_t rgb_idle_seconds = 0;
-uint16_t rgb_timer;
-uint16_t bspc_timer;
-bool rgb_was_enabled;
-
-enum {
- MY_BSPC = USER_SAFE_RANGE,
-};
-
-// Tap Dance
-
-int ctl_state = 0;
-
-void ctl_finished(tap_dance_state_t *state, void *user_data) {
- ctl_state = cur_dance(state);
- switch (ctl_state) {
- case SINGLE_TAP: leader_start(); break;
- case SINGLE_HOLD: register_code(KC_LCTL); break;
- case DOUBLE_TAP: tap_code(KC_RCTL); break;
- case DOUBLE_HOLD: register_code(KC_RCTL); break;
- case TRIPLE_TAP: tap_code(KC_RCTL); tap_code(KC_RCTL); break;
- case TRIPLE_HOLD: tap_code(KC_RCTL); register_code(KC_RCTL); break;
- }
-}
-
-void ctl_reset(tap_dance_state_t *state, void *user_data) {
- switch (ctl_state) {
- case SINGLE_HOLD: unregister_code(KC_LCTL); break;
- case DOUBLE_HOLD:
- case TRIPLE_HOLD: unregister_code(KC_RCTL); break;
- }
- ctl_state = 0;
-}
-
-void g_finished(tap_dance_state_t *state, void *user_data) {
- switch (cur_dance(state)) {
- case SINGLE_TAP:
- tap_code16(C(KC_END));
- break;
- case DOUBLE_TAP:
- tap_code16(C(KC_HOME));
- break;
- }
-}
-
-int kp_state = 0;
-
-void kp_finished(tap_dance_state_t *state, void *user_data) {
- kp_state = hold_cur_dance(state);
- switch (kp_state) {
- case SINGLE_TAP:
- tap_code(KC_SPC);
- break;
- default:
- layer_invert(_KP);
- break;
- }
-}
-
-void kp_reset(tap_dance_state_t *state, void *user_data) {
- switch (kp_state) {
- case SINGLE_HOLD:
- case DOUBLE_HOLD:
- case TRIPLE_HOLD:
- layer_invert(_KP);
- break;
- }
-}
-
-enum {
- TD_LDCTL,
- TD_G,
- TD_KP,
-};
-
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LDCTL] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ctl_finished, ctl_reset),
- [TD_G] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, g_finished, NULL),
- [TD_KP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, kp_finished, kp_reset),
-};
-
-// Layers
-
-const uint16_t PROGMEM keymaps[_LAYER_MAX][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_ADJUST),
- TD(TD_LDCTL), MY_GUI, MY_ALT, MY_BSPC, TD(TD_KP), MY_SPC, KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
- ),
- [_RPT] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_GAME] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_LALT, KC_SPC, KC_LALT, _______, _______, _______, _______, _______, _______
- ),
- [_FUNC] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_F13,
- _______, _______, FW_WRD, KB_EOL, TG(_RPT), _______, KB_COPY, KC_PGUP, _______, _______, KB_PASTE, KC_SCRL, _______, MY_CALC,
- KC_RCTL, KB_BOL, _______, KC_PGDN, _______, TD(TD_G), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
- _______, _______, KC_DEL, _______, _______, BK_WRD, _______, _______, _______, _______, _______, _______, KC_NO,
- KC_RCTL, MY_RGUI, MY_RALT, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
- [_KP] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_ASTERISK, _______, _______, _______, _______, _______, _______,
- KC_NUM, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_MINUS, _______, _______, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_PLUS, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_SLASH, _______, TG(_KP),
- _______, _______, _______, _______, _______, KC_KP_0, KC_KP_DOT, _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_SCRL, KC_F13,
- _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, KC_PSCR, KC_BRID, KC_BRIU, KC_MUTE,
- KC_RCTL, RGB_RMOD, RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, TG(_KP), _______, _______, _______, KC_MPLY,
- _______, RGB_TOG, KB_MAKE, KB_FLSH, KB_VRSN, KB_BOOT, _______, TG_SYS, _______, _______, _______, _______, _______,
- KC_RCTL, MY_RGUI, MY_RALT, KC_DEL, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
- ),
-};
-
-const rgblight_segment_t PROGMEM rpt_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {8, 8, HSV_PINK}
-);
-
-const rgblight_segment_t PROGMEM game_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 1, HSV_RED},
- {7, 2, HSV_RED},
- {15, 1, HSV_RED}
-);
-
-const rgblight_segment_t PROGMEM func_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 16, HSV_GREEN}
-);
-
-const rgblight_segment_t PROGMEM kp_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 16, HSV_ORANGE}
-);
-
-const rgblight_segment_t PROGMEM adjust_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 16, HSV_BLUE}
-);
-
-const rgblight_segment_t PROGMEM capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {10, 4, HSV_WHITE}
-);
-
-const rgblight_segment_t PROGMEM numlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 2, HSV_PURPLE},
- {14, 2, HSV_PURPLE}
-);
-
-
-enum rgb_layer_index {
- L_RPT,
- L_GAME,
- L_FUNC,
- L_KP,
- L_ADJUST,
- L_CAPSLOCK,
- L_NUMLOCK,
-};
-
-const rgblight_segment_t * const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- [L_RPT] = rpt_layer,
- [L_GAME] = game_layer,
- [L_FUNC] = func_layer,
- [L_KP] = kp_layer,
- [L_ADJUST] = adjust_layer,
- [L_CAPSLOCK] = capslock_layer,
- [L_NUMLOCK] = numlock_layer
-);
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- rgblight_set_layer_state(L_RPT, layer_state_cmp(state, _RPT));
- rgblight_set_layer_state(L_GAME, layer_state_cmp(state, _GAME));
- rgblight_set_layer_state(L_FUNC, layer_state_cmp(state, _FUNC));
- rgblight_set_layer_state(L_KP, layer_state_cmp(state, _KP));
- rgblight_set_layer_state(L_ADJUST, layer_state_cmp(state, _ADJUST));
- rgblight_set_layer_state(L_CAPSLOCK, CAPSLOCK_ON);
- rgblight_set_layer_state(L_NUMLOCK, NUMLOCK_ON && layer_state_cmp(state, _KP));
- if (layer_state_cmp(state, _GAME) || layer_state_cmp(state, _RPT))
- autoshift_disable();
- else
- autoshift_enable();
- return state;
-}
-
-bool led_update_user(led_t led_state) {
- rgblight_set_layer_state(L_CAPSLOCK, led_state.caps_lock);
- rgblight_set_layer_state(L_NUMLOCK, led_state.num_lock && layer_state_is(_KP));
- return true;
-}
-
-void keyboard_post_init_keymap(void) {
- rgblight_layers = my_rgb_layers;
- rgb_was_enabled = rgblight_is_enabled();
- bspc_timer = 0;
-}
-
-void leader_end_user(void) {
- // layer navigation
- if (leader_sequence_one_key(KC_R)) { layer_invert(_RPT); }
- if (leader_sequence_one_key(KC_G)) { layer_invert(_GAME); }
- if (leader_sequence_one_key(KC_K)) { layer_invert(_KP); }
- if (leader_sequence_one_key(KC_KP_5)) { layer_invert(_KP); }
-
- // tmux navigation
- if (leader_sequence_one_key(KC_L)) { SEND_STRING(SS_LCTL("a") "n"); }
- if (leader_sequence_one_key(KC_H)) { SEND_STRING(SS_LCTL("a") "p"); }
- if (leader_sequence_one_key(KC_N)) { SEND_STRING(SS_LCTL("a") "c"); }
- if (leader_sequence_one_key(KC_W)) { SEND_STRING(SS_LCTL("a") "x"); }
- if (leader_sequence_one_key(KC_MINS)) { SEND_STRING(SS_LCTL("a") "-"); }
- if (leader_sequence_one_key(KC_QUOT)) { SEND_STRING(SS_LCTL("a") "\""); }
- if (leader_sequence_one_key(KC_1)) { SEND_STRING(SS_LCTL("a") "1"); }
- if (leader_sequence_one_key(KC_2)) { SEND_STRING(SS_LCTL("a") "2"); }
- if (leader_sequence_one_key(KC_3)) { SEND_STRING(SS_LCTL("a") "3"); }
- if (leader_sequence_one_key(KC_4)) { SEND_STRING(SS_LCTL("a") "4"); }
- if (leader_sequence_one_key(KC_5)) { SEND_STRING(SS_LCTL("a") "5"); }
- if (leader_sequence_one_key(KC_6)) { SEND_STRING(SS_LCTL("a") "6"); }
- if (leader_sequence_one_key(KC_7)) { SEND_STRING(SS_LCTL("a") "7"); }
- if (leader_sequence_one_key(KC_8)) { SEND_STRING(SS_LCTL("a") "8"); }
- if (leader_sequence_one_key(KC_9)) { SEND_STRING(SS_LCTL("a") "9"); }
-
- // secrets
- if (leader_sequence_two_keys(KC_SCLN, KC_M)) { send_secret_string(0); }
- if (leader_sequence_two_keys(KC_SCLN, KC_COMM)) { send_secret_string(1); }
- if (leader_sequence_two_keys(KC_SCLN, KC_DOT)) { send_secret_string(2); }
- if (leader_sequence_two_keys(KC_SCLN, KC_J)) { send_secret_string(3); }
- if (leader_sequence_two_keys(KC_SCLN, KC_K)) { send_secret_string(4); }
- if (leader_sequence_two_keys(KC_SCLN, KC_L)) { send_secret_string(5); }
-
- // fast control-C
- if (leader_sequence_one_key(KC_C)) { tap_code16(C(KC_C)); }
-
- // neovim: terminal escape
- if (leader_sequence_one_key(KC_BSLS)) {
- tap_code16(C(KC_BSLS));
- tap_code16(C(KC_N));
- }
-}
-
-void matrix_scan_keymap(void) {
- if (rgblight_is_enabled() && timer_elapsed(rgb_timer) > 1000) {
- rgb_idle_seconds++;
- rgb_timer = timer_read();
- }
- if (rgb_idle_seconds > IDLE_TIMEOUT) {
- rgb_was_enabled = rgblight_is_enabled();
- rgblight_disable_noeeprom();
- rgb_idle_seconds = 0;
- }
- // if MY_BSPC is held down too long, pretend like it wasn't and start
- // pressing backspace
- if (bspc_timer > 0 && timer_elapsed(bspc_timer) > LEADER_TIMEOUT) {
- layer_off(_FUNC);
- bspc_timer = 0;
- register_code(KC_BSPC);
- }
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- static bool bspc_del = false;
- static bool bspc_initiated_func = false;
- bool rc = true;
-
- rgb_idle_seconds = 0;
- if (!rgblight_is_enabled() && rgb_was_enabled)
- rgblight_enable_noeeprom();
-
- switch (keycode) {
- case MY_BSPC:
- if (record->event.pressed) {
- if (IS_LAYER_ON(_FUNC)) {
- // special case: if _FUNC was turned on by another key,
- // treat this as KC_DEL and don't do anything else
- bspc_del = true;
- register_code(KC_DEL);
- return false;
- } else {
- bspc_timer = timer_read();
- bspc_initiated_func = true;
- layer_on(_FUNC);
- }
- } else {
- if (bspc_del) {
- // special case: if _FUNC was turned on by another key,
- // treat this as KC_DEL and don't do anything else
- unregister_code(KC_DEL);
- bspc_del = false;
- return false;
- }
-
- if (bspc_initiated_func) {
- layer_off(_FUNC);
- bspc_initiated_func = false;
- }
-
- if (bspc_timer > 0) {
- // here the key was pressed and released before the timer
- // expired, so treat as a backspace tap and pretend we
- // never activated _FUNC
- bspc_timer = 0;
- tap_code(KC_BSPC);
- } else {
- // the timer went off, so KC_BSPC was registered in
- // matrix_scan_keymap. unregister it now
- unregister_code(KC_BSPC);
- }
- }
- return false; // special case, return now without resetting timer
- // other paths should set rc and break
- break;
- }
-
- // if something was pressed while MY_BSPC was held down, keep it pressed by
- // disabling the timer
- bspc_timer = 0;
- return rc;
-}
-
diff --git a/keyboards/dz60/keymaps/jdelkins/rules.mk b/keyboards/dz60/keymaps/jdelkins/rules.mk
deleted file mode 100644
index 2eacc54ea1..0000000000
--- a/keyboards/dz60/keymaps/jdelkins/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-LEADER_ENABLE = yes
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-NKRO_ENABLE = no
-TAP_DANCE_ENABLE = yes
-AUTO_SHIFT_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/dz60/keymaps/konstantin_b/config.h b/keyboards/dz60/keymaps/konstantin_b/config.h
deleted file mode 100644
index 4b511eb848..0000000000
--- a/keyboards/dz60/keymaps/konstantin_b/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define LAYER_FN
diff --git a/keyboards/dz60/keymaps/konstantin_b/keymap.c b/keyboards/dz60/keymaps/konstantin_b/keymap.c
deleted file mode 100644
index 3718669fa5..0000000000
--- a/keyboards/dz60/keymaps/konstantin_b/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "konstantin.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┬───┤
- * │ LShift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │RSft /│ ↑ │FnF│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬───┼───┼───┤
- * │LCtl│LGui│LAlt│ Space │RAG│RCt│ ← │ ↓ │ → │
- * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘
- */
- [L_BASE] = LAYOUT_60_b_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, RSF_SLS, KC_UP, FN_FNLK,
- KC_LCTL, KC_LGUI, KC_LALT, XXXXXXX, KC_SPC, XXXXXXX, RAL_RGU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Fn layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│PSc│Ins│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │ │ │Stp│Ply│Prv│Nxt│ Del │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ │M← │M↓ │M→ │MW↑│ │ │ │ │ │ │ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┬───┤
- * │ │MA0│MA2│MW←│MW→│ │ │App│Vo-│Vo+│ Mute │PgU│ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬───┼───┼───┤
- * │ │DtPR│DtNA│ MW↓ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘
- */
- [L_FN] = LAYOUT_60_b_ansi(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_INS,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_DEL,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, KC_APP, KC_VOLD, KC_VOLU, KC_MUTE, KC_PGUP, _______,
- _______, DST_P_R, DST_N_A, XXXXXXX, KC_WH_D, XXXXXXX, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
-};
diff --git a/keyboards/dz60/keymaps/konstantin_b/rules.mk b/keyboards/dz60/keymaps/konstantin_b/rules.mk
deleted file mode 100644
index 18ea01311f..0000000000
--- a/keyboards/dz60/keymaps/konstantin_b/rules.mk
+++ /dev/null
@@ -1,21 +0,0 @@
-USER_NAME := konstantin
-
-# Generic features
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-UNICODEMAP_ENABLE = no
-
-# Keyboard-specific features
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = no
-VIA_ENABLE = yes
-
-# Firmware size reduction
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/dz60/keymaps/mechmerlin/config.h b/keyboards/dz60/keymaps/mechmerlin/config.h
deleted file mode 100644
index 92d4cfb50a..0000000000
--- a/keyboards/dz60/keymaps/mechmerlin/config.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#pragma once
-
-// Turn off RGB when computer goes to sleep
-#ifdef RGBLIGHT_ENABLE
-#define RGBLIGHT_SLEEP
-#endif // RGBLIGHT_ENABLE
diff --git a/keyboards/dz60/keymaps/mechmerlin/keymap.c b/keyboards/dz60/keymaps/mechmerlin/keymap.c
deleted file mode 100644
index 795ba24798..0000000000
--- a/keyboards/dz60/keymaps/mechmerlin/keymap.c
+++ /dev/null
@@ -1,40 +0,0 @@
-#include QMK_KEYBOARD_H
-
-enum keyboard_layers {
- _BL = 0, // Base Layer
- _FL, // Function Layer
- _CL // Control Layer
-};
-
-// Custom #defined keycodes (shorter macros for readability)
-#define KC_CTCP LCTL_T(KC_CAPS)
-#define KC_RSSH RSFT_T(KC_SLSH)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BL] = LAYOUT_60_b_ansi(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CTCP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSSH, KC_UP, KC_DEL,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(_FL), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [_FL] = LAYOUT_60_b_ansi(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_PGUP, MO(_CL),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END),
-
- [_CL] = LAYOUT_60_b_ansi(
- QK_BOOT, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
-};
-
-// Set underglow RGB leds to yellow
-// Find the list of available colors in quantum/color.h
-void matrix_init_user(void) {
- rgblight_sethsv_noeeprom(HSV_YELLOW);
-}
diff --git a/keyboards/dz60/keymaps/mechmerlin/readme.md b/keyboards/dz60/keymaps/mechmerlin/readme.md
deleted file mode 100644
index bb8fbf84b3..0000000000
--- a/keyboards/dz60/keymaps/mechmerlin/readme.md
+++ /dev/null
@@ -1,68 +0,0 @@
-# MechMerlin's DZ60 Keymap
-
-The purpose of this keymap is to provide examples on how to do some common QMK features.
-
-Make example for this keyboard (after setting up your build environment):
-
- make dz60:mechmerlin
-
-## Merlin's DZ60 Hardware Info
----
-
-The DZ60 is a 60% pcb produced by KBDFans. It comes in two variants, USB Mini B and USB C. It supports many many layouts. It also supports both backlight and RGB underglow. The USB C variant does not have a hardware reset switch. USB C to C is not supported.
-
-Merlin's DZ60 uses
-- Layout B, in QMK this is LAYOUT_60_b_ansi.
-- USB C
-- 50g Zilents
-- Arrows are 78g Zilents
-- KPRepublic XD64 Case
-
-## Layers
----
-
-Merlin's keymap has three different layers. To switch layers you can use the `MO(X)` keycode, where `X` is the layer you want to switch to.
-
-### _BL
-
-This is the base layer also known as layer 0. It is a standard QWERTY layout. It has the `_FL` layer switch key.
-
-### _FL
-
-This is the function layer also known as layer 1. It utiizes the following:
-- Function Keys
-- Navigation Keys
-- Audio keys such as Mute, Volume Down and Volume Up.
-- `_CL` layer switch key
-
-### _CL
-
-This is the control layer also known as layer 2. It utilizes the following:
-- RGB Controls
-- `RESET` key
-
-## Non Standard Keycodes
----
-### RESET
-
-As long `BOOTMAGIC_ENABLE` is set to `yes` in `rules.mk`, the DZ60 can be put into bootloader mode by holding the `Escape` key while plugging in. However sometmes this doesn't work or is troublesome to do, might as well use the `RESET` keycode to accomplish this.
-
-### RSFT_T(KC_SLSH)
-
-Layout B is missing the `?` key and is instead replaced with a `right shift`. This keycode makes it so that the key can be tapped for `?` and held for `right shift`.
-
-### LCTL_T(KC_CAPS)
-
-`Caps Lock` is only ever used by tapping, why not use it as a `control` key when held? This keycode makes it so that the key can be tapped for `caps lock` and held for `control`.
-
-
-## RGB Lighting
----
-
-### RGBLIGHT_SLEEP
-
-This is set in `mechmerlin/config.h` so that when the computer goes to sleep, the RGB lights will also go to sleep on the keyboard. They will turn back on when the computer wakes.
-
-### RGB Underglow Color: Yellow
-
-This is set in `mechmerlin/keymap.c` in the `matrix_init_user` function. The list of available colors can be found in [`quantum/color.h`](https://github.com/qmk/qmk_firmware/blob/master/quantum/color.h).
diff --git a/keyboards/dz60/keymaps/spotpuff/keymap.c b/keyboards/dz60/keymaps/spotpuff/keymap.c
deleted file mode 100644
index c4f5cd9555..0000000000
--- a/keyboards/dz60/keymaps/spotpuff/keymap.c
+++ /dev/null
@@ -1,95 +0,0 @@
- /* Copyright 2020 Philip Chan
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-//Layers
-enum layer_names {
- _QWERTY,
- _FN,
- _MEDIA,
-};
-
-//Custom Keymap Definitions
-#define KC_CAD LALT(LCTL(KC_DEL))
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty Base layer
- * ,-----------------------------------------------------------------------------------------.
- * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BSpc| Del |
- * |-----------------------------------------------------------------------------------------+
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
- * |-----------------------------------------------------------------------------------------+
- * | `/_Media| A | S | D | F | G | H | J | K | L | ; | ' | Enter |
- * |-----------------------------------------------------------------------------------------+
- * | Shift | Z | X | C | V | B | N | M | , | . | / |PgUp | Up |PgDn |
- * |-----------------------------------------------------------------------------------------+
- * | LCtrl | LGui | LAlt | Space | Fn | Space |Home | End |Left |Down |Right|
- * `----------------------------------------------------------------------------------------'
- */
-
- [_QWERTY] = LAYOUT_directional(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- LT(_MEDIA,KC_GRV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_PGUP, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_SPC, KC_HOME, KC_END, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
-/* F-Key/Lighting/whatever layer
- * ,-----------------------------------------------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F0 | F11 | F12 | | Ins |
- * |-----------------------------------------------------------------------------------------+
- * | |R_Tog|R_HUI|R_SAI|R_VAI| | | | | | | | | KC_CAD |
- * |-----------------------------------------------------------------------------------------+
- * | Caps | |R_HUD|R_SAD| | | | | | | SLCK|PAUSE| Print Screen|
- * |-----------------------------------------------------------------------------------------+
- * | Trns |R_M_P|R_M_B|R_M_R|R_M_SW|R_M_S|R_M_K|R_M_X|R_M_G| | | |BLUP | |
- * |-----------------------------------------------------------------------------------------+
- * | Trns | Trns | Trns | | Trns | | | |BLTog|BLDN |BLInc|
- * `----------------------------------------------------------------------------------------'
- */
-
- [_FN] = LAYOUT_directional(
- XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_INS,
- XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CAD,
- KC_CAPS, XXXXXXX, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SCRL, KC_PAUS, KC_PSCR,
- _______, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, XXXXXXX, XXXXXXX, XXXXXXX, BL_UP, XXXXXXX,
- _______, _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, BL_TOGG, BL_DOWN, BL_STEP
- ),
-
-/* SFX/Multimedia/Numpad layer
- * ,-----------------------------------------------------------------------------------------.
- * | | | | | | |NumLk| | / | * | - | = | |Trns |Trns |
- * |-----------------------------------------------------------------------------------------+
- * | | | Prev | Play| Next| | | 7 | 8 | 9 | + | | | QK_BOOT |
- * |-----------------------------------------------------------------------------------------+
- * | Trns | |Mute | VUp | VDn | | | 4 | 5 | 6 | + | | Trns |
- * |-----------------------------------------------------------------------------------------+
- * | Trns | | | | | | | 1 | 2 | 3 |NumEN| | | |
- * |-----------------------------------------------------------------------------------------+
- * | Trns | Trns | Trns | Trns | Trns | 0 | . | | | | |
- * `----------------------------------------------------------------------------------------'
- */
-
- [_MEDIA] = LAYOUT_directional(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NUM, XXXXXXX, KC_PSLS, KC_PAST, KC_PMNS, KC_PEQL, XXXXXXX, _______, _______,
- XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, KC_PPLS, XXXXXXX, XXXXXXX, QK_BOOT,
- _______, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, KC_PPLS, XXXXXXX, _______,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_P1, KC_P2, KC_P3, KC_PENT, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, _______, _______, _______, _______, KC_P0, KC_PDOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- )
-};
diff --git a/keyboards/dz60/keymaps/spotpuff/rules.mk b/keyboards/dz60/keymaps/spotpuff/rules.mk
deleted file mode 100644
index 7b4abdbc1b..0000000000
--- a/keyboards/dz60/keymaps/spotpuff/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
diff --git a/keyboards/dz60/keymaps/twschum_b_4_10/config.h b/keyboards/dz60/keymaps/twschum_b_4_10/config.h
deleted file mode 100644
index 15cabda364..0000000000
--- a/keyboards/dz60/keymaps/twschum_b_4_10/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#pragma once
-
-// number of taps for TT Tap-Toggle keys to toggle
-#ifdef TAPPING_TOGGLE
-#undef TAPPING_TOGGLE
-#endif
-#define TAPPING_TOGGLE 2
-
-// time in ms that counts as a "tap" for various features
-#ifdef TAPPING_TERM
-#undef TAPPING_TERM
-#endif
-#define TAPPING_TERM 100
-
-// https://docs.qmk.fm/features/mouse-keys#configuring-the-behavior-of-mousekeys
-#define MOUSEKEY_DELAY 0
-#define MOUSEKEY_INTERVAL 20
-#define MOUSEKEY_MAX_SPEED 10
-#define MOUSEKEY_TIME_TO_MAX 15
-#define MOUSEKEY_WHEEL_MAX_SPEED 1
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 255
-
-// flags from user/twschum/
-#define TWSCHUM_TAPPING_CTRL_PREFIX 1
diff --git a/keyboards/dz60/keymaps/twschum_b_4_10/keymap.c b/keyboards/dz60/keymaps/twschum_b_4_10/keymap.c
deleted file mode 100644
index a2cba4fe67..0000000000
--- a/keyboards/dz60/keymaps/twschum_b_4_10/keymap.c
+++ /dev/null
@@ -1,123 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "twschum.h"
-
-/* DZ60 layout using following options (from layouts diagram on KBDfans):
- * - plate B (2.25u lshift)
- * - opt 4 (1.75, 1, 1 on rshift)
- * - opt 10 (2.75, 1.25, 2.25 on space, 5x1u bottom right keys)
- * http://www.keyboard-layout-editor.com/#/gists/225f0f4dcf6671405f744fabe314627c
- */
-
-
-#define LAYOUT_b_4_10( \
- K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, \
- K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
- K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
- K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K312, K313, K314, \
- K400, K401, K403, K404, K406, K408, K410, K411, K412, K413, K414 \
- ) { \
- { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, XXXXXXX, K014 }, \
- { K100, XXXXXXX, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
- { K200, XXXXXXX, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, XXXXXXX }, \
- { K300, XXXXXXX, K302, K303, K304, K305, K306, K307, K308, K309, K310, XXXXXXX, K312, K313, K314 }, \
- { K400, K401, XXXXXXX, K403, K404, XXXXXXX, K406, XXXXXXX, K408, XXXXXXX, K410, K411, K412, K413, K414 } \
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* base 60% qwerty */
- LAYOUT_b_4_10(
- // |--------|----1---|----2---|----3---|---4----|---5----|---6----|---7----|---8----|---9----|---0----|-- - ---|-- = ---||------2.0-------|
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- // |--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------||----------------|
- //
- // |----1.5-----||---Q----|---W----|---E----|---R----|---T----|---Y----|---U----|---I----|---O----|---P----|---[----|---]----|----1.5-----|
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- // |------------||--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|------------|
- //
- // |----1.75------||---A----|---S----|---D----|---F----|---G----|---H----|---J----|---K----|---L----|---;----|---'----|------2.25--------||
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- // |--------------||--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|------------------||
- //
- // |------2.25--------|---Z----|---X----|---C----|---V----|---B----|---N----|---M----|---,----|---.----||----1.75------|--------|--------||
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, /*SFT_T*/KC_SLSH, KC_UP, VIM_START,
- // |------------------|--------|--------|--------|--------|--------|--------|--------|--------|--------||--------------|--------|--------||
- //
- // |---1.25---|---1.25---||---1.25---||--------2.75----------||---1.25---|------2.25--------||--------|--------|--------|--------|--------|
- MO(_Fn), KC_LALT, KC_LGUI, KC_SPC, TT(_Nav), MO(_Fn), TG(_Num), TT(_Cfg), KC_LEFT, KC_DOWN, KC_RGHT
- // |----------|----------||----------||----------------------||----------|------------------||--------|--------|--------|--------|--------|
- ),
-
- /* vim mode */
- LAYOUT_b_4_10(
- VIM_ESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, VIM_W, VIM_E, KC_R, _______, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, _______, _______, _______,
- _______, VIM_A, VIM_S, VIM_D, _______, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, _______, _______, _______,
- VIM_SHIFT, _______, VIM_X, VIM_C, VIM_V, VIM_B, _______, _______, VIM_COMMA, VIM_PERIOD, _______, _______, VIM_ESC,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- /* primary fn layer */
- LAYOUT_b_4_10(
- // |--------|----1---|----2---|----3---|---4----|---5----|---6----|---7----|---8----|---9----|---0----|-- - ---|-- = ---||------2.0-------|
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- // |--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------||----------------|
- //
- // |----1.5-----||---Q----|---W----|---E----|---R----|---T----|---Y----|---U----|---I----|---O----|---P----|---[----|---]----|----1.5-----|
- KC_TAB, CODE_PASTE, KC_HOME, KC_UP, KC_END, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, LESS_PD, XXXXXXX, XXXXXXX, CODE_PASTE,
- // |------------||--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|------------|
- //
- // |----1.75------||---A----|---S----|---D----|---F----|---G----|---H----|---J----|---K----|---L----|---;----|---'----|------2.25--------||
- KC_CAPS, SALT_CMD, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, KC_ENT,
- // |--------------||--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|--------|------------------||
- //
- // |------2.25--------|---Z----|---X----|---C----|---V----|---B----|---N----|---M----|---,----|---.----||----1.75------|--------|--------||
- KC_LSFT, KC_MPRV, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, _______, _______, XXXXXXX, XXXXXXX, QK_LOCK, KC_PGUP, KC_INS,
- // |------------------|--------|--------|--------|--------|--------|--------|--------|--------|--------||--------------|--------|--------||
- //
- // |---1.25---|---1.25---||---1.25---||--------2.75----------||---1.25---|------2.25--------||--------|--------|--------|--------|--------|
- KC_MEH, KC_LALT, KC_LGUI, KC_MEDIA_PLAY_PAUSE, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- // |----------|----------||----------||----------------------||----------|------------------||--------|--------|--------|--------|--------|
- ),
-
- /* mouse navigation */
- LAYOUT_b_4_10(
- TO(_Base), KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, XXXXXXX, XXXXXXX, KC_SLEP, KC_PGDN, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_LCTL, KC_MS_BTN3, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, XXXXXXX, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, KC_MS_BTN1, _______, _______, _______, _______, _______, _______, _______
- ),
-
- /* numpad layer */
- LAYOUT_b_4_10(
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSPC,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_MINUS, KC_KP_PLUS, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_SLASH, KC_KP_ASTERISK, XXXXXXX, KC_ENT,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_DOT, KC_KP_ENTER, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_0, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
-
- /* RGB lighting controls and keyboard config, reset */
- LAYOUT_b_4_10(
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG_L0_RGB, XXXXXXX, XXXXXXX, TO(_None),
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUD,
- EN_CTRL_SHORTCUTS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG_LAYER_RGB, RGB_MODE_PLAIN, RGB_MODE_FORWARD, KC_RSFT,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MAKE, XXXXXXX, XXXXXXX, RGB_TOG, RGB_VAI, RGB_HUI,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, RGB_SAD, RGB_VAD, RGB_SAI
- ),
-
- /* soft "off" state where none of the keystroke register */
- LAYOUT_b_4_10(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TO(_Base),
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-};
-
-uint8_t vim_cmd_layer(void) {
- return _Vim;
-}
diff --git a/keyboards/dz60/keymaps/twschum_b_4_10/layout.json b/keyboards/dz60/keymaps/twschum_b_4_10/layout.json
deleted file mode 100644
index cd484f9d89..0000000000
--- a/keyboards/dz60/keymaps/twschum_b_4_10/layout.json
+++ /dev/null
@@ -1,4877 +0,0 @@
-{
- "configKeymap":{
- "keys":[
- "K00",
- "K01",
- "K02",
- "K03",
- "K04",
- "K05",
- "K06",
- "K07",
- "K08",
- "K09",
- "K0A",
- "K0B",
- "K0C",
- "K0D",
- "K2D",
- "K10",
- "K11",
- "K12",
- "K13",
- "K14",
- "K15",
- "K16",
- "K17",
- "K18",
- "K19",
- "K1A",
- "K1B",
- "K1C",
- "K1D",
- "K20",
- "K21",
- "K22",
- "K23",
- "K24",
- "K25",
- "K26",
- "K27",
- "K28",
- "K29",
- "K2A",
- "K2B",
- "K2C",
- "K30",
- "K31",
- "K32",
- "K33",
- "K34",
- "K35",
- "K36",
- "K37",
- "K38",
- "K39",
- "K3A",
- "K3B",
- "K3C",
- "K3D",
- "K40",
- "K41",
- "K42",
- "K44",
- "K45",
- "K46",
- "K48",
- "K49",
- "K4A",
- "K4B",
- "K4C"
- ],
- "positions":[
- [
- "K00",
- "K01",
- "K02",
- "K03",
- "K04",
- "K05",
- "K06",
- "K07",
- "K08",
- "K09",
- "K0A",
- "K0B",
- "K0C",
- "K0D"
- ],
- [
- "K10",
- "K11",
- "K12",
- "K13",
- "K14",
- "K15",
- "K16",
- "K17",
- "K18",
- "K19",
- "K1A",
- "K1B",
- "K1C",
- "K1D"
- ],
- [
- "K20",
- "K21",
- "K22",
- "K23",
- "K24",
- "K25",
- "K26",
- "K27",
- "K28",
- "K29",
- "K2A",
- "K2B",
- "K2C",
- "K2D"
- ],
- [
- "K30",
- "K31",
- "K32",
- "K33",
- "K34",
- "K35",
- "K36",
- "K37",
- "K38",
- "K39",
- "K3A",
- "K3B",
- "K3C",
- "K3D"
- ],
- [
- "K40",
- "K41",
- "K42",
- "KC_NO",
- "K44",
- "K45",
- "K46",
- "KC_NO",
- "K48",
- "K49",
- "K4A",
- "K4B",
- "K4C",
- "KC_NO"
- ]
- ]
- },
- "keySections":[
- {
- "row1":[
- {
- "id":"k00",
- "value":"ESC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k01",
- "value":"1",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k02",
- "value":"2",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k03",
- "value":"3",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k04",
- "value":"4",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k05",
- "value":"5",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k06",
- "value":"6",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k07",
- "value":"7",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k08",
- "value":"8",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k09",
- "value":"9",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0A",
- "value":"0",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0B",
- "value":"MINS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0C",
- "value":"EQL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "backspace":[
- [
- {
- "id":"k0D",
- "value":"BSPC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k200",
- "zone":"Backspace"
- },
- {
- "id":"k2D",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k0D",
- "value":"PSCR",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Backspace"
- },
- {
- "id":"k2D",
- "value":"PAUS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Backspace"
- }
- ]
- ],
- "row2":[
- {
- "id":"k10",
- "value":"TAB",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k11",
- "value":"Q",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k12",
- "value":"W",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k13",
- "value":"E",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k14",
- "value":"R",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k15",
- "value":"T",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k16",
- "value":"Y",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k17",
- "value":"U",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k18",
- "value":"I",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k19",
- "value":"O",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1A",
- "value":"P",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1B",
- "value":"LBRC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1C",
- "value":"RBRC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "row2pipe":[
- [
- {
- "id":"k1D",
- "value":"BSLS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150",
- "zone":"Enter"
- }
- ],
- [
- {
- "id":"k1D",
- "value":"ENT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"kISO",
- "zone":"Enter"
- }
- ]
- ],
- "caps":[
- [
- {
- "id":"k20",
- "value":"LCTL",
- "type":"normal",
- "secondary":"LCTL",
- "showMenu":false,
- "shape":"k175",
- "zone":"Caps Lock"
- }
- ],
- [
- {
- "id":"k20",
- "value":"CAPS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175stepped",
- "zone":"Caps Lock"
- }
- ]
- ],
- "row3":[
- {
- "id":"k21",
- "value":"A",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k22",
- "value":"S",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k23",
- "value":"D",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k24",
- "value":"F",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k25",
- "value":"G",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k26",
- "value":"H",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k27",
- "value":"J",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k28",
- "value":"K",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k29",
- "value":"L",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2A",
- "value":"SCLN",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2B",
- "value":"QUOT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "enter":[
- [
- {
- "id":"k2C",
- "value":"ENT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225",
- "zone":"Enter"
- }
- ],
- [
- {
- "id":"k2C",
- "value":"NUHS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Enter"
- }
- ]
- ],
- "leftShift":[
- [
- {
- "id":"k30",
- "value":"LSFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225",
- "zone":"Left Shift"
- },
- {
- "id":"k31",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k30",
- "value":"LSFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Left Shift"
- },
- {
- "id":"k31",
- "value":"NUBS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Left Shift"
- }
- ]
- ],
- "row4":[
- {
- "id":"k32",
- "value":"Z",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k33",
- "value":"X",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k34",
- "value":"C",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k35",
- "value":"V",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k36",
- "value":"B",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k37",
- "value":"N",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k38",
- "value":"M",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k39",
- "value":"COMM",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3A",
- "value":"DOT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "rightShift":[
- [
- {
- "id":"k3B",
- "value":"SLSH",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Right Shift"
- },
- {
- "id":"k3C",
- "value":"RSFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275",
- "zone":"Right Shift"
- },
- {
- "id":"k3D",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"SLSH",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Right Shift"
- },
- {
- "id":"k3C",
- "value":"RSFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175",
- "zone":"Right Shift"
- },
- {
- "id":"k3D",
- "value":"L1",
- "type":"momentary",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Right Shift"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"SLSH",
- "type":"tapkey",
- "secondary":"RSFT",
- "showMenu":false,
- "shape":"k175",
- "zone":"Right Shift"
- },
- {
- "id":"k3C",
- "value":"UP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Right Shift"
- },
- {
- "id":"k3D",
- "value":"HYPR",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Right Shift"
- }
- ]
- ],
- "row5":[
- [
- {
- "id":"k40",
- "value":"MEH",
- "type":"normal",
- "secondary":"MEH",
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Row"
- },
- {
- "id":"k41",
- "value":"LALT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Row"
- },
- {
- "id":"k42",
- "value":"LGUI",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Row"
- }
- ],
- [
- {
- "id":"k40",
- "value":"LCTL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150",
- "zone":"Bottom Row"
- },
- {
- "id":"k41",
- "value":"LGUI",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Row"
- },
- {
- "id":"k42",
- "value":"LALT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150",
- "zone":"Bottom Row"
- }
- ]
- ],
- "space":[
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"SPC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k625",
- "zone":"Space"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"SPC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275",
- "zone":"Space"
- },
- {
- "id":"k45",
- "value":"L2",
- "type":"taptoggle",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Space"
- },
- {
- "id":"k46",
- "value":"L1",
- "type":"momentary",
- "secondary":null,
- "showMenu":false,
- "shape":"k225",
- "zone":"Space"
- }
- ],
- [
- {
- "id":"k44",
- "value":"ENT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225",
- "zone":"Space"
- },
- {
- "id":"k45",
- "value":"BL_STEP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Space"
- },
- {
- "id":"k46",
- "value":"SPC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275",
- "zone":"Space"
- }
- ]
- ],
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"SPC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k700",
- "zone":"Space"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"ENT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275",
- "zone":"Space"
- },
- {
- "id":"k45",
- "value":"BL_STEP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150",
- "zone":"Space"
- },
- {
- "id":"k46",
- "value":"SPC",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275",
- "zone":"Space"
- }
- ]
- ]
- ],
- "bottomRight":[
- [
- [
- {
- "id":"k48",
- "value":"RGUI",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Right"
- },
- {
- "id":"k49",
- "value":"RALT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Right"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"APP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Right"
- },
- {
- "id":"k4C",
- "value":"RCTL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125",
- "zone":"Bottom Right"
- }
- ],
- [
- {
- "id":"k48",
- "value":"L3",
- "type":"taptoggle",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k49",
- "value":"L4",
- "type":"direct",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4A",
- "value":"LEFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4B",
- "value":"DOWN",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4C",
- "value":"RIGHT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- }
- ]
- ],
- [
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"RALT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150",
- "zone":"Bottom Right"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"APP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4C",
- "value":"RCTL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150",
- "zone":"Bottom Right"
- }
- ],
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"RALT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4A",
- "value":"LEFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4B",
- "value":"DOWN",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- },
- {
- "id":"k4C",
- "value":"RIGHT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100",
- "zone":"Bottom Right"
- }
- ]
- ]
- ]
- },
- {
- "row1":[
- {
- "id":"k00",
- "value":"GRV",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k01",
- "value":"F1",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k02",
- "value":"F2",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k03",
- "value":"F3",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k04",
- "value":"F4",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k05",
- "value":"F5",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k06",
- "value":"F6",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k07",
- "value":"F7",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k08",
- "value":"F8",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k09",
- "value":"F9",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0A",
- "value":"F10",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0B",
- "value":"F11",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0C",
- "value":"F12",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "backspace":[
- [
- {
- "id":"k0D",
- "value":"DEL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k200"
- },
- {
- "id":"k2D",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row2":[
- {
- "id":"k10",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k11",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k12",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k13",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k14",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k15",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k16",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k17",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k18",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k19",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "row2pipe":[
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"kISO"
- }
- ]
- ],
- "caps":[
- [
- {
- "id":"k20",
- "value":"CAPS",
- "type":"normal",
- "secondary":"LCTL",
- "showMenu":false,
- "shape":"k175"
- }
- ],
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175stepped"
- }
- ]
- ],
- "row3":[
- {
- "id":"k21",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k22",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k23",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k24",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k25",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k26",
- "value":"LEFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k27",
- "value":"DOWN",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k28",
- "value":"UP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k29",
- "value":"RIGHT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "enter":[
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "leftShift":[
- [
- {
- "id":"k30",
- "value":"LSFT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k31",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k31",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row4":[
- {
- "id":"k32",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k33",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k34",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k35",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k36",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k37",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k38",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k39",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "rightShift":[
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k3D",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":"RSFT",
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row5":[
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":"MEH",
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ]
- ],
- "space":[
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k625"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ],
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k700"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ]
- ],
- "bottomRight":[
- [
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- [
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ]
- ]
- },
- {
- "row1":[
- {
- "id":"k00",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k01",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k02",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k03",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k04",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k05",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k06",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k07",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k08",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k09",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "backspace":[
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k200"
- },
- {
- "id":"k2D",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row2":[
- {
- "id":"k10",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k11",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k12",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k13",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k14",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k15",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k16",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k17",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k18",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k19",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "row2pipe":[
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"kISO"
- }
- ]
- ],
- "caps":[
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":"LCTL",
- "showMenu":false,
- "shape":"k175"
- }
- ],
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175stepped"
- }
- ]
- ],
- "row3":[
- {
- "id":"k21",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k22",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k23",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k24",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k25",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k26",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k27",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k28",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k29",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "enter":[
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "leftShift":[
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k31",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k31",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row4":[
- {
- "id":"k32",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k33",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k34",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k35",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k36",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k37",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k38",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k39",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "rightShift":[
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k3D",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":"RSFT",
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row5":[
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":"MEH",
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ]
- ],
- "space":[
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k625"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ],
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k700"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ]
- ],
- "bottomRight":[
- [
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- [
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ]
- ]
- },
- {
- "row1":[
- {
- "id":"k00",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k01",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k02",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k03",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k04",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k05",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k06",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k07",
- "value":"PSLS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k08",
- "value":"PAST",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k09",
- "value":"PEQL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "backspace":[
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k200"
- },
- {
- "id":"k2D",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row2":[
- {
- "id":"k10",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k11",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k12",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k13",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k14",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k15",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k16",
- "value":"P7",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k17",
- "value":"P8",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k18",
- "value":"P8",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k19",
- "value":"PMNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "row2pipe":[
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"kISO"
- }
- ]
- ],
- "caps":[
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":"LCTL",
- "showMenu":false,
- "shape":"k175"
- }
- ],
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175stepped"
- }
- ]
- ],
- "row3":[
- {
- "id":"k21",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k22",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k23",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k24",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k25",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k26",
- "value":"P4",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k27",
- "value":"P5",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k28",
- "value":"P6",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k29",
- "value":"PPLS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "enter":[
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "leftShift":[
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k31",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k31",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row4":[
- {
- "id":"k32",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k33",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k34",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k35",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k36",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k37",
- "value":"P1",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k38",
- "value":"P2",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k39",
- "value":"P3",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3A",
- "value":"PDOT",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "rightShift":[
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k3D",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"PENT",
- "type":"normal",
- "secondary":"RSFT",
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row5":[
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":"MEH",
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ]
- ],
- "space":[
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k625"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"P0",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ],
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k700"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ]
- ],
- "bottomRight":[
- [
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- [
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ]
- ]
- },
- {
- "row1":[
- {
- "id":"k00",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k01",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k02",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k03",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k04",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k05",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k06",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k07",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k08",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k09",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k0C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "backspace":[
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k200"
- },
- {
- "id":"k2D",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k0D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row2":[
- {
- "id":"k10",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k11",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k12",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k13",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k14",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k15",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k16",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k17",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k18",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k19",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k1C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "row2pipe":[
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k1D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"kISO"
- }
- ]
- ],
- "caps":[
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":"LCTL",
- "showMenu":false,
- "shape":"k175"
- }
- ],
- [
- {
- "id":"k20",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175stepped"
- }
- ]
- ],
- "row3":[
- {
- "id":"k21",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k22",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k23",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k24",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k25",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k26",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k27",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k28",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k29",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k2B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "enter":[
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k2C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "leftShift":[
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k31",
- "value":"NO",
- "type":"nodisplay",
- "showMenu":false
- }
- ],
- [
- {
- "id":"k30",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k31",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row4":[
- {
- "id":"k32",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k33",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k34",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k35",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k36",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k37",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k38",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k39",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- "rightShift":[
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k3D",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3D",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ],
- [
- {
- "id":"k3B",
- "value":"TRNS",
- "type":"normal",
- "secondary":"RSFT",
- "showMenu":false,
- "shape":"k175"
- },
- {
- "id":"k3C",
- "value":"HOME",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k3D",
- "value":"PGUP",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- "row5":[
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":"MEH",
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k40",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k41",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k42",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ]
- ],
- "space":[
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k625"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k225"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ],
- [
- [
- {
- "id":"k44",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k700"
- },
- {
- "id":"k46",
- "value":"NO",
- "type":"nodisplay"
- }
- ],
- [
- {
- "id":"k44",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- },
- {
- "id":"k45",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k46",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k275"
- }
- ]
- ]
- ],
- "bottomRight":[
- [
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k125"
- }
- ],
- [
- {
- "id":"k48",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"DEL",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"HOME",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"PGDN",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ],
- [
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- },
- {
- "id":"k4A",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k150"
- }
- ],
- [
- {
- "id":"k48",
- "value":"NO",
- "type":"nodisplay"
- },
- {
- "id":"k49",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4A",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4B",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- },
- {
- "id":"k4C",
- "value":"TRNS",
- "type":"normal",
- "secondary":null,
- "showMenu":false,
- "shape":"k100"
- }
- ]
- ]
- ]
- }
- ],
- "layoutName":"twschum_DZ60_b_4_10_v1.2",
- "timestamp":1525116588644
-}
diff --git a/keyboards/dz60/keymaps/twschum_b_4_10/rules.mk b/keyboards/dz60/keymaps/twschum_b_4_10/rules.mk
deleted file mode 100644
index 932a64748d..0000000000
--- a/keyboards/dz60/keymaps/twschum_b_4_10/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-# override the options specified in dz60/rules.mk
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-NKRO_ENABLE = yes # USB Nkey Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-KEY_LOCK_ENABLE = yes
-
-# Enables including users/twschum/twschum.h
-USER_NAME := twschum
diff --git a/keyboards/dz60/keymaps/xtonhasvim/config.h b/keyboards/dz60/keymaps/xtonhasvim/config.h
deleted file mode 100644
index b1f549e0ba..0000000000
--- a/keyboards/dz60/keymaps/xtonhasvim/config.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef CONFIG_KEYMAP_H
-#define CONFIG_KEYMAP_H
-
-#include "../../config.h"
-
-// help for fast typist+dual function keys?
-#define PERMISSIVE_HOLD
-
-/* speed up mousekeys a bit */
-#define MOUSEKEY_DELAY 50
-#define MOUSEKEY_INTERVAL 20
-#define MOUSEKEY_MAX_SPEED 8
-#define MOUSEKEY_TIME_TO_MAX 30
-#define MOUSEKEY_WHEEL_MAX_SPEED 8
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 40
-
-#endif
diff --git a/keyboards/dz60/keymaps/xtonhasvim/keymap.c b/keyboards/dz60/keymaps/xtonhasvim/keymap.c
deleted file mode 100644
index 997ae91547..0000000000
--- a/keyboards/dz60/keymaps/xtonhasvim/keymap.c
+++ /dev/null
@@ -1,87 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xtonhasvim.h"
-
-enum layers {
- _QWERTY,
- _FUN,
- _MOVE,
- _MOUSE,
- _CMD
-};
-
-extern uint8_t vim_cmd_layer(void) { return _CMD; }
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(_MOVE,KC_SCLN), KC_QUOT, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
- LSFT(KC_LALT), KC_LALT, KC_LGUI, VIM_START, TG(_MOUSE), KC_SPC, KC_RGUI, KC_RALT, X_____X, KC_RCTL, MO(_FUN)),
-
- [_FUN] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL,
- _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, BL_DOWN,BL_TOGG, BL_UP, BL_STEP, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_QWERTY)),
-
- [_MOVE] = LAYOUT(
- X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_HOME, KC_PGDN, KC_PGUP, KC_END, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X, LGUI(KC_LBRC), LGUI(LSFT(KC_LBRC)), LGUI(LSFT(KC_RBRC)), LGUI(KC_RBRC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, X_____X, X_____X, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_QWERTY)),
-
-
- [_MOUSE] = LAYOUT(
- X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X, X_____X, KC_MS_UP, X_____X, X_____X, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_RIGHT, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X,KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, X_____X, X_____X, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, X_____X, X_____X, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_QWERTY)),
-
- [_CMD] = LAYOUT(
- X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X, VIM_W, VIM_E, X_____X, X_____X, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, X_____X, X_____X, X_____X,
- VIM_ESC, VIM_A, VIM_S, VIM_D, X_____X, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, X_____X, X_____X, X_____X,
- VIM_SHIFT, X_____X, X_____X, VIM_X, VIM_C, VIM_V, VIM_B, X_____X, X_____X, VIM_COMMA, VIM_PERIOD, X_____X, VIM_SHIFT,X_____X,
- _______, _______, _______, TO(_QWERTY), X_____X, X_____X, _______, _______, _______, _______, TO(_QWERTY)),
-
-};
-
-#define LED_BIT 1 << 2
-#define LED_MASK ~(1 << 2)
-
-void user_led_on(void) {
- DDRB |= LED_BIT;
- PORTB &= LED_MASK;
-}
-
-void user_led_off(void) {
- DDRB &= ~LED_BIT;
- PORTB &= LED_MASK;
-}
-
-void matrix_init_user(void) {
- user_led_off();
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- static uint32_t last_state = 0;
-
- if(last_state != state) {
- switch (get_highest_layer(state)) {
- case _CMD:
- user_led_on();
- break;
- default:
- user_led_off();
- break;
- }
- last_state = state;
- }
- return state;
-}
diff --git a/keyboards/dz60/keymaps/xtonhasvim/readme.md b/keyboards/dz60/keymaps/xtonhasvim/readme.md
deleted file mode 100644
index 5d0e38a3eb..0000000000
--- a/keyboards/dz60/keymaps/xtonhasvim/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Xton has a DZ60 and it's Vimtastic!
-
-Mine has a split spacebar, no arrowkeys and an opaque case. Changes from the default layout:
-
-* Vim mode toggled by hitting left spacebar (see `users/xtonhasvim`). Reusing the capslock LED to indicate VIM is on.
-* Momentary directional control by holding down `;`.
-* Mousekeys toggled with middle space button.
-* Escape is dual-function with control (which replaces capslock AS IT SHOULD BE).
-* Bottom left key is the "halp my kb doesn't work" key that always dumps you back to QWERTY.
-
diff --git a/keyboards/dztech/dz60rgb/dz60rgb.c b/keyboards/dztech/dz60rgb/dz60rgb.c
index 811dd0cd91..826e3502eb 100644
--- a/keyboards/dztech/dz60rgb/dz60rgb.c
+++ b/keyboards/dztech/dz60rgb/dz60rgb.c
@@ -1,7 +1,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, K_14, J_14, L_14 },
{ 0, K_13, J_13, L_13 },
{ 0, K_12, J_12, L_12 },
diff --git a/keyboards/dztech/dz60rgb/keymaps/moults31/keymap.c b/keyboards/dztech/dz60rgb/keymaps/moults31/keymap.c
deleted file mode 100644
index a659770f82..0000000000
--- a/keyboards/dztech/dz60rgb/keymaps/moults31/keymap.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright 2021 moults31
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- CTL_T(KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_SLSH, KC_RSHFT, KC_UP, LT(2, KC_DEL),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_COMM, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_HOME, KC_END, QK_BOOT,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, EE_CLR,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE,
- _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
- ),
- [2] = LAYOUT(
- RGB_MOD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, EE_CLR, QK_BOOT,
- _______, RGB_SAD, RGB_HUD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, _______,
- _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_VAD, RGB_SPD
- ),
-};
diff --git a/keyboards/dztech/dz60rgb/keymaps/moults31/readme.md b/keyboards/dztech/dz60rgb/keymaps/moults31/readme.md
deleted file mode 100644
index 19bccf13e6..0000000000
--- a/keyboards/dztech/dz60rgb/keymaps/moults31/readme.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# moults31 DZ60RBG V2 Layout
-
-Similar to the default dz60rgb v2 layout with some minor changes for quality of life in programming.
-
-Brief summary of improvements over default:
-* More intuitive media keys in layer 1
-* More intuitive RGB control keys in layer 2
-* Standard left-alt
-* Anne Pro 2 style home/end placement in layer 1
-* Grave key moved to right-alt position for easier ctrl-grave vscode shortcut
-* Removed layer 4 (mac layout?)
diff --git a/keyboards/dztech/dz60rgb/v1/config.h b/keyboards/dztech/dz60rgb/v1/config.h
index 82d7b6d1e1..af72678922 100644
--- a/keyboards/dztech/dz60rgb/v1/config.h
+++ b/keyboards/dztech/dz60rgb/v1/config.h
@@ -55,7 +55,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 63
#endif
diff --git a/keyboards/dztech/dz60rgb/v2/config.h b/keyboards/dztech/dz60rgb/v2/config.h
index 094478f34d..2470e7b3f9 100644
--- a/keyboards/dztech/dz60rgb/v2/config.h
+++ b/keyboards/dztech/dz60rgb/v2/config.h
@@ -53,7 +53,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 63
#endif
diff --git a/keyboards/dztech/dz60rgb/v2_1/config.h b/keyboards/dztech/dz60rgb/v2_1/config.h
index a753832ed1..05cfa7d4e1 100644
--- a/keyboards/dztech/dz60rgb/v2_1/config.h
+++ b/keyboards/dztech/dz60rgb/v2_1/config.h
@@ -69,7 +69,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 63
#endif
diff --git a/keyboards/dztech/dz60rgb_ansi/dz60rgb_ansi.c b/keyboards/dztech/dz60rgb_ansi/dz60rgb_ansi.c
index b607a58a4e..5c06922028 100644
--- a/keyboards/dztech/dz60rgb_ansi/dz60rgb_ansi.c
+++ b/keyboards/dztech/dz60rgb_ansi/dz60rgb_ansi.c
@@ -1,7 +1,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, K_14, J_14, L_14 },
{ 0, K_13, J_13, L_13 },
{ 0, K_12, J_12, L_12 },
diff --git a/keyboards/dztech/dz60rgb_ansi/keymaps/badger/keymap.c b/keyboards/dztech/dz60rgb_ansi/keymaps/badger/keymap.c
deleted file mode 100644
index 3de7e1c194..0000000000
--- a/keyboards/dztech/dz60rgb_ansi/keymaps/badger/keymap.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
-Copyright 2020 Dan White <opensource@bluetufa.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include "badger.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY_MAC] = LAYOUT_60_ansi(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MOVE_MAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, ADJUST, KC_RGUI, KC_RALT, MAC_POP),
-
- [_MOVE_MAC] = LAYOUT_60_ansi(
- MAC_FRC, MM_LEFT, MM_RGHT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_0, IJ_TOP, IJ_BOTT, KC_DEL,
- KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, IJ_BACK, IJ_FWD, KC_NEXT,
- _______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN, _______,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_QWERTY_LINUX] = LAYOUT_60_ansi(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MOVE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, ADJUST, KC_LALT, KC_RGUI, KC_RCTL),
-
- [_MOVE_LINUX] = LAYOUT_60_ansi(
- KC_GRV, VD_1, VD_2, VD_3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- KC_BACK, WM_VD1, WM_UH, WM_VD2, QK_BOOT, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, _______, _______, KC_NEXT,
- _______, WM_LH, WM_MAX, WM_RH, WD_FRWD, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN, _______,
- _______, WM_VD3, WM_BH, OS_COPY, OS_PAST, WD_BACK, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_ADJUST] = LAYOUT_60_ansi(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, _______, _______, KC_WREF, KC_MSTP, KC_MPLY, KC_PGUP, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, DF_1, DF_2, KC_CAPS, _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______,
- _______, _______, _______, _______, _______, _______, _______, MO(_CONFIG)),
-
- [_CONFIG] = LAYOUT_60_ansi(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
- _______, GE_SWAP, GE_NORM, DB_TOGG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, RGB_M_B, _______, _______, RGB_TOG, _______,
- _______, LAG_SWP, LAG_NRM, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, RGB_M_K, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______)
-};
-
diff --git a/keyboards/dztech/dz60rgb_ansi/v1/config.h b/keyboards/dztech/dz60rgb_ansi/v1/config.h
index 5405d671a5..674871ec49 100644
--- a/keyboards/dztech/dz60rgb_ansi/v1/config.h
+++ b/keyboards/dztech/dz60rgb_ansi/v1/config.h
@@ -55,7 +55,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 61
#endif
diff --git a/keyboards/dztech/dz60rgb_ansi/v2/config.h b/keyboards/dztech/dz60rgb_ansi/v2/config.h
index 545aa64eea..0b458818bc 100644
--- a/keyboards/dztech/dz60rgb_ansi/v2/config.h
+++ b/keyboards/dztech/dz60rgb_ansi/v2/config.h
@@ -53,7 +53,6 @@
# define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 61
#endif
diff --git a/keyboards/dztech/dz60rgb_ansi/v2_1/config.h b/keyboards/dztech/dz60rgb_ansi/v2_1/config.h
index 90b6c71e67..75ccef8193 100644
--- a/keyboards/dztech/dz60rgb_ansi/v2_1/config.h
+++ b/keyboards/dztech/dz60rgb_ansi/v2_1/config.h
@@ -69,7 +69,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 61
#endif
diff --git a/keyboards/dztech/dz60rgb_wkl/dz60rgb_wkl.c b/keyboards/dztech/dz60rgb_wkl/dz60rgb_wkl.c
index 5a55bacefc..d6506389a6 100644
--- a/keyboards/dztech/dz60rgb_wkl/dz60rgb_wkl.c
+++ b/keyboards/dztech/dz60rgb_wkl/dz60rgb_wkl.c
@@ -1,7 +1,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, H_15, G_15, I_15 },
{ 0, K_14, J_14, L_14 },
{ 0, K_13, J_13, L_13 },
diff --git a/keyboards/dztech/dz60rgb_wkl/v1/config.h b/keyboards/dztech/dz60rgb_wkl/v1/config.h
index cfe82a7323..ac79efd26c 100644
--- a/keyboards/dztech/dz60rgb_wkl/v1/config.h
+++ b/keyboards/dztech/dz60rgb_wkl/v1/config.h
@@ -55,7 +55,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 62
#endif
diff --git a/keyboards/dztech/dz60rgb_wkl/v2/config.h b/keyboards/dztech/dz60rgb_wkl/v2/config.h
index 38a1aa2c76..a341a18e0d 100644
--- a/keyboards/dztech/dz60rgb_wkl/v2/config.h
+++ b/keyboards/dztech/dz60rgb_wkl/v2/config.h
@@ -50,7 +50,6 @@
# define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 62
#endif
diff --git a/keyboards/dztech/dz60rgb_wkl/v2_1/config.h b/keyboards/dztech/dz60rgb_wkl/v2_1/config.h
index 5bcfb21cf7..13169e21f5 100644
--- a/keyboards/dztech/dz60rgb_wkl/v2_1/config.h
+++ b/keyboards/dztech/dz60rgb_wkl/v2_1/config.h
@@ -69,7 +69,6 @@
# define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 62
#endif
diff --git a/keyboards/dztech/dz64rgb/config.h b/keyboards/dztech/dz64rgb/config.h
index 43e1b1c609..edfc7b7171 100644
--- a/keyboards/dztech/dz64rgb/config.h
+++ b/keyboards/dztech/dz64rgb/config.h
@@ -48,8 +48,7 @@
#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_COUNT 1
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define RGB_MATRIX_LED_COUNT 64
#endif
#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2
diff --git a/keyboards/dztech/dz64rgb/dz64rgb.c b/keyboards/dztech/dz64rgb/dz64rgb.c
index 5fa08a3ee8..561a9727e5 100644
--- a/keyboards/dztech/dz64rgb/dz64rgb.c
+++ b/keyboards/dztech/dz64rgb/dz64rgb.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, K_14, J_14, L_14 },
{ 0, K_13, J_13, L_13 },
{ 0, K_12, J_12, L_12 },
diff --git a/keyboards/dztech/dz65rgb/keymaps/haervig/keymap.c b/keyboards/dztech/dz65rgb/keymaps/haervig/keymap.c
deleted file mode 100644
index f2ccd311e8..0000000000
--- a/keyboards/dztech/dz65rgb/keymaps/haervig/keymap.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
-Copyright 2021 Jakob Hærvig <jakob.haervig@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "haervig.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_65_ansi(
- QK_GESC, DK_1, CU_2, DK_3, CU_4, DK_5, CU_6, CU_7, CU_8, CU_9, CU_0, CU_MINS, CU_EQL, CU_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, CU_LBRC, CU_RBRC, CU_BSLS, KC_PGUP,
- CTL_T(KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, CU_SCLN, CU_QUOT, KC_ENT, KC_PGDN,
- CU_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, CU_COMM, CU_DOT, CU_SLSH, CU_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, MO(1), KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT_65_ansi(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/dztech/dz65rgb/keymaps/haervig/rules.mk b/keyboards/dztech/dz65rgb/keymaps/haervig/rules.mk
deleted file mode 100644
index 676050bfce..0000000000
--- a/keyboards/dztech/dz65rgb/keymaps/haervig/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# Userspace defines
-DANISH_ENABLE = yes # Enable Custom US Ansi Keycodes for PC with Danish set as input language
-RGB_MATRIX_ENABLE = no # Disable the ugly RGB light \ No newline at end of file
diff --git a/keyboards/dztech/dz65rgb/v1/config.h b/keyboards/dztech/dz65rgb/v1/config.h
index 4a84498975..b9203346dd 100644
--- a/keyboards/dztech/dz65rgb/v1/config.h
+++ b/keyboards/dztech/dz65rgb/v1/config.h
@@ -70,9 +70,8 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110111
-# define DRIVER_COUNT 2
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
# define DRIVER_1_LED_TOTAL 35
# define DRIVER_2_LED_TOTAL 33
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/dztech/dz65rgb/v1/v1.c b/keyboards/dztech/dz65rgb/v1/v1.c
index a3b7bdfb5b..a0a355e120 100644
--- a/keyboards/dztech/dz65rgb/v1/v1.c
+++ b/keyboards/dztech/dz65rgb/v1/v1.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, C8_8, C7_8, C6_8 },
{ 0, C9_8, C7_7, C6_7 },
{ 0, C9_7, C8_7, C6_6 },
diff --git a/keyboards/dztech/dz65rgb/v2/config.h b/keyboards/dztech/dz65rgb/v2/config.h
index 04700c84ed..600687c245 100644
--- a/keyboards/dztech/dz65rgb/v2/config.h
+++ b/keyboards/dztech/dz65rgb/v2/config.h
@@ -70,9 +70,8 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110111
-# define DRIVER_COUNT 2
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
# define DRIVER_1_LED_TOTAL 35
# define DRIVER_2_LED_TOTAL 33
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/dztech/dz65rgb/v2/v2.c b/keyboards/dztech/dz65rgb/v2/v2.c
index 31599ad4b8..7754bc4ee5 100644
--- a/keyboards/dztech/dz65rgb/v2/v2.c
+++ b/keyboards/dztech/dz65rgb/v2/v2.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, C8_8, C7_8, C6_8 },
{ 0, C9_8, C7_7, C6_7 },
{ 0, C9_7, C8_7, C6_6 },
diff --git a/keyboards/dztech/dz65rgb/v3/config.h b/keyboards/dztech/dz65rgb/v3/config.h
index 421ae8277c..1398a378f8 100755
--- a/keyboards/dztech/dz65rgb/v3/config.h
+++ b/keyboards/dztech/dz65rgb/v3/config.h
@@ -72,8 +72,7 @@
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b0110000
-# define DRIVER_COUNT 1
+# define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
# define RGB_MATRIX_LED_COUNT 68
# define DRIVER_INDICATOR_LED_TOTAL 0
#endif
diff --git a/keyboards/dztech/dz65rgb/v3/v3.c b/keyboards/dztech/dz65rgb/v3/v3.c
index ceb5c30f3e..0fb8ba49de 100755
--- a/keyboards/dztech/dz65rgb/v3/v3.c
+++ b/keyboards/dztech/dz65rgb/v3/v3.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS21_SW1, CS20_SW1, CS19_SW1},
{0, CS21_SW2, CS20_SW2, CS19_SW2},
{0, CS21_SW3, CS20_SW3, CS19_SW3},
diff --git a/keyboards/dztech/og60/info.json b/keyboards/dztech/og60/info.json
deleted file mode 100644
index 52c4e0b189..0000000000
--- a/keyboards/dztech/og60/info.json
+++ /dev/null
@@ -1,448 +0,0 @@
-{
- "manufacturer": "KBDFans",
- "keyboard_name": "Og60",
- "maintainer": "moyi4681",
- "bootloader": "rp2040",
- "diode_direction": "COL2ROW",
- "features": {
- "bootmagic": true,
- "command": false,
- "console": false,
- "extrakey": true,
- "mousekey": true,
- "nkro": true
- },
- "indicators": {
- "caps_lock": "GP28"
- },
- "matrix_pins": {
- "cols": ["GP2", "GP9", "GP10", "GP11", "GP12", "GP13", "GP14", "GP15", "GP18", "GP19", "GP20", "GP21", "GP22", "GP23"],
- "rows": ["GP4", "GP3", "GP17", "GP24", "GP25"]
- },
- "processor": "RP2040",
- "usb": {
- "device_version": "0.0.1",
- "pid": "0x6071",
- "vid": "0x4B42"
- },
- "community_layouts": ["60_ansi", "60_hhkb", "60_iso", "60_ansi_tsangan", "60_tsangan_hhkb"],
- "layouts": {
- "LAYOUT_60_ansi": {
- "layout": [
- {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
- {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
- {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
- {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
- {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
- {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
- {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
- {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
- {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
- {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
-
- {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
- {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
- {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
- {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
- {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
- {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
- {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
- {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
- {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
- {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
- {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
- {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
- {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
- {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
- {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
- {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
- {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
- {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
- {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
- {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
- {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
- {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
- {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
- {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
- {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
- {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
- {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
- {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
- {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
- {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
- {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
- {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
- {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
-
- {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
- {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
- {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
- {"label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25},
- {"label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
- {"label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
- {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
- {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
- ]
- },
- "LAYOUT_60_hhkb": {
- "layout": [
- {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
- {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
- {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
- {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
- {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
- {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
- {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
- {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
- {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
- {"label": "Del", "matrix": [0, 13], "x": 13, "y": 0},
- {"label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0},
-
- {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
- {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
- {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
- {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
- {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
- {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
- {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
- {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
- {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
- {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
- {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
- {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
- {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
- {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
- {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
- {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
- {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
- {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
- {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
- {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
- {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
- {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
- {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
- {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
- {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
- {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
- {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
- {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
- {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
- {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
- {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
- {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
- {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
- {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
- {"label": "Ctrl", "matrix": [4, 1], "x": 1.5, "y": 4},
- {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
- {"label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7},
- {"label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
- {"label": "Ctrl", "matrix": [4, 12], "x": 12.5, "y": 4}
- ]
- },
- "LAYOUT_60_iso": {
- "layout": [
- {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
- {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
- {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
- {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
- {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
- {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
- {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
- {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
- {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
- {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
-
- {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
- {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
- {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
- {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
- {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
- {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
- {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
- {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
- {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
- {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
- {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
-
- {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
- {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
- {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
- {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
- {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
- {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
- {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
- {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
- {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
- {"label": "@", "matrix": [2, 11], "x": 11.75, "y": 2},
- {"label": "~", "matrix": [1, 13], "x": 12.75, "y": 2},
- {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
-
- {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
- {"label": "|", "matrix": [3, 1], "x": 1.25, "y": 3},
- {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
- {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
- {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
- {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
- {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
- {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
- {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
- {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
- {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
- {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
- {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
-
- {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
- {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
- {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
- {"label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25},
- {"label": "AltGr", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
- {"label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
- {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
- {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
- ]
- },
- "LAYOUT_60_ansi_tsangan": {
- "layout": [
- {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
- {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
- {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
- {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
- {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
- {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
- {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
- {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
- {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
- {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
-
- {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
- {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
- {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
- {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
- {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
- {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
- {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
- {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
- {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
- {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
- {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
- {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
- {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
- {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
- {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
- {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
- {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
- {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
- {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
- {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
- {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
- {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
- {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
- {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
- {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
- {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
- {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
- {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
- {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
- {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
- {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
- {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
- {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
-
- {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
- {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
- {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
- {"label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7},
- {"label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
- {"label": "Win", "matrix": [4, 12], "x": 12.5, "y": 4},
- {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
- ]
- },
- "LAYOUT_60_tsangan_hhkb": {
- "layout": [
- {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
- {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
- {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
- {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
- {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
- {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
- {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
- {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
- {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
- {"label": "Del", "matrix": [0, 13], "x": 13, "y": 0},
- {"label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0},
-
- {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
- {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
- {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
- {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
- {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
- {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
- {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
- {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
- {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
- {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
- {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
- {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
- {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
- {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
- {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
- {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
- {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
- {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
- {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
- {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
- {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
- {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
- {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
- {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
- {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
- {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
- {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
- {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
- {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
- {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
- {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
- {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
- {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
- {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
-
- {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
- {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
- {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
- {"label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7},
- {"label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
- {"label": "Win", "matrix": [4, 12], "x": 12.5, "y": 4},
- {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
- ]
- },
- "LAYOUT_all": {
- "layout": [
- {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
- {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
- {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
- {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
- {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
- {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
- {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
- {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
- {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
- {"label": "Del", "matrix": [2, 12], "x": 13, "y": 0},
- {"label": "Backspace", "matrix": [0, 13], "x": 14, "y": 0},
-
- {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
- {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
- {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
- {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
- {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
- {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
- {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
- {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
- {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
- {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
- {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
- {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
- {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
- {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
- {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
- {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
- {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
- {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
- {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
- {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
- {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
- {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
- {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
- {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
- {"label": "|", "matrix": [3, 1], "x": 1.25, "y": 3},
- {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
- {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
- {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
- {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
- {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
- {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
- {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
- {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
- {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
- {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
- {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
- {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
-
- {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
- {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
- {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
- {"label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25},
- {"label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
- {"label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
- {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
- {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
- ]
- }
- }
-}
-
diff --git a/keyboards/dztech/og60/readme.md b/keyboards/dztech/og60/readme.md
deleted file mode 100644
index 07d6e6a658..0000000000
--- a/keyboards/dztech/og60/readme.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# OG60
-A customizable 60% HotSwap keyboard.
-
-* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681)
-* Hardware Supported: OG60
-* Hardware Availability: [KBDfans](https://kbdfans.com/)
-
-## Bootloader mode
-
-Enter the bootloader in 3 ways:
-
-* Bootmagic reset: Hold down the left top key then plug in the USB cable.
-* Physical reset button: Double tap the reset button.
-* Keycode in layout: Press the key mapped to QK_BOOT if it is available.
-
-## Making firmware
-
-Make example for this keyboard (after setting up your build environment):
-
- make dztech/og60:default
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/dztech/tofu/ii/v1/config.h b/keyboards/dztech/tofu/ii/v1/config.h
index 67a4c757af..36741e1168 100644
--- a/keyboards/dztech/tofu/ii/v1/config.h
+++ b/keyboards/dztech/tofu/ii/v1/config.h
@@ -79,9 +79,8 @@
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_ADDR_2 0b1011111
-# define DRIVER_COUNT 2
+# define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND
+# define IS31FL3737_I2C_ADDRESS_2 IS31FL3737_I2C_ADDRESS_VCC
# define DRIVER_1_LED_TOTAL 46
# define DRIVER_2_LED_TOTAL 20
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/dztech/tofu/ii/v1/v1.c b/keyboards/dztech/tofu/ii/v1/v1.c
index bb15f3d4a1..8baf0235bd 100644
--- a/keyboards/dztech/tofu/ii/v1/v1.c
+++ b/keyboards/dztech/tofu/ii/v1/v1.c
@@ -17,7 +17,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = {
{ 1, K_12, J_12, L_12 },
{ 1, K_11, J_11, L_11 },
{ 1, K_10, J_10, L_10 },
diff --git a/keyboards/dztech/tofu/jr/readme.md b/keyboards/dztech/tofu/jr/readme.md
deleted file mode 100644
index 579929c5d7..0000000000
--- a/keyboards/dztech/tofu/jr/readme.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# TOFU_JR
-A customizable 65% RGB keyboard.
-
-* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681)
-* Hardware Supported: TOFU_JR
-* Hardware Availability: [KBDfans](https://kbdfans.com/)
-
-## Bootloader mode
-
-Enter the bootloader in 3 ways:
-
-* Bootmagic reset: Hold down the left top key then plug in the USB cable.
-* Physical reset button: Double tap the reset button.
-* Keycode in layout: Press the key mapped to QK_BOOT if it is available.
-
-## Making firmware
-
-Make example for this keyboard (after setting up your build environment):
-
- make dztech/tofu/jr:default
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/dztech/tofu/jr/v1/config.h b/keyboards/dztech/tofu/jr/v1/config.h
index a05cdacf79..74e5ed0848 100644
--- a/keyboards/dztech/tofu/jr/v1/config.h
+++ b/keyboards/dztech/tofu/jr/v1/config.h
@@ -79,9 +79,8 @@
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_ADDR_2 0b1011111
-# define DRIVER_COUNT 2
+# define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND
+# define IS31FL3737_I2C_ADDRESS_2 IS31FL3737_I2C_ADDRESS_VCC
# define DRIVER_1_LED_TOTAL 48
# define DRIVER_2_LED_TOTAL 20
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/dztech/tofu/jr/v1/readme.md b/keyboards/dztech/tofu/jr/v1/readme.md
new file mode 100644
index 0000000000..f17b9aea90
--- /dev/null
+++ b/keyboards/dztech/tofu/jr/v1/readme.md
@@ -0,0 +1,22 @@
+# TOFU_JR_V1
+A customizable 65% RGB keyboard.
+
+* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681)
+* Hardware Supported: TOFU_JR_V1
+* Hardware Availability: [KBDfans](https://kbdfans.com/)
+
+## Bootloader mode
+
+Enter the bootloader in 3 ways:
+
+* Bootmagic reset: Hold down the left top key then plug in the USB cable.
+* Physical reset button: Double tap the reset button.
+* Keycode in layout: Press the key mapped to QK_BOOT if it is available.
+
+## Making firmware
+
+Make example for this keyboard (after setting up your build environment):
+
+ make dztech/tofu/jr:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/dztech/tofu/jr/v1/v1.c b/keyboards/dztech/tofu/jr/v1/v1.c
index 4b7d7c957e..474134cb5e 100644
--- a/keyboards/dztech/tofu/jr/v1/v1.c
+++ b/keyboards/dztech/tofu/jr/v1/v1.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = {
{ 1, K_12, J_12, L_12 },
{ 1, K_11, J_11, L_11 },
{ 1, K_10, J_10, L_10 },
diff --git a/keyboards/dztech/tofu/jr/v2/config.h b/keyboards/dztech/tofu/jr/v2/config.h
new file mode 100644
index 0000000000..935a2ab437
--- /dev/null
+++ b/keyboards/dztech/tofu/jr/v2/config.h
@@ -0,0 +1,24 @@
+/* Copyright 2023 DZTECH <moyi4681@live.cn>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 8)
+
+#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
+#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
+
+
diff --git a/keyboards/dztech/tofu/jr/v2/info.json b/keyboards/dztech/tofu/jr/v2/info.json
new file mode 100644
index 0000000000..6a60565b22
--- /dev/null
+++ b/keyboards/dztech/tofu/jr/v2/info.json
@@ -0,0 +1,124 @@
+{
+ "bootloader": "rp2040",
+ "processor": "RP2040",
+ "diode_direction": "COL2ROW",
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
+ "matrix_pins": {
+ "cols": ["GP25", "GP24", "GP23", "GP1", "GP7", "GP21", "GP20", "GP19", "GP18", "GP17", "GP16", "GP15", "GP14", "GP13", "GP12"],
+ "rows": ["GP29", "GP28", "GP27", "GP26", "GP22"]
+ },
+ "indicators": {
+ "caps_lock": "GP11"
+ },
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x1425",
+ "vid": "0x445A"
+ },
+ "rgblight": {
+ "brightness_steps": 10,
+ "hue_steps": 10,
+ "led_count": 16,
+ "saturation_steps": 10,
+ "sleep": true,
+ "animations": {
+ "alternating": true,
+ "breathing": true,
+ "christmas": true,
+ "knight": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true,
+ "rgb_test": true,
+ "snake": true,
+ "static_gradient": true,
+ "twinkle": true
+ }
+ },
+ "ws2812": {
+ "pin": "GP2",
+ "driver": "vendor"
+ },
+ "community_layouts": ["65_ansi"],
+ "layouts": {
+ "LAYOUT_65_ansi": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "w": 2, "x": 13, "y": 0},
+ {"matrix": [0, 14], "x": 15, "y": 0},
+ {"matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "w": 1.5, "x": 13.5, "y": 1},
+ {"matrix": [1, 14], "x": 15, "y": 1},
+ {"matrix": [2, 0], "w": 1.75, "x": 0, "y": 2},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 12], "w": 2.25, "x": 12.75, "y": 2},
+ {"matrix": [2, 14], "x": 15, "y": 2},
+ {"matrix": [3, 0], "w": 2.25, "x": 0, "y": 3},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 11], "w": 1.75, "x": 12.25, "y": 3},
+ {"matrix": [3, 13], "x": 14, "y": 3},
+ {"matrix": [3, 14], "x": 15, "y": 3},
+ {"matrix": [4, 0], "w": 1.25, "x": 0, "y": 4},
+ {"matrix": [4, 1], "w": 1.25, "x": 1.25, "y": 4},
+ {"matrix": [4, 2], "w": 1.25, "x": 2.5, "y": 4},
+ {"matrix": [4, 6], "w": 6.25, "x": 3.75, "y": 4},
+ {"matrix": [4, 8], "x": 10, "y": 4},
+ {"matrix": [4, 9], "x": 11, "y": 4},
+ {"matrix": [4, 10], "x": 12, "y": 4},
+ {"matrix": [4, 12], "x": 13, "y": 4},
+ {"matrix": [4, 13], "x": 14, "y": 4},
+ {"matrix": [4, 14], "x": 15, "y": 4}
+ ]
+ }
+ }
+}
diff --git a/keyboards/dztech/tofu/jr/v2/readme.md b/keyboards/dztech/tofu/jr/v2/readme.md
new file mode 100644
index 0000000000..8523a3f32a
--- /dev/null
+++ b/keyboards/dztech/tofu/jr/v2/readme.md
@@ -0,0 +1,22 @@
+# TOFU_JR_V2
+A customizable 65% hotswap with RGB backlight keyboard.
+
+* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681)
+* Hardware Supported: TOFU_JR_V2
+* Hardware Availability: [KBDfans](https://kbdfans.com/)
+
+## Bootloader mode
+
+Enter the bootloader in 3 ways:
+
+* Bootmagic reset: Hold down the left top key then plug in the USB cable.
+* Physical reset button: Double tap the reset button.
+* Keycode in layout: Press the key mapped to QK_BOOT if it is available.
+
+## Making firmware
+
+Make example for this keyboard (after setting up your build environment):
+
+ make dztech/tofu/jr/v2:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/dztech/tofu/jr/v2/rules.mk b/keyboards/dztech/tofu/jr/v2/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/dztech/tofu/jr/v2/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/dztech/tofu60/info.json b/keyboards/dztech/tofu60/info.json
new file mode 100644
index 0000000000..57c57604d1
--- /dev/null
+++ b/keyboards/dztech/tofu60/info.json
@@ -0,0 +1,740 @@
+{
+ "manufacturer": "KBDFans",
+ "keyboard_name": "TOFU60",
+ "maintainer": "moyi4681",
+ "bootloader": "rp2040",
+ "diode_direction": "COL2ROW",
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
+ "indicators": {
+ "caps_lock": "GP28"
+ },
+ "matrix_pins": {
+ "cols": ["GP2", "GP9", "GP10", "GP11", "GP12", "GP13", "GP14", "GP15", "GP18", "GP19", "GP20", "GP21", "GP22", "GP23"],
+ "rows": ["GP4", "GP3", "GP17", "GP24", "GP25"]
+ },
+ "processor": "RP2040",
+ "usb": {
+ "device_version": "0.0.1",
+ "pid": "0x6071",
+ "vid": "0x4B42"
+ },
+ "community_layouts": [
+ "60_ansi",
+ "60_ansi_split_bs_rshift",
+ "60_ansi_tsangan",
+ "60_hhkb",
+ "60_iso",
+ "60_iso_split_bs_rshift",
+ "60_iso_tsangan",
+ "60_tsangan_hhkb"
+ ],
+ "layouts": {
+ "LAYOUT_60_ansi": {
+ "layout": [
+ { "label": "~", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "!", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "@", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": "#", "matrix": [0, 3], "x": 3, "y": 0 },
+ { "label": "$", "matrix": [0, 4], "x": 4, "y": 0 },
+ { "label": "%", "matrix": [0, 5], "x": 5, "y": 0 },
+ { "label": "^", "matrix": [0, 6], "x": 6, "y": 0 },
+ { "label": "&", "matrix": [0, 7], "x": 7, "y": 0 },
+ { "label": "*", "matrix": [0, 8], "x": 8, "y": 0 },
+ { "label": "(", "matrix": [0, 9], "x": 9, "y": 0 },
+ { "label": ")", "matrix": [0, 10], "x": 10, "y": 0 },
+ { "label": "_", "matrix": [0, 11], "x": 11, "y": 0 },
+ { "label": "+", "matrix": [0, 12], "x": 12, "y": 0 },
+ { "label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2 },
+
+ { "label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1 },
+ { "label": "W", "matrix": [1, 2], "x": 2.5, "y": 1 },
+ { "label": "E", "matrix": [1, 3], "x": 3.5, "y": 1 },
+ { "label": "R", "matrix": [1, 4], "x": 4.5, "y": 1 },
+ { "label": "T", "matrix": [1, 5], "x": 5.5, "y": 1 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1 },
+ { "label": "U", "matrix": [1, 7], "x": 7.5, "y": 1 },
+ { "label": "I", "matrix": [1, 8], "x": 8.5, "y": 1 },
+ { "label": "O", "matrix": [1, 9], "x": 9.5, "y": 1 },
+ { "label": "P", "matrix": [1, 10], "x": 10.5, "y": 1 },
+ { "label": "{", "matrix": [1, 11], "x": 11.5, "y": 1 },
+ { "label": "}", "matrix": [1, 12], "x": 12.5, "y": 1 },
+ { "label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5 },
+
+ { "label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75 },
+ { "label": "A", "matrix": [2, 1], "x": 1.75, "y": 2 },
+ { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 2 },
+ { "label": "D", "matrix": [2, 3], "x": 3.75, "y": 2 },
+ { "label": "F", "matrix": [2, 4], "x": 4.75, "y": 2 },
+ { "label": "G", "matrix": [2, 5], "x": 5.75, "y": 2 },
+ { "label": "H", "matrix": [2, 6], "x": 6.75, "y": 2 },
+ { "label": "J", "matrix": [2, 7], "x": 7.75, "y": 2 },
+ { "label": "K", "matrix": [2, 8], "x": 8.75, "y": 2 },
+ { "label": "L", "matrix": [2, 9], "x": 9.75, "y": 2 },
+ { "label": ":", "matrix": [2, 10], "x": 10.75, "y": 2 },
+ { "label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2 },
+ { "label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25 },
+
+ { "label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25 },
+ { "label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3 },
+ { "label": "X", "matrix": [3, 3], "x": 3.25, "y": 3 },
+ { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 3 },
+ { "label": "V", "matrix": [3, 5], "x": 5.25, "y": 3 },
+ { "label": "B", "matrix": [3, 6], "x": 6.25, "y": 3 },
+ { "label": "N", "matrix": [3, 7], "x": 7.25, "y": 3 },
+ { "label": "M", "matrix": [3, 8], "x": 8.25, "y": 3 },
+ { "label": "<", "matrix": [3, 9], "x": 9.25, "y": 3 },
+ { "label": ">", "matrix": [3, 10], "x": 10.25, "y": 3 },
+ { "label": "?", "matrix": [3, 11], "x": 11.25, "y": 3 },
+ { "label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75 },
+
+ { "label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25 },
+ { "label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25 },
+ { "label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25 },
+ { "label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25 },
+ { "label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25 },
+ { "label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25 },
+ { "label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25 }
+ ]
+ },
+ "LAYOUT_60_ansi_split_bs_rshift": {
+ "layout": [
+ {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Del", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+ {"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
+
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_hhkb": {
+ "layout": [
+ { "label": "~", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "!", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "@", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": "#", "matrix": [0, 3], "x": 3, "y": 0 },
+ { "label": "$", "matrix": [0, 4], "x": 4, "y": 0 },
+ { "label": "%", "matrix": [0, 5], "x": 5, "y": 0 },
+ { "label": "^", "matrix": [0, 6], "x": 6, "y": 0 },
+ { "label": "&", "matrix": [0, 7], "x": 7, "y": 0 },
+ { "label": "*", "matrix": [0, 8], "x": 8, "y": 0 },
+ { "label": "(", "matrix": [0, 9], "x": 9, "y": 0 },
+ { "label": ")", "matrix": [0, 10], "x": 10, "y": 0 },
+ { "label": "_", "matrix": [0, 11], "x": 11, "y": 0 },
+ { "label": "+", "matrix": [0, 12], "x": 12, "y": 0 },
+ { "label": "Del", "matrix": [0, 13], "x": 13, "y": 0 },
+ { "label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0 },
+
+ { "label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1 },
+ { "label": "W", "matrix": [1, 2], "x": 2.5, "y": 1 },
+ { "label": "E", "matrix": [1, 3], "x": 3.5, "y": 1 },
+ { "label": "R", "matrix": [1, 4], "x": 4.5, "y": 1 },
+ { "label": "T", "matrix": [1, 5], "x": 5.5, "y": 1 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1 },
+ { "label": "U", "matrix": [1, 7], "x": 7.5, "y": 1 },
+ { "label": "I", "matrix": [1, 8], "x": 8.5, "y": 1 },
+ { "label": "O", "matrix": [1, 9], "x": 9.5, "y": 1 },
+ { "label": "P", "matrix": [1, 10], "x": 10.5, "y": 1 },
+ { "label": "{", "matrix": [1, 11], "x": 11.5, "y": 1 },
+ { "label": "}", "matrix": [1, 12], "x": 12.5, "y": 1 },
+ { "label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5 },
+
+ { "label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75 },
+ { "label": "A", "matrix": [2, 1], "x": 1.75, "y": 2 },
+ { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 2 },
+ { "label": "D", "matrix": [2, 3], "x": 3.75, "y": 2 },
+ { "label": "F", "matrix": [2, 4], "x": 4.75, "y": 2 },
+ { "label": "G", "matrix": [2, 5], "x": 5.75, "y": 2 },
+ { "label": "H", "matrix": [2, 6], "x": 6.75, "y": 2 },
+ { "label": "J", "matrix": [2, 7], "x": 7.75, "y": 2 },
+ { "label": "K", "matrix": [2, 8], "x": 8.75, "y": 2 },
+ { "label": "L", "matrix": [2, 9], "x": 9.75, "y": 2 },
+ { "label": ":", "matrix": [2, 10], "x": 10.75, "y": 2 },
+ { "label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2 },
+ { "label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25 },
+
+ { "label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25 },
+ { "label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3 },
+ { "label": "X", "matrix": [3, 3], "x": 3.25, "y": 3 },
+ { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 3 },
+ { "label": "V", "matrix": [3, 5], "x": 5.25, "y": 3 },
+ { "label": "B", "matrix": [3, 6], "x": 6.25, "y": 3 },
+ { "label": "N", "matrix": [3, 7], "x": 7.25, "y": 3 },
+ { "label": "M", "matrix": [3, 8], "x": 8.25, "y": 3 },
+ { "label": "<", "matrix": [3, 9], "x": 9.25, "y": 3 },
+ { "label": ">", "matrix": [3, 10], "x": 10.25, "y": 3 },
+ { "label": "?", "matrix": [3, 11], "x": 11.25, "y": 3 },
+ { "label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75 },
+ { "label": "Fn", "matrix": [3, 13], "x": 14, "y": 3 },
+ { "label": "Ctrl", "matrix": [4, 1], "x": 1.5, "y": 4 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5 },
+ { "label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7 },
+ { "label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5 },
+ { "label": "Ctrl", "matrix": [4, 12], "x": 12.5, "y": 4 }
+ ]
+ },
+ "LAYOUT_60_iso": {
+ "layout": [
+ { "label": "~", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "!", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "@", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": "#", "matrix": [0, 3], "x": 3, "y": 0 },
+ { "label": "$", "matrix": [0, 4], "x": 4, "y": 0 },
+ { "label": "%", "matrix": [0, 5], "x": 5, "y": 0 },
+ { "label": "^", "matrix": [0, 6], "x": 6, "y": 0 },
+ { "label": "&", "matrix": [0, 7], "x": 7, "y": 0 },
+ { "label": "*", "matrix": [0, 8], "x": 8, "y": 0 },
+ { "label": "(", "matrix": [0, 9], "x": 9, "y": 0 },
+ { "label": ")", "matrix": [0, 10], "x": 10, "y": 0 },
+ { "label": "_", "matrix": [0, 11], "x": 11, "y": 0 },
+ { "label": "+", "matrix": [0, 12], "x": 12, "y": 0 },
+ { "label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2 },
+
+ { "label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1 },
+ { "label": "W", "matrix": [1, 2], "x": 2.5, "y": 1 },
+ { "label": "E", "matrix": [1, 3], "x": 3.5, "y": 1 },
+ { "label": "R", "matrix": [1, 4], "x": 4.5, "y": 1 },
+ { "label": "T", "matrix": [1, 5], "x": 5.5, "y": 1 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1 },
+ { "label": "U", "matrix": [1, 7], "x": 7.5, "y": 1 },
+ { "label": "I", "matrix": [1, 8], "x": 8.5, "y": 1 },
+ { "label": "O", "matrix": [1, 9], "x": 9.5, "y": 1 },
+ { "label": "P", "matrix": [1, 10], "x": 10.5, "y": 1 },
+ { "label": "{", "matrix": [1, 11], "x": 11.5, "y": 1 },
+ { "label": "}", "matrix": [1, 12], "x": 12.5, "y": 1 },
+
+ { "label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75 },
+ { "label": "A", "matrix": [2, 1], "x": 1.75, "y": 2 },
+ { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 2 },
+ { "label": "D", "matrix": [2, 3], "x": 3.75, "y": 2 },
+ { "label": "F", "matrix": [2, 4], "x": 4.75, "y": 2 },
+ { "label": "G", "matrix": [2, 5], "x": 5.75, "y": 2 },
+ { "label": "H", "matrix": [2, 6], "x": 6.75, "y": 2 },
+ { "label": "J", "matrix": [2, 7], "x": 7.75, "y": 2 },
+ { "label": "K", "matrix": [2, 8], "x": 8.75, "y": 2 },
+ { "label": "L", "matrix": [2, 9], "x": 9.75, "y": 2 },
+ { "label": ":", "matrix": [2, 10], "x": 10.75, "y": 2 },
+ { "label": "@", "matrix": [2, 11], "x": 11.75, "y": 2 },
+ { "label": "~", "matrix": [1, 13], "x": 12.75, "y": 2 },
+ { "label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2 },
+
+ { "label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25 },
+ { "label": "|", "matrix": [3, 1], "x": 1.25, "y": 3 },
+ { "label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3 },
+ { "label": "X", "matrix": [3, 3], "x": 3.25, "y": 3 },
+ { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 3 },
+ { "label": "V", "matrix": [3, 5], "x": 5.25, "y": 3 },
+ { "label": "B", "matrix": [3, 6], "x": 6.25, "y": 3 },
+ { "label": "N", "matrix": [3, 7], "x": 7.25, "y": 3 },
+ { "label": "M", "matrix": [3, 8], "x": 8.25, "y": 3 },
+ { "label": "<", "matrix": [3, 9], "x": 9.25, "y": 3 },
+ { "label": ">", "matrix": [3, 10], "x": 10.25, "y": 3 },
+ { "label": "?", "matrix": [3, 11], "x": 11.25, "y": 3 },
+ { "label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75 },
+
+ { "label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25 },
+ { "label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25 },
+ { "label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25 },
+ { "label": "AltGr", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25 },
+ { "label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25 },
+ { "label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25 },
+ { "label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25 }
+ ]
+ },
+ "LAYOUT_60_ansi_tsangan": {
+ "layout": [
+ { "label": "~", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "!", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "@", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": "#", "matrix": [0, 3], "x": 3, "y": 0 },
+ { "label": "$", "matrix": [0, 4], "x": 4, "y": 0 },
+ { "label": "%", "matrix": [0, 5], "x": 5, "y": 0 },
+ { "label": "^", "matrix": [0, 6], "x": 6, "y": 0 },
+ { "label": "&", "matrix": [0, 7], "x": 7, "y": 0 },
+ { "label": "*", "matrix": [0, 8], "x": 8, "y": 0 },
+ { "label": "(", "matrix": [0, 9], "x": 9, "y": 0 },
+ { "label": ")", "matrix": [0, 10], "x": 10, "y": 0 },
+ { "label": "_", "matrix": [0, 11], "x": 11, "y": 0 },
+ { "label": "+", "matrix": [0, 12], "x": 12, "y": 0 },
+ { "label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2 },
+
+ { "label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1 },
+ { "label": "W", "matrix": [1, 2], "x": 2.5, "y": 1 },
+ { "label": "E", "matrix": [1, 3], "x": 3.5, "y": 1 },
+ { "label": "R", "matrix": [1, 4], "x": 4.5, "y": 1 },
+ { "label": "T", "matrix": [1, 5], "x": 5.5, "y": 1 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1 },
+ { "label": "U", "matrix": [1, 7], "x": 7.5, "y": 1 },
+ { "label": "I", "matrix": [1, 8], "x": 8.5, "y": 1 },
+ { "label": "O", "matrix": [1, 9], "x": 9.5, "y": 1 },
+ { "label": "P", "matrix": [1, 10], "x": 10.5, "y": 1 },
+ { "label": "{", "matrix": [1, 11], "x": 11.5, "y": 1 },
+ { "label": "}", "matrix": [1, 12], "x": 12.5, "y": 1 },
+ { "label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5 },
+
+ { "label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75 },
+ { "label": "A", "matrix": [2, 1], "x": 1.75, "y": 2 },
+ { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 2 },
+ { "label": "D", "matrix": [2, 3], "x": 3.75, "y": 2 },
+ { "label": "F", "matrix": [2, 4], "x": 4.75, "y": 2 },
+ { "label": "G", "matrix": [2, 5], "x": 5.75, "y": 2 },
+ { "label": "H", "matrix": [2, 6], "x": 6.75, "y": 2 },
+ { "label": "J", "matrix": [2, 7], "x": 7.75, "y": 2 },
+ { "label": "K", "matrix": [2, 8], "x": 8.75, "y": 2 },
+ { "label": "L", "matrix": [2, 9], "x": 9.75, "y": 2 },
+ { "label": ":", "matrix": [2, 10], "x": 10.75, "y": 2 },
+ { "label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2 },
+ { "label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25 },
+
+ { "label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25 },
+ { "label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3 },
+ { "label": "X", "matrix": [3, 3], "x": 3.25, "y": 3 },
+ { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 3 },
+ { "label": "V", "matrix": [3, 5], "x": 5.25, "y": 3 },
+ { "label": "B", "matrix": [3, 6], "x": 6.25, "y": 3 },
+ { "label": "N", "matrix": [3, 7], "x": 7.25, "y": 3 },
+ { "label": "M", "matrix": [3, 8], "x": 8.25, "y": 3 },
+ { "label": "<", "matrix": [3, 9], "x": 9.25, "y": 3 },
+ { "label": ">", "matrix": [3, 10], "x": 10.25, "y": 3 },
+ { "label": "?", "matrix": [3, 11], "x": 11.25, "y": 3 },
+ { "label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75 },
+
+ { "label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5 },
+ { "label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5 },
+ { "label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7 },
+ { "label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5 },
+ { "label": "Win", "matrix": [4, 12], "x": 12.5, "y": 4 },
+ { "label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5 }
+ ]
+ },
+ "LAYOUT_60_tsangan_hhkb": {
+ "layout": [
+ { "label": "~", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "!", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "@", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": "#", "matrix": [0, 3], "x": 3, "y": 0 },
+ { "label": "$", "matrix": [0, 4], "x": 4, "y": 0 },
+ { "label": "%", "matrix": [0, 5], "x": 5, "y": 0 },
+ { "label": "^", "matrix": [0, 6], "x": 6, "y": 0 },
+ { "label": "&", "matrix": [0, 7], "x": 7, "y": 0 },
+ { "label": "*", "matrix": [0, 8], "x": 8, "y": 0 },
+ { "label": "(", "matrix": [0, 9], "x": 9, "y": 0 },
+ { "label": ")", "matrix": [0, 10], "x": 10, "y": 0 },
+ { "label": "_", "matrix": [0, 11], "x": 11, "y": 0 },
+ { "label": "+", "matrix": [0, 12], "x": 12, "y": 0 },
+ { "label": "Del", "matrix": [0, 13], "x": 13, "y": 0 },
+ { "label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0 },
+
+ { "label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1 },
+ { "label": "W", "matrix": [1, 2], "x": 2.5, "y": 1 },
+ { "label": "E", "matrix": [1, 3], "x": 3.5, "y": 1 },
+ { "label": "R", "matrix": [1, 4], "x": 4.5, "y": 1 },
+ { "label": "T", "matrix": [1, 5], "x": 5.5, "y": 1 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1 },
+ { "label": "U", "matrix": [1, 7], "x": 7.5, "y": 1 },
+ { "label": "I", "matrix": [1, 8], "x": 8.5, "y": 1 },
+ { "label": "O", "matrix": [1, 9], "x": 9.5, "y": 1 },
+ { "label": "P", "matrix": [1, 10], "x": 10.5, "y": 1 },
+ { "label": "{", "matrix": [1, 11], "x": 11.5, "y": 1 },
+ { "label": "}", "matrix": [1, 12], "x": 12.5, "y": 1 },
+ { "label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5 },
+
+ { "label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75 },
+ { "label": "A", "matrix": [2, 1], "x": 1.75, "y": 2 },
+ { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 2 },
+ { "label": "D", "matrix": [2, 3], "x": 3.75, "y": 2 },
+ { "label": "F", "matrix": [2, 4], "x": 4.75, "y": 2 },
+ { "label": "G", "matrix": [2, 5], "x": 5.75, "y": 2 },
+ { "label": "H", "matrix": [2, 6], "x": 6.75, "y": 2 },
+ { "label": "J", "matrix": [2, 7], "x": 7.75, "y": 2 },
+ { "label": "K", "matrix": [2, 8], "x": 8.75, "y": 2 },
+ { "label": "L", "matrix": [2, 9], "x": 9.75, "y": 2 },
+ { "label": ":", "matrix": [2, 10], "x": 10.75, "y": 2 },
+ { "label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2 },
+ { "label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25 },
+
+ { "label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 2.25 },
+ { "label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3 },
+ { "label": "X", "matrix": [3, 3], "x": 3.25, "y": 3 },
+ { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 3 },
+ { "label": "V", "matrix": [3, 5], "x": 5.25, "y": 3 },
+ { "label": "B", "matrix": [3, 6], "x": 6.25, "y": 3 },
+ { "label": "N", "matrix": [3, 7], "x": 7.25, "y": 3 },
+ { "label": "M", "matrix": [3, 8], "x": 8.25, "y": 3 },
+ { "label": "<", "matrix": [3, 9], "x": 9.25, "y": 3 },
+ { "label": ">", "matrix": [3, 10], "x": 10.25, "y": 3 },
+ { "label": "?", "matrix": [3, 11], "x": 11.25, "y": 3 },
+ { "label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75 },
+ { "label": "Fn", "matrix": [3, 13], "x": 14, "y": 3 },
+
+ { "label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5 },
+ { "label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5 },
+ { "label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7 },
+ { "label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5 },
+ { "label": "Win", "matrix": [4, 12], "x": 12.5, "y": 4 },
+ { "label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5 }
+ ]
+ },
+ "LAYOUT_60_iso_split_bs_rshift": {
+ "layout": [
+ {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Del", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "@", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "~", "matrix": [1, 13], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "|", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
+
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25},
+ {"label": "AltGr", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
+ {"label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso_tsangan": {
+ "layout": [
+ {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "@", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "~", "matrix": [1, 13], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "|", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7},
+ {"label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 12], "x": 12.5, "y": 4},
+ {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_iso_tsangan_split_bs_rshift": {
+ "layout": [
+ {"label": "~", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "!", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "@", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "#", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "$", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "%", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "^", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "&", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "*", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "(", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": ")", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "_", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "+", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Del", "matrix": [0, 13], "x": 13, "y": 0},
+ {"label": "Backspace", "matrix": [2, 12], "x": 14, "y": 0},
+
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
+ {"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
+ {"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
+ {"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
+ {"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
+ {"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
+ {"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
+ {"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
+ {"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
+ {"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
+ {"label": "{", "matrix": [1, 11], "x": 11.5, "y": 1},
+ {"label": "}", "matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
+ {"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
+ {"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
+ {"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
+ {"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
+ {"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
+ {"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
+ {"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
+ {"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
+ {"label": ":", "matrix": [2, 10], "x": 10.75, "y": 2},
+ {"label": "@", "matrix": [2, 11], "x": 11.75, "y": 2},
+ {"label": "~", "matrix": [1, 13], "x": 12.75, "y": 2},
+ {"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"label": "|", "matrix": [3, 1], "x": 1.25, "y": 3},
+ {"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
+ {"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
+ {"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
+ {"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
+ {"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
+ {"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
+ {"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
+ {"label": "<", "matrix": [3, 9], "x": 9.25, "y": 3},
+ {"label": ">", "matrix": [3, 10], "x": 10.25, "y": 3},
+ {"label": "?", "matrix": [3, 11], "x": 11.25, "y": 3},
+ {"label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
+ {"label": "Fn", "matrix": [3, 13], "x": 14, "y": 3},
+
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 1], "x": 1.5, "y": 4},
+ {"label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"label": "K47", "matrix": [4, 7], "x": 4, "y": 4, "w": 7},
+ {"label": "Alt", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"label": "Win", "matrix": [4, 12], "x": 12.5, "y": 4},
+ {"label": "Ctrl", "matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_all": {
+ "layout": [
+ { "label": "~", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "!", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "@", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": "#", "matrix": [0, 3], "x": 3, "y": 0 },
+ { "label": "$", "matrix": [0, 4], "x": 4, "y": 0 },
+ { "label": "%", "matrix": [0, 5], "x": 5, "y": 0 },
+ { "label": "^", "matrix": [0, 6], "x": 6, "y": 0 },
+ { "label": "&", "matrix": [0, 7], "x": 7, "y": 0 },
+ { "label": "*", "matrix": [0, 8], "x": 8, "y": 0 },
+ { "label": "(", "matrix": [0, 9], "x": 9, "y": 0 },
+ { "label": ")", "matrix": [0, 10], "x": 10, "y": 0 },
+ { "label": "_", "matrix": [0, 11], "x": 11, "y": 0 },
+ { "label": "+", "matrix": [0, 12], "x": 12, "y": 0 },
+ { "label": "Del", "matrix": [2, 12], "x": 13, "y": 0 },
+ { "label": "Backspace", "matrix": [0, 13], "x": 14, "y": 0 },
+
+ { "label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5 },
+ { "label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1 },
+ { "label": "W", "matrix": [1, 2], "x": 2.5, "y": 1 },
+ { "label": "E", "matrix": [1, 3], "x": 3.5, "y": 1 },
+ { "label": "R", "matrix": [1, 4], "x": 4.5, "y": 1 },
+ { "label": "T", "matrix": [1, 5], "x": 5.5, "y": 1 },
+ { "label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1 },
+ { "label": "U", "matrix": [1, 7], "x": 7.5, "y": 1 },
+ { "label": "I", "matrix": [1, 8], "x": 8.5, "y": 1 },
+ { "label": "O", "matrix": [1, 9], "x": 9.5, "y": 1 },
+ { "label": "P", "matrix": [1, 10], "x": 10.5, "y": 1 },
+ { "label": "{", "matrix": [1, 11], "x": 11.5, "y": 1 },
+ { "label": "}", "matrix": [1, 12], "x": 12.5, "y": 1 },
+ { "label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5 },
+
+ { "label": "Caps Lock", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75 },
+ { "label": "A", "matrix": [2, 1], "x": 1.75, "y": 2 },
+ { "label": "S", "matrix": [2, 2], "x": 2.75, "y": 2 },
+ { "label": "D", "matrix": [2, 3], "x": 3.75, "y": 2 },
+ { "label": "F", "matrix": [2, 4], "x": 4.75, "y": 2 },
+ { "label": "G", "matrix": [2, 5], "x": 5.75, "y": 2 },
+ { "label": "H", "matrix": [2, 6], "x": 6.75, "y": 2 },
+ { "label": "J", "matrix": [2, 7], "x": 7.75, "y": 2 },
+ { "label": "K", "matrix": [2, 8], "x": 8.75, "y": 2 },
+ { "label": "L", "matrix": [2, 9], "x": 9.75, "y": 2 },
+ { "label": ":", "matrix": [2, 10], "x": 10.75, "y": 2 },
+ { "label": "\"", "matrix": [2, 11], "x": 11.75, "y": 2 },
+ { "label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25 },
+
+ { "label": "Shift", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25 },
+ { "label": "|", "matrix": [3, 1], "x": 1.25, "y": 3 },
+ { "label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3 },
+ { "label": "X", "matrix": [3, 3], "x": 3.25, "y": 3 },
+ { "label": "C", "matrix": [3, 4], "x": 4.25, "y": 3 },
+ { "label": "V", "matrix": [3, 5], "x": 5.25, "y": 3 },
+ { "label": "B", "matrix": [3, 6], "x": 6.25, "y": 3 },
+ { "label": "N", "matrix": [3, 7], "x": 7.25, "y": 3 },
+ { "label": "M", "matrix": [3, 8], "x": 8.25, "y": 3 },
+ { "label": "<", "matrix": [3, 9], "x": 9.25, "y": 3 },
+ { "label": ">", "matrix": [3, 10], "x": 10.25, "y": 3 },
+ { "label": "?", "matrix": [3, 11], "x": 11.25, "y": 3 },
+ { "label": "Shift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75 },
+ { "label": "Fn", "matrix": [3, 13], "x": 14, "y": 3 },
+
+ { "label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4, "w": 1.25 },
+ { "label": "Win", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25 },
+ { "label": "Alt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25 },
+ { "label": "K47", "matrix": [4, 7], "x": 3.75, "y": 4, "w": 6.25 },
+ { "label": "Alt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25 },
+ { "label": "Win", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25 },
+ { "label": "Menu", "matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25 },
+ { "label": "Ctrl", "matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25 }
+ ]
+ }
+ }
+}
+
diff --git a/keyboards/dztech/og60/keymaps/default/keymap.c b/keyboards/dztech/tofu60/keymaps/default/keymap.c
index 0bf690aab0..0bf690aab0 100644
--- a/keyboards/dztech/og60/keymaps/default/keymap.c
+++ b/keyboards/dztech/tofu60/keymaps/default/keymap.c
diff --git a/keyboards/dztech/og60/keymaps/via/keymap.c b/keyboards/dztech/tofu60/keymaps/via/keymap.c
index 0bf690aab0..0bf690aab0 100644
--- a/keyboards/dztech/og60/keymaps/via/keymap.c
+++ b/keyboards/dztech/tofu60/keymaps/via/keymap.c
diff --git a/keyboards/dztech/dz60rgb/keymaps/moults31/rules.mk b/keyboards/dztech/tofu60/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/dztech/dz60rgb/keymaps/moults31/rules.mk
+++ b/keyboards/dztech/tofu60/keymaps/via/rules.mk
diff --git a/keyboards/dztech/tofu60/matrix_diagram.md b/keyboards/dztech/tofu60/matrix_diagram.md
new file mode 100644
index 0000000000..0bbd201945
--- /dev/null
+++ b/keyboards/dztech/tofu60/matrix_diagram.md
@@ -0,0 +1,24 @@
+# Matrix Diagram for Dztech Tofu60
+
+```
+ ┌───────┐
+ 2u Backspace │0D │
+ └───────┘
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │2C │
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ┌─────┐
+│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ │ │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌──┴┐2D │ ISO Enter
+│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │ │1D │ │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ └───┴────┘
+│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │
+├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤
+│40 │41 │42 │47 │4A │4B │4C │4D │
+└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+┌────────┐ ┌──────────┐
+│31 │ 2.25u LShift 2.75u RShift │3C │
+└────────┘ └──────────┘
+┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
+│40 │41 │42 │47 │4B │4C │4D │ Tsangan/WKL/HHKB
+└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
+```
diff --git a/keyboards/dztech/tofu60/readme.md b/keyboards/dztech/tofu60/readme.md
new file mode 100644
index 0000000000..2cd4de58bf
--- /dev/null
+++ b/keyboards/dztech/tofu60/readme.md
@@ -0,0 +1,22 @@
+# TOFU60
+A customizable 60% HotSwap keyboard.
+
+* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681)
+* Hardware Supported: TOFU60
+* Hardware Availability: [KBDfans](https://kbdfans.com/)
+
+## Bootloader mode
+
+Enter the bootloader in 3 ways:
+
+* Bootmagic reset: Hold down the left top key then plug in the USB cable.
+* Physical reset button: Double tap the reset button.
+* Keycode in layout: Press the key mapped to QK_BOOT if it is available.
+
+## Making firmware
+
+Make example for this keyboard (after setting up your build environment):
+
+ make dztech/tofu60:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/dztech/og60/rules.mk b/keyboards/dztech/tofu60/rules.mk
index e69de29bb2..e69de29bb2 100644
--- a/keyboards/dztech/og60/rules.mk
+++ b/keyboards/dztech/tofu60/rules.mk
diff --git a/keyboards/eason/aeroboard/config.h b/keyboards/eason/aeroboard/config.h
index ff00df878f..2c7d4687b4 100644
--- a/keyboards/eason/aeroboard/config.h
+++ b/keyboards/eason/aeroboard/config.h
@@ -3,7 +3,7 @@
#pragma once
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
/* disable debug print */
diff --git a/keyboards/eco/keymaps/bcat/config.h b/keyboards/eco/keymaps/bcat/config.h
deleted file mode 100644
index 1a3fd81199..0000000000
--- a/keyboards/eco/keymaps/bcat/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2020 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define BCAT_ORTHO_LAYERS
-
-/* WS2812B RGB LED strip hand wired to Elite-C. */
-#define WS2812_DI_PIN B7
-#define RGBLED_NUM 15
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
diff --git a/keyboards/eco/keymaps/bcat/keymap.c b/keyboards/eco/keymaps/bcat/keymap.c
deleted file mode 100644
index 610610f5a5..0000000000
--- a/keyboards/eco/keymaps/bcat/keymap.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Copyright 2020 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "bcat.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- /* Default layer: http://www.keyboard-layout-editor.com/#/gists/2c11371c7a5f7cd08a0132631d3d3281 */
- [LAYER_DEFAULT] = LAYOUT(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_END, KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- XXXXXXX, XXXXXXX, KC_LALT, KC_LCTL, LY_LWR, KC_SPC, XXXXXXX, XXXXXXX, KC_ENT, LY_RSE, KC_RALT, KC_RGUI, XXXXXXX, XXXXXXX
- ),
- /* Lower layer: http://www.keyboard-layout-editor.com/#/gists/11256970dc0552886a82382ee02fa415 */
- [LAYER_LOWER] = LAYOUT(
- MC_ALTT, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KY_CSPC, KY_ZMRST, KY_ZMOUT, KY_ZMIN, KC_WBAK, KC_WFWD, _______, _______, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_TILD,
- _______, KC_APP, KC_PSCR, KC_SCRL, KC_PAUS, KC_LGUI, _______, _______, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_GRV,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /* Raise layer: http://www.keyboard-layout-editor.com/#/gists/308a8be75e0b85902dc18db1b2546862 */
- [LAYER_RAISE] = LAYOUT(
- KC_CAPS, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_F11, KC_DEL,
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_F12, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/b18aafa0327d7e83eaf485546c067a21 */
- [LAYER_ADJUST] = LAYOUT(
- _______, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______,
- _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_VAI, RGB_MOD, RGB_SPI, _______,
- _______, _______, _______, KC_MUTE, _______, _______, _______, _______, RGB_HUI, RGB_SAD, RGB_SAI, RGB_HUD, RGB_SPD, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______
- ),
- // clang-format on
-};
diff --git a/keyboards/eco/keymaps/bcat/readme.md b/keyboards/eco/keymaps/bcat/readme.md
deleted file mode 100644
index fd9e1bea73..0000000000
--- a/keyboards/eco/keymaps/bcat/readme.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# bcat's Eco layout
-
-This is a cute little 4x14 ortholinear keyboard. I've set it up using an
-unsplit, ortho version of my [split 3x6 + 3 thumb
-keys](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/split_3x6_3/bcat)
-(Crkbd) layout, with the following changes:
-
-* The alpha keys are separated by an extra two columns in the middle to provide
-a little more hand separation, similar to a split keyboard.
-
-* The top three rows of the extra middle columns feature navigation keys and
-brackets/braces. I don't really use dedicated keys for these, but I had the
-keycaps, so I figured I may as well put them there.
-
-* I have a Left Alt and Right Super key on the bottom row just like my
-[Lily58](https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58/keymaps/bcat).
-
-* The two keys in each bottom corner are unbound, as is the 2U spacebar in the
-center of the bottom row. These keys are too inconvenient to reach, and there's
-nothing really useful to bind them to anyway.
-
-## Default layer
-
-![Default layer layout](https://i.imgur.com/uRUT2cY.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/2c11371c7a5f7cd08a0132631d3d3281))
-
-## Lower layer
-
-![Lower layer layout](https://i.imgur.com/8SR0M9x.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/11256970dc0552886a82382ee02fa415))
-
-## Raise layer
-
-![Raise layer layout](https://i.imgur.com/U7KERR3.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/308a8be75e0b85902dc18db1b2546862))
-
-## Adjust layer
-
-![Adjust layer layout](https://i.imgur.com/63vm0ke.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/b18aafa0327d7e83eaf485546c067a21))
diff --git a/keyboards/eco/keymaps/bcat/rules.mk b/keyboards/eco/keymaps/bcat/rules.mk
deleted file mode 100644
index 684d8e4e85..0000000000
--- a/keyboards/eco/keymaps/bcat/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-BOOTLOADER = atmel-dfu # Elite-C
-
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/eco/keymaps/that_canadian/keymap.c b/keyboards/eco/keymaps/that_canadian/keymap.c
index 0c8b53385d..edd88b184e 100644
--- a/keyboards/eco/keymaps/that_canadian/keymap.c
+++ b/keyboards/eco/keymaps/that_canadian/keymap.c
@@ -124,14 +124,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -174,36 +169,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/ein_60/keymaps/klackygears/config.h b/keyboards/ein_60/keymaps/klackygears/config.h
deleted file mode 100644
index 91c51cb51c..0000000000
--- a/keyboards/ein_60/keymaps/klackygears/config.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2021 klackygears
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-
-
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM 150
-
-
-#ifdef RGB_MATRIX_ENABLE
- #define RGB_MATRIX_KEYPRESSES
-#endif
diff --git a/keyboards/ein_60/keymaps/klackygears/keymap.c b/keyboards/ein_60/keymaps/klackygears/keymap.c
deleted file mode 100644
index ab5a31ee9f..0000000000
--- a/keyboards/ein_60/keymaps/klackygears/keymap.c
+++ /dev/null
@@ -1,175 +0,0 @@
-/* Copyright 2020 klackygears
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "klackygears.h"
-#include "stdio.h"
-
-//For an explanation of what's going on here with the keymap wrappers, check out drashna's user folder.
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_WINBASE] = LAYOUT_wrapper(
- KC_ESC, _______________DVORAK_L1___________________, KC_MUTE, _______________DVORAK_R1___________________, KC_BSPC,
- AU_TOGG, _______________DVORAK_L2___________________, _______________DVORAK_R2___________________, RGB_TOG,
- CK_TOGG, _______________WINDVK_L3___________________, _______________WINDVK_R3___________________, RGB_MOD,
- KC_1, KC_2, KC_3, ________WIN_THUMB_L______, KC_SPC, ________WIN_THUMB_R______, KC_1, KC_2, KC_GAMER
- ),
- [_MACBASE] = LAYOUT_wrapper(
- KC_ESC, _______________DVORAK_L1___________________, _______, _______________DVORAK_R1___________________, KC_BSPC,
- RGB_TOG, _______________DVORAK_L2___________________, _______________DVORAK_R2___________________, RGB_TOG,
- RGB_MOD, _______________MACDVK_L3___________________, _______________MACDVK_R3___________________, RGB_MOD,
- _______, _______, _______, ________MAC_THUMB_L______, _______, ________MAC_THUMB_R______, _______, _______, _______
- ),
- [_QWERTY] = LAYOUT_wrapper(
- KC_ESC, _________________COLEMAK_L1________________, KC_ESC, _________________QWERTY_R1_________________, KC_BSPC,
- KC_CAPS, _________________COLEMAK_L2________________, _________________QWERTY_R2_________________, KC_ENT,
- KC_LSFT, _________________COLEMAK_L3________________, _________________QWERTY_R3_________________, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, _______, MO(_MNMB), MO(_SYMB), KC_SPC, MO(_SYMB), MO(_MNMB), KC_RGUI,_______, MO(_MDIA), MO(_FUNC)
- ),
-
- //Borderlands
- [_GAMER] = LAYOUT_wrapper(
- KC_ESC, KC_R, KC_G, KC_W, KC_E, KC_1, _______, _________________RGB_1_____________________, KC_WINBASE,
- KC_TAB, KC_V, KC_A, KC_S, KC_D, KC_2, _________________RGB_2_____________________, _______,
- KC_C, KC_I, KC_F, KC_Q, KC_4, KC_3, _________________MEDIA_____________________, _______,
- KC_Z, KC_X, KC_K, KC_LCTL, KC_LSFT, KC_SPC, KC_SPC, KC_F12, KC_P, KC_LEFT, KC_UP, KC_DOWN, KC_RIGHT
- ),
-
- [_SYMB] = LAYOUT_wrapper(
- _______, _________________PUNC_L1_ALT_______________, _______, _________________PUNC_R1___________________, _______,
- _______, _________________PUNC_L3___________________, _________________PUNC_R2___________________, _______,
- RGB_MOD, _________________PUNC_L3_ALT_______________, _________________PUNC_R3___________________, _______,
- _______, _______, KC_NUM, KC_SCRL, KC_DEL, _______, _______, _______, KC_CAPS, _______, _______, _______, _______
- ),
-
- [_FUNC] = LAYOUT_wrapper(
- _______, _____________FUNC_L1_______________________, _______, _______, _____________FUNC_1_______________, _______,
- _______, ________MAC_MISSION_CTRL__________, LGUI(KC_L), _______, _____________FUNC_2_______________, _______,
- RGB_MOD, _____________FUNC_L3_______________________, _______, _____________FUNC_3_______________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, _______, _______, _______
- ),
-
- [_MNMB] = LAYOUT_wrapper(
- _______, _________________MACNAV_L1_________________, _______, _________________NUMB_R1___________________, _______,
- _______, _________________MACNAV_L2_________________, _________________NUMB_R2___________________, _______,
- RGB_MOD, _________________MACNAV_L3_________________, _________________NUMB_R3_MAC_______________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, RSFT_T(KC_ENT), KC_RSFT, _______, _______, _______
- ),
-
-
- [_NUMB] = LAYOUT_wrapper(
- _______, _________________WINNAV_L1_________________, _______, _________________NUMB_R1___________________, _______,
- _______, _________________WINNAV_L2_________________, _________________NUMB_R2___________________, _______,
- RGB_MOD, _________________WINNAV_L3_________________, _________________NUMB_R3_WIN_______________, _______,
- _______, _______, _______, TO(_WINBASE), _______, _______, _______, _______, RSFT_T(KC_ENT), KC_RSFT, _______, _______, _______
- ),
-
- [_MDIA] = LAYOUT_wrapper(
- _______, _________________LYOUT_____________________, _______, _________________RGB_1_____________________, RGB_TOG,
- _______, MU_TOGG, _______, _______, _______, CK_UP, _________________RGB_2_____________________, _______,
- RGB_MOD, MU_NEXT, MU_TOGG, CK_TOGG, CK_RST, CK_DOWN, _________________MEDIA_____________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-
-};
-
-
-#ifdef OLED_ENABLE
-
- char wpm_str[10];
-
-static void render_ein60_logo(void) {
- static const char PROGMEM ein60_logo[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,255, 11,251,139,139,139,139,139,139,139,139,139,139,139, 11, 15, 0,240,240, 16,240, 0,240,240, 16,240,224,192,128, 0, 0, 0, 0,240, 16,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,254,255, 11,251,139,139,139,139,139,139,139,139,139,139,139,143,128, 0, 0, 0, 0,254,255, 11,251, 11, 11, 11, 11,139,203,235,123,187,219,235,251,255, 7,252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,255, 4,253,197,197,197,197,197,197,197,197,197,197,199,192,192, 0,255,255, 0,255, 0,255,255, 0,254, 13, 27, 55,111,222,188,120,255, 0,255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,255, 0,255,197,197,197,197,197,197,197,197,197,197,253,253,255,131,254, 0, 0,255,255, 0,255,184,220,238,247,219,205,198,195,193,192,255,255,255,128,255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 0, 3, 3, 2, 3, 0, 3, 3, 2, 3, 0, 0, 0, 0, 0, 1, 3, 2, 2, 3, 0, 8, 28, 20, 20, 20, 20, 20, 28, 8, 0, 1, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 0, 0, 0, 1, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- };
- oled_write_raw_P(ein60_logo, sizeof(ein60_logo));
- }
-
-
-
-static void render_status(void) {
-//bool oled_task_user(void) {
-
- // Host Keyboard Layer Status
- oled_write_P(PSTR("Layer: "), false);
- switch (get_highest_layer(layer_state)) {
- case _WINBASE:
- oled_write_P(PSTR("Base\n"), false);
- break;
- case _SYMB:
- oled_write_P(PSTR("Symbol\n"), false);
- break;
- case _FUNC:
- oled_write_P(PSTR("FN\n"), false);
- break;
- case _MNMB:
- oled_write_P(PSTR("Numbpad Mac\n"), false);
- break;
- case _NUMB:
- oled_write_P(PSTR("Numbpad\n"), false);
- break;
- case _MDIA:
- oled_write_P(PSTR("Media\n"), false);
- break;
- default:
- // Or use the write_ln shortcut over adding '\n' to the end of your string
- oled_write_ln_P(PSTR("Undefined"), false);
- }
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
-
-
- sprintf(wpm_str, "WPM: %03d", get_current_wpm());
- oled_set_cursor(1,2);
- oled_write(wpm_str, false);
-
-}
-
-bool oled_task_user(void) {
-
- render_status();
- oled_write_ln_P(PSTR(""), false);
- render_ein60_logo();
-
- return false;
-}
-
-#endif
-
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) { /* First encoder */
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else if (index == 1) { /* Second encoder */
- if (clockwise) {
- tap_code(KC_DOWN);
- } else {
- tap_code(KC_UP);
- }
- }
- return true;
-}
diff --git a/keyboards/ein_60/keymaps/klackygears/readme.md b/keyboards/ein_60/keymaps/klackygears/readme.md
deleted file mode 100644
index f97a08bd09..0000000000
--- a/keyboards/ein_60/keymaps/klackygears/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-This is the klackygears userspace keymap for EIN_60. My userspace is heavily based on Drashna's userspace and draws a lot of features from him.
diff --git a/keyboards/ein_60/keymaps/klackygears/rules.mk b/keyboards/ein_60/keymaps/klackygears/rules.mk
deleted file mode 100644
index 885ab5bafe..0000000000
--- a/keyboards/ein_60/keymaps/klackygears/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-
-# Build Options
-# change yes to no to disable
-ENCODER_ENABLE = yes # Enables the use of one or more encoders
-WPM_ENABLE = yes # Enables the WPM counter on the OLED
-RGB_MATRIX_ENABLE = yes # Enable for pretty RGB matrix effects
-AUDIO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/era/divine/config.h b/keyboards/era/divine/config.h
new file mode 100644
index 0000000000..e1083fe5e2
--- /dev/null
+++ b/keyboards/era/divine/config.h
@@ -0,0 +1,20 @@
+/* Copyright 2023 eerraa
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define BACKLIGHT_PWM_DRIVER PWMD0
+#define BACKLIGHT_PWM_CHANNEL RP2040_PWM_CHANNEL_A \ No newline at end of file
diff --git a/keyboards/era/divine/halconf.h b/keyboards/era/divine/halconf.h
new file mode 100644
index 0000000000..5a527da781
--- /dev/null
+++ b/keyboards/era/divine/halconf.h
@@ -0,0 +1,21 @@
+/* Copyright 2023 eerraa
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define HAL_USE_PWM TRUE
+
+#include_next <halconf.h> \ No newline at end of file
diff --git a/keyboards/era/divine/info.json b/keyboards/era/divine/info.json
index de87fd83e2..d02241da78 100644
--- a/keyboards/era/divine/info.json
+++ b/keyboards/era/divine/info.json
@@ -2,12 +2,17 @@
"manufacturer": "ERA",
"keyboard_name": "DIVINE 1.0.0",
"maintainer": "eerraa",
+ "backlight": {
+ "pin": "GP0",
+ "levels": 5
+ },
"bootloader": "rp2040",
"build": {
"debounce_type": "sym_defer_pk"
},
"diode_direction": "COL2ROW",
"features": {
+ "backlight": true,
"bootmagic": true,
"command": false,
"console": false,
@@ -18,8 +23,8 @@
"indicators": {
"caps_lock": "GP1",
"num_lock": "GP2",
- "scroll_lock": "GP3",
- "on_state": 0
+ "on_state": 0,
+ "scroll_lock": "GP3"
},
"matrix_pins": {
"cols": ["GP13", "GP12", "GP19", "GP20", "GP21", "GP22", "GP23", "GP24", "GP25", "GP26", "GP27", "GP28", "GP29", "GP18", "GP5", "GP6", "GP7"],
diff --git a/keyboards/era/divine/mcuconf.h b/keyboards/era/divine/mcuconf.h
new file mode 100644
index 0000000000..7698b5d139
--- /dev/null
+++ b/keyboards/era/divine/mcuconf.h
@@ -0,0 +1,22 @@
+/* Copyright 2023 eerraa
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef RP_PWM_USE_PWM0
+#define RP_PWM_USE_PWM0 TRUE \ No newline at end of file
diff --git a/keyboards/era/divine/readme.md b/keyboards/era/divine/readme.md
index decc7e3d31..3049e3b840 100644
--- a/keyboards/era/divine/readme.md
+++ b/keyboards/era/divine/readme.md
@@ -3,7 +3,7 @@
DIVINE Keyboard
* Keyboard Maintainer: [ERA](https://github.com/eerraa)
-* Hardware Supported: RP2040
+* Hardware Supported: DIVINE 1.0.0 PCB
* Hardware Availability: [ERA](https://github.com/eerraa)
Make example for this keyboard (after setting up your build environment):
@@ -21,5 +21,5 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at ESC(0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
-* **Physical reset button**: Short the reset hole of the PCB twice within 1 second.
+* **Physical reset button**: Briefly short the `RESET` and `GND` pads on the SWD header twice, or short the `BOOT` header and plug in keyboard
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available \ No newline at end of file
diff --git a/keyboards/ergodox_ez/config.h b/keyboards/ergodox_ez/config.h
index de850a0548..af1e14c49f 100644
--- a/keyboards/ergodox_ez/config.h
+++ b/keyboards/ergodox_ez/config.h
@@ -91,9 +91,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// RGB backlight
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define DRIVER_1_LED_TOTAL 24
#define DRIVER_2_LED_TOTAL 24
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/ergodox_ez/ergodox_ez.c b/keyboards/ergodox_ez/ergodox_ez.c
index 3683128234..455d294ef5 100644
--- a/keyboards/ergodox_ez/ergodox_ez.c
+++ b/keyboards/ergodox_ez/ergodox_ez.c
@@ -243,7 +243,7 @@ const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
#ifdef RGB_MATRIX_ENABLE
// clang-format off
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* driver
* | R location
* | | G location
diff --git a/keyboards/ergodox_ez/keymaps/danielo515/config.h b/keyboards/ergodox_ez/keymaps/danielo515/config.h
deleted file mode 100644
index 7428cccc82..0000000000
--- a/keyboards/ergodox_ez/keymaps/danielo515/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- Set any config.h overrides for your specific keymap here.
- See config.h options at https://docs.qmk.fm/#/config_options?id=the-configh-file
-*/
-#pragma once
-
-#define TAPPING_TERM 200
-
-#define ONESHOT_TAP_TOGGLE 3
-
-#define RGBLIGHT_SLEEP
-
-#undef MOUSEKEY_TIME_TO_MAX
-#define MOUSEKEY_TIME_TO_MAX 50
-
-#undef MOUSEKEY_WHEEL_TIME_TO_MAX
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 60
-
-#undef DEBOUNCE
-#define DEBOUNCE 45
-// Memory saving
-#ifdef CONSOLE_ENABLE
-# define NO_DEBUG
-# define NO_PRINT
-#endif
-
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
-
-#undef RGBLIGHT_EFFECT_BREATHING
-#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
-#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#undef RGBLIGHT_EFFECT_SNAKE
-#undef RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_CHRISTMAS
-#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
-#undef RGBLIGHT_EFFECT_RGB_TEST
-#undef RGBLIGHT_EFFECT_ALTERNATING
-#undef RGBLIGHT_EFFECT_TWINKLE
diff --git a/keyboards/ergodox_ez/keymaps/danielo515/keymap.c b/keyboards/ergodox_ez/keymaps/danielo515/keymap.c
deleted file mode 100644
index 281ac956e0..0000000000
--- a/keyboards/ergodox_ez/keymaps/danielo515/keymap.c
+++ /dev/null
@@ -1,326 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "version.h"
-#include "danielo515.h"
-
-/* STUPID JS code to split by ergodox rows. Call the format function with the unformatted array
-sliceBy = groups => items => groups.reduce(({start, acc},size) => ({
- acc: (acc.push(items.slice(start,start+size)),acc ),
- start: start + size
-}), {acc:[],start:0}).acc
-findMaxLen = items => items.reduce((max,curr) => max < curr.length ? curr.length : max,0)
-setLen = len => strings => strings.map(str => str.padEnd(len, " "));
-const format = string => {
- const items = string.split(/,\s*(?![^()]*\))/)
- const group = sliceBy([7,7,6,7,5,2,1,3])
- const resize = setLen(findMaxLen(items));
- const joinstr = ',\n'
- const leftItems = group(items.slice(0,items.length/2))
- const rightItems = group(items.slice(items.length/2))
- const [left,right] = [leftItems.map(resize).join(joinstr),rightItems.map(resize).join(joinstr)]
- return `\n${left},\n\n${right}\n`
-}
-*/
-
-#define OSM_SF_CMD OSM(MOD_LGUI | MOD_LSFT)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [0] = LAYOUT_ergodox(
- KC_EQL ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,OSM(MOD_HYPR) ,
- KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,TD(PASTE_DANCE) ,
- KC_DELETE ,KC_A ,LT(3,KC_S) ,LT(2,KC_D) ,LT(4,KC_F) ,KC_G ,
- KC_GRAVE ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,TD(COPY_CUT) ,
- KC_BSLS ,OSM(MOD_LCTL) ,OSM(MOD_LALT) ,KC_LEFT ,KC_RIGHT ,
- OSM_SF_CMD ,KC_PLUS ,
- KC_INSERT ,
- OSM(MOD_LSFT) ,LT(2,KC_BSPC) ,OSM(MOD_LGUI) ,
-
-
- TO(1) ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,LT(3,KC_0) ,KC_DQUO ,
- KC_UNDS ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,RSFT_T(KC_MINUS) ,
- HYPR_H ,ALT_J ,CTL_K ,LT(6,KC_L) ,TD_CLN ,CMD_QUOT ,
- ALT_TAB ,KC_N ,MEH_T(KC_M) ,KC_COMMA ,KC_DOT ,KC_SLASH ,LT(4,KC_KP_ASTERISK),
- LT(4,KC_ENTER) ,KC_DOWN ,KC_LBRC ,KC_RBRC ,OSL(2) ,
- KC_AUDIO_MUTE ,KC_ESCAPE ,
- KC_END ,
- KC_COLN ,QK_LEAD ,LT(4,KC_SPACE)
- ),
-
- [1] = LAYOUT_ergodox(
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,AC_E ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- LT(5, KC_DELETE),AC_A ,KC_TRANSPARENT ,KC_TRANSPARENT ,FIND ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- OSM(MOD_LSFT) ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- TO(8) ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_ENTER ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT),
-
- [2] = LAYOUT_ergodox(
- KC_TRANSPARENT,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_PIPE ,KC_CALCULATOR ,
- KC_TRANSPARENT,KC_HASH ,KC_DLR ,KC_TRANSPARENT,KC_RPRN ,KC_GRAVE ,
- KC_TRANSPARENT,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,
- RGB_HUI ,
- KC_TRANSPARENT,KC_TRANSPARENT,RGB_HUD ,
- KC_DELETE ,KC_A ,KC_B ,KC_C ,KC_D ,KC_E ,KC_BSPC ,
- KC_ENTER ,KC_F ,KC_7 ,KC_8 ,KC_9 ,KC_PERC ,KC_TRANSPARENT,
- KC_HASH ,KC_4 ,KC_5 ,KC_6 ,KC_PLUS ,KC_KP_ASTERISK,
- KC_KP_ENTER ,KC_COLON ,KC_1 ,KC_2 ,KC_3 ,KC_SLASH ,KC_BSLS ,
- KC_0 ,KC_COMMA ,KC_DOT ,KC_EQUAL ,KC_TRANSPARENT,
- RGB_TOG ,RGB_SLD ,
- RGB_VAI ,
- RGB_VAD ,KC_BSPC ,KC_SPACE
- ),
-
- [3] = LAYOUT_ergodox(
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_LABK ,KC_RABK ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_AT ,KC_TRANSPARENT ,KC_EQL ,F_ARROW ,KC_GRAVE ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_LBRC ,KC_RBRC ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,IARROW ,ARROW ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- // Right hand
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- LALT(LSFT(KC_UP)) ,KC_HASH ,KC_LCBR ,KC_RCBR ,KC_KP_ASTERISK ,KC_PERC ,KC_DLR ,
- KC_AMPR ,KC_LPRN ,KC_RPRN ,CLN_EQ ,KC_KP_PLUS ,KC_PIPE ,
- LALT(LSFT(KC_DOWN)),KC_EXLM ,KC_TILD ,KC_CIRC ,ARROW ,KC_BSLS ,KC_BSLS ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- QK_BOOT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_SPACE
-),
-
- [4] = LAYOUT_ergodox(
- KC_TRANSPARENT ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,LCTL(KC_Q) ,LCTL(KC_DOWN) ,LGUI(KC_DOWN) ,WIN_LEFT_HALF ,WIN_RIGHT_HALF ,LALT(LSFT(KC_UP)) ,
- LCTL(LSFT(KC_P)) ,LCTL(KC_A) ,SAVE ,LCTL(KC_D) ,KC_TRANSPARENT ,RGUI(KC_R) ,
- LCTL(LSFT(KC_F)) ,UNDO ,CUT ,KC_PSCR ,KC_TRANSPARENT ,LGUI(KC_RIGHT) ,LALT(LSFT(KC_DOWN)),
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
-
- LALT(KC_F4) ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,
- LALT(KC_UP) ,LSFT(KC_HOME) ,LSFT(KC_LEFT) ,KC_UP ,LSFT(KC_RIGHT) ,LSFT(KC_END) ,KC_F13 ,
- KC_HOME ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_END ,KC_F12 ,
- LALT(KC_DOWN) ,LSFT(KC_INSERT) ,LCTL(LSFT(KC_J)) ,LSFT(KC_UP) ,KC_PGUP ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,LSFT(KC_DOWN) ,KC_PGDN ,WIN_TO_LEFT ,WIN_TO_RIGHT ,
- KC_TRANSPARENT ,KC_SYSTEM_SLEEP ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_BSPC ,KC_TRANSPARENT
- ),
-
- [5] = LAYOUT_ergodox(
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,LCTL(KC_TAB) ,LCTL(LSFT(KC_TAB)) ,LGUI(KC_D) ,LCTL(KC_F) ,KC_TRANSPARENT ,
- LGUI(KC_L) ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
-
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,LSFT(KC_F9) ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,LCTL(LGUI(KC_LEFT)) ,LCTL(LGUI(KC_RIGHT)),KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,LCTL(KC_T) ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT
-),
-
- [6] = LAYOUT_ergodox(
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_MS_ACCEL2 ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_MS_WH_DOWN ,KC_MS_UP ,KC_MS_WH_UP ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_MS_LEFT ,KC_MS_DOWN ,KC_MS_RIGHT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_MS_BTN3 ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_MS_BTN1 ,KC_MS_BTN2 ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_PGUP ,LCTL(LGUI(KC_RIGHT)),KC_MS_WH_UP ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- LGUI(RCTL(KC_LEFT)) ,KC_MS_WH_DOWN ,LCTL(KC_C) ,KC_TRANSPARENT ,KC_MEDIA_STOP ,KC_MEDIA_PLAY_PAUSE ,
- KC_PGDN ,LCTL(LSFT(KC_N)) ,LCTL(LSFT(KC_J)) ,KC_MEDIA_PREV_TRACK ,KC_MEDIA_NEXT_TRACK ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_AUDIO_VOL_UP ,KC_AUDIO_VOL_DOWN ,KC_AUDIO_MUTE ,KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,
- KC_TRANSPARENT ,
- KC_TRANSPARENT ,KC_TRANSPARENT ,KC_TRANSPARENT
- ),
-
- [7] = LAYOUT_ergodox(
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
-
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_UP ,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT
- ),
-
- [8] = LAYOUT_ergodox(
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_Q ,KC_W ,KC_E ,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_ENTER ,KC_A ,KC_S ,KC_D ,KC_F ,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_Z ,KC_X ,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,
- KC_SPACE ,KC_LSFT ,KC_TRANSPARENT,
-
- TO(0) ,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_PGDN ,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_ENTER ,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,
- KC_TRANSPARENT,
- KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT
- ),
-};
-// Used for blinking leds on layers higher than 7
-uint16_t blink_timer = 0;
-uint16_t blink_elapsed = 0;
-bool blink_led_1 = false;
-bool blink_led_2 = false;
-bool blink_led_3 = false;
-
-void matrix_scan_kb(void){
- // first 7 layers do not need to blink
- if(blink_led_1 || blink_led_2 || blink_led_3){
- ergodox_board_led_off();
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- blink_elapsed = timer_elapsed(blink_timer);
- if(blink_elapsed > 2000) { blink_timer = timer_read();}
- if(blink_elapsed < 1000) {
- if(blink_led_1) ergodox_right_led_1_on();
- if(blink_led_2) ergodox_right_led_2_on();
- if(blink_led_3) ergodox_right_led_3_on();
- }
- }
- matrix_scan_user();
-};
-
-layer_state_t layer_state_set_user(layer_state_t state)
-{
-
- uint8_t layer = get_highest_layer(state);
-
- ergodox_board_led_off();
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- blink_led_1=false;
- blink_led_2=false;
- blink_led_3=false;
-
- switch (layer)
- {
- case 0:
- rgblight_setrgb(0, 200, 200);
- break;
- case 1:
- ergodox_right_led_1_on();
- rgblight_setrgb(0, 200, 0); // green
- break;
- case 2:
- ergodox_right_led_2_on();
- rgblight_setrgb(0, 0, 255);
- break;
- case 3:
- ergodox_right_led_3_on();
- rgblight_setrgb(255, 0, 0);
- break;
- case 4:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- rgblight_setrgb(200, 65, 0);
- break;
- case 5:
- ergodox_right_led_1_on();
- ergodox_right_led_3_on();
- rgblight_setrgb(0, 80, 33);
- break;
- case 6:
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- rgblight_setrgb(0, 10, 200);
- break;
- case 7:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- rgblight_setrgb(90, 150, 90);
- break;
- case 8:
- blink_led_1=true;
- rgblight_setrgb(100, 0, 100);
- break;
- case 9:
- rgblight_setrgb(200, 150, 90);
- break;
-// default:
-// rgblight_setrgb(0, 200, 200);
-// break;
- }
- return state;
-};
-
-// use leds to indicate when a one shot mod is on
-void oneshot_mods_changed_user(uint8_t mods) {
- ergodox_board_led_off();
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- // One shot checks
- if (mods & MOD_MASK_SHIFT) {
- ergodox_right_led_1_on();
- }
- if (mods & MOD_MASK_CTRL) {
- ergodox_right_led_2_on();
- }
- if (mods & MOD_MASK_ALT) {
- ergodox_right_led_3_on();
- }
- // if (mods & MOD_MASK_GUI) {
- // println("Oneshot mods GUI");
- // }
- }
-
-void oneshot_locked_mods_changed_user(uint8_t mods) {
- oneshot_mods_changed_user(mods);
-}
-
-//=============== alt_tab callbacks
-void alt_tab_activated(void){
- layer_on(7); // activate motion layer
-}
-void alt_tab_deactivated(void){
- layer_off(7); // activate motion layer
-}
diff --git a/keyboards/ergodox_ez/keymaps/danielo515/rules.mk b/keyboards/ergodox_ez/keymaps/danielo515/rules.mk
deleted file mode 100644
index 99ab4f0e18..0000000000
--- a/keyboards/ergodox_ez/keymaps/danielo515/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-# Set any rules.mk overrides for your specific keymap here.
-# See rules at https://docs.qmk.fm/#/config_options?id=the-rulesmk-file
-LTO_ENABLE = yes
-AUTO_SHIFT_ENABLE = no
-TAP_DANCE_ENABLE = yes # Enable the tap dance feature.
-LEADER_ENABLE = yes
-CONSOLE_ENABLE = no
-RGBLIGHT_ENABLE = yes
-COMBO_ENABLE = yes
diff --git a/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md b/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md
deleted file mode 100644
index 5730a61051..0000000000
--- a/keyboards/ergodox_ez/keymaps/dvorak_42_key/README.md
+++ /dev/null
@@ -1,19 +0,0 @@
-Overview
-========
-
-This is a dvorak based layout for the Ergodox EZ. Its basic key layout is similar to the Atreus "dvorak_42_key" layout. In fact this layout was created for seamless switching between the Ergodox EZ and Atreus. On the base layer, the keys that don't exist on the Atreus are mapped to MEH shortcuts and can be interpreted by Autohotkey. This layout only makes use of the 42 keys that the Atreus also has for the main functionality.
-
-How to build
-------------
-make ergodox_ez:dvorak_42_key:teensy
-
-Layers
-------
-* BASE: basic dvorak layout
-* KEYNAV: arrow-key navigation. Momentary toggle held by thumb allows the right hand to navigate through text as well as copy/paste/cut, page up/page down
-* KEYSEL: similar to KEYNAV, except for shift-selection
-* COMBINED: this is a layer that combines numbers, brackets and special characters. !@#$%^&*( can be typed by shift+COMBINED+1/2/3/etc..
-* BROWSER_CONTROL: primarily browser left/right tab, open new tab/delete tab, but also mouse keys.
-* SHELL_NAV: Linux Bash shortcuts (move forward/backward in command line, Ctrl+C, recall last argument, etc
-* SHELL_SCREEN: Linux screen (run multiple terminals in one window) shortcuts such as open new tabs, switch between tabs
-* SCREEN_NAV: special layer for copy/pasting within Linux screen, allows using various copy/paste buffers \ No newline at end of file
diff --git a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
deleted file mode 100644
index f8fce23ce5..0000000000
--- a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c
+++ /dev/null
@@ -1,340 +0,0 @@
-// Copyright 2022 LucW (@luc-languagetools)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-#include "debug.h"
-#include "action_layer.h"
-#include "version.h"
-#include "dvorak_42_key.h"
-
-
-// to build this keymap
-// make ergodox_ez:dvorak_42_key:teensy
-// or:
-// qmk compile -kb ergodox_ez -km dvorak_42_key
-// flashing from rpi:
-// sudo teensy_loader_cli -v -w .build/ergodox_ez_dvorak_42_key.hex --mcu atmega32u4
-
-// keeping fork up to date:
-// https://help.github.com/articles/configuring-a-remote-for-a-fork/
-// https://help.github.com/articles/syncing-a-fork/
-// pushing dev branch
-// git push origin dev:dev
-
-// debounce settings
-// remove these after getting a new keyboard
-// #define DEBOUNCE 50
-
-
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT_ergodox(
- // left hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- OSL(VSCODE), KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, KC_TRNS,
- OSL(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I,
- OSL(SHELL_SCREEN), KC_SCLN, KC_Q, KC_J, KC_K, KC_X, MO(VSCODE),
- MEH(KC_0), OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL),
-
- // left thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- MO(COMBINED),MO(KEYNAV), KC_TRNS,
-
- // right hand
- KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MEH(KC_7),
- MEH(KC_1), KC_F, KC_G, KC_C, KC_R, KC_L, KC_TAB,
- KC_D, KC_H, KC_T, KC_N, KC_S, RCTL(KC_BSPC),
- MEH(KC_2), KC_B, KC_M, KC_W, KC_V, KC_Z, MEH(KC_8),
- KC_BSPC, RCTL(KC_BSPC), KC_CAPS, OSM(MOD_LSFT),MEH(KC_9),
-
- // right thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_ENTER, KC_SPACE
-
- ),
-
- [KEYNAV] = LAYOUT_ergodox(
- // left hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_ESC, RCTL(KC_ENTER), RCTL(KC_K), RCTL(KC_Z), RCTL(KC_S), RCTL(KC_N), KC_TRNS,
- KC_TRNS, MO(KEYSEL), KC_TRNS, RSFT(KC_TAB), KC_TAB, RCTL(KC_F),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NP_DUPE_LINE, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // left thumb cluster
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
-
-
- // right hand
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MEH(KC_G),
- KC_TRNS,KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, MEH(KC_H),
- LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), MEH(KC_I),
- KC_TRNS,KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), KC_PGDN, MEH(KC_J),
- KC_BSPC, RCTL(KC_BSPC), KC_DELETE, LCTL(KC_DELETE), MEH(KC_K),
-
- // right thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- // key selection layer
- [KEYSEL] = LAYOUT_ergodox(
- // left hand
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // bottom row
- QK_BOOT,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, RSFT(KC_HOME), RSFT(KC_UP), RSFT(KC_END), RSFT(KC_PGUP), KC_TRNS,
- RSFT(RCTL(KC_LEFT)), RSFT(KC_LEFT), RSFT(KC_DOWN), RSFT(KC_RIGHT), RSFT(RCTL(KC_RIGHT)), KC_TRNS,
- KC_TRNS, KC_TRNS, RCTL(KC_C), RCTL(KC_X), RCTL(KC_V), RSFT(KC_PGDN), KC_TRNS,
- // bottom row
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- // shell navigation layer
- [SHELL_NAV] = LAYOUT_ergodox(
- // left hand
- KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,SHELL_GIT_DIFF, SHELL_PGREP, SHELL_PLESS, SHELL_LESS, KC_TRNS, KC_TRNS,
- KC_TRNS,SHELL_GIT_STATUS, SHELL_CDPRE, SHELL_LSLTR, SHELL_LS, SHELL_LSLA,
- KC_TRNS,SHELL_SCREEN_LIST, SHELL_SCREENRD, SHELL_SCREEN_NEW, SHELL_TAILF, KC_TRNS, KC_TRNS,
- // bottom row
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, RCTL(KC_D), KC_HOME, KC_UP, KC_END, RCTL(KC_L), RCTL(KC_X),
- LALT(KC_B), KC_LEFT, KC_DOWN, KC_RIGHT, LALT(KC_F), RCTL(KC_W),
- KC_TRNS, RCTL(KC_U), LALT(KC_DOT), RCTL(KC_R), KC_BTN2, RCTL(KC_K), RCTL(KC_C),
- // bottom row
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-
- // linux screen layer
- [SHELL_SCREEN] = LAYOUT_ergodox(
- // left hand
- KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, SCREEN_READREG_3, SCREEN_READREG_2, SCREEN_READREG_1, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, SCREEN_PASTEREG_3, SCREEN_PASTEREG_2, SCREEN_PASTEREG_1, SCREEN_DETACH,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // bottom row
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, SCREEN_7, SCREEN_8, SCREEN_9, SCREEN_RENAME, KC_TRNS,
- SCREEN_TAB_LEFT, SCREEN_4, SCREEN_5, SCREEN_6, SCREEN_TAB_RIGHT, SCREEN_COPY_MODE,
- KC_TRNS, KC_TRNS, SCREEN_1, SCREEN_2, SCREEN_3, SCREEN_NUMBER, SCREEN_PASTE,
- // bottom row
- SCREEN_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, SCREEN_KILL, SCREEN_NEW_TAB
- ),
-
- // android studio shortcuts
- [ANDROID_STUDIO] = LAYOUT_ergodox(
- // left hand
- KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // bottom row
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- AS_CMT_LINE, AS_COPYLINEDOWN, AS_FINDUSAGE, AS_GO_DECLARATION, AS_GO_IMPLEMENTATION, AS_LINE, AS_BRACKET,
- AS_CLOSETAB, AS_TABLEFT, AS_TABRIGHT, AS_SYMBOL, AS_CLASS, AS_BACK,
- AS_CMT_BLOCK, KC_TRNS, AS_BM_PREV, AS_BM_NEXT, KC_TRNS, AS_CLOSETOOLWINDOW, AS_BM_TOGGLE,
- // bottom row
- KC_TRNS, AS_BM_LIST, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, AS_DEL_LINE, KC_TRNS
- ),
-
- // vscode shortcuts shortcuts
- [VSCODE] = LAYOUT_ergodox(
- // left hand
- KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, VS_CMT_BLOCK, VS_CMT_LINE, VS_BM_LISTALL, KC_TRNS,
- KC_TRNS, KC_TRNS, VS_TOGGLE_TERMINAL, VS_FOCUS_TERMINAL, VS_FOCUS_EDITOR, VS_BM_LIST,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, VS_BM_CLEARALL, KC_TRNS,
- // bottom row
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, VS_COPYLINEDOWN, VS_REFERENCES, VS_DEFINITION, VS_IMPLEMENTATION, VS_LINE, VS_BRACKET,
- VS_CLOSETAB, VS_TABLEFT, VS_TABRIGHT, VS_SYMBOLEDITOR, VS_FILE, VS_BACK,
- KC_TRNS, VS_JUMPY, VS_BM_PREV, VS_BM_NEXT, VS_GROUP_1, VS_GROUP_2, VS_BM_TOGGLE,
- // bottom row
- VS_COMMANDS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, VS_DEL_LINE, KC_TRNS
- ),
-
-
- [COMBINED] = LAYOUT_ergodox(
-
- // left hand
- KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_TRNS,
- KC_TRNS,KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_UNDS,
- KC_TRNS,KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_AMPR, KC_TRNS,
- // bottom row
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
-
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_PLUS, KC_7, KC_8, KC_9, KC_ASTR, KC_PIPE,
- KC_MINS, KC_4, KC_5, KC_6, KC_SLSH, KC_BSLS,
- KC_TRNS, KC_EQUAL, KC_1, KC_2, KC_3, KC_QUES, KC_DOT,
- // bottom row
- KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS),
-
-
- [BROWSER_CONTROL] = LAYOUT_ergodox(
- // left hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_BTN3, KC_MS_U, KC_BTN1, KC_BTN2, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, WINDOWS10_WORKSPACE_LEFT, WINDOWS10_WORKSPACE_RIGHT, WINDOWS10_TASK_VIEW, KC_TRNS,
- // bottom row
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_UP, KC_PGUP, KC_PGDN, KC_MS_WH_UP, KC_TRNS, KC_TRNS,
- KC_DOWN, RCTL(KC_PGUP), RCTL(KC_PGDN),KC_MS_WH_DOWN, LALT(KC_LEFT), KC_TRNS,
- KC_TRNS, KC_TRNS, RCTL(KC_1), RCTL(KC_9), KC_F6, KC_F5, KC_TRNS,
- // bottom row
- RCTL(LSFT(KC_TAB)), RCTL(KC_TAB), KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, RCTL(KC_W), RCTL(KC_T)
- ),
-
-
- // shortcuts to be intercepted by autohotkey
- [SHORTCUTS] = LAYOUT_ergodox(
- // left hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS,
- KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- KC_TRNS, OSM(MOD_LSFT), OSM(MOD_LGUI), OSM(MOD_LALT), OSM(MOD_LCTL), KC_TRNS, KC_TRNS,
- // bottom row
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- // thumb cluster
- KC_TRNS,KC_TRNS,
- KC_TRNS,
- KC_TRNS,DF(BASE),KC_TRNS,
- // right hand
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TRNS, MEH(KC_I), MEH(KC_J), MEH(KC_K), MEH(KC_L), MEH(KC_M), MEH(KC_N),
- MEH(KC_O), MEH(KC_P), MEH(KC_Q), MEH(KC_R), MEH(KC_S), MEH(KC_T),
- KC_TRNS, MEH(KC_U), MEH(KC_V), MEH(KC_W), MEH(KC_X), MEH(KC_Y), MEH(KC_Z),
- // bottom row
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- // thumb cluster
- KC_TRNS, KC_TRNS,
- KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-
-};
-
-
-
-
-
-bool led_update_user(led_t led_state) {
- if (led_state.caps_lock) {
- ergodox_right_led_1_on();
- } else {
- ergodox_right_led_1_off();
- }
- return false;
-}
-
-
-void matrix_scan_user(void) {
-
- uint8_t layer = get_highest_layer(layer_state);
-
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- switch (layer) {
- case COMBINED:
- ergodox_right_led_2_on();
- break;
- case SHELL_NAV:
- case SHELL_SCREEN:
- case KEYNAV:
- case KEYSEL:
- case VSCODE:
- ergodox_right_led_3_on();
- break;
- case BROWSER_CONTROL:
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- case SHORTCUTS:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- default:
- break;
- }
-
-};
diff --git a/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c b/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/ergodox_ez/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/ergodox_ez/keymaps/ericgebhart/readme.md b/keyboards/ergodox_ez/keymaps/ericgebhart/readme.md
deleted file mode 100644
index 4f71bf39ee..0000000000
--- a/keyboards/ergodox_ez/keymaps/ericgebhart/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-Overview
-========
-
-These are my ergodox_ez keymaps. There isn't much here. Go take a look at my Userspace readme.
-That's where all the code is.
diff --git a/keyboards/ergodox_ez/keymaps/hacker_dvorak/rules.mk b/keyboards/ergodox_ez/keymaps/hacker_dvorak/rules.mk
index 9da5278ed9..aaf4e53f6e 100644
--- a/keyboards/ergodox_ez/keymaps/hacker_dvorak/rules.mk
+++ b/keyboards/ergodox_ez/keymaps/hacker_dvorak/rules.mk
@@ -31,7 +31,6 @@ SWAP_HANDS_ENABLE = no # Allow swapping hands of keyboard.
# POINTING_DEVICE_ENABLE = no
# AUTO_SHIFT_ENABLE = no
-# AUTO_SHIFT_MODIFIERS = no
# This don't need argument?
# CUSTOM_MATRIX # Custom matrix file for the ErgoDox EZ
diff --git a/keyboards/ergodox_ez/keymaps/pvinis/keymap.c b/keyboards/ergodox_ez/keymaps/pvinis/keymap.c
deleted file mode 100644
index dcdaa7098b..0000000000
--- a/keyboards/ergodox_ez/keymaps/pvinis/keymap.c
+++ /dev/null
@@ -1,334 +0,0 @@
-// pvinis ergodox ez
-// ,------------------------------------. ┌────┬────┬────┬────┬────┬────┬──────┐
-// | | | | | | | | │ │ │ │ │ │ │ │
-// |------+----+----+----+----+---------| ├────┼────┼────┼────┼────┼────┼──────┤
-// | | | | | | | | │ │ │ │ │ │ │ │
-// |------+----+----+----x----x----| | │ ├────╆━━━━╅────┼────┼────┼──────┤
-// | | | | | | |----| ├────┤ ┃ ┃ │ │ │ │
-// |------+----+----+----x----x----| | │ ├────╄━━━━╃────┼────┼────┼──────┤
-// | | | | | | | | │ │ │ │ │ │ │ │
-// `------+----+----+----+----+---------' └────┴────┼────┼────┼────┼────┼────┬─┘
-// | | | | | | │ │ │ │ │ │
-// `------------------------' └────┴────┴────┴────┴────┘
-// ,---------. ┌────┬────┐
-// | | | │ │ │
-// ,----+----+----| ├────┼────┼────┐
-// | | | | │ │ │ │
-// | | |----| ├────┤ │ │
-// | | | | │ │ │ │
-// `--------------' └────┴────┴────┘
-
-#include QMK_KEYBOARD_H
-#include "pvinis.h"
-#include "mousekey.h"
-
-// layers
-enum {
- MOUSE = 8,
-};
-
-// extra keys
-enum {
- NONE = 30,
- TD_LAYR, // SYSCTL and MOUSE layer switch
-};
-
-// application selection
-// this is sending ctrl-alt-gui-<key>, and this is picked up by hammerspoon
-#define AP_SLCK ALLM(KC_S)
-#define AP_XCOD ALLM(KC_X)
-#define AP_MSGR ALLM(KC_M)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // ,------------------------------------. ,------------------------------------.
- // |4xFLSH| | | | | |Opt | | | | | | | | |
- // |------+----+----+----+----+---------| |----+----+----+----+----+----+------|
- // | Tab | | | | | | | | | | | | | | |
- // |------+----+----+----x----x----| | | |----x----x----+----+----+------|
- // |EscCtl| | | | | |----| |----| | | | | | Ent |
- // |------+----+----+----x----x----| | | |----x----x----+----+----+------|
- // |LShift| | | | | | | | | | | | | |RShift|
- // `------+----+----+----+----+---------' `---------+----+----+----+----+------'
- // | | | |Cmd |LOWR| |RASE|RAlt| | | |
- // `------------------------' `------------------------'
- // ,---------. ,---------.
- // |QWER| | | | |
- // ,----+----+----| |----+----+----.
- // | Ba | L | | | | | |
- // | ck |Shi |----| |----| |Spc |
- // | spc| ft | | | | | |
- // `--------------' `--------------'
- [LR_BASE] = LAYOUT_ergodox_pretty_wrapper(
- // clang-format off
- TD_3FLS, _______, _______, _______, _______, _______, KC_LALT, _______, _______, _______, _______, _______, _______, _______,
- KC_TAB , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- PV_ESCC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT ,
- KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT,
- _______, _______, _______, KC_LGUI, SYMBOL , SYSCTL , KC_RALT, _______, _______, _______,
- QWERTY , CARPALX, _______, _______,
- _______, _______,
- KC_BSPC, _______, _______, _______, _______, KC_SPC
- // clang-format on
- ),
-
- // ,------------------------------------. ,------------------------------------.
- // | | NUMBERS_L | | | - | NUMBERS_R | = |
- // |------+----+----+----+----+---------| |----+----+----+----+----+----+------|
- // | | | [ | | ] | | |
- // |------+ | | | | +------|
- // | | QWERTY_L |----| |----| QWERTY_R | |
- // |------+ | ( | | ) | +------|
- // | | | | | | | |
- // `------+----+----+----+----+---------' `---------+----+----+----+----+------'
- // | | ` | | | | | | | | ' | |
- // `------------------------' `------------------------'
- // ,---------. ,---------.
- // | | | | | |
- // ,----+----+----| |----+----+----.
- // | | | | | | | |
- // | | |----| |----| | |
- // | | | | | | | |
- // `--------------' `--------------'
- // See `users/pvinis/pvinis.h`
- [LR_QWERTY] = LAYOUT_ergodox_pretty_wrapper(
- // clang-format off
- _______, ________________NUMBERS_L__________________, _______, KC_MINS, ________________NUMBERS_R__________________, KC_EQL ,
- _______, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, _________________QWERTY_R1_________________, _______,
- _______, _____________MOD_QWERTY_L2_________________, _____________MOD_QWERTY_R2_________________, _______,
- _______, _________________QWERTY_L3_________________, KC_LPRN, KC_RPRN, _________________QWERTY_R3_________________, _______,
- _______, KC_GRV, _______, _______, _______, _______, _______, _______, KC_QUOT , _______,
- _______, _______, _______, _______,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format off
- ),
-
- // ,------------------------------------. ,------------------------------------.
- // | | NUMBERS_L | | | | NUMBERS_R | |
- // |------+----+----+----+----+---------| |----+----+----+----+----+----+------|
- // | | | | | | | |
- // |------+ | | | | +------|
- // | | CARPALX_L |----| |----| CARPALX_R | |
- // |------+ | | | | +------|
- // | | | | | | | |
- // `------+----+----+----+----+---------' `---------+----+----+----+----+------'
- // | | | | | | | | | | | |
- // `------------------------' `------------------------'
- // ,---------. ,---------.
- // | | | | | |
- // ,----+----+----| |----+----+----.
- // | | | | | | | |
- // | | |----| |----| | |
- // | | | | | | | |
- // `--------------' `--------------'
- // See `users/pvinis/pvinis.h`
- [LR_CARPALX] = LAYOUT_ergodox_pretty_wrapper(
- // clang-format off
- _______, ________________NUMBERS_L__________________, _______, _______, ________________NUMBERS_R__________________, _______,
- _______, ________________CARPALX_L1_________________, _______, _______, ________________CARPALX_R1_________________, _______,
- _______, ________________CARPALX_L2_________________, ________________CARPALX_R2_________________, _______,
- _______, ________________CARPALX_L3_________________, _______, _______, ________________CARPALX_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format on
- ),
-
- // See `users/pvinis/pvinis.h`
- [LR_SYMBOL] = LAYOUT_ergodox_pretty_wrapper(
- // clang-format off
- _______, ______________________F_L__________________, KC_F11 , KC_F12 , ______________________F_R__________________, _______,
- _______, _________________SYMBOL_L1_________________, _______, _______, _________________SYMBOL_R1_________________, _______,
- _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______,
- _______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format off
- ),
-
- // See `users/pvinis/pvinis.h`
- [LR_SYSCTL] = LAYOUT_ergodox_pretty_wrapper(
- // clang-format off
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________SYSCTL_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _________________SYSCTL_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-
- _______, _______, _______, _______,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format on
- ),
-
- // See `users/pvinis/pvinis.h`
- [LR_KBCTL] = LAYOUT_ergodox_pretty_wrapper(
- // clang-format off
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R1_________________, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R2_________________, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, __________________KBCTL_R3_________________, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- // clang-format on
- ),
-
- /* MOUSE
- * a keymap to control my system.
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ^ | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | | | | | | MsUp | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | |------| |------| |MsLeft| MsDn |MsRght| | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | |MidClk|
- * ,------|------|------| |------+------+------.
- * | | | | | |Left |Right |
- * | | |------| |------| Click| Click|
- * | | | ^ | | | | |
- * `--------------------' `--------------------'
- */
- [MOUSE] = LAYOUT_ergodox_pretty(
- // clang-format off
- KC_TRNS ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
-
- ,KC_NO ,KC_NO
- ,KC_NO
- ,KC_NO ,KC_NO ,KC_TRNS
-
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_MS_U ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO
-
- ,KC_NO ,KC_NO
- ,KC_NO
- ,KC_NO ,KC_NO ,KC_NO
- // clang-format on
- ),
-};
-
-// keyboard initialization
-void keyboard_post_init_user_keymap(void) {
- ergodox_led_all_on();
- for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) {
- ergodox_led_all_set(i);
- wait_ms(5);
- }
- wait_ms(1000);
- for (int i = LED_BRIGHTNESS_LO; i > 0; i--) {
- ergodox_led_all_set(i);
- wait_ms(10);
- }
- ergodox_led_all_off();
-
- // restore default brightness for future use
- ergodox_led_all_set(LED_BRIGHTNESS_HI);
-}
-
-// light up leds based on the layer
-layer_state_t layer_state_set_user_keymap(layer_state_t state) {
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- switch (get_highest_layer(state)) {
- case LR_SYSCTL:
- ergodox_right_led_3_on(); // blue
- break;
- case LR_KBCTL:
- ergodox_right_led_1_on(); // red
- break;
- case LR_SYMBOL:
- ergodox_right_led_2_on(); // green
- break;
- default:
- break;
- }
- return state;
-}
-
-// tap dances
-
-// flash keyboard on 4x tap, with leds
-// void flash_each_tap(tap_dance_state_t *state, void *user_data) {
-// switch (state->count) {
-// case 1:
-// ergodox_right_led_3_on();
-// break;
-// case 2:
-// ergodox_right_led_2_on();
-// break;
-// case 3:
-// ergodox_right_led_1_on();
-// break;
-// case 4:
-// ergodox_right_led_3_off();
-// wait_ms(50);
-// ergodox_right_led_2_off();
-// wait_ms(50);
-// ergodox_right_led_1_off();
-// break;
-// }
-// }
-
-// void flash_dance_finished(tap_dance_state_t *state, void *user_data) {
-// if (state->count >= 4) {
-// reset_keyboard();
-// reset_tap_dance(state);
-// }
-// }
-
-// void flash_dance_reset(tap_dance_state_t *state, void *user_data) {
-// ergodox_right_led_1_off();
-// wait_ms(50);
-// ergodox_right_led_2_off();
-// wait_ms(50);
-// ergodox_right_led_3_off();
-// }
-
-// SYSCTL on first tap, MOUSE ON second tap
-// void layers_dance_finished(tap_dance_state_t *state, void *user_data) {
-// uint8_t layer = get_highest_layer(layer_state);
-
-// switch(state->count) {
-// case 1:
-// switch(layer) {
-// case LR_SYSCTL:
-// layer_off(LR_SYSCTL);
-// break;
-// case MOUSE:
-// layer_off(MOUSE);
-// break;
-// default:
-// layer_on(LR_SYSCTL);
-// break;
-// }
-// break;
-// case 2:
-// layer_on(MOUSE);
-// break;
-// }
-// }
-
-// tap_dance_action_t tap_dance_actions[] = {
-// [TD_FLSH] = ACTION_TAP_DANCE_FN_ADVANCED( flash_each_tap, flash_dance_finished, flash_dance_reset ),
-// [TD_LAYR] = ACTION_TAP_DANCE_FN_ADVANCED( NULL, layers_dance_finished, NULL ),
-// };
diff --git a/keyboards/ergodox_ez/keymaps/pvinis/readme.md b/keyboards/ergodox_ez/keymaps/pvinis/readme.md
deleted file mode 100644
index af27210541..0000000000
--- a/keyboards/ergodox_ez/keymaps/pvinis/readme.md
+++ /dev/null
@@ -1,65 +0,0 @@
-pvinis' keymap
-==============
-
-This is a getting-used-to keymap for the [ErgoDox EZ][ez]. It's very much a work in progress.
-
-[ez]: https://ergodox-ez.com/
-
-## Table of Contents
-
-* [Todo](#todo)
-* [Layouts](#layouts)
- - [Base layer](#base-layer)
- - [Beginner layer](#beginner-layer)
- - [QWERTY layer](#qwerty-layer)
- - [CARPALX layer](#carpalx-layer)
- - [System Control layer](#system-control-layer)
- - [Template layers](#template-layers)
-* [Building](#building)
-
-# Todo
-
-- [ ] Generate images from keymap
-- [ ] Implement algernon's heatmap
-- [ ] Implement `KC_POP`
-
-# Layouts
-
-## Base layer
-
-This is the base layer that contains the common buttons of all keymaps. Right now, it has the top left button as a `flash` button when it's tapped 4 times, and the two thumb islands. The islands contain the `space` and `enter` keys on the right, the `backspace` and `shift` on the left, and all the 1x1 keys are just layer switches.
-Every time I connect the keyboard, I press the `BEGIN` layer switch, and then start typing.
-Recently, I added a few application "shortcuts", that basically call `ctrl`+`alt`+`cmd`+`<key>`, and `<key>` is `S` for Slack, `X` for Xcode, `M` for Messenger. Using [Hammerspoon][hammerspoon], I show/hide the application.
-
-[hammerspoon]: http://www.hammerspoon.org/
-
-## Beginner layer
-
-This is a basic keymap I use right now until I'm comfortable typing on the Ergodox. Currently uses a QWERTY layout, and the `([{}])` on the middle keys. Not a perfect layout, and its going to go away at some point, but for now thats my daily driver.
-
-## QWERTY layer
-
-This is basically the same as the `BEGIN` layer, but it might go away. I'm not using it, but I should have a QWERTY layout on the keyboard, in case someone else wants to try it out, or if I completely forget how keyboards work! At some point, this and the `BEGIN` layer will become one.
-
-## CARPALX layer
-
-This is here as a placeholder. I want to transition to [Carpalx QGMLWY][carpalx] or [White][white] at some point. They both look very interesting and more comfortable to type on, but after I'm confident with typing on the Ergodox.
-
-[carpalx]: http://mkweb.bcgsc.ca/carpalx/?full_optimization
-[white]: https://github.com/mw8/white_keyboard_layout
-
-## System Control layer
-
-This one is a layer that, in time, will have controls like mouse movement, volume up/down, mute, sleep, restart, shutdown, etc.
-
-## Template layers
-
-I have two commented out layers that are just templates, so I can easily create a new layer.
-
-# Building
-
-```
-$ git clone https://github.com/qmk/qmk_firmware.git
-$ cd qmk_firmware/keyboards/ergodox/keymaps/pvinis
-$ make
-```
diff --git a/keyboards/ergodox_ez/keymaps/pvinis/rules.mk b/keyboards/ergodox_ez/keymaps/pvinis/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/ergodox_ez/keymaps/pvinis/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/ergodox_ez/keymaps/rishka/config.h b/keyboards/ergodox_ez/keymaps/rishka/config.h
deleted file mode 100644
index c8f8180bcc..0000000000
--- a/keyboards/ergodox_ez/keymaps/rishka/config.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#pragma once
-
-#define PERMISSIVE_HOLD
-
-#undef MOUSEKEY_TIME_TO_MAX
-#define MOUSEKEY_TIME_TO_MAX 0
-
-#undef MOUSEKEY_WHEEL_MAX_SPEED
-#undef MOUSEKEY_WHEEL_TIME_TO_MAX
-
-#define MOUSEKEY_WHEEL_MAX_SPEED 1
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 0
-
-#define MK_C_OFFSET_1 20
-#define MK_C_OFFSET_2 30
-
-#undef MK_MOMENTARY_ACCEL
diff --git a/keyboards/ergodox_ez/keymaps/rishka/keymap.c b/keyboards/ergodox_ez/keymaps/rishka/keymap.c
deleted file mode 100644
index f6ca540e63..0000000000
--- a/keyboards/ergodox_ez/keymaps/rishka/keymap.c
+++ /dev/null
@@ -1,210 +0,0 @@
-
-#include QMK_KEYBOARD_H
-#include "version.h"
-#include "rishka.h"
-enum layers {
- BASE, // default layer
- WIN, // Switch keys that are needed in windows
- SYMB, // symbols
- MDIA, // media keys
- GAME, // Gamepad setup
- FIRMWARE // Layer to trigger reset/refresh
-};
-enum custom_keycodes {
- VRSN = SAFE_RANGE,
- RGB_SLD
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[BASE] = LAYOUT_ergodox_pretty_wrapper(
- KC_EQL, ________________NUMBERS_L__________________, TG(WIN), OSX_LOCK, ________________NUMBERS_R__________________, KC_MINS,
- KC_DEL, _________________QWERTY_L1_________________, TG(SYMB), TG(SYMB), _________________QWERTY_R1_________________, KC_BSLS,
- KC_BSPC, _____________MOD_QWERTY_L2_________________, _____________MOD_QWERTY_R2_________________, LT(MDIA, KC_QUOT),
- OS_LSFT, _________________QWERTY_L3_________________, ALL_T(KC_NO), TG(MDIA), _________________QWERTY_R3_________________, OS_RSFT,
- LT(SYMB,KC_GRV), KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, OSL(SYMB),
- ALT_T(KC_APP), TG(GAME), KC_LALT, CTL_T(KC_ESC),
- LT(FIRMWARE, KC_HOME), KC_PGUP,
- KC_SPC, GUI_T(KC_BSPC), ALT_T(KC_END), GUI_T(KC_PGDN), CTL_T(KC_TAB), ALT_T(KC_ENT)
-),
-
-[WIN] = LAYOUT_ergodox_pretty_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_F1, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_TAB, _________________QWERTY_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_LGUI, _______, _______, _______, _______, _______, _______, _______,
- KC_LCTL, _______, KC_LALT, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_ESC, _______, _______,
- _______, _______,
- _______, KC_BSPC, KC_LALT, KC_PGDN, CTL_T(KC_TAB), _______
-),
-
-[SYMB] = LAYOUT_ergodox_pretty_wrapper(
-VRSN, ______________________F_L__________________, KC_F11, KC_F12 , ______________________F_R__________________, KC_NUM,
-_______, _________________SYMBOL_L1_________________, _______, _______, _________________SYMBOL_R1_________________, _______,
-_______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______,
-_______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______,
-_______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PSLS, _______,
- RGB_MOD, RGB_VAI, RGB_HUI, RGB_SLD,
- RGB_VAD, RGB_HUD,
- _______, _______, _______, RGB_TOG, _______, _______
-),
-
-[MDIA] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_MS_U, _______, KC_WH_U, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_BTN1, KC_BTN2,
- _______, KC_BTN5,
- KC_BTN4,
- KC_BTN1, KC_BTN2, KC_BTN3,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_WH_U, _______, _______, _______,
- _______, KC_WH_L, KC_WH_D, KC_WH_R, _______, KC_MPLY,
- _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______,
- KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
- _______, _______,
- _______,
- KC_ACL2, KC_ACL1, KC_ACL0
-),
-
-[GAME] = LAYOUT_ergodox(
- // left hand
- KC_ESCAPE, KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5,
- KC_F1, KC_Y, KC_Q, KC_W, KC_E, KC_R, KC_T,
- KC_TAB, KC_LSFT, KC_A, KC_S, KC_D, KC_F,
- KC_LCTL, KC_B, KC_Z, KC_X, KC_C, KC_V, KC_G,
- LT(BASE, KC_L), KC_J, KC_I, KC_O, KC_M,
- KC_ESCAPE, _______,
- KC_ENTER,
- KC_SPACE, KC_LCTL, KC_LALT,
- // right hand
- KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT),
- MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
- KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(SYMB),
- KC_LALT, CTL_T(KC_ESC),
- KC_PGUP,
- KC_PGDN, KC_TAB, KC_ENT
-),
-
-[FIRMWARE] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- QK_BOOT, _______, _______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, EE_CLR
-),
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- switch (keycode) {
- case VRSN:
- SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
- return false;
- #ifdef RGBLIGHT_ENABLE
- case RGB_SLD:
- rgblight_mode(1);
- return false;
- #endif
- }
- }
- return true;
-}
-
-// Runs just one time when the keyboard initializes.
-void keyboard_post_init_user(void) {
-#ifdef RGBLIGHT_COLOR_LAYER_0
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0);
-#endif
-};
-
-// Runs whenever there is a layer state change.
-layer_state_t layer_state_set_user(layer_state_t state) {
- ergodox_board_led_off();
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
-
- uint8_t layer = get_highest_layer(state);
- switch (layer) {
- case 0:
- #ifdef RGBLIGHT_COLOR_LAYER_0
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0);
- #else
- #ifdef RGBLIGHT_ENABLE
- rgblight_init();
- #endif
- #endif
- break;
- case 1:
- ergodox_right_led_1_on();
- #ifdef RGBLIGHT_COLOR_LAYER_1
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_1);
- #endif
- break;
- case 2:
- ergodox_right_led_2_on();
- #ifdef RGBLIGHT_COLOR_LAYER_2
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_2);
- #endif
- break;
- case 3:
- ergodox_right_led_3_on();
- #ifdef RGBLIGHT_COLOR_LAYER_3
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_3);
- #endif
- break;
- case 4:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- #ifdef RGBLIGHT_COLOR_LAYER_4
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_4);
- #endif
- break;
- case 5:
- ergodox_right_led_1_on();
- ergodox_right_led_3_on();
- #ifdef RGBLIGHT_COLOR_LAYER_5
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_5);
- #endif
- break;
- case 6:
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- #ifdef RGBLIGHT_COLOR_LAYER_6
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_6);
- #endif
- break;
- case 7:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- #ifdef RGBLIGHT_COLOR_LAYER_7
- rgblight_setrgb(RGBLIGHT_COLOR_LAYER_7);
- #endif
- break;
- default:
- break;
- }
-
- return state;
-};
diff --git a/keyboards/ergodox_ez/keymaps/rishka/rules.mk b/keyboards/ergodox_ez/keymaps/rishka/rules.mk
deleted file mode 100644
index c867f89718..0000000000
--- a/keyboards/ergodox_ez/keymaps/rishka/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-# TAP_DANCE_ENABLE = yes
-MOUSEKEY_ENABLE = yes
diff --git a/keyboards/ergodox_ez/keymaps/rmw/config.h b/keyboards/ergodox_ez/keymaps/rmw/config.h
deleted file mode 100644
index 1b7528a4a7..0000000000
--- a/keyboards/ergodox_ez/keymaps/rmw/config.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com>
-Edited like hell 2017+ by Reed Williams <rmwphd@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#pragma once
-
-#define MACOSX
-
-#define USB_MAX_POWER_CONSUMPTION 500
-
-/* Set 0 if debouncing isn't needed */
-#undef DEBOUNCE
-#define DEBOUNCE 5
-
-
-#define ONESHOT_TIMEOUT 900 // how long before oneshot times out
-//#define ONESHOT_TAP_TOGGLE 2 // how many taps before oneshot toggle is triggered
-
-#undef LOCKING_SUPPORT_ENABLE
-#undef LOCKING_RESYNC_ENABLE
-
-#undef MOUSEKEY_DELAY
-#define MOUSEKEY_DELAY 20
-#undef MOUSEKEY_MAX_SPEED
-#define MOUSEKEY_MAX_SPEED 6
-#undef MOUSEKEY_TIME_TO_MAX
-#define MOUSEKEY_TIME_TO_MAX 254
-#undef MOUSEKEY_WHEEL_MAX_SPEED
-#define MOUSEKEY_WHEEL_MAX_SPEED 10
-#undef MOUSEKEY_WHEEL_TIME_TO_MAX
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 254
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
-//#define NO_ACTION_MACRO
-//#define NO_ACTION_FUNCTION
-//#define DEBUG_MATRIX_SCAN_RATE
diff --git a/keyboards/ergodox_ez/keymaps/rmw/keymap-mac.c b/keyboards/ergodox_ez/keymaps/rmw/keymap-mac.c
deleted file mode 100644
index 9d230aaae0..0000000000
--- a/keyboards/ergodox_ez/keymaps/rmw/keymap-mac.c
+++ /dev/null
@@ -1,188 +0,0 @@
-#include "rmw.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [QWERTY] = LAYOUT_ergodox(
- TD(FRBK2), KC_1, KC_2, KC_3, KC_4, KC_5, KC_F4,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TO(EDIT),
- OSL(EDIT), KC_A, LT(NUMPAD,KC_S), KC_D, LT(FSYM,KC_F), KC_G,
- LCTL(KC_LEFT), KC_Z, KC_X, KC_C, KC_V, SFT_T(KC_B), KC_TAB,
- TD(CTLALL), OSL(ADJUST), TD(GUCTL), TD(SGCA), TD(AGC),
- OS_CMD, OS_CTL ,
- KC_ESCAPE,
- KC_BSPC, TD(SHENT), OSL(EDIT),
-
- KC_F5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- TO(NUMPAD), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, LT(JSYM,KC_J), KC_K, KC_L, LT(EDIT,KC_SCLN), KC_QUOTE,
- CTL_T(KC_B), KC_N, KC_M, KC_COMM, KC_DOT, LT(MEDIA,KC_SLSH), LCTL(KC_RIGHT),
- TD(GCA), TD(CTLALL), KC_LBRC, KC_RBRC, KC_MS_BTN1,
- OS_CALT, KC_TAB,
- KC_DEL,
- KC_CAPS, SFTENT, KC_SPC),
-
-
- [MINIMAK4] = LAYOUT_ergodox(
- TD(FRBK2), KC_1, KC_2, KC_3, KC_4, KC_5, KC_F4,
- KC_TAB, KC_Q, KC_W, KC_D, KC_R, KC_K, TO(EDIT),
- OSL(EDIT), KC_A, LT(NUMPAD,KC_S), KC_T, LT(FSYM,KC_F), KC_G,
- OSM(MOD_LSFT), KC_Z, KC_X, KC_C, KC_V, SFT_T(KC_B), KC_TAB,
- TD(CTLALL), OSL(ADJUST), TD(GUCTL), TD(SGCA), TD(AGC),
- OS_CMD, OS_CTL ,
- KC_ESCAPE,
- KC_BSPC, TD(SHENT), OSL(EDIT),
- KC_F5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- TO(NUMPAD), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, LT(JSYM,KC_J), KC_E, KC_L, LT(EDIT,KC_SCLN), KC_QUOTE,
- CTL_T(KC_B), KC_N, KC_M, KC_COMM, KC_DOT, LT(MEDIA,KC_SLSH), KC_MS_BTN1,
- TD(GCA), TD(CTLALL), LGUI(KC_GRV), KC_RBRC, KC_MS_BTN1,
- OS_ALT, KC_TAB,
- KC_DEL,
- KC_CAPS, SFT_T(KC_ENT), KC_SPC),
-
- [NUMPAD] = LAYOUT_ergodox(VRSN, KC_F11, KC_F12, KC_F1, KC_F2, KC_F3, _______,
- _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, TO(QWERTY),
- _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,
- _______, LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), LGUI(KC_Y), _______,
- _______, _______, _______, _______, _______,
- _______, _______, KC_PSCR, _______, _______, TO(QWERTY),
-
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- TO(EDIT), _______, KC_7, KC_8, KC_9, KC_KP_MINUS, _______,
- _______, KC_4, KC_5, KC_6, KC_KP_PLUS, _______,
- _______, KC_COMM, KC_1, KC_2, KC_3, KC_KP_SLASH, _______,
- KC_0, KC_DOT, KC_EQUAL, KC_KP_ASTERISK, _______,
- _______, _______, KC_INSERT, TO(EDIT), _______, _______),
-
- [EDIT] = LAYOUT_ergodox(_______, _______, KC_MS_WH_UP, KC_MS_BTN1, KC_MS_BTN2, _______, _______,
- _______, LGUI(LALT(KC_ESCAPE)), KC_MS_WH_DOWN, LALT(S(KC_LEFT)), LALT(S(KC_RIGHT)), _______, TO(NUMPAD),
- _______, _______, LGUI(KC_GRV), LALT(KC_LEFT), LALT(KC_RIGHT), _______,
- LCTL(KC_RIGHT), LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), LGUI(KC_Y), _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, TO(NUMPAD),
- _______, _______, _______, S(KC_UP), _______, _______, KC_DELETE,
- TO(QWERTY), LGUI(KC_T), KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, _______,
- LGUI(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LGUI(KC_RIGHT), _______,
- _______, S(LGUI(KC_LEFT)), S(KC_LEFT), S(KC_DOWN), S(KC_RIGHT), S(LGUI(KC_RIGHT)), LCTL(KC_LEFT),
- _______, _______, FORM_GET, FORM_PUT, _______,
- _______, _______, _______, S(KC_F10), _______, _______),
-
- [FSYM] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_TILD, KC_EXLM, _______, _______,
- LCTL(KC_RIGHT), _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, DEL_WRD, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_CIRC, KC_AMPR , KC_ASTR, KC_GRV , _______, _______,
- KC_EQUAL, KC_MINUS, KC_UNDS, KC_BSLS, KC_COLON, KC_DQT ,
- _______, _______, KC_PLUS , KC_SLSH, KC_PIPE, _______ , _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______),
-
- [JSYM] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
- _______, KC_GRV, KC_AT , KC_LCBR, KC_RCBR, _______, _______,
- _______, KC_HASH, KC_DLR , KC_LPRN, KC_RPRN, KC_LEFT,
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_QUES, KC_SLSH, KC_COLON, _______,
- _______, _______, _______, _______, _______, _______, LCTL(KC_LEFT),
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, LGUI(KC_DOWN), _______),
-
- [MEDIA] = LAYOUT_ergodox(_______, _______, KC_MS_BTN4, _______, KC_MS_BTN5, _______, _______,
- _______, KC_MS_WH_UP, KC_MS_WH_LEFT, KC_MS_UP, KC_MS_WH_RIGHT, _______, _______,
- _______, KC_MS_WH_DOWN, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______,
- _______, _______, KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______,
- _______, _______, _______, _______, KC_MS_BTN3,
- _______, _______, _______, KC_MS_BTN1, KC_MS_BTN2, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, KC_AUDIO_VOL_DOWN, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, _______, _______,
- KC_MEDIA_REWIND, KC_MEDIA_FAST_FORWARD, _______, _______, _______,
- _______, _______, _______, _______, KC_MS_BTN1, KC_MEDIA_PLAY_PAUSE),
-
- [ADJUST] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, TO(EDIT), TO(NUMPAD), TO(FSYM), TO(JSYM), TO(MEDIA),
- _______, _______, _______, _______, _______, _______, _______,
- _______, TO(QWERTY), DF(MINIMAK4), DF(QWERTY), _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______),
-
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case VRSN:
- if (record->event.pressed) {
- SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
- }
- return false;
- case FORM_GET:
- if (record->event.pressed) {
- tap_code(KC_BTN1);
- tap_code16(G(KC_A));
- tap_code16(G(KC_C));
- }
- return false;
- case FORM_PUT:
- if (record->event.pressed) {
- tap_code(KC_BTN1);
- tap_code16(G(KC_A));
- tap_code16(G(KC_V));
- }
- return false;
- }
- return true;
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case QWERTY:
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- break;
- case NUMPAD:
- ergodox_right_led_1_on();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- break;
- case EDIT:
- ergodox_right_led_1_off();
- ergodox_right_led_2_on();
- ergodox_right_led_3_off();
- break;
- case FSYM:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_off();
- break;
- case JSYM:
- ergodox_right_led_1_on();
- ergodox_right_led_2_off();
- ergodox_right_led_3_on();
- break;
- case MEDIA:
- ergodox_right_led_1_off();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- case ADJUST:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- }
- return state;
-}
diff --git a/keyboards/ergodox_ez/keymaps/rmw/keymap-win.c b/keyboards/ergodox_ez/keymaps/rmw/keymap-win.c
deleted file mode 100644
index aada71fd4f..0000000000
--- a/keyboards/ergodox_ez/keymaps/rmw/keymap-win.c
+++ /dev/null
@@ -1,159 +0,0 @@
-#include "rmw.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [QWERTY] = LAYOUT_ergodox( // LEFT HAND
- TD(FRBK), KC_1, KC_2, KC_3, KC_4, KC_5, KC_F4,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TO(EDIT),
- OSL(EDIT), KC_A, LT(NUMPAD,KC_S), KC_D, LT(FSYM,KC_F), KC_G,
- OSM(MOD_LSFT), KC_Z, KC_X, KC_C, KC_V, SFT_T(KC_B), KC_TAB,
- TD(CTLAND), OSL(ADJUST), TD(SCAG), TD(TDGUI), TD(ACG),
- OS_ALT, OS_CTL ,
- KC_ESCAPE,
- KC_BSPC, TD(SHENT), OSL(EDIT),
-
- // RIGHT HAND
- KC_F5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- TO(NUMPAD), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, LT(JSYM,KC_J), KC_K, KC_L, LT(EDIT,KC_SCLN), KC_QUOTE,
- CTL_T(KC_B), KC_N, KC_M, KC_COMM, KC_DOT, LT(MEDIA,KC_SLSH), TD(SHENT),
- TD(CAG), TD(TDGUI), KC_LBRC, KC_RBRC, KC_MS_BTN1,
- OS_ALT, KC_TAB,
- KC_DEL,
- KC_CAPS, SFT_T(KC_ENT), KC_SPC),
-
-
- [NUMPAD] = LAYOUT_ergodox(VRSN, KC_F11, KC_F12, KC_F1, KC_F2, KC_F3, _______,
- _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, TO(0),
- _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,
- _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), LCTL(KC_Y), _______,
- _______, _______, _______, _______, _______,
- _______, _______, KC_PSCR, _______, _______, TO(0),
-
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- TO(EDIT), _______, KC_7, KC_8, KC_9, KC_KP_MINUS, _______,
- _______, KC_4, KC_5, KC_6, KC_KP_PLUS, _______,
- _______, KC_COMM, KC_1, KC_2, KC_3, KC_KP_SLASH, _______,
- KC_0, KC_DOT, KC_EQUAL, KC_KP_ASTERISK, _______,
- _______, _______, KC_INSERT, TO(EDIT), _______, _______),
-
- [EDIT] = LAYOUT_ergodox(KC_ESCAPE, LALT(LCTL(KC_DELETE)), KC_MS_WH_UP, KC_MS_BTN1, KC_MS_BTN2, _______, _______,
- _______, LCTL(S(KC_ESCAPE)), KC_MS_WH_DOWN, LCTL(S(KC_LEFT)), LCTL(S(KC_RIGHT)), _______, TO(NUMPAD),
- _______, _______, KC_LEFT, LCTL(KC_LEFT), LCTL(KC_RIGHT), _______,
- _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), LCTL(KC_Y), _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, TO(NUMPAD),
- _______, _______, _______, S(KC_UP), _______, _______, KC_DELETE,
- TO(0), LCTL(KC_T), KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, _______,
- KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, _______,
- _______, S(KC_HOME), S(KC_LEFT), S(KC_DOWN), S(KC_RIGHT), S(KC_END), _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, S(KC_F10), _______, _______),
-
- [FSYM] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_TILD, KC_EXLM, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_CIRC, KC_AMPR , KC_ASTR, KC_GRV , _______, _______,
- KC_EQUAL, KC_MINUS, KC_UNDS, KC_BSLS, KC_COLON, KC_DQT ,
- _______, _______, KC_PLUS , KC_SLSH, KC_PIPE, _______ , _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______),
-
- [JSYM] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
- _______, KC_GRV, KC_AT , KC_LCBR, KC_RCBR, _______, _______,
- _______, KC_HASH, KC_DLR , KC_LPRN, KC_RPRN, KC_LEFT,
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_QUES, KC_SLSH, KC_COLON, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______),
-
- [MEDIA] = LAYOUT_ergodox(_______, _______, KC_MS_BTN4, _______, KC_MS_BTN5, _______, _______,
- _______, KC_MS_WH_UP, KC_MS_WH_LEFT, KC_MS_UP, KC_MS_WH_RIGHT, _______, _______,
- _______, KC_MS_WH_DOWN, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______,
- _______, _______, KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______,
- _______, _______, _______, _______, KC_MS_BTN3,
- _______, _______, _______, KC_MS_BTN1, KC_MS_BTN2, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, KC_AUDIO_VOL_DOWN, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, _______, _______,
- KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK, _______, _______, _______,
- _______, _______, _______, _______, KC_MS_BTN1, KC_MEDIA_PLAY_PAUSE),
-
- [ADJUST] = LAYOUT_ergodox(_______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, TO(EDIT), TO(NUMPAD), TO(FSYM), TO(JSYM), TO(MEDIA),
- _______, _______, _______, _______, _______, _______, _______,
- _______, TO(QWERTY), _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______),
-
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- // dynamically generate these.
- case VRSN:
- if (record->event.pressed) {
- SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
- }
- return false;
- }
- return true;
-}
-
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case QWERTY:
- ergodox_right_led_1_off();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- break;
- case NUMPAD:
- ergodox_right_led_1_on();
- ergodox_right_led_2_off();
- ergodox_right_led_3_off();
- break;
- case EDIT:
- ergodox_right_led_1_off();
- ergodox_right_led_2_on();
- ergodox_right_led_3_off();
- break;
- case FSYM:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_off();
- break;
- case JSYM:
- ergodox_right_led_1_on();
- ergodox_right_led_2_off();
- ergodox_right_led_3_on();
- break;
- case MEDIA:
- ergodox_right_led_1_off();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- case ADJUST:
- ergodox_right_led_1_on();
- ergodox_right_led_2_on();
- ergodox_right_led_3_on();
- break;
- }
- return state;
-}
diff --git a/keyboards/ergodox_ez/keymaps/rmw/keymap.c b/keyboards/ergodox_ez/keymaps/rmw/keymap.c
deleted file mode 100644
index d2cff99429..0000000000
--- a/keyboards/ergodox_ez/keymaps/rmw/keymap.c
+++ /dev/null
@@ -1,13 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "version.h"
-
-#define LONGPRESS_DELAY 180
-#define LAYER_TOGGLE_DELAY 350
-
-#ifdef MACOSX
-#include "keymap-mac.c"
-#endif
-
-#ifdef WINDOWS
-#include "keymap-win.c"
-#endif
diff --git a/keyboards/ergodox_ez/keymaps/rmw/readme.md b/keyboards/ergodox_ez/keymaps/rmw/readme.md
deleted file mode 100644
index 36e0d1de00..0000000000
--- a/keyboards/ergodox_ez/keymaps/rmw/readme.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# RMW Ergodox_EZ Layout
-
-This is the keymap I use on the Ergodox_EZ I use for work. I write reports and code in a variety of languages on this board and the various layers provide plenty of flexibility for navigating, editing text, and writing code and prose.
-
-I switched to a Mac in the past year, so my keymap now mostly gets used in the Mac mode; simply edit the keymap.c file to uncomment \#include keymap-win.c and comment out \#include keymap-mac.c to change back to the Windows version, but I haven't been updating that map as I've made changes moving forward on the Mac version.
-
-## The theory of this keymap
-
-The base layer is either QWERTY or MINIMAK4, as desired. Overlaid on that base layer are various layers triggered by one-shots, TOs, and LTs. Tapdances are used to cram lots of mods into few keys and provide freedom to hit combinations with either hand. Mods and layer things are one-shot (where reasonable) because I prefer that.
-
-An EDIT layer provides text navigation, selection, and editing capabilities in home position. The EXCEL layer offers a numpad and various spreadsheet-useful navigations and operations. Holding S will put the numpad under your right hand in home position. Keys F and J offer various useful symbols (mostly) on the opposite hand when held, including \[\]\(\)\{\} under the left pointer and middle fingers on bottom, middle, and top rows respectively. The MEDIA layer provides media controls (obvs) and some mouse movement and nav, in case I don't feel like reaching for the trackball/trackpad/mouse.
diff --git a/keyboards/ergodox_ez/keymaps/rmw/rules.mk b/keyboards/ergodox_ez/keymaps/rmw/rules.mk
deleted file mode 100644
index 31e0fcf293..0000000000
--- a/keyboards/ergodox_ez/keymaps/rmw/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE=yes
diff --git a/keyboards/ergodox_ez/keymaps/steno/keymap.c b/keyboards/ergodox_ez/keymaps/steno/keymap.c
index 0e5d7e3a22..84c18fbd95 100644
--- a/keyboards/ergodox_ez/keymaps/steno/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/steno/keymap.c
@@ -1,7 +1,4 @@
#include QMK_KEYBOARD_H
-#include "debug.h"
-#include "action_layer.h"
-#include "keymap_steno.h"
#define BASE 0 // default layer
#define SYMB 1 // symbols
diff --git a/keyboards/ergodox_ez/led_i2c.c b/keyboards/ergodox_ez/led_i2c.c
index fe40ab797e..23ef91b74f 100644
--- a/keyboards/ergodox_ez/led_i2c.c
+++ b/keyboards/ergodox_ez/led_i2c.c
@@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# include "ergodox_ez.h"
-void rgblight_call_driver(LED_TYPE *led, uint8_t led_num) {
+void rgblight_call_driver(rgb_led_t *led, uint8_t led_num) {
i2c_init();
i2c_start(0x84, ERGODOX_EZ_I2C_TIMEOUT);
int i = 0;
diff --git a/keyboards/ergodox_ez/rules.mk b/keyboards/ergodox_ez/rules.mk
index dc72f6385c..bba3bd86ae 100644
--- a/keyboards/ergodox_ez/rules.mk
+++ b/keyboards/ergodox_ez/rules.mk
@@ -21,7 +21,7 @@ RGB_MATRIX_ENABLE = no # enable later
# project specific files
SRC += matrix.c \
led_i2c.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
# Disable unsupported hardware
AUDIO_SUPPORTED = no
diff --git a/keyboards/ergodox_stm32/rules.mk b/keyboards/ergodox_stm32/rules.mk
index 5b86324f9a..5481eef1a2 100644
--- a/keyboards/ergodox_stm32/rules.mk
+++ b/keyboards/ergodox_stm32/rules.mk
@@ -16,4 +16,4 @@ CUSTOM_MATRIX = yes # Custom matrix file
UNICODE_ENABLE = yes # Unicode
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/ergoslab/keymaps/default/keymap.c b/keyboards/ergoslab/keymaps/default/keymap.c
index 093d586eba..e2a9f0b322 100644
--- a/keyboards/ergoslab/keymaps/default/keymap.c
+++ b/keyboards/ergoslab/keymaps/default/keymap.c
@@ -16,7 +16,7 @@ enum layer_names {
#endif
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_ergoslab(
+ [BASE] = LAYOUT(
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
@@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LBRC, KC_LPRN, KC_ESC, MO(MDIA),KC_RGUI, KC_TAB, TG(MOUS), KC_BSPC, KC_RPRN, KC_RBRC
),
- [MDIA] = LAYOUT_ergoslab(
+ [MDIA] = LAYOUT(
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
_______, _______, _______, _______, KC_F11, KC_F12, KC_HOME, KC_PGDN, KC_PGUP, KC_END,
_______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, KC_MUTE,
@@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
- [NUMB] = LAYOUT_ergoslab(
+ [NUMB] = LAYOUT(
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_BSLS, KC_PIPE,
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_GRV, KC_COLN, KC_TILD, _______, _______, _______,
@@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
- [MOUS] = LAYOUT_ergoslab(
+ [MOUS] = LAYOUT(
_______, _______, KC_MS_U, _______, _______, _______, _______, KC_WH_U, _______, _______,
_______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN3, KC_WH_D, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/ergoslab/rev1/info.json b/keyboards/ergoslab/rev1/info.json
index e92dd4dccc..51c522043b 100644
--- a/keyboards/ergoslab/rev1/info.json
+++ b/keyboards/ergoslab/rev1/info.json
@@ -24,8 +24,11 @@
},
"processor": "atmega32u4",
"bootloader": "caterina",
+ "layout_aliases": {
+ "LAYOUT_ergoslab": "LAYOUT"
+ },
"layouts": {
- "LAYOUT_ergoslab": {
+ "LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0.625},
{"matrix": [0, 1], "x": 1, "y": 0.125},
diff --git a/keyboards/ergotravel/keymaps/jarred/config.h b/keyboards/ergotravel/keymaps/jarred/config.h
deleted file mode 100644
index c2948493ed..0000000000
--- a/keyboards/ergotravel/keymaps/jarred/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
-Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define USE_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
diff --git a/keyboards/ergotravel/keymaps/jarred/keymap.c b/keyboards/ergotravel/keymaps/jarred/keymap.c
deleted file mode 100644
index adedebe6ef..0000000000
--- a/keyboards/ergotravel/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Copyright 2018 Jarred Steenvoorden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "jarred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_ergotravel_grid_wrapper(
- QWERTY_L1, KC_NO, KC_NO, QWERTY_R1,
- QWERTY_L2, KC_NO, KC_NO, QWERTY_R2,
- QWERTY_L3, KC_NO, KC_NO, QWERTY_R3,
- QWERTY_4_12),
-
- [_LW] = LAYOUT_ergotravel_grid_wrapper(
- LOWER_L1, KC_NO, KC_NO, LOWER_R1,
- LOWER_L2, KC_NO, KC_NO, LOWER_R2,
- LOWER_L3, KC_NO, KC_NO, LOWER_R3,
- LOWER_4_12),
-
- [_NV] = LAYOUT_ergotravel_grid_wrapper(
- NAV_L1, KC_NO, KC_NO, NAV_R1,
- NAV_L2, KC_NO, KC_NO, NAV_R2,
- NAV_L3, KC_NO, KC_NO, NAV_R3,
- NAV_4_12),
-
- [_NP] = LAYOUT_ergotravel_grid_wrapper(
- NUMPAD_L1, KC_NO, KC_NO, NUMPAD_R1,
- NUMPAD_L2, KC_NO, KC_NO, NUMPAD_R2,
- NUMPAD_L3, KC_NO, KC_NO, NUMPAD_R3,
- NUMPAD_4_12),
-
- [_MS] = LAYOUT_ergotravel_grid_wrapper(
- MOUSE_L1, KC_NO, KC_NO, MOUSE_R1,
- MOUSE_L2, KC_NO, KC_NO, MOUSE_R2,
- MOUSE_L3, KC_NO, KC_NO, MOUSE_R3,
- MOUSE_4_12)
-};
diff --git a/keyboards/ergotravel/keymaps/manna-harbour_miryoku/config.h b/keyboards/ergotravel/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 40cf1e3752..0000000000
--- a/keyboards/ergotravel/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, XXX, XXX, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, XXX, XXX, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
-XXX, XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX, XXX \
-)
diff --git a/keyboards/ergotravel/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/ergotravel/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/ergotravel/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/ergotravel/keymaps/rs/config.h b/keyboards/ergotravel/keymaps/rs/config.h
deleted file mode 100644
index 53487d0f92..0000000000
--- a/keyboards/ergotravel/keymaps/rs/config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
-Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/ergotravel/keymaps/rs/keymap.c b/keyboards/ergotravel/keymaps/rs/keymap.c
deleted file mode 100644
index f8c6de56bc..0000000000
--- a/keyboards/ergotravel/keymaps/rs/keymap.c
+++ /dev/null
@@ -1,38 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rs.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- //,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_GRV, KC_BSLS, KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_EQL ,
- //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
- KC_ESCC, KC_A , KC_S , KC_D , KC_F , KC_G ,KC_PIPE, KC_MINS, KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
- //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_SPC, KC_BSPC, KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_ENTS,
- //|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
- KC_FN ,_______,KC_LCTL,KC_LALT,KC_LGUI, KC_SPC, KC_BSPC, KC_CODE,KC_LEFT, KC_UP ,KC_DOWN,KC_RIGHT
- //`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
- ),
- [_CODE] = LAYOUT(
- //,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
- KC_GRV ,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC,_______, _______,KC_CIRC,KC_LPLT,KC_ASTR,KC_RPGT,KC_NEQL,_______,
- //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
- _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 ,_______, _______,KC_MINS,KC_LBRC, KC_UP ,KC_RBRC,_______,KC_BSLS,
- //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
- _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DOT, _______,KC_AMPR,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_PIPE,
- //|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
- _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______
- //`----+----+----+----+----/----/ \----\----+----+----+----+----'
- ),
- [_FN] = LAYOUT(
- //,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 ,_______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10,KC_F11 ,
- //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
- _______,_______,_______,_______,_______,_______,KC_BRMU, _______,_______,_______,KC_PGUP,_______,_______,_______,
- //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
- _______,_______,_______,_______,_______, KC_RST,KC_BRMD, KC_VOLU,_______,KC_CTRA,KC_PGDN,KC_CTRE,_______,_______,
- //|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
- _______,_______,_______,_______,_______,_______, KC_VOLD,KC_MUTE,_______,_______,_______,_______
- //`----+----+----+----+----/----/ \----\----+----+----+----+----'
- ),
-};
diff --git a/keyboards/ergotravel/keymaps/rs/readme.md b/keyboards/ergotravel/keymaps/rs/readme.md
deleted file mode 100644
index d23ab66877..0000000000
--- a/keyboards/ergotravel/keymaps/rs/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-See [rs readme](../../../../users/rs/readme.md). \ No newline at end of file
diff --git a/keyboards/ergotravel/keymaps/yanfali/config.h b/keyboards/ergotravel/keymaps/yanfali/config.h
deleted file mode 100644
index 194503df2d..0000000000
--- a/keyboards/ergotravel/keymaps/yanfali/config.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
-Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
-
-#define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_LGUI)))
diff --git a/keyboards/ergotravel/keymaps/yanfali/keymap.c b/keyboards/ergotravel/keymaps/yanfali/keymap.c
deleted file mode 100644
index b2b62484a9..0000000000
--- a/keyboards/ergotravel/keymaps/yanfali/keymap.c
+++ /dev/null
@@ -1,108 +0,0 @@
-#include QMK_KEYBOARD_H
-
-extern keymap_config_t keymap_config;
-
-#define _QWERTY 0
-#define _LOWER 1
-#define _RAISE 2
-#define _ADJUST 16
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- LOWER,
- RAISE,
- ADJUST,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT(
- //,---------------------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------.
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINUS,
- //|---------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- MT(MOD_LCTL, KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_LCBR, KC_RCBR, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- //|---------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_NO, KC_NO, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- //|---------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- ADJUST, ADJUST, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_BSPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- //`---------------------+--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------+--------'
- ),
-
- [_LOWER] = LAYOUT(
- //,--------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------.
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_Y, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- KC_CAPS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, _______, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, RAISE, _______, _______, _______, _______
- //`--------+--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------+--------'
- ),
-
-
- [_RAISE] = LAYOUT(
- //,--------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------.
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, KC_Q, KC_W, KC_E, KC_R, KC_T, _______, _______, KC_Y, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, KC_Z, KC_X, KC_C, KC_V, KC_B, _______, _______, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, RAISE, _______, _______, _______, _______
- //`--------+--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------+--------'
- ),
-
- [_ADJUST] = LAYOUT(
- //,--------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------.
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, RAISE, _______, _______, _______, _______
- //`--------+--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------+--------'
- )
-
-};
-
-
-
-
-
-
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case ADJUST:
- if (record->event.pressed) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- return false;
- break;
- }
- return true;
-}
diff --git a/keyboards/ergotravel/keymaps/yanfali/rules.mk b/keyboards/ergotravel/keymaps/yanfali/rules.mk
deleted file mode 100644
index ab3621cd7e..0000000000
--- a/keyboards/ergotravel/keymaps/yanfali/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-BOOTLOADER = qmk-dfu
-
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-LTO_ENABLE = yes
diff --git a/keyboards/evolv/info.json b/keyboards/evolv/info.json
index dc00260cf3..4274e9e437 100644
--- a/keyboards/evolv/info.json
+++ b/keyboards/evolv/info.json
@@ -40,8 +40,12 @@
},
"processor": "STM32F072",
"bootloader": "stm32-dfu",
+ "layout_aliases": {
+ "LAYOUT_evolv_ansi": "LAYOUT_ansi",
+ "LAYOUT_iso_ansi": "LAYOUT_iso"
+ },
"layouts": {
- "LAYOUT_evolv_ansi": {
+ "LAYOUT_ansi": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
@@ -150,7 +154,7 @@
{"matrix": [5, 14], "x": 15, "y": 5.5}
]
},
- "LAYOUT_evolv_iso": {
+ "LAYOUT_iso": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
diff --git a/keyboards/evolv/keymaps/default/keymap.c b/keyboards/evolv/keymaps/default/keymap.c
index 2286627041..d049c356b9 100755
--- a/keyboards/evolv/keymaps/default/keymap.c
+++ b/keyboards/evolv/keymaps/default/keymap.c
@@ -17,35 +17,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include QMK_KEYBOARD_H
-#define MEDIA_KEY_DELAY 100
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_evolv_ansi(
+ [0] = LAYOUT_ansi(
KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_INS ,
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , KC_VOLU,
+ KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , KC_VOLU,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP, KC_MPRV, KC_MPLY, KC_MNXT,
KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGDN, KC_VOLD,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP , MO(1) ,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
- [1] = LAYOUT_evolv_ansi(
+ [1] = LAYOUT_ansi(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, RGB_MOD,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
- [2] = LAYOUT_evolv_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
- [3] = LAYOUT_evolv_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______)
};
diff --git a/keyboards/evolv/keymaps/gondolindrim/keymap.c b/keyboards/evolv/keymaps/gondolindrim/keymap.c
index bf0944fbd1..992901a86d 100755
--- a/keyboards/evolv/keymaps/gondolindrim/keymap.c
+++ b/keyboards/evolv/keymaps/gondolindrim/keymap.c
@@ -145,28 +145,28 @@ Due to the way rgblight.c stores to and re-stores RGB configurations from EEPROM
Adapt this at will with the caveat that you should not have more nor less than four layers. And let's be honest, if you find yourself needing more than four layers on a 75% keyboard you are probably doing something wrong.
*/
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_evolv_iso(
+ [0] = LAYOUT_iso(
KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_INS ,
KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , ENCNTH,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_ENT , KC_PGUP, ENCWST , ENCCLK, ENCEST,
KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_NUHS, KC_PGDN, ENCSTH,
KC_LSFT, KC_BSLS, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP , MO(1) ,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
- [1] = LAYOUT_evolv_iso(
+ [1] = LAYOUT_iso(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCNTH,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCWST , ENCCLK, ENCEST,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCSTH,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS,
_______, _______, _______, _______, _______, _______, _______, _______, _______),
- [2] = LAYOUT_evolv_iso(
+ [2] = LAYOUT_iso(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCNTH,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCWST , ENCCLK, ENCEST,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCSTH,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______),
- [3] = LAYOUT_evolv_iso(
+ [3] = LAYOUT_iso(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCNTH,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ENCWST , ENCCLK, ENCEST,
diff --git a/keyboards/evolv/keymaps/iso/keymap.c b/keyboards/evolv/keymaps/iso/keymap.c
index 391bcdf5bb..379b9a51ca 100755
--- a/keyboards/evolv/keymaps/iso/keymap.c
+++ b/keyboards/evolv/keymaps/iso/keymap.c
@@ -17,35 +17,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include QMK_KEYBOARD_H
-#define MEDIA_KEY_DELAY 100
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_evolv_iso(
+ [0] = LAYOUT_iso(
KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_INS ,
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , KC_VOLU,
+ KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , KC_VOLU,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_ENT , KC_PGUP, KC_MPRV, KC_MPLY, KC_MNXT,
KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_NUHS, KC_PGDN, KC_VOLD,
KC_LSFT, KC_BSLS, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP , MO(1) ,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
- [1] = LAYOUT_evolv_iso(
+ [1] = LAYOUT_iso(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, RGB_MOD,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
- [2] = LAYOUT_evolv_iso(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
- [3] = LAYOUT_evolv_iso(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______)
};
diff --git a/keyboards/evolv/keymaps/via/keymap.c b/keyboards/evolv/keymaps/via/keymap.c
index 391bcdf5bb..379b9a51ca 100755
--- a/keyboards/evolv/keymaps/via/keymap.c
+++ b/keyboards/evolv/keymaps/via/keymap.c
@@ -17,35 +17,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include QMK_KEYBOARD_H
-#define MEDIA_KEY_DELAY 100
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_evolv_iso(
+ [0] = LAYOUT_iso(
KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_INS ,
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , KC_VOLU,
+ KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_BSPC, KC_DEL , KC_VOLU,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_ENT , KC_PGUP, KC_MPRV, KC_MPLY, KC_MNXT,
KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_NUHS, KC_PGDN, KC_VOLD,
KC_LSFT, KC_BSLS, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP , MO(1) ,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
- [1] = LAYOUT_evolv_iso(
+ [1] = LAYOUT_iso(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, RGB_MOD,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
- [2] = LAYOUT_evolv_iso(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
- [3] = LAYOUT_evolv_iso(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______)
};
diff --git a/keyboards/evyd13/atom47/rev5/config.h b/keyboards/evyd13/atom47/rev5/config.h
index f50975beb3..53bbf4f51b 100644
--- a/keyboards/evyd13/atom47/rev5/config.h
+++ b/keyboards/evyd13/atom47/rev5/config.h
@@ -38,18 +38,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 00 <-> GND
-// 01 <-> SCL
-// 10 <-> SDA
-// 11 <-> VCC
-// ADDR1 represents A1:A0 of the 7-bit address.
-// ADDR2 represents A3:A2 of the 7-bit address.
-// The result is: 0b101(ADDR2)(ADDR1)
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_COUNT 1
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define RGB_MATRIX_LED_COUNT 64
// RGB Matrix Animation modes. Explicitly enabled
diff --git a/keyboards/evyd13/atom47/rev5/rev5.c b/keyboards/evyd13/atom47/rev5/rev5.c
index adec48e6bb..7bf2a961ff 100644
--- a/keyboards/evyd13/atom47/rev5/rev5.c
+++ b/keyboards/evyd13/atom47/rev5/rev5.c
@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/evyd13/wasdat/keymaps/konstantin/config.h b/keyboards/evyd13/wasdat/keymaps/konstantin/config.h
deleted file mode 100644
index 3c2583e2d4..0000000000
--- a/keyboards/evyd13/wasdat/keymaps/konstantin/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define LAYER_FN
-#define LAYER_NUMPAD
diff --git a/keyboards/evyd13/wasdat/keymaps/konstantin/keymap.c b/keyboards/evyd13/wasdat/keymaps/konstantin/keymap.c
deleted file mode 100644
index fcbab46b72..0000000000
--- a/keyboards/evyd13/wasdat/keymaps/konstantin/keymap.c
+++ /dev/null
@@ -1,79 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "konstantin.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐
- * │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12││PSc│SLk│Pau│
- * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┬───┐
- * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bspace ││Ins│Hom│PgU│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┼───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ ││Del│End│PgD│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐Ent │└───┴───┴───┘
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ \ │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ ┌───┐
- * │LSft│RAG│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ RShift │ │ ↑ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤┌───┼───┼───┐
- * │LCtl│LGui│LAlt│ Space │RAlt│RGui│FnFL│RCtl││ ← │ ↓ │ → │
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘
- */
- [L_BASE] = LAYOUT_tkl_iso(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_DEL, KC_END, KC_PGDN,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
- KC_LSFT, RAL_RGU, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, FN_FNLK, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Fn layer
- * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │Num│Mut│
- * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ Clear ││Ply│Stp│Vo+│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┼───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │UCM│ │ │ │ │ │ ││Prv│Nxt│Vo-│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │└───┴───┴───┘
- * │ │M← │M↓ │M→ │MW↑│ │ │ │ │ │ │ │ │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ ┌───┐
- * │ │ │MA0│MA2│MW←│MW→│ │ │App│ │ │ │ │ │PgU│
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤┌───┼───┼───┐
- * │ │DtPR│DtNA│ MW↓ │ │ │ │ ││Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘
- */
- [L_FN] = LAYOUT_tkl_iso(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NUMPAD, KC_MUTE,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, CLEAR, KC_MPLY, KC_MSTP, KC_VOLU,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, UC_NEXT, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, KC_APP, _______, _______, _______, _______, KC_PGUP,
- _______, DST_P_R, DST_N_A, KC_WH_D, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
-
- /* Numpad layer
- * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │Num│ │
- * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┬───┐
- * │ │ │ │ │ │ │ │P7 │P8 │P9 │P- │ − │ = │ ││ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┼───┤
- * │ │ │ │ │ │ │ │P4 │P5 │P6 │P+ │ ( │ ) │ ││ │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐PEnt│└───┴───┴───┘
- * │ │ │ │ │ │ │ │P1 │P2 │P3 │P* │ × │ │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ ┌───┐
- * │ │ │ │ │ │ │ │P0 │P0 │ , │P. │P/ │ ÷ │ │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤┌───┼───┼───┐
- * │ │ │ │ │ │ │ │ ││ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘
- */
- [L_NUMPAD] = LAYOUT_tkl_iso(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NUMPAD, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PMNS, MINUS, EQUALS, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, L_PAREN, R_PAREN, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PAST, TIMES, _______, KC_PENT,
- _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_P0, COMMA, KC_PDOT, KC_PSLS, DIVIDE, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
diff --git a/keyboards/evyd13/wasdat/keymaps/konstantin/rules.mk b/keyboards/evyd13/wasdat/keymaps/konstantin/rules.mk
deleted file mode 100644
index e5fc55e912..0000000000
--- a/keyboards/evyd13/wasdat/keymaps/konstantin/rules.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# Generic features
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-UNICODEMAP_ENABLE = yes
-
-# Keyboard-specific features
-VIA_ENABLE = yes
-
-# Firmware size reduction
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/evyd13/wonderland/keymaps/brandonschlack/config.h b/keyboards/evyd13/wonderland/keymaps/brandonschlack/config.h
deleted file mode 100644
index 38383cffc2..0000000000
--- a/keyboards/evyd13/wonderland/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define USE_LEDS_FOR_LAYERS
-#define STOPLIGHT_LED
diff --git a/keyboards/evyd13/wonderland/keymaps/brandonschlack/keymap.c b/keyboards/evyd13/wonderland/keymaps/brandonschlack/keymap.c
deleted file mode 100755
index b8b62981df..0000000000
--- a/keyboards/evyd13/wonderland/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,170 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-// LEDs
-#define TOP_LED B1
-#define MIDDLE_LED B2
-#define BOTTOM_LED B3
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_BASE] = LAYOUT(
- KC_HOME, KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_PGDN, HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1,
- KC_LOPT, KC_LCMD, SPC_RAI, KC_LCTL, SPC_RAI, KC_RCMD, KC_ROPT
-),
-[_FN1] = LAYOUT(
- KC_MUTE, QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_SLPD,
- KC_VOLU, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_END, KC_DEL,
- KC_VOLD, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, KC_MPRV, KC_MNXT, KC_PGDN, KC_UP, KC_MPLY,
- _______, RGB_LYR, RGB_THM, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, RGT_SFT, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-[_FN2] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-[_ADJUST] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-)
-/*
-[_BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-)
-*/
-};
-
-#ifdef STOPLIGHT_LED
-bool is_led_stoplight_active = false;
-uint8_t led_stoplight_index = 0;
-uint16_t led_stoplight_timer = 0;
-void matrix_scan_led_stoplight(void);
-
-void led_stoplight_start(void) {
- writePinHigh(TOP_LED);
- writePinHigh(MIDDLE_LED);
- writePinHigh(BOTTOM_LED);
-
- is_led_stoplight_active = true;
- led_stoplight_timer = timer_read();
-};
-
-void led_stoplight_set(pin_t pin) {
- writePinLow(pin);
-};
-
-void led_stoplight_end(void) {
- // Reset timer and status variables
- led_stoplight_index = 0;
- is_led_stoplight_active = false;
- led_stoplight_timer = 0;
- led_update_kb(host_keyboard_led_state());
-};
-
-void matrix_scan_led_stoplight(void) {
- if (is_led_stoplight_active) {
- if (timer_elapsed(led_stoplight_timer) > (1000 * (led_stoplight_index + 1))) {
- switch (led_stoplight_index){
- case 0:
- led_stoplight_set(TOP_LED);
- led_stoplight_index++;
- break;
- case 1:
- led_stoplight_set(MIDDLE_LED);
- led_stoplight_index++;
- break;
- case 2:
- led_stoplight_set(BOTTOM_LED);
- led_stoplight_index++;
- break;
- default:
- led_stoplight_index = 0;
- is_led_stoplight_active = false;
- led_stoplight_timer = 0;
- led_update_kb(host_keyboard_led_state());
- break;
- }
- }
- }
-};
-#endif
-
-void keyboard_post_init_keymap(void) {
-#ifdef STOPLIGHT_LED
- led_stoplight_start();
-#endif
-};
-
-void matrix_scan_keymap(void) {
-#ifdef STOPLIGHT_LED
- matrix_scan_led_stoplight();
-#endif
-};
-
-#ifdef USE_LEDS_FOR_LAYERS
-// example of how to use LEDs as layer indicators
-static uint8_t top = 0;
-static uint8_t middle = 0;
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- top = middle = 0;
- state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-
- switch (get_highest_layer(state)) {
- case _FN1:
- top = 1;
- break;
- case _FN2:
- middle = 1;
- break;
- case _ADJUST:
- top = 1;
- middle = 1;
- break;
- default: // for any other layers, or the default layer
- break;
- }
- return state;
-}
-
-// override kb level function
-bool led_update_user(led_t usb_led) {
- if (!is_led_stoplight_active) {
- writePin(TOP_LED, !top);
- writePin(MIDDLE_LED, !middle);
- writePin(BOTTOM_LED, !usb_led.caps_lock); // still use bottom for Caps Lock
- };
- return false; // we are using LEDs for something else override kb
-}
-#endif
diff --git a/keyboards/evyd13/wonderland/keymaps/brandonschlack/rules.mk b/keyboards/evyd13/wonderland/keymaps/brandonschlack/rules.mk
deleted file mode 100755
index 80361c34fd..0000000000
--- a/keyboards/evyd13/wonderland/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Build Options
-# comment out to disable the options.
-#
-MOUSEKEY_ENABLE = yes # Mouse keys
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-VELOCIKEY_ENABLE = no
-
diff --git a/keyboards/exclusive/e6_rgb/config.h b/keyboards/exclusive/e6_rgb/config.h
index 7f820b2cad..62eb2320f7 100644
--- a/keyboards/exclusive/e6_rgb/config.h
+++ b/keyboards/exclusive/e6_rgb/config.h
@@ -4,7 +4,6 @@
*/
#pragma once
-#define DRIVER_ADDR_1 0b1010000
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 63
diff --git a/keyboards/exclusive/e6_rgb/e6_rgb.c b/keyboards/exclusive/e6_rgb/e6_rgb.c
index 2da1fbce68..f34f40cc1f 100644
--- a/keyboards/exclusive/e6_rgb/e6_rgb.c
+++ b/keyboards/exclusive/e6_rgb/e6_rgb.c
@@ -7,7 +7,7 @@ void matrix_init_kb(void) {
matrix_init_user();
}
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/eyeohdesigns/babyv/info.json b/keyboards/eyeohdesigns/babyv/info.json
index 453cdf2c81..14f52889ba 100644
--- a/keyboards/eyeohdesigns/babyv/info.json
+++ b/keyboards/eyeohdesigns/babyv/info.json
@@ -34,6 +34,48 @@
"twinkle": true
}
},
+ "rgb_matrix": {
+ "driver": "ws2812",
+ "animations": {
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_pinwheel": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "pixel_rain": true,
+ "pixel_flow": true
+ },
+ "layout": [
+ {"x": 123, "y": 74, "flags": 2},
+ {"x": 188, "y": 67, "flags": 2},
+ {"x": 206, "y": 62, "flags": 2},
+ {"x": 206, "y": 0, "flags": 2},
+ {"x": 175, "y": 0, "flags": 2},
+ {"x": 141, "y": 0, "flags": 2},
+ {"x": 83, "y": 0, "flags": 2},
+ {"x": 65, "y": 0, "flags": 2},
+ {"x": 18, "y": 0, "flags": 2},
+ {"x": 18, "y": 62, "flags": 2},
+ {"x": 40, "y": 67, "flags": 2},
+ {"x": 99, "y": 74, "flags": 2}
+ ],
+ "sat_steps": 8,
+ "val_steps": 8,
+ "led_count": 12,
+ "center_point": [112, 38]
+ },
"ws2812": {
"pin": "B7"
},
diff --git a/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c b/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c
index 7d22ebc670..7bccc6a46a 100644
--- a/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c
+++ b/keyboards/eyeohdesigns/babyv/keymaps/bghull/keymap.c
@@ -14,7 +14,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
#include "g/keymap_combo.h"
diff --git a/keyboards/fallacy/config.h b/keyboards/fallacy/config.h
index 21231c7c57..14df31805d 100755
--- a/keyboards/fallacy/config.h
+++ b/keyboards/fallacy/config.h
@@ -18,9 +18,8 @@
/* IS31FL3731 driver address (for status LEDs)
* Using the default defines here, but using a custom implementation
*/
-#define LED_DRIVER_ADDR_1 0b1110100
-#define LED_DRIVER_COUNT 1
-#define LED_MATRIX_LED_COUNT 3
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_LED_COUNT 3
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
*/
diff --git a/keyboards/fallacy/indicators.c b/keyboards/fallacy/indicators.c
index b9a4a87056..b95786db41 100755
--- a/keyboards/fallacy/indicators.c
+++ b/keyboards/fallacy/indicators.c
@@ -22,21 +22,14 @@
* init IS31FL3731 and i2c
*/
void init_fallacy_leds(void) {
- i2c_init();
- is31fl3731_init(LED_DRIVER_ADDR_1);
-
- for (int i = 0; i < LED_MATRIX_LED_COUNT; i++) {
- is31fl3731_set_led_control_register(i, true);
- }
-
- is31fl3731_update_led_control_registers(LED_DRIVER_ADDR_1, 0);
+ is31fl3731_init_drivers();
}
/* update the buffer
*/
void update_fallacy_leds(void) {
- is31fl3731_update_pwm_buffers(LED_DRIVER_ADDR_1, 0);
+ is31fl3731_flush();
}
@@ -54,7 +47,7 @@ void set_fallacy_led(int index, bool state) {
/* define LED matrix
*/
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
{0, C1_1},
{0, C2_1},
{0, C3_1},
diff --git a/keyboards/fallacy/rules.mk b/keyboards/fallacy/rules.mk
index 704204983c..7fa230bae2 100755
--- a/keyboards/fallacy/rules.mk
+++ b/keyboards/fallacy/rules.mk
@@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output
# project specific files
SRC += indicators.c \
drivers/led/issi/is31fl3731-simple.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/fc660c/actuation_point.c b/keyboards/fc660c/actuation_point.c
deleted file mode 100644
index 5f4cb16f40..0000000000
--- a/keyboards/fc660c/actuation_point.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
-Copyright 2017 Balz Guenat
-based on work by Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "actuation_point.h"
-#include "i2c.h"
-
-///////////////////////////////////////////////////////////////////////////////
-//
-// AD5258 I2C digital potentiometer
-// http://www.analog.com/media/en/technical-documentation/data-sheets/AD5258.pdf
-//
-#define AD5258_ADDR 0b0011000
-#define AD5258_INST_RDAC 0x00
-#define AD5258_INST_EEPROM 0x20
-
-uint8_t read_rdac(void) {
- // read RDAC register
- i2c_start_write(AD5258_ADDR);
- i2c_master_write(AD5258_INST_RDAC);
- i2c_start_read(AD5258_ADDR);
- uint8_t ret = i2c_master_read(I2C_NACK);
- i2c_master_stop();
- return ret;
-};
-
-uint8_t read_eeprom(void) {
- i2c_start_write(AD5258_ADDR);
- i2c_master_write(AD5258_INST_EEPROM);
- i2c_start_read(AD5258_ADDR);
- uint8_t ret = i2c_master_read(I2C_NACK);
- i2c_master_stop();
- return ret;
-};
-
-void write_rdac(uint8_t rdac) {
- // write RDAC register:
- i2c_start_write(AD5258_ADDR);
- i2c_master_write(AD5258_INST_RDAC);
- i2c_master_write(rdac & 0x3F);
- i2c_master_stop();
-};
-
-void actuation_point_up(void) {
- // write RDAC register: lower value makes actuation point shallow
- uint8_t rdac = read_rdac();
- if (rdac == 0)
- write_rdac(0);
- else
- write_rdac(rdac-1);
-};
-
-void actuation_point_down(void) {
- // write RDAC register: higher value makes actuation point deep
- uint8_t rdac = read_rdac();
- if (rdac == 63)
- write_rdac(63);
- else
- write_rdac(rdac+1);
-};
-
-void adjust_actuation_point(int offset) {
- i2c_master_init();
- uint8_t rdac = read_eeprom() + offset;
- if (rdac > 63) { // protects from under and overflows
- if (offset > 0)
- write_rdac(63);
- else
- write_rdac(0);
- } else {
- write_rdac(rdac);
- }
-}
diff --git a/keyboards/fc660c/actuation_point.h b/keyboards/fc660c/actuation_point.h
deleted file mode 100644
index e02832186c..0000000000
--- a/keyboards/fc660c/actuation_point.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-Copyright 2017 Balz Guenat
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#include <stdint.h>
-
-// see keymaps/actuation-point-example to see how these functions can be used.
-uint8_t read_rdac(void);
-uint8_t read_eeprom(void);
-void actuation_point_up(void);
-void actuation_point_down(void);
-
-// be careful with this.
-void adjust_actuation_point(int offset);
diff --git a/keyboards/fc660c/ad5258.c b/keyboards/fc660c/ad5258.c
new file mode 100644
index 0000000000..b1df75789b
--- /dev/null
+++ b/keyboards/fc660c/ad5258.c
@@ -0,0 +1,52 @@
+/*
+Copyright 2017 Balz Guenat
+based on work by Jun Wako <wakojun@gmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "ad5258.h"
+#include "i2c_master.h"
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// AD5258 I2C digital potentiometer
+// http://www.analog.com/media/en/technical-documentation/data-sheets/AD5258.pdf
+//
+#define AD5258_I2C_ADDRESS 0x18
+#define AD5258_INST_RDAC 0x00
+#define AD5258_INST_EEPROM 0x20
+
+void ad5258_init(void) {
+ i2c_init();
+}
+
+uint8_t ad5258_read_rdac(void) {
+ // read RDAC register
+ uint8_t ret = 0;
+ i2c_readReg(AD5258_I2C_ADDRESS, AD5258_INST_RDAC, &ret, 1, 100);
+ return ret;
+}
+
+uint8_t ad5258_read_eeprom(void) {
+ uint8_t ret = 0;
+ i2c_readReg(AD5258_I2C_ADDRESS, AD5258_INST_EEPROM, &ret, 1, 100);
+ return ret;
+}
+
+void ad5258_write_rdac(uint8_t rdac) {
+ // write RDAC register:
+ uint8_t data = rdac & 0x3F;
+ i2c_writeReg(AD5258_I2C_ADDRESS, AD5258_INST_RDAC, &data, 1, 100);
+}
diff --git a/keyboards/fc660c/ad5258.h b/keyboards/fc660c/ad5258.h
new file mode 100644
index 0000000000..c27f247675
--- /dev/null
+++ b/keyboards/fc660c/ad5258.h
@@ -0,0 +1,28 @@
+/*
+Copyright 2017 Balz Guenat
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+#include <stdint.h>
+
+void ad5258_init(void);
+
+uint8_t ad5258_read_rdac(void);
+
+uint8_t ad5258_read_eeprom(void);
+
+void ad5258_write_rdac(uint8_t rdac);
diff --git a/keyboards/fc660c/config.h b/keyboards/fc660c/config.h
index cd23bdb2b8..beff84d9be 100644
--- a/keyboards/fc660c/config.h
+++ b/keyboards/fc660c/config.h
@@ -27,8 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
* These options are also useful to firmware size reduction.
*/
-#define USE_I2C
-
/* disable debug print */
//#define NO_DEBUG
diff --git a/keyboards/fc660c/fc660c.c b/keyboards/fc660c/fc660c.c
index 2054cd2818..50540cbfb9 100644
--- a/keyboards/fc660c/fc660c.c
+++ b/keyboards/fc660c/fc660c.c
@@ -14,16 +14,47 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "quantum.h"
-#ifdef ACTUATION_DEPTH_ADJUSTMENT
-#include "actuation_point.h"
-#endif
+#include "fc660c.h"
-void matrix_init_kb(void) {
#ifdef ACTUATION_DEPTH_ADJUSTMENT
+void matrix_init_kb(void) {
adjust_actuation_point(ACTUATION_DEPTH_ADJUSTMENT);
-#endif
- matrix_init_user();
+ matrix_init_user();
+}
+
+void actuation_point_up(void) {
+ // write RDAC register: lower value makes actuation point shallow
+ uint8_t rdac = ad5258_read_rdac();
+ if (rdac == 0) {
+ ad5258_write_rdac(0);
+ } else {
+ ad5258_write_rdac(rdac - 1);
+ }
+}
+
+void actuation_point_down(void) {
+ // write RDAC register: higher value makes actuation point deep
+ uint8_t rdac = ad5258_read_rdac();
+ if (rdac == 63) {
+ ad5258_write_rdac(63);
+ } else {
+ ad5258_write_rdac(rdac + 1);
+ }
}
+
+void adjust_actuation_point(int offset) {
+ ad5258_init();
+ uint8_t rdac = ad5258_read_eeprom() + offset;
+ if (rdac > 63) { // protects from under and overflows
+ if (offset > 0) {
+ ad5258_write_rdac(63);
+ } else {
+ ad5258_write_rdac(0);
+ }
+ } else {
+ ad5258_write_rdac(rdac);
+ }
+}
+#endif
diff --git a/keyboards/fc660c/fc660c.h b/keyboards/fc660c/fc660c.h
new file mode 100644
index 0000000000..aa98e36be9
--- /dev/null
+++ b/keyboards/fc660c/fc660c.h
@@ -0,0 +1,31 @@
+/*
+Copyright 2017 Balz Guenat
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+#include "quantum.h"
+
+#ifdef ACTUATION_DEPTH_ADJUSTMENT
+# include "ad5258.h"
+
+// see keymaps/actuation-point-example to see how these functions can be used.
+void actuation_point_up(void);
+void actuation_point_down(void);
+
+// be careful with this.
+void adjust_actuation_point(int offset);
+#endif
diff --git a/keyboards/fc660c/i2c.c b/keyboards/fc660c/i2c.c
deleted file mode 100644
index 084c890c40..0000000000
--- a/keyboards/fc660c/i2c.c
+++ /dev/null
@@ -1,162 +0,0 @@
-#include <util/twi.h>
-#include <avr/io.h>
-#include <stdlib.h>
-#include <avr/interrupt.h>
-#include <util/twi.h>
-#include <stdbool.h>
-#include "i2c.h"
-
-#ifdef USE_I2C
-
-// Limits the amount of we wait for any one i2c transaction.
-// Since were running SCL line 100kHz (=> 10μs/bit), and each transactions is
-// 9 bits, a single transaction will take around 90μs to complete.
-//
-// (F_CPU/SCL_CLOCK) => # of μC cycles to transfer a bit
-// poll loop takes at least 8 clock cycles to execute
-#define I2C_LOOP_TIMEOUT (9+1)*(F_CPU/SCL_CLOCK)/8
-
-#define BUFFER_POS_INC() (slave_buffer_pos = (slave_buffer_pos+1)%SLAVE_BUFFER_SIZE)
-
-volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE];
-
-static volatile uint8_t slave_buffer_pos;
-static volatile bool slave_has_register_set = false;
-
-// Wait for an i2c operation to finish
-inline static
-void i2c_delay(void) {
- uint16_t lim = 0;
- while(!(TWCR & (1<<TWINT)) && lim < I2C_LOOP_TIMEOUT)
- lim++;
-
- // easier way, but will wait slightly longer
- // _delay_us(100);
-}
-
-// Setup twi to run at 100kHz
-void i2c_master_init(void) {
- // no prescaler
- TWSR = 0;
- // Set TWI clock frequency to SCL_CLOCK. Need TWBR>10.
- // Check datasheets for more info.
- TWBR = ((F_CPU/SCL_CLOCK)-16)/2;
-}
-
-// Start a transaction with the given i2c slave address. The direction of the
-// transfer is set with I2C_READ and I2C_WRITE.
-// returns: 0 => success
-// 1 => error
-uint8_t i2c_master_start(uint8_t address) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTA);
-
- i2c_delay();
-
- // check that we started successfully
- if ( (TW_STATUS != TW_START) && (TW_STATUS != TW_REP_START))
- return 1;
-
- TWDR = address;
- TWCR = (1<<TWINT) | (1<<TWEN);
-
- i2c_delay();
-
- if ( (TW_STATUS != TW_MT_SLA_ACK) && (TW_STATUS != TW_MR_SLA_ACK) )
- return 1; // slave did not acknowledge
- else
- return 0; // success
-}
-
-
-// Finish the i2c transaction.
-void i2c_master_stop(void) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTO);
-
- uint16_t lim = 0;
- while(!(TWCR & (1<<TWSTO)) && lim < I2C_LOOP_TIMEOUT)
- lim++;
-}
-
-// Write one byte to the i2c slave.
-// returns 0 => slave ACK
-// 1 => slave NACK
-uint8_t i2c_master_write(uint8_t data) {
- TWDR = data;
- TWCR = (1<<TWINT) | (1<<TWEN);
-
- i2c_delay();
-
- // check if the slave acknowledged us
- return (TW_STATUS == TW_MT_DATA_ACK) ? 0 : 1;
-}
-
-// Read one byte from the i2c slave. If ack=1 the slave is acknowledged,
-// if ack=0 the acknowledge bit is not set.
-// returns: byte read from i2c device
-uint8_t i2c_master_read(int ack) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (ack<<TWEA);
-
- i2c_delay();
- return TWDR;
-}
-
-void i2c_reset_state(void) {
- TWCR = 0;
-}
-
-void i2c_slave_init(uint8_t address) {
- TWAR = address << 0; // slave i2c address
- // TWEN - twi enable
- // TWEA - enable address acknowledgement
- // TWINT - twi interrupt flag
- // TWIE - enable the twi interrupt
- TWCR = (1<<TWIE) | (1<<TWEA) | (1<<TWINT) | (1<<TWEN);
-}
-
-ISR(TWI_vect);
-
-ISR(TWI_vect) {
- uint8_t ack = 1;
- switch(TW_STATUS) {
- case TW_SR_SLA_ACK:
- // this device has been addressed as a slave receiver
- slave_has_register_set = false;
- break;
-
- case TW_SR_DATA_ACK:
- // this device has received data as a slave receiver
- // The first byte that we receive in this transaction sets the location
- // of the read/write location of the slaves memory that it exposes over
- // i2c. After that, bytes will be written at slave_buffer_pos, incrementing
- // slave_buffer_pos after each write.
- if(!slave_has_register_set) {
- slave_buffer_pos = TWDR;
- // don't acknowledge the master if this memory loctaion is out of bounds
- if ( slave_buffer_pos >= SLAVE_BUFFER_SIZE ) {
- ack = 0;
- slave_buffer_pos = 0;
- }
- slave_has_register_set = true;
- } else {
- i2c_slave_buffer[slave_buffer_pos] = TWDR;
- BUFFER_POS_INC();
- }
- break;
-
- case TW_ST_SLA_ACK:
- case TW_ST_DATA_ACK:
- // master has addressed this device as a slave transmitter and is
- // requesting data.
- TWDR = i2c_slave_buffer[slave_buffer_pos];
- BUFFER_POS_INC();
- break;
-
- case TW_BUS_ERROR: // something went wrong, reset twi state
- TWCR = 0;
- default:
- break;
- }
- // Reset everything, so we are ready for the next TWI interrupt
- TWCR |= (1<<TWIE) | (1<<TWINT) | (ack<<TWEA) | (1<<TWEN);
-}
-#endif
diff --git a/keyboards/fc660c/i2c.h b/keyboards/fc660c/i2c.h
deleted file mode 100644
index 8910e70f10..0000000000
--- a/keyboards/fc660c/i2c.h
+++ /dev/null
@@ -1,46 +0,0 @@
-#pragma once
-
-#include <stdint.h>
-
-#ifndef F_CPU
-#define F_CPU 16000000UL
-#endif
-
-#define I2C_READ 1
-#define I2C_WRITE 0
-
-#define I2C_ACK 1
-#define I2C_NACK 0
-
-#define SLAVE_BUFFER_SIZE 0x10
-
-// i2c SCL clock frequency
-#define SCL_CLOCK 400000L
-
-extern volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE];
-
-void i2c_master_init(void);
-uint8_t i2c_master_start(uint8_t address);
-void i2c_master_stop(void);
-uint8_t i2c_master_write(uint8_t data);
-uint8_t i2c_master_read(int);
-void i2c_reset_state(void);
-void i2c_slave_init(uint8_t address);
-
-
-static inline unsigned char i2c_start_read(unsigned char addr) {
- return i2c_master_start((addr << 1) | I2C_READ);
-}
-
-static inline unsigned char i2c_start_write(unsigned char addr) {
- return i2c_master_start((addr << 1) | I2C_WRITE);
-}
-
-// from SSD1306 scrips
-extern unsigned char i2c_rep_start(unsigned char addr);
-extern void i2c_start_wait(unsigned char addr);
-extern unsigned char i2c_readAck(void);
-extern unsigned char i2c_readNak(void);
-extern unsigned char i2c_read(unsigned char ack);
-
-#define i2c_read(ack) (ack) ? i2c_readAck() : i2c_readNak();
diff --git a/keyboards/fc660c/keymaps/zyber/keymap.c b/keyboards/fc660c/keymaps/zyber/keymap.c
deleted file mode 100644
index 60178359ef..0000000000
--- a/keyboards/fc660c/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* BASE layer: Default Layer
- * ,--------------------------------------------------------------------------------------------------.
- * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Backspace | | ` |
- * |-----------------------------------------------------------------------------------------+ +-----+
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp | | Del |
- * |-----------------------------------------------------------------------------------------+ +-----+
- * | Explode | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
- * |--------------------------------------------------------------------------------------------+
- * | Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Up |
- * +--------------------------------------------------------------------------------------------+-----+
- * | Ctrl | Alt | Cmd | Space | Alt | Ctrl | Fn | Left| Down|Right|
- * `--------------------------------------------------------------------------------------------------´
- */
- [0] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, TD(SSHT), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_DEL,
- L1_EXPL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, ROPT_SRH, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL, MO(1), KC_LEFT,KC_DOWN,KC_RGHT
- ),
- /* FN layer
- * ,--------------------------------------------------------------------------------------------------.
- * | Esc| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | |C_BLK|
- * |-----------------------------------------------------------------------------------------+ +-----+
- * | | | | | | | | |PrtSc| Slck| Paus| | | | | |
- * |-----------------------------------------------------------------------------------------+ +-----+
- * | | Vol-| Vol+| Mute|Eject| | | | Home| PgUp| | | |
- * |--------------------------------------------------------------------------------------------+
- * | | Prev| Play| Next| | | | | End | PgDn| | | |
- * +--------------------------------------------------------------------------------------------+-----+
- * | | | | | | | | | | |
- * `--------------------------------------------------------------------------------------------------´
- */
- [1] = LAYOUT(
- QK_BOOT,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, C_BLK,
- _______,_______,_______,_______,_______,_______,_______,_______,KC_PSCR,KC_SCRL,KC_PAUS,_______,_______,_______, _______,
- _______,KC_VOLD,KC_VOLU,KC_MUTE,KC_EJCT,_______,_______,_______,KC_HOME,KC_PGUP,_______,_______, _______,
- _______,KC_MPRV,KC_MPLY,KC_MNXT,_______,_______,_______,_______,KC_END, KC_PGDN,_______,_______, _______,
- _______,_______,_______, _______, _______,_______,MO(1), _______,_______,_______
- )
-};
diff --git a/keyboards/fc660c/rules.mk b/keyboards/fc660c/rules.mk
index ed4a7ca66d..03a674d668 100644
--- a/keyboards/fc660c/rules.mk
+++ b/keyboards/fc660c/rules.mk
@@ -11,7 +11,7 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
# Optimize size but this may cause error "relocation truncated to fit"
#EXTRALDFLAGS = -Wl,--relax
+I2C_DRIVER_REQUIRED = yes
+
CUSTOM_MATRIX = yes
-SRC += matrix.c \
- actuation_point.c \
- i2c.c
+SRC += matrix.c ad5258.c
diff --git a/keyboards/fc980c/actuation_point.c b/keyboards/fc980c/actuation_point.c
deleted file mode 100644
index 5f4cb16f40..0000000000
--- a/keyboards/fc980c/actuation_point.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
-Copyright 2017 Balz Guenat
-based on work by Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "actuation_point.h"
-#include "i2c.h"
-
-///////////////////////////////////////////////////////////////////////////////
-//
-// AD5258 I2C digital potentiometer
-// http://www.analog.com/media/en/technical-documentation/data-sheets/AD5258.pdf
-//
-#define AD5258_ADDR 0b0011000
-#define AD5258_INST_RDAC 0x00
-#define AD5258_INST_EEPROM 0x20
-
-uint8_t read_rdac(void) {
- // read RDAC register
- i2c_start_write(AD5258_ADDR);
- i2c_master_write(AD5258_INST_RDAC);
- i2c_start_read(AD5258_ADDR);
- uint8_t ret = i2c_master_read(I2C_NACK);
- i2c_master_stop();
- return ret;
-};
-
-uint8_t read_eeprom(void) {
- i2c_start_write(AD5258_ADDR);
- i2c_master_write(AD5258_INST_EEPROM);
- i2c_start_read(AD5258_ADDR);
- uint8_t ret = i2c_master_read(I2C_NACK);
- i2c_master_stop();
- return ret;
-};
-
-void write_rdac(uint8_t rdac) {
- // write RDAC register:
- i2c_start_write(AD5258_ADDR);
- i2c_master_write(AD5258_INST_RDAC);
- i2c_master_write(rdac & 0x3F);
- i2c_master_stop();
-};
-
-void actuation_point_up(void) {
- // write RDAC register: lower value makes actuation point shallow
- uint8_t rdac = read_rdac();
- if (rdac == 0)
- write_rdac(0);
- else
- write_rdac(rdac-1);
-};
-
-void actuation_point_down(void) {
- // write RDAC register: higher value makes actuation point deep
- uint8_t rdac = read_rdac();
- if (rdac == 63)
- write_rdac(63);
- else
- write_rdac(rdac+1);
-};
-
-void adjust_actuation_point(int offset) {
- i2c_master_init();
- uint8_t rdac = read_eeprom() + offset;
- if (rdac > 63) { // protects from under and overflows
- if (offset > 0)
- write_rdac(63);
- else
- write_rdac(0);
- } else {
- write_rdac(rdac);
- }
-}
diff --git a/keyboards/fc980c/actuation_point.h b/keyboards/fc980c/actuation_point.h
deleted file mode 100644
index e02832186c..0000000000
--- a/keyboards/fc980c/actuation_point.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-Copyright 2017 Balz Guenat
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#include <stdint.h>
-
-// see keymaps/actuation-point-example to see how these functions can be used.
-uint8_t read_rdac(void);
-uint8_t read_eeprom(void);
-void actuation_point_up(void);
-void actuation_point_down(void);
-
-// be careful with this.
-void adjust_actuation_point(int offset);
diff --git a/keyboards/fc980c/ad5258.c b/keyboards/fc980c/ad5258.c
new file mode 100644
index 0000000000..b1df75789b
--- /dev/null
+++ b/keyboards/fc980c/ad5258.c
@@ -0,0 +1,52 @@
+/*
+Copyright 2017 Balz Guenat
+based on work by Jun Wako <wakojun@gmail.com>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "ad5258.h"
+#include "i2c_master.h"
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// AD5258 I2C digital potentiometer
+// http://www.analog.com/media/en/technical-documentation/data-sheets/AD5258.pdf
+//
+#define AD5258_I2C_ADDRESS 0x18
+#define AD5258_INST_RDAC 0x00
+#define AD5258_INST_EEPROM 0x20
+
+void ad5258_init(void) {
+ i2c_init();
+}
+
+uint8_t ad5258_read_rdac(void) {
+ // read RDAC register
+ uint8_t ret = 0;
+ i2c_readReg(AD5258_I2C_ADDRESS, AD5258_INST_RDAC, &ret, 1, 100);
+ return ret;
+}
+
+uint8_t ad5258_read_eeprom(void) {
+ uint8_t ret = 0;
+ i2c_readReg(AD5258_I2C_ADDRESS, AD5258_INST_EEPROM, &ret, 1, 100);
+ return ret;
+}
+
+void ad5258_write_rdac(uint8_t rdac) {
+ // write RDAC register:
+ uint8_t data = rdac & 0x3F;
+ i2c_writeReg(AD5258_I2C_ADDRESS, AD5258_INST_RDAC, &data, 1, 100);
+}
diff --git a/keyboards/fc980c/ad5258.h b/keyboards/fc980c/ad5258.h
new file mode 100644
index 0000000000..c27f247675
--- /dev/null
+++ b/keyboards/fc980c/ad5258.h
@@ -0,0 +1,28 @@
+/*
+Copyright 2017 Balz Guenat
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+#include <stdint.h>
+
+void ad5258_init(void);
+
+uint8_t ad5258_read_rdac(void);
+
+uint8_t ad5258_read_eeprom(void);
+
+void ad5258_write_rdac(uint8_t rdac);
diff --git a/keyboards/fc980c/config.h b/keyboards/fc980c/config.h
index 7c0c3b31a6..776b8ef35f 100644
--- a/keyboards/fc980c/config.h
+++ b/keyboards/fc980c/config.h
@@ -30,8 +30,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
* These options are also useful to firmware size reduction.
*/
-#define USE_I2C
-
/* disable debug print */
//#define NO_DEBUG
diff --git a/keyboards/fc980c/fc980c.c b/keyboards/fc980c/fc980c.c
index fc3696f244..c1c62da9ac 100644
--- a/keyboards/fc980c/fc980c.c
+++ b/keyboards/fc980c/fc980c.c
@@ -15,16 +15,46 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "quantum.h"
+#include "fc980c.h"
#ifdef ACTUATION_DEPTH_ADJUSTMENT
-#include "actuation_point.h"
-#endif
-
void matrix_init_kb(void) {
-#ifdef ACTUATION_DEPTH_ADJUSTMENT
adjust_actuation_point(ACTUATION_DEPTH_ADJUSTMENT);
-#endif
- matrix_init_user();
+ matrix_init_user();
+}
+
+void actuation_point_up(void) {
+ // write RDAC register: lower value makes actuation point shallow
+ uint8_t rdac = ad5258_read_rdac();
+ if (rdac == 0) {
+ ad5258_write_rdac(0);
+ } else {
+ ad5258_write_rdac(rdac - 1);
+ }
}
+
+void actuation_point_down(void) {
+ // write RDAC register: higher value makes actuation point deep
+ uint8_t rdac = ad5258_read_rdac();
+ if (rdac == 63) {
+ ad5258_write_rdac(63);
+ } else {
+ ad5258_write_rdac(rdac + 1);
+ }
+}
+
+void adjust_actuation_point(int offset) {
+ ad5258_init();
+ uint8_t rdac = ad5258_read_eeprom() + offset;
+ if (rdac > 63) { // protects from under and overflows
+ if (offset > 0) {
+ ad5258_write_rdac(63);
+ } else {
+ ad5258_write_rdac(0);
+ }
+ } else {
+ ad5258_write_rdac(rdac);
+ }
+}
+#endif
diff --git a/keyboards/fc980c/fc980c.h b/keyboards/fc980c/fc980c.h
new file mode 100644
index 0000000000..aa98e36be9
--- /dev/null
+++ b/keyboards/fc980c/fc980c.h
@@ -0,0 +1,31 @@
+/*
+Copyright 2017 Balz Guenat
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+#include "quantum.h"
+
+#ifdef ACTUATION_DEPTH_ADJUSTMENT
+# include "ad5258.h"
+
+// see keymaps/actuation-point-example to see how these functions can be used.
+void actuation_point_up(void);
+void actuation_point_down(void);
+
+// be careful with this.
+void adjust_actuation_point(int offset);
+#endif
diff --git a/keyboards/fc980c/i2c.c b/keyboards/fc980c/i2c.c
deleted file mode 100644
index 084c890c40..0000000000
--- a/keyboards/fc980c/i2c.c
+++ /dev/null
@@ -1,162 +0,0 @@
-#include <util/twi.h>
-#include <avr/io.h>
-#include <stdlib.h>
-#include <avr/interrupt.h>
-#include <util/twi.h>
-#include <stdbool.h>
-#include "i2c.h"
-
-#ifdef USE_I2C
-
-// Limits the amount of we wait for any one i2c transaction.
-// Since were running SCL line 100kHz (=> 10μs/bit), and each transactions is
-// 9 bits, a single transaction will take around 90μs to complete.
-//
-// (F_CPU/SCL_CLOCK) => # of μC cycles to transfer a bit
-// poll loop takes at least 8 clock cycles to execute
-#define I2C_LOOP_TIMEOUT (9+1)*(F_CPU/SCL_CLOCK)/8
-
-#define BUFFER_POS_INC() (slave_buffer_pos = (slave_buffer_pos+1)%SLAVE_BUFFER_SIZE)
-
-volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE];
-
-static volatile uint8_t slave_buffer_pos;
-static volatile bool slave_has_register_set = false;
-
-// Wait for an i2c operation to finish
-inline static
-void i2c_delay(void) {
- uint16_t lim = 0;
- while(!(TWCR & (1<<TWINT)) && lim < I2C_LOOP_TIMEOUT)
- lim++;
-
- // easier way, but will wait slightly longer
- // _delay_us(100);
-}
-
-// Setup twi to run at 100kHz
-void i2c_master_init(void) {
- // no prescaler
- TWSR = 0;
- // Set TWI clock frequency to SCL_CLOCK. Need TWBR>10.
- // Check datasheets for more info.
- TWBR = ((F_CPU/SCL_CLOCK)-16)/2;
-}
-
-// Start a transaction with the given i2c slave address. The direction of the
-// transfer is set with I2C_READ and I2C_WRITE.
-// returns: 0 => success
-// 1 => error
-uint8_t i2c_master_start(uint8_t address) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTA);
-
- i2c_delay();
-
- // check that we started successfully
- if ( (TW_STATUS != TW_START) && (TW_STATUS != TW_REP_START))
- return 1;
-
- TWDR = address;
- TWCR = (1<<TWINT) | (1<<TWEN);
-
- i2c_delay();
-
- if ( (TW_STATUS != TW_MT_SLA_ACK) && (TW_STATUS != TW_MR_SLA_ACK) )
- return 1; // slave did not acknowledge
- else
- return 0; // success
-}
-
-
-// Finish the i2c transaction.
-void i2c_master_stop(void) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWSTO);
-
- uint16_t lim = 0;
- while(!(TWCR & (1<<TWSTO)) && lim < I2C_LOOP_TIMEOUT)
- lim++;
-}
-
-// Write one byte to the i2c slave.
-// returns 0 => slave ACK
-// 1 => slave NACK
-uint8_t i2c_master_write(uint8_t data) {
- TWDR = data;
- TWCR = (1<<TWINT) | (1<<TWEN);
-
- i2c_delay();
-
- // check if the slave acknowledged us
- return (TW_STATUS == TW_MT_DATA_ACK) ? 0 : 1;
-}
-
-// Read one byte from the i2c slave. If ack=1 the slave is acknowledged,
-// if ack=0 the acknowledge bit is not set.
-// returns: byte read from i2c device
-uint8_t i2c_master_read(int ack) {
- TWCR = (1<<TWINT) | (1<<TWEN) | (ack<<TWEA);
-
- i2c_delay();
- return TWDR;
-}
-
-void i2c_reset_state(void) {
- TWCR = 0;
-}
-
-void i2c_slave_init(uint8_t address) {
- TWAR = address << 0; // slave i2c address
- // TWEN - twi enable
- // TWEA - enable address acknowledgement
- // TWINT - twi interrupt flag
- // TWIE - enable the twi interrupt
- TWCR = (1<<TWIE) | (1<<TWEA) | (1<<TWINT) | (1<<TWEN);
-}
-
-ISR(TWI_vect);
-
-ISR(TWI_vect) {
- uint8_t ack = 1;
- switch(TW_STATUS) {
- case TW_SR_SLA_ACK:
- // this device has been addressed as a slave receiver
- slave_has_register_set = false;
- break;
-
- case TW_SR_DATA_ACK:
- // this device has received data as a slave receiver
- // The first byte that we receive in this transaction sets the location
- // of the read/write location of the slaves memory that it exposes over
- // i2c. After that, bytes will be written at slave_buffer_pos, incrementing
- // slave_buffer_pos after each write.
- if(!slave_has_register_set) {
- slave_buffer_pos = TWDR;
- // don't acknowledge the master if this memory loctaion is out of bounds
- if ( slave_buffer_pos >= SLAVE_BUFFER_SIZE ) {
- ack = 0;
- slave_buffer_pos = 0;
- }
- slave_has_register_set = true;
- } else {
- i2c_slave_buffer[slave_buffer_pos] = TWDR;
- BUFFER_POS_INC();
- }
- break;
-
- case TW_ST_SLA_ACK:
- case TW_ST_DATA_ACK:
- // master has addressed this device as a slave transmitter and is
- // requesting data.
- TWDR = i2c_slave_buffer[slave_buffer_pos];
- BUFFER_POS_INC();
- break;
-
- case TW_BUS_ERROR: // something went wrong, reset twi state
- TWCR = 0;
- default:
- break;
- }
- // Reset everything, so we are ready for the next TWI interrupt
- TWCR |= (1<<TWIE) | (1<<TWINT) | (ack<<TWEA) | (1<<TWEN);
-}
-#endif
diff --git a/keyboards/fc980c/i2c.h b/keyboards/fc980c/i2c.h
deleted file mode 100644
index 8910e70f10..0000000000
--- a/keyboards/fc980c/i2c.h
+++ /dev/null
@@ -1,46 +0,0 @@
-#pragma once
-
-#include <stdint.h>
-
-#ifndef F_CPU
-#define F_CPU 16000000UL
-#endif
-
-#define I2C_READ 1
-#define I2C_WRITE 0
-
-#define I2C_ACK 1
-#define I2C_NACK 0
-
-#define SLAVE_BUFFER_SIZE 0x10
-
-// i2c SCL clock frequency
-#define SCL_CLOCK 400000L
-
-extern volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE];
-
-void i2c_master_init(void);
-uint8_t i2c_master_start(uint8_t address);
-void i2c_master_stop(void);
-uint8_t i2c_master_write(uint8_t data);
-uint8_t i2c_master_read(int);
-void i2c_reset_state(void);
-void i2c_slave_init(uint8_t address);
-
-
-static inline unsigned char i2c_start_read(unsigned char addr) {
- return i2c_master_start((addr << 1) | I2C_READ);
-}
-
-static inline unsigned char i2c_start_write(unsigned char addr) {
- return i2c_master_start((addr << 1) | I2C_WRITE);
-}
-
-// from SSD1306 scrips
-extern unsigned char i2c_rep_start(unsigned char addr);
-extern void i2c_start_wait(unsigned char addr);
-extern unsigned char i2c_readAck(void);
-extern unsigned char i2c_readNak(void);
-extern unsigned char i2c_read(unsigned char ack);
-
-#define i2c_read(ack) (ack) ? i2c_readAck() : i2c_readNak();
diff --git a/keyboards/fc980c/keymaps/actuation-point-example/config.h b/keyboards/fc980c/keymaps/actuation-point-example/config.h
index c2a538b6ae..a4ecab70fd 100644
--- a/keyboards/fc980c/keymaps/actuation-point-example/config.h
+++ b/keyboards/fc980c/keymaps/actuation-point-example/config.h
@@ -14,11 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-
-// place overrides here
+#pragma once
// higher value means deeper actuation point, less sensitive
// be careful and only make small adjustments (steps of 1 or 2).
@@ -27,5 +23,3 @@
// this should probably stay in the range +/-5.
#undef ACTUATION_DEPTH_ADJUSTMENT
#define ACTUATION_DEPTH_ADJUSTMENT +1
-
-#endif
diff --git a/keyboards/fc980c/keymaps/actuation-point-example/keymap.c b/keyboards/fc980c/keymaps/actuation-point-example/keymap.c
index 85e782d625..50b6a9ff40 100644
--- a/keyboards/fc980c/keymaps/actuation-point-example/keymap.c
+++ b/keyboards/fc980c/keymaps/actuation-point-example/keymap.c
@@ -15,7 +15,6 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "actuation_point.h"
enum custom_keycodes
{
@@ -62,12 +61,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record)
}
case AP_READ_RDAC:
{
- xprintf("RDAC: %d", read_rdac());
+ xprintf("RDAC: %d", ad5258_read_rdac());
return false;
}
case AP_READ_EEPROM:
{
- xprintf("EEPROM: %d", read_eeprom());
+ xprintf("EEPROM: %d", ad5258_read_eeprom());
return false;
}
diff --git a/keyboards/fc980c/rules.mk b/keyboards/fc980c/rules.mk
index ed4a7ca66d..03a674d668 100644
--- a/keyboards/fc980c/rules.mk
+++ b/keyboards/fc980c/rules.mk
@@ -11,7 +11,7 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
# Optimize size but this may cause error "relocation truncated to fit"
#EXTRALDFLAGS = -Wl,--relax
+I2C_DRIVER_REQUIRED = yes
+
CUSTOM_MATRIX = yes
-SRC += matrix.c \
- actuation_point.c \
- i2c.c
+SRC += matrix.c ad5258.c
diff --git a/keyboards/feker/ik75/config.h b/keyboards/feker/ik75/config.h
index a9914722fc..aed1907803 100644
--- a/keyboards/feker/ik75/config.h
+++ b/keyboards/feker/ik75/config.h
@@ -25,9 +25,8 @@
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
/* RGB Matrix config */
- #define DRIVER_ADDR_1 0b1011111
- #define DRIVER_ADDR_2 0b1010000
- #define DRIVER_COUNT 2
+ #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_VCC_VCC
+ #define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_GND
#define DRIVER_1_LED_TOTAL 63
#define DRIVER_2_LED_TOTAL 64
diff --git a/keyboards/feker/ik75/ik75.c b/keyboards/feker/ik75/ik75.c
index 98b24abfe8..826afab01b 100644
--- a/keyboards/feker/ik75/ik75.c
+++ b/keyboards/feker/ik75/ik75.c
@@ -18,7 +18,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | G location
diff --git a/keyboards/ferris/0_1/rules.mk b/keyboards/ferris/0_1/rules.mk
index 487375928e..f971aa9a48 100644
--- a/keyboards/ferris/0_1/rules.mk
+++ b/keyboards/ferris/0_1/rules.mk
@@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes
LTO_ENABLE = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/ferris/0_2/bling/bling.c b/keyboards/ferris/0_2/bling/bling.c
index 8af1d33e85..07f58149cc 100644
--- a/keyboards/ferris/0_2/bling/bling.c
+++ b/keyboards/ferris/0_2/bling/bling.c
@@ -27,7 +27,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
| | 4 | | || | | 4 | |
| 6 | | | 2 || 2 | | | 5 |
*/
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/ferris/0_2/bling/config.h b/keyboards/ferris/0_2/bling/config.h
index cbb3b11c90..64e7a6de2d 100644
--- a/keyboards/ferris/0_2/bling/config.h
+++ b/keyboards/ferris/0_2/bling/config.h
@@ -18,9 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
/* LED Drivers */
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110101
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SCL
#define DRIVER_1_LED_TOTAL 7
#define DRIVER_2_LED_TOTAL 7
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/ferris/0_2/rules.mk b/keyboards/ferris/0_2/rules.mk
index f3760b7b62..6f67e3dece 100644
--- a/keyboards/ferris/0_2/rules.mk
+++ b/keyboards/ferris/0_2/rules.mk
@@ -16,6 +16,6 @@ NO_USB_STARTUP_CHECK = yes
LTO_ENABLE = no
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
DEFAULT_FOLDER = ferris/0_2/base
diff --git a/keyboards/flashquark/horizon_z/config.h b/keyboards/flashquark/horizon_z/config.h
index 8828834d74..ddeafe578d 100755
--- a/keyboards/flashquark/horizon_z/config.h
+++ b/keyboards/flashquark/horizon_z/config.h
@@ -72,7 +72,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 62
#endif
diff --git a/keyboards/flashquark/horizon_z/horizon_z.c b/keyboards/flashquark/horizon_z/horizon_z.c
index da62deaf29..a9faa5a943 100755
--- a/keyboards/flashquark/horizon_z/horizon_z.c
+++ b/keyboards/flashquark/horizon_z/horizon_z.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{0, B_1, A_1, C_1},
{0, B_2, A_2, C_2},
{0, B_3, A_3, C_3},
diff --git a/keyboards/flehrad/bigswitch/keymaps/333fred/config.h b/keyboards/flehrad/bigswitch/keymaps/333fred/config.h
deleted file mode 100644
index 6e9219115c..0000000000
--- a/keyboards/flehrad/bigswitch/keymaps/333fred/config.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#pragma once
-
-// Long tapping term on the big switch, because it takes so long to press
-#define TAPPING_TERM 500
-#define PERMISSIVE_HOLD
diff --git a/keyboards/flehrad/bigswitch/keymaps/333fred/keymap.c b/keyboards/flehrad/bigswitch/keymaps/333fred/keymap.c
deleted file mode 100644
index d323bcc2c4..0000000000
--- a/keyboards/flehrad/bigswitch/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-
-typedef enum {
- SINGLE_TAP, SINGLE_HOLD, DOUBLE, TRIPLE, QUAD
-} tap_dance_state_enum;
-
-enum {
- TD_KEY = 0
-};
-
-static tap_dance_state_enum tap_dance_state;
-static bool tap_dance_active = false;
-static uint16_t timer;
-
-void dance_cycle(bool override_timer) {
- if (tap_dance_active)
- {
- if (timer_elapsed(timer) > 100 || override_timer)
- {
- switch (tap_dance_state)
- {
- case SINGLE_HOLD:
- {
- rgblight_increase_hue_noeeprom();
- break;
- }
-
- case DOUBLE:
- {
- rgblight_step_noeeprom();
- break;
- }
-
- case TRIPLE:
- {
- rgblight_toggle_noeeprom();
- break;
- }
-
- default:
- // Not needed
- break;
- }
-
- timer = timer_read();
- }
- }
-}
-
-void dance_finished(tap_dance_state_t *state, void* user_data) {
- // Determine the current state
- switch (state->count)
- {
- case 1:
- {
- if (state->interrupted || state->pressed == 0) tap_dance_state = SINGLE_TAP;
- else tap_dance_state = SINGLE_HOLD;
- break;
- }
- case 2:
- {
- tap_dance_state = DOUBLE;
- break;
- }
- case 3:
- {
- tap_dance_state = TRIPLE;
- break;
- }
- default:
- {
- tap_dance_state = QUAD;
- break;
- }
- }
-
- switch (tap_dance_state)
- {
- case SINGLE_TAP:
- {
- // VS Build: CTRL+SHIFT+B
- send_string_with_delay_P(PSTR(SS_DOWN(X_LCTL) SS_DOWN(X_LSFT) "b" SS_UP(X_LSFT) SS_UP(X_LCTL)), 10);
- tap_dance_active = false;
- break;
- }
-
- case SINGLE_HOLD:
- case DOUBLE:
- case TRIPLE:
- {
- // These are handled by the matrix_scan, which will register the appropriate rgb
- // functions every scan
- tap_dance_active = true;
- timer = timer_read();
- dance_cycle(true);
- break;
- }
-
- case QUAD:
- {
- // Reprogram
- reset_keyboard();
- break;
- }
- }
-}
-
-void dance_reset(tap_dance_state_t *state, void* user_data)
-{
- tap_dance_active = false;
-}
-
-tap_dance_action_t tap_dance_actions[] = {
- [TD_KEY] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, dance_finished, dance_reset)
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(TD(TD_KEY))
-};
-
-void matrix_scan_user(void) {
- dance_cycle(false);
-}
diff --git a/keyboards/flehrad/bigswitch/keymaps/333fred/rules.mk b/keyboards/flehrad/bigswitch/keymaps/333fred/rules.mk
deleted file mode 100644
index 20aaadacbc..0000000000
--- a/keyboards/flehrad/bigswitch/keymaps/333fred/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# I'm not using things from my userpace in this one
-USER_NAME = disable
-
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/flehrad/bigswitch/keymaps/wanleg/config.h b/keyboards/flehrad/bigswitch/keymaps/wanleg/config.h
deleted file mode 100644
index bb638ce599..0000000000
--- a/keyboards/flehrad/bigswitch/keymaps/wanleg/config.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Copyright 2018 wanleg
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// place overrides here
-#undef MATRIX_ROW_PINS
-#define MATRIX_ROW_PINS { B4 }
-#undef MATRIX_COL_PINS
-#define MATRIX_COL_PINS { B6 }
-
-/* COL2ROW, ROW2COL*/
-#undef DIODE_DIRECTION
-#define DIODE_DIRECTION COL2ROW
-
-#define BACKLIGHT_PIN B5
-#define BACKLIGHT_BREATHING
-#define BACKLIGHT_LEVELS 3
-#define BREATHING_PERIOD 5
-
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#undef DEBOUNCE
-#define DEBOUNCE 5
-
-// set flashing LED with QMK DFU
-#define QMK_LED B0
-
-// set audio pin
-#define AUDIO_PIN C6
diff --git a/keyboards/flehrad/bigswitch/keymaps/wanleg/keymap.c b/keyboards/flehrad/bigswitch/keymaps/wanleg/keymap.c
deleted file mode 100644
index 4a34640466..0000000000
--- a/keyboards/flehrad/bigswitch/keymaps/wanleg/keymap.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2018 wanleg
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "wanleg.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[0] = LAYOUT( /* Base */
-TD(CAD_TD)
-),
-[1] = LAYOUT( /*Secondary*/
-TD(BSW_TAP_DANCE)
-),
-}; \ No newline at end of file
diff --git a/keyboards/flehrad/bigswitch/keymaps/wanleg/rules.mk b/keyboards/flehrad/bigswitch/keymaps/wanleg/rules.mk
deleted file mode 100644
index d6c3b1880e..0000000000
--- a/keyboards/flehrad/bigswitch/keymaps/wanleg/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-#If using a ProMicro and it has the QMK DFU bootloader instead of Caterina,
-#run "make <keyboard>:<keymap> dfu=qmk" when compiling to ensure it is flagged properly after being flashed
-ifeq ($(strip $(dfu)), qmk)
- BOOTLOADER = qmk-dfu
-endif
-
-AUDIO_ENABLE = yes # Audio output on port C6
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
diff --git a/keyboards/foostan/cornelius/keymaps/hvp/config.h b/keyboards/foostan/cornelius/keymaps/hvp/config.h
deleted file mode 100644
index a2a492ff27..0000000000
--- a/keyboards/foostan/cornelius/keymaps/hvp/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2018 Carlos Filoteo
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-#define TAPPING_TERM 200
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/foostan/cornelius/keymaps/hvp/keymap.c b/keyboards/foostan/cornelius/keymaps/hvp/keymap.c
deleted file mode 100644
index 247eaf7a4e..0000000000
--- a/keyboards/foostan/cornelius/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,66 +0,0 @@
-/* Copyright 2020 foostan
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-#define LT3_ESC LT(3, KC_ESC)
-#define LT4_TAB LT(5, KC_TAB)
-#define LT2 LT(2, KC_LEFT_CURLY_BRACE)
-#define LT1 LT(1, KC_RIGHT_CURLY_BRACE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[0] = LAYOUT(
- LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LT3_ESC, MT(MOD_LGUI, KC_A), MT(MOD_LALT, KC_S), MT(MOD_LSFT, KC_D), MT(MOD_LCTL, KC_F), LT(4,KC_G), MT(MOD_RCTL, KC_H), MT(MOD_RSFT, KC_J), MT(MOD_RALT,KC_K), MT(MOD_RGUI,KC_L), TD(TD1), TD(TD2),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT,
- SC_LCPO, KC_LCTL, KC_LGUI, KC_LALT, LT2, KC_SPC, KC_ENT, LT1, KC_RALT, KC_RGUI, KC_RCTL, SC_RSPC
- ),
-
-[1] = LAYOUT( /* Right */
- KC_TILDE, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DEL, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-[2] = LAYOUT( /* Left */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, XXXXXXX,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-[3] = LAYOUT( /* Esc */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- KC_DELETE, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, _______, _______, _______, _______, KC_MUTE, KC_MPLY, KC_MSTP, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
- ),
-
-[4] = LAYOUT(
- _______, LGUI(KC_1), LGUI(KC_2), LGUI(KC_3), LGUI(KC_4), LGUI(KC_5), LGUI(KC_6), LGUI(KC_7), KC_7, KC_8, KC_9, KC_BSPC,
- _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_4, KC_5, KC_6, KC_0,
- _______, _______, _______, _______, _______, _______, XXXXXXX, KC_0, KC_1, KC_2, KC_3, _______,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-[5] = LAYOUT(
- _______, G(S(KC_1)), G(S(KC_2)), G(S(KC_3)), G(S(KC_4)), G(S(KC_5)), G(S(KC_6)), G(S(KC_7)), G(S(KC_8)), G(S(KC_9)), G(S(KC_0)), _______,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_PSCR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CAPS,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUM
- ),
-};
diff --git a/keyboards/foostan/cornelius/keymaps/hvp/readme.md b/keyboards/foostan/cornelius/keymaps/hvp/readme.md
deleted file mode 100644
index cb35bd8a29..0000000000
--- a/keyboards/foostan/cornelius/keymaps/hvp/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default keymap for cornelius
diff --git a/keyboards/foostan/cornelius/keymaps/hvp/rules.mk b/keyboards/foostan/cornelius/keymaps/hvp/rules.mk
deleted file mode 100644
index 1ba2fa8fbe..0000000000
--- a/keyboards/foostan/cornelius/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/foostan/cornelius/keymaps/pdl/config.h b/keyboards/foostan/cornelius/keymaps/pdl/config.h
deleted file mode 100644
index f2a5a522ea..0000000000
--- a/keyboards/foostan/cornelius/keymaps/pdl/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2021 Daniel Perrett
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-
-#define TAPPING_TOGGLE 2
-#define TAPPING_TERM 200
-
-#define COMBO_PDL
-#define COMBO_TERM 100
diff --git a/keyboards/foostan/cornelius/keymaps/pdl/keymap.c b/keyboards/foostan/cornelius/keymaps/pdl/keymap.c
deleted file mode 100644
index 3b71280ad8..0000000000
--- a/keyboards/foostan/cornelius/keymaps/pdl/keymap.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2021 Daniel Perrett
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "pdl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- MY_FESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO,
- MY_SBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT
- ),
- [_PROXIM] = LAYOUT_wrapper(
- MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC,
- KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL,
- MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT
- ),
- [_NAVIGN] = LAYOUT_wrapper(
- _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_PUNCTN] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_NUMBRS] = LAYOUT_wrapper(
- _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_CODING] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FUNCTN] = LAYOUT_wrapper(
- _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD,
- _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR,
- _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/foostan/cornelius/keymaps/pdl/readme.md b/keyboards/foostan/cornelius/keymaps/pdl/readme.md
deleted file mode 100644
index 59bb03d18b..0000000000
--- a/keyboards/foostan/cornelius/keymaps/pdl/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# A keymap for cornelius used by pdl
diff --git a/keyboards/for_science/keymaps/manna-harbour_miryoku/config.h b/keyboards/for_science/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index c05e920287..0000000000
--- a/keyboards/for_science/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- K32, K33, K34, K35, K36, K37\
-)
diff --git a/keyboards/for_science/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/for_science/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/for_science/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/fortitude60/keymaps/manna-harbour_miryoku/config.h b/keyboards/fortitude60/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index e335d5d8b8..0000000000
--- a/keyboards/fortitude60/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
- XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX\
-)
diff --git a/keyboards/fortitude60/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/fortitude60/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/fortitude60/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/foxlab/leaf60/universal/keymaps/jarred/keymap.c b/keyboards/foxlab/leaf60/universal/keymaps/jarred/keymap.c
deleted file mode 100644
index 63374f401f..0000000000
--- a/keyboards/foxlab/leaf60/universal/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2019 Jarred Steenvoorden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "jarred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QW] = LAYOUT_60_hhkb(
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSLS, KC_GRV ,
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSPC,
- NAVI , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT ,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_ENT ,
- KC_LCTL, KC_LGUI, KC_SPC , KC_RALT, KC_RCTL
- ),
-
- [_NV] = LAYOUT_60_hhkb(
- KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______,
- _______, _______, _______, _______, KC_DEL , KC_BSPC, _______, KC_HOME, KC_UP , KC_END , KC_INS , _______, _______, _______,
- _______, _______, _______, KC_LSFT, KC_LCTL, KC_ENT , _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL , KC_DEL , _______,
- _______ , _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______, _______,
- _______, _______, ALT_TAB , _______, QK_BOOT
- ),
-
-};
diff --git a/keyboards/foxlab/leaf60/universal/keymaps/jarred/readme.md b/keyboards/foxlab/leaf60/universal/keymaps/jarred/readme.md
deleted file mode 100644
index 6b0a57a1e6..0000000000
--- a/keyboards/foxlab/leaf60/universal/keymaps/jarred/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Jarred's Leaf60 Layout
-
-Check out [user space readme](../../../../../../users/jarred/readme.md) for more info
-
-# Flash
-
-```
-make foxlab/leaf60/universal:jarred:dfu
-```
diff --git a/keyboards/foxlab/leaf60/universal/keymaps/mguterl/config.h b/keyboards/foxlab/leaf60/universal/keymaps/mguterl/config.h
deleted file mode 100644
index d8f6533c6b..0000000000
--- a/keyboards/foxlab/leaf60/universal/keymaps/mguterl/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2019 Fox Lab
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// place overrides here
diff --git a/keyboards/foxlab/leaf60/universal/keymaps/mguterl/keymap.c b/keyboards/foxlab/leaf60/universal/keymaps/mguterl/keymap.c
deleted file mode 100644
index 22dede0696..0000000000
--- a/keyboards/foxlab/leaf60/universal/keymaps/mguterl/keymap.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright 2019 Fox Lab
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "mguterl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_all(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- ESC_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(UTIL),
- KC_LALT, KC_LALT, KC_LGUI, SPC_UTL, SPC_UTL, SPC_UTL, KC_RALT, MO(1), KC_RGUI, KC_RCTL),
-
- [_GAMING] = LAYOUT_all(
- KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_TAB, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, KC_SPC, _______, _______, _______, _______, _______),
-
- [_UTIL] = LAYOUT_all(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- TG_GAME, KC_MPLY, KC_MPRV, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, _______, _______,
- _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
-
-
-};
diff --git a/keyboards/foxlab/leaf60/universal/keymaps/mguterl/readme.md b/keyboards/foxlab/leaf60/universal/keymaps/mguterl/readme.md
deleted file mode 100644
index 7f1d982bce..0000000000
--- a/keyboards/foxlab/leaf60/universal/keymaps/mguterl/readme.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Michael Guterl's Leaf60 WKL Layout
-
-Check out my [userspace](/users/mguterl) for the custom keycodes that are used
-in keymap.c.
-
-This is a pretty standard 60% WKL layout. I add a couple of layers to add
-some conveniences and add vimkeys for navigation.
-
-```sh
-make foxlab/leaf60/universal:mguterl:flash
-```
diff --git a/keyboards/frobiac/blackbowl/rules.mk b/keyboards/frobiac/blackbowl/rules.mk
index 6004c37f9e..4e81c7280c 100644
--- a/keyboards/frobiac/blackbowl/rules.mk
+++ b/keyboards/frobiac/blackbowl/rules.mk
@@ -1,7 +1,7 @@
CUSTOM_MATRIX = lite
# project specific files
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
SRC += matrix.c
PS2_MOUSE_ENABLE = yes
diff --git a/keyboards/frooastboard/walnut/config.h b/keyboards/frooastboard/walnut/config.h
index 2703ec1e37..0f163f1e3d 100644
--- a/keyboards/frooastboard/walnut/config.h
+++ b/keyboards/frooastboard/walnut/config.h
@@ -3,14 +3,9 @@
#pragma once
-#define ISSI_TIMEOUT 100
-#define ISSI_PERSISTENCE 0
-#define ISSI_PWM_FREQUENCY 0b010
-#define ISSI_SWPULLUP PUR_0R
-#define ISSI_CSPULLUP PUR_0R
-#define DRIVER_COUNT 1
+#define IS31FL3737_PWM_FREQUENCY IS31FL3737_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_LED_COUNT 48
-#define DRIVER_ADDR_1 0b1010000
+#define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 191
diff --git a/keyboards/frooastboard/walnut/walnut.c b/keyboards/frooastboard/walnut/walnut.c
index 7163af011d..48d1677f7a 100644
--- a/keyboards/frooastboard/walnut/walnut.c
+++ b/keyboards/frooastboard/walnut/walnut.c
@@ -5,7 +5,7 @@
#if defined(RGB_MATRIX_ENABLE)
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/gboards/butterstick/keymaps/dennytom/README.md b/keyboards/gboards/butterstick/keymaps/dennytom/README.md
deleted file mode 100644
index a75bcc7506..0000000000
--- a/keyboards/gboards/butterstick/keymaps/dennytom/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# # Dennytom's Butterstick Layout
-
-This keymap is using a custom chording engine. Head out to my (DennyTom) user space to find the source files and details.
-
-To make a real keymap from the JSON file, run
-
-```sh
-python3 parser.py keymap_def.json keymap.c
-```
-
-Somehow it fits the whole keyboard on 20 keys. For longer typing sessions, use the ASET NIOP mode. \ No newline at end of file
diff --git a/keyboards/gboards/butterstick/keymaps/dennytom/keymap.c b/keyboards/gboards/butterstick/keymaps/dennytom/keymap.c
deleted file mode 100644
index c90431cd9d..0000000000
--- a/keyboards/gboards/butterstick/keymaps/dennytom/keymap.c
+++ /dev/null
@@ -1,1418 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define CHORD_TIMEOUT 100
-#define DANCE_TIMEOUT 200
-#define LEADER_TIMEOUT 750
-#define TAP_TIMEOUT 50
-#define LONG_PRESS_MULTIPLIER 3
-#define DYNAMIC_MACRO_MAX_LENGTH 20
-#define COMMAND_MAX_LENGTH 5
-#define LEADER_MAX_LENGTH 5
-#define HASH_TYPE uint32_t
-#define NUMBER_OF_KEYS 20
-#define DEFAULT_PSEUDOLAYER QWERTY
-
-#define H_TOP1 ((HASH_TYPE) 1 << 0)
-#define H_TOP2 ((HASH_TYPE) 1 << 1)
-#define H_TOP3 ((HASH_TYPE) 1 << 2)
-#define H_TOP4 ((HASH_TYPE) 1 << 3)
-#define H_TOP5 ((HASH_TYPE) 1 << 4)
-#define H_TOP6 ((HASH_TYPE) 1 << 5)
-#define H_TOP7 ((HASH_TYPE) 1 << 6)
-#define H_TOP8 ((HASH_TYPE) 1 << 7)
-#define H_TOP9 ((HASH_TYPE) 1 << 8)
-#define H_TOP0 ((HASH_TYPE) 1 << 9)
-#define H_BOT1 ((HASH_TYPE) 1 << 10)
-#define H_BOT2 ((HASH_TYPE) 1 << 11)
-#define H_BOT3 ((HASH_TYPE) 1 << 12)
-#define H_BOT4 ((HASH_TYPE) 1 << 13)
-#define H_BOT5 ((HASH_TYPE) 1 << 14)
-#define H_BOT6 ((HASH_TYPE) 1 << 15)
-#define H_BOT7 ((HASH_TYPE) 1 << 16)
-#define H_BOT8 ((HASH_TYPE) 1 << 17)
-#define H_BOT9 ((HASH_TYPE) 1 << 18)
-#define H_BOT0 ((HASH_TYPE) 1 << 19)
-
-enum internal_keycodes {
- TOP1 = SAFE_RANGE,
- TOP2, TOP3, TOP4, TOP5, TOP6, TOP7, TOP8, TOP9, TOP0, BOT1, BOT2, BOT3, BOT4, BOT5, BOT6, BOT7, BOT8, BOT9, BOT0,
- FIRST_INTERNAL_KEYCODE = TOP1,
- LAST_INTERNAL_KEYCODE = BOT0
-};
-
-enum pseudolayers {
- ALWAYS_ON, QWERTY, NUM, MOV, MOUSE, ASETNIOP, ASETNIOP_123, ASETNIOP_FN
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_butter(TOP1, TOP2, TOP3, TOP4, TOP5, TOP6, TOP7, TOP8, TOP9, TOP0, BOT1, BOT2, BOT3, BOT4, BOT5, BOT6, BOT7, BOT8, BOT9, BOT0),
-};
-size_t keymapsCount = 1;
-
-uint8_t keycodes_buffer_array[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-uint8_t command_buffer[] = {
- 0, 0, 0, 0, 0
-};
-
-uint16_t leader_buffer[] = {
- 0, 0, 0, 0, 0
-};
-
-uint8_t dynamic_macro_buffer[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-enum chord_states {
- IDLE,
- READY,
- ACTIVATED,
- DEACTIVATED,
- PRESS_FROM_ACTIVE,
- FINISHED_FROM_ACTIVE,
- IDLE_IN_DANCE,
- READY_IN_DANCE,
- FINISHED,
- LOCKED,
- READY_LOCKED,
- RESTART,
- IN_ONE_SHOT
-};
-
-struct Chord {
- uint32_t keycodes_hash;
- uint8_t pseudolayer;
- uint8_t* state;
- uint8_t* counter;
- uint16_t value1;
- uint8_t value2;
- void (*function) (const struct Chord*);
-};
-
-uint8_t current_pseudolayer = DEFAULT_PSEUDOLAYER;
-bool lock_next = false;
-uint16_t chord_timer = 0;
-uint16_t dance_timer = 0;
-bool autoshift_mode = true;
-uint8_t keycode_index = 0;
-uint8_t command_mode = 0;
-uint8_t command_ind = 0;
-bool in_leader_mode = false;
-uint8_t leader_ind = 0;
-uint16_t leader_timer = 0;
-uint8_t dynamic_macro_mode = false;
-uint8_t dynamic_macro_ind = 0;
-bool a_key_went_through = false;
-struct Chord* last_chord = NULL;
-
-bool handle_US_ANSI_shifted_keys(int16_t keycode, bool in) {
- bool is_US_ANSI_shifted = true;
-
- int16_t regular_keycode = KC_NO;
- switch (keycode) {
- case KC_TILDE:
- regular_keycode = KC_GRAVE;
- break;
- case KC_EXCLAIM:
- regular_keycode = KC_1;
- break;
- case KC_AT:
- regular_keycode = KC_2;
- break;
- case KC_HASH:
- regular_keycode = KC_3;
- break;
- case KC_DOLLAR:
- regular_keycode = KC_4;
- break;
- case KC_PERCENT:
- regular_keycode = KC_5;
- break;
- case KC_CIRCUMFLEX:
- regular_keycode = KC_6;
- break;
- case KC_AMPERSAND:
- regular_keycode = KC_7;
- break;
- case KC_ASTERISK:
- regular_keycode = KC_8;
- break;
- case KC_LEFT_PAREN:
- regular_keycode = KC_9;
- break;
- case KC_RIGHT_PAREN:
- regular_keycode = KC_0;
- break;
- case KC_UNDERSCORE:
- regular_keycode = KC_MINUS;
- break;
- case KC_PLUS:
- regular_keycode = KC_EQUAL;
- break;
- case KC_LEFT_CURLY_BRACE:
- regular_keycode = KC_LEFT_BRACKET;
- break;
- case KC_RIGHT_CURLY_BRACE:
- regular_keycode = KC_RIGHT_BRACKET;
- break;
- case KC_PIPE:
- regular_keycode = KC_BACKSLASH;
- break;
- case KC_COLON:
- regular_keycode = KC_SEMICOLON;
- break;
- case KC_DOUBLE_QUOTE:
- regular_keycode = KC_QUOTE;
- break;
- case KC_LEFT_ANGLE_BRACKET:
- regular_keycode = KC_COMMA;
- break;
- case KC_RIGHT_ANGLE_BRACKET:
- regular_keycode = KC_DOT;
- break;
- case KC_QUESTION:
- regular_keycode = KC_SLASH;
- break;
- default:
- is_US_ANSI_shifted = false;
- }
- if (is_US_ANSI_shifted) {
- if (in) {
- register_code(KC_LSFT);
- register_code(regular_keycode);
- } else {
- unregister_code(regular_keycode);
- unregister_code(KC_LSFT);
- }
- }
- return is_US_ANSI_shifted;
-}
-
-void key_in(int16_t keycode) {
- if (command_mode == 1 && command_ind < COMMAND_MAX_LENGTH) {
- command_buffer[command_ind] = keycode;
- command_ind++;
- a_key_went_through = true;
- } else if (in_leader_mode && leader_ind < LEADER_MAX_LENGTH) {
- leader_buffer[leader_ind] = keycode;
- leader_ind++;
- a_key_went_through = true;
- } else if (dynamic_macro_mode && dynamic_macro_ind < DYNAMIC_MACRO_MAX_LENGTH) {
- dynamic_macro_buffer[dynamic_macro_ind] = keycode;
- dynamic_macro_ind++;
- a_key_went_through = true;
- } else {
- if (!handle_US_ANSI_shifted_keys(keycode, true)) {
- register_code(keycode);
- }
- send_keyboard_report();
- a_key_went_through = true;
- }
-}
-
-void key_out(int16_t keycode) {
- if (command_mode == 0) {
- if (!handle_US_ANSI_shifted_keys(keycode, false)) {
- if (command_mode == 0 && in_leader_mode == false && dynamic_macro_mode == false) {
- unregister_code(keycode);
- }
- }
- send_keyboard_report();
- }
-}
-
-void tap_key(int16_t keycode) {
- key_in(keycode);
- wait_ms(TAP_TIMEOUT);
- key_out(keycode);
-}
-void single_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- key_in(self->value1);
- break;
- case DEACTIVATED:
- key_out(self->value1);
- *self->state = IDLE;
- break;
- case RESTART:
- key_out(self->value1);
- break;
- default:
- break;
- }
-}
-
-void key_layer_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- current_pseudolayer = self->value2;
- a_key_went_through = false;
- break;
- case DEACTIVATED:
- case RESTART:
- if (!a_key_went_through) {
- tap_key(self->value1);
- }
- current_pseudolayer = self->pseudolayer;
- *self->state = IDLE; // does not have effect if the state was RESTART
- break;
- default:
- break;
- }
-}
-
-void key_mod_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- key_in(self->value2);
- a_key_went_through = false;
- break;
- case DEACTIVATED:
- case RESTART:
- key_out(self->value2);
- if (!a_key_went_through) {
- tap_key(self->value1);
- }
- *self->state = IDLE; // does not have effect if the state was RESTART
- break;
- default:
- break;
- }
-}
-
-void key_key_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- break;
- case DEACTIVATED:
- tap_key(self->value1);
- *self->state = IDLE;
- break;
- case FINISHED:
- case PRESS_FROM_ACTIVE:
- key_in(self->value2);
- break;
- case RESTART:
- key_out(self->value2);
- break;
- default:
- break;
- }
-}
-
-void autoshift_dance_impl(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- *self->counter = 0;
- break;
- case DEACTIVATED:
- case RESTART:
- tap_key(self->value1);
- *self->state = IDLE;
- break;
- case FINISHED_FROM_ACTIVE:
- if (*self->counter == (LONG_PRESS_MULTIPLIER - 2)) {
- key_in(KC_LSFT);
- tap_key(self->value1);
- key_out(KC_LSFT);
- *self->state = IDLE;
- // the skip to IDLE is usually just a lag optimization,
- // in this case it has a logic function, on a short
- // press (still longer than a tap) the key does not get shifted
- } else {
- *self->counter += 1;
- *self->state = PRESS_FROM_ACTIVE;
- dance_timer = timer_read();
- }
- break;
- default:
- break;
- }
-}
-
-void autoshift_dance(const struct Chord* self) {
- if (autoshift_mode) {
- autoshift_dance_impl(self);
- } else {
- single_dance(self);
- }
-}
-
-void autoshift_toggle(const struct Chord* self){
- if (*self->state == ACTIVATED) {
- autoshift_mode = !autoshift_mode;
- *self->state = IDLE;
- }
-}
-
-void temp_pseudolayer(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- current_pseudolayer = self->value1;
- break;
- case DEACTIVATED:
- current_pseudolayer = self->pseudolayer;
- *self->state = IDLE;
- break;
- case RESTART:
- current_pseudolayer = self->pseudolayer;
- break;
- default:
- break;
- }
-}
-
-void perm_pseudolayer(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- current_pseudolayer = self->value1;
- *self->state = IDLE;
- }
-}
-
-void switch_layer(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- layer_move(self->value1);
- *self->state = IDLE;
- }
-}
-
-void lock(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- lock_next = true;
- *self->state = IDLE;
- }
-}
-
-void one_shot_key(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- break;
- case DEACTIVATED:
- key_in(self->value1);
- *self->state = IN_ONE_SHOT;
- break;
- case FINISHED:
- case PRESS_FROM_ACTIVE:
- key_in(self->value1);
- a_key_went_through = false;
- break;
- case RESTART:
- if (a_key_went_through) {
- key_out(self->value1);
- } else {
- *self->state = IN_ONE_SHOT;
- }
- default:
- break;
- }
-}
-
-void one_shot_layer(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- break;
- case DEACTIVATED:
- current_pseudolayer = self->value1;
- *self->state = IN_ONE_SHOT;
- break;
- case FINISHED:
- case PRESS_FROM_ACTIVE:
- current_pseudolayer = self->value1;
- a_key_went_through = false;
- break;
- case RESTART:
- if (a_key_went_through) {
- current_pseudolayer = self->pseudolayer;
- } else {
- *self->state = IN_ONE_SHOT;
- }
- default:
- break;
- }
-}
-
-void command(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- command_mode++;
- *self->state = IDLE;
- }
-}
-
-bool identical(uint16_t* buffer1, uint16_t* buffer2) {
- bool same = true;
- for (int i = 0; i < LEADER_MAX_LENGTH; i++) {
- same = same && (buffer1[i] == buffer2[i]);
- }
- return same;
-}
-
-void leader(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- in_leader_mode = true;
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_record(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- for (int i = 0; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- dynamic_macro_buffer[i] = 0;
- }
- dynamic_macro_mode = true;
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_next(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- if (dynamic_macro_mode && dynamic_macro_ind < DYNAMIC_MACRO_MAX_LENGTH) {
- dynamic_macro_buffer[dynamic_macro_ind] = 0;
- dynamic_macro_ind++;
- }
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_end(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- if (dynamic_macro_mode) {
- dynamic_macro_mode = false;
- }
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_play(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- int ind_start = 0;
- while (ind_start < DYNAMIC_MACRO_MAX_LENGTH) {
- for (int i = ind_start; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- if (dynamic_macro_buffer[i] == 0) {
- break;
- }
- register_code(dynamic_macro_buffer[i]);
- }
- send_keyboard_report();
- wait_ms(TAP_TIMEOUT);
- for (int i = ind_start; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- if (dynamic_macro_buffer[i] == 0) {
- ind_start = i + 1;
- break;
- }
- unregister_code(dynamic_macro_buffer[i]);
- }
- send_keyboard_report();
- }
- *self->state = IDLE;
- }
-}
-
-void clear(const struct Chord* self);
-
-void reset_keyboard_kb(void){
-#ifdef WATCHDOG_ENABLE
- MCUSR = 0;
- wdt_disable();
- wdt_reset();
-#endif
- reset_keyboard();
-}
-
-void reset(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- reset_keyboard_kb();
- }
-}
-
-uint8_t state_0 = IDLE;
-const struct Chord chord_0 PROGMEM = {H_TOP1 + H_TOP2 + H_BOT1 + H_BOT2, ALWAYS_ON, &state_0, NULL, 0, 0, lock};
-uint8_t state_1 = IDLE;
-const struct Chord chord_1 PROGMEM = {H_TOP2 + H_TOP3 + H_BOT2 + H_BOT3, ALWAYS_ON, &state_1, NULL, 0, 0, autoshift_toggle};
-uint8_t state_2 = IDLE;
-const struct Chord chord_2 PROGMEM = {H_TOP5 + H_TOP6 + H_BOT5 + H_BOT6, ALWAYS_ON, &state_2, NULL, 0, 0, command};
-uint8_t state_3 = IDLE;
-const struct Chord chord_3 PROGMEM = {H_TOP1 + H_TOP2 + H_TOP9 + H_TOP0 + H_BOT1 + H_BOT2 + H_BOT9 + H_BOT0, ALWAYS_ON, &state_3, NULL, 0, 0, clear};
-uint8_t state_4 = IDLE;
-uint8_t counter_4 = 0;
-const struct Chord chord_4 PROGMEM = {H_TOP1, QWERTY, &state_4, &counter_4, KC_Q, 0, autoshift_dance};
-uint8_t state_5 = IDLE;
-uint8_t counter_5 = 0;
-const struct Chord chord_5 PROGMEM = {H_TOP2, QWERTY, &state_5, &counter_5, KC_W, 0, autoshift_dance};
-uint8_t state_6 = IDLE;
-uint8_t counter_6 = 0;
-const struct Chord chord_6 PROGMEM = {H_TOP3, QWERTY, &state_6, &counter_6, KC_E, 0, autoshift_dance};
-uint8_t state_7 = IDLE;
-uint8_t counter_7 = 0;
-const struct Chord chord_7 PROGMEM = {H_TOP4, QWERTY, &state_7, &counter_7, KC_R, 0, autoshift_dance};
-uint8_t state_8 = IDLE;
-uint8_t counter_8 = 0;
-const struct Chord chord_8 PROGMEM = {H_TOP5, QWERTY, &state_8, &counter_8, KC_T, 0, autoshift_dance};
-uint8_t state_9 = IDLE;
-uint8_t counter_9 = 0;
-const struct Chord chord_9 PROGMEM = {H_TOP6, QWERTY, &state_9, &counter_9, KC_Y, 0, autoshift_dance};
-uint8_t state_10 = IDLE;
-uint8_t counter_10 = 0;
-const struct Chord chord_10 PROGMEM = {H_TOP7, QWERTY, &state_10, &counter_10, KC_U, 0, autoshift_dance};
-uint8_t state_11 = IDLE;
-uint8_t counter_11 = 0;
-const struct Chord chord_11 PROGMEM = {H_TOP8, QWERTY, &state_11, &counter_11, KC_I, 0, autoshift_dance};
-uint8_t state_12 = IDLE;
-uint8_t counter_12 = 0;
-const struct Chord chord_12 PROGMEM = {H_TOP9, QWERTY, &state_12, &counter_12, KC_O, 0, autoshift_dance};
-uint8_t state_13 = IDLE;
-uint8_t counter_13 = 0;
-const struct Chord chord_13 PROGMEM = {H_TOP0, QWERTY, &state_13, &counter_13, KC_P, 0, autoshift_dance};
-uint8_t state_14 = IDLE;
-uint8_t counter_14 = 0;
-const struct Chord chord_14 PROGMEM = {H_TOP1 + H_BOT1, QWERTY, &state_14, &counter_14, KC_A, 0, autoshift_dance};
-uint8_t state_15 = IDLE;
-uint8_t counter_15 = 0;
-const struct Chord chord_15 PROGMEM = {H_TOP2 + H_BOT2, QWERTY, &state_15, &counter_15, KC_S, 0, autoshift_dance};
-uint8_t state_16 = IDLE;
-uint8_t counter_16 = 0;
-const struct Chord chord_16 PROGMEM = {H_TOP3 + H_BOT3, QWERTY, &state_16, &counter_16, KC_D, 0, autoshift_dance};
-uint8_t state_17 = IDLE;
-uint8_t counter_17 = 0;
-const struct Chord chord_17 PROGMEM = {H_TOP4 + H_BOT4, QWERTY, &state_17, &counter_17, KC_F, 0, autoshift_dance};
-uint8_t state_18 = IDLE;
-uint8_t counter_18 = 0;
-const struct Chord chord_18 PROGMEM = {H_TOP5 + H_BOT5, QWERTY, &state_18, &counter_18, KC_G, 0, autoshift_dance};
-uint8_t state_19 = IDLE;
-uint8_t counter_19 = 0;
-const struct Chord chord_19 PROGMEM = {H_TOP6 + H_BOT6, QWERTY, &state_19, &counter_19, KC_H, 0, autoshift_dance};
-uint8_t state_20 = IDLE;
-uint8_t counter_20 = 0;
-const struct Chord chord_20 PROGMEM = {H_TOP7 + H_BOT7, QWERTY, &state_20, &counter_20, KC_J, 0, autoshift_dance};
-uint8_t state_21 = IDLE;
-uint8_t counter_21 = 0;
-const struct Chord chord_21 PROGMEM = {H_TOP8 + H_BOT8, QWERTY, &state_21, &counter_21, KC_K, 0, autoshift_dance};
-uint8_t state_22 = IDLE;
-uint8_t counter_22 = 0;
-const struct Chord chord_22 PROGMEM = {H_TOP9 + H_BOT9, QWERTY, &state_22, &counter_22, KC_L, 0, autoshift_dance};
-uint8_t state_23 = IDLE;
-uint8_t counter_23 = 0;
-const struct Chord chord_23 PROGMEM = {H_TOP0 + H_BOT0, QWERTY, &state_23, &counter_23, KC_SEMICOLON, 0, autoshift_dance};
-uint8_t state_24 = IDLE;
-uint8_t counter_24 = 0;
-const struct Chord chord_24 PROGMEM = {H_BOT1, QWERTY, &state_24, &counter_24, KC_Z, 0, autoshift_dance};
-uint8_t state_25 = IDLE;
-uint8_t counter_25 = 0;
-const struct Chord chord_25 PROGMEM = {H_BOT2, QWERTY, &state_25, &counter_25, KC_X, 0, autoshift_dance};
-uint8_t state_26 = IDLE;
-uint8_t counter_26 = 0;
-const struct Chord chord_26 PROGMEM = {H_BOT3, QWERTY, &state_26, &counter_26, KC_C, 0, autoshift_dance};
-uint8_t state_27 = IDLE;
-uint8_t counter_27 = 0;
-const struct Chord chord_27 PROGMEM = {H_BOT4, QWERTY, &state_27, &counter_27, KC_V, 0, autoshift_dance};
-uint8_t state_28 = IDLE;
-uint8_t counter_28 = 0;
-const struct Chord chord_28 PROGMEM = {H_BOT5, QWERTY, &state_28, &counter_28, KC_B, 0, autoshift_dance};
-uint8_t state_29 = IDLE;
-uint8_t counter_29 = 0;
-const struct Chord chord_29 PROGMEM = {H_BOT6, QWERTY, &state_29, &counter_29, KC_N, 0, autoshift_dance};
-uint8_t state_30 = IDLE;
-uint8_t counter_30 = 0;
-const struct Chord chord_30 PROGMEM = {H_BOT7, QWERTY, &state_30, &counter_30, KC_M, 0, autoshift_dance};
-uint8_t state_31 = IDLE;
-uint8_t counter_31 = 0;
-const struct Chord chord_31 PROGMEM = {H_BOT8, QWERTY, &state_31, &counter_31, KC_COMMA, 0, autoshift_dance};
-uint8_t state_32 = IDLE;
-uint8_t counter_32 = 0;
-const struct Chord chord_32 PROGMEM = {H_BOT9, QWERTY, &state_32, &counter_32, KC_DOT, 0, autoshift_dance};
-uint8_t state_33 = IDLE;
-uint8_t counter_33 = 0;
-const struct Chord chord_33 PROGMEM = {H_BOT0, QWERTY, &state_33, &counter_33, KC_SLASH, 0, autoshift_dance};
-uint8_t state_34 = IDLE;
-const struct Chord chord_34 PROGMEM = {H_TOP1 + H_TOP2, QWERTY, &state_34, NULL, KC_ESC, 0, single_dance};
-uint8_t state_35 = IDLE;
-const struct Chord chord_35 PROGMEM = {H_TOP2 + H_TOP3, QWERTY, &state_35, NULL, MOV, 0, temp_pseudolayer};
-uint8_t state_36 = IDLE;
-const struct Chord chord_36 PROGMEM = {H_TOP3 + H_TOP4, QWERTY, &state_36, NULL, KC_TAB, 0, single_dance};
-uint8_t state_37 = IDLE;
-const struct Chord chord_37 PROGMEM = {H_TOP5 + H_TOP6, QWERTY, &state_37, NULL, KC_RGUI, 0, one_shot_key};
-uint8_t state_38 = IDLE;
-const struct Chord chord_38 PROGMEM = {H_TOP7 + H_TOP8, QWERTY, &state_38, NULL, KC_INS, 0, single_dance};
-uint8_t state_39 = IDLE;
-const struct Chord chord_39 PROGMEM = {H_TOP8 + H_TOP9, QWERTY, &state_39, NULL, KC_DEL, 0, single_dance};
-uint8_t state_40 = IDLE;
-const struct Chord chord_40 PROGMEM = {H_TOP9 + H_TOP0, QWERTY, &state_40, NULL, KC_BSPC, 0, single_dance};
-uint8_t state_41 = IDLE;
-const struct Chord chord_41 PROGMEM = {H_TOP9 + H_TOP0 + H_BOT9 + H_BOT0, QWERTY, &state_41, NULL, KC_ENTER, 0, single_dance};
-uint8_t state_42 = IDLE;
-const struct Chord chord_42 PROGMEM = {H_BOT1 + H_BOT2, QWERTY, &state_42, NULL, KC_LSFT, 0, one_shot_key};
-uint8_t state_43 = IDLE;
-const struct Chord chord_43 PROGMEM = {H_BOT2 + H_BOT3, QWERTY, &state_43, NULL, KC_LCTL, 0, one_shot_key};
-uint8_t state_44 = IDLE;
-const struct Chord chord_44 PROGMEM = {H_BOT3 + H_BOT4, QWERTY, &state_44, NULL, KC_LALT, 0, one_shot_key};
-uint8_t state_45 = IDLE;
-const struct Chord chord_45 PROGMEM = {H_BOT4 + H_BOT5, QWERTY, &state_45, NULL, NUM, 0, one_shot_layer};
-uint8_t state_46 = IDLE;
-const struct Chord chord_46 PROGMEM = {H_BOT5 + H_BOT6, QWERTY, &state_46, NULL, KC_LGUI, 0, one_shot_key};
-uint8_t state_47 = IDLE;
-const struct Chord chord_47 PROGMEM = {H_BOT6 + H_BOT7, QWERTY, &state_47, NULL, NUM, 0, one_shot_layer};
-uint8_t state_48 = IDLE;
-const struct Chord chord_48 PROGMEM = {H_BOT7 + H_BOT8, QWERTY, &state_48, NULL, KC_RALT, 0, one_shot_key};
-uint8_t state_49 = IDLE;
-const struct Chord chord_49 PROGMEM = {H_BOT8 + H_BOT9, QWERTY, &state_49, NULL, KC_RCTL, 0, one_shot_key};
-uint8_t state_50 = IDLE;
-const struct Chord chord_50 PROGMEM = {H_BOT9 + H_BOT0, QWERTY, &state_50, NULL, KC_RSFT, 0, one_shot_key};
-uint8_t state_51 = IDLE;
-const struct Chord chord_51 PROGMEM = {H_BOT1 + H_BOT0, QWERTY, &state_51, NULL, KC_SPACE, 0, single_dance};
-uint8_t state_52 = IDLE;
-const struct Chord chord_52 PROGMEM = {H_TOP1 + H_TOP2 + H_TOP3 + H_TOP4, QWERTY, &state_52, NULL, MOUSE, 0, temp_pseudolayer};
-uint8_t state_53 = IDLE;
-const struct Chord chord_53 PROGMEM = {H_TOP1 + H_TOP2 + H_TOP3 + H_TOP4, QWERTY, &state_53, NULL, ASETNIOP, 0, perm_pseudolayer};
-uint8_t state_54 = IDLE;
-uint8_t counter_54 = 0;
-const struct Chord chord_54 PROGMEM = {H_TOP1, NUM, &state_54, &counter_54, KC_1, 0, autoshift_dance};
-uint8_t state_55 = IDLE;
-uint8_t counter_55 = 0;
-const struct Chord chord_55 PROGMEM = {H_TOP2, NUM, &state_55, &counter_55, KC_2, 0, autoshift_dance};
-uint8_t state_56 = IDLE;
-uint8_t counter_56 = 0;
-const struct Chord chord_56 PROGMEM = {H_TOP3, NUM, &state_56, &counter_56, KC_3, 0, autoshift_dance};
-uint8_t state_57 = IDLE;
-uint8_t counter_57 = 0;
-const struct Chord chord_57 PROGMEM = {H_TOP4, NUM, &state_57, &counter_57, KC_4, 0, autoshift_dance};
-uint8_t state_58 = IDLE;
-uint8_t counter_58 = 0;
-const struct Chord chord_58 PROGMEM = {H_TOP5, NUM, &state_58, &counter_58, KC_5, 0, autoshift_dance};
-uint8_t state_59 = IDLE;
-uint8_t counter_59 = 0;
-const struct Chord chord_59 PROGMEM = {H_TOP6, NUM, &state_59, &counter_59, KC_6, 0, autoshift_dance};
-uint8_t state_60 = IDLE;
-uint8_t counter_60 = 0;
-const struct Chord chord_60 PROGMEM = {H_TOP7, NUM, &state_60, &counter_60, KC_7, 0, autoshift_dance};
-uint8_t state_61 = IDLE;
-uint8_t counter_61 = 0;
-const struct Chord chord_61 PROGMEM = {H_TOP8, NUM, &state_61, &counter_61, KC_8, 0, autoshift_dance};
-uint8_t state_62 = IDLE;
-uint8_t counter_62 = 0;
-const struct Chord chord_62 PROGMEM = {H_TOP9, NUM, &state_62, &counter_62, KC_9, 0, autoshift_dance};
-uint8_t state_63 = IDLE;
-uint8_t counter_63 = 0;
-const struct Chord chord_63 PROGMEM = {H_TOP0, NUM, &state_63, &counter_63, KC_0, 0, autoshift_dance};
-uint8_t state_64 = IDLE;
-const struct Chord chord_64 PROGMEM = {H_TOP1 + H_BOT1, NUM, &state_64, NULL, KC_F1, 0, single_dance};
-uint8_t state_65 = IDLE;
-const struct Chord chord_65 PROGMEM = {H_TOP2 + H_BOT2, NUM, &state_65, NULL, KC_F2, 0, single_dance};
-uint8_t state_66 = IDLE;
-const struct Chord chord_66 PROGMEM = {H_TOP3 + H_BOT3, NUM, &state_66, NULL, KC_F3, 0, single_dance};
-uint8_t state_67 = IDLE;
-const struct Chord chord_67 PROGMEM = {H_TOP4 + H_BOT4, NUM, &state_67, NULL, KC_F4, 0, single_dance};
-uint8_t state_68 = IDLE;
-const struct Chord chord_68 PROGMEM = {H_TOP5 + H_BOT5, NUM, &state_68, NULL, KC_F5, 0, single_dance};
-uint8_t state_69 = IDLE;
-const struct Chord chord_69 PROGMEM = {H_TOP6 + H_BOT6, NUM, &state_69, NULL, KC_F6, 0, single_dance};
-uint8_t state_70 = IDLE;
-const struct Chord chord_70 PROGMEM = {H_TOP7 + H_BOT7, NUM, &state_70, NULL, KC_F7, 0, single_dance};
-uint8_t state_71 = IDLE;
-const struct Chord chord_71 PROGMEM = {H_TOP8 + H_BOT8, NUM, &state_71, NULL, KC_F8, 0, single_dance};
-uint8_t state_72 = IDLE;
-const struct Chord chord_72 PROGMEM = {H_TOP9 + H_BOT9, NUM, &state_72, NULL, KC_F9, 0, single_dance};
-uint8_t state_73 = IDLE;
-const struct Chord chord_73 PROGMEM = {H_TOP0 + H_BOT0, NUM, &state_73, NULL, KC_F10, 0, single_dance};
-uint8_t state_74 = IDLE;
-uint8_t counter_74 = 0;
-const struct Chord chord_74 PROGMEM = {H_BOT1, NUM, &state_74, &counter_74, KC_GRAVE, 0, autoshift_dance};
-uint8_t state_75 = IDLE;
-uint8_t counter_75 = 0;
-const struct Chord chord_75 PROGMEM = {H_BOT2, NUM, &state_75, &counter_75, KC_MINUS, 0, autoshift_dance};
-uint8_t state_76 = IDLE;
-uint8_t counter_76 = 0;
-const struct Chord chord_76 PROGMEM = {H_BOT3, NUM, &state_76, &counter_76, KC_EQUAL, 0, autoshift_dance};
-uint8_t state_77 = IDLE;
-uint8_t counter_77 = 0;
-const struct Chord chord_77 PROGMEM = {H_BOT4, NUM, &state_77, &counter_77, KC_LEFT_BRACKET, 0, autoshift_dance};
-uint8_t state_78 = IDLE;
-uint8_t counter_78 = 0;
-const struct Chord chord_78 PROGMEM = {H_BOT5, NUM, &state_78, &counter_78, KC_RIGHT_BRACKET, 0, autoshift_dance};
-uint8_t state_79 = IDLE;
-uint8_t counter_79 = 0;
-const struct Chord chord_79 PROGMEM = {H_BOT6, NUM, &state_79, &counter_79, KC_BACKSLASH, 0, autoshift_dance};
-uint8_t state_80 = IDLE;
-uint8_t counter_80 = 0;
-const struct Chord chord_80 PROGMEM = {H_BOT7, NUM, &state_80, &counter_80, KC_QUOTE, 0, autoshift_dance};
-uint8_t state_81 = IDLE;
-const struct Chord chord_81 PROGMEM = {H_BOT9, NUM, &state_81, NULL, KC_F11, 0, single_dance};
-uint8_t state_82 = IDLE;
-const struct Chord chord_82 PROGMEM = {H_BOT0, NUM, &state_82, NULL, KC_F12, 0, single_dance};
-uint8_t state_83 = IDLE;
-const struct Chord chord_83 PROGMEM = {H_TOP1 + H_TOP2, NUM, &state_83, NULL, KC_ESC, 0, single_dance};
-uint8_t state_84 = IDLE;
-const struct Chord chord_84 PROGMEM = {H_TOP3 + H_TOP4, NUM, &state_84, NULL, KC_TAB, 0, single_dance};
-uint8_t state_85 = IDLE;
-const struct Chord chord_85 PROGMEM = {H_TOP5 + H_TOP6, NUM, &state_85, NULL, KC_RGUI, 0, one_shot_key};
-uint8_t state_86 = IDLE;
-const struct Chord chord_86 PROGMEM = {H_TOP7 + H_TOP8, NUM, &state_86, NULL, KC_INS, 0, single_dance};
-uint8_t state_87 = IDLE;
-const struct Chord chord_87 PROGMEM = {H_TOP8 + H_TOP9, NUM, &state_87, NULL, KC_DEL, 0, single_dance};
-uint8_t state_88 = IDLE;
-const struct Chord chord_88 PROGMEM = {H_TOP9 + H_TOP0, NUM, &state_88, NULL, KC_BSPC, 0, single_dance};
-uint8_t state_89 = IDLE;
-const struct Chord chord_89 PROGMEM = {H_TOP9 + H_TOP0 + H_BOT9 + H_BOT0, NUM, &state_89, NULL, KC_ENTER, 0, single_dance};
-uint8_t state_90 = IDLE;
-const struct Chord chord_90 PROGMEM = {H_BOT1 + H_BOT2, NUM, &state_90, NULL, KC_LSFT, 0, one_shot_key};
-uint8_t state_91 = IDLE;
-const struct Chord chord_91 PROGMEM = {H_BOT2 + H_BOT3, NUM, &state_91, NULL, KC_LCTL, 0, one_shot_key};
-uint8_t state_92 = IDLE;
-const struct Chord chord_92 PROGMEM = {H_BOT3 + H_BOT4, NUM, &state_92, NULL, KC_LALT, 0, one_shot_key};
-uint8_t state_93 = IDLE;
-const struct Chord chord_93 PROGMEM = {H_BOT5 + H_BOT6, NUM, &state_93, NULL, KC_LGUI, 0, one_shot_key};
-uint8_t state_94 = IDLE;
-const struct Chord chord_94 PROGMEM = {H_BOT7 + H_BOT8, NUM, &state_94, NULL, KC_RALT, 0, one_shot_key};
-uint8_t state_95 = IDLE;
-const struct Chord chord_95 PROGMEM = {H_BOT8 + H_BOT9, NUM, &state_95, NULL, KC_RCTL, 0, one_shot_key};
-uint8_t state_96 = IDLE;
-const struct Chord chord_96 PROGMEM = {H_BOT9 + H_BOT0, NUM, &state_96, NULL, KC_RSFT, 0, one_shot_key};
-uint8_t state_97 = IDLE;
-const struct Chord chord_97 PROGMEM = {H_BOT1 + H_BOT0, NUM, &state_97, NULL, KC_SPACE, 0, single_dance};
-uint8_t state_98 = IDLE;
-const struct Chord chord_98 PROGMEM = {H_TOP7, MOV, &state_98, NULL, KC_HOME, 0, single_dance};
-uint8_t state_99 = IDLE;
-const struct Chord chord_99 PROGMEM = {H_TOP8, MOV, &state_99, NULL, KC_UP, 0, single_dance};
-uint8_t state_100 = IDLE;
-const struct Chord chord_100 PROGMEM = {H_TOP9, MOV, &state_100, NULL, KC_END, 0, single_dance};
-uint8_t state_101 = IDLE;
-const struct Chord chord_101 PROGMEM = {H_TOP0, MOV, &state_101, NULL, KC_PGUP, 0, single_dance};
-uint8_t state_102 = IDLE;
-const struct Chord chord_102 PROGMEM = {H_BOT3, MOV, &state_102, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_103 = IDLE;
-const struct Chord chord_103 PROGMEM = {H_BOT4, MOV, &state_103, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_104 = IDLE;
-const struct Chord chord_104 PROGMEM = {H_BOT5, MOV, &state_104, NULL, KC_LALT, 0, single_dance};
-uint8_t state_105 = IDLE;
-const struct Chord chord_105 PROGMEM = {H_BOT6, MOV, &state_105, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_106 = IDLE;
-const struct Chord chord_106 PROGMEM = {H_BOT7, MOV, &state_106, NULL, KC_LEFT, 0, single_dance};
-uint8_t state_107 = IDLE;
-const struct Chord chord_107 PROGMEM = {H_BOT8, MOV, &state_107, NULL, KC_DOWN, 0, single_dance};
-uint8_t state_108 = IDLE;
-const struct Chord chord_108 PROGMEM = {H_BOT9, MOV, &state_108, NULL, KC_RIGHT, 0, single_dance};
-uint8_t state_109 = IDLE;
-const struct Chord chord_109 PROGMEM = {H_BOT0, MOV, &state_109, NULL, KC_PGDN, 0, single_dance};
-uint8_t state_110 = IDLE;
-const struct Chord chord_110 PROGMEM = {H_TOP7, MOUSE, &state_110, NULL, KC_BTN1, 0, single_dance};
-uint8_t state_111 = IDLE;
-const struct Chord chord_111 PROGMEM = {H_TOP8, MOUSE, &state_111, NULL, KC_MS_U, 0, single_dance};
-uint8_t state_112 = IDLE;
-const struct Chord chord_112 PROGMEM = {H_TOP9, MOUSE, &state_112, NULL, KC_BTN2, 0, single_dance};
-uint8_t state_113 = IDLE;
-const struct Chord chord_113 PROGMEM = {H_TOP0, MOUSE, &state_113, NULL, KC_WH_U, 0, single_dance};
-uint8_t state_114 = IDLE;
-const struct Chord chord_114 PROGMEM = {H_BOT3, MOUSE, &state_114, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_115 = IDLE;
-const struct Chord chord_115 PROGMEM = {H_BOT4, MOUSE, &state_115, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_116 = IDLE;
-const struct Chord chord_116 PROGMEM = {H_BOT5, MOUSE, &state_116, NULL, KC_LALT, 0, single_dance};
-uint8_t state_117 = IDLE;
-const struct Chord chord_117 PROGMEM = {H_BOT6, MOUSE, &state_117, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_118 = IDLE;
-const struct Chord chord_118 PROGMEM = {H_BOT7, MOUSE, &state_118, NULL, KC_MS_L, 0, single_dance};
-uint8_t state_119 = IDLE;
-const struct Chord chord_119 PROGMEM = {H_BOT8, MOUSE, &state_119, NULL, KC_MS_D, 0, single_dance};
-uint8_t state_120 = IDLE;
-const struct Chord chord_120 PROGMEM = {H_BOT9, MOUSE, &state_120, NULL, KC_MS_R, 0, single_dance};
-uint8_t state_121 = IDLE;
-const struct Chord chord_121 PROGMEM = {H_BOT0, MOUSE, &state_121, NULL, KC_WH_D, 0, single_dance};
-uint8_t state_122 = IDLE;
-const struct Chord chord_122 PROGMEM = {H_TOP1, ASETNIOP, &state_122, NULL, KC_A, 0, single_dance};
-uint8_t state_123 = IDLE;
-const struct Chord chord_123 PROGMEM = {H_TOP2, ASETNIOP, &state_123, NULL, KC_S, 0, single_dance};
-uint8_t state_124 = IDLE;
-const struct Chord chord_124 PROGMEM = {H_TOP3, ASETNIOP, &state_124, NULL, KC_E, 0, single_dance};
-uint8_t state_125 = IDLE;
-const struct Chord chord_125 PROGMEM = {H_TOP4, ASETNIOP, &state_125, NULL, KC_T, 0, single_dance};
-uint8_t state_126 = IDLE;
-const struct Chord chord_126 PROGMEM = {H_TOP7, ASETNIOP, &state_126, NULL, KC_N, 0, single_dance};
-uint8_t state_127 = IDLE;
-const struct Chord chord_127 PROGMEM = {H_TOP8, ASETNIOP, &state_127, NULL, KC_I, 0, single_dance};
-uint8_t state_128 = IDLE;
-const struct Chord chord_128 PROGMEM = {H_TOP9, ASETNIOP, &state_128, NULL, KC_O, 0, single_dance};
-uint8_t state_129 = IDLE;
-const struct Chord chord_129 PROGMEM = {H_TOP0, ASETNIOP, &state_129, NULL, KC_P, 0, single_dance};
-uint8_t state_130 = IDLE;
-const struct Chord chord_130 PROGMEM = {H_TOP1 + H_TOP2, ASETNIOP, &state_130, NULL, KC_W, 0, single_dance};
-uint8_t state_131 = IDLE;
-const struct Chord chord_131 PROGMEM = {H_TOP2 + H_TOP3, ASETNIOP, &state_131, NULL, KC_D, 0, single_dance};
-uint8_t state_132 = IDLE;
-const struct Chord chord_132 PROGMEM = {H_TOP3 + H_TOP4, ASETNIOP, &state_132, NULL, KC_R, 0, single_dance};
-uint8_t state_133 = IDLE;
-const struct Chord chord_133 PROGMEM = {H_TOP4 + H_TOP7, ASETNIOP, &state_133, NULL, KC_B, 0, single_dance};
-uint8_t state_134 = IDLE;
-const struct Chord chord_134 PROGMEM = {H_TOP7 + H_TOP8, ASETNIOP, &state_134, NULL, KC_H, 0, single_dance};
-uint8_t state_135 = IDLE;
-const struct Chord chord_135 PROGMEM = {H_TOP8 + H_TOP9, ASETNIOP, &state_135, NULL, KC_L, 0, single_dance};
-uint8_t state_136 = IDLE;
-const struct Chord chord_136 PROGMEM = {H_TOP9 + H_TOP0, ASETNIOP, &state_136, NULL, KC_SEMICOLON, 0, single_dance};
-uint8_t state_137 = IDLE;
-const struct Chord chord_137 PROGMEM = {H_TOP1 + H_TOP3, ASETNIOP, &state_137, NULL, KC_X, 0, single_dance};
-uint8_t state_138 = IDLE;
-const struct Chord chord_138 PROGMEM = {H_TOP2 + H_TOP4, ASETNIOP, &state_138, NULL, KC_C, 0, single_dance};
-uint8_t state_139 = IDLE;
-const struct Chord chord_139 PROGMEM = {H_TOP3 + H_TOP7, ASETNIOP, &state_139, NULL, KC_Y, 0, single_dance};
-uint8_t state_140 = IDLE;
-const struct Chord chord_140 PROGMEM = {H_TOP4 + H_TOP8, ASETNIOP, &state_140, NULL, KC_V, 0, single_dance};
-uint8_t state_141 = IDLE;
-const struct Chord chord_141 PROGMEM = {H_TOP7 + H_TOP9, ASETNIOP, &state_141, NULL, KC_U, 0, single_dance};
-uint8_t state_142 = IDLE;
-const struct Chord chord_142 PROGMEM = {H_TOP1 + H_TOP4, ASETNIOP, &state_142, NULL, KC_F, 0, single_dance};
-uint8_t state_143 = IDLE;
-const struct Chord chord_143 PROGMEM = {H_TOP2 + H_TOP7, ASETNIOP, &state_143, NULL, KC_J, 0, single_dance};
-uint8_t state_144 = IDLE;
-const struct Chord chord_144 PROGMEM = {H_TOP3 + H_TOP8, ASETNIOP, &state_144, NULL, KC_COMMA, 0, single_dance};
-uint8_t state_145 = IDLE;
-const struct Chord chord_145 PROGMEM = {H_TOP4 + H_TOP9, ASETNIOP, &state_145, NULL, KC_G, 0, single_dance};
-uint8_t state_146 = IDLE;
-const struct Chord chord_146 PROGMEM = {H_TOP7 + H_TOP0, ASETNIOP, &state_146, NULL, KC_M, 0, single_dance};
-uint8_t state_147 = IDLE;
-const struct Chord chord_147 PROGMEM = {H_TOP1 + H_TOP7, ASETNIOP, &state_147, NULL, KC_Q, 0, single_dance};
-uint8_t state_148 = IDLE;
-const struct Chord chord_148 PROGMEM = {H_TOP2 + H_TOP8, ASETNIOP, &state_148, NULL, KC_K, 0, single_dance};
-uint8_t state_149 = IDLE;
-const struct Chord chord_149 PROGMEM = {H_TOP3 + H_TOP9, ASETNIOP, &state_149, NULL, KC_MINUS, 0, single_dance};
-uint8_t state_150 = IDLE;
-const struct Chord chord_150 PROGMEM = {H_TOP4 + H_TOP0, ASETNIOP, &state_150, NULL, KC_BSPC, 0, single_dance};
-uint8_t state_151 = IDLE;
-const struct Chord chord_151 PROGMEM = {H_TOP1 + H_TOP8, ASETNIOP, &state_151, NULL, KC_Z, 0, single_dance};
-uint8_t state_152 = IDLE;
-const struct Chord chord_152 PROGMEM = {H_TOP2 + H_TOP9, ASETNIOP, &state_152, NULL, KC_DOT, 0, single_dance};
-uint8_t state_153 = IDLE;
-const struct Chord chord_153 PROGMEM = {H_TOP3 + H_TOP0, ASETNIOP, &state_153, NULL, KC_QUOTE, 0, single_dance};
-uint8_t state_154 = IDLE;
-const struct Chord chord_154 PROGMEM = {H_TOP1 + H_TOP9, ASETNIOP, &state_154, NULL, KC_LEFT_BRACKET, 0, single_dance};
-uint8_t state_155 = IDLE;
-const struct Chord chord_155 PROGMEM = {H_TOP2 + H_TOP0, ASETNIOP, &state_155, NULL, KC_RIGHT_BRACKET, 0, single_dance};
-uint8_t state_156 = IDLE;
-const struct Chord chord_156 PROGMEM = {H_TOP1 + H_TOP0, ASETNIOP, &state_156, NULL, KC_SLASH, 0, single_dance};
-uint8_t state_157 = IDLE;
-const struct Chord chord_157 PROGMEM = {H_TOP5, ASETNIOP, &state_157, NULL, KC_ESC, 0, single_dance};
-uint8_t state_158 = IDLE;
-const struct Chord chord_158 PROGMEM = {H_TOP6, ASETNIOP, &state_158, NULL, KC_DEL, 0, single_dance};
-uint8_t state_159 = IDLE;
-const struct Chord chord_159 PROGMEM = {H_BOT4, ASETNIOP, &state_159, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_160 = IDLE;
-const struct Chord chord_160 PROGMEM = {H_BOT5, ASETNIOP, &state_160, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_161 = IDLE;
-const struct Chord chord_161 PROGMEM = {H_BOT6, ASETNIOP, &state_161, NULL, KC_LALT, 0, single_dance};
-uint8_t state_162 = IDLE;
-uint8_t counter_162 = 0;
-const struct Chord chord_162 PROGMEM = {H_BOT7, ASETNIOP, &state_162, &counter_162, KC_SPACE, ASETNIOP_123, key_layer_dance};
-uint8_t state_163 = IDLE;
-const struct Chord chord_163 PROGMEM = {H_TOP5 + H_TOP6, ASETNIOP, &state_163, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_164 = IDLE;
-const struct Chord chord_164 PROGMEM = {H_TOP1 + H_TOP2 + H_TOP3 + H_TOP4, ASETNIOP, &state_164, NULL, QWERTY, 0, perm_pseudolayer};
-uint8_t state_165 = IDLE;
-const struct Chord chord_165 PROGMEM = {H_BOT4 + H_BOT7, ASETNIOP, &state_165, NULL, ASETNIOP_FN, 0, temp_pseudolayer};
-uint8_t state_166 = IDLE;
-const struct Chord chord_166 PROGMEM = {H_TOP1, ASETNIOP_123, &state_166, NULL, KC_1, 0, single_dance};
-uint8_t state_167 = IDLE;
-const struct Chord chord_167 PROGMEM = {H_TOP2, ASETNIOP_123, &state_167, NULL, KC_2, 0, single_dance};
-uint8_t state_168 = IDLE;
-const struct Chord chord_168 PROGMEM = {H_TOP3, ASETNIOP_123, &state_168, NULL, KC_3, 0, single_dance};
-uint8_t state_169 = IDLE;
-const struct Chord chord_169 PROGMEM = {H_TOP4, ASETNIOP_123, &state_169, NULL, KC_4, 0, single_dance};
-uint8_t state_170 = IDLE;
-const struct Chord chord_170 PROGMEM = {H_TOP7, ASETNIOP_123, &state_170, NULL, KC_7, 0, single_dance};
-uint8_t state_171 = IDLE;
-const struct Chord chord_171 PROGMEM = {H_TOP8, ASETNIOP_123, &state_171, NULL, KC_8, 0, single_dance};
-uint8_t state_172 = IDLE;
-const struct Chord chord_172 PROGMEM = {H_TOP9, ASETNIOP_123, &state_172, NULL, KC_9, 0, single_dance};
-uint8_t state_173 = IDLE;
-const struct Chord chord_173 PROGMEM = {H_TOP0, ASETNIOP_123, &state_173, NULL, KC_0, 0, single_dance};
-uint8_t state_174 = IDLE;
-const struct Chord chord_174 PROGMEM = {H_TOP3 + H_TOP4, ASETNIOP_123, &state_174, NULL, KC_5, 0, single_dance};
-uint8_t state_175 = IDLE;
-const struct Chord chord_175 PROGMEM = {H_TOP4 + H_TOP7, ASETNIOP_123, &state_175, NULL, KC_EQUAL, 0, single_dance};
-uint8_t state_176 = IDLE;
-const struct Chord chord_176 PROGMEM = {H_TOP7 + H_TOP8, ASETNIOP_123, &state_176, NULL, KC_6, 0, single_dance};
-uint8_t state_177 = IDLE;
-const struct Chord chord_177 PROGMEM = {H_TOP8 + H_TOP9, ASETNIOP_123, &state_177, NULL, KC_BACKSLASH, 0, single_dance};
-uint8_t state_178 = IDLE;
-const struct Chord chord_178 PROGMEM = {H_TOP9 + H_TOP0, ASETNIOP_123, &state_178, NULL, KC_SEMICOLON, 0, single_dance};
-uint8_t state_179 = IDLE;
-const struct Chord chord_179 PROGMEM = {H_TOP4 + H_TOP0, ASETNIOP_123, &state_179, NULL, KC_BSPC, 0, single_dance};
-uint8_t state_180 = IDLE;
-const struct Chord chord_180 PROGMEM = {H_TOP5, ASETNIOP_123, &state_180, NULL, KC_ESC, 0, single_dance};
-uint8_t state_181 = IDLE;
-const struct Chord chord_181 PROGMEM = {H_TOP6, ASETNIOP_123, &state_181, NULL, KC_DEL, 0, single_dance};
-uint8_t state_182 = IDLE;
-const struct Chord chord_182 PROGMEM = {H_BOT4, ASETNIOP_123, &state_182, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_183 = IDLE;
-const struct Chord chord_183 PROGMEM = {H_BOT5, ASETNIOP_123, &state_183, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_184 = IDLE;
-const struct Chord chord_184 PROGMEM = {H_BOT6, ASETNIOP_123, &state_184, NULL, KC_LALT, 0, single_dance};
-uint8_t state_185 = IDLE;
-const struct Chord chord_185 PROGMEM = {H_TOP5 + H_TOP6, ASETNIOP_123, &state_185, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_186 = IDLE;
-const struct Chord chord_186 PROGMEM = {H_TOP1, ASETNIOP_FN, &state_186, NULL, KC_HOME, 0, single_dance};
-uint8_t state_187 = IDLE;
-const struct Chord chord_187 PROGMEM = {H_TOP2, ASETNIOP_FN, &state_187, NULL, KC_PGDN, 0, single_dance};
-uint8_t state_188 = IDLE;
-const struct Chord chord_188 PROGMEM = {H_TOP3, ASETNIOP_FN, &state_188, NULL, KC_PGUP, 0, single_dance};
-uint8_t state_189 = IDLE;
-const struct Chord chord_189 PROGMEM = {H_TOP4, ASETNIOP_FN, &state_189, NULL, KC_END, 0, single_dance};
-uint8_t state_190 = IDLE;
-const struct Chord chord_190 PROGMEM = {H_TOP7, ASETNIOP_FN, &state_190, NULL, KC_LEFT, 0, single_dance};
-uint8_t state_191 = IDLE;
-const struct Chord chord_191 PROGMEM = {H_TOP8, ASETNIOP_FN, &state_191, NULL, KC_DOWN, 0, single_dance};
-uint8_t state_192 = IDLE;
-const struct Chord chord_192 PROGMEM = {H_TOP9, ASETNIOP_FN, &state_192, NULL, KC_UP, 0, single_dance};
-uint8_t state_193 = IDLE;
-const struct Chord chord_193 PROGMEM = {H_TOP0, ASETNIOP_FN, &state_193, NULL, KC_RIGHT, 0, single_dance};
-uint8_t state_194 = IDLE;
-const struct Chord chord_194 PROGMEM = {H_TOP1 + H_TOP2, ASETNIOP_FN, &state_194, NULL, KC_F1, 0, single_dance};
-uint8_t state_195 = IDLE;
-const struct Chord chord_195 PROGMEM = {H_TOP2 + H_TOP3, ASETNIOP_FN, &state_195, NULL, KC_F2, 0, single_dance};
-uint8_t state_196 = IDLE;
-const struct Chord chord_196 PROGMEM = {H_TOP3 + H_TOP4, ASETNIOP_FN, &state_196, NULL, KC_F3, 0, single_dance};
-uint8_t state_197 = IDLE;
-const struct Chord chord_197 PROGMEM = {H_TOP4 + H_TOP7, ASETNIOP_FN, &state_197, NULL, KC_F4, 0, single_dance};
-uint8_t state_198 = IDLE;
-const struct Chord chord_198 PROGMEM = {H_TOP7 + H_TOP8, ASETNIOP_FN, &state_198, NULL, KC_F5, 0, single_dance};
-uint8_t state_199 = IDLE;
-const struct Chord chord_199 PROGMEM = {H_TOP8 + H_TOP9, ASETNIOP_FN, &state_199, NULL, KC_F6, 0, single_dance};
-uint8_t state_200 = IDLE;
-const struct Chord chord_200 PROGMEM = {H_TOP9 + H_TOP0, ASETNIOP_FN, &state_200, NULL, KC_F7, 0, single_dance};
-uint8_t state_201 = IDLE;
-const struct Chord chord_201 PROGMEM = {H_TOP1 + H_TOP3, ASETNIOP_FN, &state_201, NULL, KC_F10, 0, single_dance};
-uint8_t state_202 = IDLE;
-const struct Chord chord_202 PROGMEM = {H_TOP8 + H_TOP0, ASETNIOP_FN, &state_202, NULL, KC_F8, 0, single_dance};
-uint8_t state_203 = IDLE;
-const struct Chord chord_203 PROGMEM = {H_TOP1 + H_TOP4, ASETNIOP_FN, &state_203, NULL, KC_F11, 0, single_dance};
-uint8_t state_204 = IDLE;
-const struct Chord chord_204 PROGMEM = {H_TOP7 + H_TOP0, ASETNIOP_FN, &state_204, NULL, KC_F9, 0, single_dance};
-uint8_t state_205 = IDLE;
-const struct Chord chord_205 PROGMEM = {H_TOP1 + H_TOP7, ASETNIOP_FN, &state_205, NULL, KC_F12, 0, single_dance};
-uint8_t state_206 = IDLE;
-const struct Chord chord_206 PROGMEM = {H_TOP4 + H_TOP0, ASETNIOP_FN, &state_206, NULL, KC_BSPC, 0, single_dance};
-uint8_t state_207 = IDLE;
-const struct Chord chord_207 PROGMEM = {H_TOP5, ASETNIOP_FN, &state_207, NULL, KC_ESC, 0, single_dance};
-uint8_t state_208 = IDLE;
-const struct Chord chord_208 PROGMEM = {H_TOP6, ASETNIOP_FN, &state_208, NULL, KC_DEL, 0, single_dance};
-uint8_t state_209 = IDLE;
-const struct Chord chord_209 PROGMEM = {H_BOT4, ASETNIOP_FN, &state_209, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_210 = IDLE;
-const struct Chord chord_210 PROGMEM = {H_BOT5, ASETNIOP_FN, &state_210, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_211 = IDLE;
-const struct Chord chord_211 PROGMEM = {H_BOT6, ASETNIOP_FN, &state_211, NULL, KC_LALT, 0, single_dance};
-uint8_t state_212 = IDLE;
-const struct Chord chord_212 PROGMEM = {H_TOP5 + H_TOP6, ASETNIOP_FN, &state_212, NULL, KC_LGUI, 0, single_dance};
-
-const struct Chord* const list_of_chords[] PROGMEM = {
- &chord_0, &chord_1, &chord_2, &chord_3, &chord_4, &chord_5, &chord_6, &chord_7, &chord_8, &chord_9, &chord_10, &chord_11, &chord_12, &chord_13, &chord_14, &chord_15, &chord_16, &chord_17, &chord_18, &chord_19, &chord_20, &chord_21, &chord_22, &chord_23, &chord_24, &chord_25, &chord_26, &chord_27, &chord_28, &chord_29, &chord_30, &chord_31, &chord_32, &chord_33, &chord_34, &chord_35, &chord_36, &chord_37, &chord_38, &chord_39, &chord_40, &chord_41, &chord_42, &chord_43, &chord_44, &chord_45, &chord_46, &chord_47, &chord_48, &chord_49, &chord_50, &chord_51, &chord_52, &chord_53, &chord_54, &chord_55, &chord_56, &chord_57, &chord_58, &chord_59, &chord_60, &chord_61, &chord_62, &chord_63, &chord_64, &chord_65, &chord_66, &chord_67, &chord_68, &chord_69, &chord_70, &chord_71, &chord_72, &chord_73, &chord_74, &chord_75, &chord_76, &chord_77, &chord_78, &chord_79, &chord_80, &chord_81, &chord_82, &chord_83, &chord_84, &chord_85, &chord_86, &chord_87, &chord_88, &chord_89, &chord_90, &chord_91, &chord_92, &chord_93, &chord_94, &chord_95, &chord_96, &chord_97, &chord_98, &chord_99, &chord_100, &chord_101, &chord_102, &chord_103, &chord_104, &chord_105, &chord_106, &chord_107, &chord_108, &chord_109, &chord_110, &chord_111, &chord_112, &chord_113, &chord_114, &chord_115, &chord_116, &chord_117, &chord_118, &chord_119, &chord_120, &chord_121, &chord_122, &chord_123, &chord_124, &chord_125, &chord_126, &chord_127, &chord_128, &chord_129, &chord_130, &chord_131, &chord_132, &chord_133, &chord_134, &chord_135, &chord_136, &chord_137, &chord_138, &chord_139, &chord_140, &chord_141, &chord_142, &chord_143, &chord_144, &chord_145, &chord_146, &chord_147, &chord_148, &chord_149, &chord_150, &chord_151, &chord_152, &chord_153, &chord_154, &chord_155, &chord_156, &chord_157, &chord_158, &chord_159, &chord_160, &chord_161, &chord_162, &chord_163, &chord_164, &chord_165, &chord_166, &chord_167, &chord_168, &chord_169, &chord_170, &chord_171, &chord_172, &chord_173, &chord_174, &chord_175, &chord_176, &chord_177, &chord_178, &chord_179, &chord_180, &chord_181, &chord_182, &chord_183, &chord_184, &chord_185, &chord_186, &chord_187, &chord_188, &chord_189, &chord_190, &chord_191, &chord_192, &chord_193, &chord_194, &chord_195, &chord_196, &chord_197, &chord_198, &chord_199, &chord_200, &chord_201, &chord_202, &chord_203, &chord_204, &chord_205, &chord_206, &chord_207, &chord_208, &chord_209, &chord_210, &chord_211, &chord_212
-};
-
-const uint16_t** const leader_triggers PROGMEM = NULL;
-void (*leader_functions[]) (void) = {};
-
-#define NUMBER_OF_CHORDS 213
-#define NUMBER_OF_LEADER_COMBOS 0
-
-bool are_hashed_keycodes_in_sound(HASH_TYPE keycodes_hash, HASH_TYPE sound) {
- return (keycodes_hash & sound) == keycodes_hash;
-}
-
-uint8_t keycode_to_index(uint16_t keycode) {
- return keycode - FIRST_INTERNAL_KEYCODE;
-}
-
-void sound_keycode_array(uint16_t keycode) {
- uint8_t index = keycode_to_index(keycode);
- keycode_index++;
- keycodes_buffer_array[index] = keycode_index;
-}
-
-void silence_keycode_hash_array(HASH_TYPE keycode_hash) {
- for (int i = 0; i < NUMBER_OF_KEYS; i++) {
- bool index_in_hash = ((HASH_TYPE) 1 << i) & keycode_hash;
- if (index_in_hash) {
- uint8_t current_val = keycodes_buffer_array[i];
- keycodes_buffer_array[i] = 0;
- for (int j = 0; j < NUMBER_OF_KEYS; j++) {
- if (keycodes_buffer_array[j] > current_val) {
- keycodes_buffer_array[j]--;
- }
- }
- keycode_index--;
- }
- }
-}
-
-bool are_hashed_keycodes_in_array(HASH_TYPE keycode_hash) {
- for (int i = 0; i < NUMBER_OF_KEYS; i++) {
- bool index_in_hash = ((HASH_TYPE) 1 << i) & keycode_hash;
- bool index_in_array = (bool) keycodes_buffer_array[i];
- if (index_in_hash && !index_in_array) {
- return false;
- }
- }
- return true;
-}
-
-void kill_one_shots(void) {
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (*chord->state == IN_ONE_SHOT) {
- *chord->state = RESTART;
- chord->function(chord);
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- }
- }
-}
-
-void process_finished_dances(void) {
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (*chord->state == ACTIVATED) {
- *chord->state = PRESS_FROM_ACTIVE;
- chord->function(chord);
- if (a_key_went_through) {
- kill_one_shots();
- }
- dance_timer = timer_read();
- } else if (*chord->state == IDLE_IN_DANCE) {
- *chord->state = FINISHED;
- chord->function(chord);
- if (*chord->state == FINISHED) {
- *chord->state = RESTART;
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- }
- } else if (*chord->state == PRESS_FROM_ACTIVE) {
- *chord->state = FINISHED_FROM_ACTIVE;
- chord->function(chord);
- if (a_key_went_through) {
- kill_one_shots();
- }
- dance_timer = timer_read();
- }
- }
-}
-
-uint8_t keycodes_buffer_array_min(uint8_t* first_keycode_index) {
- for (int i = 0; i < NUMBER_OF_KEYS; i++) {
- if (keycodes_buffer_array[i] == 1) {
- if (first_keycode_index != NULL) {
- *first_keycode_index = (uint8_t) i;
- }
- return 1;
- }
- }
- return 0;
-}
-
-void remove_subchords(void) {
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (!(*chord->state == READY || *chord->state == READY_IN_DANCE || *chord->state == READY_LOCKED)) {
- continue;
- }
-
- struct Chord chord_storage_2;
- struct Chord* chord_ptr_2;
- struct Chord* chord_2;
- for (int j = 0; j < NUMBER_OF_CHORDS; j++) {
- if (i == j) {continue;}
-
- chord_ptr_2 = (struct Chord*) pgm_read_word (&list_of_chords[j]);
- memcpy_P(&chord_storage_2, chord_ptr_2, sizeof(struct Chord));
- chord_2 = &chord_storage_2;
-
- if (are_hashed_keycodes_in_sound(chord_2->keycodes_hash, chord->keycodes_hash)) {
- if (*chord_2->state == READY) {
- *chord_2->state = IDLE;
- }
- if (*chord_2->state == READY_IN_DANCE) {
- *chord_2->state = IDLE_IN_DANCE;
- }
- if (*chord_2->state == READY_LOCKED) {
- *chord_2->state = LOCKED;
- }
- }
- }
- }
-}
-
-void process_ready_chords(void) {
- uint8_t first_keycode_index = 0;
- while (keycodes_buffer_array_min(&first_keycode_index)) {
- // find ready chords
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- // if the chord does not contain the first keycode
- bool contains_first_keycode = ((uint32_t) 1 << first_keycode_index) & chord->keycodes_hash;
- if (!contains_first_keycode) {
- continue;
- }
-
- if (!are_hashed_keycodes_in_array(chord->keycodes_hash)){
- continue;
- }
-
- if (*chord->state == LOCKED) {
- *chord->state = READY_LOCKED;
- continue;
- }
-
- if (!(chord->pseudolayer == current_pseudolayer || chord->pseudolayer == ALWAYS_ON)) {
- continue;
- }
-
- if (*chord->state == IDLE) {
- *chord->state = READY;
- continue;
- }
-
- if (*chord->state == IDLE_IN_DANCE) {
- *chord->state = READY_IN_DANCE;
- }
- }
-
- // remove subchords
- remove_subchords();
-
- // execute logic
- // this should be only one chord
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (*chord->state == READY_LOCKED) {
- *chord->state = RESTART;
- chord->function(chord);
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- break;
- }
-
- if (*chord->state == READY || *chord->state == READY_IN_DANCE) {
- if (last_chord && last_chord != chord) {
- process_finished_dances();
- }
-
- bool lock_next_prev_state = lock_next;
-
- *chord->state = ACTIVATED;
- chord->function(chord);
- dance_timer = timer_read();
-
- if (lock_next && lock_next == lock_next_prev_state) {
- lock_next = false;
- *chord->state = PRESS_FROM_ACTIVE;
- chord->function(chord);
- if (*chord->state == PRESS_FROM_ACTIVE) {
- *chord->state = LOCKED;
- }
- if (a_key_went_through) {
- kill_one_shots();
- }
- }
- break;
- }
- }
-
- // silence notes
- silence_keycode_hash_array(chord->keycodes_hash);
- }
-}
-
-void deactivate_active_chords(uint16_t keycode) {
- HASH_TYPE hash = (HASH_TYPE)1 << (keycode - SAFE_RANGE);
- bool broken;
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- broken = are_hashed_keycodes_in_sound(hash, chord->keycodes_hash);
- if (!broken) {
- continue;
- }
-
- switch (*chord->state) {
- case ACTIVATED:
- *chord->state = DEACTIVATED;
- chord->function(chord);
-
- if (*chord->state == DEACTIVATED) {
- dance_timer = timer_read();
- *chord->state = IDLE_IN_DANCE;
- }
- if (*chord->state != IN_ONE_SHOT) {
- kill_one_shots();
- }
- break;
- case PRESS_FROM_ACTIVE:
- case FINISHED_FROM_ACTIVE:
- *chord->state = RESTART;
- chord->function(chord);
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- kill_one_shots();
- break;
- default:
- break;
- }
- }
-
-}
-
-void process_command(void) {
- command_mode = 0;
- for (int i = 0; i < COMMAND_MAX_LENGTH; i++) {
- if (command_buffer[i]) {
- register_code(command_buffer[i]);
- }
- send_keyboard_report();
- }
- wait_ms(TAP_TIMEOUT);
- for (int i = 0; i < COMMAND_MAX_LENGTH; i++) {
- if (command_buffer[i]) {
- unregister_code(command_buffer[i]);
- }
- send_keyboard_report();
- }
- for (int i = 0; i < COMMAND_MAX_LENGTH; i++) {
- command_buffer[i] = 0;
- }
- command_ind = 0;
-}
-
-void process_leader(void) {
- in_leader_mode = false;
- for (int i = 0; i < NUMBER_OF_LEADER_COMBOS; i++) {
- uint16_t trigger[LEADER_MAX_LENGTH];
- memcpy_P(trigger, leader_triggers[i], LEADER_MAX_LENGTH * sizeof(uint16_t));
-
- if (identical(leader_buffer, trigger)) {
- (*leader_functions[i])();
- break;
- }
- }
- for (int i = 0; i < LEADER_MAX_LENGTH; i++) {
- leader_buffer[i] = 0;
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (keycode < FIRST_INTERNAL_KEYCODE || keycode > LAST_INTERNAL_KEYCODE) {
- return true;
- }
-
- if (record->event.pressed) {
- sound_keycode_array(keycode);
- } else {
- process_ready_chords();
- deactivate_active_chords(keycode);
- }
- chord_timer = timer_read();
- leader_timer = timer_read();
-
- return false;
-}
-
-void matrix_scan_user(void) {
- bool chord_timer_expired = timer_elapsed(chord_timer) > CHORD_TIMEOUT;
- if (chord_timer_expired && keycodes_buffer_array_min(NULL)) {
- process_ready_chords();
- }
-
- bool dance_timer_expired = timer_elapsed(dance_timer) > DANCE_TIMEOUT;
- if (dance_timer_expired) { // would love to have && in_dance but not sure how
- process_finished_dances();
- }
-
- bool in_command_mode = command_mode == 2;
- if (in_command_mode) {
- process_command();
- }
-
- bool leader_timer_expired = timer_elapsed(leader_timer) > LEADER_TIMEOUT;
- if (leader_timer_expired && in_leader_mode) {
- process_leader();
- }
-
-}
-
-void clear(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- // kill all chords
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- *chord->state = IDLE;
-
- if (chord->counter) {
- *chord->counter = 0;
- }
- }
-
- // clear keyboard
- clear_keyboard();
- send_keyboard_report();
-
- // switch to default pseudolayer
- current_pseudolayer = DEFAULT_PSEUDOLAYER;
-
- // clear all keyboard states
- lock_next = false;
- autoshift_mode = true;
- command_mode = 0;
- in_leader_mode = false;
- leader_ind = 0;
- dynamic_macro_mode = false;
- a_key_went_through = false;
-
- for (int i = 0; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- dynamic_macro_buffer[i] = 0;
- }
- }
-} \ No newline at end of file
diff --git a/keyboards/gboards/butterstick/keymaps/dennytom/keymap_def.json b/keyboards/gboards/butterstick/keymaps/dennytom/keymap_def.json
deleted file mode 100644
index 16f02ca529..0000000000
--- a/keyboards/gboards/butterstick/keymaps/dennytom/keymap_def.json
+++ /dev/null
@@ -1,309 +0,0 @@
-{
- "keys": [
- "TOP1", "TOP2", "TOP3", "TOP4", "TOP5", "TOP6", "TOP7", "TOP8", "TOP9", "TOP0",
- "BOT1", "BOT2", "BOT3", "BOT4", "BOT5", "BOT6", "BOT7", "BOT8", "BOT9", "BOT0"
- ],
- "parameters": {
- "layout_function_name": "LAYOUT_butter",
- "chord_timeout": 100,
- "dance_timeout": 200,
- "leader_timeout": 750,
- "tap_timeout": 50,
- "command_max_length": 5,
- "leader_max_length": 5,
- "dynamic_macro_max_length": 20,
- "string_max_length": 16,
- "long_press_multiplier": 3,
- "default_pseudolayer": "QWERTY"
- },
- "layers": [
- {
- "type": "auto"
- }
- ],
- "chord_sets": [
- {
- "name": "rows",
- "chords": [
- ["TOP1"], ["TOP2"], ["TOP3"], ["TOP4"], ["TOP5"], ["TOP6"], ["TOP7"], ["TOP8"], ["TOP9"], ["TOP0"],
- ["TOP1", "BOT1"], ["TOP2", "BOT2"], ["TOP3", "BOT3"], ["TOP4", "BOT4"], ["TOP5", "BOT5"], ["TOP6", "BOT6"], ["TOP7", "BOT7"], ["TOP8", "BOT8"], ["TOP9", "BOT9"], ["TOP0", "BOT0"],
- ["BOT1"], ["BOT2"], ["BOT3"], ["BOT4"], ["BOT5"], ["BOT6"], ["BOT7"], ["BOT8"], ["BOT9"], ["BOT0"]
- ]
- },
- {
- "name": "cols",
- "chords": [
- ["TOP1", "TOP2"], ["TOP2", "TOP3"], ["TOP3", "TOP4"], ["TOP4", "TOP5"], ["TOP5", "TOP6"], ["TOP6", "TOP7"], ["TOP7", "TOP8"], ["TOP8", "TOP9"], ["TOP9", "TOP0"],
- ["TOP1", "TOP2", "BOT1", "BOT2"], ["TOP2", "TOP3", "BOT2", "BOT3"], ["TOP3", "TOP4", "BOT3", "BOT4"], ["TOP4", "TOP5", "BOT4", "BOT5"], ["TOP5", "TOP6", "BOT5", "BOT6"], ["TOP6", "TOP7", "BOT6", "BOT7"], ["TOP7", "TOP8", "BOT7", "BOT8"], ["TOP8", "TOP9", "BOT8", "BOT9"], ["TOP9", "TOP0", "BOT9", "BOT0"],
- ["BOT1", "BOT2"], ["BOT2", "BOT3"], ["BOT3", "BOT4"], ["BOT4", "BOT5"], ["BOT5", "BOT6"], ["BOT6", "BOT7"], ["BOT7", "BOT8"], ["BOT8", "BOT9"], ["BOT9", "BOT0"]
- ]
- },
- {
- "name": "asetniop",
- "chords": [
- ["TOP1"], ["TOP2"], ["TOP3"], ["TOP4"], ["TOP7"], ["TOP8"], ["TOP9"], ["TOP0"],
- ["TOP1", "TOP2"], ["TOP2", "TOP3"], ["TOP3", "TOP4"], ["TOP4", "TOP7"], ["TOP7", "TOP8"], ["TOP8", "TOP9"], ["TOP9", "TOP0"],
- ["TOP1", "TOP3"], ["TOP2", "TOP4"], ["TOP3", "TOP7"], ["TOP4", "TOP8"], ["TOP7", "TOP9"], ["TOP8", "TOP0"],
- ["TOP1", "TOP4"], ["TOP2", "TOP7"], ["TOP3", "TOP8"], ["TOP4", "TOP9"], ["TOP7", "TOP0"],
- ["TOP1", "TOP7"], ["TOP2", "TOP8"], ["TOP3", "TOP9"], ["TOP4", "TOP0"],
- ["TOP1", "TOP8"], ["TOP2", "TOP9"], ["TOP3", "TOP0"],
- ["TOP1", "TOP9"], ["TOP2", "TOP0"],
- ["TOP1", "TOP0"]
- ]
- }
- ],
- "pseudolayers": [
- {
- "name": "ALWAYS_ON",
- "chords": [
- {
- "type": "chord_set",
- "set": "cols",
- "keycodes": [
- " ", " ", " ", " ", " ", " ", " ", " ", " ",
- "LOCK", " AT", " ", " ", " CMD", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " "
- ]
- },
- {
- "type": "visual",
- "chord": [
- "X", "X", " ", " ", " ", " ", " ", " ", "X", "X",
- "X", "X", " ", " ", " ", " ", " ", " ", "X", "X"
- ],
- "keycode": "CLEAR_KB"
- }
- ]
- },
- {
- "name": "QWERTY",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- "AS(Q)", "AS(W)", "AS(E)", "AS(R)", "AS(T)", "AS(Y)", "AS(U)", "AS(I)", "AS(O)", "AS(P)",
- "AS(A)", "AS(S)", "AS(D)", "AS(F)", "AS(G)", "AS(H)", "AS(J)", "AS(K)", "AS(L)", "AS(;)",
- "AS(Z)", "AS(X)", "AS(C)", "AS(V)", "AS(B)", "AS(N)", "AS(M)", "AS(,)", "AS(.)", "AS(/)"
- ]
- },
- {
- "type": "chord_set",
- "set": "cols",
- "keycodes": [
- " ESC", "MO(MOV)", " TAB", " ", "O(RGUI)", " ", " INS", " DEL", " BSPC",
- " ", " ", " ", " ", " ", " ", " ", " ", " ENTER",
- "O(LSFT)", "O(LCTL)", "O(LALT)", "O(NUM)", "O(LGUI)", "O(NUM)", "O(RALT)", "O(RCTL)", "O(RSFT)"
- ]
- },
- {
- "type": "simple",
- "chord": ["BOT1", "BOT0"],
- "keycode": "SPACE"
- },
- {
- "type": "visual",
- "chord": [
- "X", "X", "X", "X", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " "
- ],
- "keycode": "MO(MOUSE)"
- },
- {
- "type": "visual",
- "chord": [
- "X", "X", "X", "X", " ", " ", "X", "X", "X", "X",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " "
- ],
- "keycode": "DF(ASETNIOP)"
- }
- ]
- },
- {
- "name": "NUM",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- "AS(1)", "AS(2)", "AS(3)", "AS(4)", "AS(5)", "AS(6)", "AS(7)", "AS(8)", "AS(9)", "AS(0)",
- " F1", " F2", " F3", " F4", " F5", " F6", " F7", " F8", " F9", " F10",
- "AS(`)", "AS(-)", "AS(=)", "AS([)", "AS(])", "AS(\\)", "AS(')", " ", " F11", " F12"
- ]
- },
- {
- "type": "chord_set",
- "set": "cols",
- "keycodes": [
- " ESC", " ", " TAB", " ", "O(RGUI)", " ", " INS", " DEL", " BSPC",
- " ", " ", " ", " ", " ", " ", " ", " ", " ENTER",
- "O(LSFT)", "O(LCTL)", "O(LALT)", " ", "O(LGUI)", " ", "O(RALT)", "O(RCTL)", " O(RSFT)"
- ]
- },
- {
- "type": "simple",
- "chord": ["BOT1", "BOT0"],
- "keycode": "SPACE"
- }
- ]
- },
- {
- "name": "MOV",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ", " ", " HOME", " UP", " END", " PGUP",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " LSFT", " LCTL", " LALT", " LGUI", " LEFT", " DOWN", "RIGHT", " PGDN"
- ]
- }
- ]
- },
- {
- "name": "MOUSE",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ", " ", " BTN1", " MS_U", " BTN2", " WH_U",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " LSFT", " LCTL", " LALT", " LGUI", " MS_L", " MS_D", " MS_R", " WH_D"
- ]
- }
- ]
- },
- {
- "name": "ASETNIOP",
- "chords": [
- {
- "type": "chord_set",
- "set": "asetniop",
- "keycodes": [
- "A", "S", "E", "T", "N", "I", "O", "P",
- "W", "D", "R", "B", "H", "L", ";",
- "X", "C", "Y", "V", "U", "",
- "F", "J", ",", "G", "M",
- "Q", "K", "-", "BSPC",
- "Z", ".", "'",
- "[", "]",
- "/"
- ]
- },
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ESC", " DEL", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", "LSFT", "LCTL", "LALT", "KL(SPACE, ASETNIOP_123)", "", "", ""
- ]
- },
- {
- "type": "chord_set",
- "set": "cols",
- "keycodes": [
- " ", " ", " ", " ", "LGUI", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " "
- ]
- },
- {
- "type": "visual",
- "chord": [
- "X", "X", "X", "X", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " "
- ],
- "keycode": "DF(QWERTY)"
- },
- {
- "type": "visual",
- "chord": [
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", "X", " ", " ", "X", " ", " ", " "
- ],
- "keycode": "MO(ASETNIOP_FN)"
- }
- ]
- },
- {
- "name": "ASETNIOP_123",
- "chords": [
- {
- "type": "chord_set",
- "set": "asetniop",
- "keycodes": [
- "1", "2", "3", "4", "7", "8", "9", "0",
- " ", " ", "5", "=", "6", "\\", ";",
- " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ",
- " ", " ", " ", "BSPC",
- " ", " ", " ",
- " ", " ",
- " "
- ]
- },
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ESC", " DEL", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", "LSFT", "LCTL", "LALT", " ", " ", " ", " "
- ]
- },
- {
- "type": "chord_set",
- "set": "cols",
- "keycodes": [
- " ", " ", " ", " ", "LGUI", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " "
- ]
- }
- ]
- },
- {
- "name": "ASETNIOP_FN",
- "chords": [
- {
- "type": "chord_set",
- "set": "asetniop",
- "keycodes": [
- "HOME", "PGDN", "PGUP", " END", "LEFT", "DOWN", " UP", "RIGHT",
- " F1", " F2", " F3", " F4", " F5", " F6", " F7",
- " F10", " ", " ", " ", " ", " F8",
- " F11", " ", " ", " ", " F9",
- " F12", " ", " ", "BSPC",
- " ", " ", " ",
- " ", " ",
- " "
- ]
- },
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ESC", " DEL", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", "LSFT", "LCTL", "LALT", " ", " ", " ", " "
- ]
- },
- {
- "type": "chord_set",
- "set": "cols",
- "keycodes": [
- " ", " ", " ", " ", "LGUI", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " "
- ]
- }
- ]
- }
- ],
- "leader_sequences": [],
- "extra_code": "",
- "extra_dependencies": []
-} \ No newline at end of file
diff --git a/keyboards/gboards/butterstick/keymaps/dennytom/rules.mk b/keyboards/gboards/butterstick/keymaps/dennytom/rules.mk
deleted file mode 100644
index 1155f72c04..0000000000
--- a/keyboards/gboards/butterstick/keymaps/dennytom/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-# COMMAND_ENABLE = no
-NKRO_ENABLE = yes
-
-TMPVAR := $(SRC)
-SRC = $(filter-out sten.c, $(TMPVAR)) \ No newline at end of file
diff --git a/keyboards/gboards/butterstick/sten.h b/keyboards/gboards/butterstick/sten.h
index 84c54c9e2e..ca6b03f778 100644
--- a/keyboards/gboards/butterstick/sten.h
+++ b/keyboards/gboards/butterstick/sten.h
@@ -8,9 +8,6 @@
#pragma once
#include QMK_KEYBOARD_H
-#include "mousekey.h"
-#include "keymap_steno.h"
-#include "wait.h"
extern size_t keymapsCount; // Total keymaps
extern uint32_t cChord; // Current Chord
diff --git a/keyboards/gboards/ergotaco/rules.mk b/keyboards/gboards/ergotaco/rules.mk
index 2df8900c2d..6fbefbd22d 100644
--- a/keyboards/gboards/ergotaco/rules.mk
+++ b/keyboards/gboards/ergotaco/rules.mk
@@ -7,4 +7,5 @@ COMMAND_ENABLE = yes
# know what you're doing.
#
# No touchy, capiche?
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/gboards/georgi/keymaps/colemak-dh/keymap.c b/keyboards/gboards/georgi/keymaps/colemak-dh/keymap.c
index 9b3365d02f..932d48959c 100644
--- a/keyboards/gboards/georgi/keymaps/colemak-dh/keymap.c
+++ b/keyboards/gboards/georgi/keymaps/colemak-dh/keymap.c
@@ -12,7 +12,6 @@
#include QMK_KEYBOARD_H
#include "sten.h"
-#include "keymap_steno.h"
// Steno Layers
#define FUNCT ( LSD | LK | LP | LH )
diff --git a/keyboards/gboards/georgi/keymaps/default-flipped/keymap.c b/keyboards/gboards/georgi/keymaps/default-flipped/keymap.c
index 2e63fe3c7d..19683179f3 100644
--- a/keyboards/gboards/georgi/keymaps/default-flipped/keymap.c
+++ b/keyboards/gboards/georgi/keymaps/default-flipped/keymap.c
@@ -12,7 +12,6 @@
#include QMK_KEYBOARD_H
#include "sten.h"
-#include "keymap_steno.h"
// Proper Layers
#define FUNCT (LSD | LK | LP | LH)
diff --git a/keyboards/gboards/georgi/keymaps/default/keymap.c b/keyboards/gboards/georgi/keymaps/default/keymap.c
index a9c2d4a47d..955ec0e406 100644
--- a/keyboards/gboards/georgi/keymaps/default/keymap.c
+++ b/keyboards/gboards/georgi/keymaps/default/keymap.c
@@ -12,7 +12,6 @@
#include QMK_KEYBOARD_H
#include "sten.h"
-#include "keymap_steno.h"
// Proper Layers
#define FUNCT (LSD | LK | LP | LH)
diff --git a/keyboards/gboards/georgi/keymaps/dennytom/README.md b/keyboards/gboards/georgi/keymaps/dennytom/README.md
deleted file mode 100644
index 14bc1d2045..0000000000
--- a/keyboards/gboards/georgi/keymaps/dennytom/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# # Dennytom's Georgi Layout
-
-This keymap is using a custom chording engine. Head out to my (DennyTom) user space to find the source files and details.
-
-To make a real keymap from the JSON file, run
-
-```sh
-python3 parser.py keymap_def.json keymap.c
-```
-
-Likely will change with use. I enjoy the modifiers on the "home row". \ No newline at end of file
diff --git a/keyboards/gboards/georgi/keymaps/dennytom/keymap.c b/keyboards/gboards/georgi/keymaps/dennytom/keymap.c
deleted file mode 100644
index 902d2271d7..0000000000
--- a/keyboards/gboards/georgi/keymaps/dennytom/keymap.c
+++ /dev/null
@@ -1,1208 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define H_TOP1 ((HASH_TYPE) 1 << 0)
-#define H_TOP2 ((HASH_TYPE) 1 << 1)
-#define H_TOP3 ((HASH_TYPE) 1 << 2)
-#define H_TOP4 ((HASH_TYPE) 1 << 3)
-#define H_TOP5 ((HASH_TYPE) 1 << 4)
-#define H_TOP6 ((HASH_TYPE) 1 << 5)
-#define H_TOP7 ((HASH_TYPE) 1 << 6)
-#define H_TOP8 ((HASH_TYPE) 1 << 7)
-#define H_TOP9 ((HASH_TYPE) 1 << 8)
-#define H_TOP10 ((HASH_TYPE) 1 << 9)
-#define H_TOP11 ((HASH_TYPE) 1 << 10)
-#define H_TOP12 ((HASH_TYPE) 1 << 11)
-#define H_BOT1 ((HASH_TYPE) 1 << 12)
-#define H_BOT2 ((HASH_TYPE) 1 << 13)
-#define H_BOT3 ((HASH_TYPE) 1 << 14)
-#define H_BOT4 ((HASH_TYPE) 1 << 15)
-#define H_BOT5 ((HASH_TYPE) 1 << 16)
-#define H_BOT6 ((HASH_TYPE) 1 << 17)
-#define H_BOT7 ((HASH_TYPE) 1 << 18)
-#define H_BOT8 ((HASH_TYPE) 1 << 19)
-#define H_BOT9 ((HASH_TYPE) 1 << 20)
-#define H_BOT10 ((HASH_TYPE) 1 << 21)
-#define H_BOT11 ((HASH_TYPE) 1 << 22)
-#define H_BOT12 ((HASH_TYPE) 1 << 23)
-#define H_THU1 ((HASH_TYPE) 1 << 24)
-#define H_THU2 ((HASH_TYPE) 1 << 25)
-#define H_THU3 ((HASH_TYPE) 1 << 26)
-#define H_THU4 ((HASH_TYPE) 1 << 27)
-#define H_THU5 ((HASH_TYPE) 1 << 28)
-#define H_THU6 ((HASH_TYPE) 1 << 29)
-
-enum internal_keycodes {
- TOP1 = SAFE_RANGE,
- TOP2, TOP3, TOP4, TOP5, TOP6, TOP7, TOP8, TOP9, TOP10, TOP11, TOP12, BOT1, BOT2, BOT3, BOT4, BOT5, BOT6, BOT7, BOT8, BOT9, BOT10, BOT11, BOT12, THU1, THU2, THU3, THU4, THU5, THU6,
- FIRST_INTERNAL_KEYCODE = TOP1,
- LAST_INTERNAL_KEYCODE = THU6
-};
-
-enum pseudolayers {
- ALWAYS_ON, QWERTY, NUM, FNC, NAV, MOUSE
-};
-
-#define CHORD_TIMEOUT 100
-#define DANCE_TIMEOUT 200
-#define LEADER_TIMEOUT 750
-#define TAP_TIMEOUT 50
-#define LONG_PRESS_MULTIPLIER 3
-#define DYNAMIC_MACRO_MAX_LENGTH 20
-#define COMMAND_MAX_LENGTH 5
-#define STRING_MAX_LENGTH 16
-#define LEADER_MAX_LENGTH 5
-#define HASH_TYPE uint32_t
-#define NUMBER_OF_KEYS 30
-#define DEFAULT_PSEUDOLAYER QWERTY
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_georgi(TOP1, TOP2, TOP3, TOP4, TOP5, TOP6, TOP7, TOP8, TOP9, TOP10, TOP11, TOP12, BOT1, BOT2, BOT3, BOT4, BOT5, BOT6, BOT7, BOT8, BOT9, BOT10, BOT11, BOT12, THU1, THU2, THU3, THU4, THU5, THU6),
-};
-size_t keymapsCount = 1;
-
-uint8_t keycodes_buffer_array[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-uint8_t command_buffer[] = {
- 0, 0, 0, 0, 0
-};
-
-uint16_t leader_buffer[] = {
- 0, 0, 0, 0, 0
-};
-
-uint8_t dynamic_macro_buffer[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-enum chord_states {
- IDLE,
- READY,
- ACTIVATED,
- DEACTIVATED,
- PRESS_FROM_ACTIVE,
- FINISHED_FROM_ACTIVE,
- IDLE_IN_DANCE,
- READY_IN_DANCE,
- FINISHED,
- LOCKED,
- READY_LOCKED,
- RESTART,
- IN_ONE_SHOT
-};
-
-struct Chord {
- uint32_t keycodes_hash;
- uint8_t pseudolayer;
- uint8_t* state;
- uint8_t* counter;
- uint16_t value1;
- uint8_t value2;
- void (*function) (const struct Chord*);
-};
-
-uint8_t current_pseudolayer = DEFAULT_PSEUDOLAYER;
-bool lock_next = false;
-uint16_t chord_timer = 0;
-uint16_t dance_timer = 0;
-bool autoshift_mode = true;
-uint8_t keycode_index = 0;
-uint8_t command_mode = 0;
-uint8_t command_ind = 0;
-bool in_leader_mode = false;
-uint8_t leader_ind = 0;
-uint16_t leader_timer = 0;
-uint8_t dynamic_macro_mode = false;
-uint8_t dynamic_macro_ind = 0;
-bool a_key_went_through = false;
-struct Chord* last_chord = NULL;
-
-bool handle_US_ANSI_shifted_keys(int16_t keycode, bool in) {
- bool is_US_ANSI_shifted = true;
-
- int16_t regular_keycode = KC_NO;
- switch (keycode) {
- case KC_TILDE:
- regular_keycode = KC_GRAVE;
- break;
- case KC_EXCLAIM:
- regular_keycode = KC_1;
- break;
- case KC_AT:
- regular_keycode = KC_2;
- break;
- case KC_HASH:
- regular_keycode = KC_3;
- break;
- case KC_DOLLAR:
- regular_keycode = KC_4;
- break;
- case KC_PERCENT:
- regular_keycode = KC_5;
- break;
- case KC_CIRCUMFLEX:
- regular_keycode = KC_6;
- break;
- case KC_AMPERSAND:
- regular_keycode = KC_7;
- break;
- case KC_ASTERISK:
- regular_keycode = KC_8;
- break;
- case KC_LEFT_PAREN:
- regular_keycode = KC_9;
- break;
- case KC_RIGHT_PAREN:
- regular_keycode = KC_0;
- break;
- case KC_UNDERSCORE:
- regular_keycode = KC_MINUS;
- break;
- case KC_PLUS:
- regular_keycode = KC_EQUAL;
- break;
- case KC_LEFT_CURLY_BRACE:
- regular_keycode = KC_LEFT_BRACKET;
- break;
- case KC_RIGHT_CURLY_BRACE:
- regular_keycode = KC_RIGHT_BRACKET;
- break;
- case KC_PIPE:
- regular_keycode = KC_BACKSLASH;
- break;
- case KC_COLON:
- regular_keycode = KC_SEMICOLON;
- break;
- case KC_DOUBLE_QUOTE:
- regular_keycode = KC_QUOTE;
- break;
- case KC_LEFT_ANGLE_BRACKET:
- regular_keycode = KC_COMMA;
- break;
- case KC_RIGHT_ANGLE_BRACKET:
- regular_keycode = KC_DOT;
- break;
- case KC_QUESTION:
- regular_keycode = KC_SLASH;
- break;
- default:
- is_US_ANSI_shifted = false;
- }
- if (is_US_ANSI_shifted) {
- if (in) {
- register_code(KC_LSFT);
- register_code(regular_keycode);
- } else {
- unregister_code(regular_keycode);
- unregister_code(KC_LSFT);
- }
- }
- return is_US_ANSI_shifted;
-}
-
-void key_in(int16_t keycode) {
- if (command_mode == 1 && command_ind < COMMAND_MAX_LENGTH) {
- command_buffer[command_ind] = keycode;
- command_ind++;
- a_key_went_through = true;
- } else if (in_leader_mode && leader_ind < LEADER_MAX_LENGTH) {
- leader_buffer[leader_ind] = keycode;
- leader_ind++;
- a_key_went_through = true;
- } else if (dynamic_macro_mode && dynamic_macro_ind < DYNAMIC_MACRO_MAX_LENGTH) {
- dynamic_macro_buffer[dynamic_macro_ind] = keycode;
- dynamic_macro_ind++;
- a_key_went_through = true;
- } else {
- if (!handle_US_ANSI_shifted_keys(keycode, true)) {
- register_code(keycode);
- }
- send_keyboard_report();
- a_key_went_through = true;
- }
-}
-
-void key_out(int16_t keycode) {
- if (command_mode == 0) {
- if (!handle_US_ANSI_shifted_keys(keycode, false)) {
- if (command_mode == 0 && in_leader_mode == false && dynamic_macro_mode == false) {
- unregister_code(keycode);
- }
- }
- send_keyboard_report();
- }
-}
-
-void tap_key(int16_t keycode) {
- key_in(keycode);
- wait_ms(TAP_TIMEOUT);
- key_out(keycode);
-}
-const char * const strings[] PROGMEM = {
-
-};
-void single_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- key_in(self->value1);
- break;
- case DEACTIVATED:
- key_out(self->value1);
- *self->state = IDLE;
- break;
- case RESTART:
- key_out(self->value1);
- break;
- default:
- break;
- }
-}
-
-void key_layer_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- current_pseudolayer = self->value2;
- a_key_went_through = false;
- break;
- case DEACTIVATED:
- case RESTART:
- if (!a_key_went_through) {
- tap_key(self->value1);
- }
- current_pseudolayer = self->pseudolayer;
- *self->state = IDLE; // does not have effect if the state was RESTART
- break;
- default:
- break;
- }
-}
-
-void key_mod_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- key_in(self->value2);
- a_key_went_through = false;
- break;
- case DEACTIVATED:
- case RESTART:
- key_out(self->value2);
- if (!a_key_went_through) {
- tap_key(self->value1);
- }
- *self->state = IDLE; // does not have effect if the state was RESTART
- break;
- default:
- break;
- }
-}
-
-void key_key_dance(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- break;
- case DEACTIVATED:
- tap_key(self->value1);
- *self->state = IDLE;
- break;
- case FINISHED:
- case PRESS_FROM_ACTIVE:
- key_in(self->value2);
- break;
- case RESTART:
- key_out(self->value2);
- break;
- default:
- break;
- }
-}
-
-void autoshift_dance_impl(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- *self->counter = 0;
- break;
- case DEACTIVATED:
- case RESTART:
- tap_key(self->value1);
- *self->state = IDLE;
- break;
- case FINISHED_FROM_ACTIVE:
- if (*self->counter == (LONG_PRESS_MULTIPLIER - 2)) {
- key_in(KC_LSFT);
- tap_key(self->value1);
- key_out(KC_LSFT);
- *self->state = IDLE;
- // the skip to IDLE is usually just a lag optimization,
- // in this case it has a logic function, on a short
- // press (still longer than a tap) the key does not get shifted
- } else {
- *self->counter += 1;
- *self->state = PRESS_FROM_ACTIVE;
- dance_timer = timer_read();
- }
- break;
- default:
- break;
- }
-}
-
-void autoshift_dance(const struct Chord* self) {
- if (autoshift_mode) {
- autoshift_dance_impl(self);
- } else {
- single_dance(self);
- }
-}
-
-void autoshift_toggle(const struct Chord* self){
- if (*self->state == ACTIVATED) {
- autoshift_mode = !autoshift_mode;
- *self->state = IDLE;
- }
-}
-
-void temp_pseudolayer(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- current_pseudolayer = self->value1;
- break;
- case DEACTIVATED:
- current_pseudolayer = self->pseudolayer;
- *self->state = IDLE;
- break;
- case RESTART:
- current_pseudolayer = self->pseudolayer;
- break;
- default:
- break;
- }
-}
-
-void temp_pseudolayer_alt(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- current_pseudolayer = self->value1;
- break;
- case DEACTIVATED:
- current_pseudolayer = self->value2;
- *self->state = IDLE;
- break;
- case RESTART:
- current_pseudolayer = self->value2;
- break;
- default:
- break;
- }
-}
-
-void perm_pseudolayer(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- current_pseudolayer = self->value1;
- *self->state = IDLE;
- }
-}
-
-void switch_layer(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- layer_move(self->value1);
- *self->state = IDLE;
- }
-}
-
-void lock(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- lock_next = true;
- *self->state = IDLE;
- }
-}
-
-void one_shot_key(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- break;
- case DEACTIVATED:
- key_in(self->value1);
- *self->state = IN_ONE_SHOT;
- break;
- case FINISHED:
- case PRESS_FROM_ACTIVE:
- key_in(self->value1);
- a_key_went_through = false;
- break;
- case RESTART:
- if (a_key_went_through) {
- key_out(self->value1);
- } else {
- *self->state = IN_ONE_SHOT;
- }
- default:
- break;
- }
-}
-
-void one_shot_layer(const struct Chord* self) {
- switch (*self->state) {
- case ACTIVATED:
- break;
- case DEACTIVATED:
- current_pseudolayer = self->value1;
- *self->state = IN_ONE_SHOT;
- break;
- case FINISHED:
- case PRESS_FROM_ACTIVE:
- current_pseudolayer = self->value1;
- a_key_went_through = false;
- break;
- case RESTART:
- if (a_key_went_through) {
- current_pseudolayer = self->pseudolayer;
- } else {
- *self->state = IN_ONE_SHOT;
- }
- default:
- break;
- }
-}
-
-void command(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- command_mode++;
- *self->state = IDLE;
- }
-}
-
-bool identical(uint16_t* buffer1, uint16_t* buffer2) {
- bool same = true;
- for (int i = 0; i < LEADER_MAX_LENGTH; i++) {
- same = same && (buffer1[i] == buffer2[i]);
- }
- return same;
-}
-
-void leader(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- in_leader_mode = true;
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_record(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- for (int i = 0; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- dynamic_macro_buffer[i] = 0;
- }
- dynamic_macro_mode = true;
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_next(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- if (dynamic_macro_mode && dynamic_macro_ind < DYNAMIC_MACRO_MAX_LENGTH) {
- dynamic_macro_buffer[dynamic_macro_ind] = 0;
- dynamic_macro_ind++;
- }
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_end(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- if (dynamic_macro_mode) {
- dynamic_macro_mode = false;
- }
- *self->state = IDLE;
- }
-}
-
-void dynamic_macro_play(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- int ind_start = 0;
- while (ind_start < DYNAMIC_MACRO_MAX_LENGTH) {
- for (int i = ind_start; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- if (dynamic_macro_buffer[i] == 0) {
- break;
- }
- register_code(dynamic_macro_buffer[i]);
- }
- send_keyboard_report();
- wait_ms(TAP_TIMEOUT);
- for (int i = ind_start; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- if (dynamic_macro_buffer[i] == 0) {
- ind_start = i + 1;
- break;
- }
- unregister_code(dynamic_macro_buffer[i]);
- }
- send_keyboard_report();
- }
- *self->state = IDLE;
- }
-}
-
-void string_in(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- char buffer[STRING_MAX_LENGTH];
- strcpy_P(buffer, (char*)pgm_read_word(&(strings[self->value1])));
- send_string(buffer);
- }
-}
-
-void clear(const struct Chord* self);
-
-void reset_keyboard_kb(void){
-#ifdef WATCHDOG_ENABLE
- MCUSR = 0;
- wdt_disable();
- wdt_reset();
-#endif
- reset_keyboard();
-}
-
-void reset(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- reset_keyboard_kb();
- }
-}
-
-uint8_t state_0 = IDLE;
-const struct Chord chord_0 PROGMEM = {H_TOP1 + H_TOP12 + H_BOT1 + H_BOT12, ALWAYS_ON, &state_0, NULL, 0, 0, clear};
-uint8_t state_1 = IDLE;
-const struct Chord chord_1 PROGMEM = {H_TOP6 + H_TOP7 + H_BOT6 + H_BOT7, ALWAYS_ON, &state_1, NULL, 0, 0, command};
-uint8_t state_2 = IDLE;
-const struct Chord chord_2 PROGMEM = {H_TOP1, QWERTY, &state_2, NULL, KC_ESC, 0, single_dance};
-uint8_t state_3 = IDLE;
-const struct Chord chord_3 PROGMEM = {H_TOP2, QWERTY, &state_3, NULL, KC_Q, 0, single_dance};
-uint8_t state_4 = IDLE;
-const struct Chord chord_4 PROGMEM = {H_TOP3, QWERTY, &state_4, NULL, KC_W, 0, single_dance};
-uint8_t state_5 = IDLE;
-const struct Chord chord_5 PROGMEM = {H_TOP4, QWERTY, &state_5, NULL, KC_E, 0, single_dance};
-uint8_t state_6 = IDLE;
-const struct Chord chord_6 PROGMEM = {H_TOP5, QWERTY, &state_6, NULL, KC_R, 0, single_dance};
-uint8_t state_7 = IDLE;
-const struct Chord chord_7 PROGMEM = {H_TOP6, QWERTY, &state_7, NULL, KC_T, 0, single_dance};
-uint8_t state_8 = IDLE;
-const struct Chord chord_8 PROGMEM = {H_TOP7, QWERTY, &state_8, NULL, KC_Y, 0, single_dance};
-uint8_t state_9 = IDLE;
-const struct Chord chord_9 PROGMEM = {H_TOP8, QWERTY, &state_9, NULL, KC_U, 0, single_dance};
-uint8_t state_10 = IDLE;
-const struct Chord chord_10 PROGMEM = {H_TOP9, QWERTY, &state_10, NULL, KC_I, 0, single_dance};
-uint8_t state_11 = IDLE;
-const struct Chord chord_11 PROGMEM = {H_TOP10, QWERTY, &state_11, NULL, KC_O, 0, single_dance};
-uint8_t state_12 = IDLE;
-const struct Chord chord_12 PROGMEM = {H_TOP11, QWERTY, &state_12, NULL, KC_P, 0, single_dance};
-uint8_t state_13 = IDLE;
-const struct Chord chord_13 PROGMEM = {H_TOP12, QWERTY, &state_13, NULL, KC_BACKSLASH, 0, single_dance};
-uint8_t state_14 = IDLE;
-const struct Chord chord_14 PROGMEM = {H_TOP1 + H_BOT1, QWERTY, &state_14, NULL, KC_INS, 0, single_dance};
-uint8_t state_15 = IDLE;
-const struct Chord chord_15 PROGMEM = {H_TOP2 + H_BOT2, QWERTY, &state_15, NULL, KC_A, 0, single_dance};
-uint8_t state_16 = IDLE;
-uint8_t counter_16 = 0;
-const struct Chord chord_16 PROGMEM = {H_TOP3 + H_BOT3, QWERTY, &state_16, &counter_16, KC_S, KC_LALT, key_key_dance};
-uint8_t state_17 = IDLE;
-const struct Chord chord_17 PROGMEM = {H_TOP4 + H_BOT4, QWERTY, &state_17, NULL, KC_D, KC_LCTL, key_mod_dance};
-uint8_t state_18 = IDLE;
-const struct Chord chord_18 PROGMEM = {H_TOP5 + H_BOT5, QWERTY, &state_18, NULL, KC_F, KC_LSFT, key_mod_dance};
-uint8_t state_19 = IDLE;
-uint8_t counter_19 = 0;
-const struct Chord chord_19 PROGMEM = {H_TOP6 + H_BOT6, QWERTY, &state_19, &counter_19, KC_G, KC_LGUI, key_key_dance};
-uint8_t state_20 = IDLE;
-uint8_t counter_20 = 0;
-const struct Chord chord_20 PROGMEM = {H_TOP7 + H_BOT7, QWERTY, &state_20, &counter_20, KC_H, KC_RGUI, key_key_dance};
-uint8_t state_21 = IDLE;
-const struct Chord chord_21 PROGMEM = {H_TOP8 + H_BOT8, QWERTY, &state_21, NULL, KC_J, KC_RSFT, key_mod_dance};
-uint8_t state_22 = IDLE;
-const struct Chord chord_22 PROGMEM = {H_TOP9 + H_BOT9, QWERTY, &state_22, NULL, KC_K, KC_RCTL, key_mod_dance};
-uint8_t state_23 = IDLE;
-uint8_t counter_23 = 0;
-const struct Chord chord_23 PROGMEM = {H_TOP10 + H_BOT10, QWERTY, &state_23, &counter_23, KC_L, KC_RALT, key_key_dance};
-uint8_t state_24 = IDLE;
-const struct Chord chord_24 PROGMEM = {H_TOP11 + H_BOT11, QWERTY, &state_24, NULL, KC_SEMICOLON, 0, single_dance};
-uint8_t state_25 = IDLE;
-const struct Chord chord_25 PROGMEM = {H_BOT1, QWERTY, &state_25, NULL, KC_TAB, 0, single_dance};
-uint8_t state_26 = IDLE;
-const struct Chord chord_26 PROGMEM = {H_BOT2, QWERTY, &state_26, NULL, KC_Z, 0, single_dance};
-uint8_t state_27 = IDLE;
-const struct Chord chord_27 PROGMEM = {H_BOT3, QWERTY, &state_27, NULL, KC_X, 0, single_dance};
-uint8_t state_28 = IDLE;
-const struct Chord chord_28 PROGMEM = {H_BOT4, QWERTY, &state_28, NULL, KC_C, 0, single_dance};
-uint8_t state_29 = IDLE;
-const struct Chord chord_29 PROGMEM = {H_BOT5, QWERTY, &state_29, NULL, KC_V, 0, single_dance};
-uint8_t state_30 = IDLE;
-const struct Chord chord_30 PROGMEM = {H_BOT6, QWERTY, &state_30, NULL, KC_B, 0, single_dance};
-uint8_t state_31 = IDLE;
-const struct Chord chord_31 PROGMEM = {H_BOT7, QWERTY, &state_31, NULL, KC_N, 0, single_dance};
-uint8_t state_32 = IDLE;
-const struct Chord chord_32 PROGMEM = {H_BOT8, QWERTY, &state_32, NULL, KC_M, 0, single_dance};
-uint8_t state_33 = IDLE;
-const struct Chord chord_33 PROGMEM = {H_BOT9, QWERTY, &state_33, NULL, KC_COMMA, 0, single_dance};
-uint8_t state_34 = IDLE;
-const struct Chord chord_34 PROGMEM = {H_BOT10, QWERTY, &state_34, NULL, KC_DOT, 0, single_dance};
-uint8_t state_35 = IDLE;
-const struct Chord chord_35 PROGMEM = {H_BOT11, QWERTY, &state_35, NULL, KC_SLASH, 0, single_dance};
-uint8_t state_36 = IDLE;
-const struct Chord chord_36 PROGMEM = {H_BOT12, QWERTY, &state_36, NULL, KC_QUOTE, 0, single_dance};
-uint8_t state_37 = IDLE;
-const struct Chord chord_37 PROGMEM = {H_THU1, QWERTY, &state_37, NULL, KC_ENTER, 0, single_dance};
-uint8_t state_38 = IDLE;
-uint8_t counter_38 = 0;
-const struct Chord chord_38 PROGMEM = {H_THU2, QWERTY, &state_38, &counter_38, KC_SPC, NUM, key_layer_dance};
-uint8_t state_39 = IDLE;
-uint8_t counter_39 = 0;
-const struct Chord chord_39 PROGMEM = {H_THU3, QWERTY, &state_39, &counter_39, KC_BSPC, NAV, key_layer_dance};
-uint8_t state_40 = IDLE;
-const struct Chord chord_40 PROGMEM = {H_THU4, QWERTY, &state_40, NULL, KC_DEL, 0, single_dance};
-uint8_t state_41 = IDLE;
-uint8_t counter_41 = 0;
-const struct Chord chord_41 PROGMEM = {H_THU5, QWERTY, &state_41, &counter_41, KC_SPC, FNC, key_layer_dance};
-uint8_t state_42 = IDLE;
-const struct Chord chord_42 PROGMEM = {H_THU6, QWERTY, &state_42, NULL, KC_ENTER, 0, single_dance};
-uint8_t state_43 = IDLE;
-const struct Chord chord_43 PROGMEM = {H_THU2 + H_THU3, QWERTY, &state_43, NULL, MOUSE, 0, temp_pseudolayer};
-uint8_t state_44 = IDLE;
-const struct Chord chord_44 PROGMEM = {H_TOP1, NUM, &state_44, NULL, KC_GRAVE, 0, single_dance};
-uint8_t state_45 = IDLE;
-const struct Chord chord_45 PROGMEM = {H_TOP2, NUM, &state_45, NULL, KC_1, 0, single_dance};
-uint8_t state_46 = IDLE;
-const struct Chord chord_46 PROGMEM = {H_TOP3, NUM, &state_46, NULL, KC_2, 0, single_dance};
-uint8_t state_47 = IDLE;
-const struct Chord chord_47 PROGMEM = {H_TOP4, NUM, &state_47, NULL, KC_3, 0, single_dance};
-uint8_t state_48 = IDLE;
-const struct Chord chord_48 PROGMEM = {H_TOP5, NUM, &state_48, NULL, KC_4, 0, single_dance};
-uint8_t state_49 = IDLE;
-const struct Chord chord_49 PROGMEM = {H_TOP6, NUM, &state_49, NULL, KC_5, 0, single_dance};
-uint8_t state_50 = IDLE;
-const struct Chord chord_50 PROGMEM = {H_TOP7, NUM, &state_50, NULL, KC_6, 0, single_dance};
-uint8_t state_51 = IDLE;
-const struct Chord chord_51 PROGMEM = {H_TOP8, NUM, &state_51, NULL, KC_7, 0, single_dance};
-uint8_t state_52 = IDLE;
-const struct Chord chord_52 PROGMEM = {H_TOP9, NUM, &state_52, NULL, KC_8, 0, single_dance};
-uint8_t state_53 = IDLE;
-const struct Chord chord_53 PROGMEM = {H_TOP10, NUM, &state_53, NULL, KC_9, 0, single_dance};
-uint8_t state_54 = IDLE;
-const struct Chord chord_54 PROGMEM = {H_TOP11, NUM, &state_54, NULL, KC_0, 0, single_dance};
-uint8_t state_55 = IDLE;
-const struct Chord chord_55 PROGMEM = {H_TOP12, NUM, &state_55, NULL, KC_MINUS, 0, single_dance};
-uint8_t state_56 = IDLE;
-const struct Chord chord_56 PROGMEM = {H_TOP3 + H_BOT3, NUM, &state_56, NULL, KC_LALT, 0, single_dance};
-uint8_t state_57 = IDLE;
-const struct Chord chord_57 PROGMEM = {H_TOP4 + H_BOT4, NUM, &state_57, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_58 = IDLE;
-const struct Chord chord_58 PROGMEM = {H_TOP5 + H_BOT5, NUM, &state_58, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_59 = IDLE;
-const struct Chord chord_59 PROGMEM = {H_TOP6 + H_BOT6, NUM, &state_59, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_60 = IDLE;
-const struct Chord chord_60 PROGMEM = {H_TOP7 + H_BOT7, NUM, &state_60, NULL, KC_RGUI, 0, single_dance};
-uint8_t state_61 = IDLE;
-const struct Chord chord_61 PROGMEM = {H_TOP8 + H_BOT8, NUM, &state_61, NULL, KC_RSFT, 0, single_dance};
-uint8_t state_62 = IDLE;
-const struct Chord chord_62 PROGMEM = {H_TOP9 + H_BOT9, NUM, &state_62, NULL, KC_RCTL, 0, single_dance};
-uint8_t state_63 = IDLE;
-const struct Chord chord_63 PROGMEM = {H_TOP10 + H_BOT10, NUM, &state_63, NULL, KC_RALT, 0, single_dance};
-uint8_t state_64 = IDLE;
-const struct Chord chord_64 PROGMEM = {H_BOT12, NUM, &state_64, NULL, KC_EQUAL, 0, single_dance};
-uint8_t state_65 = IDLE;
-const struct Chord chord_65 PROGMEM = {H_TOP2, FNC, &state_65, NULL, KC_F1, 0, single_dance};
-uint8_t state_66 = IDLE;
-const struct Chord chord_66 PROGMEM = {H_TOP3, FNC, &state_66, NULL, KC_F2, 0, single_dance};
-uint8_t state_67 = IDLE;
-const struct Chord chord_67 PROGMEM = {H_TOP4, FNC, &state_67, NULL, KC_F3, 0, single_dance};
-uint8_t state_68 = IDLE;
-const struct Chord chord_68 PROGMEM = {H_TOP5, FNC, &state_68, NULL, KC_F4, 0, single_dance};
-uint8_t state_69 = IDLE;
-const struct Chord chord_69 PROGMEM = {H_TOP6, FNC, &state_69, NULL, KC_F5, 0, single_dance};
-uint8_t state_70 = IDLE;
-const struct Chord chord_70 PROGMEM = {H_TOP7, FNC, &state_70, NULL, KC_F6, 0, single_dance};
-uint8_t state_71 = IDLE;
-const struct Chord chord_71 PROGMEM = {H_TOP8, FNC, &state_71, NULL, KC_F7, 0, single_dance};
-uint8_t state_72 = IDLE;
-const struct Chord chord_72 PROGMEM = {H_TOP9, FNC, &state_72, NULL, KC_F8, 0, single_dance};
-uint8_t state_73 = IDLE;
-const struct Chord chord_73 PROGMEM = {H_TOP10, FNC, &state_73, NULL, KC_F9, 0, single_dance};
-uint8_t state_74 = IDLE;
-const struct Chord chord_74 PROGMEM = {H_TOP11, FNC, &state_74, NULL, KC_F10, 0, single_dance};
-uint8_t state_75 = IDLE;
-const struct Chord chord_75 PROGMEM = {H_TOP12, FNC, &state_75, NULL, KC_F11, 0, single_dance};
-uint8_t state_76 = IDLE;
-const struct Chord chord_76 PROGMEM = {H_TOP3 + H_BOT3, FNC, &state_76, NULL, KC_LALT, 0, single_dance};
-uint8_t state_77 = IDLE;
-const struct Chord chord_77 PROGMEM = {H_TOP4 + H_BOT4, FNC, &state_77, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_78 = IDLE;
-const struct Chord chord_78 PROGMEM = {H_TOP5 + H_BOT5, FNC, &state_78, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_79 = IDLE;
-const struct Chord chord_79 PROGMEM = {H_TOP6 + H_BOT6, FNC, &state_79, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_80 = IDLE;
-const struct Chord chord_80 PROGMEM = {H_TOP7 + H_BOT7, FNC, &state_80, NULL, KC_RGUI, 0, single_dance};
-uint8_t state_81 = IDLE;
-const struct Chord chord_81 PROGMEM = {H_TOP8 + H_BOT8, FNC, &state_81, NULL, KC_RSFT, 0, single_dance};
-uint8_t state_82 = IDLE;
-const struct Chord chord_82 PROGMEM = {H_TOP9 + H_BOT9, FNC, &state_82, NULL, KC_RCTL, 0, single_dance};
-uint8_t state_83 = IDLE;
-const struct Chord chord_83 PROGMEM = {H_TOP10 + H_BOT10, FNC, &state_83, NULL, KC_RALT, 0, single_dance};
-uint8_t state_84 = IDLE;
-const struct Chord chord_84 PROGMEM = {H_BOT12, FNC, &state_84, NULL, KC_F12, 0, single_dance};
-uint8_t state_85 = IDLE;
-const struct Chord chord_85 PROGMEM = {H_TOP8, NAV, &state_85, NULL, KC_HOME, 0, single_dance};
-uint8_t state_86 = IDLE;
-const struct Chord chord_86 PROGMEM = {H_TOP9, NAV, &state_86, NULL, KC_UP, 0, single_dance};
-uint8_t state_87 = IDLE;
-const struct Chord chord_87 PROGMEM = {H_TOP10, NAV, &state_87, NULL, KC_END, 0, single_dance};
-uint8_t state_88 = IDLE;
-const struct Chord chord_88 PROGMEM = {H_TOP11, NAV, &state_88, NULL, KC_PGUP, 0, single_dance};
-uint8_t state_89 = IDLE;
-const struct Chord chord_89 PROGMEM = {H_TOP3 + H_BOT3, NAV, &state_89, NULL, KC_LALT, 0, single_dance};
-uint8_t state_90 = IDLE;
-const struct Chord chord_90 PROGMEM = {H_TOP4 + H_BOT4, NAV, &state_90, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_91 = IDLE;
-const struct Chord chord_91 PROGMEM = {H_TOP5 + H_BOT5, NAV, &state_91, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_92 = IDLE;
-const struct Chord chord_92 PROGMEM = {H_TOP6 + H_BOT6, NAV, &state_92, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_93 = IDLE;
-const struct Chord chord_93 PROGMEM = {H_BOT8, NAV, &state_93, NULL, KC_LEFT, 0, single_dance};
-uint8_t state_94 = IDLE;
-const struct Chord chord_94 PROGMEM = {H_BOT9, NAV, &state_94, NULL, KC_DOWN, 0, single_dance};
-uint8_t state_95 = IDLE;
-const struct Chord chord_95 PROGMEM = {H_BOT10, NAV, &state_95, NULL, KC_RIGHT, 0, single_dance};
-uint8_t state_96 = IDLE;
-const struct Chord chord_96 PROGMEM = {H_BOT11, NAV, &state_96, NULL, KC_PGDN, 0, single_dance};
-uint8_t state_97 = IDLE;
-const struct Chord chord_97 PROGMEM = {H_TOP8, MOUSE, &state_97, NULL, KC_BTN1, 0, single_dance};
-uint8_t state_98 = IDLE;
-const struct Chord chord_98 PROGMEM = {H_TOP9, MOUSE, &state_98, NULL, KC_MS_U, 0, single_dance};
-uint8_t state_99 = IDLE;
-const struct Chord chord_99 PROGMEM = {H_TOP10, MOUSE, &state_99, NULL, KC_BTN2, 0, single_dance};
-uint8_t state_100 = IDLE;
-const struct Chord chord_100 PROGMEM = {H_TOP11, MOUSE, &state_100, NULL, KC_WH_U, 0, single_dance};
-uint8_t state_101 = IDLE;
-const struct Chord chord_101 PROGMEM = {H_TOP3 + H_BOT3, MOUSE, &state_101, NULL, KC_LALT, 0, single_dance};
-uint8_t state_102 = IDLE;
-const struct Chord chord_102 PROGMEM = {H_TOP4 + H_BOT4, MOUSE, &state_102, NULL, KC_LCTL, 0, single_dance};
-uint8_t state_103 = IDLE;
-const struct Chord chord_103 PROGMEM = {H_TOP5 + H_BOT5, MOUSE, &state_103, NULL, KC_LSFT, 0, single_dance};
-uint8_t state_104 = IDLE;
-const struct Chord chord_104 PROGMEM = {H_TOP6 + H_BOT6, MOUSE, &state_104, NULL, KC_LGUI, 0, single_dance};
-uint8_t state_105 = IDLE;
-const struct Chord chord_105 PROGMEM = {H_BOT8, MOUSE, &state_105, NULL, KC_MS_L, 0, single_dance};
-uint8_t state_106 = IDLE;
-const struct Chord chord_106 PROGMEM = {H_BOT9, MOUSE, &state_106, NULL, KC_MS_D, 0, single_dance};
-uint8_t state_107 = IDLE;
-const struct Chord chord_107 PROGMEM = {H_BOT10, MOUSE, &state_107, NULL, KC_MS_R, 0, single_dance};
-uint8_t state_108 = IDLE;
-const struct Chord chord_108 PROGMEM = {H_BOT11, MOUSE, &state_108, NULL, KC_WH_D, 0, single_dance};
-
-const struct Chord* const list_of_chords[] PROGMEM = {
- &chord_0, &chord_1, &chord_2, &chord_3, &chord_4, &chord_5, &chord_6, &chord_7, &chord_8, &chord_9, &chord_10, &chord_11, &chord_12, &chord_13, &chord_14, &chord_15, &chord_16, &chord_17, &chord_18, &chord_19, &chord_20, &chord_21, &chord_22, &chord_23, &chord_24, &chord_25, &chord_26, &chord_27, &chord_28, &chord_29, &chord_30, &chord_31, &chord_32, &chord_33, &chord_34, &chord_35, &chord_36, &chord_37, &chord_38, &chord_39, &chord_40, &chord_41, &chord_42, &chord_43, &chord_44, &chord_45, &chord_46, &chord_47, &chord_48, &chord_49, &chord_50, &chord_51, &chord_52, &chord_53, &chord_54, &chord_55, &chord_56, &chord_57, &chord_58, &chord_59, &chord_60, &chord_61, &chord_62, &chord_63, &chord_64, &chord_65, &chord_66, &chord_67, &chord_68, &chord_69, &chord_70, &chord_71, &chord_72, &chord_73, &chord_74, &chord_75, &chord_76, &chord_77, &chord_78, &chord_79, &chord_80, &chord_81, &chord_82, &chord_83, &chord_84, &chord_85, &chord_86, &chord_87, &chord_88, &chord_89, &chord_90, &chord_91, &chord_92, &chord_93, &chord_94, &chord_95, &chord_96, &chord_97, &chord_98, &chord_99, &chord_100, &chord_101, &chord_102, &chord_103, &chord_104, &chord_105, &chord_106, &chord_107, &chord_108
-};
-
-const uint16_t** const leader_triggers PROGMEM = NULL;
-void (*leader_functions[]) (void) = {};
-
-#define NUMBER_OF_CHORDS 109
-#define NUMBER_OF_LEADER_COMBOS 0
-
-bool are_hashed_keycodes_in_sound(HASH_TYPE keycodes_hash, HASH_TYPE sound) {
- return (keycodes_hash & sound) == keycodes_hash;
-}
-
-uint8_t keycode_to_index(uint16_t keycode) {
- return keycode - FIRST_INTERNAL_KEYCODE;
-}
-
-void sound_keycode_array(uint16_t keycode) {
- uint8_t index = keycode_to_index(keycode);
- keycode_index++;
- keycodes_buffer_array[index] = keycode_index;
-}
-
-void silence_keycode_hash_array(HASH_TYPE keycode_hash) {
- for (int i = 0; i < NUMBER_OF_KEYS; i++) {
- bool index_in_hash = ((HASH_TYPE) 1 << i) & keycode_hash;
- if (index_in_hash) {
- uint8_t current_val = keycodes_buffer_array[i];
- keycodes_buffer_array[i] = 0;
- for (int j = 0; j < NUMBER_OF_KEYS; j++) {
- if (keycodes_buffer_array[j] > current_val) {
- keycodes_buffer_array[j]--;
- }
- }
- keycode_index--;
- }
- }
-}
-
-bool are_hashed_keycodes_in_array(HASH_TYPE keycode_hash) {
- for (int i = 0; i < NUMBER_OF_KEYS; i++) {
- bool index_in_hash = ((HASH_TYPE) 1 << i) & keycode_hash;
- bool index_in_array = (bool) keycodes_buffer_array[i];
- if (index_in_hash && !index_in_array) {
- return false;
- }
- }
- return true;
-}
-
-void kill_one_shots(void) {
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (*chord->state == IN_ONE_SHOT) {
- *chord->state = RESTART;
- chord->function(chord);
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- }
- }
-}
-
-void process_finished_dances(void) {
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (*chord->state == ACTIVATED) {
- *chord->state = PRESS_FROM_ACTIVE;
- chord->function(chord);
- if (a_key_went_through) {
- kill_one_shots();
- }
- dance_timer = timer_read();
- } else if (*chord->state == IDLE_IN_DANCE) {
- *chord->state = FINISHED;
- chord->function(chord);
- if (*chord->state == FINISHED) {
- *chord->state = RESTART;
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- }
- } else if (*chord->state == PRESS_FROM_ACTIVE) {
- *chord->state = FINISHED_FROM_ACTIVE;
- chord->function(chord);
- if (a_key_went_through) {
- kill_one_shots();
- }
- dance_timer = timer_read();
- }
- }
-}
-
-uint8_t keycodes_buffer_array_min(uint8_t* first_keycode_index) {
- for (int i = 0; i < NUMBER_OF_KEYS; i++) {
- if (keycodes_buffer_array[i] == 1) {
- if (first_keycode_index != NULL) {
- *first_keycode_index = (uint8_t) i;
- }
- return 1;
- }
- }
- return 0;
-}
-
-void remove_subchords(void) {
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (!(*chord->state == READY || *chord->state == READY_IN_DANCE || *chord->state == READY_LOCKED)) {
- continue;
- }
-
- struct Chord chord_storage_2;
- struct Chord* chord_ptr_2;
- struct Chord* chord_2;
- for (int j = 0; j < NUMBER_OF_CHORDS; j++) {
- if (i == j) {continue;}
-
- chord_ptr_2 = (struct Chord*) pgm_read_word (&list_of_chords[j]);
- memcpy_P(&chord_storage_2, chord_ptr_2, sizeof(struct Chord));
- chord_2 = &chord_storage_2;
-
- if (are_hashed_keycodes_in_sound(chord_2->keycodes_hash, chord->keycodes_hash)) {
- if (*chord_2->state == READY) {
- *chord_2->state = IDLE;
- }
- if (*chord_2->state == READY_IN_DANCE) {
- *chord_2->state = IDLE_IN_DANCE;
- }
- if (*chord_2->state == READY_LOCKED) {
- *chord_2->state = LOCKED;
- }
- }
- }
- }
-}
-
-void process_ready_chords(void) {
- uint8_t first_keycode_index = 0;
- while (keycodes_buffer_array_min(&first_keycode_index)) {
- // find ready chords
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- // if the chord does not contain the first keycode
- bool contains_first_keycode = ((uint32_t) 1 << first_keycode_index) & chord->keycodes_hash;
- if (!contains_first_keycode) {
- continue;
- }
-
- if (!are_hashed_keycodes_in_array(chord->keycodes_hash)){
- continue;
- }
-
- if (*chord->state == LOCKED) {
- *chord->state = READY_LOCKED;
- continue;
- }
-
- if (!(chord->pseudolayer == current_pseudolayer || chord->pseudolayer == ALWAYS_ON)) {
- continue;
- }
-
- if (*chord->state == IDLE) {
- *chord->state = READY;
- continue;
- }
-
- if (*chord->state == IDLE_IN_DANCE) {
- *chord->state = READY_IN_DANCE;
- }
- }
-
- // remove subchords
- remove_subchords();
-
- // execute logic
- // this should be only one chord
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- if (*chord->state == READY_LOCKED) {
- *chord->state = RESTART;
- chord->function(chord);
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- break;
- }
-
- if (*chord->state == READY || *chord->state == READY_IN_DANCE) {
- if (last_chord && last_chord != chord) {
- process_finished_dances();
- }
-
- bool lock_next_prev_state = lock_next;
-
- *chord->state = ACTIVATED;
- chord->function(chord);
- dance_timer = timer_read();
-
- if (lock_next && lock_next == lock_next_prev_state) {
- lock_next = false;
- *chord->state = PRESS_FROM_ACTIVE;
- chord->function(chord);
- if (*chord->state == PRESS_FROM_ACTIVE) {
- *chord->state = LOCKED;
- }
- if (a_key_went_through) {
- kill_one_shots();
- }
- }
- break;
- }
- }
-
- // silence notes
- silence_keycode_hash_array(chord->keycodes_hash);
- }
-}
-
-void deactivate_active_chords(uint16_t keycode) {
- HASH_TYPE hash = (HASH_TYPE)1 << (keycode - SAFE_RANGE);
- bool broken;
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- broken = are_hashed_keycodes_in_sound(hash, chord->keycodes_hash);
- if (!broken) {
- continue;
- }
-
- switch (*chord->state) {
- case ACTIVATED:
- *chord->state = DEACTIVATED;
- chord->function(chord);
-
- if (*chord->state == DEACTIVATED) {
- dance_timer = timer_read();
- *chord->state = IDLE_IN_DANCE;
- }
- if (*chord->state != IN_ONE_SHOT) {
- kill_one_shots();
- }
- break;
- case PRESS_FROM_ACTIVE:
- case FINISHED_FROM_ACTIVE:
- *chord->state = RESTART;
- chord->function(chord);
- if (*chord->state == RESTART) {
- *chord->state = IDLE;
- }
- kill_one_shots();
- break;
- default:
- break;
- }
- }
-
-}
-
-void process_command(void) {
- command_mode = 0;
- for (int i = 0; i < COMMAND_MAX_LENGTH; i++) {
- if (command_buffer[i]) {
- register_code(command_buffer[i]);
- }
- send_keyboard_report();
- }
- wait_ms(TAP_TIMEOUT);
- for (int i = 0; i < COMMAND_MAX_LENGTH; i++) {
- if (command_buffer[i]) {
- unregister_code(command_buffer[i]);
- }
- send_keyboard_report();
- }
- for (int i = 0; i < COMMAND_MAX_LENGTH; i++) {
- command_buffer[i] = 0;
- }
- command_ind = 0;
-}
-
-void process_leader(void) {
- in_leader_mode = false;
- for (int i = 0; i < NUMBER_OF_LEADER_COMBOS; i++) {
- uint16_t trigger[LEADER_MAX_LENGTH];
- memcpy_P(trigger, leader_triggers[i], LEADER_MAX_LENGTH * sizeof(uint16_t));
-
- if (identical(leader_buffer, trigger)) {
- (*leader_functions[i])();
- break;
- }
- }
- for (int i = 0; i < LEADER_MAX_LENGTH; i++) {
- leader_buffer[i] = 0;
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (keycode < FIRST_INTERNAL_KEYCODE || keycode > LAST_INTERNAL_KEYCODE) {
- return true;
- }
-
- if (record->event.pressed) {
- sound_keycode_array(keycode);
- } else {
- process_ready_chords();
- deactivate_active_chords(keycode);
- }
- chord_timer = timer_read();
- leader_timer = timer_read();
-
- return false;
-}
-
-void matrix_scan_user(void) {
- bool chord_timer_expired = timer_elapsed(chord_timer) > CHORD_TIMEOUT;
- if (chord_timer_expired && keycodes_buffer_array_min(NULL)) {
- process_ready_chords();
- }
-
- bool dance_timer_expired = timer_elapsed(dance_timer) > DANCE_TIMEOUT;
- if (dance_timer_expired) { // would love to have && in_dance but not sure how
- process_finished_dances();
- }
-
- bool in_command_mode = command_mode == 2;
- if (in_command_mode) {
- process_command();
- }
-
- bool leader_timer_expired = timer_elapsed(leader_timer) > LEADER_TIMEOUT;
- if (leader_timer_expired && in_leader_mode) {
- process_leader();
- }
-
-}
-
-void clear(const struct Chord* self) {
- if (*self->state == ACTIVATED) {
- // kill all chords
- struct Chord chord_storage;
- struct Chord* chord_ptr;
- struct Chord* chord;
-
- for (int i = 0; i < NUMBER_OF_CHORDS; i++) {
- chord_ptr = (struct Chord*) pgm_read_word (&list_of_chords[i]);
- memcpy_P(&chord_storage, chord_ptr, sizeof(struct Chord));
- chord = &chord_storage;
-
- *chord->state = IDLE;
-
- if (chord->counter) {
- *chord->counter = 0;
- }
- }
-
- // clear keyboard
- clear_keyboard();
- send_keyboard_report();
-
- // switch to default pseudolayer
- current_pseudolayer = DEFAULT_PSEUDOLAYER;
-
- // clear all keyboard states
- lock_next = false;
- autoshift_mode = true;
- command_mode = 0;
- in_leader_mode = false;
- leader_ind = 0;
- dynamic_macro_mode = false;
- a_key_went_through = false;
-
- for (int i = 0; i < DYNAMIC_MACRO_MAX_LENGTH; i++) {
- dynamic_macro_buffer[i] = 0;
- }
- }
-} \ No newline at end of file
diff --git a/keyboards/gboards/georgi/keymaps/dennytom/keymap_def.json b/keyboards/gboards/georgi/keymaps/dennytom/keymap_def.json
deleted file mode 100644
index 232ccafadf..0000000000
--- a/keyboards/gboards/georgi/keymaps/dennytom/keymap_def.json
+++ /dev/null
@@ -1,153 +0,0 @@
-{
- "keys": [
- "TOP1", "TOP2", "TOP3", "TOP4", "TOP5", "TOP6", "TOP7", "TOP8", "TOP9", "TOP10", "TOP11", "TOP12",
- "BOT1", "BOT2", "BOT3", "BOT4", "BOT5", "BOT6", "BOT7", "BOT8", "BOT9", "BOT10", "BOT11", "BOT12",
- "THU1", "THU2", "THU3", "THU4", "THU5", "THU6"
- ],
- "parameters": {
- "layout_function_name": "LAYOUT_georgi",
- "chord_timeout": 100,
- "dance_timeout": 200,
- "leader_timeout": 750,
- "tap_timeout": 50,
- "command_max_length": 5,
- "leader_max_length": 5,
- "dynamic_macro_max_length": 20,
- "string_max_length": 16,
- "long_press_multiplier": 3,
- "default_pseudolayer": "QWERTY"
- },
- "layers": [
- {
- "type": "auto"
- }
- ],
- "chord_sets": [
- {
- "name": "rows",
- "chords":
- [
- ["TOP1"], ["TOP2"], ["TOP3"], ["TOP4"], ["TOP5"], ["TOP6"], ["TOP7"], ["TOP8"], ["TOP9"], ["TOP10"], ["TOP11"], ["TOP12"],
- ["TOP1", "BOT1"], ["TOP2", "BOT2"], ["TOP3", "BOT3"], ["TOP4", "BOT4"], ["TOP5", "BOT5"], ["TOP6", "BOT6"], ["TOP7", "BOT7"], ["TOP8", "BOT8"], ["TOP9", "BOT9"], ["TOP10", "BOT10"], ["TOP11", "BOT11"], ["TOP12", "BOT12"],
- ["BOT1"], ["BOT2"], ["BOT3"], ["BOT4"], ["BOT5"], ["BOT6"], ["BOT7"], ["BOT8"], ["BOT9"], ["BOT10"], ["BOT11"], ["BOT12"],
- ["THU1"], ["THU2"], ["THU3"], ["THU4"], ["THU5"], ["THU6"]
- ]
- }
- ],
- "pseudolayers": [
- {
- "name": "ALWAYS_ON",
- "chords": [
- {
- "type": "visual",
- "chord": [
- "X", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "X",
- "X", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "X",
- " ", " ", " ", " ", " ", " "
- ],
- "keycode": "CLEAR_KB"
- },
- {
- "type": "visual",
- "chord": [
- " ", " ", " ", " ", " ", "X", "X", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", "X", "X", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " "
- ],
- "keycode": "CMD"
- }
- ]
- },
- {
- "name": "QWERTY",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- "ESC", "Q", "W", "E", "R", "T", "Y", "U", "I", "O", "P", "\\",
- "INS", "A", "KK(S, LALT)", "KM(D, LCTL)", "KM(F, LSFT)", "KK(G, LGUI)", "KK(H, RGUI)", "KM(J, RSFT)", "KM(K, RCTL)", "KK(L, RALT)", ";", " ",
- "TAB", "Z", "X", "C", "V", "B", "N", "M", ",", ".", "/", "'",
- "","","","","",""
- ]
- },
- {
- "type": "visual_array",
- "keys": ["THU1", "THU2", "THU3", "THU4", "THU5", "THU6"],
- "dictionary": [
- ["X", " ", " ", " ", " ", " ", "ENTER"],
- [" ", "X", " ", " ", " ", " ", "KL(SPC, NUM)"],
- [" ", " ", "X", " ", " ", " ", "KL(BSPC, NAV)"],
- [" ", " ", " ", "X", " ", " ", "DEL"],
- [" ", " ", " ", " ", "X", " ", "KL(SPC, FNC)"],
- [" ", " ", " ", " ", " ", "X", "ENTER"],
- [" ", "X", "X", " ", " ", " ", "MO(MOUSE)"]
- ]
- }
- ]
- },
- {
- "name": "NUM",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- "`", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-",
- " ", " ", "LALT", "LCTL", "LSFT", "LGUI", "RGUI", "RSFT", "RCTL", "RALT", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", "[", "]", "=",
- " ", " ", " ", " ", " ", " "
- ]
- }
- ]
- },
- {
- "name": "FNC",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11",
- " ", " ", "LALT", "LCTL", "LSFT", "LGUI", "RGUI", "RSFT", "RCTL", "RALT", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", "F12",
- " ", " ", " ", " ", " ", " "
- ]
- }
- ]
- },
- {
- "name": "NAV",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ", " ", " ", "HOME", "UP", "END", "PGUP", " ",
- " ", " ", "LALT", "LCTL", "LSFT", "LGUI", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", "LEFT", "DOWN", "RIGHT", "PGDN", " ",
- " ", " ", " ", " ", " ", " "
- ]
- }
- ]
- },
- {
- "name": "MOUSE",
- "chords": [
- {
- "type": "chord_set",
- "set": "rows",
- "keycodes": [
- " ", " ", " ", " ", " ", " ", " ", "BTN1", "MS_U", "BTN2", "WH_U", " ",
- " ", " ", "LALT", "LCTL", "LSFT", "LGUI", " ", " ", " ", " ", " ", " ",
- " ", " ", " ", " ", " ", " ", " ", "MS_L", "MS_D", "MS_R", "WH_D", " ",
- " ", " ", " ", " ", " ", " "
- ]
- }
- ]
- }
- ],
- "leader_sequences": [],
- "extra_code": "",
- "extra_dependencies": []
-} \ No newline at end of file
diff --git a/keyboards/gboards/georgi/keymaps/dennytom/rules.mk b/keyboards/gboards/georgi/keymaps/dennytom/rules.mk
deleted file mode 100644
index af3726f14a..0000000000
--- a/keyboards/gboards/georgi/keymaps/dennytom/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-MOUSEKEY_ENABLE = yes
-CONSOLE_ENABLE = no
diff --git a/keyboards/gboards/georgi/keymaps/minimal/keymap.c b/keyboards/gboards/georgi/keymaps/minimal/keymap.c
index c4e78033bd..2f089866b2 100644
--- a/keyboards/gboards/georgi/keymaps/minimal/keymap.c
+++ b/keyboards/gboards/georgi/keymaps/minimal/keymap.c
@@ -12,7 +12,6 @@
#include QMK_KEYBOARD_H
#include "sten.h"
-#include "keymap_steno.h"
// Proper Layers
#define FUNCT (LSD | LK | LP | LH)
diff --git a/keyboards/gboards/georgi/keymaps/norman/keymap.c b/keyboards/gboards/georgi/keymaps/norman/keymap.c
index 870e460e2c..1b53cddd8b 100644
--- a/keyboards/gboards/georgi/keymaps/norman/keymap.c
+++ b/keyboards/gboards/georgi/keymaps/norman/keymap.c
@@ -12,7 +12,6 @@
#include QMK_KEYBOARD_H
#include "sten.h"
-#include "keymap_steno.h"
// Proper Layers
#define FUNCT (LSD | LK | LP | LH)
diff --git a/keyboards/gboards/georgi/rules.mk b/keyboards/gboards/georgi/rules.mk
index 5980342669..5b63e269fa 100644
--- a/keyboards/gboards/georgi/rules.mk
+++ b/keyboards/gboards/georgi/rules.mk
@@ -14,4 +14,5 @@ CUSTOM_MATRIX = yes
STENO_ENABLE = yes
LTO_ENABLE = yes
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/gboards/georgi/sten.h b/keyboards/gboards/georgi/sten.h
index b5aa79893e..e4bc31ef7a 100644
--- a/keyboards/gboards/georgi/sten.h
+++ b/keyboards/gboards/georgi/sten.h
@@ -7,9 +7,6 @@
#pragma once
#include "georgi.h"
-#include "mousekey.h"
-#include "keymap_steno.h"
-#include "wait.h"
extern size_t keymapsCount; // Total keymaps
extern uint32_t cChord; // Current Chord
diff --git a/keyboards/gboards/gergo/keymaps/colemak/rules.mk b/keyboards/gboards/gergo/keymaps/colemak/rules.mk
index 3b81fdfa1b..db8d965292 100644
--- a/keyboards/gboards/gergo/keymaps/colemak/rules.mk
+++ b/keyboards/gboards/gergo/keymaps/colemak/rules.mk
@@ -18,7 +18,8 @@ DEBUG_MATRIX = no
# know what you're doing.
#
# No touchy, capiche?
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
ifneq ($(strip $(BALLSTEP)),)
OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP))
endif
diff --git a/keyboards/gboards/gergo/keymaps/default/rules.mk b/keyboards/gboards/gergo/keymaps/default/rules.mk
index bc2b3cf43b..6f203da1bd 100644
--- a/keyboards/gboards/gergo/keymaps/default/rules.mk
+++ b/keyboards/gboards/gergo/keymaps/default/rules.mk
@@ -18,7 +18,8 @@ DEBUG_MATRIX = yes
# know what you're doing.
#
# No touchy, capiche?
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
ifneq ($(strip $(BALLSTEP)),)
OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP))
endif
diff --git a/keyboards/gboards/gergo/keymaps/drashna/keymap.c b/keyboards/gboards/gergo/keymaps/drashna/keymap.c
deleted file mode 100644
index 4f7d6b5dfa..0000000000
--- a/keyboards/gboards/gergo/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-/*
- * The `LAYOUT_gergo_base` macro is a template to allow the use of identical
- * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
- * that there is no need to set them up for each layout, and modify all of
- * them if I want to change them. This helps to keep consistency and ease
- * of use. K## is a placeholder to pass through the individual keycodes
- */
-// clang-format off
-#define LAYOUT_gergo_wrapper(...) LAYOUT_gergo(__VA_ARGS__)
-#define LAYOUT_gergo_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_gergo_wrapper( \
- KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_PIPE, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, _______, _______, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- OS_LSFT, CTL_T(K21), K22, K23, K24, K25, _______, _______, _______, _______, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \
- KC_GRV, KC_SPC, BK_LWER, OS_LALT, OS_RGUI, DL_RAIS, KC_ENT, _______ \
- )
-
-#define LAYOUT_base_wrapper(...) LAYOUT_gergo_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_LOWER] = LAYOUT_gergo_wrapper(
- KC_F12, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11,
- _______, _________________LOWER_L2__________________, _______, _______, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _______, _______, _______, _______, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_gergo_wrapper(
- _______, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _______, _______, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _______, _______, _______, _______, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_gergo_wrapper(
- QK_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, QK_BOOT,
- VRSN, _________________ADJUST_L2_________________, _______, KC_NUKE, _________________ADJUST_R2_________________, EE_CLR,
- _______, _________________ADJUST_L3_________________, _______, _______, _______, _______, _________________ADJUST_R3_________________, TG_MODS,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-};
-
-/* Keymap template
-
- [SYMB] = LAYOUT_gergo_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- */
-// clang-format on
diff --git a/keyboards/gboards/gergo/keymaps/drashna/rules.mk b/keyboards/gboards/gergo/keymaps/drashna/rules.mk
deleted file mode 100644
index ec81d11e9c..0000000000
--- a/keyboards/gboards/gergo/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
diff --git a/keyboards/gboards/gergo/keymaps/germ/rules.mk b/keyboards/gboards/gergo/keymaps/germ/rules.mk
index 0fd941bb53..c100f8ab64 100644
--- a/keyboards/gboards/gergo/keymaps/germ/rules.mk
+++ b/keyboards/gboards/gergo/keymaps/germ/rules.mk
@@ -18,7 +18,8 @@ DEBUG_MATRIX = no
# know what you're doing.
#
# No touchy, capiche?
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
ifneq ($(strip $(BALLSTEP)),)
OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP))
endif
diff --git a/keyboards/gboards/gergo/keymaps/gotham/rules.mk b/keyboards/gboards/gergo/keymaps/gotham/rules.mk
index bc2b3cf43b..6f203da1bd 100644
--- a/keyboards/gboards/gergo/keymaps/gotham/rules.mk
+++ b/keyboards/gboards/gergo/keymaps/gotham/rules.mk
@@ -18,7 +18,8 @@ DEBUG_MATRIX = yes
# know what you're doing.
#
# No touchy, capiche?
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
ifneq ($(strip $(BALLSTEP)),)
OPT_DEFS += -DTRKSTEP=$(strip $(BALLSTEP))
endif
diff --git a/keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/config.h b/keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index e86d030fd7..0000000000
--- a/keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT_gergo(\
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, XXX, XXX, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
- K32, K33, K34, XXX, XXX, K35, K36, K37\
-)
diff --git a/keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/gboards/gergo/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/gboards/gergo/rules.mk b/keyboards/gboards/gergo/rules.mk
index 195915e431..d789b349da 100644
--- a/keyboards/gboards/gergo/rules.mk
+++ b/keyboards/gboards/gergo/rules.mk
@@ -8,4 +8,4 @@ COMMAND_ENABLE = yes
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/gboards/gergoplex/rules.mk b/keyboards/gboards/gergoplex/rules.mk
index adf5cfd2e7..9846c64771 100644
--- a/keyboards/gboards/gergoplex/rules.mk
+++ b/keyboards/gboards/gergoplex/rules.mk
@@ -13,4 +13,4 @@ AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/geekboards/tester/config.h b/keyboards/geekboards/tester/config.h
index 0fea806b6f..c71ee9f351 100644
--- a/keyboards/geekboards/tester/config.h
+++ b/keyboards/geekboards/tester/config.h
@@ -55,9 +55,8 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110101
-# define DRIVER_COUNT 2
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SCL
# define DRIVER_1_LED_TOTAL 8
# define DRIVER_2_LED_TOTAL 0
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/geekboards/tester/tester.c b/keyboards/geekboards/tester/tester.c
index 05b220250f..187d887d58 100644
--- a/keyboards/geekboards/tester/tester.c
+++ b/keyboards/geekboards/tester/tester.c
@@ -1,6 +1,6 @@
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/geistmaschine/macropod/rules.mk b/keyboards/geistmaschine/macropod/rules.mk
index cf2b38601e..53d35b5bc6 100644
--- a/keyboards/geistmaschine/macropod/rules.mk
+++ b/keyboards/geistmaschine/macropod/rules.mk
@@ -2,4 +2,4 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += pca9555.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c \ No newline at end of file
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/geonworks/frogmini/fmh/info.json b/keyboards/geonworks/frogmini/fmh/info.json
index a8c0645a70..7b381bc587 100644
--- a/keyboards/geonworks/frogmini/fmh/info.json
+++ b/keyboards/geonworks/frogmini/fmh/info.json
@@ -13,6 +13,9 @@
"rows": ["A3", "A2", "A1", "B8", "A7", "C0"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32F401",
"bootloader": "stm32-dfu",
"layout_aliases": {
diff --git a/keyboards/geonworks/frogmini/fmh/rules.mk b/keyboards/geonworks/frogmini/fmh/rules.mk
index 1f63f8feef..1775ec5c41 100644
--- a/keyboards/geonworks/frogmini/fmh/rules.mk
+++ b/keyboards/geonworks/frogmini/fmh/rules.mk
@@ -13,6 +13,3 @@ LTO_ENABLE = no
ENCODER_ENABLE = no
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/geonworks/frogmini/fms/info.json b/keyboards/geonworks/frogmini/fms/info.json
index b64392cc23..ada9188e37 100644
--- a/keyboards/geonworks/frogmini/fms/info.json
+++ b/keyboards/geonworks/frogmini/fms/info.json
@@ -13,6 +13,9 @@
"rows": ["A3", "A2", "A1", "B8", "A7", "C0"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"backlight": {
"pin": "A10",
"levels": 20
diff --git a/keyboards/geonworks/frogmini/fms/rules.mk b/keyboards/geonworks/frogmini/fms/rules.mk
index dfd36d0f82..19b8048589 100644
--- a/keyboards/geonworks/frogmini/fms/rules.mk
+++ b/keyboards/geonworks/frogmini/fms/rules.mk
@@ -13,6 +13,3 @@ LTO_ENABLE = no
ENCODER_ENABLE = no
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/gh60/satan/keymaps/jarred/keymap.c b/keyboards/gh60/satan/keymaps/jarred/keymap.c
deleted file mode 100644
index 7f7436bea7..0000000000
--- a/keyboards/gh60/satan/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,22 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define _QW 0
-#define _NV 1
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QW] = LAYOUT_60_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_BSLS,
- MO(_NV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI, KC_APP, KC_RCTL),
-
-[_NV] = LAYOUT_60_ansi(
- KC_GRV ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,_______,
- _______,_______,_______,_______,KC_DEL ,KC_BSPC,_______,KC_HOME,KC_UP ,KC_END ,KC_INS ,_______,_______,_______,
- _______,_______,_______,KC_LSFT,KC_LCTL,KC_ENT ,_______,KC_LEFT,KC_DOWN,KC_RGHT,KC_DEL ,KC_DEL , _______,
- _______,_______,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______,_______,_______,
- _______,_______,_______, _______, _______,_______, QK_BOOT, _______),
-
-};
diff --git a/keyboards/gh60/satan/keymaps/jarred/readme.md b/keyboards/gh60/satan/keymaps/jarred/readme.md
deleted file mode 100644
index 522cb19b65..0000000000
--- a/keyboards/gh60/satan/keymaps/jarred/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# Jarred's Satan GH60 layout
diff --git a/keyboards/gizmo_engineering/gk6/config.h b/keyboards/gizmo_engineering/gk6/config.h
index ba683e4fed..c405eeaf0a 100755
--- a/keyboards/gizmo_engineering/gk6/config.h
+++ b/keyboards/gizmo_engineering/gk6/config.h
@@ -18,10 +18,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
// RGB Matrix
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/gizmo_engineering/gk6/gk6.c b/keyboards/gizmo_engineering/gk6/gk6.c
index e28f5d43c7..18883727b8 100755
--- a/keyboards/gizmo_engineering/gk6/gk6.c
+++ b/keyboards/gizmo_engineering/gk6/gk6.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C1_8, C2_8, C3_8}, //0 led1
{0, C1_7, C2_7, C3_7}, //1 led2
{0, C1_6, C2_6, C3_6}, //2 led3
diff --git a/keyboards/gkeyboard/gpad8_2r/config.h b/keyboards/gkeyboard/gpad8_2r/config.h
index 0691d106b7..88debbe193 100644
--- a/keyboards/gkeyboard/gpad8_2r/config.h
+++ b/keyboards/gkeyboard/gpad8_2r/config.h
@@ -3,8 +3,6 @@
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 8
-
#define RGB_MATRIX_LED_COUNT 16
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/gkeyboard/gpad8_2r/info.json b/keyboards/gkeyboard/gpad8_2r/info.json
index 2111d58cc4..9aa63091c9 100644
--- a/keyboards/gkeyboard/gpad8_2r/info.json
+++ b/keyboards/gkeyboard/gpad8_2r/info.json
@@ -25,6 +25,9 @@
"rows": ["GP4", "GP5", "GP6"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 8
+ },
"encoder": {
"enabled": true,
"rotary": [
diff --git a/keyboards/glenpickle/chimera_ergo/rules.mk b/keyboards/glenpickle/chimera_ergo/rules.mk
index 32eca4db31..f543b5fd9a 100644
--- a/keyboards/glenpickle/chimera_ergo/rules.mk
+++ b/keyboards/glenpickle/chimera_ergo/rules.mk
@@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/glenpickle/chimera_ls/rules.mk b/keyboards/glenpickle/chimera_ls/rules.mk
index 1ee3fc58f9..706d610653 100644
--- a/keyboards/glenpickle/chimera_ls/rules.mk
+++ b/keyboards/glenpickle/chimera_ls/rules.mk
@@ -14,7 +14,7 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
diff --git a/keyboards/glenpickle/chimera_ortho/rules.mk b/keyboards/glenpickle/chimera_ortho/rules.mk
index 32eca4db31..f543b5fd9a 100644
--- a/keyboards/glenpickle/chimera_ortho/rules.mk
+++ b/keyboards/glenpickle/chimera_ortho/rules.mk
@@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/glenpickle/chimera_ortho_plus/rules.mk b/keyboards/glenpickle/chimera_ortho_plus/rules.mk
index 6b1876f87c..539a2d1004 100644
--- a/keyboards/glenpickle/chimera_ortho_plus/rules.mk
+++ b/keyboards/glenpickle/chimera_ortho_plus/rules.mk
@@ -15,4 +15,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/gmmk/gmmk2/p65/ansi/ansi.c b/keyboards/gmmk/gmmk2/p65/ansi/ansi.c
index 2ed8874491..774006d529 100644
--- a/keyboards/gmmk/gmmk2/p65/ansi/ansi.c
+++ b/keyboards/gmmk/gmmk2/p65/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to AW20216S manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/gmmk/gmmk2/p65/ansi/info.json b/keyboards/gmmk/gmmk2/p65/ansi/info.json
index 902d1b6b5d..cd9296b81a 100644
--- a/keyboards/gmmk/gmmk2/p65/ansi/info.json
+++ b/keyboards/gmmk/gmmk2/p65/ansi/info.json
@@ -12,7 +12,7 @@
"tap_keycode_delay": 10
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
diff --git a/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/keymap.c b/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/keymap.c
deleted file mode 100644
index 6d88e11674..0000000000
--- a/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/keymap.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2022 Eugenio Pastoral
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "vnmm.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Keymap WIN_BASE: Base Layer (Default Layer)
- */
-[WIN_BASE] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, WIN_F, KC_LEFT, KC_DOWN, KC_RGHT),
-
- /* Keymap MAC_BASE: Alternate base layer available if I end up on macbook.
- */
-[MAC_BASE] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MAC_F, KC_LEFT, KC_DOWN, KC_RGHT),
-
-
- /* Keymap WIN_FN: Function Layer WIN_BASE
- */
-[WIN_FN] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, KC_VOLU, KC_MPLY,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
-
- /* Keymap MAC_FN: Function Layer for MAC_BASE
- */
-[MAC_FN] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, KC_VOLU, KC_MPLY,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
-};
diff --git a/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/readme.md b/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/readme.md
deleted file mode 100644
index d39bdb6e8d..0000000000
--- a/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Vnmm's ANSI GMMKV2 65% Layout
-
-This keymap builds on archrovisual's but with some changes and uses the default key placements
-
-## Features
-
-- Alphabet keys light up red when caps lock is on
-- Pressing FN shows keys that have a definition
-- Via enabled
-- Quick reset with fn+space
diff --git a/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/rules.mk b/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/rules.mk
deleted file mode 100644
index 96d2d189b2..0000000000
--- a/keyboards/gmmk/gmmk2/p65/ansi/keymaps/vnmm/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-VIA_ENABLE = yes
-MOUSEKEY_ENABLE = no
diff --git a/keyboards/gmmk/gmmk2/p65/ansi/rules.mk b/keyboards/gmmk/gmmk2/p65/ansi/rules.mk
index 1b4692a621..2d2e9895fd 100644
--- a/keyboards/gmmk/gmmk2/p65/ansi/rules.mk
+++ b/keyboards/gmmk/gmmk2/p65/ansi/rules.mk
@@ -11,5 +11,3 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality.
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow.
AUDIO_ENABLE = no # Audio output.
RGB_MATRIX_ENABLE = yes # Enable RGB matrix effects.
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
diff --git a/keyboards/gmmk/gmmk2/p65/config.h b/keyboards/gmmk/gmmk2/p65/config.h
index 3c6a2fd906..ce9ff69433 100644
--- a/keyboards/gmmk/gmmk2/p65/config.h
+++ b/keyboards/gmmk/gmmk2/p65/config.h
@@ -29,12 +29,11 @@
#define SPI_MOSI_PIN B15
#define SPI_MISO_PIN B14
-#define DRIVER_1_CS A15
-#define DRIVER_2_CS B9
-#define DRIVER_1_EN C13
-#define DRIVER_2_EN C13
+#define AW20216S_CS_PIN_1 A15
+#define AW20216S_CS_PIN_2 B9
+#define AW20216S_EN_PIN_1 C13
+#define AW20216S_EN_PIN_2 C13
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 54
#define DRIVER_2_LED_TOTAL 34
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/gmmk/gmmk2/p65/iso/info.json b/keyboards/gmmk/gmmk2/p65/iso/info.json
index 90609dc911..c286cb7ba0 100644
--- a/keyboards/gmmk/gmmk2/p65/iso/info.json
+++ b/keyboards/gmmk/gmmk2/p65/iso/info.json
@@ -12,7 +12,7 @@
"tap_keycode_delay": 10
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
@@ -24,8 +24,9 @@
},
"processor": "WB32F3G71",
"bootloader": "wb32-dfu",
+ "community_layouts": ["65_iso_blocker"],
"layouts": {
- "LAYOUT": {
+ "LAYOUT_65_iso_blocker": {
"layout": [
{"matrix": [1, 3], "x": 0, "y": 0},
{"matrix": [1, 7], "x": 1, "y": 0},
@@ -56,7 +57,6 @@
{"matrix": [8, 0], "x": 10.5, "y": 1},
{"matrix": [8, 1], "x": 11.5, "y": 1},
{"matrix": [6, 1], "x": 12.5, "y": 1},
- {"matrix": [8, 4], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"matrix": [2, 6], "x": 15, "y": 1},
{"matrix": [2, 1], "x": 0, "y": 2, "w": 1.75},
@@ -72,6 +72,7 @@
{"matrix": [8, 2], "x": 10.75, "y": 2},
{"matrix": [8, 3], "x": 11.75, "y": 2},
{"matrix": [7, 5], "x": 12.75, "y": 2},
+ {"matrix": [8, 4], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"matrix": [6, 5], "x": 15, "y": 2},
{"matrix": [0, 0], "x": 0, "y": 3, "w": 1.25},
diff --git a/keyboards/gmmk/gmmk2/p65/iso/iso.c b/keyboards/gmmk/gmmk2/p65/iso/iso.c
index a296844f44..80c0dc2e0d 100644
--- a/keyboards/gmmk/gmmk2/p65/iso/iso.c
+++ b/keyboards/gmmk/gmmk2/p65/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to AW20216S manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/gmmk/gmmk2/p65/iso/keymaps/default/keymap.c b/keyboards/gmmk/gmmk2/p65/iso/keymaps/default/keymap.c
index 1ab85d7f0a..6a3da299a2 100644
--- a/keyboards/gmmk/gmmk2/p65/iso/keymaps/default/keymap.c
+++ b/keyboards/gmmk/gmmk2/p65/iso/keymaps/default/keymap.c
@@ -26,19 +26,19 @@ enum custom_layers {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
-[_BL] = LAYOUT(
+[_BL] = LAYOUT_65_iso_blocker(
QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_PGDN,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_PGUP,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
-[_FL] = LAYOUT(
+[_FL] = LAYOUT_65_iso_blocker(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, RGB_HUI, RGB_HUD, RGB_SPD, RGB_SPI, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, _______, RGB_VAI, KC_HOME,
_______, _______, _______, QK_BOOT, _______, _______, RGB_RMOD, RGB_VAD, RGB_MOD)
};
diff --git a/keyboards/gmmk/gmmk2/p65/iso/keymaps/via/keymap.c b/keyboards/gmmk/gmmk2/p65/iso/keymaps/via/keymap.c
index 6146e7817f..f0fe740042 100644
--- a/keyboards/gmmk/gmmk2/p65/iso/keymaps/via/keymap.c
+++ b/keyboards/gmmk/gmmk2/p65/iso/keymaps/via/keymap.c
@@ -19,32 +19,32 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
-[0] = LAYOUT(
+[0] = LAYOUT_65_iso_blocker(
QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_PGDN,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_PGUP,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
-[1] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+[1] = LAYOUT_65_iso_blocker(
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_INS,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, RGB_HUI, RGB_HUD, RGB_SPD, RGB_SPI, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, _______, RGB_VAI, KC_HOME,
_______, _______, _______, QK_BOOT, _______, _______, RGB_RMOD, RGB_VAD, RGB_MOD),
-[2] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+[2] = LAYOUT_65_iso_blocker(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
-[3] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______),
+[3] = LAYOUT_65_iso_blocker(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______)
};
diff --git a/keyboards/gmmk/gmmk2/p65/iso/rules.mk b/keyboards/gmmk/gmmk2/p65/iso/rules.mk
index 1b4692a621..2d2e9895fd 100644
--- a/keyboards/gmmk/gmmk2/p65/iso/rules.mk
+++ b/keyboards/gmmk/gmmk2/p65/iso/rules.mk
@@ -11,5 +11,3 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality.
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow.
AUDIO_ENABLE = no # Audio output.
RGB_MATRIX_ENABLE = yes # Enable RGB matrix effects.
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
diff --git a/keyboards/gmmk/gmmk2/p96/ansi/ansi.c b/keyboards/gmmk/gmmk2/p96/ansi/ansi.c
index 467765e435..bc05ab6301 100644
--- a/keyboards/gmmk/gmmk2/p96/ansi/ansi.c
+++ b/keyboards/gmmk/gmmk2/p96/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to AW20216S manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/gmmk/gmmk2/p96/ansi/info.json b/keyboards/gmmk/gmmk2/p96/ansi/info.json
index cb0ecf9445..e4eaddbfe8 100644
--- a/keyboards/gmmk/gmmk2/p96/ansi/info.json
+++ b/keyboards/gmmk/gmmk2/p96/ansi/info.json
@@ -12,13 +12,20 @@
"tap_keycode_delay": 10
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
"rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"processor": "WB32F3G71",
"bootloader": "wb32-dfu",
"layouts": {
diff --git a/keyboards/gmmk/gmmk2/p96/ansi/rules.mk b/keyboards/gmmk/gmmk2/p96/ansi/rules.mk
index a076e01916..2d2e9895fd 100644
--- a/keyboards/gmmk/gmmk2/p96/ansi/rules.mk
+++ b/keyboards/gmmk/gmmk2/p96/ansi/rules.mk
@@ -11,5 +11,3 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality.
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow.
AUDIO_ENABLE = no # Audio output.
RGB_MATRIX_ENABLE = yes # Enable RGB matrix effects.
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
diff --git a/keyboards/gmmk/gmmk2/p96/config.h b/keyboards/gmmk/gmmk2/p96/config.h
index e3b5cdcfa1..fb21c571f5 100644
--- a/keyboards/gmmk/gmmk2/p96/config.h
+++ b/keyboards/gmmk/gmmk2/p96/config.h
@@ -25,7 +25,6 @@
/* External spi flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14
-#define WEAR_LEVELING_BACKING_SIZE 2048
/* SPI Config for LED Driver */
#define SPI_DRIVER SPIDQ
@@ -33,12 +32,11 @@
#define SPI_MOSI_PIN A7
#define SPI_MISO_PIN A6
-#define DRIVER_1_CS A15
-#define DRIVER_2_CS B15
-#define DRIVER_1_EN C13
-#define DRIVER_2_EN C13
+#define AW20216S_CS_PIN_1 A15
+#define AW20216S_CS_PIN_2 B15
+#define AW20216S_EN_PIN_1 C13
+#define AW20216S_EN_PIN_2 C13
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 66
#define DRIVER_2_LED_TOTAL 54
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/gmmk/gmmk2/p96/iso/info.json b/keyboards/gmmk/gmmk2/p96/iso/info.json
index 788aa7393b..d9f53b76f1 100644
--- a/keyboards/gmmk/gmmk2/p96/iso/info.json
+++ b/keyboards/gmmk/gmmk2/p96/iso/info.json
@@ -12,13 +12,20 @@
"tap_keycode_delay": 10
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
"rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"processor": "WB32F3G71",
"bootloader": "wb32-dfu",
"layouts": {
diff --git a/keyboards/gmmk/gmmk2/p96/iso/iso.c b/keyboards/gmmk/gmmk2/p96/iso/iso.c
index 40d28818b0..f6b3528cb4 100644
--- a/keyboards/gmmk/gmmk2/p96/iso/iso.c
+++ b/keyboards/gmmk/gmmk2/p96/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to AW20216S manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/gmmk/gmmk2/p96/iso/rules.mk b/keyboards/gmmk/gmmk2/p96/iso/rules.mk
index a076e01916..2d2e9895fd 100644
--- a/keyboards/gmmk/gmmk2/p96/iso/rules.mk
+++ b/keyboards/gmmk/gmmk2/p96/iso/rules.mk
@@ -11,5 +11,3 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality.
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow.
AUDIO_ENABLE = no # Audio output.
RGB_MATRIX_ENABLE = yes # Enable RGB matrix effects.
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
diff --git a/keyboards/gmmk/numpad/config.h b/keyboards/gmmk/numpad/config.h
index 6aa0a6c016..3627ab503c 100644
--- a/keyboards/gmmk/numpad/config.h
+++ b/keyboards/gmmk/numpad/config.h
@@ -28,16 +28,13 @@
#define SPI_MOSI_PIN B5
#define SPI_MISO_PIN B4
-#define DRIVER_1_CS B12
-#define DRIVER_1_EN A15
-#define DRIVER_1_PW_EN B13
-
-#define DRIVER_COUNT 1
+#define AW20216S_CS_PIN_1 B12
+#define AW20216S_EN_PIN_1 A15
+#define AW20216S_PW_EN_PIN_1 B13
#define RGB_MATRIX_LED_COUNT 31
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B6
-#define WEAR_LEVELING_BACKING_SIZE 2048
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
diff --git a/keyboards/gmmk/numpad/info.json b/keyboards/gmmk/numpad/info.json
index 604a49b503..83f7d840dc 100644
--- a/keyboards/gmmk/numpad/info.json
+++ b/keyboards/gmmk/numpad/info.json
@@ -8,13 +8,20 @@
"pid": "0x5088",
"device_version": "0.0.1"
},
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "A2", "pin_b": "A1"}
]
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"processor": "WB32F3G71",
"bootloader": "wb32-dfu",
diff --git a/keyboards/gmmk/numpad/numpad.c b/keyboards/gmmk/numpad/numpad.c
index f1a46170fd..5cdb34c7bd 100644
--- a/keyboards/gmmk/numpad/numpad.c
+++ b/keyboards/gmmk/numpad/numpad.c
@@ -19,16 +19,13 @@
#ifdef RGB_MATRIX_ENABLE
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
-/* Each AW20216 channel is controlled by a register at some offset between 0x00
- * and 0xD7 inclusive.
- * See drivers/awinic/aw20216.h for the mapping between register offsets and
- * driver pin locations.
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to AW20216S manual for these locations
* driver
* | R location
- * | | G location
- * | | | B location
- * | | | | */
+ * | | G location
+ * | | | B location
+ * | | | | */
{0, CS4_SW1, CS5_SW1, CS6_SW1 }, // 0 NUM
{0, CS4_SW2, CS5_SW2, CS6_SW2 }, // 1 /
{0, CS7_SW1, CS8_SW1, CS9_SW1 }, // 2 *
@@ -110,12 +107,12 @@ led_config_t g_led_config = {{
2, 2, 2, 2, 2, 2, 2
} };
-# ifdef DRIVER_1_PW_EN
+# ifdef AW20216S_PW_EN_PIN_1
void keyboard_pre_init_user(void) {
wait_ms(2000);
- setPinOutput(DRIVER_1_PW_EN);
- writePinHigh(DRIVER_1_PW_EN);
+ setPinOutput(AW20216S_PW_EN_PIN_1);
+ writePinHigh(AW20216S_PW_EN_PIN_1);
}
# endif
diff --git a/keyboards/gmmk/numpad/rules.mk b/keyboards/gmmk/numpad/rules.mk
index 5a0d3e34f8..d289eb81a4 100644
--- a/keyboards/gmmk/numpad/rules.mk
+++ b/keyboards/gmmk/numpad/rules.mk
@@ -16,10 +16,8 @@ MIDI_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
LTO_ENABLE = yes
-SRC += analog.c \
- matrix.c \ No newline at end of file
+ANALOG_DRIVER_REQUIRED = yes
+
+SRC += matrix.c
diff --git a/keyboards/gmmk/pro/config.h b/keyboards/gmmk/pro/config.h
index 069823663e..995dd95ec8 100644
--- a/keyboards/gmmk/pro/config.h
+++ b/keyboards/gmmk/pro/config.h
@@ -26,12 +26,10 @@
#define SPI_MOSI_PIN A6
#define SPI_MISO_PIN A7
-#define DRIVER_1_CS B13
-#define DRIVER_2_CS B14
-#define DRIVER_1_EN C13
-#define DRIVER_2_EN C13
-
-#define DRIVER_COUNT 2
+#define AW20216S_CS_PIN_1 B13
+#define AW20216S_CS_PIN_2 B14
+#define AW20216S_EN_PIN_1 C13
+#define AW20216S_EN_PIN_2 C13
#define RGB_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/gmmk/pro/rev1/ansi/ansi.c b/keyboards/gmmk/pro/rev1/ansi/ansi.c
index 9cd6a3739c..a06594cb88 100644
--- a/keyboards/gmmk/pro/rev1/ansi/ansi.c
+++ b/keyboards/gmmk/pro/rev1/ansi/ansi.c
@@ -136,7 +136,7 @@ led_config_t g_led_config = {{
4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
}};
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
{0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
{0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
diff --git a/keyboards/gmmk/pro/rev1/ansi/info.json b/keyboards/gmmk/pro/rev1/ansi/info.json
index 7e0adbdb05..fc2197a0d7 100644
--- a/keyboards/gmmk/pro/rev1/ansi/info.json
+++ b/keyboards/gmmk/pro/rev1/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "0.0.1"
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/config.h
deleted file mode 100644
index 16ac4f2407..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/config.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Copyright 2021 Choi Byungyoon <byungyoonc@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define RGB_MATRIX_KEYPRESSES
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-// #define ENABLE_RGB_MATRIX_ALPHAS_MODS
-// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-// #define ENABLE_RGB_MATRIX_BREATHING
-#undef ENABLE_RGB_MATRIX_BAND_SAT
-#undef ENABLE_RGB_MATRIX_BAND_VAL
-#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-// #define ENABLE_RGB_MATRIX_CYCLE_ALL
-// #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-// #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-// #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#undef ENABLE_RGB_MATRIX_DUAL_BEACON
-#undef ENABLE_RGB_MATRIX_RAINBOW_BEACON
-#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-// #define ENABLE_RGB_MATRIX_RAINDROPS
-// #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-#undef ENABLE_RGB_MATRIX_HUE_BREATHING
-#undef ENABLE_RGB_MATRIX_HUE_PENDULUM
-#undef ENABLE_RGB_MATRIX_HUE_WAVE
-// #define ENABLE_RGB_MATRIX_PIXEL_RAIN
-#undef ENABLE_RGB_MATRIX_PIXEL_FLOW
-#undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-// #define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-// #define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-#undef ENABLE_RGB_MATRIX_SPLASH
-// #define ENABLE_RGB_MATRIX_MULTISPLASH
-#undef ENABLE_RGB_MATRIX_SOLID_SPLASH
-// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-
-#undef DEBOUNCE
-/* High debounce time is required to avoid key chattering because of the debouncing algorithm sym_eager_pk */
-#define DEBOUNCE 40
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/keymap.c
deleted file mode 100644
index 487e6dc04e..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/keymap.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Copyright 2021 Choi Byungyoon <byungyoonc@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "byungyoonc.h"
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mic Mute)
-// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc TaskMgr
-// Tab Q W E R T Y U I O P [ ] \ Del
-// Caps A S D F G H J K L ; " Enter Home
-// Sh_L Z X C V B N M , . ? Sh_R Up End
-// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
-
- [0] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MMUT,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_TASK,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [1] = LAYOUT(
- _______, KC_BRID, KC_BRIU, KC_CALC, KC_MSEL, RGB_VAD, RGB_VAI, KC_MRWD, KC_MPLY, KC_MFFD, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
- _______, KC_SEC1, KC_SEC2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DB_TOGG, _______,
- _______, _______, _______, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
- _______, _______, _______, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, RGB_HUI, RGB_HUD, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______,
- _______, GUI_TOG, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
-
-
-};
-// clang-format on
-
-bool process_record_user_kb(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- rgblight_increase_hue();
- }
- return true;
-}
-
-#if defined(ENCODER_ENABLE)
-bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t mod_state = get_mods();
- if (mod_state & MOD_MASK_CTRL) {
- unregister_mods(MOD_MASK_CTRL);
- if (clockwise) {
- tap_code16(LCTL(KC_RGHT));
- } else {
- tap_code16(LCTL(KC_LEFT));
- }
- set_mods(mod_state);
- } else {
- if (clockwise) {
- tap_code16(KC_VOLU);
- } else {
- tap_code16(KC_VOLD);
- }
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
-}
-#endif // ENCODER_ENABLE
-
-static void set_rgb_caps_leds(void);
-
-static void set_rgb_caps_leds(void) {
- rgb_matrix_set_color(73, 0xFF, 0x77, 0x77); // Left side LED 3
- rgb_matrix_set_color(74, 0xFF, 0x77, 0x77); // Right side LED 3
- rgb_matrix_set_color(76, 0xFF, 0x77, 0x77); // Left side LED 4
- rgb_matrix_set_color(77, 0xFF, 0x77, 0x77); // Right side LED 4
- rgb_matrix_set_color(80, 0xFF, 0x77, 0x77); // Left side LED 5
- rgb_matrix_set_color(81, 0xFF, 0x77, 0x77); // Right side LED 5
- rgb_matrix_set_color(83, 0xFF, 0x77, 0x77); // Left side LED 6
- rgb_matrix_set_color(84, 0xFF, 0x77, 0x77); // Right side LED 6
- rgb_matrix_set_color(3, 0xFF, 0x77, 0x77); // CAPS LED
-}
-
-static void set_rgb_nlck_notset_leds(void);
-
-static void set_rgb_wlck_leds(void);
-
-static void set_rgb_nlck_notset_leds(void) {
- rgb_matrix_set_color(67, 0x77, 0x77, 0xFF); // Left side LED 1
- rgb_matrix_set_color(68, 0x77, 0x77, 0xFF); // Right side LED 1
- rgb_matrix_set_color(70, 0x77, 0x77, 0xFF); // Left side LED 2
- rgb_matrix_set_color(71, 0x77, 0x77, 0xFF); // Right side LED 2
-}
-
-static void set_rgb_wlck_leds(void) {
- rgb_matrix_set_color(87, 0x77, 0xFF, 0x77); // Left side LED 7
- rgb_matrix_set_color(88, 0x77, 0xFF, 0x77); // Right side LED 7
- rgb_matrix_set_color(91, 0x77, 0xFF, 0x77); // Left side LED 8
- rgb_matrix_set_color(92, 0x77, 0xFF, 0x77); // Right side LED 8
-}
-
-bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- led_t led_state = host_keyboard_led_state();
- if (led_state.caps_lock) {
- set_rgb_caps_leds();
- }
- if (!led_state.num_lock) {
- set_rgb_nlck_notset_leds();
- }
- if (keymap_config.no_gui) {
- set_rgb_wlck_leds();
- }
- return false;
-}
-
-void matrix_output_unselect_delay(uint8_t line, bool key_pressed) {
- for (int i = 0; i < 20; i++) {
- wait_cpuclock(STM32_SYSCLK / 1000000L);
- }
-}
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/readme.md
deleted file mode 100644
index d340bf86ed..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/readme.md
+++ /dev/null
@@ -1,41 +0,0 @@
-byungyoonc's GMMK Pro Layout
-============================
-
-## Keymap
-
-### Base Layer
-![GMMK Pro Base Layer Layout Image](https://i.imgur.com/VvEL08Q.png)
-
-Made a bit of a change on the leftmost side of the keyboard to set Home and End closer to the arrow keys. Also uses a shortcut for Windows Task Manager, Windows PowerToys microphone mute.
-
-### Fn Layer
-![GMMK Pro Fn Layer Layout Image](https://i.imgur.com/uQy2gSh.png)
-
-F-row media functions roughly matches the Keychron keyboard's layout.
-
-Added Debug key for faster debugging iteration.
-
-Supports Secrets input by Fn + Numbers.
-
-The rest are pretty self-explanatory RGB controls, a GUI toggle and an NKRO toggle.
-
-## Rotary Encoder Rotation
-Volume control when no mods, Ctrl+Left/Right when Ctrl is pressed while rotating the encoder.
-
-## RGB Indicators
-Uses side strap RGB as the RGB indicators.
-- Top third lights on when the Num Lock is turned off.
-- Middle third lights on when the Caps Lock is turned on.
-- Bottom third lights on when the GUI is disabled (via `GUI_TOG`).
-
-## Debounce
-Uses the `DEBOUNCE_TYPE` of `sym_eager_pk` for the shortest response time possible, and `DEBOUNCE` time of `40` in order to eliminate any key chattering.
-
-## NKRO
-N-key rollover is turned on by default.
-
-## RGB Matrix
-Keypresses effects are enabled.
-Disabled default several RGB effects.
-Added custom RGB matrix effect `saturated_solid_multisplash`.
-Every keypress increases the RGB hue value.
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rgb_matrix_user.inc b/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rgb_matrix_user.inc
deleted file mode 100644
index 0d61e19f4c..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rgb_matrix_user.inc
+++ /dev/null
@@ -1 +0,0 @@
-#include "saturated_solid_multisplash.h"
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rules.mk
deleted file mode 100644
index 08f832c51b..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/byungyoonc/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-DEBOUNCE_TYPE = sym_eager_pk
-RGB_MATRIX_CUSTOM_USER = yes
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/keymap.c
deleted file mode 100644
index c00ba602f7..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/keymap.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/* Copyright 2021 Cedrik Lussier @cedrikl
-.* Directly inspired from the work of jonavin https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/ansi/keymaps/jonavin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "rgb_matrix_map.h"
-#include "cedrikl.h"
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
-// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del
-// Tab Q W E R T Y U I O P [ ] \ PgUp
-// Caps A S D F G H J K L ; " Enter PgDn
-// Sh_L Z X C V B N M , . ? Sh_R Up End
-// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
-
-
- // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without
- // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB
- // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI
- // if that's your preference.
- //
- // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and
- // it'll be back to normal when you plug it back in.
- //
- // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO).
- // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience.
- // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts.
- [0] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [1] = LAYOUT(
- EE_CLR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_MUTE,
- KC_NUM, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_BSPC, KC_PSCR,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_PSLS, KC_PAST, KC_BSLS, KC_PGUP,
- KC_CAPS, RGB_VAD, RGB_TOG, RGB_VAI, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_PENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_PDOT, KC_SLSH, KC_RSFT, KC_UP, KC_INS,
- KC_LCTL, KC_RGUI, KC_LALT, KC_SPC, KC_RALT, KC_NO, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- )
-};
-// clang-format on
-
-#ifdef ENCODER_ENABLE
- bool encoder_update_user(uint8_t index, bool clockwise) {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
- }
-#endif // ENCODER_ENABLE
-
-
-#ifdef RGB_MATRIX_ENABLE
-//void set_layer_rgb(uint8_t led_min, uint8_t led_max, int layer) {
-// const ledmap *l = &(ledmaps[layer]);
-//
-//
-//
-// for (int i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
-// HSV hsv = {
-// .h = (*l)[i][0],
-// .s = (*l)[i][1],
-// .v = val,
-// };
-//
-// if (hsv.h || hsv.s) {
-// RGB rgb = hsv_to_rgb(hsv);
-// RGB_MATRIX_INDICATOR_SET_COLOR(i, rgb.r, rgb.g, rgb.b);
-// }
-// }
-//}
-
- // These shorthands are used below to set led colors on each matrix cycle
- void loop_colorset(const uint8_t *indices, int array_size, const HSV target_color) {
- HSV work_color = target_color;
- work_color.v = rgb_matrix_get_val();
-
- RGB final_color = hsv_to_rgb(work_color);
-
- for (int i = 0; i < array_size; i++) {
- rgb_matrix_set_color(indices[i], final_color.r, final_color.g, final_color.b); // Set color A here
- }
- }
-
- // Capslock, Scroll lock and Numlock indicator on Left side lights.
- bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- loop_colorset(LED_REGION_A, ARRAY_SIZE(LED_REGION_A),
- hsv_cl_blue);
- loop_colorset(LED_REGION_B, ARRAY_SIZE(LED_REGION_B),
- hsv_cl_purple);
- loop_colorset(LED_REGION_L_SIDE, ARRAY_SIZE(LED_REGION_L_SIDE),
- hsv_cl_purple);
- loop_colorset(LED_REGION_R_SIDE, ARRAY_SIZE(LED_REGION_R_SIDE),
- hsv_cl_purple);
-
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case 1: //layer 1
- //rgb_matrix_set_color_all(RGB_AZURE);
- loop_colorset(LED_REGION_NUMPAD,
- ARRAY_SIZE(LED_REGION_NUMPAD), hsv_cl_numpad);
- loop_colorset(LED_REGION_OTHER, ARRAY_SIZE(LED_REGION_OTHER),
- hsv_cl_mods);
- break;
- default: //layer 0
- //
- break;
- break;
- }
-
- HSV bad_hsv = hsv_cl_bad;
- bad_hsv.v = rgb_matrix_get_val();
- RGB bad_rgb = hsv_to_rgb(bad_hsv);
- led_t led_state = host_keyboard_led_state();
-
- if (!led_state.num_lock) { // on if NUM lock is OFF
- rgb_matrix_set_color(LED_R1, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R2, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R3, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R4, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R5, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R6, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R7, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_R8, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- }
- if (led_state.caps_lock) {
- rgb_matrix_set_color(LED_L1, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L2, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L3, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L4, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L5, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L6, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L7, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- rgb_matrix_set_color(LED_L8, bad_rgb.r, bad_rgb.g, bad_rgb.b);
- loop_colorset(LED_REGION_CAPS, ARRAY_SIZE(LED_REGION_CAPS),
- hsv_cl_bad);
- }
- return false;
- }
-#endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rgb_matrix_map.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rgb_matrix_map.h
deleted file mode 100644
index 484f64b74c..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rgb_matrix_map.h
+++ /dev/null
@@ -1,185 +0,0 @@
-/* Copyright 2021 Cedrik Lussier @cedrikl
-.* Directly inspired from the work of jonavin https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/ansi/keymaps/jonavin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef RGB_MATRIX_ENABLE
-
- // Custom RGB Colours
- const HSV hsv_cl_blue = {150, 255, 255};
- const HSV hsv_cl_purple = {188, 255, 255};
- const HSV hsv_cl_numpad = {85, 255, 255};
- const HSV hsv_cl_mods = {42, 255, 255};
- const HSV hsv_cl_bad = {0, 255, 255};
-
- // RGB LED locations
- enum led_location_map {
- LED_ESC, // 0, ESC, k13
- LED_GRV, // 1, ~, k16
- LED_TAB, // 2, Tab, k11
- LED_CAPS, // 3, Caps, k21
- LED_LSFT, // 4, Sh_L, k00
- LED_LCTL, // 5, Ct_L, k06
- LED_F1, // 6, F1, k26
- LED_1, // 7, 1, k17
- LED_Q, // 8, Q, k10
- LED_A, // 9, A, k12
- LED_Z, // 10, Z, k14
- LED_LWIN, // 11, Win_L, k90
- LED_F2, // 12, F2, k36
- LED_2, // 13, 2, k27
- LED_W, // 14, W, k20
- LED_S, // 15, S, k22
- LED_X, // 16, X, k24
- LED_LALT, // 17, Alt_L, k93
- LED_F3, // 18, F3, k31
- LED_3, // 19, 3, k37
- LED_E, // 20, E, k30
- LED_D, // 21, D, k32
- LED_C, // 22, C, k34
- LED_F4, // 23, F4, k33
- LED_4, // 24, 4, k47
- LED_R, // 25, R, k40
- LED_F, // 26, F, k42
- LED_V, // 27, V, k44
- LED_F5, // 28, F5, k07
- LED_5, // 29, 5, k46
- LED_T, // 30, T, k41
- LED_G, // 31, G, k43
- LED_B, // 32, B, k45
- LED_SPC, // 33, SPACE, k94
- LED_F6, // 34, F6, k63
- LED_6, // 35, 6, k56
- LED_Y, // 36, Y, k51
- LED_H, // 37, H, k53
- LED_N, // 38, N, k55
- LED_F7, // 39, F7, k71
- LED_7, // 40, 7, k57
- LED_U, // 41, U, k50
- LED_J, // 42, J, k52
- LED_M, // 43, M, k54
- LED_F8, // 44, F8, k76
- LED_8, // 45, 8, k67
- LED_I, // 46, I, k60
- LED_K, // 47, K, k62
- LED_COMM, // 48, ,, k64
- LED_RALT, // 49, Alt_R, k95
- LED_F9, // 50, F9, ka6
- LED_9, // 51, 9, k77
- LED_O, // 52, O, k70
- LED_L, // 53, L, k72
- LED_DOT, // 54, ., k74
- LED_FN, // 55, FN, k92
- LED_F10, // 56, F10, ka7
- LED_0, // 57, 0, k87
- LED_P, // 58, P, k80
- LED_SCLN, // 59, ;, k82
- LED_SLSH, // 60, ?, k85
- LED_F11, // 61, F11, ka3
- LED_MINS, // 62, -, k86
- LED_LBRC, // 63, [, k81
- LED_QUOT, // 64, ", k83
- LED_RCTL, // 65, Ct_R, k04
- LED_F12, // 66, F12, ka5
- LED_L1, // 67, LED, l01
- LED_R1, // 68, LED, l11
- LED_DEL, // 69, Prt, k97 -- remapped to DEL
- LED_L2, // 70, LED, l02
- LED_R2, // 71, LED, l12
- LED_HOME, // 72, Del, k65
- LED_L3, // 73, LED, l03
- LED_R3, // 74, LED, l13
- LED_PGUP, // 75, PgUp, k15
- LED_L4, // 76, LED, l04
- LED_R4, // 77, LED, l14
- LED_EQL, // 78, =, k66
- LED_RGHT, // 79, Right, k05
- LED_L5, // 80, LED, l05
- LED_R5, // 81, LED, l15
- LED_END, // 82, End, k75
- LED_L6, // 83, LED, l06
- LED_R6, // 84, LED, l16
- LED_BSPC, // 85, BSpc, ka1
- LED_PGDN, // 86, PgDn, k25
- LED_L7, // 87, LED, l07
- LED_R7, // 88, LED, l17
- LED_RBRC, // 89, ], k61
- LED_RSFT, // 90, Sh_R, k91
- LED_L8, // 91, LED, l08
- LED_R8, // 92, LED, l18
- LED_BSLS, // 93, \, ka2
- LED_UP, // 94, Up, k35
- LED_LEFT, // 95, Left, k03
- LED_ENT, // 96, Enter, ka4
- LED_DOWN // 97, Down, k73
- };
-
-const uint8_t LED_REGION_L_SIDE[] = {LED_L1, LED_L2, LED_L3, LED_L4, LED_L5, LED_L6, LED_L7,LED_L8};
-const uint8_t LED_REGION_R_SIDE[] = {LED_R1, LED_R2, LED_R3, LED_R4, LED_R5, LED_R6, LED_R7,LED_R8};
-
- //const uint8_t LED_MATRIX[] = {
- // LED_ESC, LED_F1, LED_F2, LED_F3, LED_F4, LED_F5, LED_F6, LED_F7, LED_F8, LED_F9, LED_F10, LED_F11, LED_F12, LED_DEL,
- // LED_GRV, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, LED_BSPC, LED_HOME,
- // LED_TAB, LED_Q, LED_W, LED_E, LED_R, LED_T, LED_Y, LED_U, LED_I, LED_O, LED_P, LED_LBRC, LED_RBRC, LED_BSLS, LED_PGUP,
- // LED_CAPS, LED_A, LED_S, LED_D, LED_F, LED_G, LED_H, LED_J, LED_K, LED_L, LED_SCLN, LED_QUOT, LED_ENT, LED_PGDN,
- // LED_LSFT, LED_Z, LED_X, LED_C, LED_V, LED_B, LED_N, LED_M, LED_COMM, LED_DOT, LED_SLSH, LED_RSFT, LED_UP, LED_END,
- // LED_LCTL, LED_LWIN, LED_LALT, LED_SPC, LED_RALT, LED_FN, LED_RCTL, LED_LEFT, LED_DOWN, LED_RGHT
- //};
-
- const uint8_t LED_REGION_A[] = {
- LED_ESC, LED_F9, LED_F10, LED_F11, LED_F12, LED_DEL,
- LED_GRV, LED_1, LED_0, LED_MINS, LED_EQL, LED_BSPC, LED_HOME,
- LED_TAB, LED_Q, LED_P, LED_LBRC, LED_RBRC, LED_BSLS, LED_PGUP,
- LED_CAPS, LED_A, LED_SCLN, LED_QUOT, LED_ENT, LED_PGDN,
- LED_LSFT, LED_Z, LED_SLSH, LED_RSFT, LED_UP, LED_END,
- LED_LCTL, LED_LWIN, LED_LALT, LED_RCTL, LED_LEFT, LED_DOWN, LED_RGHT
- };
- const uint8_t LED_REGION_B[] = {
- LED_F1, LED_F2, LED_F3, LED_F4, LED_F5, LED_F6, LED_F7, LED_F8,
- LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9,
- LED_W, LED_E, LED_R, LED_T, LED_Y, LED_U, LED_I, LED_O,
- LED_S, LED_D, LED_F, LED_G, LED_H, LED_J, LED_K, LED_L,
- LED_X, LED_C, LED_V, LED_B, LED_N, LED_M, LED_COMM, LED_DOT,
- LED_SPC, LED_RALT, LED_FN
- };
-
- const uint8_t LED_REGION_NUMPAD[] = {
-
- LED_GRV, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL,
- LED_LBRC, LED_RBRC,
- LED_ENT,
- LED_DOT
-
- };
-
- const uint8_t LED_REGION_OTHER[] = {
- LED_ESC, LED_DEL,
- LED_HOME,
-
- LED_A, LED_S, LED_D,
- LED_END,
- LED_LWIN
- };
-
- const uint8_t LED_REGION_CAPS[] = {
-
- LED_GRV, LED_1,
- LED_TAB, LED_Q,
- LED_CAPS, LED_A,
- LED_LSFT,
- LED_LCTL
- };
-
-#endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rules.mk
deleted file mode 100644
index 4b7ed8bf0b..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/cedrikl/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-IDLE_TIMEOUT_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/config.h
deleted file mode 100644
index a0fbedde49..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/config.h
+++ /dev/null
@@ -1,146 +0,0 @@
-/* Copyright 2021 Jonavin Eng @Jonavin
- Copyright 2022 gourdo1 <gourdo1@outlook.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Force n-key rollover
-#define FORCE_NKRO
-
-// Set TT to two taps
-#define TAPPING_TOGGLE 2
-
-#ifdef COMMAND_ENABLE
-#define IS_COMMAND() (get_mods() == MOD_MASK_CTRL) //debug commands accessed by holding down both CTRLs: https://github.com/qmk/qmk_firmware/blob/master/docs/feature_command.md
-#endif
-
-// Caps Word configuration
-#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD
-#define CAPS_WORD_IDLE_TIMEOUT 10000 // Automatically turn off after x milliseconds of idle. 0 to never timeout.
-
-// Handle GRAVESC combo keys
-#define GRAVE_ESC_ALT_OVERRIDE
-// Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
-// Always send Escape if Control is pressed
-
-// #define TAPPING_TERM 180
-#define TAPPING_TERM 300
-#define TAPPING_TERM_PER_KEY
-
-#ifdef RGB_MATRIX_ENABLE
- #define RGB_DISABLE_WHEN_USB_SUSPENDED
- #define RGB_MATRIX_KEYPRESSES // Enables REACTIVE & SPLASH modes
- #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Enables Heatmap, Rain
-
- // RGB step values
- #define RGBLIGHT_HUE_STEP 32 // The number of steps to cycle through the hue by (default 10)
- #define RGBLIGHT_SAT_STEP 17 // The number of steps to increment the saturation by (default 17)
- #define RGBLIGHT_VAL_STEP 17 // The number of steps to increment the brightness by (default 17)
-
- // Startup values, when none have been set
- #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_REACTIVE // Sets the default effect mode, if none has been set (was RGB_MATRIX_SOLID_COLOR)
- #define RGB_MATRIX_DEFAULT_HUE 24 // Sets the default hue value, if none has been set
- #define RGB_MATRIX_DEFAULT_SAT 255 // Sets the default saturation value, if none has been set
- #define RGB_MATRIX_DEFAULT_VAL 127 // Sets the default brightness value, if none has been set
- #define RGB_MATRIX_DEFAULT_SPD 127 // Sets the default animation speed, if none has been set
-
- // Uncomment any #undef line below to turn OFF any default enabled RGB background effect (enabled in keyboards/gmmk/pro/config.h).
- #undef ENABLE_RGB_MATRIX_ALPHAS_MODS // Solid color (seems redundant; seems same as RGB_MATRIX_SOLID_COLOR?)
- //#undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Static, horizontal rainbow
- //#undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Static, vertical Rainbow
- //#undef ENABLE_RGB_MATRIX_BREATHING // Breathing animation using selected HSV color
- #undef ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right (with white)
- //#undef ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right (with black)
- #undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades sat (with white)
- //#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Single hue 3 blade spinning pinwheel fades brightness (with black)
- #undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // Single hue spinning spiral fades brightness (with white)
- //#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness (with black)
- //#undef ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard cycling through rainbow
- //#undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // Full gradient moving left to right
- //#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom
- #undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradient chevron scrolling left to right (too similar to cycle left right)
- //#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Rainbow circles coming to center.
- #undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Two Rainbow circles coming to 1/3 and 2/3 points. (seems mostly redundant with above)
- #undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Built-in cycling pinwheel (seems redundant with below)
- //#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard
- #undef ENABLE_RGB_MATRIX_RAINBOW_BEACON // Spinning rainbow (more distracting transitions)
- //#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Spinning rainbow (smoother)
- #undef ENABLE_RGB_MATRIX_DUAL_BEACON // Two rainbows spinning around keyboard (distracting, busy)
- #undef ENABLE_RGB_MATRIX_RAINDROPS // Sustained raindrops of blue, green, yellow (confusing to use with RGB layers)
- //#undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Sustained raindrops of blue, purple, pink, green (confusing to use with RGB layers, but slightly better than above)
- #undef ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight amount at the same time, then shifts back (very subtle)
- #undef ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight amount in a wave to the right, then back to the left (very subtle)
- #undef ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight amount and then back down in a wave to the right (very subtle)
- //#undef ENABLE_RGB_MATRIX_PIXEL_RAIN // Non-sustained raindrops of pastel colors
- #undef ENABLE_RGB_MATRIX_PIXEL_FLOW // More active version of pixel rain with quick cycling (unusable, very distracting)
- #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL // Same as Pixel Flow but with current HSV only (somewhat distracting)
- //Only enabled if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
- //#undef ENABLE_RGB_MATRIX_TYPING_HEATMAP // Fading heatmap that follows keystrokes (has buggy side LEDs that glow red)
- //#undef ENABLE_RGB_MATRIX_DIGITAL_RAIN // The Matrix (has buggy side LEDs that glow red)
- //Only enabled if RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Key hits shown in current hue - all other keys black
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE // Keyboard lights up in chosen hue, key hits shown in complementary hue (try this as default?)
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse around a single key hit then fades value out (Single key)
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // same as above but more intense (Multi-key)
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Column and Row single current color fade (Single key)
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Column and Row single color fade. (Multi-key)
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of key hit then fades (Single key)
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multi-key hit then fades
- //#undef ENABLE_RGB_MATRIX_SPLASH // Full rainbow pulses from key hit. All else black.
- #undef ENABLE_RGB_MATRIX_MULTISPLASH // Full rainbow pulses from multi-keys. All else black. (distracting on multiple keystroke hits)
- #undef ENABLE_RGB_MATRIX_SOLID_SPLASH // Single color pulses from key hit. All else black. (distracting on multiple key hits)
- //#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Single color pulses from muli-keys. All else black.
-#endif //RGB_MATRIX_ENABLE
-
-// Add a layer for colemak -- set "COLEMAK_LAYER_ENABLE = yes" in rules.mk to enable
-#if defined COLEMAK_LAYER_ENABLE
- #ifdef GAME_ENABLE
- #define DYNAMIC_KEYMAP_LAYER_COUNT 6
- #define _COLEMAK 5
- #else
- #define DYNAMIC_KEYMAP_LAYER_COUNT 5
- #define _COLEMAK 4
- #endif //GAME_ENABLE
-#endif // COLEMAK_LAYER_ENABLE
-
-/*
-// Mouse Keys Accelerated Mode Definitions
-#define MOUSEKEY_DELAY 3 // Delay between pressing a movement key and cursor movement (default: 10)
-#define MOUSEKEY_INTERVAL 13 // Time between cursor movements in milliseconds (default: 20); Try setting to 1000/monitor refresh for smooth movement.
-#define MOUSEKEY_MOVE_DELTA 8 // Step size (default: 8)
-#define MOUSEKEY_MAX_SPEED 9 // Maximum cursor speed at which acceleration stops (default: 10)
-#define MOUSEKEY_TIME_TO_MAX 150 // Time until maximum cursor speed is reached (default: 30)
-#define MOUSEKEY_WHEEL_DELAY 0 // Delay between pressing a wheel key and wheel movement (default: 10)
-#define MOUSEKEY_WHEEL_INTERVAL 80 // Time between wheel movements (default: 80)
-#define MOUSEKEY_WHEEL_MAX_SPEED 8 // Maximum number of scroll steps per scroll action (default: 8)
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 40 // Time until maximum scroll speed is reached (default: 40)
-*/
-
-// Mouse Keys Kinetic Mode Definitions
-#define MK_KINETIC_SPEED // Enable Kinetic mode: Uses a quadratic curve on cursor speed to allow precise movements at the beginning and increases speed thereafter.
-#define MOUSEKEY_DELAY 3 // Delay between pressing a movement key and cursor movement (default: 10)
-#define MOUSEKEY_INTERVAL 13 // Time between cursor movements in milliseconds (default: 20); Try setting to 1000/monitor refresh for smooth movement.
-#define MOUSEKEY_MOVE_DELTA 5 // Step size for accelerating from initial to base speed (default: 8)
-#define MOUSEKEY_MOVE_MAX 50 // use instead of BASE SPEED to limit speed in Kinetic mode
-#define MOUSEKEY_INITIAL_SPEED 100 // Initial speed of the cursor in pixels per second (default: 100)
-//#define MOUSEKEY_BASE_SPEED 800 // (broken in QMK 0.16.0) Maximum cursor speed at which acceleration stops (default: 1000)
-#define MOUSEKEY_DECELERATED_SPEED 400 // Decelerated cursor speed (default: 400)
-#define MOUSEKEY_ACCELERATED_SPEED 2000 // Accelerated cursor speed (default: 3000)
-#define MOUSEKEY_WHEEL_INITIAL_MOVEMENTS 16 // Initial number of movements of the mouse wheel (default: 16)
-#define MOUSEKEY_WHEEL_BASE_MOVEMENTS 32 // Maximum number of movements at which acceleration stops (default: 32)
-#define MOUSEKEY_WHEEL_ACCELERATED_MOVEMENTS 48 // Accelerated wheel movements (default: 48)
-#define MOUSEKEY_WHEEL_DECELERATED_MOVEMENTS 8 // Decelerated wheel movements (default: 8)
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/keymap.c
deleted file mode 100644
index 64954feeaf..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/keymap.c
+++ /dev/null
@@ -1,713 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
- Copyright 2021 Jonavin Eng @Jonavin
- Copyright 2022 gourdo1 <gourdo1@outlook.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// Note: Many advanced functions referenced in this file are defined in /users/gourdo1/gourdo1.c
-
-#include QMK_KEYBOARD_H
-
-#include "rgb_matrix_map.h"
-
-#include "gourdo1.h"
-
-#include "paddlegame.h"
-
-#include <math.h>
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Base Layout
- *
- * ,-------------------------------------------------------------------------------------------------------------.
- * | Esc || F1 | F2 | F3 | F4 || F5 | F6 | F7 | F8 || F9 | F10 | F11 | F12 || Home || Mute |
- * |=============================================================================================================|
- * | ` ~ | 1 ! | 2 @ | 3 # | 4 $ | 5 % | 6 ^ | 7 & | 8 * | 9 ( | 0 ) | - _ | = + | Backspc || Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------|
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ } | ] } | \ | || PgUp |
- * |---------+------+------+------+------+------+------+------+------+------+------+------+------+-------++------|
- * | Capslock | A | S | D | F | G | H | J | K | L | ; : | ' " | Enter || PgDn |
- * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------|
- * | LShift | Z | X | C | V | B | N | M | , < | . > | / ? | RShift || Up || End |
- * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======|
- * | Ctrl | Win | LAlt | Space | RAlt | Fn | Ctrl || Left | Down | Rght |
- * `------------------------------------------------------------------------------------------------------------'
- */
-
- [_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, LEFTOFENC, ENCFUNC,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, BELOWENC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- CAPSNUM, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* FN1 Layout
- *
- * ,-------------------------------------------------------------------------------------------------------------.
- * | Esc ||MyCmp |WbHom | Calc |MdSel ||MdPrv |MdNxt |MdPly |MdStp ||VolDn |VolUp |PrScr |ScrLk ||Pause ||Sleep |
- * |=============================================================================================================|
- * | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ |RGBTOD|RGBTOI| ________ ||RGBTOG|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------|
- * | ______ |RGBSAD|RGBVAI|RGBSAI| NKRO | ____ |YAHOO | ____ | ____ |OUTLK |Pause | ____ | ____ |QK_BOOT|| Home |
- * |---------+------+------+------+------+------+------+------+------+------+------+------+------+-------++------|
- * | Capslock |RGBHUD|RGBVAD|RGBHUI| ____|GMAIL |HTMAIL| ____ | ____ | ____ | ____ | ____ | __________ || End |
- * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------|
- * | __________ |RGBNIT| ____ | ____ | ____ | ____ |NumLk | ____ | ____ |DOTCOM| CAD | ______ ||RGBMOD|| ____ |
- * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======|
- * | ____ | WinKyLk | ____ | _____ | ____ | ____ | ____ ||RGBSPD|RGBRMD|RGBSPI|
- * `------------------------------------------------------------------------------------------------------------'
- */
-
- #ifdef GAME_ENABLE
- [_FN1] = LAYOUT(
- EE_CLR, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_VOLD, KC_VOLU, KC_PSCR, KC_SCRL, KC_PAUS, KC_SLEP,
- PRNCONF, TG_CAPS, TG_PAD, TG_ESC, TG_DEL, TG_TDCAP,TG_ENC, TG_INS,TG_SPCMOD,TG_AUTOCR, _______, RGB_TOD, RGB_TOI, _______, RGB_TOG,
- _______, RGB_SAD, RGB_VAI, RGB_SAI, NK_TOGG, _______, YAHOO, _______, _______, OUTLOOK, TG(_GAME),SWAP_L, SWAP_R, QK_BOOT, KC_HOME,
- KC_CAPS, RGB_HUD, RGB_VAD, RGB_HUI, _______, GMAIL, HOTMAIL, _______, _______, LOCKPC, _______, _______, _______, KC_END,
- _______, RGB_NITE,_______, _______, _______, QK_BOOT, KC_NUM, _______, _______, DOTCOM, KC_CAD, _______, RGB_MOD, _______,
- _______, WINLOCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
-
- [_GAME] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- #else
- [_FN1] = LAYOUT(
- EE_CLR, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_VOLD, KC_VOLU, KC_PSCR, KC_SCRL, KC_PAUS, KC_SLEP,
- PRNCONF, TG_CAPS, TG_PAD, TG_ESC, TG_DEL, TG_TDCAP,TG_ENC, TG_INS,TG_SPCMOD,TG_AUTOCR, _______, RGB_TOD, RGB_TOI, _______, RGB_TOG,
- _______, RGB_SAD, RGB_VAI, RGB_SAI, NK_TOGG, _______, YAHOO, _______, _______, OUTLOOK, KC_PAUS, SWAP_L, SWAP_R, QK_BOOT, KC_HOME,
- KC_CAPS, RGB_HUD, RGB_VAD, RGB_HUI, _______, GMAIL, HOTMAIL, _______, _______, LOCKPC, _______, _______, _______, KC_END,
- _______, RGB_NITE,_______, _______, _______, QK_BOOT, KC_NUM, _______, _______, DOTCOM, KC_CAD, _______, RGB_MOD, _______,
- _______, WINLOCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
- #endif //GAME_ENABLE
-
- /* _NUMPADMOUSE Layout
- * Note: A symbol preceded by "P" is a Numpad-encoded version of the key -- any app that differentiates will recognize the char as coming from a physical numpad.
- * ,-------------------------------------------------------------------------------------------------------------.
- * | ____ || ____ | ____ | ____ | ____ || ____ | ____ | ____ | ____ || ____ | ____ | ____ | ____ || ____ || ____ |
- * |=============================================================================================================|
- * | ____ | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P0 | P- | P+ | ________ || ____ |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------|
- * | ______ | PGUP | Up | PGDN | None | None | None | P4 | P5 | P6 | P+ | ____ | ____ | _____ || WhUp |
- * |---------+------+------+------+------+------+------+------+------+------+------+------+------+-------++------|
- * | ________ | Left | Down | Rght | None| None | None | P1 | P2 | P3 | P* | ____ | P-Enter || WhDn |
- * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------|
- * | __________ | None | ____ | ____ | ____ | None | None | 0 | 00 | P. | P/ | MBt1 ||MS_UP || MBt2 |
- * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======|
- * | ____ | ____ | ____ | _____ | ____ | ____ | MBt3 ||MS_LT |MS_DN |MS_RT |
- * `------------------------------------------------------------------------------------------------------------'
- */
-
- [_NUMPADMOUSE] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, _______, _______,
- _______, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, _______, _______, KC_WH_U,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_PAST, _______, KC_PENT, KC_WH_D,
- _______, KC_NO, _______, _______, _______, _______, _______, KC_P0, KC_00, KC_PDOT, KC_PSLS, KC_BTN1, KC_MS_U, KC_BTN2,
- _______, _______, _______, KC_PENT, _______, _______, KC_BTN3, KC_MS_L, KC_MS_D, KC_MS_R
- ),
-
- [_MOUSEKEY] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_D,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2,
- _______, _______, _______, _______, _______, _______, KC_BTN3, KC_MS_L, KC_MS_D, KC_MS_R
- ),
-
- #ifdef COLEMAK_LAYER_ENABLE
- [_COLEMAK] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, _______,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- _______, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, KC_PGDN,
- _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- _______, _______, _______, KC_SPC, KC_RALT, _______, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- #endif // COLEMAK_LAYER_ENABLE
-};
-
-#if defined(ENCODER_ENABLE) && !defined(ENCODER_DEFAULTACTIONS_ENABLE) // Encoder Functionality when not using userspace defaults
-void encoder_action_rgbhue(bool clockwise) {
- if (clockwise)
- rgblight_increase_hue_noeeprom();
- else
- rgblight_decrease_hue_noeeprom();
-}
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t mods_state = get_mods();
- if (mods_state & MOD_BIT(KC_LSFT)) { // If you are holding L shift, encoder changes layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_RSFT)) { // If you are holding R shift, Page up/dn
- unregister_mods(MOD_BIT(KC_RSFT));
- encoder_action_navpage(clockwise);
- register_mods(MOD_BIT(KC_RSFT));
- } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_RCTL)) { // if holding Right Ctrl, change rgb hue/colour
- encoder_action_rgbhue(clockwise);
- } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- switch (get_highest_layer(layer_state)) {
- case _FN1:
- #ifdef IDLE_TIMEOUT_ENABLE
- timeout_update_threshold(clockwise);
- #endif
- break;
- #ifdef GAME_ENABLE
- case _GAME:
- // Game: Paddle movement
- if (damage_count == 0) {
- if (clockwise) {
- if (paddle_pos_full < 15) ++paddle_pos_full;
- } else {
- if (paddle_pos_full > 0) --paddle_pos_full;
- }
- }
- break;
- #endif //GAME_ENABLE
- default:
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- break;
- }
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
-}
-#endif // ENCODER_ENABLE && !ENCODER_DEFAULTACTIONS_ENABLE
-
-#ifdef RGB_MATRIX_ENABLE
-
-// Game logic
-#ifdef GAME_ENABLE
-void init_ball(uint8_t i) {
- i &= 1;
- ball[i].on = true;
- ball[i].up = false;
- ball[i].y = 0;
- ball[i].x = rand() % 16;
-
- // Set initial ball state
- if (ball[i].x < 8) {
- ball[i].left = false;
- } else {
- ball[i].x -= 4;
- ball[i].left = true;
- }
-
- // 1/4 chance of being an enemy ball after level 6
- if (level_number > 3) {
- ball[i].enemy = ((rand() % 4) == 0);
- } else {
- ball[i].enemy = false;
- }
-}
-
-void hurt_paddle(void) {
- if (paddle_lives > 0) {
- --paddle_lives;
- }
- damage_timer = timer_read();
- damage_count = 10;
-
- // Reset board
- init_ball(0);
- ball[1].on = false;
-}
-#endif //GAME_ENABLE
-
-// Capslock, Scroll lock and Numlock indicator on Left side lights.
-bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF);
-
- led_t led_state = host_keyboard_led_state();
-
- // Scroll Lock RGB setup
- if (led_state.scroll_lock) {
- rgb_matrix_set_color(LED_L3, RGB_RED);
- rgb_matrix_set_color(LED_L4, RGB_RED);
- rgb_matrix_set_color(LED_TAB, RGB_RED);
- rgb_matrix_set_color(LED_F12, RGB_RED);
- }
-
-/*
- // System NumLock warning indicator RGB setup
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled
- rgb_matrix_set_color(LED_GRV, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L1, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L2, RGB_ORANGE2);
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- rgb_matrix_set_color(LED_FN, RGB_ORANGE2);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_GRV, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L1, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L2, RGB_ORANGE2);
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- rgb_matrix_set_color(LED_FN, RGB_ORANGE2);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-*/
-
- // CapsLock RGB setup
- if (led_state.caps_lock) {
- if (user_config.rgb_hilite_caps) {
- for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_LETTERS); i++) {
- rgb_matrix_set_color(LED_LIST_LETTERS[i], RGB_CHARTREUSE);
- }
- rgb_matrix_set_color(LED_L7, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_L8, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LSFT, RGB_CHARTREUSE);
- }
- else {
- rgb_matrix_set_color(LED_L7, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_L8, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LSFT, RGB_CHARTREUSE);
- }
- }
-
- // Winkey disabled (gaming) mode RGB setup
- if (keymap_config.no_gui) {
- rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Winkey red when disabled
- rgb_matrix_set_color(LED_W, RGB_CHARTREUSE); //light up gaming keys with WSAD higlighted
- rgb_matrix_set_color(LED_S, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_A, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_D, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_Q, RGB_ORANGE2);
- rgb_matrix_set_color(LED_E, RGB_ORANGE2);
- rgb_matrix_set_color(LED_R, RGB_ORANGE2);
- rgb_matrix_set_color(LED_TAB, RGB_ORANGE2);
- rgb_matrix_set_color(LED_F, RGB_ORANGE2);
- rgb_matrix_set_color(LED_Z, RGB_ORANGE2);
- rgb_matrix_set_color(LED_X, RGB_ORANGE2);
- rgb_matrix_set_color(LED_C, RGB_ORANGE2);
- rgb_matrix_set_color(LED_V, RGB_ORANGE2);
- rgb_matrix_set_color(LED_SPC, RGB_ORANGE2);
- rgb_matrix_set_color(LED_LCTL, RGB_ORANGE2);
- rgb_matrix_set_color(LED_LSFT, RGB_ORANGE2);
- }
-
- // Fn selector mode RGB setup
- switch (get_highest_layer(layer_state)) { // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- rgb_matrix_set_color(LED_FN, RGB_RED); //FN key
-
- //NEW RGB LIGHTING TO RING KEYBOARD ON FN LAYER ACTIVATION:
- for (uint8_t j = 0; j < ARRAYSIZE(LED_LIST_FUNCROW); j++) {
- rgb_matrix_set_color(LED_LIST_FUNCROW[j], RGB_RED);
- }
- rgb_matrix_set_color(LED_LCTL, RGB_RED);
- rgb_matrix_set_color(LED_LALT, RGB_RED);
- rgb_matrix_set_color(LED_SPC, RGB_RED);
- rgb_matrix_set_color(LED_LWIN, RGB_RED);
- //rgb_matrix_set_color(LED_RALT, RGB_RED);
- rgb_matrix_set_color(LED_FN, RGB_OFFBLUE);
- //rgb_matrix_set_color(LED_RCTL, RGB_RED);
- rgb_matrix_set_color(LED_BSLS, RGB_RED);
- rgb_matrix_set_color(LED_L1, RGB_RED);
- rgb_matrix_set_color(LED_L2, RGB_RED);
- rgb_matrix_set_color(LED_L3, RGB_RED);
- rgb_matrix_set_color(LED_L4, RGB_RED);
- rgb_matrix_set_color(LED_L5, RGB_RED);
- rgb_matrix_set_color(LED_L6, RGB_RED);
- rgb_matrix_set_color(LED_L7, RGB_RED);
- rgb_matrix_set_color(LED_L8, RGB_RED);
- rgb_matrix_set_color(LED_DOWN, RGB_RED);
- rgb_matrix_set_color(LED_LEFT, RGB_RED);
- rgb_matrix_set_color(LED_RIGHT, RGB_RED);
- rgb_matrix_set_color(LED_R1, RGB_RED);
- rgb_matrix_set_color(LED_R2, RGB_RED);
- rgb_matrix_set_color(LED_R3, RGB_RED);
- rgb_matrix_set_color(LED_R4, RGB_RED);
- rgb_matrix_set_color(LED_R5, RGB_RED);
- rgb_matrix_set_color(LED_R6, RGB_RED);
- rgb_matrix_set_color(LED_R7, RGB_RED);
- rgb_matrix_set_color(LED_R8, RGB_RED);
- rgb_matrix_set_color(LED_MINS, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_EQL, RGB_OFFBLUE);
-
- // Indicator for paddle game enabled in build
- #ifdef GAME_ENABLE
- rgb_matrix_set_color(LED_P, RGB_CHARTREUSE);
- #else
- rgb_matrix_set_color(LED_P, RGB_RED);
- #endif // GAME_ENABLE
-
- // System NumLock warning indicator RGB setup
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-
- //Add RGB statuses for user.config toggles
- if (user_config.rgb_hilite_caps) {
- rgb_matrix_set_color(LED_1, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_1, RGB_PURPLE);
- }
- if (user_config.rgb_hilite_numpad) {
- rgb_matrix_set_color(LED_2, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_2, RGB_PURPLE);
- }
- if (user_config.esc_double_tap_to_baselyr) {
- rgb_matrix_set_color(LED_3, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_3, RGB_PURPLE);
- }
- if (user_config.del_right_home_top) {
- rgb_matrix_set_color(LED_4, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_4, RGB_PURPLE);
- }
- if (user_config.double_tap_shift_for_capslock) {
- rgb_matrix_set_color(LED_5, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_5, RGB_PURPLE);
- }
- if (user_config.encoder_press_mute_or_media) {
- rgb_matrix_set_color(LED_6, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_6, RGB_PURPLE);
- }
- if (user_config.ins_on_shft_bkspc_or_del) {
- rgb_matrix_set_color(LED_7, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_7, RGB_PURPLE);
- }
- if (user_config.disable_space_mods) {
- rgb_matrix_set_color(LED_8, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_8, RGB_PURPLE);
- }
- if (user_config.autocorrect) {
- rgb_matrix_set_color(LED_9, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_9, RGB_PURPLE);
- }
-
- // Add RGB Timeout Indicator -- shows 0 to 139 using F row and num row; larger numbers using 16bit code
- uint16_t timeout_threshold = get_timeout_threshold();
- if (timeout_threshold <= 10) rgb_matrix_set_color(LED_LIST_FUNCROW[timeout_threshold], RGB_BLUE);
- else if (timeout_threshold < 140) {
- rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold / 10)], RGB_CYAN);
- rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold % 10)], RGB_BLUE);
- } else { // >= 140 minutes, just show these 3 lights
- rgb_matrix_set_color(LED_LIST_FUNCROW[10], RGB_CYAN);
- rgb_matrix_set_color(LED_LIST_FUNCROW[11], RGB_CYAN);
- rgb_matrix_set_color(LED_LIST_FUNCROW[12], RGB_CYAN);
- }
- break;
-
- // Numpad & Mouse Keys overlay RGB
- case _NUMPADMOUSE:
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
- if (user_config.rgb_hilite_numpad) {
- for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_NUMPAD); i++) {
- rgb_matrix_set_color(LED_LIST_NUMPAD[i], RGB_OFFBLUE);
- }
- rgb_matrix_set_color(LED_L5, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_L6, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_CAPS, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_UP, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_DOWN, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LEFT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RIGHT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RCTL, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RSFT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_END, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_PGUP, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_PGDN, RGB_CHARTREUSE);
- } else {
- rgb_matrix_set_color(LED_L5, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_L6, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_CAPS, RGB_OFFBLUE);
- }
- break;
-
- // MOUSEKEYS mode RGB
- case _MOUSEKEY:
- rgb_matrix_set_color(LED_UP, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_DOWN, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LEFT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RIGHT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RCTL, RGB_CYAN);
- rgb_matrix_set_color(LED_RSFT, RGB_CYAN);
- rgb_matrix_set_color(LED_END, RGB_CYAN);
- rgb_matrix_set_color(LED_PGUP, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_PGDN, RGB_OFFBLUE);
- break;
-
- // Colemak layer RGB
- #ifdef COLEMAK_LAYER_ENABLE
- case _COLEMAK:
- for (uint8_t i = 0; i < ARRAYSIZE(LED_SIDE_RIGHT); i++) {
- rgb_matrix_set_color(LED_SIDE_RIGHT[i], RGB_MAGENTA);
- rgb_matrix_set_color(LED_SIDE_LEFT[i], RGB_MAGENTA);
- }
- break;
- #endif
-
- // Paddle game logic
- #ifdef GAME_ENABLE
- case _GAME:
- if (!game_start) {
- srand((unsigned int) timer_read());
-
- // Store user light settings
- last_hsv = rgb_matrix_get_hsv();
- rgb_matrix_sethsv_noeeprom(0, 0, 0);
-
- paddle_pos_full = 8;
- paddle_lives = 4;
- bounce_count = 0;
- level_number = 0;
- damage_count = 0;
-
- init_ball(0);
- ball[1].on = false;
- ball_timer = timer_read();
-
- game_start = true;
- }
-
- // Set level indicator
- if (level_number < 12) {
- rgb_matrix_set_color(GAME_R0[level_number], RGB_BLUE);
- }
-
- // Set life bar
- for (uint8_t i = 0; i < paddle_lives; i++) {
- rgb_matrix_set_color(GAME_LIVES[i], RGB_GREEN);
- }
-
- uint8_t paddle_pos = paddle_pos_full >> 1;
-
- if (damage_count > 0) {
- // Flash paddle when receiving damage
- if (timer_elapsed(damage_timer) > 500) {
- --damage_count;
- damage_timer = timer_read();
- }
- if ((damage_count & 1) == 0) {
- for (uint8_t i = 0; i < 3; i++) {
- rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], RGB_RED);
- }
- }
- if (damage_count == 0) {
- ball_timer = timer_read();
- }
-
- } else if (paddle_lives == 0) {
- // Game over
- for (uint8_t i = 0; i < ARRAY_SIZE(LED_GAME_OVER); i++) {
- rgb_matrix_set_color(LED_GAME_OVER[i], RGB_RED);
- }
-
- } else if (level_number >= 12) {
- // You win
- if (rgb_value.r == 0xff && rgb_value.g < 0xff) {
- if (rgb_value.b > 0) {
- --rgb_value.b;
- } else {
- ++rgb_value.g;
- }
- } else if (rgb_value.g == 0xff && rgb_value.b < 0xff) {
- if (rgb_value.r > 0) {
- --rgb_value.r;
- } else {
- ++rgb_value.b;
- }
- } else if (rgb_value.b == 0xff && rgb_value.r < 0xff) {
- if (rgb_value.g > 0) {
- --rgb_value.g;
- } else {
- ++rgb_value.r;
- }
- }
-
- for (uint8_t i = 0; i < 3; i++) {
- rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], rgb_value.r, rgb_value.g, rgb_value.b);
- }
- rgb_matrix_set_color(GAME_SMILE1[paddle_pos], rgb_value.r, rgb_value.g, rgb_value.b);
- rgb_matrix_set_color(GAME_SMILE1[paddle_pos + 3], rgb_value.r, rgb_value.g, rgb_value.b);
- rgb_matrix_set_color(GAME_SMILE2[paddle_pos], rgb_value.r, rgb_value.g, rgb_value.b);
- rgb_matrix_set_color(GAME_SMILE2[paddle_pos + 3], rgb_value.r, rgb_value.g, rgb_value.b);
-
- } else {
- // normal game loop
-
- // Set paddle position
- for (uint8_t i = 0; i < 3; i++) {
- rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], RGB_GREEN);
- }
-
- // Ball movement logic happens at intervals
- if (timer_elapsed(ball_timer) > GAME_TIMER[level_number]) {
- for (int i = 0; i < 2; ++i) {
- if (ball[i].on) {
- // Ball movement
- if (ball[i].up) {
- if (ball[i].y > 0) {
- --ball[i].y;
- if (!ball[i].left) ++ball[i].x;
- } else {
- // Count reflections. If > 10, increase level
- ++bounce_count;
- if (bounce_count >= 10) {
- bounce_count = 0;
- ++level_number;
- }
- ball[i].on = false;
- }
- } else {
- ++ball[i].y;
- if (ball[i].left) --ball[i].x;
- if (ball[i].y > 4) {
- // Remove a life if ball isn't returned and isn't enemy
- if (!ball[i].enemy) {
- hurt_paddle();
- i = 2;
- } else {
- ball[i].on = false;
- }
- }
- }
- }
- }
- if (ball[0].y == 4 && !ball[1].on) {
- init_ball(1);
- }
- if (ball[1].y == 4 && !ball[0].on) {
- init_ball(0);
- }
- if (!ball[0].on && !ball[1].on) {
- init_ball(0);
- }
- ball_timer = timer_read();
- }
-
- // Other ball stuff
- for (int i = 0; i < 2; ++i) {
- if (ball[i].on) {
- // Ball deflection logic
- if (!ball[i].up && ball[i].y == 4 && (ball[i].x == paddle_pos || ball[i].x == paddle_pos - 1 || ball[i].x == paddle_pos + 1)) {
- if (!ball[i].enemy) {
- --ball[i].y;
- if (!ball[i].left) {
- ++ball[i].x;
- }
- ball[i].up = true;
- } else {
- hurt_paddle();
- i = 2;
- }
- }
-
- // Ball display
- switch (ball[i].y) {
- case 0:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R0[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R0[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 1:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R1[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R1[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 2:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R2[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R2[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 3:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R3[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R3[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 4:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R4[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R4[ball[i].x], RGB_WHITE);
- }
- break;
- }
- }
- }
- }
- break;
- #endif //GAME_ENABLE
- default:
- #ifdef GAME_ENABLE
- if (game_start) {
- // Reset lighting settings
- game_start = false;
- rgb_matrix_sethsv_noeeprom(last_hsv.h, last_hsv.s, last_hsv.v);
- }
- #endif //GAME_ENABLE
- break;
- }
- return false;
-}
-#endif
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGB_MATRIX_ENABLE
- activate_rgb_nightmode(false); // Set to true if you want to startup in nightmode, otherwise use Fn + Z to toggle
- #endif
-}
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/paddlegame.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/paddlegame.h
deleted file mode 100644
index 3d33975cfe..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/paddlegame.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
- Copyright 2021 Tomas Guinan
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifdef GAME_ENABLE
-const uint16_t GAME_TIMER[] = {
- 400, 350, 300, 250, 400, 350, 300, 250, 225, 200, 175, 150
-};
-
-bool game_start = false;
-HSV last_hsv;
-static uint8_t paddle_pos_full;
-static uint8_t paddle_lives;
-static uint8_t level_number;
-static uint8_t bounce_count;
-static uint8_t damage_count;
-static uint16_t damage_timer;
-static uint16_t ball_timer;
-
-struct BallStruct
-{
- uint8_t x;
- uint8_t y;
- bool on;
- bool up;
- bool left;
- bool enemy;
-};
-
-struct BallStruct ball[2];
-
-void init_ball(uint8_t i);
-void hurt_paddle(void);
-
-#endif //GAME_ENABLE \ No newline at end of file
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/readme.md
deleted file mode 100644
index aebccf6d14..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/readme.md
+++ /dev/null
@@ -1,124 +0,0 @@
-# [gourdo1's](mailto:gourdo1@outlook.com) GMMK Pro Keyboard Layouts
-
-These Windows-centric layouts are based on Jonavin's GMMK Pro [layout](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin) with many additions, fixes, a revamped keymap, persistent user customizations, updated layers, Pascal Getreuer's [autocorrect](https://getreuer.info/posts/keyboards/autocorrection/), Tomas Guinan's [paddle game](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame) and expanded RGB controls and effects.
-
-![image](https://raw.githubusercontent.com/gourdo1/media/main/susuwatari.jpg)
-
-* Up-to-date [Changelog](https://github.com/gourdo1/gmmkpro-media/blob/main/changelog.md)
-* Latest [ANSI firmware](https://github.com/gourdo1/gmmkpro-media/raw/main/gmmk_pro_rev1_ansi_gourdo1.bin) download. (Flash with [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases))
-* Latest [ISO firmware](https://github.com/gourdo1/gmmkpro-media/raw/main/gmmk_pro_rev1_iso_gourdo1.bin) download. (Flash with [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases))
-* Printable Keyboard [Cheatsheet](https://github.com/gourdo1/gmmkpro-media/raw/main/GMMK_Pro_Cheatsheet.pdf)
-
-## Features
-
-### Core Functionality
-
-* Support for both [ANSI](https://keebnews.com/ansi-vs-iso/) and [ISO](https://keebnews.com/ansi-vs-iso/) keyboard layouts.
-* Quick & Easy Customization: Open a text editor and hit [FN]` (tilde on ANSI; the key left of '1' on ISO layouts) to view toggle-able settings.
-* [VIA](https://www.caniusevia.com/) support enabled.
-* AutoCorrection: Pascal Getreuer's AutoCorrect code incorporated with 400 word dictionary on words > 4 characters.
-* Most [default Glorious shortcuts](https://cdn.shopify.com/s/files/1/0549/2681/files/GMMK_Pro_User_Guide.pdf) enabled
-* [N-key Rollover](https://en.wikipedia.org/wiki/Rollover_\(keyboard\)#n-key_rollover) (NKRO) -- toggled with [FN]R
-* 1000Hz polling rate with 5ms debounce time for quick response in games.
-* Mouse Keys! Don't want to move your hands off the keyboard or you didn't bring it with you? Use cursor keys to move the mouse.
-* Overlay numpad on 789-UIOP-JKL;-M,. & Space-bar mapped to Enter key for rapid number entry.
-* Gaming mode ([FN]Win-key) locks out Win-key and double-tap Shift Capslock; Also RGB highlights WSAD and nearby gaming keys.
-* Caps Word enabled: To capitalize the next word only, press and release left and right shift at the same time.
-* Multi-monitor app moving shortcuts: [FN] ],[ (square brackets) to move current app window to next monitor.
-* Capslock toggled by double tap of Left Shift key or FN + Capslock (RGB green highlighted).
-* Paddle game accessible via [FN]P. Hit [FN]P again or double tap [ESC] to exit.
-* Single-handed shortcut for Ctrl-Alt-Delete: [FN]/
-* Single-handed shortcut for WinKey-L (lock Windows): [FN]L
-* Domain shortcuts: [FN]. for .com, [FN]O for outlook.com, [FN]Y for yahoo.com, [FN]H for hotmail.com, [FN]G for gmail.com.
-* [Bootloader mode](https://github.com/qmk/qmk_firmware/blob/master/docs/newbs_flashing.md) accessible via [FN]Backslash for ANSI and FN(key next to Left Shift) for ISO
-* PrtScrn, Scroll Lock, Pause/Break are top right on the keyboard: [FN]F11, [FN]F12, [FN]F13
-* [Colemak](https://colemak.com/) key layout support (Accessible via Left Shift + turn Encoder clockwise until side LEDs light up purple)
-* Double tap ESC any time to revert to base layer.
-* RGB backlight effects expanded to include framebuffer effects and reactive keypress modes.
-* RGB backlight now remembers last color & effect settings after power down.
-
-### Quick & Easy Customization
-* Below features can be toggled by holding [FN] and pressing the number corresponding to that feature. Changes are saved to EEPROM for persistence.
-* Print current settings by opening a text editor and pressing [FN]~ (the key left of '1' on ISO layout keyboards)
-* Quick view current settings by holding [FN] and viewing RGB under number keys (green means ON, violet means OFF)
-
-#### Toggle-able Settings:
- 1. CapsLock RGB - Highlight under alpha keys
- 2. Numpad RGB - Highlight under numpad layer keys
- 3. ESC key - Double tap ESC key to go to base layer
- 4. Swap DEL and HOME - Default is DEL to the right of BKSPC & HOME is above BKSPC
- 5. Capslock function - Toggle between double tap LShift for CapsLock with Numpad on CapsLock key (default) and standard CapsLock
- 6. Encoder button - Default mutes volume; alternate plays/pauses media
- 7. Insert function - Toggle between SHIFT-BKSPC and SHIFT-DEL
- 8. Modded-Space override - Use standard Space in place of modded-Space functions
- 9. AutoCorrect - Internal (English) AutoCorrect; default is enabled
- 0. (ISO layouts only) CapsLock highlights extended alpha keys
-
-### Numpad + Mouse Keys (Capslock key)
-
-* Overlay numpad + [Mouse Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md) are accessed through Capslock key hold (temp) or double press (locked) with RGB highlighting
-* Numpad uses Space-bar as Enter for rapid number entry.
-* This layer disables much of the keyboard, except X/C/V for cut/copy/paste, WASD for cursor, Q/E for PgUp/PgDn, cursor keys become mouse keys, surrounding keys become mouse buttons and all number keys become numpad versions (so Alt char codes work regardless of which set you use)
-* FN and N keys light up orange if system numlock is off (inverted status), indicating numpad keys will not deliver expected output ([FN]N to toggle)
-* Double zero on comma key.
-* [Mouse Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md) allow you to use the mouse without taking your hand off the keyboard.
-* Mouse controls are: Cursor keys = move mouse; RShift = button1, End = button2, RCtrl = button3, PgUp/PgDn = Scroll wheel
-* Mouse Keys can also be accessed as a standalone layer by Left Shift-turning the Encoder until the cursor keys light up green
-
-### Encoder Functionality
-
-* Default knob turn changes volume; button press toggles mute
-* Exponential encoder: quick repeated volume up doubles increase; quick repeated volume down triples decrease.
-* FN + knob turn changes RGB idle timeout
-* FN + knob push puts PC to Sleep
-* holding Left Shift changes layers
-* holding Right Shift navigates page up/down
-* holding Left Ctrl navigates prev/next word
-* holding Right Ctrl changes RGB hue/color
-* holding Left Alt changes media prev/next track
-
-### Paddle Game
-
-* Based on [Tomas Guinan's excellent GMMK Pro paddle game](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame)
-* Paddle Game playable by pressing [FN]P (P lights up green in FN layer if game is enabled in firmware, otherwise it lights up red)
-* Use rotary encoder to control paddle
-* Contains 12 levels, indicated by blue LED on F-key row
-* Player has 4 lives, indicated by nav cluster
-* Deflect white balls while avoiding red ones
-* Use [FN]P, double tap ESC or otherwise change layer to quit game
-
-### Global RGB Controls
-
-* RGB backlight lighting effect: [FN]up/down
-* RGB backlight effect speed: [FN]left/right
-* RGB backlight hue cycle: [FN]A/D
-* RGB backlight brightness: [FN]W/S
-* RGB backlight saturation: [FN]Q/E
-* RGB backlight night mode toggle: [FN]Z (indicators still work)
-* RGB backlight timeout: [FN]Encoder or "-" and "=" (default 15 minutes)
- * F-key row indicator lights (cyan and blue) in FN layer display the current backlight timeout in minutes
-* [FN]Z to turn off RGB backlighting (indicator lights still work); press again to toggle
-* Left side RGB indicators in order from top: Scroll Lock (red), Numpad (blue), Capslock (green).
-
-### Advanced Controls
-
-* [FN]\ or [FN]B to get to bootloader mode (use key next to Left Shift on ISO)
-* [FN][ESC] to clear EEPROM
-* [FN]R to toggle N-key Rollover
-* [FN]N to toggle system numlock
-* [FN]/ is single-handed shortcut to Ctrl-Alt-Delete
-* [FN]L is single-handed shortcut to Win-L (lock Windows)
-* [FN][Encoder press] to sleep Windows PC
-
-## Layer Diagrams (ANSI)
-### Base layer
-![image](https://raw.githubusercontent.com/gourdo1/gmmkpro-media/main/base.png)
-
-### FN Layer
-![image](https://raw.githubusercontent.com/gourdo1/gmmkpro-media/main/fn1.png)
-
-### Layer 2 (Numpad)
-![image](https://raw.githubusercontent.com/gourdo1/gmmkpro-media/main/numpad.png)
-
-### COLEMAK layer
-![image](https://user-images.githubusercontent.com/71780717/131235050-980d2f54-2d23-4ae8-a83f-9fcdbe60d6cb.png)
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rgb_matrix_map.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rgb_matrix_map.h
deleted file mode 100644
index f1609a4bb3..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rgb_matrix_map.h
+++ /dev/null
@@ -1,410 +0,0 @@
-/* Copyright 2021 Jonavin Eng @Jonavin
- Copyright 2022 gourdo1 <gourdo1@outlook.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifdef RGB_MATRIX_ENABLE
-
-//Define variables for Game
-bool fn_active = false;
-RGB rgb_value;
-
-// Custom GMMK Pro-specific RGB color customizations (defaults found in quantum/color.h)
-#define RGB_GODSPEED 0x00, 0xE4, 0xFF // color for matching keycaps
-#define RGB_NAUTILUS 0x00, 0xA4, 0xA9 // Nautilus Font colors
-#define RGB_OFFBLUE 0x00, 0x80, 0xFF // new color: blue with a hint of green
-#define RGB_DKRED 0x28, 0x00, 0x00 // new color: dark red
-#define RGB_ORANGE2 0xFF, 0x28, 0x00 // fix: reduced green from 80 to 28
-#define RGB_PURPLE2 0x80, 0x00, 0xFF // fix: increased red from 7A to 80
-#define RGB_SPRINGGREEN2 0x00, 0xFF, 0x10 // fix: blue was 80, now 10
-#define RGB_YELLOW2 0xFF, 0xB0, 0x00 // fix: green was FF, now B0
-#define RGB_OFF RGB_BLACK
-
-// Added by gourdo1 for RGB testing
-// Red Green Blue Expected GMMK Pro result
-#define RGB_TEST1 0xFF, 0x00, 0x00 // Q - red good!
-#define RGB_TEST2 0x0F, 0xFF, 0x00 // W - green good!
-#define RGB_TEST3 0x00, 0x00, 0xFF // E - blue good!
-#define RGB_TEST4 0xFF, 0xB0, 0x00 // R - yellow slightly green heavy - reduced green LED by quite a bit
-#define RGB_TEST5 0x00, 0xFF, 0xFF // T - cyan good!
-#define RGB_TEST6 0xFF, 0x00, 0xFF // Y - magenta very slightly blue heavy?
-#define RGB_TEST7 0xFF, 0x28, 0x00 // U - orange very green heavy at default
-#define RGB_TEST8 0xFF, 0x00, 0x80 // I - pink good!
-#define RGB_TEST9 0x80, 0xFF, 0x00 // O - chartreus good!
-#define RGB_TEST10 0x00, 0xFF, 0x10 // P - springgrn fixed: was too blue because green LED has blue in it already
-#define RGB_TEST11 0x00, 0x80, 0xFF // A - grn blue good!
-#define RGB_TEST12 0x80, 0x00, 0xFF // S - purple good!
-
-// RGB LED locations
-enum led_location_map {
- LED_ESC, // 0, ESC, k13
- LED_GRV, // 1, ~, k16
- LED_TAB, // 2, Tab, k11
- LED_CAPS, // 3, Caps, k21
- LED_LSFT, // 4, Sh_L, k00
- LED_LCTL, // 5, Ct_L, k06
- LED_F1, // 6, F1, k26
- LED_1, // 7, 1, k17
- LED_Q, // 8, Q, k10
- LED_A, // 9, A, k12
- LED_Z, // 10, Z, k14
- LED_LWIN, // 11, Win_L, k90
- LED_F2, // 12, F2, k36
- LED_2, // 13, 2, k27
- LED_W, // 14, W, k20
- LED_S, // 15, S, k22
- LED_X, // 16, X, k24
- LED_LALT, // 17, Alt_L, k93
- LED_F3, // 18, F3, k31
- LED_3, // 19, 3, k37
- LED_E, // 20, E, k30
- LED_D, // 21, D, k32
- LED_C, // 22, C, k34
- LED_F4, // 23, F4, k33
- LED_4, // 24, 4, k47
- LED_R, // 25, R, k40
- LED_F, // 26, F, k42
- LED_V, // 27, V, k44
- LED_F5, // 28, F5, k07
- LED_5, // 29, 5, k46
- LED_T, // 30, T, k41
- LED_G, // 31, G, k43
- LED_B, // 32, B, k45
- LED_SPC, // 33, SPACE, k94
- LED_F6, // 34, F6, k63
- LED_6, // 35, 6, k56
- LED_Y, // 36, Y, k51
- LED_H, // 37, H, k53
- LED_N, // 38, N, k55
- LED_F7, // 39, F7, k71
- LED_7, // 40, 7, k57
- LED_U, // 41, U, k50
- LED_J, // 42, J, k52
- LED_M, // 43, M, k54
- LED_F8, // 44, F8, k76
- LED_8, // 45, 8, k67
- LED_I, // 46, I, k60
- LED_K, // 47, K, k62
- LED_COMM, // 48, ,, k64
- LED_RALT, // 49, Alt_R, k95
- LED_F9, // 50, F9, ka6
- LED_9, // 51, 9, k77
- LED_O, // 52, O, k70
- LED_L, // 53, L, k72
- LED_DOT, // 54, ., k74
- LED_FN, // 55, FN, k92
- LED_F10, // 56, F10, ka7
- LED_0, // 57, 0, k87
- LED_P, // 58, P, k80
- LED_SCLN, // 59, ;, k82
- LED_SLSH, // 60, ?, k85
- LED_F11, // 61, F11, ka3
- LED_MINS, // 62, -, k86
- LED_LBRC, // 63, [, k81
- LED_QUOT, // 64, ", k83
- LED_RCTL, // 65, Ct_R, k04
- LED_F12, // 66, F12, ka5
- LED_L1, // 67, LED, l01
- LED_R1, // 68, LED, l11
- LED_INS, // 69, Prt, k97 -- remapped to INS
- LED_L2, // 70, LED, l02
- LED_R2, // 71, LED, l12
- LED_DEL, // 72, Del, k65
- LED_L3, // 73, LED, l03
- LED_R3, // 74, LED, l13
- LED_PGUP, // 75, PgUp, k15
- LED_L4, // 76, LED, l04
- LED_R4, // 77, LED, l14
- LED_EQL, // 78, =, k66
- LED_RIGHT, // 79, Right, k05
- LED_L5, // 80, LED, l05
- LED_R5, // 81, LED, l15
- LED_END, // 82, End, k75
- LED_L6, // 83, LED, l06
- LED_R6, // 84, LED, l16
- LED_BSPC, // 85, BSpc, ka1
- LED_PGDN, // 86, PgDn, k25
- LED_L7, // 87, LED, l07
- LED_R7, // 88, LED, l17
- LED_RBRC, // 89, ], k61
- LED_RSFT, // 90, Sh_R, k91
- LED_L8, // 91, LED, l08
- LED_R8, // 92, LED, l18
- LED_BSLS, // 93, \, ka2
- LED_UP, // 94, Up, k35
- LED_LEFT, // 95, Left, k03
- LED_ENT, // 96, Enter, ka4
- LED_DOWN // 97, Down, k73
-};
-
-const uint8_t LED_LIST_WASD[] = {
- LED_W,
- LED_A,
- LED_S,
- LED_D
-};
-
-const uint8_t LED_LIST_ARROWS[] = {
- LED_LEFT,
- LED_RIGHT,
- LED_UP,
- LED_DOWN
-};
-
-const uint8_t LED_LIST_FUNCROW[] = {
- LED_ESC,
- LED_F1,
- LED_F2,
- LED_F3,
- LED_F4,
- LED_F5,
- LED_F6,
- LED_F7,
- LED_F8,
- LED_F9,
- LED_F10,
- LED_F11,
- LED_F12,
- LED_INS
-};
-
-const uint8_t LED_LIST_NUMROW[] = {
- LED_GRV,
- LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL,
- LED_BSPC,
- LED_DEL
-};
-
-const uint8_t LED_LIST_LETTERS[] = {
-/* LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0, */
- LED_Q,
- LED_W,
- LED_E,
- LED_R,
- LED_T,
- LED_Y,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_A,
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_Z,
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M
-};
-
-const uint8_t LED_LIST_NUMPAD[] = {
- LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_J,
- LED_K,
- LED_L,
- LED_SCLN,
- LED_ENT,
- LED_M,
- LED_COMM,
- LED_DOT,
- LED_SLSH,
- LED_END,
- LED_RIGHT
-};
-
-const uint8_t LED_SIDE_LEFT[] = {
- LED_L1,
- LED_L2,
- LED_L3,
- LED_L4,
- LED_L5,
- LED_L6,
- LED_L7,
- LED_L8
-};
-
-const uint8_t LED_SIDE_RIGHT[] = {
- LED_R1,
- LED_R2,
- LED_R3,
- LED_R4,
- LED_R5,
- LED_R6,
- LED_R7,
- LED_R8
-};
-
-#ifdef GAME_ENABLE
-// Game LED rules
-const uint8_t GAME_LIVES[] = {
- LED_DEL,
- LED_PGUP,
- LED_PGDN,
- LED_END
-};
-const uint8_t GAME_PADDLE[] = {
- LED_Z,
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M,
- LED_COMM,
- LED_DOT,
- LED_SLSH
-};
-const uint8_t GAME_SMILE1[] = {
- LED_A,
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_SCLN,
- LED_QUOT
-};
-const uint8_t GAME_SMILE2[] = {
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL
-};
-const uint8_t GAME_R4[] = {
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M,
- LED_COMM,
- LED_DOT
-};
-const uint8_t GAME_R3[] = {
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_SCLN
-};
-const uint8_t GAME_R2[] = {
- LED_W,
- LED_E,
- LED_R,
- LED_T,
- LED_Y,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_LBRC
-};
-const uint8_t GAME_R1[] = {
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL
-};
-const uint8_t GAME_R0[] = {
- LED_F1,
- LED_F2,
- LED_F3,
- LED_F4,
- LED_F5,
- LED_F6,
- LED_F7,
- LED_F8,
- LED_F9,
- LED_F10,
- LED_F11,
- LED_F12
-};
-const uint8_t LED_GAME_OVER[] = {
- LED_5,
- LED_8,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_C,
- LED_M
-};
-#endif //GAME_ENABLE
-
-#endif \ No newline at end of file
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rules.mk
deleted file mode 100644
index 3a6786af68..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gourdo1/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-LTO_ENABLE = yes # link time optimization -- achieves a smaller compiled size
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-VIA_ENABLE = yes
-
-MOUSEKEY_ENABLE = yes
-TAP_DANCE_ENABLE = no
-CAPS_WORD_ENABLE = yes # Enable built-in Caps Word functionality
-IDLE_TIMEOUT_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-ENCODER_DEFAULTACTIONS_ENABLE = no
-COLEMAK_LAYER_ENABLE = yes # Enable Colemak layer / set to no to disable
-INVERT_NUMLOCK_INDICATOR = yes
-GAME_ENABLE ?= yes # Enable Paddle Game / set to no to disable
-ifeq ($(strip $(GAME_ENABLE)), yes)
- OPT_DEFS += -DGAME_ENABLE
-endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/config.h
deleted file mode 100644
index 52f82bd60e..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
-
-#ifdef RGB_MATRIX_ENABLE
- #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
- #define RGB_DISABLE_WHEN_USB_SUSPENDED
-#endif
-
-// add fifth layer for colemak -- set "COLEMAK_LAYER_ENABLE = yes" in rules.mk to enable
-#if defined COLEMAK_LAYER_ENABLE
- #define DYNAMIC_KEYMAP_LAYER_COUNT 5
- #define _COLEMAK 4
-#endif // COLEMAK_LAYER_ENABLE
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/keymap.c
deleted file mode 100644
index 7cb2d9f6fe..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,204 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
- Copyright 2021 Jonavin
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "rgb_matrix_map.h"
-#include "jonavin.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Ins Rotary(Mute)
-// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del
-// Tab Q W E R T Y U I O P [ ] \ PgUp
-// Caps A S D F G H J K L ; " Enter PgDn
-// Sh_L Z X C V B N M , . ? Sh_R Up End
-// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
-
-
- [_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- TT(_LOWER), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFTCAPSWIN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_FN1] = LAYOUT(
- _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_CALC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG,
- _______, _______, RGB_VAI, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, _______, QK_BOOT, KC_HOME,
- KC_CAPS, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END,
- _______, RGB_NITE,RGB_HUI, _______, _______, _______, KC_NUM, _______, RGB_TOD, RGB_TOI, _______, _______, RGB_MOD, _______,
- _______, KC_WINLCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
-
- [_LOWER] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, _______, _______,
- _______, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PDOT, _______, _______, _______, KC_HOME,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, KC_PENT, KC_END,
- _______, KC_NO, KC_DEL, KC_INS, KC_NO, KC_NO, KC_NO, KC_P0, KC_00, KC_PDOT, KC_PSLS, _______, RCTL(KC_PGUP), _______,
- _______, _______, _______, KC_BSPC, _______, _______, _______, RCTL(KC_LEFT), RCTL(KC_PGDN), RCTL(KC_RIGHT)
- ),
-
- [_RAISE] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-#ifdef COLEMAK_LAYER_ENABLE
- [_COLEMAK] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- TT(_LOWER), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFTCAPSWIN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-#endif // COLEMAK_LAYER_ENABLE
-};
-
-#if defined(ENCODER_ENABLE) && !defined(ENCODER_DEFAULTACTIONS_ENABLE) // Encoder Functionality when not using userspace defaults
- void encoder_action_rgbhue(bool clockwise) {
- if (clockwise)
- rgblight_increase_hue_noeeprom();
- else
- rgblight_decrease_hue_noeeprom();
- }
-
- bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t mods_state = get_mods();
- if (mods_state & MOD_BIT(KC_LSFT) ) { // If you are holding L shift, encoder changes layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_RSFT) ) { // If you are holding R shift, Page up/dn
- unregister_mods(MOD_BIT(KC_RSFT));
- encoder_action_navpage(clockwise);
- register_mods(MOD_BIT(KC_RSFT));
- } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_RCTL)) { // if holding Right Ctrl, change rgb hue/colour
- encoder_action_rgbhue(clockwise);
- } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- switch(get_highest_layer(layer_state)) {
- case _FN1:
- #ifdef IDLE_TIMEOUT_ENABLE
- timeout_update_threshold(clockwise);
- #endif
- break;
- default:
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- break;
- }
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
- }
-#endif // ENCODER_ENABLE && !ENCODER_DEFAULTACTIONS_ENABLE
-
-#ifdef RGB_MATRIX_ENABLE
- // Capslock, Scroll lock and Numlock indicator on Left side lights.
- bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- led_t led_state = host_keyboard_led_state();
- if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF);
- if (led_state.scroll_lock) {
- rgb_matrix_set_color(LED_L1, RGB_GREEN);
- rgb_matrix_set_color(LED_L2, RGB_GREEN);
- }
-
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF
- rgb_matrix_set_color(LED_L3, RGB_MAGENTA);
- rgb_matrix_set_color(LED_L4, RGB_MAGENTA);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_L3, RGB_MAGENTA);
- rgb_matrix_set_color(LED_L4, RGB_MAGENTA);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-
- if (led_state.caps_lock) {
- rgb_matrix_set_color(LED_L5, RGB_RED);
- rgb_matrix_set_color(LED_L6, RGB_RED);
- rgb_matrix_set_color(LED_L7, RGB_RED);
- }
- if (keymap_config.no_gui) {
- rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Win key when disabled
- }
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- rgb_matrix_set_color(LED_R2, RGB_RED);
- rgb_matrix_set_color(LED_R3, RGB_RED);
- rgb_matrix_set_color(LED_R4, RGB_RED);
- rgb_matrix_set_color(LED_FN, RGB_RED); //FN key
-
- // Add RGB Timeout Indicator -- shows 0 to 139 using F row and num row; larger numbers using 16bit code
- uint16_t timeout_threshold = get_timeout_threshold();
- if (timeout_threshold <= 10) rgb_matrix_set_color(LED_LIST_FUNCROW[timeout_threshold], RGB_RED);
- else if (timeout_threshold < 140) {
- rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold / 10)], RGB_RED);
- rgb_matrix_set_color(LED_LIST_NUMROW[(timeout_threshold % 10)], RGB_RED);
- } else { // >= 140 minutes, just show these 3 lights
- rgb_matrix_set_color(LED_LIST_NUMROW[10], RGB_RED);
- rgb_matrix_set_color(LED_LIST_NUMROW[11], RGB_RED);
- rgb_matrix_set_color(LED_LIST_NUMROW[12], RGB_RED);
- }
- break;
- case _LOWER:
- for (uint8_t i=0; i<ARRAYSIZE(LED_LIST_NUMPAD); i++) {
- rgb_matrix_set_color(LED_LIST_NUMPAD[i], RGB_MAGENTA);
- }
- rgb_matrix_set_color(LED_R4, RGB_MAGENTA);
- rgb_matrix_set_color(LED_R5, RGB_MAGENTA);
- rgb_matrix_set_color(LED_R6, RGB_MAGENTA);
- break;
- case _RAISE:
- rgb_matrix_set_color(LED_R6, RGB_GREEN);
- rgb_matrix_set_color(LED_R7, RGB_GREEN);
- rgb_matrix_set_color(LED_R8, RGB_GREEN);
- break;
-#ifdef COLEMAK_LAYER_ENABLE
- case _COLEMAK:
- for (uint8_t i=0; i<ARRAYSIZE(LED_SIDE_RIGHT); i++) {
- rgb_matrix_set_color(LED_SIDE_RIGHT[i], RGB_BLUE);
- }
- break;
-#endif
- default:
- break;
- }
- return false;
- }
-#endif
-
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGB_MATRIX_ENABLE
- rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR);
- rgb_matrix_set_color_all(RGB_NAUTILUS); // Default startup colour
- activate_rgb_nightmode(false); // Set to true if you want to startup in nightmode, otherwise use Fn + Z to toggle
- #endif
-}
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/readme.md
deleted file mode 100644
index 6e8d6ba8a5..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,65 +0,0 @@
-# jonavin's GMMK Pro layout
-
-- Add Fn layer keys from Glorious Core mapping that's missing in the default qmk mapping
-- Add PrtScr, Scroll Lock, Break, NumLock to Fn layer
-- Implement Win key lock using Fn+Win like in Glorious Core firmware
-- Layer 2 mod on Caps Lock with double-tap to switch to this layer, double tap to switch back
-- Layer 2 provides arrows on WASD and additional nav keys + right hand numpad with 00; an be used for Alt Code entry
-- Layer 2 left spacebar Backspace
-- add double tap of Left Shift to toggle Caps Lock
-- additional encoder functionality
- - FN Layer - change rgb idle timeout
- - holding Left shift, change layers
- - holding right shift, Navigate page up/down
- - holding Left Ctrl, navigate prev/next word
- - holding Right Ctrl, changes RGB hue/colour
- - holding Left Alt, change media prev/next track
- - default is change volume
-
-- LED/RGB Functionality
- - RGB idle timeout (default 5 minutes)
- - Can be changed in FN layer with < and > or encoder
- - setting to zero disables timeout
- - indicators in FN layer using RGB in FN and number rows to show the timeout in minutes
- - LED address location map as enum definition in rgb_matrix_map.h
- - LED group lists for arrows, numpad, F row, num row, left and right side LEDs
- - default startup in single mode with default colour
- - Capslock, Scroll Lock, and Num Lock (not set) indicator on left side LED
- - Layer indicator on right side LED
- - Fn key light up red when Fn layer activate
- - Win Key light up red when Win Lock mode enabled
- - Layer 2 activation lights up Numpad area
- - Fn + Z to turn off all RGB lights except rgb indicators; press again to toggle
-
-rules.mk OPTIONS - Active features from userspace
-STARTUP_NUMLOCK_ON = yes
- - turns on NUMLOCK by default
-
-ENCODER_DEFAULTACTIONS_ENABLE = yes
- - Enabled default encoder funtions
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
- - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS
-
-IDLE_TIMEOUT_ENABLE = yes
- - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically
-
-INVERT_NUMLOCK_INDICATOR
- - inverts the Num lock indicator, LED is on when num lokc is off
-
-COLEMAK_LAYER_ENABLE = yes
- - Enabled optional 5th layer for COLEMAK layout
- - Use Shift and encoder to enter 5th layer, right led indicator lights up BLUE
-
-## All layers diagram
-Default layer
-![image](https://user-images.githubusercontent.com/71780717/124177658-82324880-da7e-11eb-9421-b69100131062.png)
-
-Fn Layer
-![image](https://user-images.githubusercontent.com/71780717/131255937-06c9691b-835f-4c94-93e6-6d1dc3de272b.png)
-
-Layer 2 (Caps Lock Mod)
-![image](https://user-images.githubusercontent.com/71780717/124177683-8b231a00-da7e-11eb-9434-e2475f679a54.png)
-
-Optional COLEMAK layer
-![image](https://user-images.githubusercontent.com/71780717/131235050-980d2f54-2d23-4ae8-a83f-9fcdbe60d6cb.png)
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rgb_matrix_map.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rgb_matrix_map.h
deleted file mode 100644
index 1ee5388905..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rgb_matrix_map.h
+++ /dev/null
@@ -1,144 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef RGB_MATRIX_ENABLE
-
- // Custom RGB Colours
- #define RGB_GODSPEED 0x00, 0xE4, 0xFF // colour for matching keycaps
- #define RGB_NAUTILUS 0x00, 0xA4, 0xA9 // Naurilus Font colours
-
- // RGB LED locations
- enum led_location_map {
- LED_ESC, // 0, ESC, k13
- LED_GRV, // 1, ~, k16
- LEB_TAB, // 2, Tab, k11
- LED_CAPS, // 3, Caps, k21
- LED_LSFT, // 4, Sh_L, k00
- LED_LCTL, // 5, Ct_L, k06
- LED_F1, // 6, F1, k26
- LED_1, // 7, 1, k17
- LED_Q, // 8, Q, k10
- LED_A, // 9, A, k12
- LED_Z, // 10, Z, k14
- LED_LWIN, // 11, Win_L, k90
- LED_F2, // 12, F2, k36
- LED_2, // 13, 2, k27
- LED_W, // 14, W, k20
- LED_S, // 15, S, k22
- LED_X, // 16, X, k24
- LED_LALT, // 17, Alt_L, k93
- LED_F3, // 18, F3, k31
- LED_3, // 19, 3, k37
- LED_E, // 20, E, k30
- LED_D, // 21, D, k32
- LED_C, // 22, C, k34
- LED_F4, // 23, F4, k33
- LED_4, // 24, 4, k47
- LED_R, // 25, R, k40
- LED_F, // 26, F, k42
- LED_V, // 27, V, k44
- LED_F5, // 28, F5, k07
- LED_5, // 29, 5, k46
- LED_T, // 30, T, k41
- LED_G, // 31, G, k43
- LED_B, // 32, B, k45
- LED_SPC, // 33, SPACE, k94
- LED_F6, // 34, F6, k63
- LED_6, // 35, 6, k56
- LED_Y, // 36, Y, k51
- LED_H, // 37, H, k53
- LED_N, // 38, N, k55
- LED_F7, // 39, F7, k71
- LED_7, // 40, 7, k57
- LED_U, // 41, U, k50
- LED_J, // 42, J, k52
- LED_M, // 43, M, k54
- LED_F8, // 44, F8, k76
- LED_8, // 45, 8, k67
- LED_I, // 46, I, k60
- LED_K, // 47, K, k62
- LED_COMM, // 48, ,, k64
- LED_RALT, // 49, Alt_R, k95
- LED_F9, // 50, F9, ka6
- LED_9, // 51, 9, k77
- LED_O, // 52, O, k70
- LED_L, // 53, L, k72
- LED_DOT, // 54, ., k74
- LED_FN, // 55, FN, k92
- LED_F10, // 56, F10, ka7
- LED_0, // 57, 0, k87
- LED_P, // 58, P, k80
- LED_SCLN, // 59, ;, k82
- LED_SLSH, // 60, ?, k85
- LED_F11, // 61, F11, ka3
- LED_MINS, // 62, -, k86
- LED_LBRC, // 63, [, k81
- LED_QUOT, // 64, ", k83
- LED_RCTL, // 65, Ct_R, k04
- LED_F12, // 66, F12, ka5
- LED_L1, // 67, LED, l01
- LED_R1, // 68, LED, l11
- LED_INS, // 69, Prt, k97 -- remapped to INS
- LED_L2, // 70, LED, l02
- LED_R2, // 71, LED, l12
- LED_DEL, // 72, Del, k65
- LED_L3, // 73, LED, l03
- LED_R3, // 74, LED, l13
- LED_PGUP, // 75, PgUp, k15
- LED_L4, // 76, LED, l04
- LED_R4, // 77, LED, l14
- LED_EQL, // 78, =, k66
- LED_RIGHT, // 79, Right, k05
- LED_L5, // 80, LED, l05
- LED_R5, // 81, LED, l15
- LED_END, // 82, End, k75
- LED_L6, // 83, LED, l06
- LED_R6, // 84, LED, l16
- LED_BSPC, // 85, BSpc, ka1
- LED_PGDN, // 86, PgDn, k25
- LED_L7, // 87, LED, l07
- LED_R7, // 88, LED, l17
- LED_RBRC, // 89, ], k61
- LED_RSFT, // 90, Sh_R, k91
- LED_L8, // 91, LED, l08
- LED_R8, // 92, LED, l18
- LED_BSLS, // 93, \, ka2
- LED_UP, // 94, Up, k35
- LED_LEFT, // 95, Left, k03
- LED_ENT, // 96, Enter, ka4
- LED_DOWN // 97, Down, k73
- };
-
- const uint8_t LED_LIST_WASD[] = { LED_W, LED_A, LED_S, LED_D };
-
- const uint8_t LED_LIST_ARROWS[] = { LED_LEFT, LED_RIGHT, LED_UP, LED_DOWN };
-
- const uint8_t LED_LIST_FUNCROW[] = { LED_ESC, LED_F1, LED_F2, LED_F3, LED_F4, LED_F5, LED_F6, LED_F7, LED_F8, LED_F9, LED_F10, LED_F11, LED_F12, LED_INS};
-
- const uint8_t LED_LIST_NUMROW[] = { LED_GRV, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, LED_BSPC, LED_DEL};
-
- const uint8_t LED_LIST_NUMPAD[] = {
- LED_7, LED_8, LED_9,
- LED_U, LED_I, LED_O,
- LED_J, LED_K, LED_L,
- LED_M, LED_COMM, LED_DOT
- };
-
- const uint8_t LED_SIDE_LEFT[] = { LED_L1, LED_L2, LED_L3, LED_L4, LED_L5, LED_L6, LED_L7, LED_L8};
-
- const uint8_t LED_SIDE_RIGHT[] = { LED_R1, LED_R2, LED_R3, LED_R4, LED_R5, LED_R6, LED_R7, LED_R8};
-
-#endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rules.mk
deleted file mode 100644
index 1ffc2058a2..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-VIA_ENABLE = yes
-MOUSEKEY_ENABLE = no
-TAP_DANCE_ENABLE = yes
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-IDLE_TIMEOUT_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-ENCODER_DEFAULTACTIONS_ENABLE = no
-
-COLEMAK_LAYER_ENABLE = yes #Enable Colemak layer / set to no to disable
-INVERT_NUMLOCK_INDICATOR = yes
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/ansi.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/ansi.c
deleted file mode 100644
index a7ab0c9cc3..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/ansi.c
+++ /dev/null
@@ -1,241 +0,0 @@
-/* Copyright 2021 Gigahawk
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// clang-format off
-#include "ansi.h"
-
-#ifdef RGB_MATRIX_ENABLE
-led_config_t PROGMEM g_led_config = {{
- { 4, NO_LED, NO_LED, 95, 65, 79, 5, 28 },
- { 8, 2, 9, 0, 10, 75, 1, 7 },
- { 14, 3, 15, NO_LED, 16, 86, 6, 13 },
- { 20, 18, 21, 23, 22, 94, 12, 19 },
- { 25, 30, 26, 31, 27, 32, 29, 24 },
- { 41, 36, 42, 37, 43, 38, 35, 40 },
- { 46, 89, 47, 34, 48, 72, 78, 45 },
- { 52, 39, 53, 97, 54, 82, 44, 51 },
- { 58, 63, 59, 64, NO_LED, 60, 62, 57 },
- { 11, 90, 55, 17, 33, 49, NO_LED, 69 },
- { NO_LED, 85, 93, 61, 96, 66, 50, 56 }
-}, {
- {0, 0}, // 0, ESC, k13
- {0, 15}, // 1, ~, k16
- {4, 26}, // 2, Tab, k11
- {5, 38}, // 3, Caps, k21
- {9, 49}, // 4, Sh_L, k00
- {2, 61}, // 5, Ct_L, k06
- {18, 0}, // 6, F1, k26
- {14, 15}, // 7, 1, k17
- {22, 26}, // 8, Q, k10
- {25, 38}, // 9, A, k12
- {33, 49}, // 10, Z, k14
- {20, 61}, // 11, Win_L, k90
- {33, 0}, // 12, F2, k36
- {29, 15}, // 13, 2, k27
- {36, 26}, // 14, W, k20
- {40, 38}, // 15, S, k22
- {47, 49}, // 16, X, k24
- {38, 61}, // 17, Alt_L, k93
- {47, 0}, // 18, F3, k31
- {43, 15}, // 19, 3, k37
- {51, 26}, // 20, E, k30
- {54, 38}, // 21, D, k32
- {61, 49}, // 22, C, k34
- {61, 0}, // 23, F4, k33
- {58, 15}, // 24, 4, k47
- {65, 26}, // 25, R, k40
- {69, 38}, // 26, F, k42
- {76, 49}, // 27, V, k44
- {79, 0}, // 28, F5, k07
- {72, 15}, // 29, 5, k46
- {79, 26}, // 30, T, k41
- {83, 38}, // 31, G, k43
- {90, 49}, // 32, B, k45
- {92, 61}, // 33, SPACE, k94
- {94, 0}, // 34, F6, k63
- {87, 15}, // 35, 6, k56
- {94, 26}, // 36, Y, k51
- {98, 38}, // 37, H, k53
- {105, 49}, // 38, N, k55
- {108, 0}, // 39, F7, k71
- {101, 15}, // 40, 7, k57
- {108, 26}, // 41, U, k50
- {112, 38}, // 42, J, k52
- {119, 49}, // 43, M, k54
- {123, 0}, // 44, F8, k76
- {116, 15}, // 45, 8, k67
- {123, 26}, // 46, I, k60
- {126, 38}, // 47, K, k62
- {134, 49}, // 48, ,, k64
- {145, 61}, // 49, Alt_R, k95
- {141, 0}, // 50, F9, ka6
- {130, 15}, // 51, 9, k77
- {137, 26}, // 52, O, k70
- {141, 38}, // 53, L, k72
- {148, 49}, // 54, ., k74
- {159, 61}, // 55, FN, k92
- {155, 0}, // 56, F10, ka7
- {145, 15}, // 57, 0, k87
- {152, 26}, // 58, P, k80
- {155, 38}, // 59, ;, k82
- {163, 49}, // 60, ?, k85
- {170, 0}, // 61, F11, ka3
- {159, 15}, // 62, -, k86
- {166, 26}, // 63, [, k81
- {170, 38}, // 64, ", k83
- {173, 61}, // 65, Ct_R, k04
- {184, 0}, // 66, F12, ka5
- {0, 8}, // 67, LED, l01
- {224, 8}, // 68, LED, l11
- {202, 0}, // 69, Prt, k97
- {0, 15}, // 70, LED, l02
- {224, 15}, // 71, LED, l12
- {224, 15}, // 72, Del, k65
- {0, 21}, // 73, LED, l03
- {224, 21}, // 74, LED, l13
- {224, 26}, // 75, PgUp, k15
- {0, 28}, // 76, LED, l04
- {224, 28}, // 77, LED, l14
- {173, 15}, // 78, =, k66
- {220, 64}, // 79, Right, k05
- {0, 35}, // 80, LED, l05
- {224, 35}, // 81, LED, l15
- {224, 49}, // 82, End, k75
- {0, 42}, // 83, LED, l06
- {224, 42}, // 84, LED, l16
- {195, 15}, // 85, BSpc, ka1
- {224, 38}, // 86, PgDn, k25
- {0, 48}, // 87, LED, l07
- {224, 48}, // 88, LED, l17
- {181, 26}, // 89, ], k61
- {182, 49}, // 90, Sh_R, k91
- {0, 55}, // 91, LED, l08
- {224, 55}, // 92, LED, l18
- {199, 26}, // 93, \, ka2
- {206, 52}, // 94, Up, k35
- {191, 64}, // 95, Left, k03
- {193, 38}, // 96, Enter, ka4
- {206, 64} // 97, Down, k73
-}, {
- 4, 4, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 4, 2, 2, 4, 2, 2,
- 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
-}};
-
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
- {0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
- {0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
- {0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
- {0, CS10_SW1, CS11_SW1, CS12_SW1}, // 3, Caps, k21
- {0, CS13_SW1, CS14_SW1, CS15_SW1}, // 4, Sh_L, k00
- {0, CS16_SW1, CS17_SW1, CS18_SW1}, // 5, Ct_L, k06
- {0, CS1_SW2, CS2_SW2, CS3_SW2}, // 6, F1, k26
- {0, CS4_SW2, CS5_SW2, CS6_SW2}, // 7, 1, k17
- {0, CS7_SW2, CS8_SW2, CS9_SW2}, // 8, Q, k10
- {0, CS10_SW2, CS11_SW2, CS12_SW2}, // 9, A, k12
- {0, CS13_SW2, CS14_SW2, CS15_SW2}, // 10, Z, k14
- {0, CS16_SW2, CS17_SW2, CS18_SW2}, // 11, Win_L, k90
- {0, CS1_SW3, CS2_SW3, CS3_SW3}, // 12, F2, k36
- {0, CS4_SW3, CS5_SW3, CS6_SW3}, // 13, 2, k27
- {0, CS7_SW3, CS8_SW3, CS9_SW3}, // 14, W, k20
- {0, CS10_SW3, CS11_SW3, CS12_SW3}, // 15, S, k22
- {0, CS13_SW3, CS14_SW3, CS15_SW3}, // 16, X, k24
- {0, CS16_SW3, CS17_SW3, CS18_SW3}, // 17, Alt_L, k93
- {0, CS1_SW4, CS2_SW4, CS3_SW4}, // 18, F3, k31
- {0, CS4_SW4, CS5_SW4, CS6_SW4}, // 19, 3, k37
- {0, CS7_SW4, CS8_SW4, CS9_SW4}, // 20, E, k30
- {0, CS10_SW4, CS11_SW4, CS12_SW4}, // 21, D, k32
- {0, CS13_SW4, CS14_SW4, CS15_SW4}, // 22, C, k34
- {0, CS1_SW5, CS2_SW5, CS3_SW5}, // 23, F4, k33
- {0, CS4_SW5, CS5_SW5, CS6_SW5}, // 24, 4, k47
- {0, CS7_SW5, CS8_SW5, CS9_SW5}, // 25, R, k40
- {0, CS10_SW5, CS11_SW5, CS12_SW5}, // 26, F, k42
- {0, CS13_SW5, CS14_SW5, CS15_SW5}, // 27, V, k44
- {0, CS1_SW6, CS2_SW6, CS3_SW6}, // 28, F5, k07
- {0, CS4_SW6, CS5_SW6, CS6_SW6}, // 29, 5, k46
- {0, CS7_SW6, CS8_SW6, CS9_SW6}, // 30, T, k41
- {0, CS10_SW6, CS11_SW6, CS12_SW6}, // 31, G, k43
- {0, CS13_SW6, CS14_SW6, CS15_SW6}, // 32, B, k45
- {0, CS16_SW6, CS17_SW6, CS18_SW6}, // 33, SPACE, k94
- {0, CS1_SW7, CS2_SW7, CS3_SW7}, // 34, F6, k63
- {0, CS4_SW7, CS5_SW7, CS6_SW7}, // 35, 6, k56
- {0, CS7_SW7, CS8_SW7, CS9_SW7}, // 36, Y, k51
- {0, CS10_SW7, CS11_SW7, CS12_SW7}, // 37, H, k53
- {0, CS13_SW7, CS14_SW7, CS15_SW7}, // 38, N, k55
- {0, CS1_SW8, CS2_SW8, CS3_SW8}, // 39, F7, k71
- {0, CS4_SW8, CS5_SW8, CS6_SW8}, // 40, 7, k57
- {0, CS7_SW8, CS8_SW8, CS9_SW8}, // 41, U, k50
- {0, CS10_SW8, CS11_SW8, CS12_SW8}, // 42, J, k52
- {0, CS13_SW8, CS14_SW8, CS15_SW8}, // 43, M, k54
- {0, CS1_SW9, CS2_SW9, CS3_SW9}, // 44, F8, k76
- {0, CS4_SW9, CS5_SW9, CS6_SW9}, // 45, 8, k67
- {0, CS7_SW9, CS8_SW9, CS9_SW9}, // 46, I, k60
- {0, CS10_SW9, CS11_SW9, CS12_SW9}, // 47, K, k62
- {0, CS13_SW9, CS14_SW9, CS15_SW9}, // 48, ,, k64
- {0, CS16_SW9, CS17_SW9, CS18_SW9}, // 49, Alt_R, k95
- {0, CS1_SW10, CS2_SW10, CS3_SW10}, // 50, F9, ka6
- {0, CS4_SW10, CS5_SW10, CS6_SW10}, // 51, 9, k77
- {0, CS7_SW10, CS8_SW10, CS9_SW10}, // 52, O, k70
- {0, CS10_SW10, CS11_SW10, CS12_SW10}, // 53, L, k72
- {0, CS13_SW10, CS14_SW10, CS15_SW10}, // 54, ., k74
- {0, CS16_SW10, CS17_SW10, CS18_SW10}, // 55, FN, k92
- {0, CS1_SW11, CS2_SW11, CS3_SW11}, // 56, F10, ka7
- {0, CS4_SW11, CS5_SW11, CS6_SW11}, // 57, 0, k87
- {0, CS7_SW11, CS8_SW11, CS9_SW11}, // 58, P, k80
- {0, CS10_SW11, CS11_SW11, CS12_SW11}, // 59, ;, k82
- {0, CS13_SW11, CS14_SW11, CS15_SW11}, // 60, ?, k85
- {0, CS1_SW12, CS2_SW12, CS3_SW12}, // 61, F11, ka3
- {0, CS4_SW12, CS5_SW12, CS6_SW12}, // 62, -, k86
- {0, CS7_SW12, CS8_SW12, CS9_SW12}, // 63, [, k81
- {0, CS10_SW12, CS11_SW12, CS12_SW12}, // 64, ", k83
- {0, CS16_SW12, CS17_SW12, CS18_SW12}, // 65, Ct_R, k04
-
- {1, CS1_SW1, CS2_SW1, CS3_SW1}, // 66, F12, ka5
- {1, CS13_SW1, CS14_SW1, CS15_SW1}, // 67, LED, l01
- {1, CS16_SW1, CS17_SW1, CS18_SW1}, // 68, LED, l11
- {1, CS4_SW2, CS5_SW2, CS6_SW2}, // 69, Prt, k97
- {1, CS13_SW2, CS14_SW2, CS15_SW2}, // 70, LED, l02
- {1, CS16_SW2, CS17_SW2, CS18_SW2}, // 71, LED, l12
- {1, CS4_SW3, CS5_SW3, CS6_SW3}, // 72, Del, k65
- {1, CS13_SW3, CS14_SW3, CS15_SW3}, // 73, LED, l03
- {1, CS16_SW3, CS17_SW3, CS18_SW3}, // 74, LED, l13
- {1, CS4_SW4, CS5_SW4, CS6_SW4}, // 75, PgUp, k15
- {1, CS13_SW4, CS14_SW4, CS15_SW4}, // 76, LED, l04
- {1, CS16_SW4, CS17_SW4, CS18_SW4}, // 77, LED, l14
- {1, CS1_SW5, CS2_SW5, CS3_SW5}, // 78, =, k66
- {1, CS10_SW5, CS11_SW5, CS12_SW5}, // 79, Right, k05
- {1, CS13_SW5, CS14_SW5, CS15_SW5}, // 80, LED, l05
- {1, CS16_SW5, CS17_SW5, CS18_SW5}, // 81, LED, l15
- {1, CS4_SW6, CS5_SW6, CS6_SW6}, // 82, End, k75
- {1, CS13_SW6, CS14_SW6, CS15_SW6}, // 83, LED, l06
- {1, CS16_SW6, CS17_SW6, CS18_SW6}, // 84, LED, l16
- {1, CS1_SW7, CS2_SW7, CS3_SW7}, // 85, BSpc, ka1
- {1, CS4_SW7, CS5_SW7, CS6_SW7}, // 86, PgDn, k25
- {1, CS13_SW7, CS14_SW7, CS15_SW7}, // 87, LED, l07
- {1, CS16_SW7, CS17_SW7, CS18_SW7}, // 88, LED, l17
- {1, CS1_SW8, CS2_SW8, CS3_SW8}, // 89, ], k61
- {1, CS4_SW8, CS5_SW8, CS6_SW8}, // 90, Sh_R, k91
- {1, CS13_SW8, CS14_SW8, CS15_SW8}, // 91, LED, l08
- {1, CS16_SW8, CS17_SW8, CS18_SW8}, // 92, LED, l18
- {1, CS1_SW9, CS2_SW9, CS3_SW9}, // 93, \, ka2
- {1, CS4_SW9, CS5_SW9, CS6_SW9}, // 94, Up, k35
- {1, CS4_SW10, CS5_SW10, CS6_SW10}, // 95, Left, k03
- {1, CS1_SW11, CS2_SW11, CS3_SW11}, // 96, Enter, ka4
- {1, CS4_SW11, CS5_SW11, CS6_SW11}, // 97, Down, k73
-};
-// clang-format on
-#endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/config.h
deleted file mode 100644
index 0a10e8c8cf..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/config.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Copyright 2021 Matt Gauf
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// clang-format off
-#pragma once
-
-/* Defaults */
-#define RAW_USAGE_PAGE 0x200
-#define RAW_USAGE_ID 0x40
-
-/* Board Features */
-#define DYNAMIC_MACRO_SIZE 512
-
-/* RGB Matrix Features */
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
-#define RGB_DISABLE_WHEN_USB_SUSPENDED true
-
-/* RGB Matrix Framebuffer Config */
-// #define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-// #define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 25
-
-/* RGB Matrix Disabled Effects */
-#define DISABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue, speed is hue for secondary hue
-#define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades saturation
-#define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Single hue 3 blade spinning pinwheel fades brightness
-#define DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Full dual gradients scrolling out to in
-#define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL // Full gradient spinning pinwheel around center of keyboard
-#define DISABLE_RGB_MATRIX_DUAL_BEACON // Full gradient spinning around center of keyboard
-#define DISABLE_RGB_MATRIX_RAINBOW_BEACON // Full tighter gradient spinning around center of keyboard
-#define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Full dual gradients spinning two halfs of keyboard
-#define DISABLE_RGB_MATRIX_RAINDROPS // Randomly changes a single key's hue
-#define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation
-#define DISABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right, then back to the left
-#define DISABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right
-
-#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS)
- #define DISABLE_RGB_MATRIX_DIGITAL_RAIN // That famous computer simulation
-#endif
-
-#if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES)
- #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out
- #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out
- #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out
- #define DISABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out
- #define DISABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out
-#endif
-
-#define DISABLE_RGB_MATRIX_EFFECT_MAX
-// clang-format on
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/helpers.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/helpers.c
deleted file mode 100644
index d30224636b..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/helpers.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright 2021 Matt Gauf
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "rgb_matrix.h"
-
-void rgb_matrix_set_color_flags(uint8_t red, uint8_t green, uint8_t blue, uint8_t flags) {
- for (uint8_t ii = 0; ii < RGB_MATRIX_LED_COUNT; ii++) {
- if (g_led_config.flags[ii] & flags) {
- rgb_matrix_set_color(ii, red, green, blue);
- }
- }
-}
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap.c
deleted file mode 100644
index ceddf81a77..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/* Copyright 2021 Matt Gauf
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// clang-format off
-#include QMK_KEYBOARD_H
-#include "keymap_helpers.h"
-
-
-enum custom_codes {
- SET_MP = RGB_M_P,
- SET_MB = RGB_M_B,
- SET_MR = RGB_M_R,
-
- MG_F17 = SAFE_RANGE,
- MG_F18,
- MG_F19
-};
-
-
-enum layer_names {
- _DEFAULT = 0,
- _EFFECTS,
- _UTILITY,
- _DFUMODE
-};
-
-
-// static uint8_t rgb_pin_fn_column[] = {PIN_DEL,PIN_PGUP,PIN_PGDN,PIN_END};
-// static uint8_t rgb_pin_left_underglow[] = {PIN_LED_L01,PIN_LED_L02,PIN_LED_L03,PIN_LED_L04,PIN_LED_L05,PIN_LED_L06,PIN_LED_L07,PIN_LED_L08};
-// static uint8_t rgb_pin_right_underglow[] = {PIN_LED_L11,PIN_LED_L12,PIN_LED_L13,PIN_LED_L14,PIN_LED_L15,PIN_LED_L16,PIN_LED_L17,PIN_LED_L18};
-
-
-#define MODS_SHIFT ((get_mods() | get_oneshot_mods()) & MOD_MASK_SHIFT)
-#define MODS_CTRL ((get_mods() | get_oneshot_mods()) & MOD_MASK_CTRL)
-#define MODS_ALT ((get_mods() | get_oneshot_mods()) & MOD_MASK_ALT)
-#define MODS_GUI ((get_mods() | get_oneshot_mods()) & MOD_MASK_GUI)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT] = LAYOUT(KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MG_F17, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, MO(_EFFECTS), KC_LEFT, KC_DOWN, KC_RGHT),
-
- [_EFFECTS] = LAYOUT(_______, KC_F13, KC_F14, KC_F15, KC_F16, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, MG_F18, _______,
- _______, SET_MP, SET_MB, SET_MR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_SAI, RGB_SPD,
- _______, _______, _______, _______, TG(_UTILITY), MO(_DFUMODE), _______, RGB_HUD, RGB_SAD, RGB_HUI),
-
- [_UTILITY] = LAYOUT(_______, _______, _______, _______, _______, _______, _______, _______, _______, DM_PLY1, DM_PLY2, DM_REC1, DM_REC2, DM_RSTP, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_DFUMODE] = LAYOUT(QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MG_F19, DB_TOGG,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-};
-// Runs constantly in the background, in a loop.
-bool rgb_matrix_indicators_user(void) {
- if (rgb_matrix_get_flags() & (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER)) {
-
- if (IS_LAYER_ON(_UTILITY)) {
- rgb_matrix_set_color(PIN_F9, LEDGREE);
- rgb_matrix_set_color(PIN_F10, LEDGREE);
- rgb_matrix_set_color(PIN_F11, LED_RED);
- rgb_matrix_set_color(PIN_F12, LED_RED);
- rgb_matrix_set_color(PIN_PRINT, LEDTEAL);
- }
-
- switch (get_highest_layer(layer_state)) {
- case _DFUMODE:
- rgb_matrix_set_color_all(LED_OFF);
- rgb_matrix_set_color(PIN_ESC, LED_RED);
- rgb_matrix_set_color(PIN_PRINT, LEDORAN);
- return;
- case _EFFECTS:
- rgb_matrix_set_color(PIN_PRINT, LEDGREE);
- break;
- default:
- break;
- }
-
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(PIN_CAPS, RGB_WHITE);
- }
-
- }
- return false;
-}
-
-
-// Called on start
-void dynamic_macro_record_start_user(int8_t direction) {
- dprint("-- Recording Started\n");
- layer_on(_UTILITY);
-}
-
-
-// Called on end
-void dynamic_macro_record_end_user(int8_t direction) {
- dprint("-- Recording Ended\n");
-}
-
-
-// Called on playback
-void dynamic_macro_play_user(int8_t direction) {
- dprint("-- Recording Playing\n");
-}
-
-
-// Runs on encoder event
-bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t curr_mod = get_mods();
-
- if (IS_LAYER_ON(_EFFECTS)) {
- if (clockwise) {
- rgb_matrix_increase_val();
- } else {
- rgb_matrix_decrease_val();
- }
- } else {
- if (MODS_GUI) {
- if (MODS_GUI && MODS_SHIFT) {
- clear_mods();
- if (clockwise) {
- tap_code16(LSG(KC_Z));
- } else {
- tap_code16(LGUI(KC_Z));
- }
- set_mods(curr_mod);
- } else if (MODS_GUI && MODS_ALT) {
- clear_mods();
- if (clockwise) {
- tap_code(KC_RIGHT);
- } else {
- tap_code(KC_LEFT);
- }
- set_mods(curr_mod);
- } else {
- if (clockwise) {
- tap_code16(LGUI(KC_TAB));
- } else {
- tap_code16(LSG(KC_TAB));
- }
- }
- } else {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
-}
-
-
-// Runs on key event
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case MG_F17:
- if (record->event.pressed) {
- tap_code16(HYPR(KC_F17));
- }
- return false;
- case MG_F18:
- if (record->event.pressed) {
- tap_code16(HYPR(KC_F18));
- }
- return false;
- case MG_F19:
- if (record->event.pressed) {
- tap_code16(HYPR(KC_F19));
- }
- return false;
- case RGB_TOG:
- if (record->event.pressed) {
- switch (rgb_matrix_get_flags()) {
- case LED_FLAG_ALL:
- rgb_matrix_set_flags(LED_FLAG_NONE);
- break;
- case LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER:
- rgb_matrix_set_flags(LED_FLAG_ALL);
- break;
- case LED_FLAG_UNDERGLOW:
- rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER);
- break;
- default:
- rgb_matrix_set_flags(LED_FLAG_UNDERGLOW);
- break;
- }
- }
- return false;
- default:
- return true; // Process all other keycodes normally
- }
-}
-// clang-format on
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap_helpers.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap_helpers.h
deleted file mode 100644
index 2a6e8dae7b..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/keymap_helpers.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/* Copyright 2021 Matt Gauf
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// clang-format off
-#include <inttypes.h>
-#include "rgb_matrix_types.h"
-
-/* Color Codes */
-#define LEDWHIT 0xff, 0xff, 0xff
-#define LED_RED 0xff, 0x00, 0x00
-#define LEDORAN 0xff, 0x29, 0x00
-#define LEDGOLD 0xff, 0x80, 0x00
-#define LEDYELL 0xff, 0xff, 0x00
-#define LEDCHAR 0x80, 0xff, 0x00
-#define LEDGREE 0x00, 0xff, 0x00
-#define LEDFOAM 0x00, 0xff, 0x40
-#define LEDTEAL 0x00, 0x80, 0xff
-#define LEDBLUE 0x00, 0x00, 0xff
-#define LEDPURP 0x80, 0x00, 0xff
-#define LEDMAGE 0xff, 0x00, 0xff
-#define LEDPINK 0xff, 0x00, 0x80
-#define LEDBLAC 0x00, 0x00, 0x00
-#define LED_OFF 0x00, 0x00, 0x00
-
-/* Color Functions */
-void rgb_matrix_set_color_flags(uint8_t red, uint8_t green, uint8_t blue, uint8_t flags);
-
-/* Function Row */
-#define PIN_ESC 0
-#define PIN_F1 6
-#define PIN_F2 12
-#define PIN_F3 18
-#define PIN_F4 23
-#define PIN_F5 28
-#define PIN_F6 34
-#define PIN_F7 39
-#define PIN_F8 44
-#define PIN_F9 50
-#define PIN_F10 56
-#define PIN_F11 61
-#define PIN_F12 66
-#define PIN_PRINT 69
-
-/* Number Row */
-#define PIN_0 57
-#define PIN_1 7
-#define PIN_2 13
-#define PIN_3 19
-#define PIN_4 24
-#define PIN_5 29
-#define PIN_6 35
-#define PIN_7 40
-#define PIN_8 45
-#define PIN_9 51
-
-/* QWERTY */
-#define PIN_A 9
-#define PIN_B 32
-#define PIN_C 22
-#define PIN_D 21
-#define PIN_E 20
-#define PIN_F 26
-#define PIN_G 31
-#define PIN_H 37
-#define PIN_I 46
-#define PIN_J 42
-#define PIN_K 47
-#define PIN_L 53
-#define PIN_M 43
-#define PIN_N 38
-#define PIN_O 52
-#define PIN_P 58
-#define PIN_Q 8
-#define PIN_R 25
-#define PIN_S 15
-#define PIN_T 30
-#define PIN_U 41
-#define PIN_V 27
-#define PIN_W 14
-#define PIN_X 16
-#define PIN_Y 36
-#define PIN_Z 10
-
-/* Symbols */
-#define PIN_MINUS 62
-#define PIN_EQUAL 78
-#define PIN_RBRACKET 89
-#define PIN_LBRACKET 63
-#define PIN_BSLASH 93
-#define PIN_SLASH 60
-#define PIN_SCOLON 59
-#define PIN_QUOTE 64
-#define PIN_COMMA 48
-#define PIN_DOT 54
-#define PIN_GRAVE 1
-
-/* Indentation */
-#define PIN_TAB 2
-#define PIN_SPACE 33
-
-/* Line Control */
-#define PIN_BSPACE 85
-#define PIN_ENTER 96
-
-/* Indicator */
-#define PIN_CAPS 3
-
-/* Left Modifiers */
-#define PIN_LSHIFT 4
-#define PIN_LCTRL 5
-#define PIN_LALT 17
-#define PIN_LGUI 11
-
-/* Right Modifiers */
-#define PIN_RSHIFT 90
-#define PIN_RCTRL 65
-#define PIN_RALT 49
-#define PIN_FN 55
-
-/* Arrow Keys */
-#define PIN_UP 94
-#define PIN_DOWN 97
-#define PIN_LEFT 95
-#define PIN_RIGHT 79
-
-/* Fn Column */
-#define PIN_DEL 72 // ┳ TOP
-#define PIN_PGUP 75 // ┃
-#define PIN_PGDN 86 // ┃
-#define PIN_END 82 // ┻ BOTTOM
-
-/* Left Side Underglow */
-#define PIN_LED_L01 67 // ┳ TOP
-#define PIN_LED_L02 70 // ┃
-#define PIN_LED_L03 73 // ┃
-#define PIN_LED_L04 76 // ┃
-#define PIN_LED_L05 80 // ┃
-#define PIN_LED_L06 83 // ┃
-#define PIN_LED_L07 87 // ┃
-#define PIN_LED_L08 91 // ┻ BOTTOM
-
-/* Right Side Underglow */
-#define PIN_LED_L11 68 // ┳ TOP
-#define PIN_LED_L12 71 // ┃
-#define PIN_LED_L13 74 // ┃
-#define PIN_LED_L14 77 // ┃
-#define PIN_LED_L15 81 // ┃
-#define PIN_LED_L16 84 // ┃
-#define PIN_LED_L17 88 // ┃
-#define PIN_LED_L18 92 // ┻ BOTTOM
-
-// clang-format on
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/readme.md
deleted file mode 100644
index 94e268a0e3..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/readme.md
+++ /dev/null
@@ -1,52 +0,0 @@
-# @mattgauf's GMMK Pro layout
-
-### `_DEFAULT`
-> *Based on the default ansi layout, this keymap contains the following changes to the default layer.*
- - Screensaver: `HYPER(F17)`
- - `KC_PSCR` → `MG_F17`
- - `KC_DEL` → `KC_HOME`
-
-> *Additionally the encoder will follow new rules when holding a key.*
- - `KC_GUI` will cycle through applications (macOS variant)
- - `KC_GUI + KC_ALT` will tap the left and right arrows.
- - `KC_GUI + KC_SHIFT` will tap Undo and Redo (macOS variant)
-
-### `_EFFECTS`
-> *The function layer is now used for additional layer access, effect keys, and media keys (following the Macbook Pro fn key layout).*
-
-> *Additionally while effects is active, the encoder will only adjust the brightness of the RGB matrix.*
- - The RGB matrix effect and speed keys are located on the right hand vertical nav column.
- - `KC_HOME` → `RGB_MOD`
- - `KC_PGUP` → `RGB_RMOD`
- - `KC_PGDN` → `RGB_SPI`
- - `KC_END` → `RGB_SPD`
- - The RGB matrix Hue, Saturation keys are mapped to the arrow keys.
- - `KC_UP` → `RGB_SAI`
- - `KC_DN` → `RGB_SAD`
- - `KC_LEFT` → `RGB_HUD`
- - `KC_RIGHT` → `RGB_HUI`
- - The RGB matrix toggle is intercepted in process_record_user() cycling through the `LED_FLAG` modifiers. (`NONE`, `UNDERGLOW`, `KEYLIGHT`, `ALL`)
- - `KC_SLSH` → `RGB_TOG`
- - Hibernate: `HYPER(F18)`
- - `MG_F17` → `MG_F18`
-
-
-### `_UTILITY`
-*The utility layer is currently used for remapping* `KF_F9` *to* `KC_F12` *&* `MG_F17` *to the dynamic macro keys.*
- - Playback
- - `KC_F9` → `DM_PLY1`
- - `KC_F10` → `DM_PLY2`
- - Record
- - `KC_F11` → `DM_REC1`
- - `KC_F12` → `DM_REC2`
- - Stop Recording
- - `MG_F17` → `DM_RSTP`
-
-### `_DFUMODE`
-> *The final layer is used for resetting the board or triggering an immediate shutdown.*
- - DFU Mode
- - `KC_ESC` → `RESET`
- - Shutdown: `HYPER(F19)`
- - `MG_F17` → `MG_F19`
- - Encoder press, triggers debug output.
- - `KC_MUTE` → `DB_TOGG`
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/rules.mk
deleted file mode 100644
index 76e1674d58..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mattgauf/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-# Build rules
-LIB_SRC += ansi.c
-LIB_SRC += helpers.c
-
-# Overrides
-MOUSEKEY_ENABLE = no # Mouse keys
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/moults31/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/moults31/keymap.c
deleted file mode 100644
index 759c4034c0..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/moults31/keymap.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include "moults31.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
-// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del
-// Tab Q W E R T Y U I O P [ ] \ PgUp
-// Caps A S D F G H J K L ; " Enter PgDn
-// Sh_L Z X C V B N M , . ? Sh_R Up End
-// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
-
-
- // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without
- // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB
- // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI
- // if that's your preference.
- //
- // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and
- // it'll be back to normal when you plug it back in.
- [0] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MPLY,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_DEL,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, MO(2),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [1] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, _______, _______, QK_BOOT, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [2] = LAYOUT(
- M_GDB_STOP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, M_VSC_DBGCNSLFOCUS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, M_VSC_VIEWSIZEINC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, M_VSC_EDGRPPRV, M_VSC_VIEWSIZEDEC, M_VSC_EDGRPNXT, _______, _______, _______, _______, _______, _______, _______, _______, M_GDB_PLAY, M_GDB_PAUSE,
- _______, M_VSC_FILEPRV, M_VSC_FILENXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, M_GDB_STEPOUT, _______,
- _______, _______, _______, _______, _______, _______, _______, M_GDB_RESTART, M_GDB_STEPIN, M_GDB_STEPOVER
- ),
-
-};
-
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- const layer_state_t curr_layer = get_highest_layer(layer_state);
- if(curr_layer == 2) {
- if (clockwise) {
- moults31_tap_custom_code(M_VSC_FILENXT);
- } else {
- moults31_tap_custom_code(M_VSC_FILEPRV);
- }
- }
- else if(curr_layer == 1) {
- if (clockwise) {
- moults31_tap_custom_code(M_VSC_VIEWSIZEINC);
- } else {
- moults31_tap_custom_code(M_VSC_VIEWSIZEDEC);
- }
- }
- else {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- return false;
-}
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/keymap.c
deleted file mode 100644
index e6627959c4..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/keymap.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "vnmm.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [WIN_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, WIN_F, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [MAC_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, WIN_F, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [WIN_FN] = LAYOUT(
- _______, DF_WIN, DF_MAC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD,RGB_VAD, RGB_SPD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, KC_MPRV, _______, KC_MNXT
- ),
-
- [MAC_FN] = LAYOUT(
- _______, DF_WIN, DF_MAC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD,RGB_VAD, RGB_SPD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, KC_MPRV, _______, KC_MNXT
- ),
-};
-
-#if defined(ENCODER_MAP_ENABLE)
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
- [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
- [WIN_FN] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
- [MAC_FN] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
-};
-#endif
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/readme.md
deleted file mode 100644
index 28738e9bfc..0000000000
--- a/keyboards/gmmk/pro/rev1/ansi/keymaps/vnmm/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Vnmm's ANSI GMMK pro layout
-
-This keymap builds on the default but with a more sensible FN layer.
-
-## Features
-
-- Alphabet keys light up red when caps lock is on or shift is pressed
-- Pressing FN shows keys that have a definition
-- Via enabled
-- Reset to bootloader with FN+Space
diff --git a/keyboards/gmmk/pro/rev1/iso/info.json b/keyboards/gmmk/pro/rev1/iso/info.json
index 52ea4538c8..492a5cf486 100644
--- a/keyboards/gmmk/pro/rev1/iso/info.json
+++ b/keyboards/gmmk/pro/rev1/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "0.0.1"
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
diff --git a/keyboards/gmmk/pro/rev1/iso/iso.c b/keyboards/gmmk/pro/rev1/iso/iso.c
index 0ded23162f..9744447587 100644
--- a/keyboards/gmmk/pro/rev1/iso/iso.c
+++ b/keyboards/gmmk/pro/rev1/iso/iso.c
@@ -137,7 +137,7 @@ led_config_t g_led_config = {{
2, 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
}};
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
{0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
{0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/config.h b/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/config.h
deleted file mode 100644
index a0fbedde49..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/config.h
+++ /dev/null
@@ -1,146 +0,0 @@
-/* Copyright 2021 Jonavin Eng @Jonavin
- Copyright 2022 gourdo1 <gourdo1@outlook.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Force n-key rollover
-#define FORCE_NKRO
-
-// Set TT to two taps
-#define TAPPING_TOGGLE 2
-
-#ifdef COMMAND_ENABLE
-#define IS_COMMAND() (get_mods() == MOD_MASK_CTRL) //debug commands accessed by holding down both CTRLs: https://github.com/qmk/qmk_firmware/blob/master/docs/feature_command.md
-#endif
-
-// Caps Word configuration
-#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD
-#define CAPS_WORD_IDLE_TIMEOUT 10000 // Automatically turn off after x milliseconds of idle. 0 to never timeout.
-
-// Handle GRAVESC combo keys
-#define GRAVE_ESC_ALT_OVERRIDE
-// Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
-// Always send Escape if Control is pressed
-
-// #define TAPPING_TERM 180
-#define TAPPING_TERM 300
-#define TAPPING_TERM_PER_KEY
-
-#ifdef RGB_MATRIX_ENABLE
- #define RGB_DISABLE_WHEN_USB_SUSPENDED
- #define RGB_MATRIX_KEYPRESSES // Enables REACTIVE & SPLASH modes
- #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Enables Heatmap, Rain
-
- // RGB step values
- #define RGBLIGHT_HUE_STEP 32 // The number of steps to cycle through the hue by (default 10)
- #define RGBLIGHT_SAT_STEP 17 // The number of steps to increment the saturation by (default 17)
- #define RGBLIGHT_VAL_STEP 17 // The number of steps to increment the brightness by (default 17)
-
- // Startup values, when none have been set
- #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_REACTIVE // Sets the default effect mode, if none has been set (was RGB_MATRIX_SOLID_COLOR)
- #define RGB_MATRIX_DEFAULT_HUE 24 // Sets the default hue value, if none has been set
- #define RGB_MATRIX_DEFAULT_SAT 255 // Sets the default saturation value, if none has been set
- #define RGB_MATRIX_DEFAULT_VAL 127 // Sets the default brightness value, if none has been set
- #define RGB_MATRIX_DEFAULT_SPD 127 // Sets the default animation speed, if none has been set
-
- // Uncomment any #undef line below to turn OFF any default enabled RGB background effect (enabled in keyboards/gmmk/pro/config.h).
- #undef ENABLE_RGB_MATRIX_ALPHAS_MODS // Solid color (seems redundant; seems same as RGB_MATRIX_SOLID_COLOR?)
- //#undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Static, horizontal rainbow
- //#undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Static, vertical Rainbow
- //#undef ENABLE_RGB_MATRIX_BREATHING // Breathing animation using selected HSV color
- #undef ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right (with white)
- //#undef ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right (with black)
- #undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades sat (with white)
- //#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Single hue 3 blade spinning pinwheel fades brightness (with black)
- #undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // Single hue spinning spiral fades brightness (with white)
- //#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness (with black)
- //#undef ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard cycling through rainbow
- //#undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // Full gradient moving left to right
- //#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom
- #undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradient chevron scrolling left to right (too similar to cycle left right)
- //#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Rainbow circles coming to center.
- #undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Two Rainbow circles coming to 1/3 and 2/3 points. (seems mostly redundant with above)
- #undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Built-in cycling pinwheel (seems redundant with below)
- //#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard
- #undef ENABLE_RGB_MATRIX_RAINBOW_BEACON // Spinning rainbow (more distracting transitions)
- //#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Spinning rainbow (smoother)
- #undef ENABLE_RGB_MATRIX_DUAL_BEACON // Two rainbows spinning around keyboard (distracting, busy)
- #undef ENABLE_RGB_MATRIX_RAINDROPS // Sustained raindrops of blue, green, yellow (confusing to use with RGB layers)
- //#undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Sustained raindrops of blue, purple, pink, green (confusing to use with RGB layers, but slightly better than above)
- #undef ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight amount at the same time, then shifts back (very subtle)
- #undef ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight amount in a wave to the right, then back to the left (very subtle)
- #undef ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight amount and then back down in a wave to the right (very subtle)
- //#undef ENABLE_RGB_MATRIX_PIXEL_RAIN // Non-sustained raindrops of pastel colors
- #undef ENABLE_RGB_MATRIX_PIXEL_FLOW // More active version of pixel rain with quick cycling (unusable, very distracting)
- #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL // Same as Pixel Flow but with current HSV only (somewhat distracting)
- //Only enabled if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
- //#undef ENABLE_RGB_MATRIX_TYPING_HEATMAP // Fading heatmap that follows keystrokes (has buggy side LEDs that glow red)
- //#undef ENABLE_RGB_MATRIX_DIGITAL_RAIN // The Matrix (has buggy side LEDs that glow red)
- //Only enabled if RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Key hits shown in current hue - all other keys black
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE // Keyboard lights up in chosen hue, key hits shown in complementary hue (try this as default?)
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse around a single key hit then fades value out (Single key)
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // same as above but more intense (Multi-key)
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Column and Row single current color fade (Single key)
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Column and Row single color fade. (Multi-key)
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of key hit then fades (Single key)
- //#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multi-key hit then fades
- //#undef ENABLE_RGB_MATRIX_SPLASH // Full rainbow pulses from key hit. All else black.
- #undef ENABLE_RGB_MATRIX_MULTISPLASH // Full rainbow pulses from multi-keys. All else black. (distracting on multiple keystroke hits)
- #undef ENABLE_RGB_MATRIX_SOLID_SPLASH // Single color pulses from key hit. All else black. (distracting on multiple key hits)
- //#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Single color pulses from muli-keys. All else black.
-#endif //RGB_MATRIX_ENABLE
-
-// Add a layer for colemak -- set "COLEMAK_LAYER_ENABLE = yes" in rules.mk to enable
-#if defined COLEMAK_LAYER_ENABLE
- #ifdef GAME_ENABLE
- #define DYNAMIC_KEYMAP_LAYER_COUNT 6
- #define _COLEMAK 5
- #else
- #define DYNAMIC_KEYMAP_LAYER_COUNT 5
- #define _COLEMAK 4
- #endif //GAME_ENABLE
-#endif // COLEMAK_LAYER_ENABLE
-
-/*
-// Mouse Keys Accelerated Mode Definitions
-#define MOUSEKEY_DELAY 3 // Delay between pressing a movement key and cursor movement (default: 10)
-#define MOUSEKEY_INTERVAL 13 // Time between cursor movements in milliseconds (default: 20); Try setting to 1000/monitor refresh for smooth movement.
-#define MOUSEKEY_MOVE_DELTA 8 // Step size (default: 8)
-#define MOUSEKEY_MAX_SPEED 9 // Maximum cursor speed at which acceleration stops (default: 10)
-#define MOUSEKEY_TIME_TO_MAX 150 // Time until maximum cursor speed is reached (default: 30)
-#define MOUSEKEY_WHEEL_DELAY 0 // Delay between pressing a wheel key and wheel movement (default: 10)
-#define MOUSEKEY_WHEEL_INTERVAL 80 // Time between wheel movements (default: 80)
-#define MOUSEKEY_WHEEL_MAX_SPEED 8 // Maximum number of scroll steps per scroll action (default: 8)
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 40 // Time until maximum scroll speed is reached (default: 40)
-*/
-
-// Mouse Keys Kinetic Mode Definitions
-#define MK_KINETIC_SPEED // Enable Kinetic mode: Uses a quadratic curve on cursor speed to allow precise movements at the beginning and increases speed thereafter.
-#define MOUSEKEY_DELAY 3 // Delay between pressing a movement key and cursor movement (default: 10)
-#define MOUSEKEY_INTERVAL 13 // Time between cursor movements in milliseconds (default: 20); Try setting to 1000/monitor refresh for smooth movement.
-#define MOUSEKEY_MOVE_DELTA 5 // Step size for accelerating from initial to base speed (default: 8)
-#define MOUSEKEY_MOVE_MAX 50 // use instead of BASE SPEED to limit speed in Kinetic mode
-#define MOUSEKEY_INITIAL_SPEED 100 // Initial speed of the cursor in pixels per second (default: 100)
-//#define MOUSEKEY_BASE_SPEED 800 // (broken in QMK 0.16.0) Maximum cursor speed at which acceleration stops (default: 1000)
-#define MOUSEKEY_DECELERATED_SPEED 400 // Decelerated cursor speed (default: 400)
-#define MOUSEKEY_ACCELERATED_SPEED 2000 // Accelerated cursor speed (default: 3000)
-#define MOUSEKEY_WHEEL_INITIAL_MOVEMENTS 16 // Initial number of movements of the mouse wheel (default: 16)
-#define MOUSEKEY_WHEEL_BASE_MOVEMENTS 32 // Maximum number of movements at which acceleration stops (default: 32)
-#define MOUSEKEY_WHEEL_ACCELERATED_MOVEMENTS 48 // Accelerated wheel movements (default: 48)
-#define MOUSEKEY_WHEEL_DECELERATED_MOVEMENTS 8 // Decelerated wheel movements (default: 8)
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/keymap.c
deleted file mode 100644
index 44fed8fd29..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/keymap.c
+++ /dev/null
@@ -1,726 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
- Copyright 2021 Jonavin Eng @Jonavin
- Copyright 2022 RustyBrakes (ISO conversion)
- Copyright 2022 gourdo1 <gourdo1@outlook.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// Note: Many advanced functions referenced in this file are defined in /users/gourdo1/gourdo1.c
-
-#include QMK_KEYBOARD_H
-
-#include "rgb_matrix_map.h"
-
-#include "gourdo1.h"
-
-#include "paddlegame.h"
-
-#include <math.h>
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Base Layout
- *
- * ,-------------------------------------------------------------------------------------------------------------.
- * | Esc || F1 | F2 | F3 | F4 || F5 | F6 | F7 | F8 || F9 | F10 | F11 | F12 || Home || Mute |
- * |=============================================================================================================|
- * | ISO | 1 ! | 2 @ | 3 # | 4 $ | 5 % | 6 ^ | 7 & | 8 * | 9 ( | 0 ) | - _ | = + | Backspc || Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------|
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ } | ] } | || PgUp |
- * |---------+------+------+------+------+------+------+------+------+------+------+------+------+ ++------|
- * | Capslock | A | S | D | F | G | H | J | K | L | ; : | ' " | ISO| Enter || PgDn |
- * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------|
- * | LShift | ISO | Z | X | C | V | B | N | M | , < | . > | / ? | RShift || Up || End |
- * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======|
- * | Ctrl | Win | LAlt | Space | RAlt | Fn | Ctrl || Left | Down | Rght |
- * `------------------------------------------------------------------------------------------------------------'
- */
-
- [_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, LEFTOFENC, ENCFUNC,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, BELOWENC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_PGUP,
- CAPSNUM, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
- KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* FN1 Layout
- *
- * ,-------------------------------------------------------------------------------------------------------------.
- * | Esc ||MyCmp |WbHom | Calc |MdSel ||MdPrv |MdNxt |MdPly |MdStp ||VolDn |VolUp |PrScr |ScrLk ||Pause ||Sleep |
- * |=============================================================================================================|
- * | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ |RGBTOD|RGBTOI| ________ ||RGBTOG|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------|
- * | ______ |RGBSAD|RGBVAI|RGBSAI| NKRO | ____ |YAHOO | ____ | ____ |OUTLK |Pause | ____ | ____ | || Home |
- * |---------+------+------+------+------+------+------+------+------+------+------+------+------+ ++------|
- * | Capslock |RGBHUD|RGBVAD|RGBHUI| ____|GMAIL |HTMAIL| ____ | ____ | ____ | ____ | ____ | ___ | ____ || End |
- * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------|
- * | ____ |QK_BOOT|RGBNIT| ____ | ____ | ____ | ____ |NumLk | ____ | ____ |DOTCOM| CAD | ______ ||RGBMOD|| ____ |
- * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======|
- * | ____ | WinKyLk | ____ | _____ | ____ | ____ | ____ ||RGBSPD|RGBRMD|RGBSPI|
- * `------------------------------------------------------------------------------------------------------------'
- */
-
- #ifdef GAME_ENABLE
- [_FN1] = LAYOUT(
- EE_CLR, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_VOLD, KC_VOLU, KC_PSCR, KC_SCRL, KC_PAUS, KC_SLEP,
- PRNCONF, TG_CAPS, TG_PAD, TG_ESC, TG_DEL, TG_TDCAP,TG_ENC, TG_INS,TG_SPCMOD,TG_AUTOCR,TG_ENGCAP,RGB_TOD,RGB_TOI, _______, RGB_TOG,
- _______, RGB_SAD, RGB_VAI, RGB_SAI, NK_TOGG, _______, YAHOO, _______, _______, OUTLOOK, TG(_GAME),SWAP_L, SWAP_R, KC_HOME,
- KC_CAPS, RGB_HUD, RGB_VAD, RGB_HUI, _______, GMAIL, HOTMAIL, _______, _______, LOCKPC, _______, _______, _______, _______, KC_END,
- _______, QK_BOOT, RGB_NITE,_______, _______, _______, QK_BOOT, KC_NUM, _______, _______, DOTCOM, KC_CAD, _______, RGB_MOD, _______,
- _______, WINLOCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
-
- [_GAME] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- #else
- [_FN1] = LAYOUT(
- EE_CLR, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_VOLD, KC_VOLU, KC_PSCR, KC_SCRL, KC_PAUS, KC_SLEP,
- PRNCONF, TG_CAPS, TG_PAD, TG_ESC, TG_DEL, TG_TDCAP,TG_ENC, TG_INS,TG_SPCMOD,TG_AUTOCR,TG_ENGCAP,RGB_TOD,RGB_TOI, _______, RGB_TOG,
- _______, RGB_SAD, RGB_VAI, RGB_SAI, NK_TOGG, _______, YAHOO, _______, _______, OUTLOOK, KC_PAUS, SWAP_L, SWAP_R, KC_HOME,
- KC_CAPS, RGB_HUD, RGB_VAD, RGB_HUI, _______, GMAIL, HOTMAIL, _______, _______, LOCKPC, _______, _______, _______, _______, KC_END,
- _______, QK_BOOT, RGB_NITE,_______, _______, _______, QK_BOOT, KC_NUM, _______, _______, DOTCOM, KC_CAD, _______, RGB_MOD, _______,
- _______, WINLOCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
- #endif //GAME_ENABLE
-
- /* _NUMPADMOUSE Layout
- * Note: A symbol preceded by "P" is a Numpad-encoded version of the key -- any app that differentiates will recognize the char as coming from a physical numpad.
- * ,-------------------------------------------------------------------------------------------------------------.
- * | ____ || ____ | ____ | ____ | ____ || ____ | ____ | ____ | ____ || ____ | ____ | ____ | ____ || ____ || ____ |
- * |=============================================================================================================|
- * | ____ | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P0 | P- | P+ | ________ || ____ |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------|
- * | ______ | PGUP | Up | PGDN | None | None | None | P4 | P5 | P6 | P+ | ____ | ____ | || WhUp |
- * |---------+------+------+------+------+------+------+------+------+------+------+------+------+ ++------|
- * | ________ | Left | Down | Rght | None| None | None | P1 | P2 | P3 | P* | ___ | ___ |P-Enter|| WhDn |
- * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------|
- * | __________ | None | ____ | ____ | ____ | None | None | 0 | 00 | P. | P/ | MBt1 ||MS_UP || MBt2 |
- * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======|
- * | ____ | ____ | ____ | _____ | ____ | ____ | MBt3 ||MS_LT |MS_DN |MS_RT |
- * `------------------------------------------------------------------------------------------------------------'
- */
-
- [_NUMPADMOUSE] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, _______, _______,
- _______, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, _______, KC_WH_U,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_PAST, _______, _______, KC_PENT, KC_WH_D,
- _______, _______, KC_NO, _______, _______, _______, _______, _______, KC_P0, KC_00, KC_PDOT, KC_PSLS, KC_BTN1, KC_MS_U, KC_BTN2,
- _______, _______, _______, KC_PENT, _______, _______, KC_BTN3, KC_MS_L, KC_MS_D, KC_MS_R
- ),
-
- [_MOUSEKEY] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_D,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2,
- _______, _______, _______, _______, _______, _______, KC_BTN3, KC_MS_L, KC_MS_D, KC_MS_R
- ),
-
- #ifdef COLEMAK_LAYER_ENABLE
- [_COLEMAK] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, _______,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_PGUP,
- _______, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
- _______, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- _______, _______, _______, KC_SPC, KC_RALT, _______, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- #endif // COLEMAK_LAYER_ENABLE
-};
-
-#if defined(ENCODER_ENABLE) && !defined(ENCODER_DEFAULTACTIONS_ENABLE) // Encoder Functionality when not using userspace defaults
-void encoder_action_rgbhue(bool clockwise) {
- if (clockwise)
- rgblight_increase_hue_noeeprom();
- else
- rgblight_decrease_hue_noeeprom();
-}
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t mods_state = get_mods();
- if (mods_state & MOD_BIT(KC_LSFT)) { // If you are holding L shift, encoder changes layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_RSFT)) { // If you are holding R shift, Page up/dn
- unregister_mods(MOD_BIT(KC_RSFT));
- encoder_action_navpage(clockwise);
- register_mods(MOD_BIT(KC_RSFT));
- } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_RCTL)) { // if holding Right Ctrl, change rgb hue/colour
- encoder_action_rgbhue(clockwise);
- } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- switch (get_highest_layer(layer_state)) {
- case _FN1:
- #ifdef IDLE_TIMEOUT_ENABLE
- timeout_update_threshold(clockwise);
- #endif
- break;
- #ifdef GAME_ENABLE
- case _GAME:
- // Game: Paddle movement
- if (damage_count == 0) {
- if (clockwise) {
- if (paddle_pos_full < 15) ++paddle_pos_full;
- } else {
- if (paddle_pos_full > 0) --paddle_pos_full;
- }
- }
- break;
- #endif //GAME_ENABLE
- default:
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- break;
- }
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
-}
-#endif // ENCODER_ENABLE && !ENCODER_DEFAULTACTIONS_ENABLE
-
-#ifdef RGB_MATRIX_ENABLE
-
-// Game logic
-#ifdef GAME_ENABLE
-void init_ball(uint8_t i) {
- i &= 1;
- ball[i].on = true;
- ball[i].up = false;
- ball[i].y = 0;
- ball[i].x = rand() % 16;
-
- // Set initial ball state
- if (ball[i].x < 8) {
- ball[i].left = false;
- } else {
- ball[i].x -= 4;
- ball[i].left = true;
- }
-
- // 1/4 chance of being an enemy ball after level 6
- if (level_number > 3) {
- ball[i].enemy = ((rand() % 4) == 0);
- } else {
- ball[i].enemy = false;
- }
-}
-
-void hurt_paddle(void) {
- if (paddle_lives > 0) {
- --paddle_lives;
- }
- damage_timer = timer_read();
- damage_count = 10;
-
- // Reset board
- init_ball(0);
- ball[1].on = false;
-}
-#endif //GAME_ENABLE
-
-// Capslock, Scroll lock and Numlock indicator on Left side lights.
-bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF);
-
- led_t led_state = host_keyboard_led_state();
-
- // Scroll Lock RGB setup
- if (led_state.scroll_lock) {
- rgb_matrix_set_color(LED_L3, RGB_RED);
- rgb_matrix_set_color(LED_L4, RGB_RED);
- rgb_matrix_set_color(LED_TAB, RGB_RED);
- rgb_matrix_set_color(LED_F12, RGB_RED);
- }
-
-/*
- // System NumLock warning indicator RGB setup
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled
- rgb_matrix_set_color(LED_GRV, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L1, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L2, RGB_ORANGE2);
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- rgb_matrix_set_color(LED_FN, RGB_ORANGE2);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_GRV, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L1, RGB_ORANGE2);
- rgb_matrix_set_color(LED_L2, RGB_ORANGE2);
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- rgb_matrix_set_color(LED_FN, RGB_ORANGE2);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-*/
-
- // CapsLock RGB setup
- if (led_state.caps_lock) {
- if (user_config.rgb_hilite_caps) {
- if (user_config.rgb_english_caps) {
- for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_LETTERS); i++) {
- rgb_matrix_set_color(LED_LIST_LETTERS[i], RGB_CHARTREUSE);
- }
- }
- else {
- for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_LETTERS_DE); i++) {
- rgb_matrix_set_color(LED_LIST_LETTERS_DE[i], RGB_CHARTREUSE);
- }
- }
- rgb_matrix_set_color(LED_L7, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_L8, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LSFT, RGB_CHARTREUSE);
- }
- else {
- rgb_matrix_set_color(LED_L7, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_L8, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LSFT, RGB_CHARTREUSE);
- }
- }
-
- // Winkey disabled (gaming) mode RGB setup
- if (keymap_config.no_gui) {
- rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Winkey red when disabled
- rgb_matrix_set_color(LED_W, RGB_CHARTREUSE); //light up gaming keys with WSAD higlighted
- rgb_matrix_set_color(LED_S, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_A, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_D, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_Q, RGB_ORANGE2);
- rgb_matrix_set_color(LED_E, RGB_ORANGE2);
- rgb_matrix_set_color(LED_R, RGB_ORANGE2);
- rgb_matrix_set_color(LED_TAB, RGB_ORANGE2);
- rgb_matrix_set_color(LED_F, RGB_ORANGE2);
- rgb_matrix_set_color(LED_Z, RGB_ORANGE2);
- rgb_matrix_set_color(LED_X, RGB_ORANGE2);
- rgb_matrix_set_color(LED_C, RGB_ORANGE2);
- rgb_matrix_set_color(LED_V, RGB_ORANGE2);
- rgb_matrix_set_color(LED_SPC, RGB_ORANGE2);
- rgb_matrix_set_color(LED_LCTL, RGB_ORANGE2);
- rgb_matrix_set_color(LED_LSFT, RGB_ORANGE2);
- }
-
- // Fn selector mode RGB setup
- switch (get_highest_layer(layer_state)) { // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- rgb_matrix_set_color(LED_FN, RGB_RED); //FN key
-
- //NEW RGB LIGHTING TO RING KEYBOARD ON FN LAYER ACTIVATION:
- for (uint8_t j = 0; j < ARRAYSIZE(LED_LIST_FUNCROW); j++) {
- rgb_matrix_set_color(LED_LIST_FUNCROW[j], RGB_RED);
- }
- rgb_matrix_set_color(LED_LCTL, RGB_RED);
- rgb_matrix_set_color(LED_LALT, RGB_RED);
- rgb_matrix_set_color(LED_SPC, RGB_RED);
- rgb_matrix_set_color(LED_LWIN, RGB_RED);
- //rgb_matrix_set_color(LED_RALT, RGB_RED);
- rgb_matrix_set_color(LED_FN, RGB_OFFBLUE);
- //rgb_matrix_set_color(LED_RCTL, RGB_RED);
- rgb_matrix_set_color(LED_BSLS, RGB_RED);
- rgb_matrix_set_color(LED_L1, RGB_RED);
- rgb_matrix_set_color(LED_L2, RGB_RED);
- rgb_matrix_set_color(LED_L3, RGB_RED);
- rgb_matrix_set_color(LED_L4, RGB_RED);
- rgb_matrix_set_color(LED_L5, RGB_RED);
- rgb_matrix_set_color(LED_L6, RGB_RED);
- rgb_matrix_set_color(LED_L7, RGB_RED);
- rgb_matrix_set_color(LED_L8, RGB_RED);
- rgb_matrix_set_color(LED_DOWN, RGB_RED);
- rgb_matrix_set_color(LED_LEFT, RGB_RED);
- rgb_matrix_set_color(LED_RIGHT, RGB_RED);
- rgb_matrix_set_color(LED_R1, RGB_RED);
- rgb_matrix_set_color(LED_R2, RGB_RED);
- rgb_matrix_set_color(LED_R3, RGB_RED);
- rgb_matrix_set_color(LED_R4, RGB_RED);
- rgb_matrix_set_color(LED_R5, RGB_RED);
- rgb_matrix_set_color(LED_R6, RGB_RED);
- rgb_matrix_set_color(LED_R7, RGB_RED);
- rgb_matrix_set_color(LED_R8, RGB_RED);
- rgb_matrix_set_color(LED_MINS, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_EQL, RGB_OFFBLUE);
-
- // Indicator for paddle game enabled in build
- #ifdef GAME_ENABLE
- rgb_matrix_set_color(LED_P, RGB_CHARTREUSE);
- #else
- rgb_matrix_set_color(LED_P, RGB_RED);
- #endif // GAME_ENABLE
-
- // System NumLock warning indicator RGB setup
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-
- //Add RGB statuses for user.config toggles
- if (user_config.rgb_hilite_caps) {
- rgb_matrix_set_color(LED_1, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_1, RGB_PURPLE);
- }
- if (user_config.rgb_hilite_numpad) {
- rgb_matrix_set_color(LED_2, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_2, RGB_PURPLE);
- }
- if (user_config.esc_double_tap_to_baselyr) {
- rgb_matrix_set_color(LED_3, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_3, RGB_PURPLE);
- }
- if (user_config.del_right_home_top) {
- rgb_matrix_set_color(LED_4, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_4, RGB_PURPLE);
- }
- if (user_config.double_tap_shift_for_capslock) {
- rgb_matrix_set_color(LED_5, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_5, RGB_PURPLE);
- }
- if (user_config.encoder_press_mute_or_media) {
- rgb_matrix_set_color(LED_6, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_6, RGB_PURPLE);
- }
- if (user_config.ins_on_shft_bkspc_or_del) {
- rgb_matrix_set_color(LED_7, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_7, RGB_PURPLE);
- }
- if (user_config.disable_space_mods) {
- rgb_matrix_set_color(LED_8, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_8, RGB_PURPLE);
- }
- if (user_config.autocorrect) {
- rgb_matrix_set_color(LED_9, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_9, RGB_PURPLE);
- }
- if (user_config.rgb_english_caps) {
- rgb_matrix_set_color(LED_0, RGB_GREEN);
- } else {
- rgb_matrix_set_color(LED_0, RGB_PURPLE);
- }
-
- // Add RGB Timeout Indicator -- shows 0 to 139 using F row and num row; larger numbers using 16bit code
- uint16_t timeout_threshold = get_timeout_threshold();
- if (timeout_threshold <= 10) rgb_matrix_set_color(LED_LIST_FUNCROW[timeout_threshold], RGB_BLUE);
- else if (timeout_threshold < 140) {
- rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold / 10)], RGB_CYAN);
- rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold % 10)], RGB_BLUE);
- } else { // >= 140 minutes, just show these 3 lights
- rgb_matrix_set_color(LED_LIST_FUNCROW[10], RGB_CYAN);
- rgb_matrix_set_color(LED_LIST_FUNCROW[11], RGB_CYAN);
- rgb_matrix_set_color(LED_LIST_FUNCROW[12], RGB_CYAN);
- }
- break;
-
- // Numpad & Mouse Keys overlay RGB
- case _NUMPADMOUSE:
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_N, RGB_ORANGE2);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
- if (user_config.rgb_hilite_numpad) {
- for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_NUMPAD); i++) {
- rgb_matrix_set_color(LED_LIST_NUMPAD[i], RGB_OFFBLUE);
- }
- rgb_matrix_set_color(LED_L5, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_L6, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_CAPS, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_UP, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_DOWN, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LEFT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RIGHT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RCTL, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RSFT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_END, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_PGUP, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_PGDN, RGB_CHARTREUSE);
- } else {
- rgb_matrix_set_color(LED_L5, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_L6, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_CAPS, RGB_OFFBLUE);
- }
- break;
-
- // MOUSEKEYS mode RGB
- case _MOUSEKEY:
- rgb_matrix_set_color(LED_UP, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_DOWN, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_LEFT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RIGHT, RGB_CHARTREUSE);
- rgb_matrix_set_color(LED_RCTL, RGB_CYAN);
- rgb_matrix_set_color(LED_RSFT, RGB_CYAN);
- rgb_matrix_set_color(LED_END, RGB_CYAN);
- rgb_matrix_set_color(LED_PGUP, RGB_OFFBLUE);
- rgb_matrix_set_color(LED_PGDN, RGB_OFFBLUE);
- break;
-
- // Colemak layer RGB
- #ifdef COLEMAK_LAYER_ENABLE
- case _COLEMAK:
- for (uint8_t i = 0; i < ARRAYSIZE(LED_SIDE_RIGHT); i++) {
- rgb_matrix_set_color(LED_SIDE_RIGHT[i], RGB_MAGENTA);
- rgb_matrix_set_color(LED_SIDE_LEFT[i], RGB_MAGENTA);
- }
- break;
- #endif
-
- // Paddle game logic
- #ifdef GAME_ENABLE
- case _GAME:
- if (!game_start) {
- srand((unsigned int) timer_read());
-
- // Store user light settings
- last_hsv = rgb_matrix_get_hsv();
- rgb_matrix_sethsv_noeeprom(0, 0, 0);
-
- paddle_pos_full = 8;
- paddle_lives = 4;
- bounce_count = 0;
- level_number = 0;
- damage_count = 0;
-
- init_ball(0);
- ball[1].on = false;
- ball_timer = timer_read();
-
- game_start = true;
- }
-
- // Set level indicator
- if (level_number < 12) {
- rgb_matrix_set_color(GAME_R0[level_number], RGB_BLUE);
- }
-
- // Set life bar
- for (uint8_t i = 0; i < paddle_lives; i++) {
- rgb_matrix_set_color(GAME_LIVES[i], RGB_GREEN);
- }
-
- uint8_t paddle_pos = paddle_pos_full >> 1;
-
- if (damage_count > 0) {
- // Flash paddle when receiving damage
- if (timer_elapsed(damage_timer) > 500) {
- --damage_count;
- damage_timer = timer_read();
- }
- if ((damage_count & 1) == 0) {
- for (uint8_t i = 0; i < 3; i++) {
- rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], RGB_RED);
- }
- }
- if (damage_count == 0) {
- ball_timer = timer_read();
- }
-
- } else if (paddle_lives == 0) {
- // Game over
- for (uint8_t i = 0; i < ARRAY_SIZE(LED_GAME_OVER); i++) {
- rgb_matrix_set_color(LED_GAME_OVER[i], RGB_RED);
- }
-
- } else if (level_number >= 12) {
- // You win
- if (rgb_value.r == 0xff && rgb_value.g < 0xff) {
- if (rgb_value.b > 0) {
- --rgb_value.b;
- } else {
- ++rgb_value.g;
- }
- } else if (rgb_value.g == 0xff && rgb_value.b < 0xff) {
- if (rgb_value.r > 0) {
- --rgb_value.r;
- } else {
- ++rgb_value.b;
- }
- } else if (rgb_value.b == 0xff && rgb_value.r < 0xff) {
- if (rgb_value.g > 0) {
- --rgb_value.g;
- } else {
- ++rgb_value.r;
- }
- }
-
- for (uint8_t i = 0; i < 3; i++) {
- rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], rgb_value.r, rgb_value.g, rgb_value.b);
- }
- rgb_matrix_set_color(GAME_SMILE1[paddle_pos], rgb_value.r, rgb_value.g, rgb_value.b);
- rgb_matrix_set_color(GAME_SMILE1[paddle_pos + 3], rgb_value.r, rgb_value.g, rgb_value.b);
- rgb_matrix_set_color(GAME_SMILE2[paddle_pos], rgb_value.r, rgb_value.g, rgb_value.b);
- rgb_matrix_set_color(GAME_SMILE2[paddle_pos + 3], rgb_value.r, rgb_value.g, rgb_value.b);
-
- } else {
- // normal game loop
-
- // Set paddle position
- for (uint8_t i = 0; i < 3; i++) {
- rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], RGB_GREEN);
- }
-
- // Ball movement logic happens at intervals
- if (timer_elapsed(ball_timer) > GAME_TIMER[level_number]) {
- for (int i = 0; i < 2; ++i) {
- if (ball[i].on) {
- // Ball movement
- if (ball[i].up) {
- if (ball[i].y > 0) {
- --ball[i].y;
- if (!ball[i].left) ++ball[i].x;
- } else {
- // Count reflections. If > 10, increase level
- ++bounce_count;
- if (bounce_count >= 10) {
- bounce_count = 0;
- ++level_number;
- }
- ball[i].on = false;
- }
- } else {
- ++ball[i].y;
- if (ball[i].left) --ball[i].x;
- if (ball[i].y > 4) {
- // Remove a life if ball isn't returned and isn't enemy
- if (!ball[i].enemy) {
- hurt_paddle();
- i = 2;
- } else {
- ball[i].on = false;
- }
- }
- }
- }
- }
- if (ball[0].y == 4 && !ball[1].on) {
- init_ball(1);
- }
- if (ball[1].y == 4 && !ball[0].on) {
- init_ball(0);
- }
- if (!ball[0].on && !ball[1].on) {
- init_ball(0);
- }
- ball_timer = timer_read();
- }
-
- // Other ball stuff
- for (int i = 0; i < 2; ++i) {
- if (ball[i].on) {
- // Ball deflection logic
- if (!ball[i].up && ball[i].y == 4 && (ball[i].x == paddle_pos || ball[i].x == paddle_pos - 1 || ball[i].x == paddle_pos + 1)) {
- if (!ball[i].enemy) {
- --ball[i].y;
- if (!ball[i].left) {
- ++ball[i].x;
- }
- ball[i].up = true;
- } else {
- hurt_paddle();
- i = 2;
- }
- }
-
- // Ball display
- switch (ball[i].y) {
- case 0:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R0[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R0[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 1:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R1[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R1[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 2:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R2[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R2[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 3:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R3[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R3[ball[i].x], RGB_WHITE);
- }
- break;
-
- case 4:
- if (ball[i].enemy) {
- rgb_matrix_set_color(GAME_R4[ball[i].x], RGB_RED);
- } else {
- rgb_matrix_set_color(GAME_R4[ball[i].x], RGB_WHITE);
- }
- break;
- }
- }
- }
- }
- break;
- #endif //GAME_ENABLE
- default:
- #ifdef GAME_ENABLE
- if (game_start) {
- // Reset lighting settings
- game_start = false;
- rgb_matrix_sethsv_noeeprom(last_hsv.h, last_hsv.s, last_hsv.v);
- }
- #endif //GAME_ENABLE
- break;
- }
- return false;
-}
-#endif
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGB_MATRIX_ENABLE
- activate_rgb_nightmode(false); // Set to true if you want to startup in nightmode, otherwise use Fn + Z to toggle
- #endif
-}
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/paddlegame.h b/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/paddlegame.h
deleted file mode 100644
index 3d33975cfe..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/paddlegame.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
- Copyright 2021 Tomas Guinan
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifdef GAME_ENABLE
-const uint16_t GAME_TIMER[] = {
- 400, 350, 300, 250, 400, 350, 300, 250, 225, 200, 175, 150
-};
-
-bool game_start = false;
-HSV last_hsv;
-static uint8_t paddle_pos_full;
-static uint8_t paddle_lives;
-static uint8_t level_number;
-static uint8_t bounce_count;
-static uint8_t damage_count;
-static uint16_t damage_timer;
-static uint16_t ball_timer;
-
-struct BallStruct
-{
- uint8_t x;
- uint8_t y;
- bool on;
- bool up;
- bool left;
- bool enemy;
-};
-
-struct BallStruct ball[2];
-
-void init_ball(uint8_t i);
-void hurt_paddle(void);
-
-#endif //GAME_ENABLE \ No newline at end of file
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/readme.md b/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/readme.md
deleted file mode 100644
index aebccf6d14..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/readme.md
+++ /dev/null
@@ -1,124 +0,0 @@
-# [gourdo1's](mailto:gourdo1@outlook.com) GMMK Pro Keyboard Layouts
-
-These Windows-centric layouts are based on Jonavin's GMMK Pro [layout](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/rev1/ansi/keymaps/jonavin) with many additions, fixes, a revamped keymap, persistent user customizations, updated layers, Pascal Getreuer's [autocorrect](https://getreuer.info/posts/keyboards/autocorrection/), Tomas Guinan's [paddle game](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame) and expanded RGB controls and effects.
-
-![image](https://raw.githubusercontent.com/gourdo1/media/main/susuwatari.jpg)
-
-* Up-to-date [Changelog](https://github.com/gourdo1/gmmkpro-media/blob/main/changelog.md)
-* Latest [ANSI firmware](https://github.com/gourdo1/gmmkpro-media/raw/main/gmmk_pro_rev1_ansi_gourdo1.bin) download. (Flash with [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases))
-* Latest [ISO firmware](https://github.com/gourdo1/gmmkpro-media/raw/main/gmmk_pro_rev1_iso_gourdo1.bin) download. (Flash with [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases))
-* Printable Keyboard [Cheatsheet](https://github.com/gourdo1/gmmkpro-media/raw/main/GMMK_Pro_Cheatsheet.pdf)
-
-## Features
-
-### Core Functionality
-
-* Support for both [ANSI](https://keebnews.com/ansi-vs-iso/) and [ISO](https://keebnews.com/ansi-vs-iso/) keyboard layouts.
-* Quick & Easy Customization: Open a text editor and hit [FN]` (tilde on ANSI; the key left of '1' on ISO layouts) to view toggle-able settings.
-* [VIA](https://www.caniusevia.com/) support enabled.
-* AutoCorrection: Pascal Getreuer's AutoCorrect code incorporated with 400 word dictionary on words > 4 characters.
-* Most [default Glorious shortcuts](https://cdn.shopify.com/s/files/1/0549/2681/files/GMMK_Pro_User_Guide.pdf) enabled
-* [N-key Rollover](https://en.wikipedia.org/wiki/Rollover_\(keyboard\)#n-key_rollover) (NKRO) -- toggled with [FN]R
-* 1000Hz polling rate with 5ms debounce time for quick response in games.
-* Mouse Keys! Don't want to move your hands off the keyboard or you didn't bring it with you? Use cursor keys to move the mouse.
-* Overlay numpad on 789-UIOP-JKL;-M,. & Space-bar mapped to Enter key for rapid number entry.
-* Gaming mode ([FN]Win-key) locks out Win-key and double-tap Shift Capslock; Also RGB highlights WSAD and nearby gaming keys.
-* Caps Word enabled: To capitalize the next word only, press and release left and right shift at the same time.
-* Multi-monitor app moving shortcuts: [FN] ],[ (square brackets) to move current app window to next monitor.
-* Capslock toggled by double tap of Left Shift key or FN + Capslock (RGB green highlighted).
-* Paddle game accessible via [FN]P. Hit [FN]P again or double tap [ESC] to exit.
-* Single-handed shortcut for Ctrl-Alt-Delete: [FN]/
-* Single-handed shortcut for WinKey-L (lock Windows): [FN]L
-* Domain shortcuts: [FN]. for .com, [FN]O for outlook.com, [FN]Y for yahoo.com, [FN]H for hotmail.com, [FN]G for gmail.com.
-* [Bootloader mode](https://github.com/qmk/qmk_firmware/blob/master/docs/newbs_flashing.md) accessible via [FN]Backslash for ANSI and FN(key next to Left Shift) for ISO
-* PrtScrn, Scroll Lock, Pause/Break are top right on the keyboard: [FN]F11, [FN]F12, [FN]F13
-* [Colemak](https://colemak.com/) key layout support (Accessible via Left Shift + turn Encoder clockwise until side LEDs light up purple)
-* Double tap ESC any time to revert to base layer.
-* RGB backlight effects expanded to include framebuffer effects and reactive keypress modes.
-* RGB backlight now remembers last color & effect settings after power down.
-
-### Quick & Easy Customization
-* Below features can be toggled by holding [FN] and pressing the number corresponding to that feature. Changes are saved to EEPROM for persistence.
-* Print current settings by opening a text editor and pressing [FN]~ (the key left of '1' on ISO layout keyboards)
-* Quick view current settings by holding [FN] and viewing RGB under number keys (green means ON, violet means OFF)
-
-#### Toggle-able Settings:
- 1. CapsLock RGB - Highlight under alpha keys
- 2. Numpad RGB - Highlight under numpad layer keys
- 3. ESC key - Double tap ESC key to go to base layer
- 4. Swap DEL and HOME - Default is DEL to the right of BKSPC & HOME is above BKSPC
- 5. Capslock function - Toggle between double tap LShift for CapsLock with Numpad on CapsLock key (default) and standard CapsLock
- 6. Encoder button - Default mutes volume; alternate plays/pauses media
- 7. Insert function - Toggle between SHIFT-BKSPC and SHIFT-DEL
- 8. Modded-Space override - Use standard Space in place of modded-Space functions
- 9. AutoCorrect - Internal (English) AutoCorrect; default is enabled
- 0. (ISO layouts only) CapsLock highlights extended alpha keys
-
-### Numpad + Mouse Keys (Capslock key)
-
-* Overlay numpad + [Mouse Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md) are accessed through Capslock key hold (temp) or double press (locked) with RGB highlighting
-* Numpad uses Space-bar as Enter for rapid number entry.
-* This layer disables much of the keyboard, except X/C/V for cut/copy/paste, WASD for cursor, Q/E for PgUp/PgDn, cursor keys become mouse keys, surrounding keys become mouse buttons and all number keys become numpad versions (so Alt char codes work regardless of which set you use)
-* FN and N keys light up orange if system numlock is off (inverted status), indicating numpad keys will not deliver expected output ([FN]N to toggle)
-* Double zero on comma key.
-* [Mouse Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md) allow you to use the mouse without taking your hand off the keyboard.
-* Mouse controls are: Cursor keys = move mouse; RShift = button1, End = button2, RCtrl = button3, PgUp/PgDn = Scroll wheel
-* Mouse Keys can also be accessed as a standalone layer by Left Shift-turning the Encoder until the cursor keys light up green
-
-### Encoder Functionality
-
-* Default knob turn changes volume; button press toggles mute
-* Exponential encoder: quick repeated volume up doubles increase; quick repeated volume down triples decrease.
-* FN + knob turn changes RGB idle timeout
-* FN + knob push puts PC to Sleep
-* holding Left Shift changes layers
-* holding Right Shift navigates page up/down
-* holding Left Ctrl navigates prev/next word
-* holding Right Ctrl changes RGB hue/color
-* holding Left Alt changes media prev/next track
-
-### Paddle Game
-
-* Based on [Tomas Guinan's excellent GMMK Pro paddle game](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame)
-* Paddle Game playable by pressing [FN]P (P lights up green in FN layer if game is enabled in firmware, otherwise it lights up red)
-* Use rotary encoder to control paddle
-* Contains 12 levels, indicated by blue LED on F-key row
-* Player has 4 lives, indicated by nav cluster
-* Deflect white balls while avoiding red ones
-* Use [FN]P, double tap ESC or otherwise change layer to quit game
-
-### Global RGB Controls
-
-* RGB backlight lighting effect: [FN]up/down
-* RGB backlight effect speed: [FN]left/right
-* RGB backlight hue cycle: [FN]A/D
-* RGB backlight brightness: [FN]W/S
-* RGB backlight saturation: [FN]Q/E
-* RGB backlight night mode toggle: [FN]Z (indicators still work)
-* RGB backlight timeout: [FN]Encoder or "-" and "=" (default 15 minutes)
- * F-key row indicator lights (cyan and blue) in FN layer display the current backlight timeout in minutes
-* [FN]Z to turn off RGB backlighting (indicator lights still work); press again to toggle
-* Left side RGB indicators in order from top: Scroll Lock (red), Numpad (blue), Capslock (green).
-
-### Advanced Controls
-
-* [FN]\ or [FN]B to get to bootloader mode (use key next to Left Shift on ISO)
-* [FN][ESC] to clear EEPROM
-* [FN]R to toggle N-key Rollover
-* [FN]N to toggle system numlock
-* [FN]/ is single-handed shortcut to Ctrl-Alt-Delete
-* [FN]L is single-handed shortcut to Win-L (lock Windows)
-* [FN][Encoder press] to sleep Windows PC
-
-## Layer Diagrams (ANSI)
-### Base layer
-![image](https://raw.githubusercontent.com/gourdo1/gmmkpro-media/main/base.png)
-
-### FN Layer
-![image](https://raw.githubusercontent.com/gourdo1/gmmkpro-media/main/fn1.png)
-
-### Layer 2 (Numpad)
-![image](https://raw.githubusercontent.com/gourdo1/gmmkpro-media/main/numpad.png)
-
-### COLEMAK layer
-![image](https://user-images.githubusercontent.com/71780717/131235050-980d2f54-2d23-4ae8-a83f-9fcdbe60d6cb.png)
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rgb_matrix_map.h b/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rgb_matrix_map.h
deleted file mode 100644
index abcdb82aeb..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rgb_matrix_map.h
+++ /dev/null
@@ -1,433 +0,0 @@
-/* Copyright 2021 Jonavin Eng @Jonavin
- Copyright 2022 gourdo1 <gourdo1@outlook.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifdef RGB_MATRIX_ENABLE
-
-//Define variables for Game
-bool fn_active = false;
-RGB rgb_value;
-
-// Custom GMMK Pro-specific RGB color customizations (defaults found in quantum/color.h)
-#define RGB_GODSPEED 0x00, 0xE4, 0xFF // color for matching keycaps
-#define RGB_NAUTILUS 0x00, 0xA4, 0xA9 // Nautilus Font colors
-#define RGB_OFFBLUE 0x00, 0x80, 0xFF // new color: blue with a hint of green
-#define RGB_DKRED 0x28, 0x00, 0x00 // new color: dark red
-#define RGB_ORANGE2 0xFF, 0x28, 0x00 // fix: reduced green from 80 to 28
-#define RGB_PURPLE2 0x80, 0x00, 0xFF // fix: increased red from 7A to 80
-#define RGB_SPRINGGREEN2 0x00, 0xFF, 0x10 // fix: blue was 80, now 10
-#define RGB_YELLOW2 0xFF, 0xB0, 0x00 // fix: green was FF, now B0
-#define RGB_OFF RGB_BLACK
-
-// Added by gourdo1 for RGB testing
-// Red Green Blue Expected GMMK Pro result
-#define RGB_TEST1 0xFF, 0x00, 0x00 // Q - red good!
-#define RGB_TEST2 0x0F, 0xFF, 0x00 // W - green good!
-#define RGB_TEST3 0x00, 0x00, 0xFF // E - blue good!
-#define RGB_TEST4 0xFF, 0xB0, 0x00 // R - yellow slightly green heavy - reduced green LED by quite a bit
-#define RGB_TEST5 0x00, 0xFF, 0xFF // T - cyan good!
-#define RGB_TEST6 0xFF, 0x00, 0xFF // Y - magenta very slightly blue heavy?
-#define RGB_TEST7 0xFF, 0x28, 0x00 // U - orange very green heavy at default
-#define RGB_TEST8 0xFF, 0x00, 0x80 // I - pink good!
-#define RGB_TEST9 0x80, 0xFF, 0x00 // O - chartreus good!
-#define RGB_TEST10 0x00, 0xFF, 0x10 // P - springgrn fixed: was too blue because green LED has blue in it already
-#define RGB_TEST11 0x00, 0x80, 0xFF // A - grn blue good!
-#define RGB_TEST12 0x80, 0x00, 0xFF // S - purple good!
-
-// RGB LED locations
-enum led_location_map {
- LED_ESC, // 0, ESC, k13
- LED_GRV, // 1, `, k16
- LED_TAB, // 2, Tab, k11
- LED_CAPS, // 3, Caps, k21
- LED_LSFT, // 4, Sh_L, k00
- LED_LCTL, // 5, Ct_L, k06
- LED_F1, // 6, F1, k26
- LED_1, // 7, 1, k17
- LED_Q, // 8, Q, k10
- LED_A, // 9, A, k12
- LED_Z, // 10, Z, k14
- LED_LWIN, // 11, Win_L, k90
- LED_F2, // 12, F2, k36
- LED_2, // 13, 2, k27
- LED_W, // 14, W, k20
- LED_S, // 15, S, k22
- LED_X, // 16, X, k24
- LED_LALT, // 17, Alt_L, k93
- LED_F3, // 18, F3, k31
- LED_3, // 19, 3, k37
- LED_E, // 20, E, k30
- LED_D, // 21, D, k32
- LED_C, // 22, C, k34
- LED_F4, // 23, F4, k33
- LED_4, // 24, 4, k47
- LED_R, // 25, R, k40
- LED_F, // 26, F, k42
- LED_V, // 27, V, k44
- LED_F5, // 28, F5, k07
- LED_5, // 29, 5, k46
- LED_T, // 30, T, k41
- LED_G, // 31, G, k43
- LED_B, // 32, B, k45
- LED_SPC, // 33, SPACE, k94
- LED_F6, // 34, F6, k63
- LED_6, // 35, 6, k56
- LED_Y, // 36, Y, k51
- LED_H, // 37, H, k53
- LED_N, // 38, N, k55
- LED_F7, // 39, F7, k71
- LED_7, // 40, 7, k57
- LED_U, // 41, U, k50
- LED_J, // 42, J, k52
- LED_M, // 43, M, k54
- LED_F8, // 44, F8, k76
- LED_8, // 45, 8, k67
- LED_I, // 46, I, k60
- LED_K, // 47, K, k62
- LED_COMM, // 48, ,, k64
- LED_RALT, // 49, Alt_R, k95
- LED_F9, // 50, F9, ka6
- LED_9, // 51, 9, k77
- LED_O, // 52, O, k70
- LED_L, // 53, L, k72
- LED_DOT, // 54, ., k74
- LED_FN, // 55, FN, k92
- LED_F10, // 56, F10, ka7
- LED_0, // 57, 0, k87
- LED_P, // 58, P, k80
- LED_SCLN, // 59, ;, k82
- LED_SLSH, // 60, ?, k85
- LED_F11, // 61, F11, ka3
- LED_MINS, // 62, -, k86
- LED_LBRC, // 63, [, k81
- LED_QUOT, // 64, ", k83
- LED_RCTL, // 65, Ct_R, k04
- LED_F12, // 66, F12, ka5
- LED_BSLS, // 67, \, k23
- LED_L1, // 68, LED, l01
- LED_R1, // 69, LED, l11
- LED_PRT, // 70, Prt, k97
- LED_L2, // 71, LED, l02
- LED_R2, // 72, LED, l12
- LED_DEL, // 73, Del, k65
- LED_L3, // 74, LED, l03
- LED_R3, // 75, LED, l13
- LED_PGUP, // 76, PgUp, k15
- LED_L4, // 77, LED, l04
- LED_R4, // 78, LED, l14
- LED_EQL, // 79, =, k66
- LED_RIGHT, // 80, Right, k05
- LED_L5, // 81, LED, l05
- LED_R5, // 82, LED, l15
- LED_END, // 83, End, k75
- LED_L6, // 84, LED, l06
- LED_R6, // 85, LED, l16
- LED_BSPC, // 86, BSpc, ka1
- LED_PGDN, // 87, PgDn, k25
- LED_L7, // 88, LED, l07
- LED_R7, // 89, LED, l17
- LED_RBRC, // 90, ], k61
- LED_RSFT, // 91, Sh_R, k91
- LED_L8, // 92, LED, l08
- LED_R8, // 93, LED, l18
- LED_UP, // 94, Up, k35
- LED_HASH, // 95, #, k84
- LED_LEFT, // 96, Left, k03
- LED_ENT, // 97, Enter, ka4
- LED_DOWN // 98, Down, k73
-};
-
-const uint8_t LED_LIST_WASD[] = {
- LED_W,
- LED_A,
- LED_S,
- LED_D
-};
-
-const uint8_t LED_LIST_ARROWS[] = {
- LED_LEFT,
- LED_RIGHT,
- LED_UP,
- LED_DOWN
-};
-
-const uint8_t LED_LIST_FUNCROW[] = {
- LED_ESC,
- LED_F1,
- LED_F2,
- LED_F3,
- LED_F4,
- LED_F5,
- LED_F6,
- LED_F7,
- LED_F8,
- LED_F9,
- LED_F10,
- LED_F11,
- LED_F12,
- LED_PRT
-};
-
-const uint8_t LED_LIST_NUMROW[] = {
- LED_GRV,
- LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL,
- LED_BSPC,
- LED_DEL
-};
-
-const uint8_t LED_LIST_LETTERS[] = {
- LED_Q,
- LED_W,
- LED_E,
- LED_R,
- LED_T,
- LED_Y,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_A,
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_Z,
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M
-};
-
-const uint8_t LED_LIST_LETTERS_DE[] = {
- LED_Q,
- LED_W,
- LED_E,
- LED_R,
- LED_T,
- LED_Y,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_A,
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_Z,
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M,
- LED_SCLN,
- LED_LBRC,
- LED_QUOT
-};
-
-const uint8_t LED_LIST_NUMPAD[] = {
- LED_1,
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_J,
- LED_K,
- LED_L,
- LED_SCLN,
- LED_ENT,
- LED_M,
- LED_COMM,
- LED_DOT,
- LED_SLSH,
- LED_END,
- LED_RIGHT
-};
-
-const uint8_t LED_SIDE_LEFT[] = {
- LED_L1,
- LED_L2,
- LED_L3,
- LED_L4,
- LED_L5,
- LED_L6,
- LED_L7,
- LED_L8
-};
-
-const uint8_t LED_SIDE_RIGHT[] = {
- LED_R1,
- LED_R2,
- LED_R3,
- LED_R4,
- LED_R5,
- LED_R6,
- LED_R7,
- LED_R8
-};
-
-#ifdef GAME_ENABLE
-// Game LED rules
-const uint8_t GAME_LIVES[] = {
- LED_DEL,
- LED_PGUP,
- LED_PGDN,
- LED_END
-};
-const uint8_t GAME_PADDLE[] = {
- LED_Z,
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M,
- LED_COMM,
- LED_DOT,
- LED_SLSH
-};
-const uint8_t GAME_SMILE1[] = {
- LED_A,
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_SCLN,
- LED_QUOT
-};
-const uint8_t GAME_SMILE2[] = {
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL
-};
-const uint8_t GAME_R4[] = {
- LED_X,
- LED_C,
- LED_V,
- LED_B,
- LED_N,
- LED_M,
- LED_COMM,
- LED_DOT
-};
-const uint8_t GAME_R3[] = {
- LED_S,
- LED_D,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_K,
- LED_L,
- LED_SCLN
-};
-const uint8_t GAME_R2[] = {
- LED_W,
- LED_E,
- LED_R,
- LED_T,
- LED_Y,
- LED_U,
- LED_I,
- LED_O,
- LED_P,
- LED_LBRC
-};
-const uint8_t GAME_R1[] = {
- LED_2,
- LED_3,
- LED_4,
- LED_5,
- LED_6,
- LED_7,
- LED_8,
- LED_9,
- LED_0,
- LED_MINS,
- LED_EQL
-};
-const uint8_t GAME_R0[] = {
- LED_F1,
- LED_F2,
- LED_F3,
- LED_F4,
- LED_F5,
- LED_F6,
- LED_F7,
- LED_F8,
- LED_F9,
- LED_F10,
- LED_F11,
- LED_F12
-};
-const uint8_t LED_GAME_OVER[] = {
- LED_5,
- LED_8,
- LED_F,
- LED_G,
- LED_H,
- LED_J,
- LED_C,
- LED_M
-};
-#endif //GAME_ENABLE
-
-#endif \ No newline at end of file
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rules.mk b/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rules.mk
deleted file mode 100644
index 1eb14ebbef..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/gourdo1/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-LTO_ENABLE = yes # link time optimization -- achieves a smaller compiled size
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-MOUSEKEY_ENABLE = yes
-
-VIA_ENABLE = yes
-TAP_DANCE_ENABLE = no
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-CAPS_WORD_ENABLE = yes # Enable built-in Caps Word functionality
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-IDLE_TIMEOUT_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-ENCODER_DEFAULTACTIONS_ENABLE = no
-
-COLEMAK_LAYER_ENABLE = yes # Enable Colemak layer / set to no to disable
-INVERT_NUMLOCK_INDICATOR = yes
-
-GAME_ENABLE ?= yes # Enable Paddle Game / set to no to disable
-ifeq ($(strip $(GAME_ENABLE)), yes)
- OPT_DEFS += -DGAME_ENABLE
-endif
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/config.h b/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/config.h
deleted file mode 100644
index 539f78874a..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
-
-#ifdef RGB_MATRIX_ENABLE
-# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
-# define RGB_DISABLE_WHEN_USB_SUSPENDED
-#endif
-
-// add fifth layer for colemak -- set "COLEMAK_LAYER_ENABLE = yes" in rules.mk to enable
-#if defined COLEMAK_LAYER_ENABLE
-# define DYNAMIC_KEYMAP_LAYER_COUNT 5
-# define _COLEMAK 4
-#endif // COLEMAK_LAYER_ENABLE
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/keymap.c
deleted file mode 100644
index 82359551d1..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,194 +0,0 @@
-/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
- Copyright 2021 Jonavin
- Copyright 2022 RustyBrakes (ISO conversion)
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "rgb_matrix_map.h"
-#include "jonavin.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Ins Rotary(Mute)
-// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del
-// Tab Q W E R T Y U I O P [ ] PgUp
-// Caps A S D F G H J K L ; " # Enter PgDn
-// Sh_L \ Z X C V B N M , . ? Sh_R Up End
-// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
-
-
- [_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_PGUP,
- TT(_LOWER), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
- KC_LSFTCAPSWIN, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_FN1] = LAYOUT(
- _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_CALC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG,
- _______, _______, RGB_VAI, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, _______, KC_HOME,
- KC_CAPS, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END,
- _______, QK_BOOT, RGB_NITE,RGB_HUI, _______, _______, _______, KC_NUM, _______, RGB_TOD, RGB_TOI, _______, _______, RGB_MOD, _______,
- _______, KC_WINLCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI
- ),
-
- [_LOWER] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, _______, _______,
- _______, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PDOT, _______, _______, KC_HOME,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, _______, KC_PENT, KC_END,
- _______, _______, KC_NO, KC_DEL, KC_INS, KC_NO, KC_NO, KC_NO, KC_P0, KC_00, KC_PDOT, KC_PSLS, _______, RCTL(KC_PGUP), _______,
- _______, _______, _______, KC_BSPC, _______, _______, _______, RCTL(KC_LEFT), RCTL(KC_PGDN), RCTL(KC_RIGHT)
- ),
-
-#ifdef COLEMAK_LAYER_ENABLE
- [_COLEMAK] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_PGUP,
- TT(_LOWER), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
- KC_LSFTCAPSWIN, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-#endif // COLEMAK_LAYER_ENABLE
-};
-
-#if defined(ENCODER_ENABLE) && !defined(ENCODER_DEFAULTACTIONS_ENABLE) // Encoder Functionality when not using userspace defaults
- void encoder_action_rgbhue(bool clockwise) {
- if (clockwise)
- rgblight_increase_hue_noeeprom();
- else
- rgblight_decrease_hue_noeeprom();
- }
-
- bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t mods_state = get_mods();
- if (mods_state & MOD_BIT(KC_LSFT) ) { // If you are holding L shift, encoder changes layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_RSFT) ) { // If you are holding R shift, Page up/dn
- unregister_mods(MOD_BIT(KC_RSFT));
- encoder_action_navpage(clockwise);
- register_mods(MOD_BIT(KC_RSFT));
- } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_RCTL)) { // if holding Right Ctrl, change rgb hue/colour
- encoder_action_rgbhue(clockwise);
- } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- switch(get_highest_layer(layer_state)) {
- case _FN1:
- #ifdef IDLE_TIMEOUT_ENABLE
- timeout_update_threshold(clockwise);
- #endif
- break;
- default:
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- break;
- }
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
- }
-#endif // ENCODER_ENABLE && !ENCODER_DEFAULTACTIONS_ENABLE
-
-#ifdef RGB_MATRIX_ENABLE
- // Capslock, Scroll lock and Numlock indicator on Left side lights.
- bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- led_t led_state = host_keyboard_led_state();
- if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF);
- if (led_state.scroll_lock) {
- rgb_matrix_set_color(LED_L1, RGB_GREEN);
- rgb_matrix_set_color(LED_L2, RGB_GREEN);
- }
-
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF
- rgb_matrix_set_color(LED_L3, RGB_MAGENTA);
- rgb_matrix_set_color(LED_L4, RGB_MAGENTA);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_L3, RGB_MAGENTA);
- rgb_matrix_set_color(LED_L4, RGB_MAGENTA);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-
- if (led_state.caps_lock) {
- rgb_matrix_set_color(LED_L5, RGB_RED);
- rgb_matrix_set_color(LED_L6, RGB_RED);
- rgb_matrix_set_color(LED_L7, RGB_RED);
- }
- if (keymap_config.no_gui) {
- rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Win key when disabled
- }
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- rgb_matrix_set_color(LED_R2, RGB_RED);
- rgb_matrix_set_color(LED_R3, RGB_RED);
- rgb_matrix_set_color(LED_R4, RGB_RED);
- rgb_matrix_set_color(LED_FN, RGB_RED); //FN key
-
- // Add RGB Timeout Indicator -- shows 0 to 139 using F row and num row; larger numbers using 16bit code
- uint16_t timeout_threshold = get_timeout_threshold();
- if (timeout_threshold <= 10) rgb_matrix_set_color(LED_LIST_FUNCROW[timeout_threshold], RGB_RED);
- else if (timeout_threshold < 140) {
- rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold / 10)], RGB_RED);
- rgb_matrix_set_color(LED_LIST_NUMROW[(timeout_threshold % 10)], RGB_RED);
- } else { // >= 140 minutes, just show these 3 lights
- rgb_matrix_set_color(LED_LIST_NUMROW[10], RGB_RED);
- rgb_matrix_set_color(LED_LIST_NUMROW[11], RGB_RED);
- rgb_matrix_set_color(LED_LIST_NUMROW[12], RGB_RED);
- }
- break;
- case _LOWER:
- for (uint8_t i=0; i<ARRAYSIZE(LED_LIST_NUMPAD); i++) {
- rgb_matrix_set_color(LED_LIST_NUMPAD[i], RGB_MAGENTA);
- }
- rgb_matrix_set_color(LED_R4, RGB_MAGENTA);
- rgb_matrix_set_color(LED_R5, RGB_MAGENTA);
- rgb_matrix_set_color(LED_R6, RGB_MAGENTA);
- break;
- case _RAISE:
- rgb_matrix_set_color(LED_R6, RGB_GREEN);
- rgb_matrix_set_color(LED_R7, RGB_GREEN);
- rgb_matrix_set_color(LED_R8, RGB_GREEN);
- break;
-#ifdef COLEMAK_LAYER_ENABLE
- case _COLEMAK:
- for (uint8_t i=0; i<ARRAYSIZE(LED_SIDE_RIGHT); i++) {
- rgb_matrix_set_color(LED_SIDE_RIGHT[i], RGB_BLUE);
- }
- break;
-#endif
- default:
- break;
- }
- return false;
- }
-#endif
-
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGB_MATRIX_ENABLE
- rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR);
- rgb_matrix_set_color_all(RGB_NAUTILUS); // Default startup colour
- activate_rgb_nightmode(false); // Set to true if you want to startup in nightmode, otherwise use Fn + Z to toggle
- #endif
-}
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/readme.md b/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/readme.md
deleted file mode 100644
index f94a5eabbd..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# jonavin's GMMK Pro ISO layout
-# Thanks to RustyBrakes for the keymap adjustments and ISO Layout testing
-
-- Add Fn layer keys from Glorious Core mapping that's missing in the default qmk mapping
-- Add PrtScr, Scroll Lock, Break, NumLock to Fn layer
-- Implement Win key lock using Fn+Win like in Glorious Core firmware
-- Layer 2 mod on Caps Lock with double-tap to switch to this layer, double tap to switch back
-- Layer 2 provides arrows on WASD and additional nav keys + right hand numpad with 00; an be used for Alt Code entry
-- Layer 2 left spacebar Backspace
-- add double tap of Left Shift to toggle Caps Lock
-- additional encoder functionality
- - FN Layer - change rgb idle timeout
- - holding Left shift, change layers
- - holding right shift, Navigate page up/down
- - holding Left Ctrl, navigate prev/next word
- - holding Right Ctrl, changes RGB hue/colour
- - holding Left Alt, change media prev/next track
- - default is change volume
-
-- LED/RGB Functionality
- - RGB idle timeout (default 5 minutes)
- - Can be changed in FN layer with < and > or encoder
- - setting to zero disables timeout
- - indicators in FN layer using RGB in FN and number rows to show the timeout in minutes
- - LED address location map as enum definition in rgb_matrix_map.h
- - LED group lists for arrows, numpad, F row, num row, left and right side LEDs
- - default startup in single mode with default colour
- - Capslock, Scroll Lock, and Num Lock (not set) indicator on left side LED
- - Layer indicator on right side LED
- - Fn key light up red when Fn layer activate
- - Win Key light up red when Win Lock mode enabled
- - Layer 2 activation lights up Numpad area
- - Fn + Z to turn off all RGB lights except rgb indicators; press again to toggle
-
-rules.mk OPTIONS - Active features from userspace
-STARTUP_NUMLOCK_ON = yes
- - turns on NUMLOCK by default
-
-ENCODER_DEFAULTACTIONS_ENABLE = yes
- - Enabled default encoder funtions
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
- - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS
-
-IDLE_TIMEOUT_ENABLE = yes
- - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically
-
-INVERT_NUMLOCK_INDICATOR
- - inverts the Num lock indicator, LED is on when num lokc is off
-
-COLEMAK_LAYER_ENABLE = yes
- - Enabled optional 5th layer for COLEMAK layout
- - Use Shift and encoder to enter 5th layer, right led indicator lights up BLUE
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rgb_matrix_map.h b/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rgb_matrix_map.h
deleted file mode 100644
index 1aa31f2a0f..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rgb_matrix_map.h
+++ /dev/null
@@ -1,146 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- * Copyright 2022 RustyBrakes (ISO conversion)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef RGB_MATRIX_ENABLE
-
- // Custom RGB Colours
- #define RGB_GODSPEED 0x00, 0xE4, 0xFF // colour for matching keycaps
- #define RGB_NAUTILUS 0x00, 0xA4, 0xA9 // Naurilus Font colours
-
- // RGB LED locations
- enum led_location_map {
- LED_ESC, // 0, ESC, k13
- LED_GRV, // 1, `, k16
- LEB_TAB, // 2, Tab, k11
- LED_CAPS, // 3, Caps, k21
- LED_LSFT, // 4, Sh_L, k00
- LED_LCTL, // 5, Ct_L, k06
- LED_F1, // 6, F1, k26
- LED_1, // 7, 1, k17
- LED_Q, // 8, Q, k10
- LED_A, // 9, A, k12
- LED_Z, // 10, Z, k14
- LED_LWIN, // 11, Win_L, k90
- LED_F2, // 12, F2, k36
- LED_2, // 13, 2, k27
- LED_W, // 14, W, k20
- LED_S, // 15, S, k22
- LED_X, // 16, X, k24
- LED_LALT, // 17, Alt_L, k93
- LED_F3, // 18, F3, k31
- LED_3, // 19, 3, k37
- LED_E, // 20, E, k30
- LED_D, // 21, D, k32
- LED_C, // 22, C, k34
- LED_F4, // 23, F4, k33
- LED_4, // 24, 4, k47
- LED_R, // 25, R, k40
- LED_F, // 26, F, k42
- LED_V, // 27, V, k44
- LED_F5, // 28, F5, k07
- LED_5, // 29, 5, k46
- LED_T, // 30, T, k41
- LED_G, // 31, G, k43
- LED_B, // 32, B, k45
- LED_SPC, // 33, SPACE, k94
- LED_F6, // 34, F6, k63
- LED_6, // 35, 6, k56
- LED_Y, // 36, Y, k51
- LED_H, // 37, H, k53
- LED_N, // 38, N, k55
- LED_F7, // 39, F7, k71
- LED_7, // 40, 7, k57
- LED_U, // 41, U, k50
- LED_J, // 42, J, k52
- LED_M, // 43, M, k54
- LED_F8, // 44, F8, k76
- LED_8, // 45, 8, k67
- LED_I, // 46, I, k60
- LED_K, // 47, K, k62
- LED_COMM, // 48, ,, k64
- LED_RALT, // 49, Alt_R, k95
- LED_F9, // 50, F9, ka6
- LED_9, // 51, 9, k77
- LED_O, // 52, O, k70
- LED_L, // 53, L, k72
- LED_DOT, // 54, ., k74
- LED_FN, // 55, FN, k92
- LED_F10, // 56, F10, ka7
- LED_0, // 57, 0, k87
- LED_P, // 58, P, k80
- LED_SCLN, // 59, ;, k82
- LED_SLSH, // 60, /, k85
- LED_F11, // 61, F11, ka3
- LED_MINS, // 62, -, k86
- LED_LBRC, // 63, [, k81
- LED_QUOT, // 64, ", k83
- LED_RCTL, // 65, Ct_R, k04
- LED_F12, // 66, F12, ka5
- LED_BSLS, // 67, \, k23
- LED_L1, // 68, LED, l01
- LED_R1, // 69, LED, l11
- LED_PRT, // 70, Prt, k97
- LED_L2, // 71, LED, l02
- LED_R2, // 72, LED, l12
- LED_DEL, // 73, Del, k65
- LED_L3, // 74, LED, l03
- LED_R3, // 75, LED, l13
- LED_PGUP, // 76, PgUp, k15
- LED_L4, // 77, LED, l04
- LED_R4, // 78, LED, l14
- LED_EQL, // 79, =, k66
- LED_RIGHT, // 80, Right, k05
- LED_L5, // 81, LED, l05
- LED_R5, // 82, LED, l15
- LED_END, // 83, End, k75
- LED_L6, // 84, LED, l06
- LED_R6, // 85, LED, l16
- LED_BSPC, // 86, BSpc, ka1
- LED_PGDN, // 87, PgDn, k25
- LED_L7, // 88, LED, l07
- LED_R7, // 89, LED, l17
- LED_RBRC, // 90, ], k61
- LED_RSFT, // 91, Sh_R, k91
- LED_L8, // 92, LED, l08
- LED_R8, // 93, LED, l18
- LED_UP, // 94, Up, k35
- LED_HASH, // 95, #, k84
- LED_LEFT, // 96, Left, k03
- LED_ENT, // 97, Enter, ka4
- LED_DOWN // 98, Down, k73
- };
-
- const uint8_t LED_LIST_WASD[] = { LED_W, LED_A, LED_S, LED_D };
-
- const uint8_t LED_LIST_ARROWS[] = { LED_LEFT, LED_RIGHT, LED_UP, LED_DOWN };
-
- const uint8_t LED_LIST_FUNCROW[] = { LED_ESC, LED_F1, LED_F2, LED_F3, LED_F4, LED_F5, LED_F6, LED_F7, LED_F8, LED_F9, LED_F10, LED_F11, LED_F12, LED_PRT};
-
- const uint8_t LED_LIST_NUMROW[] = { LED_GRV, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, LED_BSPC, LED_DEL};
-
- const uint8_t LED_LIST_NUMPAD[] = {
- LED_7, LED_8, LED_9,
- LED_U, LED_I, LED_O,
- LED_J, LED_K, LED_L,
- LED_M, LED_COMM, LED_DOT
- };
-
- const uint8_t LED_SIDE_LEFT[] = { LED_L1, LED_L2, LED_L3, LED_L4, LED_L5, LED_L6, LED_L7, LED_L8};
-
- const uint8_t LED_SIDE_RIGHT[] = { LED_R1, LED_R2, LED_R3, LED_R4, LED_R5, LED_R6, LED_R7, LED_R8};
-
-#endif
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rules.mk b/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rules.mk
deleted file mode 100644
index 1ffc2058a2..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-VIA_ENABLE = yes
-MOUSEKEY_ENABLE = no
-TAP_DANCE_ENABLE = yes
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-IDLE_TIMEOUT_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-ENCODER_DEFAULTACTIONS_ENABLE = no
-
-COLEMAK_LAYER_ENABLE = yes #Enable Colemak layer / set to no to disable
-INVERT_NUMLOCK_INDICATOR = yes
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/config.h b/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/config.h
deleted file mode 100644
index 91fce71359..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copyright 2021 Victor Toni (@vitoni)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#if defined(RGB_MATRIX_ENABLE)
- #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
- // number of milliseconds to wait until turning off RGB automatically
- #define RGB_MATRIX_TIMEOUT 300000 // 300 seconds / 5 min
- // start fading out before getting disabled
- // fading out is timed (depending on the rgb_matrix_config.speed) to have finished before reaching RGB_MATRIX_TIMEOUT
- #define RGB_DISABLE_WITH_FADE_OUT
- #define RGB_DISABLE_WHEN_USB_SUSPENDED
- // number of milliseconds to wait until activating RGB idle effects
- #define RGB_IDLE_TIMEOUT 4500 // 4.5 seconds
- // activate breathe effect when idle
- #define RGB_IDLE_BREATHE
- // fade in when we have been suspended
- #define RGB_FADE_IN
-#endif
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/keymap.c
deleted file mode 100644
index 2c8a67ef9b..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/keymap.c
+++ /dev/null
@@ -1,149 +0,0 @@
-// Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>,
-// Copyright 2021 Victor Toni (@vitoni)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-#include "vitoni.h"
-
-enum layer_names {
- _BASE,
- _MOV,
- _RGB
-};
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
-// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del
-// Tab Q W E R T Y U I O P [ ] PgUp
-// Caps A S D F G H J K L ; " # Enter PgDn
-// Sh_L / Z X C V B N M , . ? Sh_R Up End
-// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
-
-
- //
- // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO).
- // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience.
- // Press CAPS+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts.
- [_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MUTE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_PGUP,
- MO(_MOV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN,
- KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, TG(_RGB),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_MOV] = LAYOUT(
- QK_BOOT, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MPLY, KC_MSTP, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
-
- [_RGB] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_SPI,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, RGB_SPD,
- _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI
- ),
-
-};
-// clang-format on
-
-#if defined(ENCODER_ENABLE)
-bool encoder_update_user(uint8_t index, bool clockwise) {
- switch (get_highest_layer(layer_state)) {
- case _MOV:
- if (clockwise) {
- tap_code16(C(KC_TAB));
- } else {
- tap_code16(S(C(KC_TAB)));
- }
- break;
-#if defined(RGB_MATRIX_ENABLE)
- case _RGB:
- if (clockwise) {
- rgb_matrix_increase_val_noeeprom();
- } else {
- rgb_matrix_decrease_val_noeeprom();
- }
- break;
-#endif // RGB_MATRIX_ENABLE
- default:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- }
- //return true; //set to return false to counteract enabled encoder in pro.c
- return false;
-}
-#endif // ENCODER_ENABLE
-
-#if defined(RGB_MATRIX_ENABLE)
-/*
-* Set up default RGB color.
-*/
-void rgb_matrix_set_default_color(void) {
- rgb_matrix_sethsv_noeeprom_user(HSV_CHARTREUSE);
-}
-
-/*
-* Set up RGB defaults.
-*/
-void rgb_matrix_configure_default_settings(void) {
- rgb_matrix_set_default_color();
-}
-
-void keyboard_post_init_user(void) {
- rgb_matrix_enable_noeeprom();
- rgb_matrix_configure_default_settings();
-}
-
-/*
-* Use RGB underglow to indicate specific layers.
-*/
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case _MOV:
- rgb_matrix_sethsv_noeeprom_user(HSV_SPRINGGREEN);
- break;
- case _RGB:
- rgb_matrix_sethsv_noeeprom_user(HSV_GREEN);
- break;
- default: // for any other layer
- rgb_matrix_set_default_color();
- break;
- }
- return state;
-}
-
-void matrix_scan_user(void) {
- matrix_scan_user_rgb();
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (!process_record_user_rgb(keycode, record)) {
- return false;
- }
-
- switch (keycode) {
- case QK_BOOT: // when activating QK_BOOT mode for flashing
- if (record->event.pressed) {
- rgb_matrix_set_color_all(63, 0, 0);
- rgb_matrix_driver.flush();
- }
- return true;
- }
- return true; // Process all other keycodes normally
-}
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/readme.adoc b/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/readme.adoc
deleted file mode 100644
index c34887ebd2..0000000000
--- a/keyboards/gmmk/pro/rev1/iso/keymaps/vitoni/readme.adoc
+++ /dev/null
@@ -1,104 +0,0 @@
-= ViToni's keymap for GMMK Pro ISO
-
-== Layout
-Based on the stock layout but making use of CAPS as FN similar to laptop keyboards.
-This frees up the left row for other uses (although not remapped yet).
-Since both Delete and Insert are used for coding they are part of the CAPS layer as well.
-
-The differences are as follows:
-
-=== Layer 0 (`_BASE`)
-Mostly stock + CAPS goes to layer `_MOV`.
-FN toggles the layer `_RGB`.
-
-=== Layer 1 (`_MOV`), accessed by pressing `CAPS` on layer `_BASE`
-[%header]
-|===
-| Key / Action | Mapped to
-| ESC | _RESET_
-| F1 | KC_MYCM
-| F2 | KC_WHOM
-| F3 | KC_CALC
-| F4 | KC_MSEL
-| F5 | KC_MPRV
-| F6 | KC_MPLY
-| F7 | KC_MSTP
-| F8 | KC_MNXT
-| F9 | KC_MUTE
-| F10 | KC_VOLD
-| F11 | KC_VOLU
-| N | NK_TOGG
-| Delete | Insert
-| Left | Home
-| Right | End
-| Up | PgUp
-| Down | PgDn
-|===
-
-=== Layer 2 (`_RGB`), accessed by pressing `FN` on layer `_BASE`
-Revamped the stock FN layer to focus on RGB only.
-
-[%header]
-|===
-| Key / Action | Mapped to
-| Knob clockwise | Value/Brightness up
-| Knob anti-clockwise | Value/Brightness down
-| Backspace | _RESET_
-| Enter | RGB_TOG
-| Del | RGB_MOD
-| PgUp | RGB_RMOD
-| PgDn | RGB_SPI
-| End | RGB_SPD
-| Left | RGB_HUD
-| Right | RGB_HUI
-| Up | RGB_SAI
-| Down | RGB_SAD
-|===
-
-No other changes have been made.
-
-== RGB light
-
-The code customizing RGB light usage is decribed here:
-
-* link:../../../../../../users/vitoni/readme.adoc[/users/vitoni/readme.adoc]
-
-When using `RGB_MATRIX_TIMEOUT` addtional options are available:
-
-* `RGB_FADE_IN` makes the RGB lights fade in instead of setting the value/brightness to 100% (implicitly due to HSV including the brightness) when resuming after RGB lights have been turned off.
-Fade in occurs when the keyboard is initialized and when the RGB brightness has been changed (e.g. suspending, fade out, etc.).
-* `RGB_DISABLE_WITH_FADE_OUT` activates fade out before the keyboard is disabled by `RGB_MATRIX_TIMEOUT`.
-
-Parameters used to define the behavior are:
-[%header]
-|===
-|Key | Default | Description
-
-| RGB_MATRIX_MAXIMUM_BRIGHTNESS
-| 200 (&lt;= UNIT8_MAX)
-| Maximum assumed value for brightness.
-Used to calculate lead time for fade out before suspend timeout.
-
-|===
-
-`RGB_IDLE_TIMEOUT` enables fading out after being idle for the defined time and allows
-* `RGB_IDLE_BREATHE` also activates a brethe effect while idling.
-
-[%header]
-|===
-|Key | Default | Description
-
-|RGB_IDLE_TIMEOUT
-|4500
-|Time in milliseconds without activity before considered to be idle.
-
-|RGB_IDLE_MINIMUM_BRIGHTNESS
-|`RGB_MATRIX_MAXIMUM_BRIGHTNESS` / 5
-|Brightness value RGB is dimmed to when starting to idle. +
-When breathing used as the lower bound of the brightness value.
-
-|RGB_IDLE_MAXIMUM_BRIGHTNESS
-|`RGB_MATRIX_MAXIMUM_BRIGHTNESS` * 2/5
-|Upper bound of brightness value of the RGB light while breathing.
-
-|===
diff --git a/keyboards/gmmk/pro/rev2/ansi/ansi.c b/keyboards/gmmk/pro/rev2/ansi/ansi.c
index ccdcd42726..322e94c938 100644
--- a/keyboards/gmmk/pro/rev2/ansi/ansi.c
+++ b/keyboards/gmmk/pro/rev2/ansi/ansi.c
@@ -136,7 +136,7 @@ led_config_t g_led_config = {{
4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
}};
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
{0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
{0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
diff --git a/keyboards/gmmk/pro/rev2/ansi/info.json b/keyboards/gmmk/pro/rev2/ansi/info.json
index 082b5f8656..cd1fd31bf0 100644
--- a/keyboards/gmmk/pro/rev2/ansi/info.json
+++ b/keyboards/gmmk/pro/rev2/ansi/info.json
@@ -9,13 +9,20 @@
"device_version": "0.0.2"
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
"rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "C15", "pin_b": "C14"}
diff --git a/keyboards/gmmk/pro/rev2/ansi/rules.mk b/keyboards/gmmk/pro/rev2/ansi/rules.mk
index 2f50d82c82..6d23fe350a 100644
--- a/keyboards/gmmk/pro/rev2/ansi/rules.mk
+++ b/keyboards/gmmk/pro/rev2/ansi/rules.mk
@@ -12,5 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
diff --git a/keyboards/gmmk/pro/rev2/config.h b/keyboards/gmmk/pro/rev2/config.h
index fa409ba026..c393e04e45 100644
--- a/keyboards/gmmk/pro/rev2/config.h
+++ b/keyboards/gmmk/pro/rev2/config.h
@@ -19,7 +19,6 @@
/* External spi flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B12
-#define WEAR_LEVELING_BACKING_SIZE 2048
/* SPI Config for LED Driver */
#define SPI_DRIVER SPIDQ
diff --git a/keyboards/gmmk/pro/rev2/iso/info.json b/keyboards/gmmk/pro/rev2/iso/info.json
index a4aef24e65..6233356616 100644
--- a/keyboards/gmmk/pro/rev2/iso/info.json
+++ b/keyboards/gmmk/pro/rev2/iso/info.json
@@ -9,13 +9,20 @@
"device_version": "0.0.2"
},
"rgb_matrix": {
- "driver": "aw20216"
+ "driver": "aw20216s"
},
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"],
"rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "C15", "pin_b": "C14"}
diff --git a/keyboards/gmmk/pro/rev2/iso/iso.c b/keyboards/gmmk/pro/rev2/iso/iso.c
index e056ff6c12..3a5b21c014 100644
--- a/keyboards/gmmk/pro/rev2/iso/iso.c
+++ b/keyboards/gmmk/pro/rev2/iso/iso.c
@@ -137,7 +137,7 @@ led_config_t g_led_config = {{
2, 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
}};
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
{0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
{0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
diff --git a/keyboards/gmmk/pro/rev2/iso/rules.mk b/keyboards/gmmk/pro/rev2/iso/rules.mk
index db00e4c84c..46eda64be7 100644
--- a/keyboards/gmmk/pro/rev2/iso/rules.mk
+++ b/keyboards/gmmk/pro/rev2/iso/rules.mk
@@ -15,5 +15,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
diff --git a/keyboards/gopolar/gg86/keymaps/horrortroll/keymap.c b/keyboards/gopolar/gg86/keymaps/horrortroll/keymap.c
deleted file mode 100644
index fc725ad3f0..0000000000
--- a/keyboards/gopolar/gg86/keymaps/horrortroll/keymap.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/* Copyright 2023 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "horrortroll.h"
-#include "oled/oled_stuff.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/*
- ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
- │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│ │PSc│Scr│Pse│
- └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
- │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bckspc│ │Hom│Scr│Pse│
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
- │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │ │End│Scr│Pse│
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘
- │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter│
- ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐
- │LSft│ \ │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RSft │RSt│ │ ↑ │
- ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤ ┌───┼───┼───┐
- │LCrl │GUI│ LAlt│ Space │ RAlt│ Fn│ RCrl│ │ ← │ ↓ │ → │
- └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───┴───┴───┘
- ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
- │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
- │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ │ │ │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
- │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ │ │ │ │
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘
- │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │
- ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐
- │LSft│ | │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RSft │RSt│ │ │
- ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤ ┌───┼───┼───┐
- │ │ │ │ │ │ │ │ │ │ │ │
- └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- [_BASE] = LAYOUT_all(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUSE,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
-/*
- ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
- │Rst│ │MeP│VoD│VoU│Mut│ │Stp│Prv│Ply│Nxt│ │Mai│Hom│Cal│Sch│ │Rod│Mod│Tog│
- └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
- │NKO│ │ │ │ │ │ │ │ │ │ │Spd│Spi│ │ │C_E│ │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
- │ │1Hd│1Hi│1Sd│1Si│1Vd│1Vi│ │ │ │ │ │ │ │ │ │ │ │
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘
- │ │2Hd│2Hi│2Sd│2Si│2Vd│2Vi│ │ │ │ │ │ │
- ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐
- │ │ │Pre│Ref│Flp│ │ │ │ │ │ │ │ │ │ │Vai│
- ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤ ┌───┼───┼───┐
- │ │ │ │ │ │ Fn│ │ │Hud│Vad│Hui│
- └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- [_FN] = LAYOUT_all(
- QK_BOOT, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_CALC, KC_WSCH, RGB_RMOD, RGB_MOD, RGB_TOG,
- NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, RGB_C_E, _______, _______,
- _______, G1_HUD, G1_HUI, G1_SAD, G1_SAI, G1_VAD, G1_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, G2_HUD, G2_HUI, G2_SAD, G2_SAI, G2_VAD, G2_VAI, _______, _______, _______, _______, _______, _______,
- _______, _______, G_PRE, REF_G, G_FLIP, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,
- _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI
- ),
-};
diff --git a/keyboards/gopolar/gg86/keymaps/horrortroll/oled/oled_stuff.h b/keyboards/gopolar/gg86/keymaps/horrortroll/oled/oled_stuff.h
deleted file mode 100644
index d67e5a18c5..0000000000
--- a/keyboards/gopolar/gg86/keymaps/horrortroll/oled/oled_stuff.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// OLED animation
-#include "lib/wave.h"
-
-#ifdef OLED_ENABLE
- static void render_layer_info(void) {
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_P(PSTR(" QWERTY "), false);
- break;
- case 1:
- oled_write_P(PSTR(" Function "), false);
- break;
- default:
- oled_write_P(PSTR(" Undefined "), false);
- }
- }
-
- static void render_layer_number(void) {
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_P(PSTR("0"), false);
- break;
- case 1:
- oled_write_P(PSTR("1"), false);
- break;
- default:
- oled_write_P(PSTR("X"), false);
- }
- }
-
- bool oled_task_user(void) {
- render_layer_info();
-
- // sleep if it has been long enough since we last got a char
- if (timer_elapsed32(wave_sleep) > OLED_TIMEOUT) {
- oled_off();
- } else {
- oled_on();
- }
- // time for the next frame?
- if (timer_elapsed(wave_timer) > FRAME_TIMEOUT) {
- wave_timer = timer_read();
- render_frame();
- }
-
- oled_set_cursor(0, 3);
- oled_write_P(PSTR(" Layer: "), false);
- render_layer_number();
-
- return true;
- }
-#endif
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h
deleted file mode 100644
index 9b3ecffef1..0000000000
--- a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
-
-#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
-#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#undef RGBLIGHT_EFFECT_SNAKE
-#undef RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_CHRISTMAS
-#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
-#undef RGBLIGHT_EFFECT_RGB_TEST
-#undef RGBLIGHT_EFFECT_ALTERNATING
-#undef RGBLIGHT_EFFECT_TWINKLE
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index a71389707d..0000000000
--- a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ Bckspc│PgU│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│| \│PgD│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │HyCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ │
- * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │Ctrl│ Opt│ Cmd│ Space │Cmd │FnPy│ │Lef│Dow│Rig│
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_BASE] = LAYOUT_65_ansi_blocker(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
- HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, XXXXXXX,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, XXXXXXX,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, PLY_FN1, KC_LEFT, KC_DOWN, KC_RGHT
-),
-/* Function Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- * │` ~│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│ Delete│VlU│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- * │RMod │RH+│RS+│RV+│ │ │ │ │ │ │F13│F14│F15│ SlpD│VlD│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │RTgl │RH-│RS-│RV-│ │ │ │ │ │ │MNC│LHP│ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ │
- * │ │LYR│Thm│ │ │RST│ │Mke│Prv│Nxt│Ply│MteSft│PgU│ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_FN1] = LAYOUT_65_ansi_blocker(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_VOLU,
- RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, MC_SLPD, KC_VOLD,
- RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, MC_MSSN, MC_LHPD, _______, XXXXXXX,
- _______, RGB_LYR, RGB_THM, _______, _______, QK_BOOT, _______, QM_MAKE, KC_MPRV, KC_MNXT, KC_MPLY, MUT_SFT, KC_PGUP, XXXXXXX,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
-),
-/* Blank Layout
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
-[X] = LAYOUT_65_ansi_blocker(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-*/
-};
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md
deleted file mode 100644
index 76174061a9..0000000000
--- a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# brandonschlack's Think6.5 keymap
-
-My keymap for the Think6.5. Using the `LAYOUT_65_ansi_blocker` LAYOUT and based on my keyboard-agnostic layout, some small changes for the navigation keys not present due to the badge.
-
-## [Base Layer](http://www.keyboard-layout-editor.com/#/gists/b396fee9f49d6e9493876e82a8ee99ac)
-![Base Layer](https://i.imgur.com/AZYVuZS.jpg)
-
-## [Function Layer](http://www.keyboard-layout-editor.com/#/gists/06e684133399bb63d8b72ac6982e0e68)
-![Function Layer](https://i.imgur.com/GbOOxME.jpg)
diff --git a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk b/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index 4ce80104ef..0000000000
--- a/keyboards/gray_studio/think65/solder/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-# Build Options
-MOUSEKEY_ENABLE = no # Don't need mouse keys
diff --git a/keyboards/hadron/ver2/keymaps/side_numpad/keymap.c b/keyboards/hadron/ver2/keymaps/side_numpad/keymap.c
index f352b1c851..9cc621df2f 100644
--- a/keyboards/hadron/ver2/keymaps/side_numpad/keymap.c
+++ b/keyboards/hadron/ver2/keymaps/side_numpad/keymap.c
@@ -316,36 +316,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{cc
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/hadron/ver3/keymaps/ishtob/keymap.c b/keyboards/hadron/ver3/keymaps/ishtob/keymap.c
deleted file mode 100644
index a3b522fa04..0000000000
--- a/keyboards/hadron/ver3/keymaps/ishtob/keymap.c
+++ /dev/null
@@ -1,241 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "ishtob.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,------+------+------+------+------+------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | PSCR |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | Tab | Q | W | E | R | T | 7 | 8 | 9 | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | LCTL | A | S | D | F | G | 4 | 5 | 6 | H | J | K | L | ;/Nav|Ctl/Et|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | 1 | 2 | 3 | N | M | , | . | / | - |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | Ctrl | GUI | Alt |Lower |Space | 0 | . | = |Space |Raise | Alt | NumL | App | Del |
- * `--------------------------------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_wrapper(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_PSCR,
- LT_FN(KC_TAB), _________________QWERTY_L1_________________, KC_P7, KC_P8, KC_P9, _________________QWERTY_R1_________________, KC_BSPC,
- KC_CAPS, _________________QWERTY_L2_________________, KC_P4, KC_P5, KC_P6, _________________QWERTY_R2_________________, CTL_ENT,
- KC_LSFT, _________________QWERTY_L3_________________, KC_P1, KC_P2, KC_P3, _________________QWERTY_R3_________________, LT_RAI(KC_MINS),
- KC_ESC, KC_LCTL, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_P0, KC_DOT, KC_EQL, KC_SPC, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_DEL
-),
-
-/* Colemak
- * ,------+------+------+------+------+------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | PSCR |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | Tab | Q | W | F | P | G | 7 | 8 | 9 | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
- * | CAPS | A | R | S | T | D | 4 | 5 | 6 | H | N | E | I | O |Ctl/Et|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | 1 | 2 | 3 | K | M | , | . | / | - |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | Ctrl | GUI | Alt |Lower |Space | 0 | . | = |Space |Raise | Alt | NumL | App | Del |
- * `--------------------------------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_wrapper(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_PSCR,
- LT_FN(KC_TAB), _________________COLEMAK_L1________________, KC_P7, KC_P8, KC_P9, _________________COLEMAK_R1________________, KC_BSPC,
- KC_LCTL, _________________COLEMAK_L2________________, KC_P4, KC_P5, KC_P6, _________________COLEMAK_R2________________, CTL_ENT,
- KC_LSFT, _________________COLEMAK_L3________________, KC_P1, KC_P2, KC_P3, _________________COLEMAK_R3________________, LT_RAI(KC_MINS),
- KC_ESC, KC_CAPS, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_P0, KC_DOT, KC_EQL, KC_SPC, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_DEL
- ),
-
-/* Dvorak
- * ,------+------+------+------+------+------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | PSCR |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | Tab | " | , | . | P | Y | 7 | 8 | 9 | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | 4 | 5 | 6 | D | H | T | N | S | / |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | 1 | 2 | 3 | B | M | W | V | Z |Ctl/Et|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | Ctrl | GUI | Alt |Lower |Space | 0 | . | = |Space |Raise | Alt | NumL | App | Del |
- * `--------------------------------------------------------------------------------------------------------'
- */
-[_DVORAK] = LAYOUT_wrapper(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_PSCR,
- LT_FN(KC_TAB), _________________DVORAK_L1_________________, KC_P7, KC_P8, KC_P9, _________________DVORAK_R1_________________, KC_BSPC,
- KC_LCTL, _________________DVORAK_L2_________________, KC_P4, KC_P5, KC_P6, _________________DVORAK_R2_________________, CTL_ENT,
- KC_LSFT, _________________DVORAK_L3_________________, KC_P1, KC_P2, KC_P3, _________________DVORAK_R3_________________, LT_RAI(KC_MINS),
- KC_ESC, KC_CAPS, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_P0, KC_DOT, KC_EQL, KC_SPC, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_DEL
-),
-
-/* Lower
- * ,------+------+------+------+------+------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO ~ |ISO | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | Next | Vol- | Vol+ | Play |
- * `--------------------------------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_wrapper(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, KC_F6, KC_UNDS, KC_EQL, KC_LBRC, KC_RBRC, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, _______, _______, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,------+------+------+------+------+------------------------------------------------.
- * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | | | | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO # |ISO / | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | Next | Vol- | Vol+ | Play |
- * `--------------------------------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_wrapper(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- ________________NUMBER_LEFT________________, KC_6, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, KC_PLUS, KC_BSLS,
- KC_DEL, KC_A, KC_UP, KC_D, KC_PSCR, KC_VOLU, _______, _______, _______, KC_4, KC_5, KC_6, KC_PAST, KC_COLN, KC_QUOT,
- _______, KC_LEFT, KC_DOWN, KC_RIGHT,KC_MUTE, KC_VOLD, _______, _______, _______, KC_1, KC_2, KC_3, KC_UP, KC_SLSH, _______,
- _______, _______, _______, _______, _______, KC_SPC, _______, _______, KC_SPC, KC_0, _______, KC_LEFT, KC_DOWN, KC_RIGHT, KC_NUM
-),
-
-/* FN layer on Esc key
- * ,------+------+------+------+------+------------------------------------------------.
- * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | + |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | _ | = | [ | ] | ' |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO ~ |ISO | | { | } |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | Next | Vol- | Vol+ | Play |
- * '------+------+------+------+------+------+------+------+------+------+------+------+--------------------'
- */
-[_FNLAYER] = LAYOUT_wrapper(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS,
- _______, __________________LONG_FUNC_LEFT___________________, _______, _______, _______, KC_UNDS, KC_EQL, KC_LBRC, KC_RBRC, KC_QUOT,
- _______, __________________LONG_FUNC_RIGHT__________________, _______, _______, _______,S(KC_NUHS),S(KC_NUBS),KC_LCBR, KC_RCBR, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Mouse Layer (semi-col)
- * ,------+------+------+------+------+------------------------------------------------.
- * | ACCL0| ACCL1| ACCL2| | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | | | | | | | | | Home | Wh_Up| WHL_L| M_Up | WHL_R| Macro| |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | End | Wh_Dn| M_Lft| M_Dn | M_Rt | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | BTN2 | BTN3 | BTN4 | BTN5 | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | BTN1 | | | | BTN1 | | | | | |
- * `--------------------------------------------------------------------------------------------------------'
- */
-
-[_MOUSECURSOR] = LAYOUT_wrapper(
- KC_ACL0, KC_ACL1, KC_ACL2, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, M_EMAIL,M_EMAIL2, _______, _______, _______, KC_HOME, KC_PGUP, KC_WH_L, KC_MS_U, KC_WH_R, P_MPASS, P_META,
- _______, _______, _______, _______, O_RTQ6H, _______, _______, _______, KC_END , KC_PGDN, KC_MS_L, KC_MS_D, KC_MS_R, _______, O_DAYRN,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN2, KC_BTN3, KC_BTN4, KC_BTN5, _______, _______,
- _______, _______, _______, _______, _______, KC_BTN1, _______, _______, _______, KC_BTN1, _______, _______, _______, P_CITRIX, O_AUTODC
-),
-
-/* Adjust (Lower + Raise)
- * ,------+------+------+------+------+------------------------------------------------.
- * | Reset|HPT TG|HPT FB|HPT M+|HPT M-|HPT RS| | | | | |EEP RS|
- * |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
- * | |RGB TG|RGB ST|RGBH -|RGBH +|RGBS -|RGBS +|RGBV -|RGBV +| | | | | | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | |Aud on|Audoff|AGnorm| | | |AGswap|Qwerty|Colemk| | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|Musoff| | | | | | |BL - | BL + |BL ST |BL TG |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |CK RS |CK - |CK + |CK TG |
- * `--------------------------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_wrapper(
- _______, HF_TOGG, HF_FDBK, HF_NEXT, HF_PREV, HF_RST, _______, _______, _______, _______, _______, EE_CLR,
- QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_DEL,
- _______, MAGIC_TOGGLE_NKRO, _______, AU_ON, AU_OFF, AG_NORM, _______, _______, _______, AG_SWAP, QWERTY, COLEMAK, _______, _______, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, BL_DOWN, BL_UP, BL_STEP, BL_TOGG,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CK_RST, CK_DOWN, CK_UP, CK_TOGG
-)
-
-
-
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- break;
- case LOWER:
- if (record->event.pressed) {
- //not sure how to have keyboard check mode and set it to a variable, so my work around
- //uses another variable that would be set to true after the first time a reactive key is pressed.
- layer_on(_LOWER);
- } else {
- layer_off(_LOWER);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- //not sure how to have keyboard check mode and set it to a variable, so my work around
- //uses another variable that would be set to true after the first time a reactive key is pressed.
- layer_on(_RAISE);
- } else {
- layer_off(_RAISE);
- }
- return false;
- break;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
- break;
- }
- return true;
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/hadron/ver3/keymaps/ishtob/readme.md b/keyboards/hadron/ver3/keymaps/ishtob/readme.md
deleted file mode 100644
index 88b958ec42..0000000000
--- a/keyboards/hadron/ver3/keymaps/ishtob/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# The Default Hadron Layout
-
diff --git a/keyboards/hadron/ver3/keymaps/xulkal/config.h b/keyboards/hadron/ver3/keymaps/xulkal/config.h
deleted file mode 100644
index 6f70f09bee..0000000000
--- a/keyboards/hadron/ver3/keymaps/xulkal/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#pragma once
diff --git a/keyboards/hadron/ver3/keymaps/xulkal/keymap.c b/keyboards/hadron/ver3/keymaps/xulkal/keymap.c
deleted file mode 100644
index 4ae1d07170..0000000000
--- a/keyboards/hadron/ver3/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,73 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Qwerty Layout
- * ,-----------------------------------------------------------------------------------.
- * | GESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BkSp |
- * |------+------+------+------+------+------|------+------+------+------+------+------+--------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | \ | 7 | 8 | 9 |
- * |------+------+------+------+------+------|------+------+------+------+------+------+------+------+------|
- * |FN(CAPS)| A | S | D | F | G | H | J | K | L | ; | Enter| 4 | 5 | 6 |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Sft[ | Z | X | C | V | B | N | M | , | . | / | Sft] | 1 | 2 | 3 |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctl- | Win | LOWER| RAISE| Alt | Space| Space| Left | Up | Down | Right| Ctl= | 0 | . | = |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------'
- */
- [_QWERTY] = EXPAND_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_P7, KC_P8, KC_P9,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_P4, KC_P5, KC_P6,
- _________________QWERTY_L4_________________, _________________QWERTY_R4_________________, KC_P1, KC_P2, KC_P3,
- _________________QWERTY_L5_________________, _________________QWERTY_R5_________________, KC_P0, KC_DOT, KC_EQL
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = EXPAND_LAYOUT(
- ___________________GAME_L1_________________, ___________________GAME_R1_________________,
- ___________________GAME_L2_________________, ___________________GAME_R2_________________, _______, _______, _______,
- ___________________GAME_L3_________________, ___________________GAME_R3_________________, _______, _______, _______,
- ___________________GAME_L4_________________, ___________________GAME_R4_________________, _______, _______, _______,
- ___________________GAME_L5_________________, ___________________GAME_R5_________________, _______, _______, _______
- ),
-#endif
-
- [_LOWER] = EXPAND_LAYOUT(
- __________________LOWER_L1_________________, __________________LOWER_R1_________________,
- __________________LOWER_L2_________________, __________________LOWER_R2_________________, _______, _______, _______,
- __________________LOWER_L3_________________, __________________LOWER_R3_________________, _______, _______, _______,
- __________________LOWER_L4_________________, __________________LOWER_R4_________________, _______, _______, _______,
- __________________LOWER_L5_________________, __________________LOWER_R5_________________, _______, _______, _______
- ),
-
- [_RAISE] = EXPAND_LAYOUT(
- __________________RAISE_L1_________________, __________________RAISE_R1_________________,
- __________________RAISE_L2_________________, __________________RAISE_R2_________________, _______, _______, _______,
- __________________RAISE_L3_________________, __________________RAISE_R3_________________, _______, _______, _______,
- __________________RAISE_L4_________________, __________________RAISE_R4_________________, _______, _______, _______,
- __________________RAISE_L5_________________, __________________RAISE_R5_________________, _______, _______, _______
- ),
-
-#ifdef TRILAYER_ENABLED
- [_ADJUST] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, _______, _______, _______,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, _______, _______, _______,
- _________________ADJUST_L4_________________, _________________ADJUST_R4_________________, _______, _______, _______,
- _________________ADJUST_L5_________________, _________________ADJUST_R5_________________, _______, _______, _______
- ),
-#endif
-};
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/hadron/ver3/keymaps/xulkal/rules.mk b/keyboards/hadron/ver3/keymaps/xulkal/rules.mk
deleted file mode 100644
index 0305226b32..0000000000
--- a/keyboards/hadron/ver3/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Overridden build options
-
-COMMAND_ENABLE = no
-ENCODER_ENABLER = no
diff --git a/keyboards/handwired/6key/config.h b/keyboards/handwired/6key/config.h
deleted file mode 100644
index 0ba89040c7..0000000000
--- a/keyboards/handwired/6key/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
- /* Copyright 2020 Bratzworth
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* dip switch */
-#define DIP_SWITCH_PINS { C6 }
diff --git a/keyboards/handwired/6key/info.json b/keyboards/handwired/6key/info.json
index 39c26006d6..8e33a60e2e 100644
--- a/keyboards/handwired/6key/info.json
+++ b/keyboards/handwired/6key/info.json
@@ -13,6 +13,9 @@
"rows": ["B4", "D0"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["C6"]
+ },
"processor": "atmega32u4",
"bootloader": "caterina",
"layouts": {
diff --git a/keyboards/handwired/atreus50/keymaps/ajp10304/config.h b/keyboards/handwired/atreus50/keymaps/ajp10304/config.h
deleted file mode 100644
index 4f15c56269..0000000000
--- a/keyboards/handwired/atreus50/keymaps/ajp10304/config.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2021 Alan Pocklington
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
-
-#undef MATRIX_ROW_PINS
-#undef MATRIX_COL_PINS
-
-#define MATRIX_ROW_PINS { D4, D5, C7, C6 }
-#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, D7, D1, B7, D0, B3, B2, B1, B0 }
-
-#endif
diff --git a/keyboards/handwired/atreus50/keymaps/ajp10304/keymap.c b/keyboards/handwired/atreus50/keymaps/ajp10304/keymap.c
deleted file mode 100644
index d807df047d..0000000000
--- a/keyboards/handwired/atreus50/keymaps/ajp10304/keymap.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/* Copyright 2021 Alan Pocklington
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "keymap_uk.h"
-#include "ajp10304.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------| |-----------------------------------------.
- * | Esc | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | | H | J | K | L | ;: | Enter|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shft | Z | X | C | V | B | | N | M | ,< | .> | /? | Shft |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Fn | Ctrl | Alt | GUI |Lower | Bksp | Ctrl | Alt |Space |Raise | Shift| MENU | Ctrl | Fn2 |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT(
- LT(_NUMPAD, KC_ESC), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
- MT(MOD_LSFT, KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MT(MOD_RSFT, KC_ENT) ,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT ,
- MO(_FUNC), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, RAISE, KC_LSFT, KC_BTN2, KC_RCTL, MO(_FUNC2)
-),
-
-/* Colemak-DHm
- * ,-----------------------------------------| |-----------------------------------------.
- * | Esc | Q | W | F | P | B | | J | L | U | Y | ;: | Bksp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | A | R | S | T | G | | M | N | E | I | O | Enter|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shft | Z | X | C | D | V | | K | H | ,< | .> | /? | Shft |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Fn | Ctrl | Alt | GUI |Lower | Bksp | Ctrl | Alt |Space |Raise | Shift| MENU | Ctrl | Fn2 |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT(
- LT(_NUMPAD, KC_ESC), KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC ,
- MT(MOD_LSFT, KC_TAB), KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, MT(MOD_RSFT, KC_ENT) ,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT ,
- MO(_FUNC), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, RAISE, KC_LSFT, KC_BTN2, KC_RCTL, MO(_FUNC2)
-),
-
-/* Function
- * ,------------------------------------------ |-----------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------- |------+------+------+------+------+------|
- * | 1! | 2" | 3£ | 4$ | 5% | 6^ | | 7& | 8* | 9( | 0) | ~ |INSERT|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| \| | `¬ | #~ | * | -_ | | =+ | \| | [{ | ]} | '@ |Shift |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Fn | Ctrl | Alt | GUI |Lower | Bksp | Ctrl | Alt |Space |Mouse | MENU | Alt | Ctrl | Fn |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_FUNC] = LAYOUT(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 ,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, UK_TILD, KC_INSERT ,
- KC_LSFT, KC_NUBS, KC_GRAVE, KC_NONUS_HASH, KC_PAST, KC_MINS, KC_EQL, KC_BSLS, KC_LBRC, KC_RBRC, KC_QUOT, MT(MOD_RSFT, KC_ENT) ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, MO(_MOUSE), _______, _______, _______, _______
-),
-
-/* Lower
- * ,------------------------------------------ |-----------------------------------------.
- * | 1! | 2" | 3£ | 4$ | 5% | 6^ | | 7& | 8* | 9( | 0) | DEL | Bksp |
- * |------+------+------+------+------+------- |------+------+------+------+------+------|
- * | ! | " | £ | $ | % | ^ | | & | * | ( | ) |WrdDel|WrdBks|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| \| | `¬ | #~ | '@ | -_ | | =+ | #~ | [{ | ]} | '@ |Shift |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | |Lower | Del | Ctrl | Alt |Space | | Next | Vol- | Vol+ | Play |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_BSPC ,
- LSFT(KC_1), LSFT(KC_2), LSFT(KC_3), LSFT(KC_4), LSFT(KC_5), LSFT(KC_6), LSFT(KC_7), LSFT(KC_8), LSFT(KC_9), LSFT(KC_0), LCTL(KC_DEL), LCTL(KC_BSPC) ,
- SC_LSPO, KC_NUBS, KC_GRAVE, KC_NONUS_HASH, KC_QUOT, KC_MINS, KC_EQL, KC_NONUS_HASH, KC_LBRC, KC_RBRC, KC_QUOT, MT(MOD_RSFT, KC_ENT) ,
- _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,------------------------------------------ |-----------------------------------------.
- * | ` | |WRDSEL| [ | ] | | | | PGUP | HOME |PGDOWN| |PRNTSC|
- * |------+------+------+------+------+------- |------+------+------+------+------+------|
- * | ` | | | ( | ) | | | | HOME | UP | END | |ZOOM +|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | { | } | | | |< | LEFT | DOWN |RIGHT | >| |ZOOM -|
- * |------+------+------+------+------+------|------+------+------+------+------+------+------+------|
- * | Mouse| | | | | Alt | Ctrl | Alt |Enter |Raise | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT(
- KC_GRV, XXXXXXX, M_WORD_SEL, KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX, KC_PGUP, KC_HOME, KC_PGDN, XXXXXXX, KC_PSCR ,
- KC_GRV, XXXXXXX, XXXXXXX, LSFT(KC_9), LSFT(KC_0), XXXXXXX, XXXXXXX, KC_HOME, KC_UP, KC_END, XXXXXXX, LCTL(LSFT(KC_EQL)) ,
- _______, XXXXXXX, XXXXXXX, LSFT(KC_LBRC), LSFT(KC_RBRC), XXXXXXX, LCTL(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_RIGHT), LCTL(KC_MINS) ,
- MO(_MOUSE), _______, _______, _______, _______, KC_LALT, _______, _______, KC_ENT, _______, XXXXXXX, _______, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,------------------------------------------ |------------------------------------------.
- * | ???? | Reset|Qwerty| | | REC1 | | REC2 | | | | | Del |
- * |------+------+------+------+------+------- |------+------+------+------+------+-------|
- * | CAPS | | | | | PLAY1| | PLAY2| Mute | Vol+ | Play | |Qwerty |
- * |------+------+------+------+------+------| |------+------+------+------+------+-------|
- * | PC/MC| | | | | STOP | | STOP | Prev | Vol- | Next | |Colemak|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+-------|
- * | | | | | | | | | | | | | | |
- * `--------------------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT(
- M_CUSTOM, QK_BOOT, QWERTY, _______, _______, DM_REC1, DM_REC2, _______, _______, _______, _______, KC_DEL ,
- KC_CAPS, _______, _______, _______, _______, DM_PLY1, DM_PLY2, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, KC_MEDIA_PLAY_PAUSE, _______, QWERTY ,
- TG(_MAC), _______, _______, _______, _______, DM_RSTP, DM_RSTP, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK, _______, COLEMAK ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Mouse
- * ,------------------------------------------ |-----------------------------------------.
- * | ESC | | | | | | | WH_L | WH_UP| BTN3 | WH_D | WH_R | |
- * |------+------+------+------+------+------- |------+------+------+------+------+------|
- * | ACC0 | ACC1 | ACC2 | | | | | | BTN1 | UP | BTN2 | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ACC0 | ACC1 | ACC2 | | | | | | LEFT | DOWN |RIGHT | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_MOUSE] = LAYOUT(
- KC_ESC , _______, _______, _______, _______, _______, KC_MS_WH_LEFT, KC_MS_WH_UP, KC_MS_BTN3, KC_MS_WH_DOWN, KC_MS_WH_RIGHT, _______ ,
- KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, _______, _______ ,
- KC_MS_ACCEL0, KC_MS_ACCEL1, KC_MS_ACCEL2, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-
-/* Num Pad
- * ,------------------------------------------ |-----------------------------------------.
- * | ESC | | | | | | |NMLOCK| 7 | 8 | 9 | / | |
- * |------+------+------+------+------+------- |------+------+------+------+------+------|
- * | | | | | | | | | 4 | 5 | 6 | * | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | 1 | 2 | 3 | + | |
- * |------+------+------+------+------+------|------+------+------+------+------+------+------+------|
- * | | | | | | | | | | 0 | . | , | - | |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_NUMPAD] = LAYOUT(
- _______, _______, _______, _______, _______, _______, KC_NUM, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_SLASH, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_ASTERISK, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_PLUS, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_0, KC_KP_DOT, KC_COMM, KC_KP_MINUS, _______
-),
-
-
-/* Function 2 (Right hand side)
- * ,------------------------------------------ |-----------------------------------------.
- * | | |WRDSEL| | | | | LNDEL| | | | | |
- * |------+------+------+------+------+------- |------+------+------+------+------+------|
- * | | | LNSEL| DUP | | | | | |LNJOIN| | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | UNDO | CUT | COPY | PASTE| | | | | | | | MODE |
- * |------+------+------+------+------+------|------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
-[_FUNC2] = LAYOUT(
- _______, _______, M_WORD_SEL, _______, _______, _______, M_LINE_DEL, _______, _______, _______, _______, _______,
- _______, _______, M_LINE_SEL, M_DUP, _______, _______, _______, M_JOIN, _______, _______, _______, _______,
- _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, _______, _______, _______, _______, M_MODE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MAC] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- MFNC, _______, _______, _______, MLWR, _______, _______, _______, _______, MRSE, _______, _______, _______, MFNC2
-),
-
-[_MLWR] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MRSE] = LAYOUT(
- _______, _______, M_WORD_SEL_MAC, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, LCTL(KC_A), _______, LCTL(KC_E), _______, LGUI(KC_EQL) ,
- _______, _______, _______, _______, _______, _______, LALT(KC_LEFT), _______, _______, _______, LALT(KC_RIGHT), LGUI(KC_MINS) ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MFNC] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, LGUI(KC_PENT) ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MFNC2] = LAYOUT(
- _______, _______, M_WORD_SEL_MAC, _______, _______, _______, M_LINE_DEL_MAC, _______, _______, _______, _______, _______,
- _______, _______, M_LINE_SEL_MAC, M_DUP_MAC, _______, _______, _______, M_JOIN_MAC, _______, _______, _______, _______,
- _______, LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), _______, _______, _______, _______, _______, _______, M_MODE_MAC,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
diff --git a/keyboards/handwired/atreus50/keymaps/ajp10304/readme.md b/keyboards/handwired/atreus50/keymaps/ajp10304/readme.md
deleted file mode 100644
index 6ba052065d..0000000000
--- a/keyboards/handwired/atreus50/keymaps/ajp10304/readme.md
+++ /dev/null
@@ -1,130 +0,0 @@
-# AJP10304 Custom Atreus50 Layout
-# Also available for the Planck, Shark, Quark and JJ40
-
-**Note:** In the tables below where there are two characters on a key,
-the second is the output when shift is applied.
-
-**Note:** The below tables assume a UK layout.
-
-#### Flashing
-Refer to the README.md of the keyboard you want to flash.
-
-##### Main Qwerty Layer
-
-* Tab: when held, operates as shift.
-* Enter: when held, operates as shift.
-* MENU: perform right-click
-
-| | | | | | | | | | | | | | |
-| ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:|
-| Esc | Q | W | E | R | T | | | Y | U | I | O | P | Bksp |
-| Tab | A | S | D | F | G | | | H | J | K | L | ;: | Enter|
-| Shft | Z | X | C | V | B | | | N | M | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp | Ctrl | Alt |Space |Raise | Shift| MENU | Ctrl | Fn2 |
-
-##### Main Colemak-DHm Layer
-
-| | | | | | | | | | | | | | |
-| ---- |:----:| :---:|:---:|:-----:|:----:| :---:| :---:|:-----:|:-----:|:-----:|:----:|:----:| ----:|
-| Esc | Q | W | F | P | B | | | J | L | U | Y | ;: | Bksp |
-| Tab | A | R | S | T | G | | | M | N | E | I | O | Enter|
-| Shft | Z | X | C | D | V | | | K | H | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI | Lower | Bksp | Ctrl | Alt | Space | Raise | Shift | MENU | Ctrl | Fn2 |
-
-
-##### Function Layer
-Activated when `fn` held in the above `qwerty` layer.
-
-| | | | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| F1 | F2 | F3 | F4 | F5 | F6 | | | F7 | F8 | F9 | F10 | F11 | F12 |
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | | | 7& | 8* | 9( | 0) | ~ |INSERT|
-| Shift | \| | `¬ | #~ | * | -_ | | | =+ | \| | [{ | ]} | '@ |Shift |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp | Ctrl | Alt |Space |Mouse | MENU | Alt | Ctrl | Fn2 |
-
-##### Lower Layer
-Activated when `Lower` is held in the above `qwerty` layer.
-
-* Numbers are along the top row, their shifted counterparts are on row 2.
-* WrdBks: `backspace` with `ctrl` applied. I.e. delete a word.
-* WrdDel: `delete` with `ctrl` applied. I.e. forward delete a word.
-
-| | | | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | | | 7& | 8* | 9( | 0) | DEL | Bksp |
-| ! | " | £ | $ | % | ^ | | | & | * | ( | ) |WrdDel|WrdBks|
-| Shift | \| | `¬ | #~ | '@ | -_ | | | =+ | #~ | [{ | ]} | '@ |Shift |
-| | | | |Lower | Del | Ctrl | Alt |Space | | Next | Vol- | Vol+ | Play |
-
-##### Raise Layer
-Activated when `Raise` is held in the above `qwerty` layer.
-
-* Preferred layer for typing brackets.
-* Allows for cursor navigation to be used solely with the right hand.
-* WRDSEL: Select the word where the cursor is.
-* |< and >|: Apply `ctrl` to `left` and `right` respectively for word jumping.
-
-| | | | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
-| ` | |WRDSEL| [ | ] | | | | | PGUP | HOME |PGDOWN| |PRNTSC|
-| ` | | | ( | ) | | | | | HOME | UP | END | |ZOOM +|
-| | | | { | } | | | |&#124;<| LEFT | DOWN |RIGHT |>&#124;|ZOOM -|
-| Mouse | | | | | Alt | Ctrl | Alt | Enter |Raise | | | | |
-
-##### Lower + Raise
-Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
-
-* Audio controls in the same position as cursor keys from the `Raise` layer.
-* ????: Runs a macro for outputting a text string. Do not use this store passwords.
-* Reset: Enter bootloader for flashing firmware to the keyboard.
-* CAPS: Toggle caps lock.
-* Macro functions: Allows recording of macros. To start recording the macro, press either REC1 or REC2.
-To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
-* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
-MRSE with RAISE, MFNC with FUNC and MFNC2 with FUNC2 respectively.
-
-| | | | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|:-------:|
-| ???? | Reset|Qwerty| | | REC1 | | | REC2 | | | | | Del |
-| CAPS | | | | | PLAY1| | |PLAY2 | Mute | Vol+ | Play | | Qwerty |
-| MAC | | | | | STOP1| | |STOP2 | Prev | Vol- | Next | | Colemak |
-| | | | | | | Ctrl | Alt | | | DYN | | | |
-
-##### Function 2 Layer
-Activated when `fn` held in the above `qwerty` layer.
-* WRDSEL: Select the word where the cursor is.
-* LNDEL: Delete the line where the cursor is.
-* LNSEL: Select the line where the cursor is.
-* DUP: Duplicate the selected text.
-* LNJOIN: Join the line where the cursor is with the following line.
-* MODE: Print either `PC` or `OSX` depending on what layer mode is active.
-
-| | | | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | |WRDSEL| | | | | | LNDEL| | | | | |
-| | | LNSEL| DUP | | | | | | |LNJOIN| | | |
-| | UNDO | CUT | COPY | PASTE| | | | | | | | | MODE |
-| | | | | | | Ctrl | Alt | | | | | | |
-
-##### Mouse Layer
-Activated when `fn` and `raise` held together.
-
-| | | | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| ESC | | | | | | | | W_L | W_UP | BTN3 | W_DWN| W_R | |
-| ACC0 | ACC1 | ACC2 | | | | | | | BTN1 | UP | BTN2 | | |
-| ACC0 | ACC1 | ACC2 | | | | | | | LEFT | DOWN | RIGHT| | |
-| | | | | | | Ctrl | Alt | | | | | | |
-
-##### Number Pad Layout
-Activated when holding `Esc` key.
-
-| | | | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | | | | | | | |NMLOCK| 7 | 8 | 9 | / | |
-| | | | | | | | | | 4 | 5 | 6 | * | |
-| | | | | | | | | | 1 | 2 | 3 | + | |
-| | | | | | | Ctrl | Alt | | 0 | . | , | - | |
-
-
-
diff --git a/keyboards/handwired/atreus50/keymaps/ajp10304/rules.mk b/keyboards/handwired/atreus50/keymaps/ajp10304/rules.mk
deleted file mode 100644
index 900dbaed11..0000000000
--- a/keyboards/handwired/atreus50/keymaps/ajp10304/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-AUDIO_ENABLE = no
-MOUSEKEY_ENABLE = yes
-BOOTLOADER = halfkay
diff --git a/keyboards/handwired/atreus50/keymaps/default/keymap.c b/keyboards/handwired/atreus50/keymaps/default/keymap.c
index cbcc5fc6f8..c9de095cf8 100644
--- a/keyboards/handwired/atreus50/keymaps/default/keymap.c
+++ b/keyboards/handwired/atreus50/keymaps/default/keymap.c
@@ -94,20 +94,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_B5, 20},
- {NOTE_B6, 8},
- {NOTE_DS6, 20},
- {NOTE_B6, 8}
-};
+// float tone_startup[][2] = {
+// {NOTE_B5, 20},
+// {NOTE_B6, 8},
+// {NOTE_DS6, 20},
+// {NOTE_B6, 8}
+// };
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
@@ -178,36 +175,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
};
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/handwired/battleship_gamepad/rules.mk b/keyboards/handwired/battleship_gamepad/rules.mk
index 7422e73873..a41273f890 100644
--- a/keyboards/handwired/battleship_gamepad/rules.mk
+++ b/keyboards/handwired/battleship_gamepad/rules.mk
@@ -1,5 +1,3 @@
-SRC += analog.c
-
# Build Options
# change yes to no to disable
#
diff --git a/keyboards/handwired/brain/keymaps/klackygears/config.h b/keyboards/handwired/brain/keymaps/klackygears/config.h
deleted file mode 100644
index b572858448..0000000000
--- a/keyboards/handwired/brain/keymaps/klackygears/config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
-Copyright 2020 James Smith <bronzegears@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM 150
-
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#undef RGBLIGHT_RAINBOW_SWIRL_RANGE
-#define RGBLIGHT_RAINBOW_SWIRL_RANGE 75
-#define RGBLIGHT_EFFECT_SNAKE
-#undef RGBLIGHT_EFFECT_SNAKE_LENGTH
-#define RGBLIGHT_EFFECT_SNAKE_LENGTH 20
-#define RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_KNIGHT_LENGTH
-#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 20
-
-// #define RGBLIGHT_EFFECT_CHRISTMAS
-// #define RGBLIGHT_EFFECT_STATIC_GRADIENT
-// #define RGBLIGHT_EFFECT_RGB_TEST
-// #define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLIGHT_EFFECT_TWINKLE_PROBABILITY 1 / 127
diff --git a/keyboards/handwired/brain/keymaps/klackygears/keymap.c b/keyboards/handwired/brain/keymaps/klackygears/keymap.c
deleted file mode 100644
index 07185446db..0000000000
--- a/keyboards/handwired/brain/keymaps/klackygears/keymap.c
+++ /dev/null
@@ -1,99 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "klackygears.h"
-
-//For an explanation of what's going on here with the keymap wrappers, check out drashna's user folder.
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_WINBASE] = LAYOUT_wrapper(
- _______________DVORAK_L1___________________, KC_ESC, KC_GAMER, _______________DVORAK_R1___________________,
- RGB_TOG, _______________DVORAK_L2___________________, _______, KC_GAMR1, _______________DVORAK_R2___________________, RGB_TOG,
- RGB_MOD, _______________WINDVK_L3___________________, _______, KC_GAMR2, _______________WINDVK_R3___________________, RGB_MOD,
- _______, _______, __________________WIN_THUMB_CLUSTER_V2______________ , _______, _______,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- ),
-
- [_MACBASE] = LAYOUT_wrapper(
- _______________DVORAK_L1___________________, KC_ESC, _______, _______________DVORAK_R1___________________,
- RGB_TOG, _______________DVORAK_L2___________________, _______, _______, _______________DVORAK_R2___________________, RGB_TOG,
- RGB_MOD, _______________MACDVK_L3___________________, _______, _______, _______________MACDVK_R3___________________, RGB_MOD,
- _______, _______, __________________MAC_THUMB_CLUSTER_V2______________ , _______, _______,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- ),
-
-
- [_QWERTY] = LAYOUT_wrapper(
- _________________QWERTY_L1_________________, KC_ESC, _______, _________________QWERTY_R1_________________,
- KC_CAPS, _________________QWERTY_L2_________________, _______, _______, _________________QWERTY_R2_________________, KC_ENT,
- KC_LSFT, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, KC_RSFT,
- KC_LCTL, KC_LALT, KC_LGUI, MO(_MNMB), MO(_SYMB), MO(_SYMB), MO(_MNMB), KC_RGUI, MO(_MDIA), MO(_FUNC),
- KC_LSFT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RSFT
- ),
- //Jedi - Fallen Order
- [_GAMER] = LAYOUT_wrapper(
- KC_R, KC_Q, KC_W, KC_E, KC_1, KC_ESC, KC_WINBASE, _________________RGB_1_____________________,
- KC_TAB, KC_F, KC_A, KC_S, KC_D, KC_2, LSFT(KC_F2), KC_GAMR1, _________________RGB_2_____________________, RGB_TOG,
- KC_TAB, KC_TAB, KC_X, KC_Z, KC_C, KC_3, KC_M, KC_GAMR2, _________________MEDIA_____________________, RGB_MOD,
- KC_LCTL, KC_LALT, KC_LCTL, KC_LSFT, KC_SPC, _______, KC_UP, _______, _______, _______,
- KC_NO, KC_LSFT, KC_LSFT, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- //Borderlands
- [_GAMR1] = LAYOUT_wrapper(
- KC_R, KC_G, KC_W, KC_E, KC_1, KC_ESC, KC_WINBASE, _________________RGB_1_____________________,
- KC_TAB, KC_V, KC_A, KC_S, KC_D, KC_2, KC_L, KC_GAMR1, _________________RGB_2_____________________, RGB_TOG,
- KC_T, KC_I, KC_F, KC_Q, KC_4, KC_3, KC_M, KC_GAMR2, _________________MEDIA_____________________, RGB_MOD,
- KC_X, KC_K, KC_C, KC_LSFT, KC_SPC, _______, KC_UP, _______, _______, _______,
- KC_Z, KC_LSFT, KC_LSFT, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- //Witcher
- [_GAMR2] = LAYOUT_wrapper(
- KC_R, KC_Q, KC_W, KC_E, KC_1, KC_ESC, KC_WINBASE, _________________RGB_1_____________________,
- KC_TAB, KC_LALT, KC_A, KC_S, KC_D, KC_2, KC_J, KC_GAMR1, _________________RGB_2_____________________, RGB_TOG,
- KC_X, KC_I, KC_F, KC_C, KC_V, KC_3, KC_M, KC_GAMR2, _________________MEDIA_____________________, RGB_MOD,
- KC_LCTL, KC_V, KC_HOME, KC_LSFT, KC_SPC, _______, KC_UP, _______, _______, _______,
- KC_ENT, KC_LCTL, KC_LSFT, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
- [_SYMB] = LAYOUT_wrapper(
- _________________PUNC_L1_ALT_______________, _______, _______, _________________PUNC_R1___________________,
- _______, _________________PUNC_L3___________________, _______, _______, _________________PUNC_R2___________________, _______,
- RGB_MOD, _________________PUNC_L3_ALT_______________, _______, _______, _________________PUNC_R3___________________, _______,
- _______, _______, _______, _______, KC_DEL, KC_CAPS, _______, _______, _______, _______,
- _______, _______, KC_DEL, KC_CAPS, _______, _______
- ),
-
- [_FUNC] = LAYOUT_wrapper(
- _____________FUNC_L1_______________________, _______, _______, _______, _____________FUNC_1_______________,
- _______, ________MAC_MISSION_CTRL__________, LGUI(KC_L), _______, _______, _______, _____________FUNC_2_______________, _______,
- RGB_MOD, _____________FUNC_L3_______________________, _______, _______, _______, _____________FUNC_3_______________, _______,
- _______, _______, _______, _______, _______, KC_CAPS, _______, _______, _______, _______,
- _______, _______, _______, KC_CAPS, _______, _______
- ),
-
- [_MNMB] = LAYOUT_wrapper(
- _________________MACNAV_L1_________________, _______, _______, _________________NUMB_R1___________________,
- _______, _________________MACNAV_L2_________________, _______, _______, _________________NUMB_R2___________________, _______,
- RGB_MOD, _________________MACNAV_L3_________________, _______, _______, _________________NUMB_R3_MAC_______________, _______,
- _______, _______, _______, _______, _______, _______, RSFT_T(KC_ENT), KC_RSFT, _______, _______,
- _______, _______, _______, _______, RSFT_T(KC_ENT), KC_RSFT
- ),
-
-
- [_NUMB] = LAYOUT_wrapper(
- _________________WINNAV_L1_________________, _______, _______, _________________NUMB_R1___________________,
- _______, _________________WINNAV_L2_________________, _______, _______, _________________NUMB_R2___________________, _______,
- RGB_MOD, _________________WINNAV_L3_________________, _______, _______, _________________NUMB_R3_WIN_______________, _______,
- _______, _______, _______, _______, _______, _______, RSFT_T(KC_ENT), KC_RSFT, _______, _______,
- _______, _______, _______, _______, RSFT_T(KC_ENT), KC_RSFT
- ),
-
- [_MDIA] = LAYOUT_wrapper(
- _________________LYOUT_____________________, _______, RGB_TOG, _________________RGB_1_____________________,
- _______, _________________KC_BLANK__________________, _______, _______, _________________RGB_2_____________________, _______,
- RGB_MOD, _________________KC_BLANK__________________, _______, _______, _________________MEDIA_____________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- )
-
- };
diff --git a/keyboards/handwired/brain/keymaps/klackygears/rules.mk b/keyboards/handwired/brain/keymaps/klackygears/rules.mk
deleted file mode 100644
index 26c9daf6ad..0000000000
--- a/keyboards/handwired/brain/keymaps/klackygears/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-
-RGBLIGHT_ENABLE = yes #Enable WS2812 RGB underlight.
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/co60/rev7/config.h b/keyboards/handwired/co60/rev7/config.h
index 7e50f570ed..b6b7cecec2 100644
--- a/keyboards/handwired/co60/rev7/config.h
+++ b/keyboards/handwired/co60/rev7/config.h
@@ -23,5 +23,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_RESYNC_ENABLE
/* RGB underglow configuration */
-#define WS2812_SPI SPID1
+#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5
diff --git a/keyboards/handwired/d48/keymaps/anderson/keymap.c b/keyboards/handwired/d48/keymaps/anderson/keymap.c
deleted file mode 100644
index 5ae92d2360..0000000000
--- a/keyboards/handwired/d48/keymaps/anderson/keymap.c
+++ /dev/null
@@ -1,342 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "taphold.h"
-#include "seq.h"
-#include "ds1307.h"
-#include "lightmode.h"
-#include <stdio.h>
-
-/* Note: don't forget there's some more code in qmk_firmware/users/anderson dir */
-
-#define _MAIN 0
-#define _ALPHA 1
-#define _BETA 2
-
-enum custom_keycodes {
- KC_MAIN = SAFE_RANGE,
- KC_ALPHA,
- KC_BETA,
-#ifdef LIGHTMODE_ENABLE
- KC_LIGHT_MODE,
-#endif
- KC_SEQ,
- KC_SET_TIME,
-};
-#ifdef LIGHTMODE_ENABLE
-#endif
-
-/* TapHold is my own implementation of the `LT` macro. It's processed in `process_record_user()`. */
-#define TAPHOLD_CONFIG_SIZE 3
-taphold_t taphold_config[TAPHOLD_CONFIG_SIZE] = {
- {.key=KC_ALPHA, .mode=TAPHOLD_LAYER, .shortAction=KC_ESC, .longAction=_ALPHA},
- {.key=KC_BETA, .mode=TAPHOLD_LAYER, .shortAction=KC_EQL, .longAction=_BETA},
- {.key=KC_RCTL, .mode=TAPHOLD_MOD, .shortAction=KC_MINS, .longAction=KC_LCTL},
-};
-uint16_t taphold_config_size = TAPHOLD_CONFIG_SIZE;
-uint32_t taphold_timeout = 90;
-
-/* Seq is implementation of unicode macros similar to UCIS, but with unicode strings. */
-#define SEQ_CONFIG_SIZE 3
-seq_t seq_config[SEQ_CONFIG_SIZE] = {
- {.sequence="temp", .result="42°C"},
- {.sequence="table", .result="┳━━┳"},
- {.sequence="shrug", .result="¯\\_(ツ)_/¯"}
-};
-uint16_t seq_config_size = SEQ_CONFIG_SIZE;
-
-/* Colors */
-uint32_t layer_colors[3] = {
- [_MAIN] = 0xFF0010,
- [_ALPHA] = 0x4020FF,
- [_BETA] = 0x20FF00,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Main layer
- │MUTE │ │L_MOD│
- ┏━━━━━┳━━━━━┯━━━━━┯━━━━━┯━━━━━┯━━━━━┳━━━━━┯━━━━━┯━━━━━┯━━━━━┯━━━━━┳━━━━━┓
- ┃ TAB ┃ Q │ W │ E │ R │ T ┃ Y │ U │ I │ O │ P ┃ BSP ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃𝛼/ESC┃ A │ S │ D │ F │ G ┃ H │ J │ K │ L │ ; ┃ RET ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃SHIFT┃ Z │ X │ C │ V │ B ┃ N │ M │ , │ . │ / ┃CTL/-┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃LCTRL┃ │ │ ALT │ GUI │SPACE┃SPACE│ 𝛽/= │ ' │ │ ┃ \ ┃
- ┗━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┛
- */
- [_MAIN] = LAYOUT(
- KC_MUTE, LCTL(KC_D),
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ALPHA,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RCTL,
- KC_LCTL, _______, _______, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_BETA, KC_QUOT, _______, _______, KC_BSLS
- ),
-
- /* Alpha layer (𝛼)
- │ │ │ │
- ┏━━━━━┳━━━━━┯━━━━━┯━━━━━┯━━━━━┯━━━━━┳━━━━━┯━━━━━┯━━━━━┯━━━━━┯━━━━━┳━━━━━┓
- ┃ ┃PREV │PLAY │NEXT │ │NUMLK┃ - │ ^^^ │ ^ │ vvv │ ~ ┃ DEL ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃ ┃ │VOL -│VOL +│ │CPSLK┃HOME │ <-- │ v │ --> │ ` ┃ \ ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃ ┃ │ │ │ │SCRLK┃ END │ = │ [ │ ] │ ( ┃ ) ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃ ┃ │ │ │ │ ┃ │ │ │ │ ┃ ┃
- ┗━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┛
- */
- [_ALPHA] = LAYOUT(
- _______, _______,
- _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_NUM, KC_MINS, KC_PGUP, KC_UP, KC_PGDN, KC_TILD, KC_DEL,
- _______, _______, KC_VOLD, KC_VOLU, _______, KC_CAPS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT,KC_GRV, KC_BSLS,
- _______, _______, _______, _______, _______, KC_SCRL, KC_END, KC_EQL, KC_LBRC, KC_RBRC, KC_LPRN ,KC_RPRN,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- /* Beta layer (𝛽)
- │ │ │ │
- ┏━━━━━┳━━━━━┯━━━━━┯━━━━━┯━━━━━┯━━━━━┳━━━━━┯━━━━━┯━━━━━┯━━━━━┯━━━━━┳━━━━━┓
- ┃ RGB ┃ 1 │ 2 │ 3 │ 4 │ 5 ┃ 6 │ 7 │ 8 │ 9 │ 0 ┃ F12 ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃L_MOD┃ F1 │ F2 │ F3 │ F4 │ F5 ┃ F6 │ F7 │ F8 │ F9 │ F10 ┃ F11 ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃ ┃Boot │Debug│ │ │TIME ┃SLEEP│ SEQ │ { │ } │PTSCR┃ ┃
- ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫
- ┃ ┃ │ │ │ │ ┃ │ │ │ │ ┃ ┃
- ┗━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┛
- */
- [_BETA] = LAYOUT(
- _______, _______,
- RGB_TOG, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F12,
-#ifdef LIGHTMODE_ENABLE
- KC_LIGHT_MODE,
-#else
- _______,
-#endif
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, QK_BOOT, DB_TOGG, _______, _______, KC_SET_TIME,KC_SLEP,KC_SEQ,KC_LCBR, KC_RCBR, KC_PSCR, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
-
-static bool alpha_pressed = false;
-static bool beta_pressed = false;
-
-static bool ctrl_pressed = false;
-static bool alt_pressed = false;
-static bool shift_pressed = false;
-static bool gui_pressed = false;
-
-static bool is_in_seq = false;
-
-void keyboard_post_init_user(void) {
- /* debug_enable = true; */
- /* debug_matrix = true; */
-}
-
-void eeconfig_init_user(void) {
- set_unicode_input_mode(UNICODE_MODE_LINUX);
-}
-
-void matrix_init_user(void) {
-#ifdef LIGHTMODE_ENABLE
- set_light_mode(SMOOTHLED, layer_colors[_MAIN]);
-#endif
-}
-
-static uint32_t last_update = 0;
-static uint8_t hours, minutes, seconds;
-
-void matrix_scan_user(void) {
- uint32_t now = timer_read32();
- if (now - last_update > 500) {
- ds1307_get_time(&hours, &minutes, &seconds);
- last_update = now;
- }
-}
-
-static bool is_in_set_time = false;
-static char new_time[6];
-static uint8_t new_time_index = 0;
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (keycode == KC_SEQ && record->event.pressed) {
- seq_start();
- layer_off(_BETA);
- is_in_seq = true;
- return false;
- } else if (is_in_seq) {
- if (record->event.pressed) {
- if (!seq_feed(keycode)) {
- is_in_seq = false;
- }
- }
- return false;
- }
- if (keycode == KC_SET_TIME && record->event.pressed) {
- is_in_set_time = true;
- new_time_index = 0;
- } else if (is_in_set_time) {
- if (!record->event.pressed && keycode >= KC_1 && keycode <= KC_0) {
- new_time[new_time_index++] = (keycode == KC_0) ? 0 : keycode - KC_1 + 1;
- if (new_time_index == 6) {
- is_in_set_time = false;
- ds1307_set_time(
- (new_time[0]) * 10 + (new_time[1]),
- (new_time[2]) * 10 + (new_time[3]),
- (new_time[4]) * 10 + (new_time[5])
- );
- for (int i = 0; i < 6; i++) {
- tap_code(KC_BACKSPACE);
- }
- }
- }
- }
-
- if (keycode == KC_LCTL || keycode == KC_RCTL) {
- ctrl_pressed = record->event.pressed;
- } else if (keycode == KC_LALT) {
- alt_pressed = record->event.pressed;
- } else if (keycode == KC_LSFT) {
- shift_pressed = record->event.pressed;
- } else if (keycode == KC_LGUI) {
- gui_pressed = record->event.pressed;
- } else if (keycode == KC_ALPHA) {
- alpha_pressed = record->event.pressed;
- } else if (keycode == KC_BETA) {
- beta_pressed = record->event.pressed;
- }
-
- if (keycode == QK_BOOT) {
- rgblight_setrgb(255, 255, 0);
- }
-#ifdef LIGHTMODE_ENABLE
- if (record->event.pressed && keycode == KC_LIGHT_MODE) {
- next_light_mode(layer_colors[_MAIN]);
- }
-#endif
- if (keycode == KC_LCTL) {
- /* Some Overlay1_Enable fuckery! */
- (record->event.pressed ? register_code : unregister_code)(KC_LCTL);
- return false;
- }
- return taphold_process(keycode, record);
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-#ifdef LIGHTMODE_ENABLE
- uint8_t layer = get_highest_layer(state);
- update_light_mode(layer_colors[layer]);
-#endif
- return state;
-}
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- if (!alpha_pressed) {
- tap_code(clockwise ? KC_VOLD : KC_VOLU);
- } else {
- tap_code(clockwise ? KC_MPRV : KC_MNXT);
- }
- } else if (index == 1) {
- if (!alpha_pressed) {
- tap_code(clockwise ? KC_UP : KC_DOWN);
- } else {
- tap_code(clockwise ? KC_PGUP : KC_PGDN);
- }
- }
- return true;
-}
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_0;
-}
-
-bool oled_task_user(void) {
- /* Host Keyboard Layer Status */
- uint8_t current_layer = get_highest_layer(layer_state);
-
- /* Layer */
- static const char PROGMEM icons[4][3][6] = {
- {
- { 0x80, 0x81, 0x82, 0x83, 0x84, 0 },
- { 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0 },
- { 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0 }
- },
- {
- { 0x85, 0x86, 0x87, 0x88, 0x89, 0 },
- { 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0 },
- { 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0 }
- },
- {
- { 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0 },
- { 0xaa, 0xab, 0xac, 0xad, 0xae, 0 },
- { 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0 }
- },
- {
- { 0x8f, 0x90, 0x91, 0x92, 0x93, 0 },
- { 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0 },
- { 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0 }
- }
- };
-
- uint8_t icon_index = current_layer == _MAIN ? 3 : current_layer == _ALPHA ? 1 : 2;
- for (int i = 0; i < 3; i++) {
- oled_set_cursor(0, i + 1);
- oled_write_P(icons[icon_index][i], false);
- }
-
- /* Time */
- oled_set_cursor(6, 0);
- // oled_write_P(PSTR("-D48 Custom-\n"), false);
- char buf[16];
- sprintf(
- buf,
- "%02d:%02d:%02d", hours, minutes, seconds
- );
- oled_write(buf, false);
-
- /* Modifiers */
- static const char PROGMEM mods[][2] = {
- {0x94, 0x95}, // CTL
- {0x96, 0x97}, // ALT
- {0x98, 0x99}, // GUI
- {0x9a, 0x9b}, // SFT
- /* {0x9c, 0x9d}, // EMPTY */
- };
-
- char mod_data[13] = "\x9c\x9d\x9c\x9d\x9c\x9d\x9c\x9d \x07\x07\x07\0";
- if (ctrl_pressed) strncpy(mod_data, mods[0], 2);
- if (alt_pressed) strncpy(mod_data + 2, mods[1], 2);
- if (gui_pressed) strncpy(mod_data + 4, mods[2], 2);
- if (shift_pressed) strncpy(mod_data + 6, mods[3], 2);
- led_t led_usb_state = host_keyboard_led_state();
- if (led_usb_state.num_lock) mod_data[9] = 'N';
- if (led_usb_state.caps_lock) mod_data[10] = 'C';
- if (led_usb_state.scroll_lock) mod_data[11] = 'S';
-
- oled_set_cursor(6, 1);
- oled_write(mod_data, false);
-
- /* Matrix */
- static const char PROGMEM matrix_chars[] = {
- 0xb4, // None
- 0xb5, // Upper
- 0xb6, // Lower
- 0xb7 // Both
- };
-
- for (uint8_t row = 1; row < MATRIX_ROWS; row += 2) {
- // Skip first row because it's used by the encoders.
- uint16_t bits1 = matrix_get_row(row);
- uint16_t bits2 = matrix_get_row(row + 1);
-
- for (uint8_t col = 0; col < MATRIX_COLS; col++) {
- uint8_t matrix_char = matrix_chars[((bits1 & (1 << col)) ? 1 : 0) | ((bits2 & (1 << col)) ? 2 : 0)];
- oled_set_cursor(6 + col, 2 + (row - 1) / 2);
- oled_write_char(matrix_char, false);
- }
- }
-
- return false;
-}
-#endif
diff --git a/keyboards/handwired/d48/keymaps/anderson/lightmode.c b/keyboards/handwired/d48/keymaps/anderson/lightmode.c
deleted file mode 100644
index bc05956214..0000000000
--- a/keyboards/handwired/d48/keymaps/anderson/lightmode.c
+++ /dev/null
@@ -1,44 +0,0 @@
-#include "lightmode.h"
-
-#ifdef LIGHTMODE_ENABLE
-
-/* Light modes switcher */
-
-uint8_t light_mode = SMOOTHLED;
-
-void set_light_mode(light_mode_t value, uint32_t color) {
- light_mode = value;
- if (light_mode == SMOOTHLED) {
- smoothled_set(color);
- } else {
- dmc12_start(color, true);
- }
-}
-
-void process_light_mode(void) {
- if (light_mode == SMOOTHLED) {
- smoothled_process();
- } else {
- dmc12_process();
- }
-}
-
-void update_light_mode(uint32_t color) {
- if (light_mode == SMOOTHLED) {
- smoothled_set(color);
- } else {
- dmc12_start(color, false);
- }
-}
-
-void next_light_mode(uint32_t color) {
- light_mode = (light_mode + 1) % LIGHT_MODE_SIZE;
- set_light_mode(light_mode, color);
-}
-
-void matrix_scan_kb(void) {
- process_light_mode();
- matrix_scan_user();
-}
-
-#endif
diff --git a/keyboards/handwired/d48/keymaps/anderson/lightmode.h b/keyboards/handwired/d48/keymaps/anderson/lightmode.h
deleted file mode 100644
index 0c81e476bb..0000000000
--- a/keyboards/handwired/d48/keymaps/anderson/lightmode.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#include "smoothled.h"
-#include "dmc12.h"
-#include "quantum.h"
-
-/* Light modes */
-enum light_mode_enum { SMOOTHLED, DMC12, LIGHT_MODE_SIZE };
-typedef enum light_mode_enum light_mode_t;
-
-void set_light_mode(light_mode_t value, uint32_t color);
-void process_light_mode(void);
-void update_light_mode(uint32_t color);
-void next_light_mode(uint32_t color);
diff --git a/keyboards/handwired/d48/keymaps/anderson/rules.mk b/keyboards/handwired/d48/keymaps/anderson/rules.mk
deleted file mode 100644
index e925b9a89f..0000000000
--- a/keyboards/handwired/d48/keymaps/anderson/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-OPT_DEFS += -DLIGHTMODE_ENABLE
-SRC += smoothled.c dmc12.c seq.c lightmode.c
diff --git a/keyboards/handwired/dactyl/rules.mk b/keyboards/handwired/dactyl/rules.mk
index 830812f79a..bffd901b04 100644
--- a/keyboards/handwired/dactyl/rules.mk
+++ b/keyboards/handwired/dactyl/rules.mk
@@ -14,5 +14,5 @@ SWAP_HANDS_ENABLE = yes # Allow swapping hands of keyboard
RGBLIGHT_ENABLE = no
# project specific files
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
SRC += matrix.c
diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/config.h b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/config.h
deleted file mode 100644
index a597d848e2..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/config.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/keymap.c b/keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/keymap.c
deleted file mode 100644
index 9d613042c9..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/ibnuda/keymap.c
+++ /dev/null
@@ -1,60 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#include "ibnuda.h"
-
-#define TAB KC_TAB
-#define GUI KC_LGUI
-#define MIN KC_MINS
-#define SLS KC_SLSH
-#define CTL KC_LCTL
-#define DEL KC_DEL
-#define QUE KC_QUES
-#define ___ KC_NO
-
-// clang-format off
-#define LAYOUT_dm_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
- KTA, KTB, KTC, KTD, KTE, KTF \
- ) \
- LAYOUT_wrapper( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
- TAB, KTA, KTF, SLS, \
- KTB, KTC, KTD, KTE, \
- CTL, DEL, QUE, CTL, \
- ___, ___, ___, ___ \
- )
-
-#define LAYOUT_dm_base_wrapper(...) LAYOUT_dm_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_BASE] = LAYOUT_dm_base_wrapper(
- LUP, LUR, LUM, LUI, LUII, RUII, RUI, RUM, RUR, RUP,
- SHLP, CTLR, ALLM, LMI, GULII, GURII, RMI, ALRM, CTRR, SHRP,
- LLP, LLR, LLM, LLI, LLII, RLII, RLI, RLM, RLR, RLP,
- CT_ESC, LW_E, SF_BSPC, AL_ENT, RS_SPC, TRAISE
-),
-
-[_RAISE] = LAYOUT_dm_base_wrapper(
- KC_EXLM,KC_AT, KC_UP, KC_LCBR,KC_RCBR, KC_BSLS,KC_7, KC_8, KC_9, KC_ASTR ,
- KC_HASH,CT_LEFT,AL_DOWN,KC_RGHT,KC_DLR, GU_EQL, KC_4, AL_FIVE,CT_SIX, SH_ZERO ,
- KC_LBRC,KC_RBRC,KC_LPRN,KC_RPRN,KC_AMPR, KC_GRV, KC_1, KC_2, KC_3, KC_PLUS ,
- _______,ADDDD ,_______, _______,RS_SPC, _______
-),
-[_LOWER] = LAYOUT_dm_base_wrapper(
- KC_ESC, KC_QUES,KC_UNDS,KC_F1, KC_F2, KC_F3, KC_F4, KC_MINS,KC_SLSH,KC_BSPC ,
- KC_LSFT,KC_PSCR,KC_PGUP,KC_F5, KC_F6, KC_F7, KC_F8, KC_HOME,KC_LALT,KC_ENT ,
- KC_CAPS,KC_SCRL,KC_PGDN,KC_F9, KC_F10, KC_F11, KC_F12, KC_END, KC_INS, KC_SLSH ,
- _______,_______,_______, _______,ADDDD, _______
-),
-[_ADJUST] = LAYOUT_dm_base_wrapper(
- _______,EXPLR, KC_UP, PRVTAB, PRVWIN, NXTWIN, NXTTAB, _______,_______,LCKGUI,
- TSKMGR, KC_LEFT,KC_DOWN,KC_RGHT,UPTAB, DNTAB, KC_ENT, KC_LGUI,_______,CALDL,
- _______,CLSGUI, _______,CONPST, QK_BOOT, _______,_______,_______,_______,_______,
- _______,_______,_______, _______,_______,_______
-),};
-// clang-format on
-
diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/config.h b/keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 3860a696c8..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- XXX, XXX, XXX, XXX, \
- K32, K33, K36, K37, \
- K34, XXX, XXX, K35, \
- XXX, XXX, XXX, XXX \
-)
diff --git a/keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x5/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/config.h b/keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index f50033a046..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
- XXX, XXX, XXX, XXX, \
- K32, K33, K36, K37, \
- K34, XXX, XXX, K35, \
- XXX, XXX, XXX, XXX \
-)
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/README.md b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/README.md
deleted file mode 100644
index b7f7cbf938..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-#### compile with
-
-`make handwired/dactyl_manuform/4x6:scheikled`
-
-
-#### flash with
-
-`qmk flash -kb handwired/dactyl_manuform/4x6 -km scheikled`
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/config.h b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/config.h
deleted file mode 100644
index a68c21b215..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/config.h
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-
-#pragma once
-
-#define USE_I2C
-
-#define SPLIT_HAND_PIN F6
-
-// WS2812 RGB LED strip input and number of LEDs
-#undef WS2812_DI_PIN
-#undef RGBLED_NUM
-#define WS2812_DI_PIN F4
-#define RGBLED_NUM 52
-#define RGBLED_SPLIT {26, 26}
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_SNAKE
-
-// Amoeba royale PCBs (https://github.com/mtl/keyboard-pcbs/tree/master/amoeba-royale) use row to column layout (current can flow from row pin to column pin).
-#undef DIODE_DIRECTION
-#define DIODE_DIRECTION ROW2COL
-
-#define DEBOUNCE 5
-
-#define AUTO_SHIFT_TIMEOUT 100
-#define NO_AUTO_SHIFT_SPECIAL
-#define NO_AUTO_SHIFT_NUMERIC
-
-// require two taps for a TT layer switch (default 5)
-#define TAPPING_TOGGLE 2
-
-// Mouse control
-// constant mode (velocity)
-#define MK_3_SPEED
-// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
-
-// Cursor offset per movement (unmodified)
-#define MK_C_OFFSET_UNMOD 16
-// Time between cursor movements (unmodified)
-#define MK_C_INTERVAL_UNMOD 10
-/* #define MK_C_INTERVAL_UNMOD 16 */
-
-// Cursor offset per movement (KC_ACL0)
-#define MK_C_OFFSET_0 1
-// Time between cursor movements (KC_ACL0)
-#define MK_C_INTERVAL_0 32
-
-// Cursor offset per movement (KC_ACL1)
-#define MK_C_OFFSET_1 4
-// Time between cursor movements (KC_ACL1)
-#define MK_C_INTERVAL_1 16
-
-// Cursor offset per movement (KC_ACL2)
-#define MK_C_OFFSET_2 20
-/* #define MK_C_OFFSET_2 32 */
-// Time between cursor movements (KC_ACL2)
-#define MK_C_INTERVAL_2 16
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/keymap.c b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/keymap.c
deleted file mode 100644
index 24f6b35f57..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/keymap.c
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-/* A K.O,Y layout for the Dactyl Manuform 4x6 Keyboard */
-
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-
-enum custom_layers {
- _1,
- _3,
- _4,
- _7,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_1] = LAYOUT(
- KC_TAB , KC_K , KC_DOT , KC_O , KC_COMM , N_Y , KC_V , KC_G , KC_C , KC_L , N_SS , N_Z ,
- MO(_3) , KC_H , KC_A , KC_E , KC_I , KC_U , KC_D , KC_T , KC_R , KC_N , KC_S , KC_F ,
- KC_LSFT , KC_X , KC_Q , N_AE , N_UE , N_OE , KC_B , KC_P , KC_W , KC_M , KC_J , KC_RSFT ,
- KC_LCTL , KC_LGUI , KC_CAPS , TT(_7) ,
- KC_LALT , KC_SPC , MO(_3) , MO(_4) ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
- ),
-
- [_3] = LAYOUT(
-
- KC_TAB , N_DOTS , N_USC , N_LSQBR , N_RSQBR , N_CIRC , N_EXKL , N_LT , N_GT , N_EQ , N_AMP , N_ACUT ,
- KC_TRNS , N_BSLS , N_SLSH , N_LCUBR , N_RCUBR , N_ASTR , N_QUES , N_LPARN , N_RPARN , N_MINS , N_COLN , N_AT ,
- KC_LSFT , N_HASH , N_DLR , N_PIPE , N_TILD , N_GRAVE , N_PLUS , N_PERC , N_QUOT , N_SING , N_SEMI , KC_RSFT ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_LALT , KC_SPC , KC_TRNS , KC_TRNS ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
-
- ),
-
- [_4] = LAYOUT(
-
- KC_TAB , KC_PGUP , KC_BSPC , KC_UP , KC_DEL , KC_PGDN , KC_KP_SLASH , KC_7 , KC_8 , KC_9 , KC_KP_MINUS , KC_TRNS ,
- KC_TRNS , KC_HOME , KC_LEFT , KC_DOWN , KC_RIGHT , KC_END , KC_KP_ASTERISK , KC_4 , KC_5 , KC_6 , KC_KP_PLUS , KC_TRNS ,
- KC_LSFT , KC_ESC , KC_TAB , KC_INS , KC_ENTER , N_UNDO , KC_KP_ENTER , KC_1 , KC_2 , KC_3 , KC_KP_DOT , KC_RSFT ,
- KC_TRNS , KC_TRNS , KC_0 , KC_TRNS ,
- KC_LALT , KC_0 , KC_TRNS , KC_TRNS ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
-
- ),
-
- [_7] = LAYOUT(
-
- KC_TAB , KC_MS_WH_UP , KC_MS_BTN2 , KC_MS_UP , KC_MS_BTN1 , KC_MS_WH_DOWN , KC_TRNS , KC_F7 , KC_F8 , KC_F9 , RGB_HUI , QK_BOOT ,
- KC_TRNS , KC_MS_ACCEL0 , KC_MS_LEFT , KC_MS_DOWN , KC_MS_RIGHT , KC_TRNS , KC_TRNS , KC_F4 , KC_F5 , KC_F6 , RGB_SAI , RGB_TOG ,
- KC_LSFT , KC_MS_ACCEL1 , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_F1 , KC_F2 , KC_F3 , RGB_VAI , RGB_MODE_FORWARD ,
- KC_TRNS , KC_PSCR , KC_F10 , KC_TRNS ,
- KC_LALT , KC_F10 , KC_TRNS , KC_TRNS ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
-
- ),
-};
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/rules.mk b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/rules.mk
deleted file mode 100644
index 53ce5a3190..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheikled/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-BOOTLOADER = atmel-dfu
-AUTO_SHIFT_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-NKRO_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-DEBOUNCE_TYPE = asym_eager_defer_pk
-USER_NAME := scheiklp
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/README.md b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/README.md
deleted file mode 100644
index 18c4d8e78d..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-#### compile with
-
-`make handwired/dactyl_manuform/4x6:scheiklp`
-
-
-#### flash with
-
-`qmk flash -kb handwired/dactyl_manuform/4x6 -km scheiklp`
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/config.h b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/config.h
deleted file mode 100644
index 2db9052799..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/config.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-
-#define USE_I2C
-#define SPLIT_HAND_PIN F6
-
-#undef WS2812_DI_PIN
-#undef RGBLED_NUM
-
-#define DEBOUNCE 5
-
-#define AUTO_SHIFT_TIMEOUT 100
-#define NO_AUTO_SHIFT_SPECIAL
-#define NO_AUTO_SHIFT_NUMERIC
-
-// require two taps for a TT layer switch (default 5)
-#define TAPPING_TOGGLE 2
-
-// Mouse control
-// constant mode (velocity)
-#define MK_3_SPEED
-// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
-
-// Cursor offset per movement (unmodified)
-#define MK_C_OFFSET_UNMOD 16
-// Time between cursor movements (unmodified)
-#define MK_C_INTERVAL_UNMOD 10
-/* #define MK_C_INTERVAL_UNMOD 16 */
-
-// Cursor offset per movement (KC_ACL0)
-#define MK_C_OFFSET_0 1
-// Time between cursor movements (KC_ACL0)
-#define MK_C_INTERVAL_0 32
-
-// Cursor offset per movement (KC_ACL1)
-#define MK_C_OFFSET_1 4
-// Time between cursor movements (KC_ACL1)
-#define MK_C_INTERVAL_1 16
-
-// Cursor offset per movement (KC_ACL2)
-#define MK_C_OFFSET_2 20
-/* #define MK_C_OFFSET_2 32 */
-// Time between cursor movements (KC_ACL2)
-#define MK_C_INTERVAL_2 16
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/keymap.c b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/keymap.c
deleted file mode 100644
index 86a34c4f04..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/keymap.c
+++ /dev/null
@@ -1,64 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-/* A K.O,Y layout for the Dactyl Manuform 4x6 Keyboard */
-
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-
-enum custom_layers {
- _1,
- _3,
- _4,
- _7,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_1] = LAYOUT(
- KC_TAB , KC_K , KC_DOT , KC_O , KC_COMM , N_Y , KC_V , KC_G , KC_C , KC_L , N_SS , N_Z ,
- MO(_3) , KC_H , KC_A , KC_E , KC_I , KC_U , KC_D , KC_T , KC_R , KC_N , KC_S , KC_F ,
- KC_LSFT , KC_X , KC_Q , N_AE , N_UE , N_OE , KC_B , KC_P , KC_W , KC_M , KC_J , KC_RSFT ,
- KC_LCTL , KC_LGUI , KC_CAPS , TT(_7) ,
- KC_LALT , KC_SPC , MO(_3) , MO(_4) ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
- ),
-
- [_3] = LAYOUT(
-
- KC_TAB , N_DOTS , N_USC , N_LSQBR , N_RSQBR , N_CIRC , N_EXKL , N_LT , N_GT , N_EQ , N_AMP , N_ACUT ,
- KC_TRNS , N_BSLS , N_SLSH , N_LCUBR , N_RCUBR , N_ASTR , N_QUES , N_LPARN , N_RPARN , N_MINS , N_COLN , N_AT ,
- KC_LSFT , N_HASH , N_DLR , N_PIPE , N_TILD , N_GRAVE , N_PLUS , N_PERC , N_QUOT , N_SING , N_SEMI , KC_RSFT ,
- KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
- KC_LALT , KC_SPC , KC_TRNS , KC_TRNS ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
-
- ),
-
- [_4] = LAYOUT(
-
- KC_TAB , KC_PGUP , KC_BSPC , KC_UP , KC_DEL , KC_PGDN , KC_KP_SLASH , KC_7 , KC_8 , KC_9 , KC_KP_MINUS , KC_TRNS ,
- KC_TRNS , KC_HOME , KC_LEFT , KC_DOWN , KC_RIGHT , KC_END , KC_KP_ASTERISK , KC_4 , KC_5 , KC_6 , KC_KP_PLUS , KC_TRNS ,
- KC_LSFT , KC_ESC , KC_TAB , KC_INS , KC_ENTER , N_UNDO , KC_KP_ENTER , KC_1 , KC_2 , KC_3 , KC_KP_DOT , KC_RSFT ,
- KC_TRNS , KC_TRNS , KC_0 , KC_TRNS ,
- KC_LALT , KC_0 , KC_TRNS , KC_TRNS ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
-
- ),
-
- [_7] = LAYOUT(
-
- KC_TAB , KC_MS_WH_UP , KC_MS_BTN2 , KC_MS_UP , KC_MS_BTN1 , KC_MS_WH_DOWN , KC_TRNS , KC_F7 , KC_F8 , KC_F9 , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_MS_ACCEL0 , KC_MS_LEFT , KC_MS_DOWN , KC_MS_RIGHT , KC_TRNS , KC_TRNS , KC_F4 , KC_F5 , KC_F6 , KC_TRNS , KC_TRNS ,
- KC_LSFT , KC_MS_ACCEL1 , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_F1 , KC_F2 , KC_F3 , KC_TRNS , KC_TRNS ,
- KC_TRNS , KC_PSCR , KC_F10 , KC_TRNS ,
- KC_LALT , KC_F10 , KC_TRNS , KC_TRNS ,
- N_COPY , N_CUT , KC_ESC , KC_ENTER ,
- N_PASTE , N_UNDO , KC_BSPC , KC_DEL
-
- ),
-
-};
diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/rules.mk b/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/rules.mk
deleted file mode 100644
index db873a7522..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-BOOTLOADER = atmel-dfu
-AUTO_SHIFT_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-NKRO_ENABLE = yes
-DEBOUNCE_TYPE = asym_eager_defer_pk
diff --git a/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/config.h b/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 9532d1f67c..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-// generated -*- buffer-read-only: t -*-
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
- XXX, XXX, XXX, XXX, \
- K32, K33, K34, K35, K36, K37, \
- XXX, XXX, XXX, XXX \
-)
diff --git a/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index 7c5717a0fe..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,5 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-// generated -*- buffer-read-only: t -*-
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h
deleted file mode 100644
index 9ee1c3e3cb..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/config.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#pragma once
-
-#define EE_HANDS
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 200
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c
deleted file mode 100644
index 326eded640..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-#include "333fred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT_5x6(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT),
- KC_F4, KC_F5, TG(CODEFLOW), KC_EQL,
- KC_LALT, KC_BSPC, KC_SPC, OSL(VIM),
- TD(TD_COPY_PASTE), TD(TD_SYM_VIM), KC_ENT, KC_RGUI,
- KC_LCTL, KC_DEL, KC_UP, KC_DOWN
- ),
-
- [CODEFLOW] = LAYOUT_5x6(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_F7, KC_F8, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______
- ),
-
- [SYMB] = LAYOUT_5x6(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, _______, KC_7, KC_8, KC_9, _______, KC_F12,
- _______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, _______, KC_4, KC_5, KC_6, _______, _______,
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, KC_1, KC_2, KC_3, _______, _______,
- KC_F7, KC_F8, KC_0, KC_ENT,
- _______, _______, KC_MPLY, KC_MNXT,
- _______, _______, KC_MPRV, _______,
- _______, _______, KC_VOLU, KC_VOLD
- ),
-
- [VIM] = LAYOUT_5x6(
- _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
- _______, _______, _______, _______, KC_LSFT, _______, _______, _______, _______, _______, _______, _______,
- _______, DLEFT, DRIGHT, KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______
- ),
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- tap_dance_process_keycode(keycode);
- return !try_handle_macro(keycode, record);
-}
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk
deleted file mode 100644
index 5ad63b02b7..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/333fred/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-KEY_LOCK_ENABLE = yes
-CONSOLE_ENABLE = no
-LTO_ENABLE = yes
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index a213d43d39..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT_5x6( \
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
- XXX, XXX, XXX, XXX, \
- K32, K33, K36, K37, \
- K34, XXX, XXX, K35, \
- XXX, XXX, XXX, XXX \
-)
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/config.h
deleted file mode 100644
index 7eaeceb44a..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/config.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-
-#pragma once
-
-#define USE_I2C
-// #define MASTER_LEFT
-// #define MASTER_RIGHT
-#define EE_HANDS
-// Rows are doubled-up
-// #define DEBOUNCE 5
-#define TAPPING_TOGGLE 3
-#define ONESHOT_TAP_TOGGLE 3
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM 300
-#ifdef RGBLED_NUM
-# undef RGBLED_NUM
-#endif
-#define RGBLED_NUM 54
-#define RGBLIGHT_LIMIT_VAL 200
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-// #define RGBLIGHT_LED_MAP { 11,10,9,8,7,6,5,4,3,2,1,0,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26 }
-#define RGBLIGHT_SPLIT 27
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/keymap.c
deleted file mode 100644
index 83b47f3ca9..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/keymap.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/* A standard layout for the Dactyl Manuform 5x6 Keyboard */
-
-#include QMK_KEYBOARD_H
-#include "rishka.h"
-
-enum layers {
- BASE, // default layer
- WIN, // Switch keys that are needed in windows
- SYMB, // symbols
- MDIA // media keys
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT_5x6_wrapper(
- KC_EQL , ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, KC_MINS,
- KC_ESC , _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSLS,
- KC_F1 , _____________MOD_QWERTY_L2_________________, _____________MOD_QWERTY_R2_________________, KC_QUOT,
- OS_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, OS_RSFT,
- KC_LEFT,KC_RGHT, KC_UP, KC_DOWN,
- KC_BSPC, KC_SPC, KC_TAB, KC_ENT,
- KC_LGUI, MO(SYMB), MO(SYMB), TT(MDIA),
- KC_DEL, KC_GRV, TT(WIN), KC_LALT
- ),
- [WIN] = LAYOUT_5x6_wrapper(
-
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _________________QWERTY_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- KC_LCTL, _______, _______, _______,
- _______, _______, _______, _______
- ),
-
- [SYMB] = LAYOUT_5x6_wrapper(
- KC_F12 , ______________________F_L__________________, ______________________F_R__________________, KC_F11,
- _______, _________________SYMBOL_L1_________________, _________________SYMBOL_R1_________________, KC_NUM,
- _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______,
- _______, _________________SYMBOL_L3_________________, _________________SYMBOL_R3_________________, _______,
- _______, _______, KC_P0 , KC_PDOT,
- _______, _______, _______, _______,
- QK_BOOT, _______, _______, _______,
- RGB_TOG, _______, _______, _______
- ),
- [MDIA] = LAYOUT_5x6_wrapper(
-
- RGB_MOD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_M_SN, RGB_HUD, _______, KC_MS_U, _______, KC_WH_U, _______, _______, KC_WH_U, _______, _______, _______,
- RGB_VAI, RGB_SAI, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, MOUSE_L, KC_WH_D, MOUSE_R, _______, _______,
- RGB_VAD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- KC_BTN1, KC_BTN2, _______, _______,
- KC_BTN3, KC_BTN4, _______, _______,
- KC_BTN5, _______, _______, _______
-
- ),
-};
-
-
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/rules.mk
deleted file mode 100644
index 7084862d13..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/rishka/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-BOOTLOADER=qmk-dfu
-RGBLIGHT_ENABLE = yes
-
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/README.md b/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/README.md
deleted file mode 100644
index 81a8004f7b..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-#### compile with
-
-`make handwired/dactyl_manuform/5x6:scheiklp`
-
-
-#### flash with
-
-`qmk flash -kb handwired/dactyl_manuform/5x6 -km scheiklp`
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/config.h
deleted file mode 100644
index 613d8ae47f..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/config.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-
-#pragma once
-
-
-#define USE_I2C
-
-/* #define MASTER_LEFT */
- /* #define MASTER_RIGHT */
-#define EE_HANDS
-// Rows are doubled-up
-
-#define AUTO_SHIFT_TIMEOUT 125
-#define NO_AUTO_SHIFT_SPECIAL
-#define NO_AUTO_SHIFT_NUMERIC
-
-// require two taps for a TT layer switch (default 5)
-#define TAPPING_TOGGLE 2
-
-// Mouse control
-// constant mode (velocity)
-#define MK_3_SPEED
-// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
-
-// Cursor offset per movement (unmodified)
-#define MK_C_OFFSET_UNMOD 16
-// Time between cursor movements (unmodified)
-#define MK_C_INTERVAL_UNMOD 10
-/* #define MK_C_INTERVAL_UNMOD 16 */
-
-// Cursor offset per movement (KC_ACL0)
-#define MK_C_OFFSET_0 1
-// Time between cursor movements (KC_ACL0)
-#define MK_C_INTERVAL_0 32
-
-// Cursor offset per movement (KC_ACL1)
-#define MK_C_OFFSET_1 4
-// Time between cursor movements (KC_ACL1)
-#define MK_C_INTERVAL_1 16
-
-// Cursor offset per movement (KC_ACL2)
-#define MK_C_OFFSET_2 20
-/* #define MK_C_OFFSET_2 32 */
-// Time between cursor movements (KC_ACL2)
-#define MK_C_INTERVAL_2 16
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/keymap.c
deleted file mode 100644
index 1f9102e829..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/keymap.c
+++ /dev/null
@@ -1,70 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-/* A K.O,Y layout for the Dactyl Manuform 5x6 Keyboard */
-
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-
-
-enum custom_layers {
- _1,
- _3,
- _4,
- _7,
-};
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_1] = LAYOUT_5x6(
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_BSPC ,
- KC_TAB , KC_K , KC_DOT , KC_O , KC_COMM , N_Y , KC_V , KC_G , KC_C , KC_L , N_SS , N_Z ,
- MO(_3) , KC_H , KC_A , KC_E , KC_I , KC_U , KC_D , KC_T , KC_R , KC_N , KC_S , KC_F ,
- KC_LSFT , KC_X , KC_Q , N_AE , N_UE , N_OE , KC_B , KC_P , KC_W , KC_M , KC_J , KC_RSFT ,
- KC_LCTL , KC_LGUI , KC_CAPS , TT(_7),
- KC_LALT, KC_SPC, MO(_3), MO(_4),
- N_COPY, N_CUT, DM_RSTP, KC_ENTER,
- N_PASTE, N_UNDO, DM_REC1, DM_PLY1
- ),
-
- [_3] = LAYOUT_5x6(
-
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSPC,
- KC_TAB, N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC, N_EXKL, N_LT, N_GT, N_EQ, N_AMP, N_ACUT,
- KC_TRNS, N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR, N_QUES, N_LPARN, N_RPARN, N_MINS, N_COLN, N_AT,
- KC_LSFT, N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE, N_PLUS, N_PERC, N_QUOT, N_SING, N_SEMI, KC_RSFT,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LALT,KC_SPC, KC_TRNS,KC_TRNS,
- N_COPY, N_CUT, DM_RSTP, KC_ENTER,
- N_PASTE, N_UNDO, DM_REC1, DM_PLY1
-
- ),
-
- [_4] = LAYOUT_5x6(
-
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSPC,
- KC_TAB, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN, KC_KP_SLASH, KC_7, KC_8, KC_9, KC_KP_MINUS, KC_TRNS,
- KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_KP_ASTERISK, KC_4, KC_5, KC_6, KC_KP_PLUS, KC_TRNS,
- KC_LSFT, KC_ESC, KC_TAB, KC_INS, KC_ENTER, N_UNDO, KC_KP_ENTER, KC_1, KC_2, KC_3, KC_KP_DOT, KC_RSFT,
- KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LALT,KC_0, KC_TRNS,KC_TRNS,
- N_COPY, N_CUT, DM_RSTP, KC_ENTER,
- N_PASTE, N_UNDO, DM_REC1, DM_PLY1
-
- ),
-
- [_7] = LAYOUT_5x6(
-
- KC_ESC, KC_TRNS, KC_TRNS, KC_MS_BTN3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TAB, KC_MS_WH_UP, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_WH_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_MS_ACCEL0, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LSFT, KC_MS_ACCEL1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_PSCR, KC_TRNS, KC_TRNS,
- KC_LALT,KC_0, KC_TRNS,KC_TRNS,
- N_COPY, N_CUT, DM_RSTP, KC_ENTER,
- N_PASTE, N_UNDO, DM_REC1, DM_PLY1
-
- ),
-
-};
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/rules.mk
deleted file mode 100644
index a0b983c7ab..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/scheiklp/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-AUTO_SHIFT_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-NKRO_ENABLE = yes
-BOOTLOADER = atmel-dfu
-DYNAMIC_MACRO_ENABLE = yes
-
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/config.h
deleted file mode 100644
index af5842e602..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/config.h
+++ /dev/null
@@ -1,9 +0,0 @@
-// Copyright 2022 Ulrich Spörlein (@uqs)
-// SPDX-License-Identifier: GPL-2.0-or-later
-#pragma once
-
-#define RGBLED_NUM 12
-#define RGBLED_SPLIT {6,6}
-#define RGBLIGHT_LIMIT_VAL 127
-
-#define EE_HANDS
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/keymap.c
deleted file mode 100644
index 620994fc37..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/keymap.c
+++ /dev/null
@@ -1,170 +0,0 @@
-// Copyright 2022 Ulrich Spörlein (@uqs)
-// SPDX-License-Identifier: GPL-2.0-or-later
-// vi:et sw=4 cc=5,15,25,35,45,55,65:
-
-#include "uqs.h"
-
-/*
- * My custom layout macro that allows for easy diff(1) operations between
- * various keyboards. It probably doesn't make sense to you.
- */
-#define LAYOUT_uqs( \
- L00, L01, L02, L03, L04, L05, \
- L10, L11, L12, L13, L14, L15, \
- L20, L21, L22, L23, L24, L25, \
- L30, L31, L32, L33, L34, L35, \
- L42, L43, \
- L44, L45, L54, \
- L55, L52, L53, \
- R00, R01, R02, R03, R04, R05, \
- R10, R11, R12, R13, R14, R15, \
- R20, R21, R22, R23, R24, R25, \
- R30, R31, R32, R33, R34, R35, \
- R42, R43, \
- R51, R40, R41, \
- R50, R52, R53 \
-) \
-LAYOUT_5x6( \
- L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
- L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
- L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
- L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \
- L42, L43, R42, R43, \
- L44, L45, R40, R41, \
- L54, L55, R50, R51, \
- L52, L53, R52, R53 \
-)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_QWER] = LAYOUT_uqs(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
- KC_LBRC, KC_RBRC,
- /*thumb*/ LT_EXTD_ESC, KC_SPC, LT_MOUSE_ALT_SHIFT_INS,
- /*aux*/ QK_LEAD, OSM_GUI, KC_LALT,
- KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_GRV),
- KC_MINS, KC_EQL,
- /*thumb*/ LT_FUNC_SHIFT_INS, KC_ENT, LT_NUM_BSPC,
- /*aux*/ KC_RALT, KC_APP, QK_LEAD
- ),
-
- [L_WASD] = LAYOUT_uqs(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5,
- KC_T, KC_TAB, KC_Q, KC_W, KC_E, KC_R,
- KC_G, KC_LSFT, KC_A, KC_S, KC_D, KC_F,
- KC_B, KC_GRV, KC_Z, KC_X, KC_C, KC_V,
- KC_LBRC, KC_RBRC,
- /*thumb*/ KC_LCTL, KC_SPC, KC_R,
- /*aux*/ A(KC_M), KC_LGUI, KC_LALT,
- KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_GRV),
- KC_MINS, KC_EQL,
- /*thumb*/ DF(L_COLM), KC_ENT, KC_BSPC,
- /*aux*/ KC_F5, KC_RALT, KC_APP
- ),
-
- [L_COLM] = LAYOUT_uqs(
- KC_NO, KC_NO, KC_BTN2, KC_BTN3, KC_BTN1, KC_NO,
- KC_BTN2, KC_Q, KC_W, KC_F, KC_P, KC_B,
- KC_BTN1, KC_G_A, KC_A_R, KC_S_S, KC_C_T, KC_G,
- KC_BTN3, KC_Z, KC_X, KC_C, KC_D, KC_V,
- MS_WHUP, MS_WHDN,
- /*thumb*/ LT_EXTD_ESC, SFT_T(KC_SPC), LT(L_MOUSE, KC_TAB),
- /*aux*/ QK_LEAD, OSM_GUI, KC_LALT,
- KC_NO, KC_BTN1, KC_BTN2, KC_BTN3, KC_NO, KC_NO,
- KC_J, KC_L, KC_U, KC_Y, KC_QUOT, KC_NO,
- KC_M, KC_C_N, KC_S_E, KC_A_I, KC_G_O, KC_NO,
- KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_NO,
- KC_NO, KC_NO,
- /*thumb*/ LT_FUNC_SHIFT_INS, KC_ENT, LT_NUM_BSPC,
- /*aux*/ QK_LEAD, KC_RALT, KC_APP
- ),
-
- // Updated with inspiration from https://forum.colemak.com/topic/2014-extend-extra-extreme/
- // I like the AltGr trick from https://stevep99.github.io/seniply/ and should probably incorporate some stuff from it.
- [L_EXTD] = LAYOUT_uqs(
- _______, _______, _______, _______, _______, _______,
- _______, KC_BTN1, KC_SCTAB, KC_PGUP, KC_CTAB, QK_LEAD,
- _______, OSM_GUI, OSM_ALT, OSM_SFT, OSM_CTL, KC_RALT,
- _______, ALT_TAB, MS_WHUP, MS_WHDN, KC_PGDN, INS_HARD,
- _______, _______,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ can't be used */
- _______, _______, _______, _______, _______, _______,
- KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_NO,
- KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, KC_NO,
- WIN_LEFT, WIN_DN, WIN_UP, WIN_RGHT, KC_PSTE, KC_NO, // KC_PSTE works in XTerm to emulate middle-click
- _______, _______,
- /*thumb*/ _______, _______, KC_BSPC,
- /*aux*/ _______, _______, _______
- /* ^^^^ use these */
- ),
-
- // TODO: maybe swap # with ;, that way I can roll :w or :wq which I need
- // often ... probably better to add a combo?
- [L_NUM] = LAYOUT_uqs(
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC,
- _______, KC_SCLN, KC_COLN, KC_LCBR, KC_LPRN, KC_LBRC,
- _______, KC_CIRC, KC_AMPR, KC_RCBR, KC_RPRN, KC_RBRC,
- KC_GRV, KC_TILDE,
- /*thumb*/ KC_ESC, KC_SPC, KC_0,
- /*aux*/ _______, _______, _______,
- /* ^^^^ use these */
- KC_NUM, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_EQUAL, KC_7, KC_8, KC_9, KC_KP_PLUS,_______,
- KC_KP_ASTERISK,KC_4,KC_5, KC_6, MINS_UNDSCR,_______,
- KC_COMM, KC_1, KC_2, KC_3, KC_KP_SLASH,KC_KP_ENTER, // Enter here, because thumb is occupied
- KC_0, KC_KP_DOT,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______, _______
- /* ^^^^ can't be used */
- ),
-
- [L_FUNC] = LAYOUT_uqs(
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- _______, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, DF(L_WASD),
- _______, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, DF(L_QWER),
- _______, KC_NO, KC_NO, KC_NO, KC_NO, DF(L_COLM),
- KC_NO, KC_NO,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ use these */
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_PSCR, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,
- KC_SCRL, KC_F4, KC_F5, KC_F6, KC_F11, KC_NO,
- KC_PAUS, KC_F1, KC_F2, KC_F3, KC_F12, KC_NO,
- KC_NO, KC_NO,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______, _______
- /* ^^^^ can't be used */
- ),
-
- [L_MOUSE] = LAYOUT_uqs(
- _______, _______, _______, _______, _______, _______,
- _______, KC_NO, KC_BTN2, KC_BTN3, KC_BTN1, KC_VOLU,
- _______, KC_NO, KC_ACL0, KC_ACL1, KC_ACL2, KC_VOLD,
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE,
- KC_NO, KC_NO,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ can't be used */
- _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MS_UP, MS_WHUP, _______, _______,
- MS_WHLEFT,KC_MS_L, KC_MS_D, KC_MS_R, MS_WHRGHT,_______,
- _______, MS_WHDN, KC_BTN3, KC_BTN4, KC_BTN5, _______,
- KC_NO, KC_NO,
- /*thumb*/ KC_NO, KC_BTN1, KC_BTN2,
- /*aux*/ _______, _______, _______
- /* use these ^^^^ */
- ),
-};
diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/rules.mk
deleted file mode 100644
index 2cd3745fa1..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/keymaps/uqs/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-#VIA_ENABLE = yes # doesn't fit with 7 layers :/
diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/config.h b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/config.h
deleted file mode 100644
index 68ea3f1933..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#pragma once
-
-#define EE_HANDS
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 200
-
-#define OLED_DISPLAY_128X64
-
-#define ENCODERS_PAD_A { F4 }
-#define ENCODERS_PAD_B { F5 }
-
-#undef SOFT_SERIAL_PIN
-#define SOFT_SERIAL_PIN D2
-
-#undef OLED_TIMEOUT
-#define OLED_TIMEOUT 240000
diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/keymap.c b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/keymap.c
deleted file mode 100644
index 139cd1f510..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,581 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-#include "333fred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT_5x6_5(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), OSM(MOD_RSFT),
- KC_F4, KC_LALT, KC_BSPC, TD(TD_SYM_VIM), KC_DEL, KC_UP, KC_ENT, KC_SPC, OSL(VIM), KC_EQL,
- KC_LGUI, TD(TD_COPY_PASTE), KC_DOWN, OSM(MOD_RCTL)
- ),
-
- [SYMB] = LAYOUT_5x6_5(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, _______, KC_7, KC_8, KC_9, _______, KC_F12,
- _______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, _______, KC_4, KC_5, KC_6, _______, _______,
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, _______, KC_1, KC_2, KC_3, _______, _______,
- KC_F7, _______, _______, _______, _______, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, KC_ENT,
- _______, _______, KC_VOLD, _______
- ),
-
- [VIM] = LAYOUT_5x6_5(
- _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
- _______, _______, _______, _______, KC_LSFT, _______, _______, _______, _______, _______, _______, _______,
- _______, DLEFT, DRIGHT, KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______,_______, _______, TG(GAME), _______, _______, _______, _______,
- _______, _______, _______, _______
- ),
-
- [GAME] = LAYOUT_5x6_5(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_T, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_G, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_B, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- QK_LOCK, KC_LALT, KC_SPC, KC_ENT, KC_GRV, TG(GAME), _______, _______, _______, KC_EQL,
- KC_BSPC, KC_F5, KC_F6, _______
- ),
-};
-
-uint32_t quote_timer;
-
-void keyboard_post_init_user(void) { quote_timer = 0; }
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- tap_dance_process_keycode(keycode);
- return !try_handle_macro(keycode, record);
-}
-
-static void render_logo(void) {
- static const char PROGMEM qmk_logo[] = {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00};
-
- oled_write_P(qmk_logo, false);
-}
-
-void render_led_status(void) {
- led_t led_state = host_keyboard_led_state();
- if (led_state.num_lock || led_state.caps_lock || led_state.scroll_lock) {
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
- }
-}
-
-void render_mods_status(void) {
- uint8_t mods = get_mods() | get_oneshot_mods();
- bool ctrl = mods & MOD_MASK_CTRL;
- bool shft = mods & MOD_MASK_SHIFT;
- bool alt = mods & MOD_MASK_ALT;
- bool gui = mods & MOD_MASK_GUI;
-
- oled_write_P(ctrl ? PSTR("CTRL ") : PSTR(" "), false);
- oled_write_P(shft ? PSTR("SHIFT ") : PSTR(" "), false);
- oled_write_P(alt ? PSTR("ALT ") : PSTR(" "), false);
- oled_write_ln_P(gui ? PSTR("GUI ") : PSTR(" "), false);
-}
-
-#define MAX_LINES 8
-
-void write_quote(const char* data, const uint8_t num_lines) {
- uint8_t current_line = 0;
- for (; current_line < (MAX_LINES - num_lines) / 2; current_line++) {
- oled_advance_page(true);
- }
-
- oled_write_ln_P(data, false);
-
- for (current_line += num_lines; current_line < MAX_LINES; current_line++)
- {
- oled_advance_page(true);
- }
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- render_logo();
- oled_advance_page(/* clearPageRemainder */ true);
- oled_write_P(PSTR("Layer: "), false);
- switch (get_highest_layer(layer_state)) {
- case BASE:
- oled_write_ln_P(PSTR("Base"), false);
- break;
- case SYMB:
- oled_write_ln_P(PSTR("Symbols"), false);
- break;
- case VIM:
- oled_write_ln_P(PSTR("Vim"), false);
- break;
- case GAME:
- oled_write_ln_P(PSTR("Gaming"), false);
- break;
- }
-
- render_mods_status();
- render_led_status();
- } else {
- if ((quote_timer != 0 && timer_elapsed32(quote_timer) < 300000 /* 5 minutes */) || !is_oled_on()) {
- return;
- }
-
- srand(timer_read32());
- int currentQuote = rand() % 63;
- quote_timer = timer_read32();
-
- // Max character count on my screen is 20 characters per line.
- // Quotes are from various fantasy books, mostly either from
- // The Stormlight Archive or from The Wheel of Time.
- switch (currentQuote) {
- case 0:
- write_quote(PSTR(" Life before Death \n"
- " Strength before \n"
- " Weakness \n"
- " Journey before \n"
- " Destination"),
- 5);
- break;
- case 1:
- write_quote(PSTR(" Honor is dead, but \n"
- "I'll see what I can \n"
- " do."),
- 3);
- break;
- case 2:
- write_quote(PSTR(" You cannot have my \n"
- " pain!"),
- 2);
- break;
- case 3:
- write_quote(PSTR(" Pride doesn't win \n"
- " battles"),
- 2);
- break;
- case 4:
- write_quote(PSTR(" I have practice \n"
- " following fools in \n"
- " their reckless \n"
- " pursuits."),
- 4);
- break;
- case 5:
- write_quote(PSTR(" What is the most \n"
- " important step a \n"
- " man can take?"),
- 3);
- break;
- case 6:
- write_quote(PSTR(" It's the next one. \n"
- " Always the next \n"
- " step, Dalinar."),
- 3);
- break;
- case 7:
- write_quote(PSTR(" NO MATING."), 1);
- break;
- case 8:
- write_quote(PSTR(" Inappropriate? \n"
- "Such as... dividing \n"
- " by zero?"),
- 3);
- break;
- case 9:
- write_quote(PSTR(" I am a stick!"), 1);
- break;
- case 10:
- write_quote(PSTR(" But you could be \n"
- " fire!"),
- 1);
- break;
- case 11:
- write_quote(PSTR(" Sometimes a \n"
- " hyprocrite is \n"
- " nothing more than \n"
- " than a man in the \n"
- "process of changing"),
- 5);
- break;
- case 12:
- write_quote(PSTR(" You surrender when \n"
- " you are dead. Many \n"
- "a man has been given\n"
- " less."),
- 4);
- break;
- case 13:
- write_quote(PSTR(" Kneel and swear to \n"
- " the Lord Dragon,...\n"
- " or you will be \n"
- " knelt."),
- 4);
- break;
- case 14:
- write_quote(PSTR("I'm right, anyway. I\n"
- "wish I wasn't, but I\n"
- " am. I bloody am."),
- 3);
- break;
- case 15:
- write_quote(PSTR(" Death rides on my \n"
- " shoulder,. Death \n"
- " walks in my \n"
- " footsteps. I am \n"
- " death."),
- 5);
- break;
- case 16:
- write_quote(PSTR(" The Golden Crane \n"
- " flies for Tarmon \n"
- " Gai'don"),
- 3);
- break;
- case 17:
- write_quote(PSTR("You humans are very \n"
- " excitable"),
- 2);
- break;
- case 18:
- write_quote(PSTR(" Phaw!"), 1);
- break;
- case 19:
- write_quote(PSTR("I may be a fool, but\n"
- " I intend to be a \n"
- " live fool."),
- 3);
- break;
- case 20:
- write_quote(PSTR(" Anyone who claimed \n"
- " that old age had \n"
- " brought them \n"
- "patience was either \n"
- " lying or senile."),
- 5);
- break;
- case 21:
- write_quote(PSTR("Death is light as a \n"
- "feather; duty, heavy\n"
- " as a mountain"),
- 3);
- break;
- case 22:
- write_quote(PSTR("Dovie'andi se tovya \n"
- " sagain."),
- 2);
- break;
- case 23:
- write_quote(PSTR(" Carai an Caldazar! \n"
- "Carai an Ellisande! \n"
- " Al Ellisande!"),
- 3);
- break;
- case 24:
- write_quote(PSTR(" Mia dovienya \n"
- " nesodhin soende."),
- 2);
- break;
- case 25:
- write_quote(PSTR(" The Wheel of Time \n"
- "turns, and Ages come\n"
- " and pass, leaving \n"
- "memories that become\n"
- " legend."),
- 5);
- break;
- case 26:
- write_quote(PSTR(" Legend fades to \n"
- "myth, and even myth \n"
- " is long forgotten \n"
- " when the Age that \n"
- "gave it birth comes \n"
- " again."),
- 6);
- break;
- case 27:
- write_quote(PSTR(" What is too absurd \n"
- " to believe is \n"
- "believed because it \n"
- "is too absurd to be \n"
- " a lie."),
- 5);
- break;
- case 28:
- write_quote(PSTR("And you gave me the \n"
- " way out! Chew on \n"
- "that bitterness for \n"
- "lunch, you flaming, \n"
- "burning, misbegotten\n"
- " liars!"),
- 6);
- break;
- case 29:
- write_quote(PSTR(" He was going to \n"
- "start having, 'I am \n"
- "not a bloody Lord', \n"
- " embroidered on his \n"
- " coats."),
- 5);
- break;
- case 30:
- write_quote(PSTR("All was not lost, of\n"
- " course. All was \n"
- " never lost as long \n"
- " as you were alive."),
- 4);
- break;
- case 31:
- write_quote(PSTR(" Everything is just \n"
- " bloody fine!"),
- 2);
- break;
- case 32:
- write_quote(PSTR("The wheel weaves as \n"
- " the wheel wills"),
- 2);
- break;
- case 33:
- write_quote(PSTR(" Time to toss the \n"
- " dice"),
- 2);
- break;
- case 34:
- write_quote(PSTR("Always plan for the \n"
- " worst, child, that \n"
- " way all your \n"
- " surprises are \n"
- " pleasant ones."),
- 5);
- break;
- case 35:
- write_quote(PSTR("'Pessimism, she is a\n"
- " fond friend of \n"
- "yours, yes?' 'That's\n"
- " uncalled for. I \n"
- " barely know her. \n"
- "Mere acquaintances, \n"
- " at best.'"),
- 7);
- break;
- case 36:
- write_quote(PSTR(" Do not trouble \n"
- "trouble till trouble\n"
- " troubles you."),
- 3);
- break;
- case 37:
- write_quote(PSTR("If your enemy offers\n"
- " you two targets, \n"
- " strike at a third."),
- 3);
- break;
- case 38:
- write_quote(PSTR("The wind was not the\n"
- "beginning. There are\n"
- " neither beginnings \n"
- " nor endings to the \n"
- " turning of the \n"
- " Wheel of Time. But \n"
- " it was _a_ \n"
- " beginning."),
- 8);
- break;
- case 39:
- write_quote(PSTR("Bloody flaming ashes"), 1);
- break;
- case 40:
- write_quote(PSTR("Then follow Lord Mat\n"
- " whenever he calls \n"
- "To dance with Jak O'\n"
- " the Shadows."),
- 4);
- break;
- case 41:
- write_quote(PSTR(" There are no \n"
- " endings, and never \n"
- "will be endings, to \n"
- " the turning of the \n"
- " Wheel of Time. But \n"
- " it was an ending."),
- 6);
- break;
- case 42:
- write_quote(PSTR(" TAI'SHAR MALKIER!"), 1);
- break;
- case 43:
- write_quote(PSTR("I would not mind you\n"
- " in my head, if you \n"
- "were not so clearly \n"
- " mad."),
- 4);
- break;
- case 44:
- write_quote(PSTR(" ILYENA, MY LOVE, \n"
- " FORGIVE ME!"),
- 2);
- break;
- case 45:
- write_quote(PSTR(" Oh, Light. That's \n"
- "impossible! We can't\n"
- " use it! Cast it \n"
- "away! That is death \n"
- " we hold, death and \n"
- "betrayal. It is HIM."),
- 6);
- break;
- case 46:
- write_quote(PSTR("Nothing ever goes as\n"
- " you expect. Expect \n"
- " nothing, and you \n"
- " will not be \n"
- " surprised. Expect \n"
- " nothing. Hope for \n"
- " nothing. Nothing."),
- 7);
- break;
- case 47:
- write_quote(PSTR(" Distant Weeping"), 1);
- break;
- case 48:
- write_quote(PSTR("Are you real? Am I?"), 1);
- break;
- case 49:
- write_quote(PSTR(" I'm just an old \n"
- "gleeman, who could I\n"
- " possibly be \n"
- " dangerous to?"),
- 4);
- break;
- case 50:
- write_quote(PSTR(" Mat bloody Cauthon \n"
- " is no bloody hero!"),
- 2);
- break;
- case 51:
- write_quote(PSTR("You are a coward and\n"
- " a tyrant. I'd name \n"
- " you Darkfriend as \n"
- "well, but I suspect \n"
- " that the Dark One \n"
- " would perhaps be \n"
- " embarrassed to \n"
- "associate with you."),
- 8);
- break;
- case 52:
- write_quote(PSTR(" I win again, Lews \n"
- " Therin."),
- 2);
- break;
- case 53:
- write_quote(PSTR("May you always find \n"
- " water and shade."),
- 2);
- break;
- case 54:
- write_quote(PSTR(" I will never serve \n"
- "you, Father of Lies.\n"
- "In a thousand lives,\n"
- "I never have. I know\n"
- " that. I'm sure of \n"
- "it. Come. It is time\n"
- " to die."),
- 7);
- break;
- case 55:
- write_quote(PSTR(" There may be more \n"
- "than one way to skin\n"
- " a cat, but the cat \n"
- "isn't going to like \n"
- " any of them."),
- 5);
- break;
- case 56:
- write_quote(PSTR("Please see that they\n"
- " know, although the \n"
- "word Black may brand\n"
- "my name forever, my \n"
- "soul is Brown. Tell \n"
- " them..."),
- 6);
- break;
- case 57:
- write_quote(PSTR(" 'Your soul is of a \n"
- "pure white, Verin,' \n"
- "Egwene said softly. \n"
- " 'Like the Light \n"
- " itself.'"),
- 5);
- break;
- case 58:
- write_quote(PSTR(" Asha'man, Kill!"), 1);
- break;
- case 59:
- write_quote(PSTR(" Let the lord of \n"
- " chaos rule."),
- 2);
- break;
- case 60:
- write_quote(PSTR(" There's always \n"
- " another secret."),
- 2);
- break;
- case 61:
- write_quote(PSTR(" You see the great \n"
- "thing about madness \n"
- "is that it's all in \n"
- " your head."),
- 4);
- break;
- case 62:
- write_quote(PSTR(" In one Age, called \n"
- " the Third Age by \n"
- "some, an Age yet to \n"
- " come, an Age long \n"
- " past, a wind rose \n"
- " above..."),
- 6);
- break;
- }
- }
- return false;
-}
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- // On the left, control the volume. On the right, scroll the page
- if (index == 0) {
- if (clockwise) {
- tap_code(KC_WH_U);
- } else {
- tap_code(KC_WH_D);
- }
- } else {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- return true;
-}
diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/rules.mk b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/rules.mk
deleted file mode 100644
index c83f96e102..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/333fred/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-KEY_LOCK_ENABLE = yes
-CONSOLE_ENABLE = no
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/handwired/dactyl_manuform/dmote/62key/config.h b/keyboards/handwired/dactyl_manuform/dmote/62key/config.h
deleted file mode 100644
index e8bbf91d08..0000000000
--- a/keyboards/handwired/dactyl_manuform/dmote/62key/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#pragma once
-
-// WS2812 RGB LED, normally used to indicate keyboard state:
-#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
-#define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1
diff --git a/keyboards/handwired/dactyl_manuform/dmote/62key/info.json b/keyboards/handwired/dactyl_manuform/dmote/62key/info.json
deleted file mode 100644
index 8e27a68f16..0000000000
--- a/keyboards/handwired/dactyl_manuform/dmote/62key/info.json
+++ /dev/null
@@ -1,116 +0,0 @@
-{
- "keyboard_name": "DMOTE (62-key)",
- "manufacturer": "tshort",
- "url": "",
- "maintainer": "veikman",
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "usb": {
- "vid": "0x444D",
- "pid": "0x3632",
- "device_version": "0.0.1"
- },
- "rgblight": {
- "led_count": 6,
- "split_count": [3, 3],
- "animations": {
- "knight": true,
- "christmas": true
- }
- },
- "ws2812": {
- "pin": "D1"
- },
- "matrix_pins": {
- "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
- "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
- },
- "diode_direction": "COL2ROW",
- "split": {
- "enabled": true,
- "soft_serial_pin": "D0"
- },
- "layouts": {
- "LAYOUT_62key": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0},
- {"matrix": [0, 5], "x": 5, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1},
- {"matrix": [1, 5], "x": 5, "y": 1},
-
- {"matrix": [2, 0], "x": 0, "y": 2},
- {"matrix": [2, 1], "x": 1, "y": 2},
- {"matrix": [2, 2], "x": 2, "y": 2},
- {"matrix": [2, 3], "x": 3, "y": 2},
- {"matrix": [2, 4], "x": 4, "y": 2},
- {"matrix": [2, 5], "x": 5, "y": 2},
-
- {"matrix": [3, 0], "x": 0, "y": 3},
- {"matrix": [3, 1], "x": 1, "y": 3},
- {"matrix": [3, 2], "x": 2, "y": 3},
- {"matrix": [3, 3], "x": 3, "y": 3},
- {"matrix": [3, 4], "x": 4, "y": 3},
-
- {"matrix": [4, 3], "x": 3, "y": 4},
-
- {"matrix": [4, 2], "x": 4.5, "y": 4.5},
- {"matrix": [3, 5], "x": 5.5, "y": 4.5},
-
- {"matrix": [5, 2], "x": 4, "y": 5.5},
- {"matrix": [4, 4], "x": 5, "y": 5.5},
- {"matrix": [4, 5], "x": 6, "y": 5.5},
-
- {"matrix": [5, 4], "x": 4.5, "y": 6.5},
- {"matrix": [5, 5], "x": 5.5, "y": 6.5},
-
- {"matrix": [6, 5], "x": 9, "y": 0},
- {"matrix": [6, 4], "x": 10, "y": 0},
- {"matrix": [6, 3], "x": 11, "y": 0},
- {"matrix": [6, 2], "x": 12, "y": 0},
- {"matrix": [6, 1], "x": 13, "y": 0},
- {"matrix": [6, 0], "x": 14, "y": 0},
-
- {"matrix": [7, 5], "x": 9, "y": 1},
- {"matrix": [7, 4], "x": 10, "y": 1},
- {"matrix": [7, 3], "x": 11, "y": 1},
- {"matrix": [7, 2], "x": 12, "y": 1},
- {"matrix": [7, 1], "x": 13, "y": 1},
- {"matrix": [7, 0], "x": 14, "y": 1},
-
- {"matrix": [8, 5], "x": 9, "y": 2},
- {"matrix": [8, 4], "x": 10, "y": 2},
- {"matrix": [8, 3], "x": 11, "y": 2},
- {"matrix": [8, 2], "x": 12, "y": 2},
- {"matrix": [8, 1], "x": 13, "y": 2},
- {"matrix": [8, 0], "x": 14, "y": 2},
-
- {"matrix": [9, 4], "x": 10, "y": 3},
- {"matrix": [9, 3], "x": 11, "y": 3},
- {"matrix": [9, 2], "x": 12, "y": 3},
- {"matrix": [9, 1], "x": 13, "y": 3},
- {"matrix": [9, 0], "x": 14, "y": 3},
-
- {"matrix": [9, 5], "x": 8.5, "y": 4.5},
- {"matrix": [10, 2], "x": 9.5, "y": 4.5},
-
- {"matrix": [10, 3], "x": 11, "y": 4},
-
- {"matrix": [10, 5], "x": 8, "y": 5.5},
- {"matrix": [10, 4], "x": 9, "y": 5.5},
- {"matrix": [11, 2], "x": 10, "y": 5.5},
-
- {"matrix": [11, 5], "x": 8.5, "y": 6.5},
- {"matrix": [11, 4], "x": 9.5, "y": 6.5}
- ]
- }
- }
-}
diff --git a/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/config.h b/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/config.h
deleted file mode 100644
index 1809262044..0000000000
--- a/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define EE_HANDS
diff --git a/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c
deleted file mode 100644
index ce2c8a3702..0000000000
--- a/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c
+++ /dev/null
@@ -1,141 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#include "keymap_colemak.h"
-#include "sendstring_colemak.h"
-
-// Automatic Layer ID:
-enum layer_names {
- _QWERTY, // OS-side Colemak. Default.
- _COLEMAK, // Keyboard-side Colemak. Portability, emergency.
- _NUMERIC
-};
-
-// Shorthand:
-#define LAYER_N MO(_NUMERIC)
-#define LAYER_C TG(_COLEMAK)
-#define PASTE LSFT(KC_INS) // Terminal-compatible paste.
-#define SLQ RALT(KC_9) // Single left-side quotation mark (in Colemak).
-#define SRQ RALT(KC_0)
-#define EMDASH RALT(LSFT(KC_MINUS)) // Em dash character (in Colemak).
-#define BK_LCTL CTL_T(KC_LEFT_BRACKET)
-#define BK_RCTL RCTL_T(KC_RIGHT_BRACKET)
-// TODO: Mod-tap ALT with a curvilinear brace.
-// https://github.com/qmk/qmk_firmware/pull/2055
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_62key(
- KC_VOLD, KC_VOLU, CM_W, CM_F, CM_P, CM_G,
- KC_TAB, CM_Q, CM_R, CM_S, CM_T, CM_D,
- KC_BSPC, CM_A, CM_X, CM_C, CM_V, CM_B,
- SLQ, CM_Z, KC_HOME, KC_PGUP, KC_END,
- KC_PGDN, KC_ENT, KC_SPC,
- SC_LSPO, KC_LGUI, KC_MINS,
- BK_LCTL, KC_LALT,
-
- CM_J, CM_L, CM_U, CM_Y, KC_MPLY, KC_MUTE,
- CM_H, CM_N, CM_E, CM_I, CM_SCLN, KC_BSLS,
- CM_K, CM_M, KC_COMM, KC_DOT, CM_O, KC_QUOT,
- KC_LEFT, KC_UP, KC_RGHT, KC_SLSH, SRQ,
- KC_DEL, KC_ESC, KC_DOWN,
- KC_EQL, LAYER_N, SC_RSPC,
- KC_RALT, BK_RCTL
- ),
-
- [_COLEMAK] = LAYOUT_62key(
- _______, _______, KC_W, KC_F, KC_P, KC_G,
- _______, KC_Q, KC_R, KC_S, KC_T, KC_D,
- _______, KC_A, KC_X, KC_C, KC_V, KC_B,
- _______, KC_Z, _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______,
-
- KC_J, KC_L, KC_U, KC_Y, _______, _______,
- KC_H, KC_N, KC_E, KC_I, KC_SCLN, _______,
- KC_K, KC_M, _______, _______, KC_O, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______
- ),
-
- [_NUMERIC] = LAYOUT_62key(
- LAYER_C, KC_INS, KC_F2, KC_F3, KC_F4, KC_F5,
- KC_F12, KC_F1, KC_2, KC_3, KC_4, KC_5,
- _______, KC_1, KC_AT, KC_HASH, KC_DLR, KC_PERC,
- KC_GRV, KC_EXLM, KC_BTN1, KC_WH_U, KC_BTN2,
- KC_WH_D, RGB_MOD, _______,
- _______, _______, EMDASH,
- _______, _______,
-
- KC_F6, KC_F7, KC_F8, KC_F9, QK_BOOT, KC_WAKE, // *
- KC_6, KC_7, KC_8, KC_9, KC_F10, KC_F11,
- KC_CIRC, KC_AMPR, KC_ASTR, KC_APP, KC_0, PASTE,
- KC_MS_L, KC_MS_U, KC_MS_R, KC_PSCR, RGB_TOG,
- KC_ACL1, KC_ACL2, KC_MS_D,
- KC_ACL0, _______, _______,
- _______, _______
- )
-};
-
-// *KC_WAKE: Used in place of KC_SLEP because X11 with i3 on prerelease
-// Debian 10 was seeing duplicate keypress and release events for sleep
-// (regardless of i3 binding), which ruined the function.
-
-
-/*
-The rest is all about lighting control.
-The logic here represents a pretty poor compromise solution between the
-following concerns:
-
-- Feedback on active modifiers.
-- Flexibility: Both sides of the keyboard are interchangeable.
-- Regular QMK RBG lighting modes. Specifically, Knight and Xmas.
-
-Currently, the last item suffers, because the first two seem to require
-calling a function that implements the RGBLIGHT_SPLIT_SET_CHANGE_HSVS macro,
-which most of the rgblight.c functions do not. In particular, functions that
-target an individual LED do not do so correctly across the wire, so instead
-we let HSV vary without ever targeting LEDs.
-*/
-
-// How long to wait between animation steps for "Knight" animation:
-const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {255, 200, 100};
-
-bool _initialized = false;
-bool _leds_dirty = false;
-
-void modal_leds(void) {
- uint8_t mods = get_mods();
- uint16_t hue = 355; // Rough match to printed case.
- uint8_t saturation = 255;
- uint8_t value = 0;
- if (layer_state_is(_COLEMAK)) { hue -= 50; saturation -= 20; value += 20; }
- if (layer_state_is(_NUMERIC)) { value += 30; }
- if (mods & MOD_MASK_SHIFT) { saturation -= 20; value += 30; }
- if (mods & MOD_MASK_ALT) { hue -= 100; saturation -= 20; value += 30; }
- if (mods & MOD_MASK_CTRL) { hue -= 200; saturation -= 20; value += 30; }
- // rgblight_sethsv_eeprom_helper is not a great API function but it does
- // affect both halves of a split keyboard.
- rgblight_sethsv_eeprom_helper(hue, saturation, value, false);
- _leds_dirty = false;
-}
-
-void matrix_scan_user(void) {
- if (_leds_dirty) { modal_leds(); }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (!_initialized) {
- // Static lighting is amenable to customization.
- rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
- _initialized = true;
- }
- if (keycode == KC_WAKE) {
- // Turn the lights off before going to sleep.
- rgblight_sethsv_eeprom_helper(0, 0, 0, false);
- } else {
- _leds_dirty = true;
- }
- return true;
-}
diff --git a/keyboards/handwired/dactyl_manuform/dmote/62key/rules.mk b/keyboards/handwired/dactyl_manuform/dmote/62key/rules.mk
deleted file mode 100644
index a6a97a5c8e..0000000000
--- a/keyboards/handwired/dactyl_manuform/dmote/62key/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# Build-process overrides for the DMOTE.
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-RGBLIGHT_ENABLE = yes # Needed for the C linker with lighting control.
-COMMAND_ENABLE = no # Not a good combo with Space Cadet shift.
diff --git a/keyboards/handwired/dactyl_manuform/dmote/readme.md b/keyboards/handwired/dactyl_manuform/dmote/readme.md
deleted file mode 100644
index 7aff2df524..0000000000
--- a/keyboards/handwired/dactyl_manuform/dmote/readme.md
+++ /dev/null
@@ -1,16 +0,0 @@
-DMOTE
-======
-
-The “Dactyl-ManuForm: Opposable Thumb Edition” is made from a Clojure
-application maintained [here](https://github.com/veikman/dactyl-keyboard).
-The application supports varied physical layouts and therefore matrices.
-This physical variability is its main feature; its QMK firmware is ordinary.
-
-Consult the general [Dactyl-ManuForm readme](../readme.md).
-
-## The `62key` layout
-
-This folder represents the default build target of the Clojure application
-as of its version 0.4.0. The default keymap for this layout has a QWERTY base
-layer but is intended for running Colemak on the OS side with the i3 tiling
-window manager. It’s also got a layer that forces Colemak from the QMK side.
diff --git a/keyboards/handwired/dactyl_minidox/info.json b/keyboards/handwired/dactyl_minidox/info.json
index a0bb416ce4..a94f517b52 100644
--- a/keyboards/handwired/dactyl_minidox/info.json
+++ b/keyboards/handwired/dactyl_minidox/info.json
@@ -8,6 +8,14 @@
"pid": "0x3536",
"device_version": "0.0.3"
},
+ "features": {
+ "bootmagic": true,
+ "console": false,
+ "command": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
"ws2812": {
"pin": "D3"
},
diff --git a/keyboards/handwired/dactyl_minidox/rules.mk b/keyboards/handwired/dactyl_minidox/rules.mk
index e22ac7f3ff..6e7633bfe0 100644
--- a/keyboards/handwired/dactyl_minidox/rules.mk
+++ b/keyboards/handwired/dactyl_minidox/rules.mk
@@ -1,12 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-# AUDIO_ENABLE = yes # Audio output
+# This file intentionally left blank
diff --git a/keyboards/handwired/dmote/config.h b/keyboards/handwired/dmote/config.h
new file mode 100644
index 0000000000..4a2d46abe5
--- /dev/null
+++ b/keyboards/handwired/dmote/config.h
@@ -0,0 +1,23 @@
+/*
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+Copyright 2015 Jack Humbert
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+// WS2812 RGB LED, normally used to indicate keyboard state:
+#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
+#define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1
diff --git a/keyboards/handwired/dmote/info.json b/keyboards/handwired/dmote/info.json
new file mode 100644
index 0000000000..fc52fee11e
--- /dev/null
+++ b/keyboards/handwired/dmote/info.json
@@ -0,0 +1,124 @@
+{
+ "keyboard_name": "DMOTE",
+ "manufacturer": "veikman",
+ "url": "https://github.com/veikman/dactyl-keyboard",
+ "maintainer": "veikman",
+ "development_board": "promicro",
+ "usb": {
+ "vid": "0x444D",
+ "pid": "0x3632",
+ "device_version": "1.0.0"
+ },
+ "features": {
+ "bootmagic": true,
+ "console": false,
+ "command": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
+ "rgblight": {
+ "led_count": 6,
+ "split_count": [3, 3],
+ "animations": {
+ "christmas": true,
+ "knight": true
+ }
+ },
+ "ws2812": {
+ "pin": "D1"
+ },
+ "matrix_pins": {
+ "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
+ "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
+ },
+ "diode_direction": "COL2ROW",
+ "split": {
+ "enabled": true,
+ "soft_serial_pin": "D0"
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+
+ {"matrix": [6, 5], "x": 9, "y": 0},
+ {"matrix": [6, 4], "x": 10, "y": 0},
+ {"matrix": [6, 3], "x": 11, "y": 0},
+ {"matrix": [6, 2], "x": 12, "y": 0},
+ {"matrix": [6, 1], "x": 13, "y": 0},
+ {"matrix": [6, 0], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1, "y": 1},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+ {"matrix": [1, 4], "x": 4, "y": 1},
+ {"matrix": [1, 5], "x": 5, "y": 1},
+
+ {"matrix": [7, 5], "x": 9, "y": 1},
+ {"matrix": [7, 4], "x": 10, "y": 1},
+ {"matrix": [7, 3], "x": 11, "y": 1},
+ {"matrix": [7, 2], "x": 12, "y": 1},
+ {"matrix": [7, 1], "x": 13, "y": 1},
+ {"matrix": [7, 0], "x": 14, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2},
+ {"matrix": [2, 1], "x": 1, "y": 2},
+ {"matrix": [2, 2], "x": 2, "y": 2},
+ {"matrix": [2, 3], "x": 3, "y": 2},
+ {"matrix": [2, 4], "x": 4, "y": 2},
+ {"matrix": [2, 5], "x": 5, "y": 2},
+
+ {"matrix": [8, 5], "x": 9, "y": 2},
+ {"matrix": [8, 4], "x": 10, "y": 2},
+ {"matrix": [8, 3], "x": 11, "y": 2},
+ {"matrix": [8, 2], "x": 12, "y": 2},
+ {"matrix": [8, 1], "x": 13, "y": 2},
+ {"matrix": [8, 0], "x": 14, "y": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3},
+ {"matrix": [3, 1], "x": 1, "y": 3},
+ {"matrix": [3, 2], "x": 2, "y": 3},
+ {"matrix": [3, 3], "x": 3, "y": 3},
+ {"matrix": [3, 4], "x": 4, "y": 3},
+
+ {"matrix": [9, 4], "x": 10, "y": 3},
+ {"matrix": [9, 3], "x": 11, "y": 3},
+ {"matrix": [9, 2], "x": 12, "y": 3},
+ {"matrix": [9, 1], "x": 13, "y": 3},
+ {"matrix": [9, 0], "x": 14, "y": 3},
+
+ {"matrix": [4, 3], "x": 3, "y": 4},
+
+ {"matrix": [4, 2], "x": 4.5, "y": 4.5},
+ {"matrix": [3, 5], "x": 5.5, "y": 4.5},
+
+ {"matrix": [9, 5], "x": 8.5, "y": 4.5},
+ {"matrix": [10, 2], "x": 9.5, "y": 4.5},
+
+ {"matrix": [10, 3], "x": 11, "y": 4},
+
+ {"matrix": [5, 2], "x": 4, "y": 5.5},
+ {"matrix": [4, 4], "x": 5, "y": 5.5},
+ {"matrix": [4, 5], "x": 6, "y": 5.5},
+
+ {"matrix": [10, 5], "x": 8, "y": 5.5},
+ {"matrix": [10, 4], "x": 9, "y": 5.5},
+ {"matrix": [11, 2], "x": 10, "y": 5.5},
+
+ {"matrix": [5, 4], "x": 4.5, "y": 6.5},
+ {"matrix": [5, 5], "x": 5.5, "y": 6.5},
+
+ {"matrix": [11, 5], "x": 8.5, "y": 6.5},
+ {"matrix": [11, 4], "x": 9.5, "y": 6.5}
+ ]
+ }
+ }
+}
diff --git a/keyboards/handwired/dmote/keymaps/default/keymap.c b/keyboards/handwired/dmote/keymaps/default/keymap.c
new file mode 100644
index 0000000000..59a5b51f1b
--- /dev/null
+++ b/keyboards/handwired/dmote/keymaps/default/keymap.c
@@ -0,0 +1,134 @@
+/*
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+Copyright 2015 Jack Humbert
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include QMK_KEYBOARD_H
+
+#include "keymap_colemak.h"
+#include "sendstring_colemak.h"
+
+// Automatic Layer ID:
+enum layer_names {
+ _QWERTY, // OS-side Colemak. Default.
+ _COLEMAK, // Keyboard-side Colemak. Portability, emergency.
+ _NUMERIC,
+};
+
+// Shorthand:
+#define LAYER_N MO(_NUMERIC)
+#define LAYER_C TG(_COLEMAK)
+#define PASTE LSFT(KC_INS) // Terminal-compatible paste.
+#define SLQ RALT(KC_9) // Single left-side quotation mark (in Colemak).
+#define SRQ RALT(KC_0)
+#define EMDASH RALT(LSFT(KC_MINUS)) // Em dash character (in Colemak).
+#define BK_LCTL CTL_T(KC_LEFT_BRACKET)
+#define BK_RCTL RCTL_T(KC_RIGHT_BRACKET)
+// TODO: Mod-tap ALT with a curvilinear brace.
+// https://github.com/qmk/qmk_firmware/pull/2055
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_QWERTY] = LAYOUT(
+ KC_VOLD, KC_VOLU, CM_W, CM_F, CM_P, CM_G, CM_J, CM_L, CM_U, CM_Y, KC_MPLY, KC_MUTE,
+ KC_TAB, CM_Q, CM_R, CM_S, CM_T, CM_D, CM_H, CM_N, CM_E, CM_I, CM_SCLN, KC_BSLS,
+ KC_BSPC, CM_A, CM_X, CM_C, CM_V, CM_B, CM_K, CM_M, KC_COMM, KC_DOT, CM_O, KC_QUOT,
+ SLQ, CM_Z, KC_HOME, KC_PGUP, KC_END, KC_LEFT, KC_UP, KC_RGHT, KC_SLSH, SRQ,
+ KC_PGDN, KC_ENT, KC_SPC, KC_DEL, KC_ESC, KC_DOWN,
+ SC_LSPO, KC_LGUI, KC_MINS, KC_EQL, LAYER_N, SC_RSPC,
+ BK_LCTL, KC_LALT, KC_RALT, BK_RCTL
+ ),
+
+ [_COLEMAK] = LAYOUT(
+ _______, _______, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, _______, _______,
+ _______, KC_Q, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_SCLN, _______,
+ _______, KC_A, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, _______, _______, KC_O, _______,
+ _______, KC_Z, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______
+ ),
+
+ [_NUMERIC] = LAYOUT(
+ LAYER_C, KC_INS, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, QK_BOOT, KC_WAKE, // *
+ KC_F12, KC_F1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_F10, KC_F11,
+ _______, KC_1, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_APP, KC_0, PASTE,
+ KC_GRV, KC_EXLM, KC_BTN1, KC_WH_U, KC_BTN2, KC_MS_L, KC_MS_U, KC_MS_R, KC_PSCR, RGB_TOG,
+ KC_WH_D, RGB_MOD, _______, KC_ACL1, KC_ACL2, KC_MS_D,
+ _______, _______, EMDASH, KC_ACL0, _______, _______,
+ _______, _______, _______, _______
+ )
+};
+
+// *KC_WAKE: Used in place of KC_SLEP because X11 with i3 on prerelease
+// Debian 10 was seeing duplicate keypress and release events for sleep
+// (regardless of i3 binding), which ruined the function.
+
+/*
+The rest is all about lighting control.
+The logic here represents a pretty poor compromise solution between the
+following concerns:
+
+- Feedback on active modifiers.
+- Flexibility: Both sides of the keyboard are interchangeable.
+- Regular QMK RBG lighting modes. Specifically, Knight and Xmas.
+
+Currently, the last item suffers, because the first two seem to require
+calling a function that implements the RGBLIGHT_SPLIT_SET_CHANGE_HSVS macro,
+which most of the rgblight.c functions do not. In particular, functions that
+target an individual LED do not do so correctly across the wire, so instead
+we let HSV vary without ever targeting LEDs.
+*/
+
+// How long to wait between animation steps for "Knight" animation:
+const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {255, 200, 100};
+
+bool _initialized = false;
+bool _leds_dirty = false;
+
+void modal_leds(void) {
+ uint8_t mods = get_mods();
+ uint16_t hue = 355; // Rough match to printed case.
+ uint8_t saturation = 255;
+ uint8_t value = 0;
+ if (layer_state_is(_COLEMAK)) { hue -= 50; saturation -= 20; value += 20; }
+ if (layer_state_is(_NUMERIC)) { value += 30; }
+ if (mods & MOD_MASK_SHIFT) { saturation -= 20; value += 30; }
+ if (mods & MOD_MASK_ALT) { hue -= 100; saturation -= 20; value += 30; }
+ if (mods & MOD_MASK_CTRL) { hue -= 200; saturation -= 20; value += 30; }
+ // rgblight_sethsv_eeprom_helper is not a great API function but it does
+ // affect both halves of a split keyboard.
+ rgblight_sethsv_eeprom_helper(hue, saturation, value, false);
+ _leds_dirty = false;
+}
+
+void matrix_scan_user(void) {
+ if (_leds_dirty) { modal_leds(); }
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if (!_initialized) {
+ // Static lighting is amenable to customization.
+ rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
+ _initialized = true;
+ }
+ if (keycode == KC_WAKE) {
+ // Turn the lights off before going to sleep.
+ rgblight_sethsv_eeprom_helper(0, 0, 0, false);
+ } else {
+ _leds_dirty = true;
+ }
+ return true;
+}
diff --git a/keyboards/handwired/dmote/readme.md b/keyboards/handwired/dmote/readme.md
new file mode 100644
index 0000000000..9b6ff3a9f4
--- /dev/null
+++ b/keyboards/handwired/dmote/readme.md
@@ -0,0 +1,29 @@
+# DMOTE
+
+![DMOTE](https://i.imgur.com/JYkB6LBh.jpg)
+
+The “**D**actyl-**M**anuForm: **O**pposable **T**humb **E**dition” is made from a Clojure
+application maintained [here](https://github.com/veikman/dactyl-keyboard).
+The application supports varied physical layouts and therefore matrices.
+This physical variability is its main feature; its QMK firmware is ordinary.
+
+* Keyboard Maintainer: [Viktor Eikman](https://github.com/veikman/)
+* Hardware Supported: Pro Micro and clones
+
+Make example for this keyboard (after setting up your build environment):
+
+ make handwired/dmote:default
+
+Flashing example for this keyboard:
+
+ make handwired/dmote:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/handwired/dmote/rules.mk b/keyboards/handwired/dmote/rules.mk
new file mode 100644
index 0000000000..876618b9d1
--- /dev/null
+++ b/keyboards/handwired/dmote/rules.mk
@@ -0,0 +1 @@
+# File is intentionally blank
diff --git a/keyboards/handwired/dqz11n1g/rules.mk b/keyboards/handwired/dqz11n1g/rules.mk
index 23f6b89cc2..220e353ab7 100644
--- a/keyboards/handwired/dqz11n1g/rules.mk
+++ b/keyboards/handwired/dqz11n1g/rules.mk
@@ -1,7 +1,7 @@
# Keyboard matrix uses shift-registers read via SPI
CUSTOM_MATRIX = lite
SRC += matrix.c
-QUANTUM_LIB_SRC += spi_master.c
+SPI_DRIVER_REQUIRED = yes
# Build Options
# change yes to no to disable
diff --git a/keyboards/handwired/dygma/raise/rules.mk b/keyboards/handwired/dygma/raise/rules.mk
index 761e075500..ecf156629a 100644
--- a/keyboards/handwired/dygma/raise/rules.mk
+++ b/keyboards/handwired/dygma/raise/rules.mk
@@ -19,7 +19,7 @@ CUSTOM_MATRIX = lite
# alternate usb endpoints.
RAW_ENABLE = yes
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
SRC += matrix.c
DEFAULT_FOLDER = handwired/dygma/raise/ansi
diff --git a/keyboards/handwired/frenchdev/rules.mk b/keyboards/handwired/frenchdev/rules.mk
index c310966f1d..e226d0b517 100644
--- a/keyboards/handwired/frenchdev/rules.mk
+++ b/keyboards/handwired/frenchdev/rules.mk
@@ -13,5 +13,5 @@ AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no
# project specific files
-SRC = i2c_master.c \
- matrix.c
+SRC = matrix.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/handwired/lagrange/rules.mk b/keyboards/handwired/lagrange/rules.mk
index 61bfdfa4d3..f4af87851c 100644
--- a/keyboards/handwired/lagrange/rules.mk
+++ b/keyboards/handwired/lagrange/rules.mk
@@ -14,4 +14,5 @@ UNICODE_ENABLE = yes
SPLIT_KEYBOARD = yes
SPLIT_TRANSPORT = custom
-SRC += transport.c spi_master.c
+SRC += transport.c
+SPI_DRIVER_REQUIRED = yes
diff --git a/keyboards/handwired/lovelive9/keymaps/default/keymap.c b/keyboards/handwired/lovelive9/keymaps/default/keymap.c
index 605f722f44..6d863449fe 100644
--- a/keyboards/handwired/lovelive9/keymaps/default/keymap.c
+++ b/keyboards/handwired/lovelive9/keymaps/default/keymap.c
@@ -154,15 +154,15 @@ int aqours_color_v[] = {255, 255, 255, 255, 255, 255, 200, 255, 255};
void LED_default_set(void) {
- sethsv(aqours_color_h[2], aqours_color_s[2], aqours_color_v[2], (LED_TYPE *)&led[0]);
- sethsv(aqours_color_h[7], aqours_color_s[7], aqours_color_v[7], (LED_TYPE *)&led[1]);
- sethsv(aqours_color_h[1], aqours_color_s[1], aqours_color_v[1], (LED_TYPE *)&led[2]);
- sethsv(aqours_color_h[5], aqours_color_s[5], aqours_color_v[5], (LED_TYPE *)&led[3]);
- sethsv(aqours_color_h[8], aqours_color_s[8], aqours_color_v[8], (LED_TYPE *)&led[4]);
- sethsv(aqours_color_h[6], aqours_color_s[6], aqours_color_v[6], (LED_TYPE *)&led[5]);
- sethsv(aqours_color_h[0], aqours_color_s[0], aqours_color_v[0], (LED_TYPE *)&led[6]);
- sethsv(aqours_color_h[4], aqours_color_s[4], aqours_color_v[4], (LED_TYPE *)&led[7]);
- sethsv(aqours_color_h[3], aqours_color_s[3], aqours_color_v[3], (LED_TYPE *)&led[8]);
+ sethsv(aqours_color_h[2], aqours_color_s[2], aqours_color_v[2], (rgb_led_t *)&led[0]);
+ sethsv(aqours_color_h[7], aqours_color_s[7], aqours_color_v[7], (rgb_led_t *)&led[1]);
+ sethsv(aqours_color_h[1], aqours_color_s[1], aqours_color_v[1], (rgb_led_t *)&led[2]);
+ sethsv(aqours_color_h[5], aqours_color_s[5], aqours_color_v[5], (rgb_led_t *)&led[3]);
+ sethsv(aqours_color_h[8], aqours_color_s[8], aqours_color_v[8], (rgb_led_t *)&led[4]);
+ sethsv(aqours_color_h[6], aqours_color_s[6], aqours_color_v[6], (rgb_led_t *)&led[5]);
+ sethsv(aqours_color_h[0], aqours_color_s[0], aqours_color_v[0], (rgb_led_t *)&led[6]);
+ sethsv(aqours_color_h[4], aqours_color_s[4], aqours_color_v[4], (rgb_led_t *)&led[7]);
+ sethsv(aqours_color_h[3], aqours_color_s[3], aqours_color_v[3], (rgb_led_t *)&led[8]);
rgblight_set();
@@ -171,7 +171,7 @@ void LED_default_set(void) {
void LED_layer_set(int aqours_index) {
for (int c = 0; c < 9; c++) {
- sethsv(aqours_color_h[aqours_index], aqours_color_s[aqours_index], aqours_color_v[aqours_index], (LED_TYPE *)&led[c]);
+ sethsv(aqours_color_h[aqours_index], aqours_color_s[aqours_index], aqours_color_v[aqours_index], (rgb_led_t *)&led[c]);
}
rgblight_set();
}
diff --git a/keyboards/handwired/minorca/keymaps/ridingqwerty/config.h b/keyboards/handwired/minorca/keymaps/ridingqwerty/config.h
deleted file mode 100644
index c54aac3189..0000000000
--- a/keyboards/handwired/minorca/keymaps/ridingqwerty/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#pragma once
-
-#undef MATRIX_COL_PINS
-#define MATRIX_COL_PINS { B3, B7, D0, D1, D2, D3, C6, C7, B5, B6, F7, F6 }
-
-#undef MATRIX_ROW_PINS
-#define MATRIX_ROW_PINS { F0, F1, F4, F5 }
diff --git a/keyboards/handwired/minorca/keymaps/ridingqwerty/keymap.c b/keyboards/handwired/minorca/keymaps/ridingqwerty/keymap.c
deleted file mode 100644
index 26e6fc630c..0000000000
--- a/keyboards/handwired/minorca/keymaps/ridingqwerty/keymap.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Copyright 2019 George Koenig
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "ridingqwerty.h"
-
-/* MinOrca
- ┏━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┯━━━━━━━━┓
- ┃ ⎋ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ ❦ ⌫ ┃
- ┠────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────┨
- ┃ ¶ ⇥ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ 🔢 ↵ ┃
- ┠──────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬───────────┨
- ┃ " ⇧ │ Z │ X │ C │ V │ B │ N │ M │ , │ 𝔽 . │ ⇧ / ┃
- ┠──────────┬───┴──────┬─┴────────┼────────┴────────┴──┬─────┴────────┴─────┬──┴───────┬┴───────┬┴───────────┨
- ┃ { ⎈ │ [ ⌘ │ ( ⌥ │ 🔢 ␣ │ ★ ␣ │ ) ⌥ │ ] ⌘ │ } ⎈ ┃
- ┗━━━━━━━━━━┷━━━━━━━━━━┷━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━┷━━━━━━━━┷━━━━━━━━━━━━┛
-*/
-
-#define LAYOUT_minorca( \
- KA00, KA01, KA02, KA03, KA04, KA05, KA06, KA07, KA08, KA09, KA10, KA11, \
- KB00, KB01, KB02, KB03, KB04, KB05, KB06, KB07, KB08, KB09, KB11, \
- KC00, KC02, KC03, KC04, KC05, KC06, KC07, KC08, KC09, KC10, KC11, \
- KD00, KD02, KD03, KD04, KD07, KD09, KD10, KD11 \
-) { \
- { KA00, KA01, KA02, KA03, KA04, KA05, KA06, KA07, KA08, KA09, KA10, KA11 }, \
- { KB00, KB01, KB02, KB03, KB04, KB05, KB06, KB07, KB08, KB09, KC_NO, KB11 }, \
- { KC00, KC_NO, KC02, KC03, KC04, KC05, KC06, KC07, KC08, KC09, KC10, KC11 }, \
- { KD00, KC_NO, KD02, KD03, KD04, KC_NO, KC_NO, KD07, KC_NO, KD09, KD10, KD11 } \
-}
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = {
- {QK_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, SC(BSPC) },
- {ED(TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, XXXXXXX, NM(SCLN) },
- {LS(QUOT), XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, FK(DOT), RS(SLSH) },
- {LC(ESC), XXXXXXX, LG(LBRC), LA(RBRC), NM(BSPC), XXXXXXX, XXXXXXX, SM(SPC), XXXXXXX, RA(MINS), RG(EQL), RC(ENT) }
-/*
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
- //├────────┴────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┤
- //├─────────────────┼────────┼────────┼────────┴────────┼────────┴────────┼────────┴────────┼────────┼────────┤
- //└─────────────────┴────────┴────────┴─────────────────┴─────────────────┴─────────────────┴────────┴────────┘
-*/
-
-
- },
-#ifdef UNICODE_H
- [_RUNE] = {
- {KC_ESC, UM(INGWZ), UM(WUNJO), UM(EHWAZ), UM(RAIDO), UM(TIWAZ), UM(IWAZ), UM(UR), UM(ISAZ), UM(ETHEL), UM(PERTH), SC(BSPC) },
- {ED(TAB), UM(ANSUZ), UM(SOWIL), UM(DAGAZ), UM(FE), UM(GEBO), UM(HAGLZ), UM(JERAN), UM(KAUNA), UM(LAUKZ), XXXXXXX, NM(SCLN) },
- {MT_QUOT, XXXXXXX, UM(ALGIZ), UM(THURS), UM(KAUNA), UM(WUNJO), UM(BEORC), UM(NAUDZ), UM(MANNZ), KC_COMM, FK(DOT), RS(SLSH) },
- {LC(ESC), XXXXXXX, LG(LBRC), LA(RBRC), NM(BSPC), XXXXXXX, XXXXXXX, SM(SPC), XXXXXXX, RA(MINS), RG(EQL), RC(ENT) }
- },
-#endif
- [_EDITOR] = {
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
- {KC_GRV, _______, _______, KC_END, _______, KC_F5, _______, _______, KC_INS, _______, KC_PGUP, KC_DEL },
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
- {_______, KC_HOME, _______, KC_DEL, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_SCLN },
- //├────────┴────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┤
- {_______, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PGDN, _______, KC_SCLN, KC_QUOT, KC_BSLS },
- //├─────────────────┼────────┼────────┼────────┴────────┼────────┴────────┼────────┴────────┼────────┼────────┤
- {_______, XXXXXXX, _______, _______, KC_EQL, XXXXXXX, XXXXXXX, KC_MINS, XXXXXXX, KC_COLN, KC_DQUO, KC_PIPE }
- //└─────────────────┴────────┴────────┴─────────────────┴─────────────────┴─────────────────┴────────┴────────┘
- },
- [_NUMBER] = {
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
- {KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC },
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
- {_______, KC_4, KC_5, KC_6, KC_PAST, _______, KC_PPLS, KC_4, KC_5, KC_6, XXXXXXX, _______ },
- //├────────┴────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┤
- {_______, KC_7, KC_8, KC_9, KC_SLSH, _______, _______, KC_MINS, KC_1, KC_2, KC_3, _______ },
- //├─────────────────┼────────┼────────┼────────┴────────┼────────┴────────┼────────┴────────┼────────┼────────┤
- {_______, XXXXXXX, KC_0, _______, _______, XXXXXXX, XXXXXXX, KC_0, XXXXXXX, KC_DOT, _______, _______ }
- //└─────────────────┴────────┴────────┴─────────────────┴─────────────────┴─────────────────┴────────┴────────┘
- },
- [_SYMBOL] = {
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
- {KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL },
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
- {_______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, XXXXXXX, _______ },
- //├────────┴────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┤
- {_______, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, KC_SCLN, KC_QUOT, KC_BSLS },
- //├─────────────────┼────────┼────────┼────────┴────────┼────────┴────────┼────────┴────────┼────────┼────────┤
- {_______, XXXXXXX, _______, _______, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_COLN, KC_DQUO, KC_PIPE }
- //└─────────────────┴────────┴────────┴─────────────────┴─────────────────┴─────────────────┴────────┴────────┘
- },
- [_SECRET] = {
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
- {QK_BOOT, _______, _______, _______, SECRET0, SECRET1, _______, _______, _______, _______, VERSION, _______ },
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
- {_______, SECRET4, SECRET8, DB_TOGG, _______, _______, _______, _______, _______, SECRET7, XXXXXXX, MAKE },
- //├────────┴────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┤
- {_______, XXXXXXX, SECRET6, _______, SECRET2, SECRET5, _______, _______, SECRET3, _______, _______, _______ },
- //├─────────────────┼────────┼────────┼────────┴────────┼────────┴────────┼────────┴────────┼────────┼────────┤
- {_______, XXXXXXX, _______, _______, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, _______, _______, _______ }
- //└─────────────────┴────────┴────────┴─────────────────┴─────────────────┴─────────────────┴────────┴────────┘
- },
- [_F_KEYS] = {
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┐
- {KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11 },
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┤
- {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______ },
- //├────────┴────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┤
- {_______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
- //├─────────────────┼────────┼────────┼────────┴────────┼────────┴────────┼────────┴────────┼────────┼────────┤
- {_______, XXXXXXX, _______, _______, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, _______, _______, _______ }
- //└─────────────────┴────────┴────────┴─────────────────┴─────────────────┴─────────────────┴────────┴────────┘
- },
-};
diff --git a/keyboards/handwired/minorca/keymaps/ridingqwerty/readme.md b/keyboards/handwired/minorca/keymaps/ridingqwerty/readme.md
deleted file mode 100644
index 4f0b3564b9..0000000000
--- a/keyboards/handwired/minorca/keymaps/ridingqwerty/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# Handwire of Minorca using teensy 2.0
diff --git a/keyboards/handwired/minorca/keymaps/ridingqwerty/rules.mk b/keyboards/handwired/minorca/keymaps/ridingqwerty/rules.mk
deleted file mode 100644
index 10f2309f01..0000000000
--- a/keyboards/handwired/minorca/keymaps/ridingqwerty/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-UNICODEMAP_ENABLE = yes # Unicode Map
diff --git a/keyboards/handwired/onekey/kb2040/rules.mk b/keyboards/handwired/onekey/kb2040/rules.mk
index 0e5631b02b..dd68e9d3b0 100644
--- a/keyboards/handwired/onekey/kb2040/rules.mk
+++ b/keyboards/handwired/onekey/kb2040/rules.mk
@@ -1,3 +1 @@
OLED_ENABLE = yes
-
-OPT_DEFS += -DHAL_USE_I2C=TRUE
diff --git a/keyboards/handwired/onekey/keymaps/adc/rules.mk b/keyboards/handwired/onekey/keymaps/adc/rules.mk
index a691d5488f..8b36baccb0 100644
--- a/keyboards/handwired/onekey/keymaps/adc/rules.mk
+++ b/keyboards/handwired/onekey/keymaps/adc/rules.mk
@@ -1,3 +1,3 @@
-SRC += analog.c
-
CONSOLE_ENABLE = yes
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk b/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk
index 04498a8831..3dec5cef29 100644
--- a/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk
+++ b/keyboards/handwired/onekey/keymaps/i2c_scanner/rules.mk
@@ -1,3 +1,3 @@
CONSOLE_ENABLE = yes
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/handwired/onekey/nucleo_f446re/rules.mk b/keyboards/handwired/onekey/nucleo_f446re/rules.mk
index 8515c3fae0..e69de29bb2 100644
--- a/keyboards/handwired/onekey/nucleo_f446re/rules.mk
+++ b/keyboards/handwired/onekey/nucleo_f446re/rules.mk
@@ -1 +0,0 @@
-SRC += analog.c
diff --git a/keyboards/handwired/orbweaver/config.h b/keyboards/handwired/orbweaver/config.h
index ab7cb9d9d5..6a6670a6f6 100644
--- a/keyboards/handwired/orbweaver/config.h
+++ b/keyboards/handwired/orbweaver/config.h
@@ -17,8 +17,7 @@
#pragma once
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT 20
#define I2C1_CLOCK_SPEED 100000
#define RGB_MATRIX_CENTER { 40, 30 }
diff --git a/keyboards/handwired/orbweaver/orbweaver.c b/keyboards/handwired/orbweaver/orbweaver.c
index f6485b6adf..63778ea52b 100644
--- a/keyboards/handwired/orbweaver/orbweaver.c
+++ b/keyboards/handwired/orbweaver/orbweaver.c
@@ -22,7 +22,7 @@
#include "rgb_matrix.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/handwired/ortho5x13/keymaps/default/keymap.c b/keyboards/handwired/ortho5x13/keymaps/default/keymap.c
index ef975a215d..d725397199 100644
--- a/keyboards/handwired/ortho5x13/keymaps/default/keymap.c
+++ b/keyboards/handwired/ortho5x13/keymaps/default/keymap.c
@@ -163,20 +163,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_B5, 20},
- {NOTE_B6, 8},
- {NOTE_DS6, 20},
- {NOTE_B6, 8}
-};
+// float tone_startup[][2] = {
+// {NOTE_B5, 20},
+// {NOTE_B6, 8},
+// {NOTE_DS6, 20},
+// {NOTE_B6, 8}
+// };
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
@@ -247,36 +243,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
};
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/handwired/phantagom/baragon/info.json b/keyboards/handwired/phantagom/baragon/info.json
index f86dfcf436..390f114dd9 100644
--- a/keyboards/handwired/phantagom/baragon/info.json
+++ b/keyboards/handwired/phantagom/baragon/info.json
@@ -15,6 +15,7 @@
"encoder": true
},
"ws2812": {
+ "driver": "vendor",
"pin": "GP15"
},
"rgblight": {
diff --git a/keyboards/handwired/phantagom/baragon/rules.mk b/keyboards/handwired/phantagom/baragon/rules.mk
index bffd02535d..6e7633bfe0 100644
--- a/keyboards/handwired/phantagom/baragon/rules.mk
+++ b/keyboards/handwired/phantagom/baragon/rules.mk
@@ -1,2 +1 @@
-# Needed for RP2040
-WS2812_DRIVER = vendor \ No newline at end of file
+# This file intentionally left blank
diff --git a/keyboards/handwired/phantagom/varan/info.json b/keyboards/handwired/phantagom/varan/info.json
index 636c2d00e6..a767d45de0 100644
--- a/keyboards/handwired/phantagom/varan/info.json
+++ b/keyboards/handwired/phantagom/varan/info.json
@@ -14,6 +14,7 @@
"rgblight": true
},
"ws2812": {
+ "driver": "vendor",
"pin": "GP28"
},
"rgblight": {
diff --git a/keyboards/handwired/phantagom/varan/rules.mk b/keyboards/handwired/phantagom/varan/rules.mk
index bffd02535d..6e7633bfe0 100644
--- a/keyboards/handwired/phantagom/varan/rules.mk
+++ b/keyboards/handwired/phantagom/varan/rules.mk
@@ -1,2 +1 @@
-# Needed for RP2040
-WS2812_DRIVER = vendor \ No newline at end of file
+# This file intentionally left blank
diff --git a/keyboards/handwired/promethium/rgbsps.c b/keyboards/handwired/promethium/rgbsps.c
index f439876911..957726e775 100644
--- a/keyboards/handwired/promethium/rgbsps.c
+++ b/keyboards/handwired/promethium/rgbsps.c
@@ -1,7 +1,7 @@
#include "ws2812.h"
#include "rgbsps.h"
-cRGB led[RGBSPS_NUM];
+rgb_led_t led[RGBSPS_NUM];
void rgbsps_set(uint8_t index, uint8_t r, uint8_t g, uint8_t b) {
led[index].r = r;
diff --git a/keyboards/handwired/promethium/rules.mk b/keyboards/handwired/promethium/rules.mk
index 609c4d0e7e..d6b97ed810 100644
--- a/keyboards/handwired/promethium/rules.mk
+++ b/keyboards/handwired/promethium/rules.mk
@@ -18,10 +18,11 @@ PS2_ENABLE = yes
PS2_DRIVER = interrupt
CUSTOM_MATRIX = yes
BLUETOOTH_ENABLE = yes
+
WS2812_DRIVER_REQUIRED = yes
+ANALOG_DRIVER_REQUIRED = yes
SRC += rgbsps.c
-SRC += analog.c
SRC += matrix.c
LTO_ENABLE = yes
diff --git a/keyboards/handwired/pterodactyl/rules.mk b/keyboards/handwired/pterodactyl/rules.mk
index 9f0cabc750..108e1498a8 100644
--- a/keyboards/handwired/pterodactyl/rules.mk
+++ b/keyboards/handwired/pterodactyl/rules.mk
@@ -18,4 +18,4 @@ CUSTOM_MATRIX = yes
BLUETOOTH_ENABLE = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/handwired/rabijl/rotary_numpad/info.json b/keyboards/handwired/rabijl/rotary_numpad/info.json
new file mode 100644
index 0000000000..dafeec0fc0
--- /dev/null
+++ b/keyboards/handwired/rabijl/rotary_numpad/info.json
@@ -0,0 +1,66 @@
+{
+ "manufacturer": "rabijl",
+ "keyboard_name": "rotary_numpad",
+ "maintainer": "rabijl",
+ "url": "https://github.com/RABijl/",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x0000",
+ "vid": "0xFEED"
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "encoder": true
+ },
+ "development_board": "promicro",
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "cols": ["F5", "F4", "B5", "B4"],
+ "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
+ },
+ "encoder": {
+ "rotary": [
+ {"pin_a": "D1", "pin_b": "D0", "resolution": 3},
+ {"pin_a": "D4", "pin_b": "C6", "resolution": 3},
+ {"pin_a": "D7", "pin_b": "E6", "resolution": 3}
+ ]
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ {"matrix": [5, 0],"x":0, "y":0.4},
+ {"matrix": [0, 0], "x":2, "y":0},
+ {"matrix": [0, 1], "x":3, "y":0},
+ {"matrix": [0, 2], "x":4, "y":0},
+ {"matrix": [0, 3], "x":5, "y":0},
+ {"matrix": [1, 0], "x":2, "y":1.25},
+ {"matrix": [1, 1], "x":3, "y":1.25},
+ {"matrix": [1, 2], "x":4, "y":1.25},
+ {"matrix": [1, 3], "x":5, "y":1.25},
+ {"matrix": [2, 0], "x":2, "y":2.25},
+ {"matrix": [2, 1], "x":3, "y":2.25},
+ {"matrix": [2, 2], "x":4, "y":2.25},
+ {"matrix": [2, 3], "x":5, "y":2.25, "h":2},
+
+ {"matrix": [3, 3], "x":0, "y":2.75},
+ {"matrix": [3, 0], "x":2, "y":3.25},
+ {"matrix": [3, 1], "x":3, "y":3.25},
+ {"matrix": [3, 2], "x":4, "y":3.25},
+
+ {"matrix": [4, 0], "x":2, "y":4.25},
+ {"matrix": [4, 1], "x":3, "y":4.25},
+ {"matrix": [4, 2], "x":4, "y":4.25},
+ {"matrix": [4, 3], "x":5, "y":4.25, "h":2},
+
+ {"matrix": [5, 3], "x":0, "y":5.05},
+ {"matrix": [5, 1], "x":2, "y":5.25, "w":2},
+ {"matrix": [5, 2], "x":4, "y":5.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/handwired/rabijl/rotary_numpad/keymaps/default/keymap.c b/keyboards/handwired/rabijl/rotary_numpad/keymaps/default/keymap.c
new file mode 100644
index 0000000000..d4462243b0
--- /dev/null
+++ b/keyboards/handwired/rabijl/rotary_numpad/keymaps/default/keymap.c
@@ -0,0 +1,62 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+//
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┐┌───┬───┬───┬───┐
+ * │Ply││Esc│Tab│MO1│Bsp│
+ * └───┘├───┼───┼───┼───┤
+ * │Num│ / │ * │ - │
+ * ├───┼───┼───┼───┤
+ * │ 7 │ 8 │ 9 │ │
+ * ┌───┐├───┼───┼───┤ + │
+ * │Esc││ 4 │ 5 │ 6 │ │
+ * └───┘├───┼───┼───┼───┤
+ * │ 1 │ 2 │ 3 │ │
+ * ┌───┐├───┴───┼───┤Ent│
+ * │ENT││ 0 │ . │ │
+ * └───┘└───────┴───┴───┘
+ */
+ [0] = LAYOUT(
+ KC_MPLY, KC_ESC, KC_TAB, MO(1), KC_BSPC,
+ KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_P7, KC_P8, KC_P9, KC_PPLS,
+ KC_ESC, KC_P4, KC_P5, KC_P6,
+ KC_P1, KC_P2, KC_P3, KC_PENT,
+ KC_ENT, KC_P0, KC_PDOT
+ ),
+ /*
+ * ┌───┐┌───┬───┬───┬───┐
+ * │Ply││Rst│Tab│MO1│Bsp│
+ * └───┘├───┼───┼───┼───┤
+ * │Num│ / │ * │ - │
+ * ├───┼───┼───┼───┤
+ * │Hom│ ↑ │PgU│ │
+ * ┌───┐├───┼───┼───┤ + │
+ * │Esc││ ← │ │ → │ │
+ * └───┘├───┼───┼───┼───┤
+ * │End│ ↓ │PgD│ │
+ * ┌───┐├───┴───┼───┤Ent│
+ * │ENT││Insert │Del│ │
+ * └───┘└───────┴───┘───┘
+ */
+ [1] = LAYOUT(
+ _______, QK_BOOT, _______, _______, _______,
+ _______, _______, _______, _______,
+ KC_HOME, KC_UP, KC_PGUP, _______,
+ _______, KC_LEFT, KC_NO, KC_RGHT,
+ KC_END, KC_DOWN, KC_PGDN, _______,
+ _______, KC_INS, KC_DEL
+ )
+};
+
+#if defined(ENCODER_MAP_ENABLE)
+
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_DOWN, KC_UP), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT) },
+ [1] = { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT), ENCODER_CCW_CW(_______, _______) },
+};
+#endif
diff --git a/keyboards/handwired/rabijl/rotary_numpad/keymaps/default/rules.mk b/keyboards/handwired/rabijl/rotary_numpad/keymaps/default/rules.mk
new file mode 100644
index 0000000000..34789bf172
--- /dev/null
+++ b/keyboards/handwired/rabijl/rotary_numpad/keymaps/default/rules.mk
@@ -0,0 +1,2 @@
+
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/handwired/rabijl/rotary_numpad/readme.md b/keyboards/handwired/rabijl/rotary_numpad/readme.md
new file mode 100644
index 0000000000..6eb2e1480f
--- /dev/null
+++ b/keyboards/handwired/rabijl/rotary_numpad/readme.md
@@ -0,0 +1,67 @@
+# Rotary Numpad
+
+
+![rotary_numpad](https://i.imgur.com/GwEH4WOh.jpeg)
+
+This is a personal project of mine where I wanted a number pad that I can put on the left side of keyboard that doesn't have a numberpad. I fell in love with the feel of rotary encoders on my 3d printer, so added three to be able to play around with.
+
+* Keyboard Maintainer: [rabijl](https://github.com/rabijl)
+* Hardware Supported: Sparkfun Pro Micro 5V (atmega32u4)
+* Hardware Availability: https://www.sparkfun.com/products/12640
+
+## How to build from scratch
+
+I handsoldered gateron blue switches to a 3D printed case. The design is modified from the [Ultipad](https://www.thingiverse.com/thing:4248565). \
+I used a sparkfun Pro Micro as my microcontroller and the pinout can be found in the `info.json`. I found this [site](https://golem.hu/article/pro-micro-pinout/) \
+to be very useful to identify different pins. You can find useful information on rotary encoders from the qmk docs [here](https://docs.qmk.fm/#/reference_info_json?id=encoders) and [here](https://docs.qmk.fm/#/feature_encoders).
+
+### matrix
+
+Due to the three rotary encoders, I had to use most of the available pins. Fortunately, all the buttons still fit in a 6x4 matrix. Looking at the diagram below, the three buttons in the first column correspond to each encoder button.
+
+```
+ ┌──┐┌──┐┌──┐┌──┐
+ │0A││0B││0C││0D│
+┌──┐ └──┘└──┘└──┘└──┘
+│5A│
+└──┘ ┌──┐┌──┐┌──┐┌──┐
+ │1A││1B││1C││1D│
+ └──┘└──┘└──┘└──┘
+ ┌──┐┌──┐┌──┐┌──┐
+ │2A││2B││2C││2D│
+┌──┐ └──┘└──┘└──┘│ │
+│3D│ ┌──┐┌──┐┌──┐│ │
+└──┘ │3A││3B││3C││ │
+ └──┘└──┘└──┘└──┘
+ ┌──┐┌──┐┌──┐┌──┐
+ │4A││4B││4C││4D│
+ └──┘└──┘└──┘│ │
+┌──┐ ┌──────┐┌──┐│ │
+│5D│ │5B ││5C││ │
+└──┘ └──────┘└──┘└──┘
+
+```
+
+## Flashing
+
+Make example for this keyboard (after setting up your build environment):
+
+ qmk compile -kb handwired/rabijl/rotary_numpad -km default
+
+Flashing example for this keyboard:
+
+ qmk flash -kb handwired/rabijl/rotary_numpad -km default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Short reset leads**: tap the reset lead to ground twice quickly after qmk is in flash mode
+* **Keycode in layout**: double tap the key mapped to `QK_BOOT`. On the default keymap this can be found by holding in key (0,C) and tapping key (0,A), see the matrix section for the positions of these keys.
+* **Bootmagic reset**: Hold down the key at (0,A) in the matrix (see matrix section) and plug in the keyboard
+
+**Note:** if the keyboard doesn't show up after putting the keyboard in reset mode, check that
+your user is added to the `tty` and/or `uucp` groups. \
+You may need to logout after adding these groups to your user, for the changes to take affect.
diff --git a/keyboards/handwired/rabijl/rotary_numpad/rules.mk b/keyboards/handwired/rabijl/rotary_numpad/rules.mk
new file mode 100644
index 0000000000..1287472e49
--- /dev/null
+++ b/keyboards/handwired/rabijl/rotary_numpad/rules.mk
@@ -0,0 +1 @@
+# file intentionally left blank
diff --git a/keyboards/handwired/reclined/keymaps/pdl/config.h b/keyboards/handwired/reclined/keymaps/pdl/config.h
deleted file mode 100644
index 3a89a0a4d2..0000000000
--- a/keyboards/handwired/reclined/keymaps/pdl/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define TAPPING_TERM 200
diff --git a/keyboards/handwired/reclined/keymaps/pdl/keymap.c b/keyboards/handwired/reclined/keymaps/pdl/keymap.c
deleted file mode 100644
index bb6976de9b..0000000000
--- a/keyboards/handwired/reclined/keymaps/pdl/keymap.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
-This is the keymap for the reclined keyboard
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-Copyright 2018 Daniel Perrett
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "pdl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- MY_SESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO,
- MY_CBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, MY_SQUO,
- KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT
- ),
- [_PROXIM] = LAYOUT_wrapper(
- MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC,
- KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL,
- MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, MY_SENT,
- KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT
- ),
- [_NAVIGN] = LAYOUT_wrapper(
- _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_PUNCTN] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_NUMBRS] = LAYOUT_wrapper(
- _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_CODING] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FUNCTN] = LAYOUT_wrapper(
- _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD,
- _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR,
- _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/keymap.c
deleted file mode 100644
index f65f6aa17a..0000000000
--- a/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap dance declarations
-enum {
- TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI,
- TD_ESC_LCTL_LALT_WINDOWS_EMOJI
-};
-
-// Custom tapping term for multi function keys
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI) :
- case TD(TD_ESC_LCTL_LALT_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Begin quad TD
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_DOUBLE_HOLD,
- TD_TRIPLE_HOLD,
- TD_SINGLE_TAP,
- TD_DOUBLE_TAP,
- TD_TRIPLE_TAP
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Create an instance of 'td_tap_t' for the 'x' tap dance.
-static td_tap_t xtap_state = {
- .is_press_action = true,
- .state = TD_NONE
-};
-
-td_state_t cur_dance(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return TD_SINGLE_TAP;
- } else {
- return TD_SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- if (state->interrupted || !state->pressed) {
- return TD_DOUBLE_TAP;
- } else {
- return TD_DOUBLE_HOLD;
- }
- } else if (state->count == 3) {
- if (state->interrupted || !state->pressed) {
- return TD_TRIPLE_TAP;
- } else {
- return TD_TRIPLE_HOLD;
- }
- }
-
- return TD_UNKNOWN;
-}
-
-void td_esc_lalt_lctl_spotlight_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: tap_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_TAP: tap_code16(G(KC_SPC)); break;
- case TD_TRIPLE_TAP: tap_code16(C(G(KC_SPC))); break;
- default: break;
- }
-}
-
-void td_esc_lalt_lctl_spotlight_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LALT); break;
- case TD_DOUBLE_HOLD: unregister_code(KC_LCTL); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
-void td_esc_lctl_lalt_windows_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: tap_code16(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_TAP: tap_code(KC_LGUI); break;
- case TD_TRIPLE_TAP: tap_code16(G(KC_DOT)); break;
- default: break;
- }
-}
-
-void td_esc_lctl_lalt_windows_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;
- case TD_DOUBLE_HOLD: unregister_code(KC_LALT); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_esc_lalt_lctl_spotlight_emoji_finished, td_esc_lalt_lctl_spotlight_emoji_reset),
- [TD_ESC_LCTL_LALT_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_esc_lctl_lalt_windows_emoji_finished, td_esc_lctl_lalt_windows_emoji_reset)
-};
-// For the x tap dance. Put it here so it can be used in any keymap
-void x_finished(tap_dance_state_t *state, void *user_data);
-void x_reset(tap_dance_state_t *state, void *user_data);
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_split_3x5_2(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI), LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT)
- ),
- [1] = LAYOUT_split_3x5_2(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [2] = LAYOUT_split_3x5_2(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [3] = LAYOUT_split_3x5_2(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0), TO(5), TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [4] = LAYOUT_split_3x5_2(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_ESC_LCTL_LALT_WINDOWS_EMOJI), KC_SPC, LT(6, KC_TAB), LT(7, KC_ENT)
- ),
- [5] = LAYOUT_split_3x5_2(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, KC_SLSH,
- KC_LCTL, KC_SPC, LT(6, KC_TAB), LT(7, KC_ENT)
- ),
- [6] = LAYOUT_split_3x5_2(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [7] = LAYOUT_split_3x5_2(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(8), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [8] = LAYOUT_split_3x5_2(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4), TO(5), TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-}; \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scotto34/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/keymap.c
deleted file mode 100644
index 293082af66..0000000000
--- a/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,281 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include <stdio.h>
-char wpm_str[10];
-
-// Tap Dance declarations
-enum {
- TD_ESC_SPOTLIGHT_EMOJI,
- TD_ESC_WINDOWS_EMOJI
-};
-
-void td_esc_spotlight_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code16(G(KC_SPC));
- } else if (state->count == 3) {
- tap_code16(C(G(KC_SPC)));
- }
-}
-
-void td_esc_windows_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code(KC_LGUI);
- } else if (state->count == 3) {
- tap_code16(G(KC_DOT));
- }
-};
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_spotlight_emoji),
- [TD_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_windows_emoji)
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Layer Names
-enum layer_names {
- _MAC_DEFAULT,
- _MAC_CODE,
- _MAC_NUM,
- _MAC_FUNC,
- _WIN_DEFAULT,
- _WIN_CODE,
- _WIN_NUM,
- _WIN_FUNC
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [1] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [2] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [3] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [4] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [5] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE,KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_LALT, KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [6] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_LALT, KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [7] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_LALT, KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_ESC_WINDOWS_EMOJI)
- )
-};
-
-// OLED
-#ifdef OLED_ENABLE
-// WPM responsiveness
-#define IDLE_FRAMES 5
-#define IDLE_SPEED 20 // Speed at which animation goes into idle
-#define TAP_FRAMES 2
-#define TAP_SPEED 40 // WPM to trigger Bongo
-#define ANIM_FRAME_DURATION 200 // Frame MS
-#define ANIM_SIZE 636 // Number of bytes in array, max 1024
-
-uint32_t anim_timer = 0;
-uint32_t anim_sleep = 0;
-uint8_t current_idle_frame = 0;
-uint8_t current_tap_frame = 0;
-
-static void render_animation(void) {
- static const char PROGMEM idle[IDLE_FRAMES][ANIM_SIZE] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x18, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x86, 0x86, 0x40, 0x40, 0x40, 0x40, 0x21, 0x22, 0x22, 0x20, 0x11, 0x11, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x82, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x60, 0x60, 0x00, 0x01, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x86, 0x86, 0x40, 0x40, 0x40, 0x40, 0x21, 0x22, 0x22, 0x20, 0x11, 0x11, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x34, 0xc4, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x18, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0d, 0x31, 0xc1, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}};
- static const char PROGMEM prep[][ANIM_SIZE] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x84, 0x44, 0x44, 0x42, 0x82, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x64, 0x18, 0x04, 0x12, 0xc2, 0xca, 0x24, 0x88, 0xf0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x0c, 0x03, 0x00, 0x02, 0x18, 0x19, 0x00, 0x05, 0xfe, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}};
- static const char PROGMEM tap[TAP_FRAMES][ANIM_SIZE] = {
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x64, 0x18, 0x04, 0x12, 0xc2, 0xca, 0x24, 0x88, 0xf0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x98, 0xc0, 0x88, 0x88, 0x8c, 0x9c, 0x1c, 0x1e, 0x0e, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x84, 0x44, 0x44, 0x42, 0x82, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x0c, 0x03, 0x00, 0x02, 0x18, 0x19, 0x00, 0x05, 0xfe, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x61, 0xf0, 0xf8, 0xfc, 0x60, 0x01, 0x01, 0x01, 0x3c, 0x78, 0xf8, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- };
-
- void animation_phase(void) {
- if (get_current_wpm() <= IDLE_SPEED) {
- current_idle_frame = (current_idle_frame + 1) % IDLE_FRAMES;
- oled_write_raw_P(idle[abs((IDLE_FRAMES - 1) - current_idle_frame)], ANIM_SIZE);
- }
-
- if (get_current_wpm() > IDLE_SPEED && get_current_wpm() < TAP_SPEED) {
- oled_write_raw_P(prep[0], ANIM_SIZE);
- }
-
- if (get_current_wpm() >= TAP_SPEED) {
- current_tap_frame = (current_tap_frame + 1) % TAP_FRAMES;
- oled_write_raw_P(tap[abs((TAP_FRAMES - 1) - current_tap_frame)], ANIM_SIZE);
- }
- }
- if (get_current_wpm() != 000) {
- oled_on(); // Enables OLED on any alpha keypress
-
- if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase();
- }
-
- anim_sleep = timer_read32();
- } else {
- if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) {
- oled_off();
- } else {
- if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase();
- }
- }
- }
-}
-
-// Draw to OLED
-bool oled_task_user(void) {
- // Render Bongo Cat
- render_animation();
-
- // WPM text
- oled_set_cursor(0, 0);
- sprintf(wpm_str, "%03d", get_current_wpm()); // %03d defines digits to display
- oled_write(wpm_str, false);
-
- // Layer text
- oled_set_cursor(0, 1);
- switch (get_highest_layer(layer_state)) {
- case _MAC_DEFAULT :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("MAIN"), false);
- break;
- case _MAC_CODE :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("CODE"), false);
- break;
- case _MAC_NUM :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("NUM"), false);
- break;
- case _MAC_FUNC :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("FUNC"), false);
- break;
- case _WIN_DEFAULT :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("MAIN"), false);
- break;
- case _WIN_CODE :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("CODE"), false);
- break;
- case _WIN_NUM :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("NUM"), false);
- break;
- case _WIN_FUNC :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 2);
- oled_write_P(PSTR("FUNC"), false);
- break;
- }
-
- // Caps lock text
- led_t led_state = host_keyboard_led_state();
- oled_set_cursor(0, 3);
- oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(""), false);
-
- return false;
-}
-#endif
-
diff --git a/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/rules.mk
deleted file mode 100644
index 6e339da6c6..0000000000
--- a/keyboards/handwired/scottokeebs/scotto36/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-OLED_ENABLE = yes
-WPM_ENABLE = yes
-LTO_ENABLE = yes
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/keymap.c
deleted file mode 100644
index ba5f7bc7a8..0000000000
--- a/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap Dance declarations
-enum {
- TD_ESC_SPOTLIGHT_EMOJI,
- TD_ESC_WINDOWS_EMOJI
-};
-
-void td_esc_spotlight_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code16(G(KC_SPC));
- } else if (state->count == 3) {
- tap_code16(C(G(KC_SPC)));
- }
-}
-
-void td_esc_windows_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code(KC_LGUI);
- } else if (state->count == 3) {
- tap_code16(G(KC_DOT));
- }
-};
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_spotlight_emoji),
- [TD_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_windows_emoji)
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_ortho_3x10_7(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [1] = LAYOUT_ortho_3x10_7(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [2] = LAYOUT_ortho_3x10_7(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [3] = LAYOUT_ortho_3x10_7(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [4] = LAYOUT_ortho_3x10_7(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [5] = LAYOUT_ortho_3x10_7(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [6] = LAYOUT_ortho_3x10_7(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [7] = LAYOUT_ortho_3x10_7(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_ESC_WINDOWS_EMOJI)
- )
-};
diff --git a/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scotto40/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/keymap.c
deleted file mode 100644
index dfe688267e..0000000000
--- a/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap dance declarations
-enum {
- TD_LCTL_ESC_SPOTLIGHT_EMOJI,
- TD_LALT_ESC_WINDOWS_EMOJI
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_LALT_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Begin quad TD
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_SINGLE_TAP,
- TD_DOUBLE_TAP,
- TD_TRIPLE_TAP
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Create an instance of 'td_tap_t' for the 'x' tap dance.
-static td_tap_t xtap_state = {
- .is_press_action = true,
- .state = TD_NONE
-};
-
-td_state_t cur_dance(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return TD_SINGLE_TAP;
- } else {
- return TD_SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- return TD_DOUBLE_TAP;
- } else if (state->count == 3) {
- return TD_TRIPLE_TAP;
- }
-
- return TD_UNKNOWN;
-}
-
-void td_lctl_esc_spotlight_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_TAP: tap_code16(G(KC_SPC)); break;
- case TD_TRIPLE_TAP: tap_code16(C(G(KC_SPC))); break;
- default: break;
- }
-}
-
-void td_lctl_esc_spotlight_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
-void td_lalt_esc_windowr_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_TAP: tap_code(KC_LGUI); break;
- case TD_TRIPLE_TAP: tap_code16(G(KC_DOT)); break;
- default: break;
- }
-}
-
-void td_lalt_esc_windowr_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LALT); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LCTL_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lctl_esc_spotlight_emoji_finished, td_lctl_esc_spotlight_emoji_reset),
- [TD_LALT_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lalt_esc_windowr_emoji_finished, td_lalt_esc_windowr_emoji_reset),
-};
-// For the x tap dance. Put it here so it can be used in any keymap
-void x_finished(tap_dance_state_t *state, void *user_data);
-void x_reset(tap_dance_state_t *state, void *user_data);
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_ortho_3x10_5(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT)
- ),
- [1] = LAYOUT_ortho_3x10_5(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS
- ),
- [2] = LAYOUT_ortho_3x10_5(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS
- ),
- [3] = LAYOUT_ortho_3x10_5(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS
- ),
- [4] = LAYOUT_ortho_3x10_5(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT)
- ),
- [5] = LAYOUT_ortho_3x10_5(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT)
- ),
- [6] = LAYOUT_ortho_3x10_5(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT)
- ),
- [7] = LAYOUT_ortho_3x10_5(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT)
- )
-}; \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scottoalp/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/keymap.c
deleted file mode 100644
index c196c3b1e9..0000000000
--- a/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,511 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include <stdio.h>
-char wpm_str[10];
-
-// Tap Dance declarations
-enum {
- TD_ESC_SPOTLIGHT_EMOJI,
- TD_ESC_WINDOWS_EMOJI
-};
-
-void td_esc_spotlight_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code16(G(KC_SPC));
- } else if (state->count == 3) {
- tap_code16(C(G(KC_SPC)));
- }
-}
-
-void td_esc_windows_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code(KC_LGUI);
- } else if (state->count == 3) {
- tap_code16(G(KC_DOT));
- }
-};
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_spotlight_emoji),
- [TD_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_windows_emoji)
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Layer Names
-enum layer_names {
- _MAC_DEFAULT,
- _MAC_CODE,
- _MAC_NUM,
- _MAC_FUNC,
- _WIN_DEFAULT,
- _WIN_CODE,
- _WIN_NUM,
- _WIN_FUNC
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_ortho_4_3x10_4(
- KC_LCTL, KC_2, KC_3, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_ENT, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT)
- ),
- [1] = LAYOUT_ortho_4_3x10_4(
- KC_LCTL, KC_2, KC_3, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_TAB, KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_ENT, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS
- ),
- [2] = LAYOUT_ortho_4_3x10_4(
- KC_LCTL, KC_2, KC_3, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_ENT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS
- ),
- [3] = LAYOUT_ortho_4_3x10_4(
- KC_LCTL, KC_2, KC_3, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_ENT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS
- ),
- [4] = LAYOUT_ortho_4_3x10_4(
- KC_1, KC_2, KC_3, TD(TD_ESC_WINDOWS_EMOJI),
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_ENT, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT)
- ),
- [5] = LAYOUT_ortho_4_3x10_4(
- KC_1, KC_2, KC_3, TD(TD_ESC_WINDOWS_EMOJI),
- KC_TAB, KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_ENT, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS
- ),
- [6] = LAYOUT_ortho_4_3x10_4(
- KC_1, KC_2, KC_3, TD(TD_ESC_WINDOWS_EMOJI),
- KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_ENT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS
- ),
- [7] = LAYOUT_ortho_4_3x10_4(
- KC_1, KC_2, KC_3, TD(TD_ESC_WINDOWS_EMOJI),
- KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_ENT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS
- )
-};
-
-// OLED
-#ifdef OLED_ENABLE
-// WPM responsiveness
-#define IDLE_FRAMES 5 // How many idle frames in animation
-#define IDLE_SPEED 20 // Speed at which animation idles
-#define TAP_FRAMES 2 // How many tapping frames
-#define TAP_SPEED 40 // WPM to trigger Bongo
-#define ANIMATION_FRAME_DURATION 200 // MS duration of each frame
-#define ANIMATION_SIZE 256 // Number of bytes per animation frame
-
-uint32_t anim_timer = 0;
-uint32_t anim_sleep = 0;
-uint8_t current_idle_frame = 0;
-uint8_t current_tap_frame = 0;
-
-static void render_animation(void) {
- static const char PROGMEM idle[IDLE_FRAMES][ANIMATION_SIZE] = {
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x18,
- 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0d, 0x31, 0xc1, 0x01, 0x01, 0x01, 0x02, 0x02,
- 0x02, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
- 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04,
- 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21,
- 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08,
- 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x10,
- 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x34, 0xc4, 0x04, 0x04, 0x04, 0x08, 0x08,
- 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
- 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04,
- 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21,
- 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08,
- 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x10,
- 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x82, 0x02, 0x02, 0x04, 0x04, 0x08,
- 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x60, 0x60, 0x00, 0x01, 0x01, 0x02, 0x04, 0x04, 0x08,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x86, 0x86, 0x40, 0x40, 0x40, 0x40, 0x21, 0x22,
- 0x22, 0x20, 0x11, 0x11, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08,
- 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x10, 0x08,
- 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04,
- 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x86, 0x86, 0x40, 0x40, 0x40, 0x40, 0x21, 0x22,
- 0x22, 0x20, 0x11, 0x11, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08,
- 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x18,
- 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04,
- 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
- 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04,
- 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21,
- 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08,
- 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- }
- };
- static const char PROGMEM prep[][ANIMATION_SIZE] = {
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10,
- 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04,
- 0x84, 0x44, 0x44, 0x42, 0x82, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
- 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x64,
- 0x18, 0x04, 0x12, 0xc2, 0xca, 0x24, 0x88, 0xf0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x0c, 0x03,
- 0x00, 0x02, 0x18, 0x19, 0x00, 0x05, 0xfe, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21,
- 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02,
- 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02,
- 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- }
- };
- static const char PROGMEM tap[TAP_FRAMES][ANIMATION_SIZE] = {
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10,
- 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04,
- 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
- 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x64,
- 0x18, 0x04, 0x12, 0xc2, 0xca, 0x24, 0x88, 0xf0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21,
- 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02,
- 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04,
- 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x98, 0xc0, 0x88, 0x88, 0x8c, 0x9c,
- 0x1c, 0x1e, 0x0e, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10,
- 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04,
- 0x84, 0x44, 0x44, 0x42, 0x82, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
- 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04,
- 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x0c, 0x03,
- 0x00, 0x02, 0x18, 0x19, 0x00, 0x05, 0xfe, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21,
- 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08,
- 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02,
- 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x61,
- 0xf0, 0xf8, 0xfc, 0x60, 0x01, 0x01, 0x01, 0x3c, 0x78, 0xf8, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00
- }
- };
-
- void animation_phase(void) {
- // Set cursor to draw from the bottom up
- oled_set_cursor(128, 0);
-
- if (get_current_wpm() <= IDLE_SPEED) {
- current_idle_frame = (current_idle_frame + 1) % IDLE_FRAMES;
- oled_write_raw_P(idle[abs((IDLE_FRAMES - 1) - current_idle_frame)], ANIMATION_SIZE);
- }
-
- // Start prep image
- if (get_current_wpm() > IDLE_SPEED && get_current_wpm() < TAP_SPEED) {
- oled_write_raw_P(prep[0], ANIMATION_SIZE);
- }
-
- // Start tap animation
- if (get_current_wpm() >= TAP_SPEED) {
- current_tap_frame = (current_tap_frame + 1) % TAP_FRAMES;
- oled_write_raw_P(tap[abs((TAP_FRAMES - 1) - current_tap_frame)], ANIMATION_SIZE);
- }
- }
- if (get_current_wpm() != 000) {
- oled_on(); // Enables OLED on any alpha keypress
-
- if (timer_elapsed32(anim_timer) > ANIMATION_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase();
- }
-
- anim_sleep = timer_read32();
- } else {
- if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) {
- oled_off();
- } else {
- if (timer_elapsed32(anim_timer) > ANIMATION_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase();
- }
- }
- }
-}
-
-// Draw to OLED
-bool oled_task_user(void) {
- // Caps lock text
- led_t led_state = host_keyboard_led_state();
- oled_set_cursor(0,1);
- oled_write_P(led_state.caps_lock ? PSTR(" Caps Lock "): PSTR(" ScottoCMD "), false);
-
- //WPM text
- oled_set_cursor(0, 9);
- oled_write(get_u8_str(get_current_wpm(), '0'), false);
- oled_write_P(PSTR(" WPM"), false);
-
- static const char PROGMEM logos[][256] = {
- // Apple
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x70, 0x78, 0x7c, 0x3e, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe,
- 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3e, 0x0e, 0x04, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x1f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f,
- 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-
- },
-
- // Windows
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc,
- 0xf8, 0xf8, 0x00, 0x80, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0x40,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xb8, 0x9f, 0x9f, 0x9f, 0x9f, 0x8f, 0x9f, 0x9f, 0x9f, 0x1f, 0x3f, 0x3f,
- 0x07, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x03, 0xe0,
- 0xfc, 0xfc, 0xf9, 0xf9, 0xf9, 0xf3, 0xf3, 0xf3, 0xfb, 0xfb, 0xf9, 0x19, 0x01, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x02, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x01, 0x00, 0x1e, 0x1f,
- 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-
- },
-
- // Code
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x80, 0xc0, 0xe0, 0xf0, 0x78, 0x3c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0,
- 0xf8, 0xfc, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x3c, 0x78, 0xf0, 0xe0, 0xc0, 0x80,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x01, 0x03, 0x07, 0x0f, 0x3e, 0x3c, 0x38, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0x7e, 0x1f, 0x07,
- 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x3c, 0x3e, 0x0f, 0x07, 0x03, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
-
- // Number
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x1f,
- 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1e, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1e,
- 0x1e, 0x1e, 0xbe, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1e, 0x1e, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x78, 0x78, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x78, 0x78,
- 0x78, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x78, 0x78, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00,
- 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-
- },
-
- // Function
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0,
- 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0x9f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x8f, 0x3f,
- 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xfc, 0xfe, 0x7f, 0x3f, 0x0f,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3e,
- 0x1e, 0x0c, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x78, 0xfc, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- },
-
- // Caps Lock
- {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
- 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
- 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- }
- };
-
- // Layer images
- oled_set_cursor(32, 0);
- switch (get_highest_layer(layer_state)) {
- case _MAC_DEFAULT :
- oled_write_raw_P(logos[0], sizeof(logos[0]));
- break;
- case _WIN_DEFAULT :
- oled_write_raw_P(logos[1], sizeof(logos[1]));
- break;
- case _MAC_CODE :
- case _WIN_CODE :
- oled_write_raw_P(logos[2], sizeof(logos[2]));
- break;
- case _MAC_NUM :
- case _WIN_NUM :
- oled_write_raw_P(logos[3], sizeof(logos[3]));
- break;
- case _MAC_FUNC :
- case _WIN_FUNC :
- oled_write_raw_P(logos[4], sizeof(logos[4]));
- break;
- }
-
- // Render Bongo Cat
- render_animation();
-
- return false;
-}
-#endif
diff --git a/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/rules.mk
deleted file mode 100644
index bcee933e75..0000000000
--- a/keyboards/handwired/scottokeebs/scottocmd/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-WPM_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/keymap.c
deleted file mode 100644
index f4d0a0c7bb..0000000000
--- a/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap dance declarations
-enum {
- TD_LCTL_ESC_SPOTLIGHT_EMOJI,
- TD_LALT_ESC_WINDOWS_EMOJI
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_LALT_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Begin quad TD
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_SINGLE_TAP,
- TD_DOUBLE_TAP,
- TD_TRIPLE_TAP
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Create an instance of 'td_tap_t' for the 'x' tap dance.
-static td_tap_t xtap_state = {
- .is_press_action = true,
- .state = TD_NONE
-};
-
-td_state_t cur_dance(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return TD_SINGLE_TAP;
- } else {
- return TD_SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- return TD_DOUBLE_TAP;
- } else if (state->count == 3) {
- return TD_TRIPLE_TAP;
- }
-
- return TD_UNKNOWN;
-}
-
-void td_lctl_esc_spotlight_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_TAP: tap_code16(G(KC_SPC)); break;
- case TD_TRIPLE_TAP: tap_code16(C(G(KC_SPC))); break;
- default: break;
- }
-}
-
-void td_lctl_esc_spotlight_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
-void td_lalt_esc_windowr_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_TAP: tap_code(KC_LGUI); break;
- case TD_TRIPLE_TAP: tap_code16(G(KC_DOT)); break;
- default: break;
- }
-}
-
-void td_lalt_esc_windowr_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LALT); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LCTL_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lctl_esc_spotlight_emoji_finished, td_lctl_esc_spotlight_emoji_reset),
- [TD_LALT_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lalt_esc_windowr_emoji_finished, td_lalt_esc_windowr_emoji_reset),
-};
-// For the x tap dance. Put it here so it can be used in any keymap
-void x_finished(tap_dance_state_t *state, void *user_data);
-void x_reset(tap_dance_state_t *state, void *user_data);
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [1] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [2] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [3] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [4] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [5] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [6] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [7] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- )
-}; \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scottoergo/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/keymap.c
deleted file mode 100644
index 09fdf5dd9a..0000000000
--- a/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,289 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include <stdio.h>
-
-// Tap Dance declarations
-enum {
- TD_ESC_SPOTLIGHT_EMOJI,
- TD_ESC_WINDOWS_EMOJI
-};
-
-void td_esc_spotlight_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code16(G(KC_SPC));
- } else if (state->count == 3) {
- tap_code16(C(G(KC_SPC)));
- }
-}
-
-void td_esc_windows_emoji (tap_dance_state_t *state, void *user_data) {
- if (state->count == 1) {
- tap_code(KC_ESC);
- } else if (state->count == 2) {
- tap_code(KC_LGUI);
- } else if (state->count == 3) {
- tap_code16(G(KC_DOT));
- }
-};
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_spotlight_emoji),
- [TD_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN(td_esc_windows_emoji)
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Layer Names
-enum layer_names {
- _MAC_DEFAULT,
- _MAC_CODE,
- _MAC_NUM,
- _MAC_FUNC,
- _WIN_DEFAULT,
- _WIN_CODE,
- _WIN_NUM,
- _WIN_FUNC
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [1] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [2] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [3] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_SPOTLIGHT_EMOJI),
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_ESC_SPOTLIGHT_EMOJI)
- ),
- [4] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_WINDOWS_EMOJI),
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [5] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_WINDOWS_EMOJI),
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_LALT, KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [6] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_WINDOWS_EMOJI),
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_LALT, KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_ESC_WINDOWS_EMOJI)
- ),
- [7] = LAYOUT_ortho_6_3x10_6(
- KC_1, KC_2, KC_3, KC_4, KC_5, TD(TD_ESC_WINDOWS_EMOJI),
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_LALT, KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_ESC_WINDOWS_EMOJI)
- )
-};
-
-#ifdef OLED_ENABLE
-// WPM responsiveness
-#define IDLE_FRAMES 5
-#define IDLE_SPEED 20 // Speed at which animation goes into idle
-#define TAP_FRAMES 2
-#define TAP_SPEED 40 // WPM to trigger Bongo
-#define ANIM_FRAME_DURATION 200 // Frame MS
-#define ANIM_SIZE 636 // Number of bytes in array, max 1024
-
-uint32_t anim_timer = 0;
-uint32_t anim_sleep = 0;
-uint8_t current_idle_frame = 0;
-uint8_t current_tap_frame = 0;
-
-static void render_animation(void) {
- static const char PROGMEM idle[IDLE_FRAMES][ANIM_SIZE] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x18, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x86, 0x86, 0x40, 0x40, 0x40, 0x40, 0x21, 0x22, 0x22, 0x20, 0x11, 0x11, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x82, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x60, 0x60, 0x00, 0x01, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x86, 0x86, 0x40, 0x40, 0x40, 0x40, 0x21, 0x22, 0x22, 0x20, 0x11, 0x11, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x34, 0xc4, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x18, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0d, 0x31, 0xc1, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x04, 0x04, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}};
- static const char PROGMEM prep[][ANIM_SIZE] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x84, 0x44, 0x44, 0x42, 0x82, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x64, 0x18, 0x04, 0x12, 0xc2, 0xca, 0x24, 0x88, 0xf0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x0c, 0x03, 0x00, 0x02, 0x18, 0x19, 0x00, 0x05, 0xfe, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}};
- static const char PROGMEM tap[TAP_FRAMES][ANIM_SIZE] = {
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x64, 0x18, 0x04, 0x12, 0xc2, 0xca, 0x24, 0x88, 0xf0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x41, 0x42, 0x24, 0x98, 0xc0, 0x88, 0x88, 0x8c, 0x9c, 0x1c, 0x1e, 0x0e, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc1, 0x01, 0x01, 0x02, 0x02, 0x04, 0x84, 0x44, 0x44, 0x42, 0x82, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x80, 0x80, 0x40, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x06, 0x01, 0x00, 0x00, 0x0c, 0x03, 0x00, 0x02, 0x18, 0x19, 0x00, 0x05, 0xfe, 0x80, 0x83, 0x83, 0x40, 0x40, 0x40, 0x40, 0x20, 0x21, 0x21, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x01, 0x86, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x0f, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x61, 0xf0, 0xf8, 0xfc, 0x60, 0x01, 0x01, 0x01, 0x3c, 0x78, 0xf8, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- };
-
- void animation_phase(void) {
- if (get_current_wpm() <= IDLE_SPEED) {
- current_idle_frame = (current_idle_frame + 1) % IDLE_FRAMES;
- oled_write_raw_P(idle[abs((IDLE_FRAMES - 1) - current_idle_frame)], ANIM_SIZE);
- }
-
- if (get_current_wpm() > IDLE_SPEED && get_current_wpm() < TAP_SPEED) {
- oled_write_raw_P(prep[0], ANIM_SIZE);
- }
-
- if (get_current_wpm() >= TAP_SPEED) {
- current_tap_frame = (current_tap_frame + 1) % TAP_FRAMES;
- oled_write_raw_P(tap[abs((TAP_FRAMES - 1) - current_tap_frame)], ANIM_SIZE);
- }
- }
- if (get_current_wpm() != 000) {
- oled_on(); // Enables OLED on any alpha keypress
-
- if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase();
- }
-
- anim_sleep = timer_read32();
- } else {
- if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) {
- oled_off();
- } else {
- if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase();
- }
- }
- }
-}
-
-// Draw to OLED
-bool oled_task_user() {
- oled_set_cursor(0, 0);
- oled_write(" ScottoGame ", false);
-
- // Render Bongo Cat
- oled_set_cursor(86, 0);
- render_animation();
-
- // WPM text
- oled_set_cursor(0,5);
- oled_write(get_u8_str(get_current_wpm(), '0'), false);
-
- // Layer text
- oled_set_cursor(0, 6);
- switch (get_highest_layer(layer_state)) {
- case _MAC_DEFAULT :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("MAIN"), false);
- break;
- case _MAC_CODE :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("CODE"), false);
- break;
- case _MAC_NUM :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("NUM"), false);
- break;
- case _MAC_FUNC :
- oled_write_P(PSTR("MAC"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("FUNC"), false);
- break;
- case _WIN_DEFAULT :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("MAIN"), false);
- break;
- case _WIN_CODE :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("CODE"), false);
- break;
- case _WIN_NUM :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("NUM"), false);
- break;
- case _WIN_FUNC :
- oled_write_P(PSTR("WIN"), false);
- oled_set_cursor(0, 7);
- oled_write_P(PSTR("FUNC"), false);
- break;
- }
-
- // Caps lock text
- led_t led_state = host_keyboard_led_state();
- oled_set_cursor(0, 4);
- oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false);
-
- return false;
-}
-#endif
diff --git a/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/rules.mk
deleted file mode 100644
index bcee933e75..0000000000
--- a/keyboards/handwired/scottokeebs/scottogame/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-WPM_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/keymap.c
deleted file mode 100644
index f4d0a0c7bb..0000000000
--- a/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap dance declarations
-enum {
- TD_LCTL_ESC_SPOTLIGHT_EMOJI,
- TD_LALT_ESC_WINDOWS_EMOJI
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_LALT_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Begin quad TD
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_SINGLE_TAP,
- TD_DOUBLE_TAP,
- TD_TRIPLE_TAP
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Create an instance of 'td_tap_t' for the 'x' tap dance.
-static td_tap_t xtap_state = {
- .is_press_action = true,
- .state = TD_NONE
-};
-
-td_state_t cur_dance(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return TD_SINGLE_TAP;
- } else {
- return TD_SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- return TD_DOUBLE_TAP;
- } else if (state->count == 3) {
- return TD_TRIPLE_TAP;
- }
-
- return TD_UNKNOWN;
-}
-
-void td_lctl_esc_spotlight_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_TAP: tap_code16(G(KC_SPC)); break;
- case TD_TRIPLE_TAP: tap_code16(C(G(KC_SPC))); break;
- default: break;
- }
-}
-
-void td_lctl_esc_spotlight_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
-void td_lalt_esc_windowr_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_TAP: tap_code(KC_LGUI); break;
- case TD_TRIPLE_TAP: tap_code16(G(KC_DOT)); break;
- default: break;
- }
-}
-
-void td_lalt_esc_windowr_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LALT); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LCTL_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lctl_esc_spotlight_emoji_finished, td_lctl_esc_spotlight_emoji_reset),
- [TD_LALT_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lalt_esc_windowr_emoji_finished, td_lalt_esc_windowr_emoji_reset),
-};
-// For the x tap dance. Put it here so it can be used in any keymap
-void x_finished(tap_dance_state_t *state, void *user_data);
-void x_reset(tap_dance_state_t *state, void *user_data);
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [1] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [2] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [3] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [4] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [5] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [6] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [7] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- )
-}; \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scottoinvader/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/config.h
deleted file mode 100644
index 4b0d2cd2fb..0000000000
--- a/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
-Copyright 2023 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Mouse key speed and acceleration.
-#define MOUSEKEY_DELAY 0
-#define MOUSEKEY_INTERVAL 16
-#define MOUSEKEY_WHEEL_DELAY 0
-#define MOUSEKEY_MAX_SPEED 6
-#define MOUSEKEY_TIME_TO_MAX 64
-
diff --git a/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/keymap.c
deleted file mode 100644
index d17ed1f28a..0000000000
--- a/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-Copyright 2023 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM scroll_down[] = {KC_MS_BTN1, KC_MS_BTN2, KC_MS_DOWN, COMBO_END};
-const uint16_t PROGMEM scroll_up[] = {KC_MS_BTN1, KC_MS_BTN2, KC_MS_UP, COMBO_END};
-const uint16_t PROGMEM middle_click[] = {KC_MS_BTN1, KC_MS_BTN2, COMBO_END};
-combo_t key_combos[] = {
- COMBO(scroll_down, KC_MS_WH_DOWN),
- COMBO(scroll_up, KC_MS_WH_UP),
- COMBO(middle_click, KC_MS_BTN3)
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_MS_BTN1, KC_MS_BTN2, KC_MS_LEFT, KC_MS_UP, KC_MS_DOWN, KC_MS_RIGHT
- )
-}; \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/rules.mk
deleted file mode 100644
index ab1e438182..0000000000
--- a/keyboards/handwired/scottokeebs/scottomouse/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-COMBO_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/keymap.c
deleted file mode 100644
index dc2d08d910..0000000000
--- a/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), KC_ESC
- ),
- [1] = LAYOUT(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, KC_ESC
- ),
- [2] = LAYOUT(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, KC_ESC
- ),
- [3] = LAYOUT(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_ESC, KC_LCTL, KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, KC_ESC
- ),
- [4] = LAYOUT(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), KC_ESC
- ),
- [5] = LAYOUT(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), KC_ESC
- ),
- [6] = LAYOUT(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), KC_ESC
- ),
- [7] = LAYOUT(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_ESC, KC_LALT, KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), KC_ESC
- )
-};
diff --git a/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scottoslant/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/config.h b/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/config.h
deleted file mode 100644
index 1a6512052c..0000000000
--- a/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/keymap.c b/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/keymap.c
deleted file mode 100644
index f4d0a0c7bb..0000000000
--- a/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
-Copyright 2022 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap dance declarations
-enum {
- TD_LCTL_ESC_SPOTLIGHT_EMOJI,
- TD_LALT_ESC_WINDOWS_EMOJI
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI) :
- case TD(TD_LALT_ESC_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Begin quad TD
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_SINGLE_TAP,
- TD_DOUBLE_TAP,
- TD_TRIPLE_TAP
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Create an instance of 'td_tap_t' for the 'x' tap dance.
-static td_tap_t xtap_state = {
- .is_press_action = true,
- .state = TD_NONE
-};
-
-td_state_t cur_dance(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return TD_SINGLE_TAP;
- } else {
- return TD_SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- return TD_DOUBLE_TAP;
- } else if (state->count == 3) {
- return TD_TRIPLE_TAP;
- }
-
- return TD_UNKNOWN;
-}
-
-void td_lctl_esc_spotlight_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_TAP: tap_code16(G(KC_SPC)); break;
- case TD_TRIPLE_TAP: tap_code16(C(G(KC_SPC))); break;
- default: break;
- }
-}
-
-void td_lctl_esc_spotlight_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
-void td_lalt_esc_windowr_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: register_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_TAP: tap_code(KC_LGUI); break;
- case TD_TRIPLE_TAP: tap_code16(G(KC_DOT)); break;
- default: break;
- }
-}
-
-void td_lalt_esc_windowr_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LALT); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LCTL_ESC_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lctl_esc_spotlight_emoji_finished, td_lctl_esc_spotlight_emoji_reset),
- [TD_LALT_ESC_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lalt_esc_windowr_emoji_finished, td_lalt_esc_windowr_emoji_reset),
-};
-// For the x tap dance. Put it here so it can be used in any keymap
-void x_finished(tap_dance_state_t *state, void *user_data);
-void x_reset(tap_dance_state_t *state, void *user_data);
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT), TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [1] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [2] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [3] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI), KC_LALT, LGUI_T(KC_SPC), KC_TRNS, KC_TRNS, TD(TD_LCTL_ESC_SPOTLIGHT_EMOJI)
- ),
- [4] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, LT(5, KC_TAB), LT(6, KC_ENT), TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [5] = LAYOUT_split_3x5_3(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [6] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(7), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- ),
- [7] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- TD(TD_LALT_ESC_WINDOWS_EMOJI), KC_LCTL, KC_SPC, KC_TRNS, KC_TRNS, TD(TD_LALT_ESC_WINDOWS_EMOJI)
- )
-}; \ No newline at end of file
diff --git a/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/rules.mk b/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/handwired/scottokeebs/scottosplit/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/handwired/split_cloud/keymaps/default/keymap.c b/keyboards/handwired/split_cloud/keymaps/default/keymap.c
index f94a112c07..ad7e64e6ad 100644
--- a/keyboards/handwired/split_cloud/keymaps/default/keymap.c
+++ b/keyboards/handwired/split_cloud/keymaps/default/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
// clang-format off
diff --git a/keyboards/handwired/steamvan/rev1/config.h b/keyboards/handwired/steamvan/rev1/config.h
index 88323300f8..a779dcccab 100644
--- a/keyboards/handwired/steamvan/rev1/config.h
+++ b/keyboards/handwired/steamvan/rev1/config.h
@@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID1
+#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/handwired/swiftrax/beegboy/config.h b/keyboards/handwired/swiftrax/beegboy/config.h
deleted file mode 100644
index 092f2ba0e9..0000000000
--- a/keyboards/handwired/swiftrax/beegboy/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2020 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/handwired/swiftrax/cowfish/config.h b/keyboards/handwired/swiftrax/cowfish/config.h
deleted file mode 100644
index 092f2ba0e9..0000000000
--- a/keyboards/handwired/swiftrax/cowfish/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2020 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/handwired/swiftrax/glacier/config.h b/keyboards/handwired/swiftrax/glacier/config.h
deleted file mode 100644
index 7f9b0b12d4..0000000000
--- a/keyboards/handwired/swiftrax/glacier/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/handwired/swiftrax/joypad/config.h b/keyboards/handwired/swiftrax/joypad/config.h
deleted file mode 100644
index 092f2ba0e9..0000000000
--- a/keyboards/handwired/swiftrax/joypad/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2020 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/handwired/swiftrax/koalafications/config.h b/keyboards/handwired/swiftrax/koalafications/config.h
deleted file mode 100644
index 7435ce54af..0000000000
--- a/keyboards/handwired/swiftrax/koalafications/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3 \ No newline at end of file
diff --git a/keyboards/handwired/swiftrax/nodu/config.h b/keyboards/handwired/swiftrax/nodu/config.h
deleted file mode 100644
index 6726795c45..0000000000
--- a/keyboards/handwired/swiftrax/nodu/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2020 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3 \ No newline at end of file
diff --git a/keyboards/handwired/swiftrax/pandamic/config.h b/keyboards/handwired/swiftrax/pandamic/config.h
deleted file mode 100644
index 092f2ba0e9..0000000000
--- a/keyboards/handwired/swiftrax/pandamic/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2020 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/handwired/swiftrax/the_galleon/config.h b/keyboards/handwired/swiftrax/the_galleon/config.h
deleted file mode 100644
index 7f9b0b12d4..0000000000
--- a/keyboards/handwired/swiftrax/the_galleon/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/handwired/swiftrax/the_galleon/info.json b/keyboards/handwired/swiftrax/the_galleon/info.json
index b12fc5c31f..2e0771e22c 100644
--- a/keyboards/handwired/swiftrax/the_galleon/info.json
+++ b/keyboards/handwired/swiftrax/the_galleon/info.json
@@ -13,6 +13,9 @@
"rows": ["B1", "B0", "D2", "B7", "D5", "D3", "D6", "D4", "B4", "D7", "B6", "B5", "C7", "C6"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 3
+ },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/config.h b/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/config.h
deleted file mode 100644
index d7bc0f5bd5..0000000000
--- a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/config.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// #define USE_I2C
-// #define SELECT_SOFT_SERIAL_SPEED 1
-#define SPLIT_MODS_ENABLE
-#define EE_HANDS
-
-#define TRACKBALL_DPI_OPTIONS { 1200, 1800, 2600, 3400 }
-
-#define RGBLIGHT_MAX_BRIGHTNESS 60
-
-#undef DEBOUNCE
-#define DEBOUNCE 10
-
-#define SOLENOID_PIN F1
-#define SOLENOID_DEFAULT_DWELL 8
-
-#define OLED_DISPLAY_128X64
-#define OLED_BRIGHTNESS 50
diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/keymap.c b/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/keymap.c
deleted file mode 100644
index a7d7528dfb..0000000000
--- a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-// clang-format off
-#define LAYOUT_4x6_right_wrapper(...) LAYOUT_4x6_right(__VA_ARGS__)
-#define LAYOUT_4x6_right_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_4x6_right_wrapper( \
- SH_TT, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, SH_TT, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- OS_LSFT, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \
- OS_LGUI, OS_LALT, OS_RGUI, OS_RALT, \
- KC_PSCR, KC_GRV, MEH_T(KC_BTN3), \
- KC_SPC, OS_LGUI, KC_ENT, \
- BK_LWER, TT(_MOUSE), TT(_MOUSE), DL_RAIS \
- )
-#define LAYOUT_base_wrapper(...) LAYOUT_4x6_right_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_MOUSE] = LAYOUT_4x6_right(
- _______, _______, _______, _______, _______, _______, KC_WH_U, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, SNP_TOG,
- _______, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, SNIPING,
- _______, _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______, _______
- ),
- [_GAMEPAD] = LAYOUT_4x6_right(
- KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_H, _______, _______, _______, _______, _______, _______,
- KC_I, KC_T, TG_GAME, KC_NO,
- KC_V, KC_O, _______,
- KC_SPC, KC_P, _______,
- KC_H, KC_LGUI, _______, _______
- ),
- [_DIABLO] = LAYOUT_4x6_right(
- KC_TAB, KC_S, KC_I, KC_F, KC_M, KC_T, _______, _______, _______, _______, _______, _______,
- KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, _______, _______, _______, _______, _______, _______,
- KC_F, KC_L, KC_NO, TG_DBLO,
- KC_DIABLO_CLEAR, KC_F, _______,
- SFT_T(KC_SPC), KC_J, _______,
- ALT_T(KC_Q), KC_LGUI, _______, _______
- ),
- [_LOWER] = LAYOUT_4x6_right_wrapper(
- KC_F12, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11,
- _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______, _______
- ),
- [_RAISE] = LAYOUT_4x6_right_wrapper(
- KC_F12, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_F11,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT_4x6_right_wrapper(
- QK_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, QK_BOOT,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- UC_NEXT, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS,
- HF_DWLU, HF_DWLD, TG_GAME, TG_DBLO,
- HF_TOGG, HF_BUZZ, KC_NUKE,
- _______, _______, _______,
- _______, _______, KC_NUKE, _______
- ),
-};
-// clang-format on
diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/rules.mk b/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/rules.mk
deleted file mode 100644
index d2d2a9b874..0000000000
--- a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-RGBLIGHT_STARTUP_ANIMATION = yes
-AUDIO_ENABLE = yes
-HAPTIC_ENABLE = no
-COMMAND_ENABLE = no
-TAP_DANCE_ENABLE = yes
-UNICODE_ENABLE = yes
-OLED_ENABLE = yes
-WPM_ENABLE = yes
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f303/info.json b/keyboards/handwired/tractyl_manuform/5x6_right/f303/info.json
index 62fa261ac7..eafb77fce2 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f303/info.json
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f303/info.json
@@ -5,6 +5,9 @@
"rows": ["B10", "B11", "B12", "A14", "A13", "A15"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "spi"
+ },
"rgblight": {
"led_count": 20,
"split_count": [10, 10]
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f303/rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/f303/rules.mk
index 3959814c8d..ab601e31f9 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f303/rules.mk
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f303/rules.mk
@@ -1,6 +1,5 @@
# KEYBOARD_SHARED_EP = yes
CONSOLE_ENABLE = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
AUDIO_DRIVER = dac_additive
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/info.json b/keyboards/handwired/tractyl_manuform/5x6_right/f411/info.json
index 3f0c316928..e5a6dc6c7a 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/info.json
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/info.json
@@ -5,6 +5,9 @@
"rows": ["B12", "B13", "B14", "B15", "A8", "A10"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "spi"
+ },
"rgblight": {
"led_count": 57,
"split_count": [26, 31]
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk
index b466a6234a..0c4b05ee7e 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk
@@ -2,6 +2,5 @@ KEYBOARD_SHARED_EP = yes
CONSOLE_ENABLE = yes
MOUSE_SHARED_EP = yes
-EEPROM_DRIVER = spi
SERIAL_DRIVER = usart
AUDIO_DRIVER = pwm_hardware
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h
deleted file mode 100644
index 5cb2a76de2..0000000000
--- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#undef OLED_DISPLAY_128X64
-#define OLED_DISPLAY_128X128
-#define OLED_BRIGHTNESS 200
-
-#define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200
-#define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 200
-#define CHARYBDIS_MINIMUM_SNIPING_DPI 400
-#define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 200
-
-#define BOOTMAGIC_LITE_EEPROM_ROW 1
-#define BOOTMAGIC_LITE_EEPROM_COLUMN 0
-#define BOOTMAGIC_LITE_EEPROM_ROW_RIGHT 7
-#define BOOTMAGIC_LITE_EEPROM_COLUMN_RIGHT 5
-
-
-#define DRV2605L_FB_ERM_LRA 0
-#define DRV2605L_GREETING DRV2605L_EFFECT_750_MS_ALERT_100
-#define DRV2605L_DEFAULT_MODE DRV2605L_EFFECT_BUZZ_1_100
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c
deleted file mode 100644
index 380e17fb09..0000000000
--- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,161 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-// clang-format off
-#define LAYOUT_5x6_right_wrapper(...) LAYOUT_5x6_right(__VA_ARGS__)
-#define LAYOUT_5x6_right_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_5x6_right_wrapper( \
- KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, UC_CLUE, \
- SH_TT, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, SH_TT, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- OS_LSFT, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \
- OS_LALT, OS_LGUI, OS_RGUI, OS_RALT, \
- KC_MUTE, KC_GRV, KC_BTN3, \
- KC_SPC, UC_IRNY, KC_ENT, \
- BK_LWER, TT(_MOUSE), TT(_MOUSE), DL_RAIS \
- )
-#define LAYOUT_base_wrapper(...) LAYOUT_5x6_right_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_GAMEPAD] = LAYOUT_5x6_right(
- KC_ESC, KC_NO, KC_1, KC_2, KC_3, KC_4, _______, _______, _______, _______, _______, _______,
- KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_H, _______, _______, _______, _______, _______, _______,
- KC_I, KC_T, TG_GAME, KC_NO,
- KC_V, KC_O, _______,
- KC_SPC, KC_P, _______,
- KC_H, KC_LGUI, _______, _______
- ),
- [_DIABLO] = LAYOUT_5x6_right(
- KC_ESC, KC_V, KC_D, KC_LALT, KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO,
- KC_TAB, KC_S, KC_I, KC_F, KC_M, KC_T, _______, _______, _______, _______, _______, _______,
- KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, _______, _______, _______, _______, _______, _______,
- KC_F, KC_L, KC_NO, TG_DBLO,
- KC_DIABLO_CLEAR, KC_F, _______,
- SFT_T(KC_SPC), KC_J, _______,
- ALT_T(KC_Q), KC_LGUI, _______, _______
- ),
- [_DIABLOII] = LAYOUT_5x6_right(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_GRV, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_A, KC_T, KC_Q, KC_I, KC_M, _______, _______, _______, _______, _______, _______,
- KC_S, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______,
- KC_F, KC_L, KC_NO, TG(_DIABLOII),
- _______, KC_G, _______,
- KC_LSFT, _______, _______,
- KC_LCTL, KC_V, _______, _______
- ),
- [_MOUSE] = LAYOUT_5x6_right(
- _______, _______, _______, _______, _______, _______, _______, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, PD_JIGGLER,
- _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______, _______, DRGSCRL,
- _______, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, SNIPING,
- _______, _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______,
- _______, _______, _______, _______,
- _______, _______, KC_BTN3,
- _______, _______, _______,
- _______, _______, _______, _______
- ),
- [_LOWER] = LAYOUT_5x6_right_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
- _______, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______,
- _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______,
- _______, _______, _______, _______
- ),
- [_RAISE] = LAYOUT_5x6_right_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
- KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______,
- OL_LOCK, _______, _______,
- _______, _______, _______,
- _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT_5x6_right_wrapper(
- QK_MAKE, KC_WIDE,KC_AUSSIE,KC_SCRIPT,KC_ZALGO,KC_NOMODE, KC_NOMODE,KC_BLOCKS,KC_REGIONAL,_______,_______, QK_BOOT,
- VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EE_CLR,
- KEYLOCK, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS,
- UC_NEXT, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY,
- TG(_DIABLOII), AUTO_CTN, TG_GAME, TG_DBLO,
- _______, QK_RBT, KC_NUKE,
- HF_TOGG, _______, _______,
- _______, _______, KC_NUKE, _______
- ),
-};
-// clang-format on
-
-#ifdef ENCODER_MAP_ENABLE
-// clang-format off
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [_DEFAULT_LAYER_1] = { ENCODER_CCW_CW( KC_VOLU, KC_VOLD ), ENCODER_CCW_CW( KC_WH_U, KC_WH_D ) },
- [_DEFAULT_LAYER_2] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_DEFAULT_LAYER_3] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_DEFAULT_LAYER_4] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_GAMEPAD] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_DIABLO] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_MOUSE] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_MEDIA] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_RAISE] = { ENCODER_CCW_CW( OL_BINC, OL_BDEC ), ENCODER_CCW_CW( KC_PGDN, KC_PGUP ) },
- [_LOWER] = { ENCODER_CCW_CW( RGB_MOD, RGB_RMOD), ENCODER_CCW_CW( RGB_HUI, RGB_HUD ) },
- [_ADJUST] = { ENCODER_CCW_CW( CK_UP, CK_DOWN ), ENCODER_CCW_CW( _______, _______ ) },
-};
-// clang-format on
-#endif
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_keymap(oled_rotation_t rotation) {
- return OLED_ROTATION_180;
-}
-
-void render_oled_title(bool side) {
- oled_write_P(side ? PSTR(" Tractyl ") : PSTR(" Manuform "), true);
-}
-#endif
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rgblight_breathe_table.h b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rgblight_breathe_table.h
deleted file mode 100644
index fb921079bf..0000000000
--- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rgblight_breathe_table.h
+++ /dev/null
@@ -1,117 +0,0 @@
-#pragma once
-
-#define RGBLIGHT_EFFECT_BREATHE_TABLE
-
-// clang-format off
-
-// Breathing center: 1.85
-// Breathing max: 100
-
-const uint8_t PROGMEM rgblight_effect_breathe_table[] = {
-#if RGBLIGHT_BREATHE_TABLE_SIZE == 256
- 0x0D, 0x0E, 0x0E, 0x0F, 0x0F, 0x10, 0x10, 0x11,
- 0x11, 0x12, 0x13, 0x13, 0x14, 0x14, 0x15, 0x16,
- 0x16, 0x17, 0x18, 0x18, 0x19, 0x19, 0x1A, 0x1B,
- 0x1B, 0x1C, 0x1D, 0x1E, 0x1E, 0x1F, 0x20, 0x20,
- 0x21, 0x22, 0x22, 0x23, 0x24, 0x25, 0x25, 0x26,
- 0x27, 0x28, 0x28, 0x29, 0x2A, 0x2B, 0x2B, 0x2C,
- 0x2D, 0x2E, 0x2E, 0x2F, 0x30, 0x31, 0x31, 0x32,
- 0x33, 0x34, 0x34, 0x35, 0x36, 0x37, 0x38, 0x38,
- 0x39, 0x3A, 0x3B, 0x3B, 0x3C, 0x3D, 0x3D, 0x3E,
- 0x3F, 0x40, 0x40, 0x41, 0x42, 0x42, 0x43, 0x44,
- 0x44, 0x45, 0x46, 0x46, 0x47, 0x48, 0x48, 0x49,
- 0x4A, 0x4A, 0x4B, 0x4B, 0x4C, 0x4C, 0x4D, 0x4D,
- 0x4E, 0x4E, 0x4F, 0x4F, 0x50, 0x50, 0x51, 0x51,
- 0x51, 0x52, 0x52, 0x53, 0x53, 0x53, 0x54, 0x54,
- 0x54, 0x54, 0x55, 0x55, 0x55, 0x55, 0x55, 0x56,
- 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56,
- 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56,
- 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x54,
- 0x54, 0x54, 0x53, 0x53, 0x53, 0x52, 0x52, 0x51,
- 0x51, 0x51, 0x50, 0x50, 0x4F, 0x4F, 0x4E, 0x4E,
- 0x4D, 0x4D, 0x4C, 0x4C, 0x4B, 0x4B, 0x4A, 0x4A,
- 0x49, 0x48, 0x48, 0x47, 0x46, 0x46, 0x45, 0x44,
- 0x44, 0x43, 0x42, 0x42, 0x41, 0x40, 0x40, 0x3F,
- 0x3E, 0x3D, 0x3D, 0x3C, 0x3B, 0x3B, 0x3A, 0x39,
- 0x38, 0x38, 0x37, 0x36, 0x35, 0x34, 0x34, 0x33,
- 0x32, 0x31, 0x31, 0x30, 0x2F, 0x2E, 0x2E, 0x2D,
- 0x2C, 0x2B, 0x2B, 0x2A, 0x29, 0x28, 0x28, 0x27,
- 0x26, 0x25, 0x25, 0x24, 0x23, 0x22, 0x22, 0x21,
- 0x20, 0x20, 0x1F, 0x1E, 0x1E, 0x1D, 0x1C, 0x1B,
- 0x1B, 0x1A, 0x19, 0x19, 0x18, 0x18, 0x17, 0x16,
- 0x16, 0x15, 0x14, 0x14, 0x13, 0x13, 0x12, 0x11,
- 0x11, 0x10, 0x10, 0x0F, 0x0F, 0x0E, 0x0E, 0x0D
-#endif
-
-#if RGBLIGHT_BREATHE_TABLE_SIZE == 128
- 0x0D, 0x0E, 0x0F, 0x10,
- 0x11, 0x13, 0x14, 0x15,
- 0x16, 0x18, 0x19, 0x1A,
- 0x1B, 0x1D, 0x1E, 0x20,
- 0x21, 0x22, 0x24, 0x25,
- 0x27, 0x28, 0x2A, 0x2B,
- 0x2D, 0x2E, 0x30, 0x31,
- 0x33, 0x34, 0x36, 0x38,
- 0x39, 0x3B, 0x3C, 0x3D,
- 0x3F, 0x40, 0x42, 0x43,
- 0x44, 0x46, 0x47, 0x48,
- 0x4A, 0x4B, 0x4C, 0x4D,
- 0x4E, 0x4F, 0x50, 0x51,
- 0x51, 0x52, 0x53, 0x54,
- 0x54, 0x55, 0x55, 0x55,
- 0x56, 0x56, 0x56, 0x56,
- 0x56, 0x56, 0x56, 0x56,
- 0x56, 0x55, 0x55, 0x54,
- 0x54, 0x53, 0x53, 0x52,
- 0x51, 0x50, 0x4F, 0x4E,
- 0x4D, 0x4C, 0x4B, 0x4A,
- 0x49, 0x48, 0x46, 0x45,
- 0x44, 0x42, 0x41, 0x40,
- 0x3E, 0x3D, 0x3B, 0x3A,
- 0x38, 0x37, 0x35, 0x34,
- 0x32, 0x31, 0x2F, 0x2E,
- 0x2C, 0x2B, 0x29, 0x28,
- 0x26, 0x25, 0x23, 0x22,
- 0x20, 0x1F, 0x1E, 0x1C,
- 0x1B, 0x19, 0x18, 0x17,
- 0x16, 0x14, 0x13, 0x12,
- 0x11, 0x10, 0x0F, 0x0E
-#endif
-
-#if RGBLIGHT_BREATHE_TABLE_SIZE == 64
- 0x0D, 0x0F,
- 0x11, 0x14,
- 0x16, 0x19,
- 0x1B, 0x1E,
- 0x21, 0x24,
- 0x27, 0x2A,
- 0x2D, 0x30,
- 0x33, 0x36,
- 0x39, 0x3C,
- 0x3F, 0x42,
- 0x44, 0x47,
- 0x4A, 0x4C,
- 0x4E, 0x50,
- 0x51, 0x53,
- 0x54, 0x55,
- 0x56, 0x56,
- 0x56, 0x56,
- 0x56, 0x55,
- 0x54, 0x53,
- 0x51, 0x4F,
- 0x4D, 0x4B,
- 0x49, 0x46,
- 0x44, 0x41,
- 0x3E, 0x3B,
- 0x38, 0x35,
- 0x32, 0x2F,
- 0x2C, 0x29,
- 0x26, 0x23,
- 0x20, 0x1E,
- 0x1B, 0x18,
- 0x16, 0x13,
- 0x11, 0x0F
-#endif
-};
-
-static const int table_scale = 256 / sizeof(rgblight_effect_breathe_table);
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk
deleted file mode 100644
index 1cf7a3fccf..0000000000
--- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,54 +0,0 @@
-AUTOCORRECT_ENABLE = no
-AUDIO_ENABLE = no
-ENCODER_ENABLE = no
-CUSTOM_BOOTMAGIC_ENABLE = no
-CUSTOM_UNICODE_ENABLE = no
-HAPTIC_ENABLE = no
-OLED_ENABLE = no
-RGBLIGHT_ENABLE = no
-SWAP_HANDS_ENABLE = no
-TAP_DANCE_ENABLE = no
-WPM_ENABLE = no
-
-ifeq ($(strip $(KEYBOARD)), handwired/tractyl_manuform/5x6_right/elite_c)
- BOOTLOADER = qmk-hid
- BOOTLOADER_SIZE = 512
- CUSTOM_SPLIT_TRANSPORT_SYNC = no
- LTO_ENABLE = yes
- MOUSEKEY_ENABLE = no
-endif
-ifeq ($(strip $(KEYBOARD)), handwired/tractyl_manuform/5x6_right/arduinomicro)
- BOOTLOADER = qmk-hid
- BOOTLOADER_SIZE = 512
- CUSTOM_SPLIT_TRANSPORT_SYNC = no
- LTO_ENABLE = yes
- MOUSEKEY_ENABLE = no
-endif
-ifeq ($(strip $(KEYBOARD)), handwired/tractyl_manuform/5x6_right/teensy2pp)
- AUTOCORRECT_ENABLE = no
- OVERLOAD_FEATURES = yes
- LTO_ENABLE = yes
-endif
-ifeq ($(strip $(KEYBOARD)), handwired/tractyl_manuform/5x6_right/f411)
- BOOTLOADER = tinyuf2
- AUTOCORRECT_ENABLE = yes
- LTO_SUPPORTED = no
- OVERLOAD_FEATURES = yes
- HAPTIC_ENABLE = yes
- HAPTIC_DRIVER = drv2605l
-endif
-
-ifeq ($(strip $(OVERLOAD_FEATURES)), yes)
- AUDIO_ENABLE = yes
- CAPS_WORD_ENABLE = yes
- CUSTOM_BOOTMAGIC_ENABLE = yes
- CUSTOM_UNICODE_ENABLE = yes
- ENCODER_ENABLE = yes
- ENCODER_MAP_ENABLE = yes
- OLED_ENABLE = yes
- RGBLIGHT_ENABLE = yes
- RGBLIGHT_STARTUP_ANIMATION = yes
- TAP_DANCE_ENABLE = yes
- SWAP_HANDS_ENABLE = yes
- WPM_ENABLE = yes
-endif
diff --git a/keyboards/handwired/traveller/keymaps/default/keymap.c b/keyboards/handwired/traveller/keymaps/default/keymap.c
index 2cd57db35f..5d2a3b3750 100644
--- a/keyboards/handwired/traveller/keymaps/default/keymap.c
+++ b/keyboards/handwired/traveller/keymaps/default/keymap.c
@@ -1,5 +1,4 @@
#include QMK_KEYBOARD_H
-#include "mousekey.h"
enum layer_names {
_QW,
diff --git a/keyboards/handwired/tsubasa/config.h b/keyboards/handwired/tsubasa/config.h
index 52b64de9f6..a2cd2dafe6 100644
--- a/keyboards/handwired/tsubasa/config.h
+++ b/keyboards/handwired/tsubasa/config.h
@@ -17,6 +17,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#define MASTER_RIGHT
-
-#define SPLIT_WPM_ENABLE
-#define SPLIT_LAYER_STATE_ENABLE
diff --git a/keyboards/handwired/tsubasa/info.json b/keyboards/handwired/tsubasa/info.json
index 245afe30cc..62c418c995 100644
--- a/keyboards/handwired/tsubasa/info.json
+++ b/keyboards/handwired/tsubasa/info.json
@@ -38,6 +38,12 @@
{"pin_a": "F4", "pin_b": "F5"}
]
}
+ },
+ "transport": {
+ "sync": {
+ "layer_state": true,
+ "wpm": true
+ }
}
},
"layouts": {
diff --git a/keyboards/handwired/wabi/keymaps/rossman360/keymap.c b/keyboards/handwired/wabi/keymaps/rossman360/keymap.c
deleted file mode 100644
index 3bd46bf191..0000000000
--- a/keyboards/handwired/wabi/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
-Copyright 2020 Ross Montsinger
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "rossman360.h"
-
-#define PGMOD LT(_NUM, KC_PGDN)
-#define TABMOD LT(_FN1, KC_TAB)
-#define SPCMOD LT(_FN1, KC_SPACE)
-#define ENTMOD LT(_FN2, KC_ENTER)
-#define RSMOD LT(_FN1, KC_MINS)
-
-enum layer_names {
- _BASE,
- _DEL,
- _FN1,
- _FN2,
- _NUM,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_BASE] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- JUMPBACK,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSMOD , KC_UP,
- CMDBSP, ALTDEL, CTRLSP, TABMOD, PGMOD , ENTMOD , SPCMOD , MO(_DEL), KC_LEFT, KC_DOWN, KC_RGHT
- ),
-[_DEL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- REMCAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, BLINE , KC_BSPC, BWORD , KC_NO , KC_NO , _______, _______, _______, _______
- ),
-[_FN1] = LAYOUT(
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NTAB,
- _______, _______, _______, _______, _______, _______, _______, UNDO , _______, _______, _______, _______, _______, KC_SLSH,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP , KC_RIGHT,KC_END , _______, CTAB,
- _______, _______, XPANDR , _______, PMERGE , _______, _______, PMERGE , KC_DOWN, _______, _______, _______, _______,
- _______, _______, _______, LWORD , RWORD , KC_NO , _______, KC_NO , _______, _______, _______
- ),
-[_FN2] = LAYOUT(
- _______, SPEAK1 , SPEAK2 , SPEAK3 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, PARADOWN, CSPEAK, _______, _______, _______, _______, _______, _______
- ),
-[_NUM] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_7 , KC_8 , KC_9 , _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_MINS, KC_4 , KC_5 , KC_6 , KC_COLN, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_1 , KC_2 , KC_3 , KC_BSLS, _______, _______,
- _______, _______, _______, KC_0 , _______, KC_NO , KC_SPC , KC_0 , _______, _______, _______
- ),
-};
diff --git a/keyboards/hazel/bad_wings/keymaps/miketronic/config.h b/keyboards/hazel/bad_wings/keymaps/miketronic/config.h
deleted file mode 100644
index 1f5c059c00..0000000000
--- a/keyboards/hazel/bad_wings/keymaps/miketronic/config.h
+++ /dev/null
@@ -1,16 +0,0 @@
-// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
-// SPDX-License-Identifier: GPL-2.0+
-
-#pragma once
-
-# define TAPPING_TERM 160
-# define TAPPING_TERM_PER_KEY
-# define HOLD_ON_OTHER_KEY_PRESS
-# define QUICK_TAP_TERM TAPPING_TERM / 2
-# define QUICK_TAP_TERM_PER_KEY
-
-# define CIRQUE_PINNACLE_TAP_ENABLE
-# define CIRQUE_PINNACLE_SECONDARY_TAP_ENABLE
-# define CIRQUE_PINNACLE_ATTENUATION_4X
-# define CIRQUE_PINNACLE_POSITION_MODE CIRQUE_PINNACLE_RELATIVE_MODE
-//# define CIRQUE_DEVICE_GESTURES_SCROLL_ENABLE
diff --git a/keyboards/hazel/bad_wings/keymaps/miketronic/keymap.c b/keyboards/hazel/bad_wings/keymaps/miketronic/keymap.c
deleted file mode 100644
index 3ebcc79fde..0000000000
--- a/keyboards/hazel/bad_wings/keymaps/miketronic/keymap.c
+++ /dev/null
@@ -1,258 +0,0 @@
-// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
-// SPDX-License-Identifier: GPL-2.0+
-
-#include "miketronic.h"
-
-
-/*
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, 1, 2, 3);
-}
-
-
- [0] = LAYOUT_split_3x5_3(
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \
- KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, \
- KC_Z, LGUI_T(KC_X), LALT_T(KC_C), KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, \
- KC_LCTL, OSL(1), OSM(MOD_LSFT), KC_SPC, LT(2, KC_BSPC), KC_ENT
- ),
- [1] = LAYOUT_split_3x5_3(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_RBRC, KC_RCBR, KC_RPRN, KC_RABK, KC_NO, \
- KC_GRV, KC_TILD, KC_UNDS, KC_EQL, KC_NO, KC_LBRC, KC_LCBR, KC_LPRN, KC_LABK, KC_BACKSLASH, \
- KC_NO, KC_NO, KC_PLUS, KC_MINS, KC_NO, KC_NO, KC_NO, KC_COLN, KC_DOT, KC_SCLN, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [2] = LAYOUT_split_3x5_3(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_PIPE, KC_NO, \
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, \
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DOT, KC_NO, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [3] = LAYOUT_split_3x5_3(
- KC_ESC, KC_F1, KC_F4, KC_F7, KC_F10, KC_NO, KC_HOME, KC_UP, KC_END, KC_BSPC, \
- KC_TAB, KC_F2, KC_F5, KC_F8, KC_F11, KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT, KC_ENT, \
- KC_NO, KC_F3, KC_F6, KC_F9, KC_F12, KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_DEL, \
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- )
-*/
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* WORKMAN
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │ Q │ D │ R │ W │ B │ │ J │ F │ U │ P │ BSPC│
- * │ ESC │ │ │ │ SYM │ │ SYM │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ A │ S │ H ┃ T ┃ G │ │ Y ┃ N ┃ E │ O │ I │
- * │SHIFT│ │ ┃ EX ┃ │ │ ┃ ┃ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ Z │ X │ M │ C │ V │ │ K │ L │ SPC │ SPC │ENTER│
- * │ FN │ CTRL│ OS │ ALT │LOWER│ │RAISE│ │ , │ . │ │
- * └─────┴─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┴─────┘
- * │OSM │SPACE│LOWER│ │RAISE│ENTER│COPY │
- * │SHIFT│ │ │ │ │ │PASTE│
- * └─────┴─────┴─────┘ └─────┴─────┴─────┘
-*/
- [_WM] = LAYOUT_split_3x5_3_wrapper (
- _____________WORKMAN_310_001_L_____________, _____________WORKMAN_310_001_R_____________,
- _____________WORKMAN_310_002_L_____________, _____________WORKMAN_310_002_R_____________,
- _____________WORKMAN_310_003_L_____________, _____________WORKMAN_310_003_R_____________,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
- [_QW] = LAYOUT_split_3x5_3_wrapper (
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
-
-
- /* LOWER
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │ () │ [] │ /\ │ │ │ │ │ 7 │ 8 │ 9 │ │
- * │ │ <> │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ @ # │ & % │ ┃ ┃ │ │ . ┃ 4 ┃ 5 │ 6 │ UP │
- * │ │ │ ┃ ┃ │ │ENTER┃ ┃ │ │RIGHT│
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ DOWN│
- * │ │ │ │ │LOWER│ │ │ │ 0 │ │ LEFT│
- * └─────┴─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┴─────┘
- * │OSM │SPACE│LOWER│ │RAISE│ENTER│COPY │
- * │SHIFT│ │ │ │ │ │PASTE│
- * └─────┴─────┴─────┘ └─────┴─────┴─────┘
-*/
- [_LOWER] = LAYOUT_split_3x5_3_wrapper (
- _______________LOWER_310_L1________________, _______________LOWER_310_R1________________,
- _______________LOWER_310_L2________________, _______________LOWER_310_R2________________,
- _______________LOWER_310_L3________________, _______________LOWER_310_R3________________,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
-
-
- /* RAISE
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │ BOOT│DEBUG│ │ │ MAKE│ │ │ F7 │ F8 │ F9 │ F10 │
- * │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ │ RGB │ RGB ┃ RGB ┃ RGB │ │ _ ┃ F4 ┃ F5 │ F6 │ F11 │
- * │ │ TOG │ MOD ┃ HUI ┃ HUD │ │ - ┃ ┃ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ │ RGB │ RGB │ RGB │ RGB │ │ │ F1 │ F2 │ F3 │ F12 │
- * │ │ SAI │ SAD │ VAI │ VAD │ │RAISE│ │ │ │ │
- * └─────┴─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┴─────┘
- * │OSM │SPACE│LOWER│ │RAISE│ENTER│COPY │
- * │SHIFT│ │ │ │ │ │PASTE│
- * └─────┴─────┴─────┘ └─────┴─────┴─────┘
-*/
- [_RAISE] = LAYOUT_split_3x5_3_wrapper (
- _______________RAISE_310_L1________________, _______________RAISE_310_R1________________,
- _______________RAISE_310_L2________________, _______________RAISE_310_R2________________,
- _______________RAISE_310_L3________________, _______________RAISE_310_R3________________,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
-
-
- /* EXTRAS
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │ ! │ │ │ │ │ │ │ /\ | () | [] | ; │
- * │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ │ │ ┃EXTRA┃ │ │ ┃ @ # ┃ & % | │ ' │
- * │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ │ , │ . │ ? │
- * │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┴─────┘
- * │OSM │SPACE│LOWER│ │RAISE│ENTER│COPY │
- * │SHIFT│ │ │ │ │ │PASTE│
- * └─────┴─────┴─────┘ └─────┴─────┴─────┘
-*/
- [_EX] = LAYOUT_split_3x5_3_wrapper (
- ______________EXTRAS_310_L1________________, ______________EXTRAS_310_R1________________,
- ______________EXTRAS_310_L2________________, ______________EXTRAS_310_R2________________,
- ______________EXTRAS_310_L3________________, ______________EXTRAS_310_R3________________,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
-
-
- /* FUNCTION
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │COPY │CLIP │ SS │ │ │ │ │ /\ │ UP │ │ DEL │
- * │PASTE│ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ TAB │ M05 │ M06 ┃ M07 ┃ M08 │ │ ┃ LEFT┃ DOWN│RIGHT│ UP │
- * │ │ │ ┃ ┃ │ │ ┃ ┃ │ │RIGHT│
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ │ M01 │ M02 │ M03 │ M04 │ │ │ │ , │ . │DOWN │
- * │ FN │ │ │ │ │ │ │ │ │ │LEFT │
- * └─────┴─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┴─────┘
- * │OSM │SPACE│LOWER│ │RAISE│ENTER│COPY │
- * │SHIFT│ │ │ │ │ │PASTE│
- * └─────┴─────┴─────┘ └─────┴─────┴─────┘
-*/
- [_FN] = LAYOUT_split_3x5_3_wrapper (
- _____________FUNCTION_310_L1_______________, _____________FUNCTION_310_R1_______________,
- _____________FUNCTION_310_L2_______________, _____________FUNCTION_310_R2_______________,
- _____________FUNCTION_310_L3_______________, _____________FUNCTION_310_R3_______________,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
-
-
- /* SYMBOLS
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │ $ │ ^ │ < │ > │ │ │ │ | │ [ │ ] │ - │
- * │ │ │ │ │ SYMB│ │ SYMB│ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ % │ : │ ; ┃ + ┃ = │ │ ┃ ┃ ( │ ) │ _ │
- * │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ & │ ' │ " │ * │ # │ │ ! │ ? │ / │ \ │ @ │
- * │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┴─────┘
- * │OSM │SPACE│LOWER│ │RAISE│ENTER│COPY │
- * │SHIFT│ │ │ │ │ │PASTE│
- * └─────┴─────┴─────┘ └─────┴─────┴─────┘
-*/
- [_SYMB] = LAYOUT_split_3x5_3_wrapper (
- KC_DLR, KC_CIRC, KC_LABK, KC_RABK, XXXX, XXXX, KC_PIPE, KC_LBRC, KC_RBRC, KC_MINS,
- KC_PERC, KC_COLN, KC_SCLN, KC_PLUS, KC_EQL, XXXX, XXXX, KC_LPRN, KC_RPRN, KC_UNDS,
- KC_AMPR, KC_QUOT, KC_DQUO, KC_ASTR, KC_HASH, KC_EXLM, KC_QUES, KC_SLSH, KC_BSLS, KC_AT,
- _________3KEY_LEFT___________, _________3KEY_RIGHT__________
- ),
-
-};
-
-
-bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case SFT_T(KC_A):
- // Do not force the mod-tap key press to be handled as a modifier
- // if any other key was pressed while the mod-tap key is held down.
- return false;
- case TEX:
- return false;
- case CTRLX:
- return false;
- case FNZ:
- return false;
- case MGUI:
- return false;
- case VLOWER:
- return false;
- case KRAISE:
- return false;
- default:
- // Force the dual-role key press to be handled as a modifier if any
- // other key was pressed while the mod-tap key is held down.
- return true;
- }
-}
-
-
-#ifdef AUDIO_ENABLE
-float leader_start_song[][2] = SONG(ONE_UP_SOUND);
-float leader_succeed_song[][2] = SONG(ALL_STAR);
-float leader_fail_song[][2] = SONG(RICK_ROLL);
-#endif
-
-void matrix_scan_user(void);
-
-void leader_start_user(void) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(leader_start_song);
-#endif
-}
-
-bool did_leader_succeed;
-
-void leader_end_user(void) {
- did_leader_succeed = false;
-
- if (leader_sequence_one_key(KC_E)) {
- SEND_STRING(SS_LCTL(SS_LSFT("t")));
- did_leader_succeed = true;
- } else if (leader_sequence_two_keys(KC_E, KC_D)) {
- SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c"));
- did_leader_succeed = true;
- } else if (leader_sequence_two_keys(KC_A, KC_T)) {
- SEND_STRING("@guidehouse.com");
- did_leader_succeed = true;
- }
-
-
-#ifdef AUDIO_ENABLE
- if (did_leader_succeed) {
- PLAY_SONG(leader_succeed_song);
- } else {
- PLAY_SONG(leader_fail_song);
- }
-#endif
-}
-
diff --git a/keyboards/hazel/bad_wings/keymaps/miketronic/rules.mk b/keyboards/hazel/bad_wings/keymaps/miketronic/rules.mk
deleted file mode 100644
index 72c338c157..0000000000
--- a/keyboards/hazel/bad_wings/keymaps/miketronic/rules.mk
+++ /dev/null
@@ -1,31 +0,0 @@
-# Common feature for all keyboards
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-EXTRAKEY_ENABLE = yes # Audio control and System control
-TAP_DANCE_ENABLE = yes # Tap Dance keys
-NKRO_ENABLE = yes # Enable N-Key Rollover
-MACROS_ENABLED = yes
-
-# Keyboard specific
-MOUSEKEY_ENABLE = yes # Mouse keys
-CAPS_WORD_ENABLE = yes
-KEY_OVERRIDE_ENABLE = yes
-LEADER_ENABLE = yes
-
-
- LTO_ENABLE = no # Enabled this causes longer build time, but smaller file.
- AUTO_SHIFT_ENABLE = no
- UNICODE_ENABLE = no # Unicode
- CONSOLE_ENABLE = no # Console for debug
- COMMAND_ENABLE = no # Commands for debug and configuration
- RGBLIGHT_ENABLE = no
- BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
- SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend (it uses the same timer as BACKLIGHT_ENABLE)
- AUDIO_ENABLE = no # Audio output on port C6
- MIDI_ENABLE = no # MIDI support
- BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
- GRAVE_ESC_ENABLE = no
- SPACE_CADET_ENABLE = no
- COMBO_ENABLE = no
- OLED_ENABLE = no
- ENCODER_ENABLE = no
- ENCODER_MAP_ENABLE = no
diff --git a/keyboards/hazel/bad_wings/rules.mk b/keyboards/hazel/bad_wings/rules.mk
index 1001af0186..47a188155f 100644
--- a/keyboards/hazel/bad_wings/rules.mk
+++ b/keyboards/hazel/bad_wings/rules.mk
@@ -3,7 +3,7 @@ CAPS_WORD_ENABLE = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += spi_master.c
+SPI_DRIVER_REQUIRED = yes
CUSTOM_MATRIX = lite
POINTING_DEVICE_DRIVER = cirque_pinnacle_spi
diff --git a/keyboards/helix/pico/keymaps/default/keymap.c b/keyboards/helix/pico/keymaps/default/keymap.c
index 101a54bda6..3ee620360d 100644
--- a/keyboards/helix/pico/keymaps/default/keymap.c
+++ b/keyboards/helix/pico/keymaps/default/keymap.c
@@ -173,7 +173,6 @@ float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
// define variables for reactive RGB
@@ -329,36 +328,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_config.mode;
#endif
}
-
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(50); // gets rid of tick
-}
-
-void shutdown_user(void)
-{
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/helix/pico/keymaps/mtei/config.h b/keyboards/helix/pico/keymaps/mtei/config.h
deleted file mode 100644
index a633105ff9..0000000000
--- a/keyboards/helix/pico/keymaps/mtei/config.h
+++ /dev/null
@@ -1,18 +0,0 @@
-// Copyright (c) 2022 Takeshi Ishii (mtei@github)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-// place overrides here
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(STARTUP_SOUND)
- #define AUDIO_CLICKY
-#endif
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 300
-#define PERMISSIVE_HOLD
-
-// If you need more program area, try select and reduce rgblight modes to use.
-
diff --git a/keyboards/helix/pico/keymaps/mtei/keymap.c b/keyboards/helix/pico/keymaps/mtei/keymap.c
deleted file mode 100644
index 6a5f7d295a..0000000000
--- a/keyboards/helix/pico/keymaps/mtei/keymap.c
+++ /dev/null
@@ -1,368 +0,0 @@
-/* Copyright 2018 mtei
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "key_blocks.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define kc5(a,b,c,d,e) KC_##a, KC_##b, KC_##c, KC_##d, KC_##e
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-enum layer_number {
- _QWERTY = 0,
- _COLEMAK,
- _DVORAK,
- _EUCALYN,
- _NUML,
- _NUMR,
- _LOWER,
- _RAISE,
- _ADJUST,
-};
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- EUCALYN,
- NUML,
- NUMR,
- xEISU,
- xKANA,
- ZERO2,
- RGBRST
-};
-
-// clang-format off
-
-//Macros
-#define LT_NUML_SP LT(_NUML,KC_SPC)
-#define LT_NUMR_SP LT(_NUMR,KC_SPC)
-#define LT_RA_BSPC LT(_RAISE,KC_BSPC)
-#define LT_RA_ENT LT(_RAISE,KC_ENT)
-#define ___ _______
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty */
-#define LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS MO(_LOWER), MO(_LOWER), KC_CAPS, KC_LALT, KC_LGUI, LT_NUML_SP, LT_RA_BSPC
-#define RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER LT_RA_ENT, LT_NUMR_SP, KC_RGUI, KC_RALT, KC_APP, MO(_LOWER), MO(_LOWER)
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | A | S | D | F | G | | H | J | K | L | ; | Ctrl |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | | N | M | , | . | / | Shift|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_QWERTY] = LAYOUT_wrapper(
- KC_ESC, Q_____W_____E_____R_____T, Y_____U_____I_____O_____P, KC_BSLS,
- KC_LCTL, A_____S_____D_____F_____G, H_____J_____K_____L____SCLN, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____B, N_____M____COMM__DOT___SLSH, KC_RSFT,
- LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER
- ),
-
- /* Colemak */
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | Q | W | F | P | G | | J | L | U | Y | ; | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | A | R | S | T | D | | H | N | E | I | O | Ctrl |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | | K | M | , | . | / | Shift|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_COLEMAK] = LAYOUT_wrapper(
- KC_ESC, Q_____W_____F_____P_____G, J_____L_____U_____Y____SCLN, KC_BSLS,
- KC_LCTL, A_____R_____S_____T_____D, H_____N_____E_____I_____O, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____B, K_____M____COMM__DOT___SLSH, KC_RSFT,
- LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER
- ),
-
- /* Dvorak */
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | ' | , | . | P | Y | | F | G | C | R | L | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | A | O | E | U | I | | D | H | T | N | S | Ctrl |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | | B | M | W | V | Z | Shift|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_DVORAK] = LAYOUT_wrapper(
- KC_ESC, QUOT_COMM___DOT____P_____Y, F_____G_____C_____R_____L, KC_BSLS,
- KC_LCTL, A_____O_____E_____U_____I, D_____H_____T_____N_____S, KC_RCTL,
- KC_LSFT, SCLN___Q_____J_____K_____X, B_____M_____W_____V_____Z, KC_RSFT,
- LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER
- ),
-
- /* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | Q | W | , | . | ; | | M | R | D | Y | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | A | O | E | I | U | | G | T | K | S | N | Ctrl |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| Z | X | C | V | F | | B | H | J | L | / | Shift|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_EUCALYN] = LAYOUT_wrapper(
- KC_ESC, Q_____W___COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS,
- KC_LCTL, A_____O_____E_____I_____U, G_____T_____K_____S_____N, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____F, B_____H_____J_____L____SLSH, KC_RSFT,
- LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER
- ),
-
- /* Num */
-#define EXLM__AT__HASH___DLR__PERC kc5( EXLM, AT, HASH, DLR, PERC )
-#define CIRC_AMPR_ASTR__LPRN__RPRN kc5( CIRC, AMPR, ASTR, LPRN, RPRN )
-#define ____z_____z_____z_____z _______, _______, _______, _______
-#define ____z_____z_____z _______, _______, _______
-#define ____z_____z _______, _______
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_NUML] = LAYOUT_wrapper(
- _______, EXLM__AT__HASH___DLR__PERC, CIRC_AMPR_ASTR__LPRN__RPRN, _______,
- _______, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_F12,
- _______, F1____F2____F3____F4____F5, F6____F7____F8____F9____F10, KC_F11,
- _______, ____z_____z_____z_____z,____z_____z_____z,KC_SPC, ____z_____z_____z_____z, _______
- ),
- [_NUMR] = LAYOUT_wrapper(
- _______, EXLM__AT__HASH___DLR__PERC, CIRC_AMPR_ASTR__LPRN__RPRN, _______,
- _______, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_F12,
- _______, F1____F2____F3____F4____F5, F6____F7____F8____F9____F10, KC_F11,
- _______, ____z_____z_____z_____z,KC_SPC, ____z_____z_____z,____z_____z_____z_____z, _______
- ),
- /* Lower */
-#define XXXX__PAUS__SLCK___INS__XXXX XXXXXXX, KC_PAUS, KC_SCRL, KC_INS, XXXXXXX
-#define XXXX___INS__SLCK__PAUS__XXXX XXXXXXX, KC_INS, KC_SCRL, KC_PAUS, XXXXXXX
-#define HOME__XXXX____UP___DEL__PGUP KC_HOME, XXXXXXX, KC_UP, KC_DEL, KC_PGUP
-#define PGUP___DEL____UP__XXXX__HOME KC_PGUP, KC_DEL, KC_UP, XXXXXXX, KC_HOME
-#define END___LEFT__DOWN__RGHT__PGDN kc5( END, LEFT, DOWN, RGHT, PGDN )
-#define PGDN__LEFT__DOWN__RGHT___END kc5( PGDN, LEFT, DOWN, RGHT, END )
-#define ______PSCR__________________ _______, KC_PSCR, _______, _______, _______
-#define __________________PSCR______ _______, _______, _______, KC_PSCR, _______
-#define ADJ___ADJ MO(_ADJUST), MO(_ADJUST)
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | |Pause | ScrLk| Ins | | | | Ins | ScrLk|Pause | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Home | | Up |Delete| PgUp | | PgUp |Delete| Up | | Home | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | End | Left | Down | Right| PgDn | | PgDn | Left | Down | Right| End | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | PrtSc| | | |Adjust|Adjust| | | | PrtSc| | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_LOWER] = LAYOUT_wrapper(
- XXXXXXX, XXXX__PAUS__SLCK___INS__XXXX, XXXX___INS__SLCK__PAUS__XXXX, _______,
- _______, HOME__XXXX____UP___DEL__PGUP, PGUP___DEL____UP__XXXX__HOME, _______,
- _______, END___LEFT__DOWN__RGHT__PGDN, PGDN__LEFT__DOWN__RGHT___END, _______,
- _______, ______PSCR__________________, ADJ___ADJ, __________________PSCR______, _______
- ),
- /* Raise */
-#define XXXX__XXXX__XXXX__UNDS__MINS XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_MINS
-#define EQL__PLUS__XXXX__XXXX__XXXX KC_EQL, KC_PLUS, XXXXXXX, XXXXXXX, XXXXXXX
-#define XXXX__XXXX__XXXX__LCBR__LBRC XXXXXXX, XXXXXXX, XXXXXXX, KC_LCBR, KC_LBRC
-#define RBRC__RCBR__XXXX__XXXX__XXXX KC_RBRC, KC_RCBR, XXXXXXX, XXXXXXX, XXXXXXX
-#define XXXX__XXXX__XXXX__TILD___GRV XXXXXXX, XXXXXXX, XXXXXXX, KC_TILD, KC_GRV
-#define QUOT___DQT__XXXX__XXXX__XXXX KC_QUOT, KC_DQT, XXXXXXX, XXXXXXX, XXXXXXX
-#define XXXX______________XXXX XXXXXXX, _______, _______, XXXXXXX
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | TAB | | | | _ | - | | = | + | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | EISU | | | | { | [ | | ] | } | | | | KANA |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | ~ | ` | | ' | " | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_RAISE] = LAYOUT_wrapper(
- KC_TAB, XXXX__XXXX__XXXX__UNDS__MINS, EQL__PLUS__XXXX__XXXX__XXXX, XXXXXXX,
- xEISU, XXXX__XXXX__XXXX__LCBR__LBRC, RBRC__RCBR__XXXX__XXXX__XXXX, xKANA,
- XXXXXXX, XXXX__XXXX__XXXX__TILD___GRV, QUOT___DQT__XXXX__XXXX__XXXX, XXXXXXX,
- ADJ___ADJ, XXXX______________XXXX, ____z_____z, XXXX______________XXXX, ADJ___ADJ
- ),
- /* Adjust (Lower + Raise)
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | Reset|RGBRST|RGB ON|Aud on| Win | | Win | |Qwerty|Euclyn|Colemk|Dvorak|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | HUE+ | SAT+ | VAL+ |RGB md|Audoff| Mac | | Mac | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | HUE- | SAT- | VAL- | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_ADJUST] = LAYOUT(
- XXXXXXX, QK_BOOT, RGBRST, RGB_TOG, AU_ON, AG_SWAP, AG_SWAP, XXXXXXX, QWERTY, EUCALYN, COLEMAK, DVORAK,
- RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, AU_OFF, AG_NORM, AG_NORM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, ___,___, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______
- )
-};
-
-#ifdef AUDIO_ENABLE
-
-float tone_qwerty[][2] = SONG(QWERTY_SOUND);
-float tone_dvorak[][2] = SONG(DVORAK_SOUND);
-float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float tone_plover[][2] = SONG(PLOVER_SOUND);
-float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-#endif
-
-static int current_default_layer;
-
-layer_state_t default_layer_state_set_kb(layer_state_t state) {
- // 1<<_QWERTY - 1 == 1 - 1 == _QWERTY (=0)
- // 1<<_COLEMAK - 1 == 2 - 1 == _COLEMAK (=1)
- current_default_layer = state - 1;
- // 1<<_DVORAK - 2 == 4 - 2 == _DVORAK (=2)
- if ( current_default_layer == 3 ) current_default_layer -= 1;
- // 1<<_EUCALYN - 5 == 8 - 5 == _EUCALYN (=3)
- if ( current_default_layer == 7 ) current_default_layer -= 4;
- return state;
-}
-
-void update_base_layer(int base)
-{
- if( current_default_layer != base ) {
- eeconfig_update_default_layer(1UL<<base);
- default_layer_set(1UL<<base);
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_qwerty);
- #endif
- update_base_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_colemak);
- #endif
- update_base_layer(_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_dvorak);
- #endif
- update_base_layer(_DVORAK);
- }
- return false;
- break;
- case EUCALYN:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_dvorak);
- #endif
- update_base_layer(_EUCALYN);
- }
- return false;
- break;
- case xEISU:
- if (record->event.pressed) {
- if(keymap_config.swap_lalt_lgui==false){
- register_code(KC_LNG2);
- }else{
- SEND_STRING(SS_LALT("`"));
- }
- } else {
- unregister_code(KC_LNG2);
- }
- return false;
- break;
- case xKANA:
- if (record->event.pressed) {
- if(keymap_config.swap_lalt_lgui==false){
- register_code(KC_LNG1);
- }else{
- SEND_STRING(SS_LALT("`"));
- }
- } else {
- unregister_code(KC_LNG1);
- }
- return false;
- break;
- case RGBRST:
- #ifdef RGBLIGHT_ENABLE
- if (record->event.pressed) {
- eeconfig_update_rgblight_default();
- rgblight_enable();
- }
- #endif
- break;
- }
- return true;
-}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(50); // gets rid of tick
-}
-
-void shutdown_user(void)
-{
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/helix/pico/keymaps/mtei/rules.mk b/keyboards/helix/pico/keymaps/mtei/rules.mk
deleted file mode 100644
index 413d0519d6..0000000000
--- a/keyboards/helix/pico/keymaps/mtei/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# QMK Standard Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-# See TOP/keyboards/helix/rules.mk for a list of options that can be set.
-# See TOP/docs/config_options.md for more information.
-#
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-AUDIO_ENABLE = yes # Audio output on port B5
-LTO_ENABLE = no # if firmware size over limit, try this option
-
-# Helix Spacific Build Options
-# you can uncomment and edit follows 4 Variables
-# jp: 以下の4つの変数を必要に応じて編集し、コメントアウトをはずします。
-# LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
-# LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
-# LED_ANIMATIONS = yes # LED animations
-# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h
index 212d0e1e38..7ab494522a 100644
--- a/keyboards/helix/rev2/config.h
+++ b/keyboards/helix/rev2/config.h
@@ -21,9 +21,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define QUICK_TAP_TERM 0
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
diff --git a/keyboards/helix/rev2/info.json b/keyboards/helix/rev2/info.json
index 0056ba90b1..aac3cc9dbb 100644
--- a/keyboards/helix/rev2/info.json
+++ b/keyboards/helix/rev2/info.json
@@ -14,7 +14,13 @@
},
"diode_direction": "COL2ROW",
"split": {
- "soft_serial_pin": "D2"
+ "soft_serial_pin": "D2",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true
+ }
+ }
},
"tapping": {
"term": 100
diff --git a/keyboards/helix/rev2/keymaps/default/keymap.c b/keyboards/helix/rev2/keymaps/default/keymap.c
index b777d35d45..f23ff07b4f 100644
--- a/keyboards/helix/rev2/keymaps/default/keymap.c
+++ b/keyboards/helix/rev2/keymaps/default/keymap.c
@@ -185,7 +185,6 @@ float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
// define variables for reactive RGB
@@ -341,36 +340,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_get_mode();
#endif
}
-
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
-}
-
-void shutdown_user(void)
-{
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/config.h b/keyboards/helix/rev2/keymaps/edvorakjp/config.h
deleted file mode 100644
index 0dff4b59ca..0000000000
--- a/keyboards/helix/rev2/keymaps/edvorakjp/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#define SWAP_SCLN
-
-#undef QUICK_TAP_TERM
-#undef TAPPING_TERM
-#define TAPPING_TERM 300
-
-// If you need more program area, try select and reduce rgblight modes to use.
-
-// Selection of RGBLIGHT MODE to use.
-#if defined(LED_ANIMATIONS)
-// # define RGBLIGHT_EFFECT_BREATHING
-// # define RGBLIGHT_EFFECT_RAINBOW_MOOD
-// # define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-// # define RGBLIGHT_EFFECT_SNAKE
-// # define RGBLIGHT_EFFECT_KNIGHT
-// # define RGBLIGHT_EFFECT_CHRISTMAS
-# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-// # define RGBLIGHT_EFFECT_RGB_TEST
-// # define RGBLIGHT_EFFECT_ALTERNATING
-#endif // LED_ANIMATIONS
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/keymap.c b/keyboards/helix/rev2/keymaps/edvorakjp/keymap.c
deleted file mode 100644
index 6910bef535..0000000000
--- a/keyboards/helix/rev2/keymaps/edvorakjp/keymap.c
+++ /dev/null
@@ -1,75 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "split_util.h"
-#include "edvorakjp.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-#define __KC_TRNS_x4__ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-#define __KC_TRNS_x6__ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_EDVORAKJP_BASE] = LAYOUT_wrapper(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_GRV, __EDVORAKJP_BASE_L1__ , __EDVORAKJP_BASE_R1__ , KC_BSLS,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- KC_EQL, __EDVORAKJP_BASE_L2__ , __EDVORAKJP_BASE_R2__ , KC_MINS,
- //|--------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------|
- KC_ESC, __EDVORAKJP_BASE_L3__ , XXXXXXX, XXXXXXX, __EDVORAKJP_BASE_R3__ , KC_SLSH,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- __EDVORAKJP_PAGE__ , LA_TAB, LS_SPC,LOWER_TD, RAISE_TD, RC_BSPC, RG_ENT, __EDVORAKJP_CURSOR__
- //`--------------------------------------------------------------' `--------------------------------------------------------------'
- ),
-
- [L_EDVORAKJP_LOWER] = LAYOUT_wrapper(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- __KC_TRNS_x6__ , __KC_TRNS_x6__ ,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- XXXXXXX, XXXXXXX, __EDVORAKJP_BRACKET_L__ , XXXXXXX, XXXXXXX, __EDVORAKJP_BRACKET_R__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- __EDVORAKJP_FUNCTION_L__ , __EDVORAKJP_FUNCTION_R__ ,
- //|--------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------|
- KC_PSCR, XXXXXXX, __EDVORAKJP_PAGE__ , KC_TRNS, KC_TRNS, __EDVORAKJP_CURSOR__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- __KC_TRNS_x4__ , KC_TRNS, KC_TRNS, XXXXXXX, KC_MAC, RC_DEL, KC_TRNS, __KC_TRNS_x4__
- //`--------------------------------------------------------------' `--------------------------------------------------------------'
- ),
-
- [L_EDVORAKJP_RAISE] = LAYOUT_wrapper(
- //,-----------------------------------------------------. ,-----------------------------------------------------.
- __KC_TRNS_x6__ , __KC_TRNS_x6__ ,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- XXXXXXX, XXXXXXX, __EDVORAKJP_SYMBOL_L__ , __EDVORAKJP_SYMBOL_R__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- XXXXXXX, __EDVORAKJP_NUMBER_L__ , __EDVORAKJP_NUMBER_R__ , XXXXXXX,
- //|--------+--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------+--------|
- KC_PSCR, XXXXXXX, __EDVORAKJP_PAGE__ , KC_TRNS, KC_TRNS, __EDVORAKJP_CURSOR__ , XXXXXXX, XXXXXXX,
- //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------|
- __KC_TRNS_x4__ , KC_TRNS, KC_TRNS, KC_WIN, XXXXXXX, KC_TRNS, KC_TRNS, __KC_TRNS_x4__
- //`--------------------------------------------------------------' `--------------------------------------------------------------'
- )
-};
-// clang-format on
-
-// keymaps definitions are moved to keymap_Xrows.c.
-
-#ifdef RGBLIGHT_ENABLE
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- switch (get_highest_layer(state)) {
- case L_EDVORAKJP_LOWER:
- rgblight_sethsv_noeeprom(HSV_RED);
- break;
- case L_EDVORAKJP_RAISE:
- rgblight_sethsv_noeeprom(HSV_GREEN);
- break;
- default: // for any other layers, or the default layer
- rgblight_mode(RGBLIGHT_MODE_STATIC_GRADIENT + 3);
- rgblight_sethsv(HSV_RED);
- break;
- }
- return state;
-}
-#endif
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/oled.c b/keyboards/helix/rev2/keymaps/edvorakjp/oled.c
deleted file mode 100644
index 38a91c1639..0000000000
--- a/keyboards/helix/rev2/keymaps/edvorakjp/oled.c
+++ /dev/null
@@ -1,65 +0,0 @@
-#include <stdio.h>
-#include <string.h>
-#include "oled.h"
-
-#ifdef OLED_ENABLE
-void render_host_led_state(void) {
- char led_state_str[24];
- led_t led_state = host_keyboard_led_state();
-
- snprintf(led_state_str, sizeof(led_state_str), "NL:%s CL:%s SL:%s", led_state.num_lock ? "on" : "- ", led_state.caps_lock ? "on" : "- ", led_state.scroll_lock ? "on" : "- ");
- oled_write(led_state_str, false);
-}
-
-void render_layer_state(void) {
- char layer_name[17];
- oled_write_P(PSTR("Layer: "), false);
-
- switch (get_highest_layer(layer_state)) {
- case L_EDVORAKJP_BASE:
- oled_write_ln_P(PSTR("Default"), false);
- break;
- case L_EDVORAKJP_LOWER:
- oled_write_ln_P(PSTR("Lower"), false);
- break;
- case L_EDVORAKJP_RAISE:
- oled_write_ln_P(PSTR("Raise"), false);
- break;
- default:
- snprintf(layer_name, sizeof(layer_name), "Undef-%ld", layer_state);
- oled_write_ln(layer_name, false);
- }
-}
-
-void render_logo(void) {
- static const char helix_logo[] PROGMEM = {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0};
- oled_write_P(helix_logo, false);
-}
-
-void render_mode_icon(bool is_windows) {
- static const char logo[][2][3] = {
- {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}},
- {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}},
- };
- static char mode_icon[10];
-
- snprintf(mode_icon, sizeof(mode_icon), "%s\n%s ", logo[is_windows][0], logo[is_windows][1]);
- oled_write(mode_icon, false);
-}
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- // flips the display 180 degrees if offhand
- return is_keyboard_left() ? rotation : rotation ^ OLED_ROTATION_180;
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_left()) {
- render_mode_icon(!get_enable_kc_lang());
- render_layer_state();
- render_host_led_state();
- } else {
- render_logo();
- }
- return false;
-}
-#endif // OLED_ENABLE
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/oled.h b/keyboards/helix/rev2/keymaps/edvorakjp/oled.h
deleted file mode 100644
index d0c5685283..0000000000
--- a/keyboards/helix/rev2/keymaps/edvorakjp/oled.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-#include "edvorakjp.h"
-
-extern bool japanese_mode;
-
-void render_host_led_state(void);
-void render_layer_state(void);
-void render_logo(void);
-void render_mode_icon(bool is_windows);
-oled_rotation_t oled_init_user(oled_rotation_t rotation);
-bool oled_task_user(void);
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/readme.md b/keyboards/helix/rev2/keymaps/edvorakjp/readme.md
deleted file mode 100644
index dd406523d2..0000000000
--- a/keyboards/helix/rev2/keymaps/edvorakjp/readme.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# edvorakjp
-
-Epaew's Enhanced Dvorak layout for Japanese Programmer
-see [here](/users/edvorakjp) for more informations.
-
-## License
-
-Copyright 2018 Ryo Maeda epaew.333@gmail.com @epaew
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk
deleted file mode 100644
index 66d33e5e46..0000000000
--- a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk
+++ /dev/null
@@ -1,33 +0,0 @@
-# QMK Standard Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-# See TOP/keyboards/helix/rules.mk for a list of options that can be set.
-# See TOP/docs/config_options.md for more information.
-#
-SPLIT_KEYBOARD = yes
-LTO_ENABLE = no # if firmware size over limit, try this option
-TAP_DANCE_ENABLE = yes
-
-# Helix Spacific Build Options
-# you can uncomment and edit follows 7 Variables
-# jp: 以下の7つの変数を必要に応じて編集し、コメントアウトをはずします。
-# OLED_ENABLE = no # OLED_ENABLE
-# LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" instead of "common/glcdfont.c"
-# LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
-# LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
-# LED_ANIMATIONS = yes # LED animations
-# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
-OLED_SELECT = core
-
-# convert Helix-specific options (that represent combinations of standard options)
-# into QMK standard options.
-include $(strip $(KEYBOARD_LOCAL_FEATURES_MK))
-
-ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
- OPT_DEFS += -DRGBLED_BACK
-endif
-
-ifeq ($(strip $(OLED_ENABLE)), yes)
- SRC += oled.c
-endif
diff --git a/keyboards/helix/rev2/keymaps/five_rows/README.md b/keyboards/helix/rev2/keymaps/five_rows/README.md
deleted file mode 100644
index 10a4fa942c..0000000000
--- a/keyboards/helix/rev2/keymaps/five_rows/README.md
+++ /dev/null
@@ -1,84 +0,0 @@
-# Keymap for 5 rows Helix keyboard
-
-This keymap is only for 5 rows Helix keyboard.
-
-## Layout
-
-![fig1](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/827632dda7db87cf88d41a0d3b476c5962c29213/helix-five_rows_r3.png)
-
-## Layer
-
-|Priority|Number|Name|Discription|
-| ---- | ---- | --- | --- |
-|high|9|Adjust| keyboard local functions (violet)|
-||8|KFunction| TenkeyPad function keys (bule)|
-||7|Extra char| some charactors (red)|
-||6|Function| function keys (blue)|
-||2|Keypad|TenkeyPad|
-||2|Dvorak|Dvorak|
-||1|Colemak|Colemak|
-|low|0|Qwerty|QWERTY (base)|
-
-### Adjust Layer
-
-Adjust Layer has keyboard local function keys.
-
-* LED control.
-* Mac/Win mode change.
-* Qwerty/Colemak/Dvorak/TenkeyPad change.
-
-![fig2](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/827632dda7db87cf88d41a0d3b476c5962c29213/helix-five_rows_r3adj.png)
-
-### Mac mode and Win mode
-
-Mac mode swap Alt/Win(GUI) key.
-
-|mode|key|code|
-| ---- | ---- | --- |
-|Mac mode|Adjust + g(Qwerty)|AG_NORM|
-| |Adjust + h(Qwerty)| |
-|Win mode|Adjust + t(Qwerty)|AG_SWAP|
-| |Adjust + y(Qwerty)| |
-
-### LED control
-
-|command|key|code|
-| ---- | ---- | --- |
-|on/off|Adjust + e(Qwerty)|RGB_TOG|
-| |Adjust + i(Qwerty)| |
-|change mode|Adjust + d(Qwerty) |RGB_MOD|
-| |Adjust + k(Qwerty)| |
-|HUE +|Adjust + Left Control|RGB_HUI|
-| |Adjust + Right Control| |
-|HUE -|Adjust + Left Shift |RGB_HUD|
-| |Adjust + Right Shift | |
-|SAT +|Adjust + ;(Qwerty) |RGB_SAI|
-| |Adjust + a(Qwerty) | |
-|SAT -|Adjust + z(Qwerty) |RGB_SAD|
-| |Adjust + /(Qwerty) | |
-|Bright +|Adjust + s(Qwerty) |RGB_VAI|
-| |Adjust + l(Qwerty) | |
-|Bright -|Adjust + x(Qwerty) |RGB_VAD|
-| |Adjust + >(Qwerty) | |
-|reset|Adjust + w|RGBRST|
-
-### Qwerty, Colemak, Dvorak, TenkeyPad selection
-
-|char layout|key|
-| ---- | ---- |
-|Qwerty | Adjust + 5 |
-| | Adjust + 6 |
-|Calemak| Adjust + 4 |
-| | Adjust + 7 |
-|Dvorak | Adjust + 3 |
-| | Adjust + 8 |
-|Keypad | Adjust + 2 |
-| | Adjust + 9 |
-
-## TenkeyPad layout
-
-![fig3](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/827632dda7db87cf88d41a0d3b476c5962c29213/helix-five_rows_r3key.png)
-
-## Note
-
-![fig4](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/d6e9af7684c051de4744b9dee9cd96b762bf4e2d/five_rows_making2.jpg)
diff --git a/keyboards/helix/rev2/keymaps/five_rows/README_jp.md b/keyboards/helix/rev2/keymaps/five_rows/README_jp.md
deleted file mode 100644
index 317ffdd71d..0000000000
--- a/keyboards/helix/rev2/keymaps/five_rows/README_jp.md
+++ /dev/null
@@ -1,121 +0,0 @@
-# Keymap for 5 rows Helix keyboard
-
-本キーマップは、Helix キーボードの5行版専用のキーマップです。
-
-普通のキーボード使用者が、Helix キーボードを使うときになるべく違いが少なく戸惑いが少なくなるように意図したキーマップです。(意図通り成功しているかどうかは使用する人の判断で、、、)
-
-## キー配置
-以下に、Qwerty配列時の、文字配列の図を示します。
-
-![fig1](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/827632dda7db87cf88d41a0d3b476c5962c29213/helix-five_rows_r3.png)
-
-## レイヤー
-
-|優先順位|番号|名称|内容|
-| ---- | ---- | --- | --- |
-|高い|9|Adjust|機能キー(紫)|
-||8|KFunction|テンキーパッド用ファンクションキー類(青)|
-||7|Extra char|記号類(赤)|
-||6|Function|ファンクションキー類(青)|
-||3|Keypad|テンキーパッド配列|
-||2|Dvorak|Dvorak配列|
-||1|Colemak|Colemak配列|
-|低い|0|Qwerty|QWERTY配列(ベース)|
-
-Qwerty/Colemak/Dvorak/Keypad の各レイヤーは、後述する、Ajuestレイヤーの キーによる選択で、いずれか一つだけが有効になり、標準のキーマップとなります。
-
-Function レイヤーは、下段両端の4つのFnキーのどれかひとつを押している間だけ有効になり、矢印キー等のナビゲーションキーや F1, F2, ...F12キーなどが配置されています。
-上の図の青色の刻印のキーのあるレイヤーです。
-
-Extra レイヤーは、下段中央部の Enter キーか BS キーを一定時間(0.2秒)以上押していると押している間だけ有効になり、'+=-_[]{}' の 8つの記号と「英数」キー、「かな」キーが配置されています。
-このため、Enter/BS キーで Enter/BS を入力するには、Enter/BSキーを押して短時間ですぐ離してください。
-上の図の赤色の刻印のキーのあるレイヤーです。
-
-Adjust レイヤーは、Adjust キーを押している間有効になります。
-Adjust キーは Function レイヤーに有り、下段両端の4つのFnキーのどれか一つを押しながら、下段中央部の Enter キーか BS キーを押すことで Adjust レイヤーが有効になります。
-Adjust キー (Enter/BS)を押した後は、Fnキーは離して構いません。
-
-### Adjust レイヤー
-Ajust レイヤーは、LEDのコントロール、Mac/Win モードの切り替え、Qwerty配列, Colemak配列, Dvorak配列, TenkeyPad配列の切り替えが行えます。
-
-![fig2](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/827632dda7db87cf88d41a0d3b476c5962c29213/helix-five_rows_r3adj.png)
-
-### MacモードとWinモード
-キーボードには、Mac モードと、Win モードの二つのモードがあります。
-
-現在のモードはOLEDにアイコンとして表示されます。
-(以下の指定キーは、Qwerty配列時の文字を使ってキーを表示しています)
-
-|コマンド|指定キー|コード|
-| ---- | ---- | --- |
-|Macモード|Adjust + g(Qwerty)|AG_NORM|
-| |Adjust + h(Qwerty)| |
-|Winモード|Adjust + t(Qwerty)|AG_SWAP|
-| |Adjust + y(Qwerty)| |
-
-Mac モードと Win モードでは、AltキーとWin(GUI)キーが入れ替わります。
-
-Mac モードでは、Extra レイヤー の「英数」キーと「かな」キーで英語モードと日本語モードの切り替えができます。
-
-Winモードでは、該当のキーはどちらも共に Alt + `(日本語IMEの切り替え)として入力されます。
-
-### LEDコントロール
-
-バックライトやUnderglowをコントロールするにはAdjustレイヤーにある機能キーを使います。
-(以下の指定キーは、Qwerty配列時の文字を使ってキーを表示しています)
-
-|コマンド|指定キー|コード|
-| ---- | ---- | --- |
-|オン/オフ|Adjust + e(Qwerty)|RGB_TOG|
-| |Adjust + i(Qwerty)| |
-|モード切り替え|Adjust + d(Qwerty) |RGB_MOD|
-| |Adjust + k(Qwerty)| |
-|色相 +|Adjust + Left Control|RGB_HUI|
-| |Adjust + Right Control| |
-|色相 -|Adjust + Left Shift |RGB_HUD|
-| |Adjust + Right Shift | |
-|彩度 +|Adjust + ;(Qwerty) |RGB_SAI|
-| |Adjust + a(Qwerty) | |
-|彩度 -|Adjust + z(Qwerty) |RGB_SAD|
-| |Adjust + /(Qwerty) | |
-|明度 +|Adjust + s(Qwerty) |RGB_VAI|
-| |Adjust + l(Qwerty) | |
-|明度 -|Adjust + x(Qwerty) |RGB_VAD|
-| |Adjust + >(Qwerty) | |
-|リセット|Adjust + w|RGBRST|
-
-### 文字配列選択
-Qwerty, Colemak, Dvorak, Keypad それぞれの文字配列の選択は以下のキーを使います。
-
-|選択配列|指定キー|
-| ---- | ---- |
-|Qwerty | Adjust + 5 |
-| | Adjust + 6 |
-|Calemak| Adjust + 4 |
-| | Adjust + 7 |
-|Dvorak | Adjust + 3 |
-| | Adjust + 8 |
-|Keypad | Adjust + 2 |
-| | Adjust + 9 |
-
-## テンキーパッドのキー配置
-以下に、テンキーパッド配列時の、文字配列の図を示します。
-
-![fig3](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/827632dda7db87cf88d41a0d3b476c5962c29213/helix-five_rows_r3key.png)
-
-図でわかるように、テンキーと F1,F2..F12 のキー入力ができる配列です。
-F12キーは一定時間(0.2秒)以上押していると KFunc キーとして働き、押している間は、青色の刻印のキー入力を行えます。
-F12 そのものを入力するときは押して短時間ですぐ離してください。
-F12キーを押しているときは、F11キー は Adjust キーとなり、Adjust レイヤーが有効になります。
-これによって、Qwerty 配列などに戻すことが可能になります。
-
-## 備考
-本キーマップは、通常のキーボードの主要部分のホームポジション周辺をなるべくそのまま踏襲する方針で作成しました。
-変更点は以下の通りです。
-
- * 右手小指により多く割り当たっていた5つの記号と左上の1つの記号を中央に集め人差し指の担当とする。
- * Enter キーを親指担当として中央手前に移動。
- * Control キーを左右共にホームポジションの行に移動。
- * 左手親指に BackSpace キーを割り当てる。
-
-![fig4](https://gist.github.com/mtei/c81a3688206aa50996339cb9ced4751d/raw/d6e9af7684c051de4744b9dee9cd96b762bf4e2d/five_rows_making2.jpg)
diff --git a/keyboards/helix/rev2/keymaps/five_rows/config.h b/keyboards/helix/rev2/keymaps/five_rows/config.h
deleted file mode 100644
index 43f14aaf2c..0000000000
--- a/keyboards/helix/rev2/keymaps/five_rows/config.h
+++ /dev/null
@@ -1,16 +0,0 @@
-// Copyright (c) 2022 Takeshi Ishii (mtei@github)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 300
-#define PERMISSIVE_HOLD
-
-#undef OLED_UPDATE_INTERVAL
-#ifdef DEBUG_MATRIX_SCAN_RATE
-# define OLED_UPDATE_INTERVAL 500
-#else
-# define OLED_UPDATE_INTERVAL 50
-#endif
-
diff --git a/keyboards/helix/rev2/keymaps/five_rows/keymap.c b/keyboards/helix/rev2/keymaps/five_rows/keymap.c
deleted file mode 100644
index dc2759d5b6..0000000000
--- a/keyboards/helix/rev2/keymaps/five_rows/keymap.c
+++ /dev/null
@@ -1,474 +0,0 @@
-/* Copyright 2020 mtei
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "key_blocks.h"
-#include "layer_number_util.h"
-
-#ifdef ENABLE_COLEMAK
-# define COLEMAK_Colemak (COLEMAK, " Colemak"),
-#else
-# define COLEMAK_Colemak
-#endif
-#ifdef ENABLE_DVORAK
-# define DVORAK_Dvorak (DVORAK, " Dvorak"),
-#else
-# define DVORAK_Dvorak
-#endif
-#ifdef ENABLE_EUCALYN
-# define EUCALYN_Eucalyn (EUCALYN, " Eucalyn"),
-#else
-# define EUCALYN_Eucalyn
-#endif
-
-#define LAYER_NAME_LIST \
- (QWERTY, " Qwerty"), \
- COLEMAK_Colemak \
- DVORAK_Dvorak \
- EUCALYN_Eucalyn \
- (KEYPAD, " Keypad"), \
- (AUX, ":AUX"), \
- (KAUX, ":00"), \
- (LOWER, ":Func"), \
- (RAISE, ":Extra"), \
- (PADFUNC, ":PadFunc"), \
- (ADJUST, ":Adjust")
-
-enum layer_number {
- // _QWERTY, _COLEMAK, ...
- MAP(BUILD_LAYER_ENUM_NUMBER, LAYER_NAME_LIST)
-};
-
-#ifdef OLED_ENABLE
-// static const char QWERTY_name[] PROGMEM = " Qwerty"; ...
-MAP(BUILD_LAYER_NAME_STR, LAYER_NAME_LIST)
-
-const char *layer_names[] = {
- // [_QWERTY] = QWERTY_name, ...
- MAP(BUILD_LAYER_NAME_TABLE, LAYER_NAME_LIST)
-};
-#endif
-
-const size_t num_of_layer_names = GET_ITEM_COUNT(LAYER_NAME_LIST);
-
-extern keymap_config_t keymap_config;
-
-extern uint8_t is_master;
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- EUCALYN,
- KEYPAD,
- xEISU,
- xKANA,
- ZERO2,
- RGBRST
-};
-
-// clang-format off
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-//Macros
-#define KC_LOWER MO(_LOWER)
-#define XXXX XXXXXXX
-#define ____ _______
-#define KC_ADJ MO(_ADJUST)
-
-#define LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS \
- KC_LOWER, KC_LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC)
-#define RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER \
- LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP, KC_LOWER, KC_LOWER
-#define GRV__QUOT KC_GRV, KC_QUOT
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty */
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | S | D | F | G | | H | J | K | L | ; |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| Z | X | C | V | B | ` | ' | N | M | , | . | / |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
- [_QWERTY] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, Q_____W_____E_____R_____T, Y_____U_____I_____O_____P, KC_BSLS,
- KC_LCTL, A_____S_____D_____F_____G, H_____J_____K_____L____SCLN, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____B, GRV__QUOT, N_____M____COMM__DOT___SLSH, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-
- /* Colemak */
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | R | S | T | D | | H | N | E | I | O |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| Z | X | C | V | B | ` | ' | K | M | , | . | / |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
-#ifdef ENABLE_COLEMAK
- [_COLEMAK] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, Q_____W_____F_____P_____G, J_____L_____U_____Y____SCLN, KC_BSLS,
- KC_LCTL, A_____R_____S_____T_____D, H_____N_____E_____I_____O, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____B, GRV__QUOT, K_____M____COMM__DOT___SLSH, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-#endif
-
- /* Dvorak */
-#define GRV__SLSH KC_GRV, KC_SLSH
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | ' | , | . | P | Y | | F | G | C | R | L | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | O | E | U | I | | D | H | T | N | S |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| ; | Q | J | K | X | ` | / | B | M | W | V | Z |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
-#ifdef ENABLE_DVORAK
- [_DVORAK] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, QUOT_COMM___DOT____P_____Y, F_____G_____C_____R_____L, KC_BSLS,
- KC_LCTL, A_____O_____E_____U_____I, D_____H_____T_____N_____S, KC_RCTL,
- KC_LSFT, SCLN___Q_____J_____K_____X, GRV__SLSH, B_____M_____W_____V_____Z, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-#endif
-
- /* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | Q | W | , | . | ; | | M | R | D | Y | P | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | O | E | I | U | | G | T | K | S | N |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| Z | X | C | V | F | ` | ' | B | H | J | L | / |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
-#ifdef ENABLE_EUCALYN
- [_EUCALYN] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, Q_____W___COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS,
- KC_LCTL, A_____O_____E_____I_____U, G_____T_____K_____S_____N, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____F, GRV__QUOT, B_____H_____J_____L____SLSH, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-#endif
-
- /* Keypad */
-#define KP_TAB__PSLS_PAST KC_TAB, KC_PSLS, KC_PAST
-#define KP__7_____8_____9 KC_KP_7, KC_KP_8, KC_KP_9
-#define KP__4_____5_____6 KC_KP_4, KC_KP_5, KC_KP_6
-#define KP__1_____2_____3 KC_KP_1, KC_KP_2, KC_KP_3
-#define KP__0___COMM_PDOT KC_KP_0, KC_COMM, KC_PDOT
-#define F1___F6 KC_F1, KC_F6
-#define F2___F7 KC_F2, KC_F7
-#define F3___F8 KC_F3, KC_F8
-#define F4___F9 KC_F4, KC_F9
-#define F5__F10 KC_F5, KC_F10
-#define FF12 LT(_PADFUNC,KC_F12)
- /* ,-----------------------------------. ,-----------------------------------.
- * | Tab | / | * | Del | F1 | F6 | | F1 | F6 | Del | Tab | / | * |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | 7 | 8 | 9 | BS | F2 | F7 | | F2 | F7 | BS | 7 | 8 | 9 |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | 4 | 5 | 6 | - | F3 | F8 | | F3 | F8 | - | 4 | 5 | 6 |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | 1 | 2 | 3 | + | F4 | F9 | F11 | F11 | F4 | F9 | + | 1 | 2 | 3 |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | 0 | , | . |Enter| F5 | F10| F12 | F12 | F5 | F10|Enter| 0 | , | . |
- * `-----------------------------------------------------------------------------------'
- */
- [_KEYPAD] = LAYOUT_wrapper(
- KP_TAB__PSLS_PAST, KC_DEL, F1___F6, F1___F6, KC_DEL, KP_TAB__PSLS_PAST,
- KP__7_____8_____9, KC_BSPC, F2___F7, F2___F7, KC_BSPC, KP__7_____8_____9,
- KP__4_____5_____6, KC_PMNS, F3___F8, F3___F8, KC_PMNS, KP__4_____5_____6,
- KP__1_____2_____3, KC_PPLS, F4___F9, KC_F11,KC_F11, F4___F9, KC_PPLS, KP__1_____2_____3,
- KP__0___COMM_PDOT, KC_PENT, F5__F10, FF12, FF12, F5__F10, KC_PENT, KP__0___COMM_PDOT
- ),
-
- /* AUX modifier key layer
- * ,-----------------------------------. ,-----------------------------------.
- * | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | | 00 | | | | | | | | | | | 00 | |
- * `-----------------------------------------------------------------------------------'
- */
- [_KAUX] = LAYOUT(
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____,ZERO2, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,ZERO2, ____
- ),
-
- /* Keypad function layer */
-#define PAUS__SLCK__PSCR KC_PAUS, KC_SCRL, KC_PSCR
-#define PSCR__SLCK__PAUS KC_PSCR, KC_SCRL, KC_PAUS
-#define HOME___UP___PGUP KC_HOME, KC_UP, KC_PGUP
-#define PGUP___UP___HOME KC_PGUP, KC_UP, KC_HOME
-#define DEL____INS__LEFT__DOWN__RGHT KC_DEL, KC_INS, KC_LEFT, KC_DOWN, KC_RGHT
-#define LEFT__DOWN__RGHT___INS___DEL KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, KC_DEL
-#define PGDN___ADJ___ADJ__PGDN KC_PGDN, KC_ADJ, KC_ADJ, KC_PGDN
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | | | Pause| ScrLk| PtrSc| | PtrSc| ScrLk| Pause| | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | Home | Up | PgUp | | PgUp | Up | Home | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | |Delete|Insert| Left | Down | Right| | Left | Down | Right|Insert|Delete| |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | End | | PgDn |Adjust|Adjust| PgDn | | End | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_PADFUNC] = LAYOUT_wrapper(
- XXXX, XXXX, XXXX, PAUS__SLCK__PSCR, PSCR__SLCK__PAUS, XXXX, XXXX, XXXX,
- XXXX, XXXX, XXXX, HOME___UP___PGUP, PGUP___UP___HOME, XXXX, XXXX, XXXX,
- XXXX, DEL____INS__LEFT__DOWN__RGHT, LEFT__DOWN__RGHT___INS___DEL, XXXX,
- XXXX, XXXX, XXXX,KC_END,XXXX, PGDN___ADJ___ADJ__PGDN, XXXX,KC_END,XXXX, XXXX, XXXX,
- XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, ____, ____, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX
- ),
-
- /* Lower */
-#define XXXX__PAUS__SLCK___INS XXXX, KC_PAUS, KC_SCRL, KC_INS
-#define XXXX___INS__SLCK__PAUS__XXXX XXXX, KC_INS, KC_SCRL, KC_PAUS, XXXX
-#define ADJ___ADJ KC_ADJ, KC_ADJ
-#define HOME__XXXX___UP____DEL__PGUP KC_HOME, XXXX, KC_UP, KC_DEL, KC_PGUP
-#define PGUP___DEL___UP___XXXX__HOME KC_PGUP, KC_DEL, KC_UP, XXXX, KC_HOME
-#define END__LEFT__DOWN__RGHT__PGDN KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN
-#define PGDN__LEFT__DOWN__RGHT___END KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_END
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | |Pause | ScrLk| Ins | | | | Ins | ScrLk|Pause | | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Home | | Up |Delete| PgUp | | PgUp |Delete| Up | | Home | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | End | Left | Down | Right| PgDn |Adjust|Adjust| PgDn | Left | Down | Right| End | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | PrtSc| | | | | | | | | PrtSc| | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_LOWER] = LAYOUT_wrapper(
- XXXX, F1____F2____F3____F4____F5, F6____F7____F8____F9____F10, KC_F11,
- XXXX, XXXX__PAUS__SLCK___INS, XXXX, XXXX___INS__SLCK__PAUS__XXXX, KC_F12,
- ____, HOME__XXXX___UP____DEL__PGUP, PGUP___DEL___UP___XXXX__HOME, ____,
- ____, END__LEFT__DOWN__RGHT__PGDN, XXXX, XXXX, PGDN__LEFT__DOWN__RGHT___END, ____,
- ____, ____,KC_PSCR,____, ____, ____, ADJ___ADJ, ____, ____, ____,KC_PSCR,____, ____
- ),
-
- /* Raise */
-#define UNDS__MINS KC_UNDS, KC_MINS
-#define EQL___PLUS KC_EQL, KC_PLUS
-#define LCBR__LBRC KC_LCBR, KC_LBRC
-#define RBRC__RCBR KC_RBRC, KC_RCBR
-#define MNXT__VOLD__VOLU__MPLY KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-#define EISU__EISU xEISU, xEISU
-#define KANA__KANA xKANA, xKANA
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | _ | - | | = | + | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | { | [ | | ] | } | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | EISU | EISU | KANA | KANA | Next | Vol- | Vol+ | Play | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_RAISE] = LAYOUT_wrapper(
- XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX,
- XXXX, XXXX, XXXX, XXXX, UNDS__MINS, EQL___PLUS, XXXX, XXXX, XXXX, XXXX,
- ____, XXXX, XXXX, XXXX, LCBR__LBRC, RBRC__RCBR, XXXX, XXXX, XXXX, ____,
- ____, XXXX, XXXX, XXXX, XXXX, EISU__EISU, KANA__KANA, MNXT__VOLD__VOLU__MPLY, ____,
- ADJ___ADJ, XXXX, ____, ____, XXXX, ____, ____, XXXX, ____, ____, XXXX, ADJ___ADJ
- ),
-
- /* Adjust (Lower + Raise)
- * ,-----------------------------------------. ,-----------------------------------------.
- * | |Keypad|Dvorak|Colemk|Euclyn|Qwerty| |Qwerty|Euclyn|Colemk|Dvorak|Keypad| |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Reset|RGBRST|RGB ON|Aud on| Win | | Win |Aud on|RGB ON|RGBRST| | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | HUE+ | SAT+ | VAL+ |RGB md|Audoff| Mac | | Mac |Audoff|RGB md| VAL+ | SAT+ | HUE+ |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | HUE- | SAT- | VAL- | | | | | | | | | VAL- | SAT- | HUE- |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_ADJUST] = LAYOUT(
- XXXXXXX, KEYPAD, DVORAK, COLEMAK, EUCALYN, QWERTY, QWERTY, EUCALYN, COLEMAK, DVORAK, KEYPAD, XXXXXXX,
- XXXXXXX, QK_BOOT, RGBRST, RGB_TOG, AU_ON, AG_SWAP, AG_SWAP, AU_ON, RGB_TOG, RGBRST, XXXXXXX, XXXXXXX,
- RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, AU_OFF, AG_NORM, AG_NORM, AU_OFF, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI,
- RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX,____,____,XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD,
- _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,____,____,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______
- ),
-
- /* AUX modifier key layer */
-#define BSPC__RAEN KC_BSPC, LT(_RAISE,KC_ENT)
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | BS | Enter| | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_AUX] = LAYOUT_wrapper(
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, BSPC__RAEN, ____, ____, ____, ____, ____, ____, ____
- )
-};
-
-int current_default_layer;
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
- current_default_layer = get_highest_layer(state);
- return state;
-}
-
-void update_base_layer(int base)
-{
- if( current_default_layer != base ) {
- eeconfig_update_default_layer(1UL<<base);
- default_layer_set(1UL<<base);
- layer_off(_AUX);
- layer_off(_KAUX);
- } else {
- if( base < _KEYPAD )
- layer_invert(_AUX);
- else
- layer_invert(_KAUX);
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- update_base_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
-#ifdef ENABLE_COLEMAK
- if (record->event.pressed) {
- update_base_layer(_COLEMAK);
- }
-#endif
- return false;
- break;
- case DVORAK:
-#ifdef ENABLE_DVORAK
- if (record->event.pressed) {
- update_base_layer(_DVORAK);
- }
-#endif
- return false;
- break;
- case EUCALYN:
-#ifdef ENABLE_EUCALYN
- if (record->event.pressed) {
- update_base_layer(_EUCALYN);
- }
-#endif
- return false;
- break;
- case KEYPAD:
- if (record->event.pressed) {
- update_base_layer(_KEYPAD);
- }
- return false;
- break;
- case ZERO2:
- if (record->event.pressed) {
- SEND_STRING("00");
- }
- return false;
- break;
- case xEISU:
- if (record->event.pressed) {
- if(keymap_config.swap_lalt_lgui==false){
- register_code(KC_LNG2);
- }else{
- SEND_STRING(SS_LALT("`"));
- }
- } else {
- unregister_code(KC_LNG2);
- }
- return false;
- break;
- case xKANA:
- if (record->event.pressed) {
- if(keymap_config.swap_lalt_lgui==false){
- register_code(KC_LNG1);
- }else{
- SEND_STRING(SS_LALT("`"));
- }
- } else {
- unregister_code(KC_LNG1);
- }
- return false;
- break;
- case RGBRST:
- #ifdef RGBLIGHT_ENABLE
- if (record->event.pressed) {
- eeconfig_update_rgblight_default();
- rgblight_enable();
- }
- #endif
- break;
- }
- return true;
-}
diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk
deleted file mode 100644
index 3097316fba..0000000000
--- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk
+++ /dev/null
@@ -1,24 +0,0 @@
-USER_NAME := mtei
-SPLIT_KEYBOARD = yes
-
- CONSOLE_ENABLE = no # Console for debug
- COMMAND_ENABLE = no # Commands for debug and configuration
- # CONSOLE_ENABLE and COMMAND_ENABLE
- # yes, no +1500
- # yes, yes +3200
- # no, yes +400
-LTO_ENABLE = no # if firmware size over limit, try this option
-LED_ANIMATIONS = yes
-
-# Helix Spacific Build Options
-# you can uncomment and edit follows 7 Variables
-# jp: 以下の7つの変数を必要に応じて編集し、コメントアウトをはずします。
-# OLED_ENABLE = no # OLED_ENABLE
-# LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
-# LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
-# LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
-# LED_ANIMATIONS = yes # LED animations
-# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
-OLED_SELECT = core
-
-SRC += oled_display.c
diff --git a/keyboards/helix/rev2/keymaps/froggy/keymap.c b/keyboards/helix/rev2/keymaps/froggy/keymap.c
index dc047d3118..1680147157 100644
--- a/keyboards/helix/rev2/keymaps/froggy/keymap.c
+++ b/keyboards/helix/rev2/keymaps/froggy/keymap.c
@@ -181,7 +181,6 @@ float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
// define variables for reactive RGB
@@ -440,41 +439,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
//keyboard start-up code. Runs once when the firmware starts up.
void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_get_mode();
#endif
}
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
-}
-
-void shutdown_user(void)
-{
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
-
-
//assign the right code to your layers for OLED display
#define L_BASE 0
#define L_OPT 2
diff --git a/keyboards/helix/rev2/keymaps/xulkal/config.h b/keyboards/helix/rev2/keymaps/xulkal/config.h
deleted file mode 100644
index e2b325450a..0000000000
--- a/keyboards/helix/rev2/keymaps/xulkal/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// place overrides here
-
-// If you need more program area, try select and reduce rgblight modes to use.
-
-// Selection of RGBLIGHT MODE to use.
-#if defined(LED_ANIMATIONS)
-# define RGBLIGHT_EFFECT_BREATHING
-# define RGBLIGHT_EFFECT_RAINBOW_MOOD
-# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-# define RGBLIGHT_EFFECT_SNAKE
-# define RGBLIGHT_EFFECT_KNIGHT
-# define RGBLIGHT_EFFECT_CHRISTMAS
-# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-//#define RGBLIGHT_EFFECT_RGB_TEST
-//#define RGBLIGHT_EFFECT_ALTERNATING
-#endif
diff --git a/keyboards/helix/rev2/keymaps/xulkal/keymap.c b/keyboards/helix/rev2/keymaps/xulkal/keymap.c
deleted file mode 100644
index 28ca2e807b..0000000000
--- a/keyboards/helix/rev2/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,69 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-#ifdef PROTOCOL_LUFA
-#include "lufa.h"
-#include "split_util.h"
-#endif
-
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BkSp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |FN(CAPS)| A | S | D | F | G | | H | J | K | L | ; | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Sft[ | Z | X | C | V | B |RGBTOG|RGBRST| N | M | , | . | / | Sft] |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctl- | Win | LOWER| RAISE| Alt | Space|RGBRMOD|RGBMOD|Space| Left | Up | Down | Right| Ctl= |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_QWERTY] = EXPAND_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________,
- _________________QWERTY_L4_________________, KC_MINS, KC_EQL, _________________QWERTY_R4_________________,
- _________________QWERTY_L5_________________, KC_LBRC, KC_RBRC, _________________QWERTY_R5_________________
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = EXPAND_LAYOUT(
- ___________________GAME_L1_________________, ___________________GAME_R1_________________,
- ___________________GAME_L2_________________, ___________________GAME_R2_________________,
- ___________________GAME_L3_________________, ___________________GAME_R3_________________,
- ___________________GAME_L4_________________, KC_MINS, KC_EQL, ___________________GAME_R4_________________,
- ___________________GAME_L5_________________, KC_LBRC, KC_RBRC, ___________________GAME_R5_________________
- ),
-#endif
-
- [_LOWER] = EXPAND_LAYOUT(
- __________________LOWER_L1_________________, __________________LOWER_R1_________________,
- __________________LOWER_L2_________________, __________________LOWER_R2_________________,
- __________________LOWER_L3_________________, __________________LOWER_R3_________________,
- __________________LOWER_L4_________________, _______, _______, __________________LOWER_R4_________________,
- __________________LOWER_L5_________________, _______, _______, __________________LOWER_R5_________________
- ),
-
- [_RAISE] = EXPAND_LAYOUT(
- __________________RAISE_L1_________________, __________________RAISE_R1_________________,
- __________________RAISE_L2_________________, __________________RAISE_R2_________________,
- __________________RAISE_L3_________________, __________________RAISE_R3_________________,
- __________________RAISE_L4_________________, _______, _______, __________________RAISE_R4_________________,
- __________________RAISE_L5_________________, _______, _______, __________________RAISE_R5_________________
- ),
-
-#ifdef TRILAYER_ENABLED
- [_ADJUST] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________
- ),
-#endif
-};
diff --git a/keyboards/helix/rev2/keymaps/xulkal/rules.mk b/keyboards/helix/rev2/keymaps/xulkal/rules.mk
deleted file mode 100644
index 09e14f46ee..0000000000
--- a/keyboards/helix/rev2/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-RGBLIGHT_ENABLE = yes
-# Helix specific define for correct RGBLED_NUM
-OPT_DEFS += -DRGBLED_BACK
-
-OLED_ENABLE = yes
-# Helix specific font file
-OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
-# Xulkal specific oled define
-OPT_DEFS += -DOLED_90ROTATION
-
-SPLIT_KEYBOARD = yes
-
-# Explicitly disable helix standard post-processing
-KEYBOARD_LOCAL_FEATURES_MK :=
diff --git a/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c b/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c
index 20fa181d77..6c060aadec 100644
--- a/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c
+++ b/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c
@@ -171,7 +171,6 @@ float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
// define variables for reactive RGB
@@ -322,40 +321,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_get_mode();
#endif
}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
-}
-
-void shutdown_user(void)
-{
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
-
#ifdef OLED_ENABLE
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
if (is_keyboard_master()) {
diff --git a/keyboards/helix/rev3_4rows/config.h b/keyboards/helix/rev3_4rows/config.h
index 1e60ed1f0f..000f99834a 100644
--- a/keyboards/helix/rev3_4rows/config.h
+++ b/keyboards/helix/rev3_4rows/config.h
@@ -41,9 +41,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define SPLIT_HAND_MATRIX_GRID D7,B2
#define SPLIT_HAND_MATRIX_GRID_LOW_IS_RIGHT
-/* Dip switch on matrix grid */
-#define DIP_SWITCH_MATRIX_GRID { {0,6}, {1,6}, {5,6}, {6,6} }
-
#ifdef RGB_MATRIX_ENABLE
#define RGB_MATRIX_LED_COUNT 50
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
diff --git a/keyboards/helix/rev3_4rows/info.json b/keyboards/helix/rev3_4rows/info.json
index ffe1c987e2..79d4847c7b 100644
--- a/keyboards/helix/rev3_4rows/info.json
+++ b/keyboards/helix/rev3_4rows/info.json
@@ -12,7 +12,10 @@
"driver": "ws2812",
"sat_steps": 8,
"val_steps": 8,
- "speed_steps": 10,
+ "speed_steps": 10
+ },
+ "dip_switch": {
+ "matrix_grid": [ [0,6], [1,6], [5,6], [6,6] ]
},
"encoder": {
"rotary": [
diff --git a/keyboards/helix/rev3_5rows/config.h b/keyboards/helix/rev3_5rows/config.h
index f48115663c..44bbc5f194 100644
--- a/keyboards/helix/rev3_5rows/config.h
+++ b/keyboards/helix/rev3_5rows/config.h
@@ -41,9 +41,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define SPLIT_HAND_MATRIX_GRID D7,B2
#define SPLIT_HAND_MATRIX_GRID_LOW_IS_RIGHT
-/* Dip switch on matrix grid */
-#define DIP_SWITCH_MATRIX_GRID { {0,6}, {1,6}, {5,6}, {6,6} }
-
#ifdef RGB_MATRIX_ENABLE
#define RGB_MATRIX_LED_COUNT 64
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
diff --git a/keyboards/helix/rev3_5rows/info.json b/keyboards/helix/rev3_5rows/info.json
index f7546b1322..43cb20dd5e 100644
--- a/keyboards/helix/rev3_5rows/info.json
+++ b/keyboards/helix/rev3_5rows/info.json
@@ -14,6 +14,9 @@
"val_steps": 8,
"speed_steps": 10
},
+ "dip_switch": {
+ "matrix_grid": [ [0,6], [1,6], [5,6], [6,6] ]
+ },
"encoder": {
"rotary": [
{"pin_a": "B6", "pin_b": "B5"}
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h
deleted file mode 100644
index a6fd32c613..0000000000
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h
+++ /dev/null
@@ -1,18 +0,0 @@
-// Copyright (c) 2022 Takeshi Ishii (mtei@github)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 300
-#define PERMISSIVE_HOLD
-
-#undef OLED_UPDATE_INTERVAL
-#ifdef DEBUG_MATRIX_SCAN_RATE
-# define OLED_UPDATE_INTERVAL 500
-#else
-# define OLED_UPDATE_INTERVAL 50
-#endif
-
-#define PSEUDO_SPRINTF_DEFINED
-
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c b/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c
deleted file mode 100644
index dc2759d5b6..0000000000
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c
+++ /dev/null
@@ -1,474 +0,0 @@
-/* Copyright 2020 mtei
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "key_blocks.h"
-#include "layer_number_util.h"
-
-#ifdef ENABLE_COLEMAK
-# define COLEMAK_Colemak (COLEMAK, " Colemak"),
-#else
-# define COLEMAK_Colemak
-#endif
-#ifdef ENABLE_DVORAK
-# define DVORAK_Dvorak (DVORAK, " Dvorak"),
-#else
-# define DVORAK_Dvorak
-#endif
-#ifdef ENABLE_EUCALYN
-# define EUCALYN_Eucalyn (EUCALYN, " Eucalyn"),
-#else
-# define EUCALYN_Eucalyn
-#endif
-
-#define LAYER_NAME_LIST \
- (QWERTY, " Qwerty"), \
- COLEMAK_Colemak \
- DVORAK_Dvorak \
- EUCALYN_Eucalyn \
- (KEYPAD, " Keypad"), \
- (AUX, ":AUX"), \
- (KAUX, ":00"), \
- (LOWER, ":Func"), \
- (RAISE, ":Extra"), \
- (PADFUNC, ":PadFunc"), \
- (ADJUST, ":Adjust")
-
-enum layer_number {
- // _QWERTY, _COLEMAK, ...
- MAP(BUILD_LAYER_ENUM_NUMBER, LAYER_NAME_LIST)
-};
-
-#ifdef OLED_ENABLE
-// static const char QWERTY_name[] PROGMEM = " Qwerty"; ...
-MAP(BUILD_LAYER_NAME_STR, LAYER_NAME_LIST)
-
-const char *layer_names[] = {
- // [_QWERTY] = QWERTY_name, ...
- MAP(BUILD_LAYER_NAME_TABLE, LAYER_NAME_LIST)
-};
-#endif
-
-const size_t num_of_layer_names = GET_ITEM_COUNT(LAYER_NAME_LIST);
-
-extern keymap_config_t keymap_config;
-
-extern uint8_t is_master;
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- DVORAK,
- EUCALYN,
- KEYPAD,
- xEISU,
- xKANA,
- ZERO2,
- RGBRST
-};
-
-// clang-format off
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-//Macros
-#define KC_LOWER MO(_LOWER)
-#define XXXX XXXXXXX
-#define ____ _______
-#define KC_ADJ MO(_ADJUST)
-
-#define LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS \
- KC_LOWER, KC_LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC)
-#define RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER \
- LT(_RAISE,KC_ENT), KC_SPC, KC_RGUI, KC_RALT, KC_APP, KC_LOWER, KC_LOWER
-#define GRV__QUOT KC_GRV, KC_QUOT
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty */
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | S | D | F | G | | H | J | K | L | ; |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| Z | X | C | V | B | ` | ' | N | M | , | . | / |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
- [_QWERTY] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, Q_____W_____E_____R_____T, Y_____U_____I_____O_____P, KC_BSLS,
- KC_LCTL, A_____S_____D_____F_____G, H_____J_____K_____L____SCLN, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____B, GRV__QUOT, N_____M____COMM__DOT___SLSH, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-
- /* Colemak */
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | R | S | T | D | | H | N | E | I | O |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| Z | X | C | V | B | ` | ' | K | M | , | . | / |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
-#ifdef ENABLE_COLEMAK
- [_COLEMAK] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, Q_____W_____F_____P_____G, J_____L_____U_____Y____SCLN, KC_BSLS,
- KC_LCTL, A_____R_____S_____T_____D, H_____N_____E_____I_____O, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____B, GRV__QUOT, K_____M____COMM__DOT___SLSH, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-#endif
-
- /* Dvorak */
-#define GRV__SLSH KC_GRV, KC_SLSH
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | ' | , | . | P | Y | | F | G | C | R | L | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | O | E | U | I | | D | H | T | N | S |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| ; | Q | J | K | X | ` | / | B | M | W | V | Z |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
-#ifdef ENABLE_DVORAK
- [_DVORAK] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, QUOT_COMM___DOT____P_____Y, F_____G_____C_____R_____L, KC_BSLS,
- KC_LCTL, A_____O_____E_____U_____I, D_____H_____T_____N_____S, KC_RCTL,
- KC_LSFT, SCLN___Q_____J_____K_____X, GRV__SLSH, B_____M_____W_____V_____Z, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-#endif
-
- /* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */
- /* ,-----------------------------------. ,-----------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Tab | Q | W | , | . | ; | | M | R | D | Y | P | \ |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | Ctrl| A | O | E | I | U | | G | T | K | S | N |Ctrl |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Shift| Z | X | C | V | F | ` | ' | B | H | J | L | / |Shift|
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower|
- * `-----------------------------------------------------------------------------------'
- */
-#ifdef ENABLE_EUCALYN
- [_EUCALYN] = LAYOUT_wrapper(
- KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC,
- KC_TAB, Q_____W___COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS,
- KC_LCTL, A_____O_____E_____I_____U, G_____T_____K_____S_____N, KC_RCTL,
- KC_LSFT, Z_____X_____C_____V_____F, GRV__QUOT, B_____H_____J_____L____SLSH, KC_RSFT,
- LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER
- ),
-#endif
-
- /* Keypad */
-#define KP_TAB__PSLS_PAST KC_TAB, KC_PSLS, KC_PAST
-#define KP__7_____8_____9 KC_KP_7, KC_KP_8, KC_KP_9
-#define KP__4_____5_____6 KC_KP_4, KC_KP_5, KC_KP_6
-#define KP__1_____2_____3 KC_KP_1, KC_KP_2, KC_KP_3
-#define KP__0___COMM_PDOT KC_KP_0, KC_COMM, KC_PDOT
-#define F1___F6 KC_F1, KC_F6
-#define F2___F7 KC_F2, KC_F7
-#define F3___F8 KC_F3, KC_F8
-#define F4___F9 KC_F4, KC_F9
-#define F5__F10 KC_F5, KC_F10
-#define FF12 LT(_PADFUNC,KC_F12)
- /* ,-----------------------------------. ,-----------------------------------.
- * | Tab | / | * | Del | F1 | F6 | | F1 | F6 | Del | Tab | / | * |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | 7 | 8 | 9 | BS | F2 | F7 | | F2 | F7 | BS | 7 | 8 | 9 |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | 4 | 5 | 6 | - | F3 | F8 | | F3 | F8 | - | 4 | 5 | 6 |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | 1 | 2 | 3 | + | F4 | F9 | F11 | F11 | F4 | F9 | + | 1 | 2 | 3 |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | 0 | , | . |Enter| F5 | F10| F12 | F12 | F5 | F10|Enter| 0 | , | . |
- * `-----------------------------------------------------------------------------------'
- */
- [_KEYPAD] = LAYOUT_wrapper(
- KP_TAB__PSLS_PAST, KC_DEL, F1___F6, F1___F6, KC_DEL, KP_TAB__PSLS_PAST,
- KP__7_____8_____9, KC_BSPC, F2___F7, F2___F7, KC_BSPC, KP__7_____8_____9,
- KP__4_____5_____6, KC_PMNS, F3___F8, F3___F8, KC_PMNS, KP__4_____5_____6,
- KP__1_____2_____3, KC_PPLS, F4___F9, KC_F11,KC_F11, F4___F9, KC_PPLS, KP__1_____2_____3,
- KP__0___COMM_PDOT, KC_PENT, F5__F10, FF12, FF12, F5__F10, KC_PENT, KP__0___COMM_PDOT
- ),
-
- /* AUX modifier key layer
- * ,-----------------------------------. ,-----------------------------------.
- * | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
- * | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | | | | | | | | | | | | | | |
- * |-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----|
- * | | 00 | | | | | | | | | | | 00 | |
- * `-----------------------------------------------------------------------------------'
- */
- [_KAUX] = LAYOUT(
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____,ZERO2, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,ZERO2, ____
- ),
-
- /* Keypad function layer */
-#define PAUS__SLCK__PSCR KC_PAUS, KC_SCRL, KC_PSCR
-#define PSCR__SLCK__PAUS KC_PSCR, KC_SCRL, KC_PAUS
-#define HOME___UP___PGUP KC_HOME, KC_UP, KC_PGUP
-#define PGUP___UP___HOME KC_PGUP, KC_UP, KC_HOME
-#define DEL____INS__LEFT__DOWN__RGHT KC_DEL, KC_INS, KC_LEFT, KC_DOWN, KC_RGHT
-#define LEFT__DOWN__RGHT___INS___DEL KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, KC_DEL
-#define PGDN___ADJ___ADJ__PGDN KC_PGDN, KC_ADJ, KC_ADJ, KC_PGDN
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | | | Pause| ScrLk| PtrSc| | PtrSc| ScrLk| Pause| | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | Home | Up | PgUp | | PgUp | Up | Home | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | |Delete|Insert| Left | Down | Right| | Left | Down | Right|Insert|Delete| |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | End | | PgDn |Adjust|Adjust| PgDn | | End | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_PADFUNC] = LAYOUT_wrapper(
- XXXX, XXXX, XXXX, PAUS__SLCK__PSCR, PSCR__SLCK__PAUS, XXXX, XXXX, XXXX,
- XXXX, XXXX, XXXX, HOME___UP___PGUP, PGUP___UP___HOME, XXXX, XXXX, XXXX,
- XXXX, DEL____INS__LEFT__DOWN__RGHT, LEFT__DOWN__RGHT___INS___DEL, XXXX,
- XXXX, XXXX, XXXX,KC_END,XXXX, PGDN___ADJ___ADJ__PGDN, XXXX,KC_END,XXXX, XXXX, XXXX,
- XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, ____, ____, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX
- ),
-
- /* Lower */
-#define XXXX__PAUS__SLCK___INS XXXX, KC_PAUS, KC_SCRL, KC_INS
-#define XXXX___INS__SLCK__PAUS__XXXX XXXX, KC_INS, KC_SCRL, KC_PAUS, XXXX
-#define ADJ___ADJ KC_ADJ, KC_ADJ
-#define HOME__XXXX___UP____DEL__PGUP KC_HOME, XXXX, KC_UP, KC_DEL, KC_PGUP
-#define PGUP___DEL___UP___XXXX__HOME KC_PGUP, KC_DEL, KC_UP, XXXX, KC_HOME
-#define END__LEFT__DOWN__RGHT__PGDN KC_END, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN
-#define PGDN__LEFT__DOWN__RGHT___END KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_END
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | |Pause | ScrLk| Ins | | | | Ins | ScrLk|Pause | | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Home | | Up |Delete| PgUp | | PgUp |Delete| Up | | Home | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | End | Left | Down | Right| PgDn |Adjust|Adjust| PgDn | Left | Down | Right| End | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | PrtSc| | | | | | | | | PrtSc| | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_LOWER] = LAYOUT_wrapper(
- XXXX, F1____F2____F3____F4____F5, F6____F7____F8____F9____F10, KC_F11,
- XXXX, XXXX__PAUS__SLCK___INS, XXXX, XXXX___INS__SLCK__PAUS__XXXX, KC_F12,
- ____, HOME__XXXX___UP____DEL__PGUP, PGUP___DEL___UP___XXXX__HOME, ____,
- ____, END__LEFT__DOWN__RGHT__PGDN, XXXX, XXXX, PGDN__LEFT__DOWN__RGHT___END, ____,
- ____, ____,KC_PSCR,____, ____, ____, ADJ___ADJ, ____, ____, ____,KC_PSCR,____, ____
- ),
-
- /* Raise */
-#define UNDS__MINS KC_UNDS, KC_MINS
-#define EQL___PLUS KC_EQL, KC_PLUS
-#define LCBR__LBRC KC_LCBR, KC_LBRC
-#define RBRC__RCBR KC_RBRC, KC_RCBR
-#define MNXT__VOLD__VOLU__MPLY KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-#define EISU__EISU xEISU, xEISU
-#define KANA__KANA xKANA, xKANA
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | _ | - | | = | + | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | { | [ | | ] | } | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | EISU | EISU | KANA | KANA | Next | Vol- | Vol+ | Play | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_RAISE] = LAYOUT_wrapper(
- XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX, XXXX,
- XXXX, XXXX, XXXX, XXXX, UNDS__MINS, EQL___PLUS, XXXX, XXXX, XXXX, XXXX,
- ____, XXXX, XXXX, XXXX, LCBR__LBRC, RBRC__RCBR, XXXX, XXXX, XXXX, ____,
- ____, XXXX, XXXX, XXXX, XXXX, EISU__EISU, KANA__KANA, MNXT__VOLD__VOLU__MPLY, ____,
- ADJ___ADJ, XXXX, ____, ____, XXXX, ____, ____, XXXX, ____, ____, XXXX, ADJ___ADJ
- ),
-
- /* Adjust (Lower + Raise)
- * ,-----------------------------------------. ,-----------------------------------------.
- * | |Keypad|Dvorak|Colemk|Euclyn|Qwerty| |Qwerty|Euclyn|Colemk|Dvorak|Keypad| |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Reset|RGBRST|RGB ON|Aud on| Win | | Win |Aud on|RGB ON|RGBRST| | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | HUE+ | SAT+ | VAL+ |RGB md|Audoff| Mac | | Mac |Audoff|RGB md| VAL+ | SAT+ | HUE+ |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | HUE- | SAT- | VAL- | | | | | | | | | VAL- | SAT- | HUE- |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_ADJUST] = LAYOUT(
- XXXXXXX, KEYPAD, DVORAK, COLEMAK, EUCALYN, QWERTY, QWERTY, EUCALYN, COLEMAK, DVORAK, KEYPAD, XXXXXXX,
- XXXXXXX, QK_BOOT, RGBRST, RGB_TOG, AU_ON, AG_SWAP, AG_SWAP, AU_ON, RGB_TOG, RGBRST, XXXXXXX, XXXXXXX,
- RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, AU_OFF, AG_NORM, AG_NORM, AU_OFF, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI,
- RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX,____,____,XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD,
- _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,____,____,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______
- ),
-
- /* AUX modifier key layer */
-#define BSPC__RAEN KC_BSPC, LT(_RAISE,KC_ENT)
- /* ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | BS | Enter| | | | | | | |
- * `-------------------------------------------------------------------------------------------------'
- */
- [_AUX] = LAYOUT_wrapper(
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____,
- ____, ____, ____, ____, ____, BSPC__RAEN, ____, ____, ____, ____, ____, ____, ____
- )
-};
-
-int current_default_layer;
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
- current_default_layer = get_highest_layer(state);
- return state;
-}
-
-void update_base_layer(int base)
-{
- if( current_default_layer != base ) {
- eeconfig_update_default_layer(1UL<<base);
- default_layer_set(1UL<<base);
- layer_off(_AUX);
- layer_off(_KAUX);
- } else {
- if( base < _KEYPAD )
- layer_invert(_AUX);
- else
- layer_invert(_KAUX);
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- update_base_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
-#ifdef ENABLE_COLEMAK
- if (record->event.pressed) {
- update_base_layer(_COLEMAK);
- }
-#endif
- return false;
- break;
- case DVORAK:
-#ifdef ENABLE_DVORAK
- if (record->event.pressed) {
- update_base_layer(_DVORAK);
- }
-#endif
- return false;
- break;
- case EUCALYN:
-#ifdef ENABLE_EUCALYN
- if (record->event.pressed) {
- update_base_layer(_EUCALYN);
- }
-#endif
- return false;
- break;
- case KEYPAD:
- if (record->event.pressed) {
- update_base_layer(_KEYPAD);
- }
- return false;
- break;
- case ZERO2:
- if (record->event.pressed) {
- SEND_STRING("00");
- }
- return false;
- break;
- case xEISU:
- if (record->event.pressed) {
- if(keymap_config.swap_lalt_lgui==false){
- register_code(KC_LNG2);
- }else{
- SEND_STRING(SS_LALT("`"));
- }
- } else {
- unregister_code(KC_LNG2);
- }
- return false;
- break;
- case xKANA:
- if (record->event.pressed) {
- if(keymap_config.swap_lalt_lgui==false){
- register_code(KC_LNG1);
- }else{
- SEND_STRING(SS_LALT("`"));
- }
- } else {
- unregister_code(KC_LNG1);
- }
- return false;
- break;
- case RGBRST:
- #ifdef RGBLIGHT_ENABLE
- if (record->event.pressed) {
- eeconfig_update_rgblight_default();
- rgblight_enable();
- }
- #endif
- break;
- }
- return true;
-}
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
deleted file mode 100644
index a6ce7de118..0000000000
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-USER_NAME := mtei
-
- CONSOLE_ENABLE = no # Console for debug
- COMMAND_ENABLE = no # Commands for debug and configuration
- # CONSOLE_ENABLE and COMMAND_ENABLE
- # yes, no +1500
- # yes, yes +3200
- # no, yes +400
-ENCODER_ENABLE = no
-LTO_ENABLE = no # if firmware size over limit, try this option
-LED_ANIMATIONS = yes
diff --git a/keyboards/hfdkb/ac001/config.h b/keyboards/hfdkb/ac001/config.h
index 6c0c2a2cf6..7d38c7392c 100644
--- a/keyboards/hfdkb/ac001/config.h
+++ b/keyboards/hfdkb/ac001/config.h
@@ -32,7 +32,6 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
diff --git a/keyboards/hfdkb/ac001/info.json b/keyboards/hfdkb/ac001/info.json
index 0a361d63ed..3f896d5988 100644
--- a/keyboards/hfdkb/ac001/info.json
+++ b/keyboards/hfdkb/ac001/info.json
@@ -17,6 +17,13 @@
"rows": ["B15"]
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"ws2812": {
"pin": "A1"
},
diff --git a/keyboards/hfdkb/ac001/rules.mk b/keyboards/hfdkb/ac001/rules.mk
index 81b7e82c3f..1358ab075a 100644
--- a/keyboards/hfdkb/ac001/rules.mk
+++ b/keyboards/hfdkb/ac001/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
diff --git a/keyboards/hhkb/ansi/keymaps/brett/config.h b/keyboards/hhkb/ansi/keymaps/brett/config.h
deleted file mode 100644
index 0711122d74..0000000000
--- a/keyboards/hhkb/ansi/keymaps/brett/config.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-// Define mousekey settings
-#define MOUSEKEY_DELAY 0
-#define MOUSEKEY_INTERVAL 20
-#define MOUSEKEY_MAX_SPEED 2
-#define MOUSEKEY_TIME_TO_MAX 5
-#define MOUSEKEY_WHEEL_DELAY 0
-
-#define LSPO_KEY KC_9
-#define RSPC_KEY KC_0
-#define LSPO_MOD KC_LSFT
-#define RSPC_MOD KC_RSFT
-
diff --git a/keyboards/hhkb/ansi/keymaps/brett/keymap.c b/keyboards/hhkb/ansi/keymaps/brett/keymap.c
deleted file mode 100644
index 04e3517a95..0000000000
--- a/keyboards/hhkb/ansi/keymaps/brett/keymap.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/* -*- eval: (turn-on-orgtbl); -*-
- * Brettm12345 HHKB Layout
- */
-#include QMK_KEYBOARD_H
-#include "brett.h"
-
-enum layers {
- BASE = 0,
- HHKB = 1,
- PROG = 2,
- MOUSE = 3
-};
-
-// Tap for tab hold for MOUSE
-#define TAB_MOUSE LT(MOUSE, KC_TAB)
-
-// Tap for space hold for PROG
-#define SPACE_PROG LT(PROG, KC_SPC)
-
-// Tap for ESC hold for CTRL
-#define CTL_ESC CTL_T(KC_ESC)
-
-// Tab for ; hold for PROG
-#define PROG_SCLN LT(PROG, KC_SCLN)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* BASE Level: Default Layer
- |---------+---+---+---+---+---+---+---+---+---+---+--------+--------+-----------+---|
- | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
- |---------+---+---+---+---+---+---+---+---+---+---+--------+--------+-----------+---|
- | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Backspace | * |
- |---------+---+---+---+---+---+---+---+---+---+---+--------+--------+-----------+---|
- | Control | A | S | D | F | G | H | J | K | L | ; | ' | Return | ****** | * |
- |---------+---+---+---+---+---+---+---+---+---+---+--------+--------+-----------+---|
- | LShift | Z | X | C | V | B | N | M | , | . | / | RShift | HHKB | ****** | * |
- |---------+---+---+---+---+---+---+---+---+---+---+--------+--------+-----------+---|
-
- |------+------+----------------------------+------+------|
- | LAlt | LGUI | ******* Space/Prog ******* | RGUI | RAlt |
- |------+------+----------------------------+------+------|
- */
-
- [BASE] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- TAB_MOUSE, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- CTL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, PROG_SCLN, KC_QUOT, KC_ENT,
- SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC, MO(HHKB),
- KC_LALT, KC_LGUI, SPACE_PROG, KC_RGUI, KC_RALT),
-
- /* HHKB Level: Function Layer
- |---------+------+------+--------+---------+-------+-----------+---------+---------+---------+----------------+--------+------+--------+-----|
- | Flash | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
- |---------+------+------+--------+---------+-------+-----------+---------+---------+---------+----------------+--------+------+--------+-----|
- | Caps | Calc | Mail | Media | Browser | My PC | Browser | u | i | o | Print | [ | ] | Backsp | * |
- | | | | Player | Refresh | | Favorites | | | | Screen | | | | |
- |---------+------+------+--------+---------+-------+-----------+---------+---------+---------+----------------+--------+------+--------+-----|
- | Control | Prev | Next | Find | f | g | Browser | Browser | Browser | Browser | ; | ' | Exec | ****** | * |
- | | | | | | | Back | Home | Search | Forward | | | | | |
- |---------+------+------+--------+---------+-------+-----------+---------+---------+---------+----------------+--------+------+--------+-----|
- | LShift | Vol+ | Vol- | Mute | Select | b | n | m | , | Again | Browser Search | RShift | HHKB | ****** | * |
- |---------+------+------+--------+---------+-------+-----------+---------+---------+---------+----------------+--------+------+--------+-----|
-
- |------+------+----------------------+------+------|
- | Menu | LGUI | ******* Play ******* | RGUI | Menu |
- |------+------+----------------------+------+------|
- */
- [HHKB] = LAYOUT(
- FLASH, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
- KC_CAPS, KC_CALC, KC_MAIL, KC_MSEL, KC_WREF, KC_MYCM, KC_WFAV, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_BSPC,
- KC_TRNS, KC_MPRV, KC_MNXT, KC_FIND, KC_TRNS, KC_TRNS, KC_WBAK, KC_WHOM, KC_WSCH, KC_WFWD, KC_TRNS, KC_TRNS, KC_EXEC,
- KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_SLCT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AGIN, KC_WSCH, KC_TRNS, KC_TRNS,
- KC_MENU, KC_TRNS, KC_MPLY, KC_TRNS, KC_MENU),
-
-
- /* Programming Level: Symbols Layer
- |--------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+--------+--------+--------+--------+---|
- | Esc | TTY 1 | TTY 2 | TTY 3 | TTY 4 | TTY 5 | TTY 6 | TTY 7 | TTY 8 | TTY 9 | TTY 10 | TTY 11 | TTY 12 | \ | ` |
- |--------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+--------+--------+--------+--------+---|
- | Tab/Mouse | => | @ | >>= | =<< | ‖ | <> | <|> | <*> | <@> | |> | <$ | $> | Backsp | * |
- |--------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+--------+--------+--------+--------+---|
- | Toggle Mouse | -> | * | <$> | <#> | && | Left | Down | Up | Right | :: | ` | Return | ****** | * |
- |--------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+--------+--------+--------+--------+---|
- | LShift | z | x | c | v | b | n | m | <- | -> | <> | Shift | HHKB | ****** | * |
- |--------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+--------+--------+--------+--------+---|
-
- |------+------+----------------------------+------+------|
- | LAlt | LGUI | ******* Space/Prog ******* | RGUI | RAlt |
- |------+------+----------------------------+------+------|
- */
- [PROG] = LAYOUT(
- QK_GESC, LCA(KC_F1), LCA(KC_F2), LCA(KC_F3), LCA(KC_F4), LCA(KC_F5), LCA(KC_F6), LCA(KC_F7), LCA(KC_F8), LCA(KC_F9), LCA(KC_F10), LCA(KC_F11), LCA(KC_F12), KC_TRNS, KC_TRNS,
- KC_TRNS, FAT_ARROW, KC_AT, BIND, BIND_FLIPPED, OR, CONCAT, ALT, APPLY, FLAP, PIPE, VOID_LEFT, VOID_RIGHT, KC_TRNS,
- TG(MOUSE), SKINNY_ARROW, KC_ASTR, MAP, MAP_FLIPPED, AND, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, DOUBLE_COLON, KC_GRV, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, REVERSE_ARROW, SKINNY_ARROW, CONCAT, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-
- /* Mouse Level: Mouse Layer
- |--------------+---------+---------+---------+---------+---------+-------+-------+---------+---------+---------+-----------+-----------------+--------+---|
- | Esc | Speed 1 | Speed 2 | Speed 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
- |--------------+---------+---------+---------+---------+---------+-------+-------+---------+---------+---------+-----------+-----------------+--------+---|
- | Mouse(Tab) | Q | Up | Button3 | Button4 | Button5 | Y | U | Button3 | Button4 | Button5 | [ | ] | Backsp | * |
- |--------------+---------+---------+---------+---------+---------+-------+-------+---------+---------+---------+-----------+-----------------+--------+---|
- | Control(Esc) | Left | Down | Right | Button1 | Button2 | SLeft | SDown | SUp | SRight | Button1 | Button2 | Control(Return) | ****** | * |
- |--------------+---------+---------+---------+---------+---------+-------+-------+---------+---------+---------+-----------+-----------------+--------+---|
- | LShift(() | Z | X | C | V | B | N | M | Button5 | Button4 | Button3 | RShift()) | HHKB | ****** | * |
- |--------------+---------+---------+---------+---------+---------+-------+-------+---------+---------+---------+-----------+-----------------+--------+---|
-
- |---------+---------+----------------------------+---------+---------|
- | LAlt([) | LGUI({) | ******* Space/Prog ******* | RGUI(}) | RAlt(]) |
- |---------+---------+----------------------------+---------+---------|
- */
- [MOUSE] = LAYOUT(
- KC_TRNS, KC_ACL0, KC_ACL1, KC_ACL2, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_MS_U, KC_BTN3, KC_BTN4, KC_BTN5, KC_TRNS, KC_TRNS, KC_BTN3, KC_BTN4, KC_BTN5, KC_TRNS, KC_TRNS, KC_TRNS,
- TG(MOUSE), KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN1, KC_BTN2, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_BTN1, KC_BTN2, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-};
diff --git a/keyboards/hhkb/ansi/keymaps/brett/readme.md b/keyboards/hhkb/ansi/keymaps/brett/readme.md
deleted file mode 100644
index fd07b155fb..0000000000
--- a/keyboards/hhkb/ansi/keymaps/brett/readme.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# Generated Keymap Layout
-
-This layout was generated by the QMK API. You can find the JSON data used to
-generate this keymap in the file layers.json.
-
-To make use of this file you will need follow the following steps:
-
-* Download or Clone QMK Firmware: <https://github.com/qmk/qmk_firmware/>
-* Extract QMK Firmware to a location on your hard drive
-* Copy this folder into %s
-* You are now ready to compile or use your keymap with the source
-
-More information can be found in the QMK docs: <https://docs.qmk.fm> \ No newline at end of file
diff --git a/keyboards/hhkb/ansi/keymaps/brett/rules.mk b/keyboards/hhkb/ansi/keymaps/brett/rules.mk
deleted file mode 100644
index 88f57515f1..0000000000
--- a/keyboards/hhkb/ansi/keymaps/brett/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-MOUSEKEY_ENABLE = yes
-TAP_DANCE_ENABLE = no
-LEADER_ENABLE = no
-UNICODE_ENABLE = no
diff --git a/keyboards/hhkb/ansi/keymaps/tominabox1/.gitignore b/keyboards/hhkb/ansi/keymaps/tominabox1/.gitignore
deleted file mode 100644
index 4b8c99bfb8..0000000000
--- a/keyboards/hhkb/ansi/keymaps/tominabox1/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-*.h
-matrix.c
-rules.mk
diff --git a/keyboards/hhkb/ansi/keymaps/tominabox1/keymap.c b/keyboards/hhkb/ansi/keymaps/tominabox1/keymap.c
deleted file mode 100644
index 61688d399a..0000000000
--- a/keyboards/hhkb/ansi/keymaps/tominabox1/keymap.c
+++ /dev/null
@@ -1,12 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "tominabox1.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC, KC_LCTL, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, TD(TD_SFT_CPS), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(2)),
-
- [1] = LAYOUT(KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, KC_CAPS, KC_MFFD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
- [2] = LAYOUT(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS),
-
- [3] = LAYOUT(QK_GESC, KC_EXLM, KC_EML, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGDN, KC_UP, KC_PGUP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_TRNS)
-};
diff --git a/keyboards/hhkb/jp/keymaps/dhertz/config.h b/keyboards/hhkb/jp/keymaps/dhertz/config.h
deleted file mode 100644
index af2fb9d8a5..0000000000
--- a/keyboards/hhkb/jp/keymaps/dhertz/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#define USB_MAX_POWER_CONSUMPTION 100
diff --git a/keyboards/hhkb/jp/keymaps/dhertz/keymap.c b/keyboards/hhkb/jp/keymaps/dhertz/keymap.c
deleted file mode 100644
index 5c2511df64..0000000000
--- a/keyboards/hhkb/jp/keymaps/dhertz/keymap.c
+++ /dev/null
@@ -1,84 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "keymap.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0: Default Layer
- * ,-----------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Del|Bsp|
- * |-----------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter |
- * |------------------------------------------------------` |
- * |SrCtl | A| S| D| F| G| H| J| K| L| ;| '| \| |
- * |-----------------------------------------------------------|
- * |Shift | Z| X| C| V| B| N| M| ,| .| /| `|Up |Shi|
- * |-----------------------------------------------------------|
- * |NCt|| #|Alt|CmT|CmT| LyrSpc |CGv|Iso|Gui|CSL||Rig|Dow|Lef|
- * `-----------------------------------------------------------'
- */
- [0] = LAYOUT_jp(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,KC_MINS, KC_EQL, KC_DEL,KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,
- SRCH_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M,KC_COMM, KC_DOT, KC_SLSH,KC_NUBS, KC_UP, KC_RSFT,
- NC_CTL, HSH_TLD,KC_LALT,CMD_TAB_CMD,CMD_TAB_CMD, LT(2, KC_SPC) , CMD_GRV_CMD, ISO_COUNTRY_CODE,KC_RGUI, CMD_SFT_L, KC_LEFT,KC_DOWN,KC_RGHT
- ),
-
- /* Layer 1: iPad mode (Fixed)
- * ,-----------------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------|
- * | | | | | | | | | | | | | | |
- * |------------------------------------------------------` |
- * |CmdSpc| | | | | | | | | | | | | |
- * |-----------------------------------------------------------|
- * | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------|
- * | || ~| |CAD| | |CmH| | | || | | |
- * `-----------------------------------------------------------'
- */
- [1] = LAYOUT_jp(
- KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,
- CMD_SPC,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- KC_TRNS, KC_TRNS,KC_TRNS,CMD_ALT_D,KC_TRNS, KC_TRNS ,CMD_H,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS
- ),
-
- /* Layer 2: HHKB mode (Space)
- * ,-----------------------------------------------------------.
- * |Pwr| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
- * |-----------------------------------------------------------|
- * |Caps |DL0|DL1| | | | | |Psc|Slk|Pus|Up | | |
- * |------------------------------------------------------` |
- * | |VoD|VoU|Mut| | | |Bsp|Del|CSL|Lef|Rig| | |
- * |-----------------------------------------------------------|
- * | | | |CAC| | | | | | |Dow| |PgU| |
- * |-----------------------------------------------------------|
- * | || ~| | | | | | | | ||Hom|PgD|End|
- * `-----------------------------------------------------------'
- */
- [2] = LAYOUT_jp(
- KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS,KC_DEL,
- KC_CAPS, DF(0), DF(1),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SCRL,KC_PAUS, KC_UP,KC_TRNS,
- KC_TRNS, KC_VOLD,KC_VOLU,KC_MUTE,KC_TRNS,KC_TRNS,KC_TRNS,KC_BSPC, KC_DEL,CMD_SFT_L,KC_LEFT,KC_RGHT,KC_TRNS,KC_PENT,
- KC_TRNS, KC_TRNS,KC_TRNS,CMD_ALT_C,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_DOWN,KC_TRNS,KC_PGUP,KC_TRNS,
- KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN, KC_END
- ),
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch(keycode) {
- case CMD_SPC:
- mod_or_mod_with_macro(record, KC_LGUI, " ");
- break;
- case CMD_H:
- mod_or_mod_with_macro(record, KC_RGUI, "H");
- break;
- case CMD_ALT_D:
- mod_or_mod_with_macro(record, KC_LGUI, SS_LALT("D"));
- break;
- default:
- return true;
- }
- return false;
-}
diff --git a/keyboards/hhkb/jp/keymaps/dhertz/keymap.h b/keyboards/hhkb/jp/keymaps/dhertz/keymap.h
deleted file mode 100644
index dbefc63800..0000000000
--- a/keyboards/hhkb/jp/keymaps/dhertz/keymap.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "dhertz.h"
-
-enum dhertz_keycodes {
- CMD_SPC = NEW_SAFE_RANGE,
- CMD_H,
- CMD_ALT_D,
-};
diff --git a/keyboards/hhkb/jp/keymaps/dhertz/rules.mk b/keyboards/hhkb/jp/keymaps/dhertz/rules.mk
deleted file mode 100644
index 5656057b43..0000000000
--- a/keyboards/hhkb/jp/keymaps/dhertz/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-OPT_DEFS += -DHHKB_JP
-
diff --git a/keyboards/hidtech/bastyl/keymaps/nstickney/keymap.c b/keyboards/hidtech/bastyl/keymaps/nstickney/keymap.c
deleted file mode 100644
index e068f81a73..0000000000
--- a/keyboards/hidtech/bastyl/keymaps/nstickney/keymap.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2020 Quentin LEBASTARD <qlebastard@gmail.com>
- * Copyright 2020 Anthony MARIN <anthony@hidtech.ca>
- * Copyright 2021 Stick <stick@stma.is>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http:www.gnu.org/licenses/>.
- */
-#include "nstickney.h"
-#include "unicodemap.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- //-------------------------------//
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
- //-------------------------------//
- CC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, CC_QUOT,
- //-------------------------------//
- SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC,
- //-------------------------------//
- AC_SLSH, FC_BSLS, KC_SPC, KC_ENT, FC_MINS, AC_EQL,
- //-------------------------------//
- KC_LBRC, TD(LOCKS), TD(LAYERS), KC_RBRC),
-
- [SYMB] = LAYOUT(_______, UP(IEX, SS1), UM(SS2), UM(SS3), UP(CUR, GBP), UM(EUR), UM(V14), UM(V12), UM(V34), UP(LSQ, LDQ), UP(RSQ, RDQ), _______,
- //-------------------------------//
- _______, UP(A_D, AXD), UP(A_R, ACR), UP(E_A, ECA), UP(REG, CPL), UM(THR), UP(U_D, UCD), UP(U_A, UCA), UP(I_A, ICA), UP(O_A, OCA), UP(O_D, OCD), _______,
- //-------------------------------//
- _______, UP(A_A, ACA), UP(S_S, SEC), UP(ETH, ETC), UM(EMD), _______, _______, _______, _______, UP(O_S, OCS), UP(PLC, DEG), UP(ACT, DIS),
- //-------------------------------//
- _______, UP(AEL, AEC), _______, UP(CPR, CNT), _______, _______, _______, _______, UP(N_T, NCT), UM(MCR), UP(C_C, CCC), _______,
- //-------------------------------//
- UM(IQM), UP(NOT, BKB), _______, _______, UM(YEN), UP(MLT, DIV),
- //-------------------------------//
- _______, _______, _______, _______),
-
- [NUMP] = LAYOUT(_______, _______, KC_P7, KC_P8, KC_P9, KC_PSLS, _______, KC_P7, KC_P8, KC_P9, KC_PSLS, _______,
- //-------------------------------//
- _______, _______, KC_P4, KC_P5, KC_P6, KC_PAST, _______, KC_P4, KC_P5, KC_P6, KC_PAST, _______,
- //-------------------------------//
- _______, _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______,
- //-------------------------------//
- _______, _______, KC_P0, KC_PCMM, KC_PDOT, KC_PPLS, _______, KC_P0, KC_PCMM, KC_PDOT, KC_PPLS, _______,
- //-------------------------------//
- _______, _______, _______, KC_PENT, _______, _______,
- //-------------------------------//
- _______, _______, _______, _______),
-
- [FCTN] = LAYOUT(KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_SYRQ,
- //-------------------------------//
- KC_PSCR, RGB_TOG, KC_HOME, KC_UP, KC_END, KC_PGUP, QK_LOCK, KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), KC_INS,
- //-------------------------------//
- KC_PAUS, RGB_VAI, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_BRIU, KC_CLR,
- //-------------------------------//
- _______, KC_MPRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_MNXT, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, KC_BRID, _______,
- //-------------------------------//
- QK_BOOT, _______, _______, _______, _______, QK_BOOT,
- //-------------------------------//
- _______, KC_F11, KC_F12, _______)};
diff --git a/keyboards/hillside/46/keymaps/manna-harbour_miryoku/config.h b/keyboards/hillside/46/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index fa808ef681..0000000000
--- a/keyboards/hillside/46/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-// Copyright 2022 Davide Masserut (@mssdvd)
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-// clang-format off
-#if defined MIRYOKU_MAPPING_EXTENDED_THUMBS
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- XXX, K32, K33, K34, K35, K36, K37, XXX \
-)
-#else
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- K32, K33, K34, XXX, XXX, K35, K36, K37 \
-)
-#endif
diff --git a/keyboards/hillside/46/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/hillside/46/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/hillside/46/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/hillside/48/0_1/info.json b/keyboards/hillside/48/0_1/info.json
index 2159d1ca68..b6007f1f72 100644
--- a/keyboards/hillside/48/0_1/info.json
+++ b/keyboards/hillside/48/0_1/info.json
@@ -23,7 +23,6 @@
},
"split": {
"soft_serial_pin": "D2",
- "main": "left",
"encoder": {
"right": {
"rotary": [
diff --git a/keyboards/hillside/48/keymaps/manna-harbour_miryoku/config.h b/keyboards/hillside/48/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index e779de8a99..0000000000
--- a/keyboards/hillside/48/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-// Copyright 2022 Davide Masserut (@mssdvd)
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-// clang-format off
-#if defined MIRYOKU_MAPPING_EXTENDED_THUMBS
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX \
-)
-#else
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- XXX, K32, K33, K34, XXX, XXX, K35, K36, K37, XXX \
-)
-#endif
diff --git a/keyboards/hillside/48/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/hillside/48/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/hillside/48/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/hillside/52/keymaps/manna-harbour_miryoku/config.h b/keyboards/hillside/52/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 388f6b9a91..0000000000
--- a/keyboards/hillside/52/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-// Copyright 2022 Davide Masserut (@mssdvd)
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-// clang-format off
-#if defined MIRYOKU_MAPPING_EXTENDED_THUMBS
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
-XXX, XXX, XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX, XXX, XXX \
-)
-#else
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
-XXX, XXX, XXX, K32, K33, K34, XXX, XXX, K35, K36, K37, XXX, XXX, XXX \
-)
-#endif
diff --git a/keyboards/hillside/52/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/hillside/52/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/hillside/52/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/hineybush/hbcp/hbcp.c b/keyboards/hineybush/hbcp/hbcp.c
index 7d0f5ecf73..df17650f27 100644
--- a/keyboards/hineybush/hbcp/hbcp.c
+++ b/keyboards/hineybush/hbcp/hbcp.c
@@ -49,19 +49,19 @@ bool led_update_kb(led_t led_state) {
bool res = led_update_user(led_state);
if (res) {
if (led_state.caps_lock) {
- sethsv_raw(HSV_CAPS, (LED_TYPE *)&led[0]);
+ sethsv_raw(HSV_CAPS, (rgb_led_t *)&led[0]);
} else {
- sethsv(HSV_BLACK, (LED_TYPE *)&led[0]);
+ sethsv(HSV_BLACK, (rgb_led_t *)&led[0]);
}
if (led_state.num_lock) {
- sethsv_raw(HSV_NLCK, (LED_TYPE *)&led[1]);
+ sethsv_raw(HSV_NLCK, (rgb_led_t *)&led[1]);
} else {
- sethsv(HSV_BLACK, (LED_TYPE *)&led[1]);
+ sethsv(HSV_BLACK, (rgb_led_t *)&led[1]);
}
if (led_state.scroll_lock) {
- sethsv_raw(HSV_SCRL, (LED_TYPE *)&led[2]);
+ sethsv_raw(HSV_SCRL, (rgb_led_t *)&led[2]);
} else {
- sethsv(HSV_BLACK, (LED_TYPE *)&led[2]);
+ sethsv(HSV_BLACK, (rgb_led_t *)&led[2]);
}
rgblight_set();
}
@@ -83,7 +83,7 @@ void keyboard_post_init_user(void) {
__attribute__ ((weak))
void hbcp_sethsv_range(uint8_t hue, uint8_t sat, uint8_t val, uint8_t start, uint8_t end) {
- LED_TYPE tmp_led;
+ rgb_led_t tmp_led;
sethsv_raw(hue, sat, val, &tmp_led);
for (uint8_t i = start; i < end; i++) {
led[i] = tmp_led;
diff --git a/keyboards/hineybush/hbcp/keymaps/hiney/keymap.c b/keyboards/hineybush/hbcp/keymaps/hiney/keymap.c
index 26a67fe7ca..2311d4020f 100644
--- a/keyboards/hineybush/hbcp/keymaps/hiney/keymap.c
+++ b/keyboards/hineybush/hbcp/keymaps/hiney/keymap.c
@@ -79,19 +79,19 @@ void matrix_scan_user(void) {
// The first three LEDs are used as indicators for CAPS_LOCK, NUM_LOCK and SCROLL_LOCK.
bool led_update_user(led_t led_state) {
if (led_state.caps_lock) {
- sethsv_raw(HSV_SOFT_RED, (LED_TYPE *)&led[0]);
+ sethsv_raw(HSV_SOFT_RED, (rgb_led_t *)&led[0]);
} else {
- sethsv(HSV_BLACK, (LED_TYPE *)&led[0]);
+ sethsv(HSV_BLACK, (rgb_led_t *)&led[0]);
}
if (led_state.num_lock) {
- sethsv_raw(HSV_WARM_WHITE, (LED_TYPE *)&led[1]);
+ sethsv_raw(HSV_WARM_WHITE, (rgb_led_t *)&led[1]);
} else {
- sethsv(HSV_BLACK, (LED_TYPE *)&led[1]);
+ sethsv(HSV_BLACK, (rgb_led_t *)&led[1]);
}
if (led_state.scroll_lock) {
- sethsv_raw(HSV_SOFT_BLUE, (LED_TYPE *)&led[2]);
+ sethsv_raw(HSV_SOFT_BLUE, (rgb_led_t *)&led[2]);
} else {
- sethsv(HSV_BLACK, (LED_TYPE *)&led[2]);
+ sethsv(HSV_BLACK, (rgb_led_t *)&led[2]);
}
rgblight_set();
return false;
diff --git a/keyboards/horrortroll/handwired_k552/config.h b/keyboards/horrortroll/handwired_k552/config.h
index bec0ac055b..11461a9418 100644
--- a/keyboards/horrortroll/handwired_k552/config.h
+++ b/keyboards/horrortroll/handwired_k552/config.h
@@ -30,10 +30,6 @@
#define EXTERNAL_FLASH_BLOCK_SIZE 4096
#define EXTERNAL_FLASH_SIZE (256 * 1024) // 2M-bit flash size
-// Wear-leveling driver configuration
-#define WEAR_LEVELING_LOGICAL_SIZE 1024
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
-
#ifdef OLED_ENABLE
/* Mapping I2C2 for OLED */
#define I2C1_SCL_PIN B10
diff --git a/keyboards/horrortroll/handwired_k552/info.json b/keyboards/horrortroll/handwired_k552/info.json
index d137a03a52..b064df38c2 100644
--- a/keyboards/horrortroll/handwired_k552/info.json
+++ b/keyboards/horrortroll/handwired_k552/info.json
@@ -20,6 +20,13 @@
"rows": ["C12", "C10", "A10", "A8", "C8", "C9"]
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 2048
+ }
+ },
"community_layouts": ["tkl_ansi"],
"layouts": {
"LAYOUT_tkl_ansi": {
diff --git a/keyboards/horrortroll/handwired_k552/rules.mk b/keyboards/horrortroll/handwired_k552/rules.mk
index fd1825af35..6d6ec253db 100644
--- a/keyboards/horrortroll/handwired_k552/rules.mk
+++ b/keyboards/horrortroll/handwired_k552/rules.mk
@@ -32,7 +32,3 @@ RGB_MATRIX_ENABLE = yes
# OLED enabled
OLED_ENABLE = yes
WPM_ENABLE = yes
-
-# Wear-levelling driver
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
diff --git a/keyboards/horrortroll/lemon40/info.json b/keyboards/horrortroll/lemon40/info.json
index 7162e2c2c7..7b0b1c394b 100644
--- a/keyboards/horrortroll/lemon40/info.json
+++ b/keyboards/horrortroll/lemon40/info.json
@@ -19,8 +19,7 @@
"knight": true,
"christmas": true,
"static_gradient": true,
- "alternating": true,
- "twinkle": true
+ "alternating": true
}
},
"ws2812": {
diff --git a/keyboards/hotdox/keymaps/imchipwood/keymap.c b/keyboards/hotdox/keymaps/imchipwood/keymap.c
deleted file mode 100644
index 497a038ad3..0000000000
--- a/keyboards/hotdox/keymaps/imchipwood/keymap.c
+++ /dev/null
@@ -1,151 +0,0 @@
-/* Copyright 2021 imchipwood
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "imchipwood.h"
-
-// Layer names
-enum custom_layers {
- _QWERTY,
- _NUM,
- _MED
-};
-
-// Layer definitions
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_ergodox_pretty(
-/* Keymap 0: Basic layer
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | = | 1 | 2 | 3 | 4 | 5 | ESC | |BkTick| 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | Tab | Q | W | E | R | T | MEH | | | Y | U | I | O | P | [ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | BkSlsh | A | S | D | F | G |------| |------| H | J | K | L | ; | ' |
- * |--------+------+------+------+------+------|MO(2) | |MO(2) |------+------+------+------+------+--------|
- * | LSHIFT | Z | X | C | V | B | | | | N | M | , | . | / |SHFT/CAP|
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * |RCTRL | LALT | GUI |L/HOME|R/END | | Up | Down | LEFT |RIGHT |PRSCR |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | DEL | INS | | Ctrl | Alt |
- * ,------|------|------| |------+--------+------.
- * | | | Home | | PgUp | | |
- * |Enter |MO(1) |------| |------| Bksp |Space |
- * | | | End | | PgDn | | |
- * `--------------------' `----------------------'
- */
-// Left hand Right hand
-// ,------------------------------------------------------------------------------------------. ,------------------------------------------------------------------------------------------.
- KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, KC_GRV, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MEH, KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
-// |------------+------------+------------+------------+------------+------------+ | | +------------+------------+------------+------------+------------+------------|
- KC_BSLS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(_MED), MO(_MED), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, TD(TD_RSFT_CAPS),
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_LCTL, KC_LALT, KC_LGUI, TD(TD_LOME), TD(TD_REND), KC_UP, KC_DOWN, KC_LEFT, KC_RGHT, KC_PSCR,
-// `---------------------------------------------------------------' `----------------------------------------------------------------'
-// ,-------------------------. ,-------------------------.
- KC_DEL, KC_INS, KC_TRNS, KC_TRNS,
-// ,------------+------------+------------| |------------+------------+------------.
- KC_TRNS, KC_TRNS,
-// | | +------------| |------------+ | |
- KC_ENT, MO(_NUM), KC_TRNS, KC_TRNS, KC_BSPC, KC_SPC
-// `--------------------------------------' `--------------------------------------'
- ),
- [_NUM] = LAYOUT_ergodox_pretty(
-/* Keymap 1: Numpad, function keys, and some convenience keys
- * ,---------------------------------------------------. ,--------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | | | F12 | F6 | F7 | F8 | F9 | F10 | F11 |
- * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
- * | | | up | | | | | | | 7 | 8 | 9 | * | / | ] |
- * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | left | down |right | | |------| |------| 4 | 5 | 6 | + | - | |
- * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | 1 | 2 | 3 | = | up | enter |
- * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | PgUp | PgDn | | 0 | . | left | down |right |
- * `-----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| Del | Esc |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-// Left hand Right hand
-// ,------------------------------------------------------------------------------------------. ,------------------------------------------------------------------------------------------.
- KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, TD(CTL_F5), KC_TRNS, KC_F12, KC_F6, TD(ALT_F7), KC_F8, KC_F9, KC_F10, KC_F11,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_7, KC_8, KC_9, KC_PAST, KC_PSLS, KC_RBRC,
-// |------------+------------+------------+------------+------------+------------+ | | +------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_4, KC_5, KC_6, KC_PPLS, KC_PMNS, KC_TRNS,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_1, KC_2, KC_3, KC_PEQL, KC_UP, KC_PENT,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_0, KC_PDOT, KC_LEFT, KC_DOWN, KC_RGHT,
-// `---------------------------------------------------------------' `----------------------------------------------------------------'
-// ,-------------------------. ,-------------------------.
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-// ,------------+------------+------------| |------------+------------+------------.
- KC_TRNS, KC_TRNS,
-// | | +------------| |------------+ | |
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_ESC
-// `--------------------------------------' `--------------------------------------'
- ),
- [_MED] = LAYOUT_ergodox_pretty(
-/* Keymap 2: Media and mouse keys
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | Mute |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | MsUp | | | | | | | MP7 | MP8 | MP9 | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | |MsLeft|MsDown|MsRght| | |------| |------| MP4 | MP5 | MP6 | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | MP1 | MP2 | MP3 | |VolUp | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | Lclk | Rclk | | | | Prev |VolDn | Next |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * |QK_BOOT | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * |MPENT | |------| |------| |Play |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-// Left hand Right hand
-// ,------------------------------------------------------------------------------------------. ,------------------------------------------------------------------------------------------.
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MEH(KC_P7), MEH(KC_P8), MEH(KC_P9), KC_TRNS, KC_TRNS, KC_TRNS,
-// |------------+------------+------------+------------+------------+------------+ | | +------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, MEH(KC_P4), MEH(KC_P5), MEH(KC_P6), KC_TRNS, KC_TRNS, KC_TRNS,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MEH(KC_P1), MEH(KC_P2), MEH(KC_P3), KC_TRNS, KC_VOLU, KC_TRNS,
-// |------------+------------+------------+------------+------------+------------+------------| |------------+------------+------------+------------+------------+------------+------------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT,
-// `---------------------------------------------------------------' `----------------------------------------------------------------'
-// ,-------------------------. ,-------------------------.
- QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS,
-// ,------------+------------+------------| |------------+------------+------------.
- KC_TRNS, KC_TRNS,
-// | | +------------| |------------+ | |
- MEH(KC_PENT), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY
-// `--------------------------------------' `--------------------------------------'
- )
-};
diff --git a/keyboards/hotdox/keymaps/ninjonas/README.md b/keyboards/hotdox/keymaps/ninjonas/README.md
deleted file mode 100644
index be733fde2d..0000000000
--- a/keyboards/hotdox/keymaps/ninjonas/README.md
+++ /dev/null
@@ -1,106 +0,0 @@
-# ninjonas Keymap for [ErgoDox (HotDox)](https://www.alpacakeyboards.com/)
-
-## Setup
-- Ensure you've cloned the [qmk](https://github.com/qmk/qmk_firmware) repo
-- Create directory `ninjonas` on `/keyboards/hotdox/keymaps/`
-- Run `copy_keymap.sh`. This copies the contents of this repo into `%qmk_firmware%/ninjonas/` directory
-- To push your keymap to your keyboard run this command `make clean hotdox:ninjonas:dfu`
- - this compiles your keymap and creates a `hotdox_ninjonas.hex` file and will atempt to flash your board
- - if you get the following message:
- ```
- dfu-programmer: no device present.
- Error: Bootloader not found. Trying again in 5s.
- ```
- - Press the reset button underneath your ErgoDox keyboard
- - The following messages should show up and your board has successfuly been flashed
- ```
- Bootloader Version: 0x00 (0)
- Erasing flash... Success
- Checking memory from 0x0 to 0x6FFF... Empty.
- Checking memory from 0x0 to 0x5D7F... Empty.
- 0% 100% Programming 0x5D80 bytes...
- [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
- 0% 100% Reading 0x7000 bytes...
- [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
- Validating... Success
- 0x5D80 bytes written into 0x7000 bytes memory (83.48%).
- ```
- - The alterenative is follow the steps on [Hotdox flashing guide](https://www.alpacakeyboards.com/flash/hot-dox-ergodox-76-flashing-instructions)
-
-## Keymap
-This keymap is designed based off my typing habits and is subject to change. Information about custom user macros and tap dances can be found [here](https://github.com/ninjonas/qmk-yonas/tree/master/users/ninjonas).
-
-### QWERTY
-```c
-/* QWERTY
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Play | |K_LOCK | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+------+--------|
- * | Tab | Q | W | E | R | T | | | | Y | U | I | O | P | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Esc | A | S | D | F | G |------| |-------| H | J | K | L | ; | ' |
- * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
- * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | = |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+------+--------'
- * | | | Alt | Cmd | Ctl | | BkSP | Del |LOWER | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Up | Down | | Left | Right|
- * ,------|------|------| |------+------+------.
- * | | | Home | | PgUp | | |
- * | Space|Backsp|------| |------| Del |Enter |
- * | |ace | End | | PgDn | | |
- * `--------------------' `--------------------'
- */
-```
-
-### LOWER
-```c
-/* LOWER
- *
- * ,--------------------------------------------------. ,----------------------------------------------------.
- * | F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+-------+--------|
- * | | |KC_BRU| Play | Mute | | | | | PgUp | Home | Up | End | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | |KC_BRD| Next |VolUp | |------| |-------| PgDn | Left | Down |Right |K_LOCK | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | | Prev |VolDn | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+-------+--------'
- * | | | | | | | | | |M_CODE | |
- * `----------------------------------' `-----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-```
-
-### RAISE
-```c
-/* RAISE
- *
- * ,--------------------------------------------------. ,----------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+-------+--------|
- * | | | MS_1 | MS_U | MS_2 | WH_U | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | MS_L | MS_D | MS_R | WH_D |------| |-------| | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | | | | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+-------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `-----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-``` \ No newline at end of file
diff --git a/keyboards/hotdox/keymaps/ninjonas/keymap.c b/keyboards/hotdox/keymaps/ninjonas/keymap.c
deleted file mode 100644
index 2f9609c5c5..0000000000
--- a/keyboards/hotdox/keymaps/ninjonas/keymap.c
+++ /dev/null
@@ -1,348 +0,0 @@
-/* Copyright 2019 @ninjonas
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "ninjonas.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* QWERTY
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Play | |K_LOCK | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+------+--------|
- * | Tab | Q | W | E | R | T | | | | Y | U | I | O | P | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Esc | A | S | D | F | G |------| |-------| H | J | K | L | ; | ' |
- * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
- * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | = |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+------+--------'
- * | | | Alt | Cmd | Ctl | | BkSP | Del |LOWER | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Up | Down | | Left | Right|
- * ,------|------|------| |------+------+------.
- * | | | Home | | PgUp | | |
- * | Space|Backsp|------| |------| Del |Enter |
- * | |ace | End | | PgDn | | |
- * `--------------------' `--------------------'
- */
- [_QWERTY] = LAYOUT_ergodox_wrapper(
- // LEFT HAND
- _____________________NUM_LEFT_______________________, KC_MPLY,
- _____________________QWERTY_L1______________________, XXXXXXX,
- _____________________QWERTY_L2______________________,
- _____________________QWERTY_L3______________________, T_LBRC,
- XXXXXXX, XXXXXXX, ________MOD_LEFT_________,
- // LEFT THUMB
- KC_UP, KC_DOWN,
- KC_HOME,
- LT_RAI, KC_BSPC,
- KC_END,
-
- //RIGHT HAND
- K_LOCK, _____________________NUM_RIGHT______________________,
- XXXXXXX,_____________________QWERTY_R1______________________,
- _____________________QWERTY_R2______________________,
- T_RBRC, _____________________QWERTY_R3______________________,
- ________MOD_RIGHT________, XXXXXXX, XXXXXXX,
- // RIGHT THUMB
- KC_LEFT, KC_RGHT,
- KC_PGUP,
- KC_PGDN,
- MT_DEL, LT_LOW
- ),
-
-/* DVORAK
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Play | |K_LOCK | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+------+--------|
- * | Tab | ' | , | . | P | Y | | | | F | G | C | R | L | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Esc | A | O | E | U | I |------| |-------| D | H | T | N | S | / |
- * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
- * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | = |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+------+--------'
- * | | | Alt | Cmd | Ctl | | BkSP | Del |LOWER | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Up | Down | | Left | Right|
- * ,------|------|------| |------+------+------.
- * | | | Home | | PgUp | | |
- * | Space|Backsp|------| |------| Del |Enter |
- * | |ace | End | | PgDn | | |
- * `--------------------' `--------------------'
- */
- [_DVORAK] = LAYOUT_ergodox_wrapper(
- // LEFT HAND
- _____________________NUM_LEFT_______________________, KC_MPLY,
- _____________________DVORAK_L1______________________, XXXXXXX,
- _____________________DVORAK_L2______________________,
- _____________________DVORAK_L3______________________, T_LBRC,
- XXXXXXX, XXXXXXX, ________MOD_LEFT_________,
- // LEFT THUMB
- KC_UP, KC_DOWN,
- KC_HOME,
- LT_RAI, KC_BSPC,
- KC_END,
-
- //RIGHT HAND
- K_LOCK, _____________________NUM_RIGHT______________________,
- XXXXXXX,_____________________DVORAK_R1______________________,
- _____________________DVORAK_R2______________________,
- T_RBRC, _____________________DVORAK_R3______________________,
- ________MOD_RIGHT________, XXXXXXX, XXXXXXX,
- // RIGHT THUMB
- KC_LEFT, KC_RGHT,
- KC_PGUP,
- KC_PGDN,
- MT_DEL, LT_LOW
- ),
-
-/* COLEMAK
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Play | |K_LOCK | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+------+--------|
- * | Tab | Q | W | F | P | G | | | | J | L | U | Y | ; | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Esc | A | R | S | T | D |------| |-------| H | N | E | I | O | ' |
- * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------|
- * | LShift | Z | X | C | V | B | | | | K | M | , | . | / | = |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+------+--------'
- * | | | Alt | Cmd | Ctl | | BkSP | Del |LOWER | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Up | Down | | Left | Right|
- * ,------|------|------| |------+------+------.
- * | | | Home | | PgUp | | |
- * | Space|Backsp|------| |------| Del |Enter |
- * | |ace | End | | PgDn | | |
- * `--------------------' `--------------------'
- */
- [_COLEMAK] = LAYOUT_ergodox_wrapper(
- // LEFT HAND
- _____________________NUM_LEFT_______________________, KC_MPLY,
- _____________________COLEMAK_L1_____________________, XXXXXXX,
- _____________________COLEMAK_L2_____________________,
- _____________________COLEMAK_L3_____________________, T_LBRC,
- XXXXXXX, XXXXXXX, ________MOD_LEFT_________,
- // LEFT THUMB
- KC_UP, KC_DOWN,
- KC_HOME,
- LT_RAI, KC_BSPC,
- KC_END,
-
- //RIGHT HAND
- K_LOCK, _____________________NUM_RIGHT______________________,
- XXXXXXX,_____________________COLEMAK_R1_____________________,
- _____________________COLEMAK_R2_____________________,
- T_RBRC, _____________________COLEMAK_R3_____________________,
- ________MOD_RIGHT________, XXXXXXX, XXXXXXX,
- // RIGHT THUMB
- KC_LEFT, KC_RGHT,
- KC_PGUP,
- KC_PGDN,
- MT_DEL, LT_LOW
- ),
-
-/* LOWER
- *
- * ,--------------------------------------------------. ,----------------------------------------------------.
- * | F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+-------+--------|
- * | | |KC_BRU| Play | Mute | | | | | PgUp | Home | Up | End | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | |KC_BRD| Next |VolUp | |------| |-------| PgDn | Left | Down |Right |K_LOCK | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | | Prev |VolDn | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+-------+--------'
- * | | | | | | | | | |M_CODE | |
- * `----------------------------------' `-----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
- [_LOWER] = LAYOUT_ergodox_wrapper(
- //LEFT HAND
- _____________________FUNC_LEFT______________________, _______,
- _____________________LOWER_L1_______________________, _______,
- _____________________LOWER_L2_______________________,
- _____________________LOWER_L3_______________________, _______,
- _______, _______, _______, _______, _______,
- // LEFT THUMB
- _______, _______,
- _______,
- _______, _______,
- _______,
-
- //RIGHT HAND
- _______, _____________________FUNC_RIGHT_____________________,
- _______, _____________________LOWER_R1_______________________,
- _____________________LOWER_R2_______________________,
- _______, _____________________LOWER_R3_______________________,
- _______, _______, _______, M_CODE, _______,
- // RIGHT THUMB
- _______, _______,
- _______,
- _______,
- _______, _______
- ),
-
-/* RAISE
- *
- * ,--------------------------------------------------. ,----------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+-------+--------|
- * | | | MS_1 | MS_U | MS_2 | WH_U | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | MS_L | MS_D | MS_R | WH_D |------| |-------| | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | | | | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+-------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `-----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
- [_RAISE] = LAYOUT_ergodox_wrapper(
- //LEFT HAND
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, _____________MOUSE_1______________, XXXXXXX,
- XXXXXXX, XXXXXXX, _____________MOUSE_2______________,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- // LEFT THUMB
- _______, _______,
- _______,
- _______, _______,
- _______,
-
- //RIGHT HAND
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- // RIGHT THUMB
- _______, _______,
- _______,
- _______,
- _______, _______
- ),
-
-/* ADJUST
- *
- * ,--------------------------------------------------. ,----------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+-------+--------|
- * | M_MAKE |QK_BOOT | | | | | | | | | | |COLMAK|DVORAK |QWERTY |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | M_VRSN |M_MALL| | | | |------| |-------| | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | M_FLSH | | | | | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+-------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `-----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
- [_ADJUST] = LAYOUT_ergodox_wrapper(
- //LEFT HAND
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- _____________________ADJUST_L1______________________, XXXXXXX,
- _____________________ADJUST_L1______________________,
- _____________________ADJUST_L1______________________, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- // LEFT THUMB
- _______, _______,
- _______,
- _______, _______,
- _______,
-
- //RIGHT HAND
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, _____________________ADJUST_R1______________________,
- _____________________ADJUST_R1______________________,
- XXXXXXX, _____________________ADJUST_R1______________________,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- // RIGHT THUMB
- _______, _______,
- _______,
- _______,
- _______, _______
- ),
-/* Keymap XX: TEMPLATE
- *
- * ,--------------------------------------------------. ,----------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |-------+------+------+------+------+-------+--------|
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | | | | |------| |-------| | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+-------+--------|
- * | | | | | | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `--------------+------+------+------+-------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `-----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
-[_XXLAYER] = LAYOUT_ergodox_wrapper(
- //LEFT HAND
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- // LEFT THUMB
- _______, _______,
- _______,
- _______, _______,
- _______,
-
- //RIGHT HAND
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- // RIGHT THUMB
- _______, _______,
- _______,
- _______,
- _______, _______
- ),
-
- */
-}; \ No newline at end of file
diff --git a/keyboards/hotdox/keymaps/ninjonas/rules.mk b/keyboards/hotdox/keymaps/ninjonas/rules.mk
deleted file mode 100644
index 4da205a168..0000000000
--- a/keyboards/hotdox/keymaps/ninjonas/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-LTO_ENABLE = yes
diff --git a/keyboards/hotdox/rules.mk b/keyboards/hotdox/rules.mk
index 1088cbc14b..8e11eeabe0 100644
--- a/keyboards/hotdox/rules.mk
+++ b/keyboards/hotdox/rules.mk
@@ -15,5 +15,5 @@ RGBLIGHT_ENABLE = no
# project specific files
SRC = matrix.c \
- i2c_master.c \
left.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/hotdox76v2/config.h b/keyboards/hotdox76v2/config.h
index f469aa475f..3d80775073 100644
--- a/keyboards/hotdox76v2/config.h
+++ b/keyboards/hotdox76v2/config.h
@@ -30,11 +30,6 @@
#define RGB_MATRIX_CENTER \
{ 112, 32 }
-#define SPLIT_TRANSPORT_MIRROR
-#define SPLIT_MODS_ENABLE
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_OLED_ENABLE
#define SPLIT_TRANSACTION_IDS_KB KEYBOARD_CURRENT_ALPA_SYNC
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
diff --git a/keyboards/hotdox76v2/info.json b/keyboards/hotdox76v2/info.json
index c66bd5eb8a..a42bdb3a79 100644
--- a/keyboards/hotdox76v2/info.json
+++ b/keyboards/hotdox76v2/info.json
@@ -27,7 +27,16 @@
},
"split": {
"enabled": true,
- "soft_serial_pin": "D2"
+ "soft_serial_pin": "D2",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true,
+ "modifiers": true,
+ "oled": true
+ }
+ }
},
"ws2812": {
"pin": "D3"
diff --git a/keyboards/hs60/v1/config.h b/keyboards/hs60/v1/config.h
index 62c800b9bc..c864464390 100644
--- a/keyboards/hs60/v1/config.h
+++ b/keyboards/hs60/v1/config.h
@@ -41,10 +41,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 215
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110101
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SCL
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 30
#ifdef HS60_ANSI
diff --git a/keyboards/hs60/v1/v1.c b/keyboards/hs60/v1/v1.c
index 6c5f03f428..50f6215a02 100644
--- a/keyboards/hs60/v1/v1.c
+++ b/keyboards/hs60/v1/v1.c
@@ -91,7 +91,7 @@ void raw_hid_receive( uint8_t *data, uint8_t length )
#ifdef HS60_ANSI
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -199,7 +199,7 @@ led_config_t g_led_config = { {
#else
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/hs60/v2/ansi/config.h b/keyboards/hs60/v2/ansi/config.h
index 614b44d4d4..e96c36313c 100644
--- a/keyboards/hs60/v2/ansi/config.h
+++ b/keyboards/hs60/v2/ansi/config.h
@@ -53,8 +53,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 64
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_LED_COUNT 64
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h b/keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h
deleted file mode 100644
index bf39aae3a2..0000000000
--- a/keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#pragma once
-
-// disable backlight after timeout in minutes, 0 = no timeout
-#undef RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT
-#define RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 20
-
-#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_0
-#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_1
-#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_2
-#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_3
-#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_4
-
-#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0010000000000001
-#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0000000000000001
-#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0011000000000001 //Setting \ key to "MOD" instead of "ALPHA" for lighting
-#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0010000000000001
-#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011110000000111
-
-#undef RGB_BACKLIGHT_CAPS_LOCK_INDICATOR
-#undef RGB_BACKLIGHT_LAYER_1_INDICATOR
-#undef RGB_BACKLIGHT_LAYER_2_INDICATOR
-#undef RGB_BACKLIGHT_LAYER_3_INDICATOR
-
-#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 200, .s = 255 }, .index = 3-1 } //purple
-#define RGB_BACKLIGHT_LAYER_1_INDICATOR { .color = { .h = 100, .s = 255 }, .index = 60-1 } //green
-#define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 150, .s = 255 }, .index = 60-1 } //blue
-#define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 60-1 } //white
-
-#undef RGB_BACKLIGHT_BRIGHTNESS
-#define RGB_BACKLIGHT_BRIGHTNESS 175
-
-#undef RGB_BACKLIGHT_COLOR_1
-#undef RGB_BACKLIGHT_COLOR_2
-
-#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
-#define RGB_BACKLIGHT_COLOR_2 { .h = 150, .s = 255 }
-
-#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c b/keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 13fb7f005b..0000000000
--- a/keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Copyright 2018 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_60_ansi(
- TD_TESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, LT_SPCF, KC_RALT, TD_TWIN, MO(_FN2_60), TD_TCTL),
-
- [_DEFAULT] = LAYOUT_60_ansi(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1_60), MO(_FN2_60), KC_RCTL),
-
- [_FN1_60] = LAYOUT_60_ansi(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_PSCR, _______, _______, KC_INS,
- KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
- _______, KC_RDP, _______, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN2_60] = LAYOUT_60_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EE_CLR,
- _______, EF_INC, ES_INC, S1_INC, H1_INC, S2_INC, H2_INC, BR_INC, _______, _______, _______, _______, _______, QK_BOOT,
- _______, EF_DEC, ES_DEC, S1_DEC, H1_DEC, S2_DEC, H2_DEC, BR_DEC, _______, _______, _______, _______, KC_MAKE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, TG(_DEFAULT))
-};
-
-// Backlight specific keys:
-// EF_INC, EF_DEC, // next/previous backlight effect
-// H1_INC, H1_DEC, // Color 1 hue increase/decrease
-// S1_INC, S1_DEC, // Color 1 saturation increase/decrease
-// H2_INC, H2_DEC, // Color 2 hue increase/decrease
-// S2_INC, S2_DEC, // Color 2 saturation increase/decrease
-// BR_INC, BR_DEC, // backlight brightness increase/decrease
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- return true;
-}
diff --git a/keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md b/keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md
deleted file mode 100644
index 430d363f37..0000000000
--- a/keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md
+++ /dev/null
@@ -1,48 +0,0 @@
-<!-- Copyright 2019 Stanrc85
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.-->
-
-# Stanrc85's Standard ANSI 60% Layout
-
-## Keymap Notes
-- Layer 0 is default QWERTY layout with additional custom features:
- - SpaceFN to function layer 2 on `Space`
- - `CTRL` when held and `ESC` when tapped on `CAPS LOCK`
- - Tap Dance on `Fn1` for `CTRL+ALT+DEL` and `WIN+L`
- - Tap Dance on `ESC` for `ESC` and ` ` `
-
-![Base QWERTY Layer](https://imgur.com/lGcyLJx.png)
-
-- Layer 1 is default QWERTY with no custom features used mostly for gaming
- - Enabled by `Fn2+CAPS` from base layer
-
-![Default ANSI Layer](https://imgur.com/M7T9PNT.png)
-
-- Layer 2 is Function layer:
- - F keys
- - Arrows
- - Volume and Media controls
- - AutoHotkey shortcuts based on [Speaker Control](https://github.com/stanrc85/Speaker-Control) script
- - AHK Mic is used to mute/unmute microphone
- - AHK Speaker switches audio output between headphones and speakers
-
-![Function Layer](https://imgur.com/YPl0JrU.png)
-
-- Layer 3 is Backlight control and RESET
- - `Fn2+CAPS` used to toggle Default QWERTY layer on and off
-
-![RGB and RESET Layer](https://imgur.com/mMHoJPa.png)
-
-### Build
-To build the firmware file associated with this keymap, simply run `make your_keyboard:stanrc85`.
diff --git a/keyboards/hs60/v2/ansi/rules.mk b/keyboards/hs60/v2/ansi/rules.mk
index a231765dff..bc8cb00131 100644
--- a/keyboards/hs60/v2/ansi/rules.mk
+++ b/keyboards/hs60/v2/ansi/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
- quantum/color.c \
- i2c_master.c
+ quantum/color.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/hs60/v2/hhkb/config.h b/keyboards/hs60/v2/hhkb/config.h
index e834616068..6a6fa375bc 100644
--- a/keyboards/hs60/v2/hhkb/config.h
+++ b/keyboards/hs60/v2/hhkb/config.h
@@ -53,8 +53,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 64
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_LED_COUNT 64
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/hs60/v2/hhkb/rules.mk b/keyboards/hs60/v2/hhkb/rules.mk
index a231765dff..bc8cb00131 100644
--- a/keyboards/hs60/v2/hhkb/rules.mk
+++ b/keyboards/hs60/v2/hhkb/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
- quantum/color.c \
- i2c_master.c
+ quantum/color.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/hs60/v2/iso/config.h b/keyboards/hs60/v2/iso/config.h
index 7421f1bf12..5f1a55b1d1 100644
--- a/keyboards/hs60/v2/iso/config.h
+++ b/keyboards/hs60/v2/iso/config.h
@@ -50,8 +50,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 64
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_LED_COUNT 64
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/hs60/v2/iso/rules.mk b/keyboards/hs60/v2/iso/rules.mk
index a231765dff..bc8cb00131 100644
--- a/keyboards/hs60/v2/iso/rules.mk
+++ b/keyboards/hs60/v2/iso/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
- quantum/color.c \
- i2c_master.c
+ quantum/color.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/hs60/v2/v2.c b/keyboards/hs60/v2/v2.c
index f817ef19e7..45b1f54d5f 100644
--- a/keyboards/hs60/v2/v2.c
+++ b/keyboards/hs60/v2/v2.c
@@ -15,5 +15,82 @@
*/
#ifndef RGB_BACKLIGHT_HS60
-#error RGB_BACKLIGHT_HS60 not defined, recheck config.h
+# error RGB_BACKLIGHT_HS60 not defined, recheck config.h
+#else
+# include "drivers/led/issi/is31fl3733.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_HS60)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+};
#endif
diff --git a/keyboards/ibm/model_m/mschwingen/mschwingen.c b/keyboards/ibm/model_m/mschwingen/mschwingen.c
index b764660e21..8e3810cd23 100644
--- a/keyboards/ibm/model_m/mschwingen/mschwingen.c
+++ b/keyboards/ibm/model_m/mschwingen/mschwingen.c
@@ -39,26 +39,26 @@ static uint8_t isRecording = 0;
# if RGBLED_NUM < 3
# error we need at least 3 RGB LEDs!
# endif
-static cRGB led[RGBLED_NUM] = {{255, 255, 255}, {255, 255, 255}, {255, 255, 255}};
+static rgb_led_t led[RGBLED_NUM] = {{255, 255, 255}, {255, 255, 255}, {255, 255, 255}};
# define BRIGHT 32
# define DIM 6
-static const cRGB black = {.r = 0, .g = 0, .b = 0};
+static const rgb_led_t black = {.r = 0, .g = 0, .b = 0};
-static const __attribute__((unused)) cRGB green = {.r = 0, .g = BRIGHT, .b = 0};
-static const __attribute__((unused)) cRGB lgreen = {.r = 0, .g = DIM, .b = 0};
+static const __attribute__((unused)) rgb_led_t green = {.r = 0, .g = BRIGHT, .b = 0};
+static const __attribute__((unused)) rgb_led_t lgreen = {.r = 0, .g = DIM, .b = 0};
-static const __attribute__((unused)) cRGB red = {.r = BRIGHT, .g = 0, .b = 0};
-static const __attribute__((unused)) cRGB lred = {.r = DIM, .g = 0, .b = 0};
+static const __attribute__((unused)) rgb_led_t red = {.r = BRIGHT, .g = 0, .b = 0};
+static const __attribute__((unused)) rgb_led_t lred = {.r = DIM, .g = 0, .b = 0};
-static const __attribute__((unused)) cRGB blue = {.r = 0, .g = 0, .b = BRIGHT};
-static const __attribute__((unused)) cRGB lblue = {.r = 0, .g = 0, .b = DIM};
+static const __attribute__((unused)) rgb_led_t blue = {.r = 0, .g = 0, .b = BRIGHT};
+static const __attribute__((unused)) rgb_led_t lblue = {.r = 0, .g = 0, .b = DIM};
-static const __attribute__((unused)) cRGB turq = {.r = 0, .g = BRIGHT, .b = BRIGHT};
-static const __attribute__((unused)) cRGB lturq = {.r = 0, .g = DIM, .b = DIM};
+static const __attribute__((unused)) rgb_led_t turq = {.r = 0, .g = BRIGHT, .b = BRIGHT};
+static const __attribute__((unused)) rgb_led_t lturq = {.r = 0, .g = DIM, .b = DIM};
-static const __attribute__((unused)) cRGB white = {.r = BRIGHT, .g = BRIGHT, .b = BRIGHT};
+static const __attribute__((unused)) rgb_led_t white = {.r = BRIGHT, .g = BRIGHT, .b = BRIGHT};
static led_t led_state;
static uint8_t layer;
diff --git a/keyboards/ibm/model_m/mschwingen/rules.mk b/keyboards/ibm/model_m/mschwingen/rules.mk
index 5ccab87d9b..7d81ffe326 100644
--- a/keyboards/ibm/model_m/mschwingen/rules.mk
+++ b/keyboards/ibm/model_m/mschwingen/rules.mk
@@ -19,8 +19,8 @@ DYNAMIC_MACRO_ENABLE = yes
UART_DEBUG = no
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c \
- spi_master.c
+UART_DRIVER_REQUIRED = yes
+SPI_DRIVER_REQUIRED = yes
OPT_DEFS += -DSLEEP_LED_ENABLE # we need our own sleep callbacks to turn of WS2812 LEDs
diff --git a/keyboards/ibm/model_m/yugo_m/config.h b/keyboards/ibm/model_m/yugo_m/config.h
index 2b7fc4d157..0e6881ded3 100644
--- a/keyboards/ibm/model_m/yugo_m/config.h
+++ b/keyboards/ibm/model_m/yugo_m/config.h
@@ -36,7 +36,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-
-/* redefine available (emulated) EEPROM as 4 kB rather than the default 2 kB to let VIA use more of the on-chip Flash of the STM32F303 to store 4 layers (since 4 layers * 8 rows * 16 columns * 2 = 1024 bytes but the default max available is 1023 bytes due to ATMEGA32U4 etc. only having 1 kB of EEPROM) */
-#define WEAR_LEVELING_BACKING_SIZE 4096
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
diff --git a/keyboards/ibm/model_m/yugo_m/info.json b/keyboards/ibm/model_m/yugo_m/info.json
index 6e3a0b39c6..f4d9cc1d94 100644
--- a/keyboards/ibm/model_m/yugo_m/info.json
+++ b/keyboards/ibm/model_m/yugo_m/info.json
@@ -13,6 +13,11 @@
"rows": ["B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"]
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"processor": "STM32F303",
"bootloader": "stm32-dfu",
"board": "QMK_PROTON_C",
diff --git a/keyboards/idobao/id80/v2/ansi/keymaps/rverst/keymap.c b/keyboards/idobao/id80/v2/ansi/keymaps/rverst/keymap.c
deleted file mode 100644
index 595e76cbb3..0000000000
--- a/keyboards/idobao/id80/v2/ansi/keymaps/rverst/keymap.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright 2021 Robert Verst <robert@verst.eu> @rverst
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "rverst.h"
-
-//#define CLOSED_CASE // no underglow RGB visible
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_ansi(
- KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , MO(4) , KC_DEL ,
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_PGUP,
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
- KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT ,
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC , OSL(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT_ansi(
- RV_SNAP, KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_F17 , KC_F18 , KC_F19 , KC_F20 , KC_F21 , KC_F22 , KC_F23 , KC_F24 , KC_TRNS, KC_MUTE,
- RV_DEG , RV_SUP1, RV_SUP2, RV_SUP3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_UNEQ, RV_PM , KC_TRNS, KC_VOLU,
- KC_TRNS, KC_TRNS, KC_TRNS, RV_EUR , RV_RT , RV_TM , KC_TRNS, RV_UUML, KC_TRNS, RV_OUML, KC_TRNS, RV_VDEC, RV_VINC, RV_SEQU, KC_VOLD,
- KC_CAPS, RV_AUML, RV_SZ , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_LOCK, KC_TRNS, RV_SINC, KC_PENT,
- KC_TRNS, KC_TRNS, KC_TRNS, RV_CC , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_SDEC, KC_TRNS, KC_MSTP,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_MPRV, KC_MPLY, KC_MNXT
- ),
- [2] = LAYOUT_ansi(
- KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_TRNS, MO(4) , KC_MUTE,
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_VOLU,
- KC_TAB , KC_Q , KC_W , KC_F , KC_P , KC_G , KC_J , KC_L , KC_U , KC_Y , KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_VOLD,
- KC_ESC , KC_A , KC_R , KC_S , KC_T , KC_D , KC_H , KC_N , KC_E , KC_I , KC_O , KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_K , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC , OSL(3) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [3] = LAYOUT_ansi(
- RV_SNAP, KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_F17 , KC_F18 , KC_F19 , KC_F20 , KC_F21 , KC_F22 , KC_F23 , KC_F24 , KC_TRNS, KC_MUTE,
- RV_DEG , RV_SUP1, RV_SUP2, RV_SUP3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_UNEQ, RV_PM , KC_TRNS, KC_VOLU,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_LOCK, RV_UUML, KC_TRNS, KC_TRNS, RV_VDEC, RV_VINC, RV_SEQU, KC_VOLD,
- KC_CAPS, RV_AUML, RV_RT , RV_SZ , RV_TM , KC_TRNS, KC_TRNS, KC_TRNS, RV_EUR , KC_TRNS, RV_OUML, RV_SINC, KC_PENT,
- KC_TRNS, KC_TRNS, KC_TRNS, RV_CC , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RV_SDEC, KC_TRNS, KC_MSTP,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_MPRV, KC_MPLY, KC_MNXT
- ),
- [4] = LAYOUT_ansi(
- DB_TOGG, RV_SM0 , RV_SM1 , RV_SM2 , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , DF(0) , DF(2) , KC_TRNS, MO(5) ,
- RV_SAYM, RV_SM3 , RV_SM4 , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , RGB_TOG,
- KC_NO , KC_NO , GUI_ON , KC_NO , KC_NO , RCG_SWP, RGB_RMOD,RGB_M_P, RGB_MOD
- ),
- [5] = LAYOUT_ansi(
- QK_BOOT, RV_SM0S, RV_SM1S, RV_SM2S, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_TRNS,
- KC_NO , RV_SM3S, RV_SM4S, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO ,
- KC_NO , KC_NO , GUI_OFF, KC_NO , KC_NO , RCG_NRM, KC_NO , KC_NO , KC_NO
- )
-};
-// clang-format on
-
-void keyboard_post_init_keymap(void) {
-#ifdef CLOSED_CASE
- if (rgblight_is_enabled()) {
- rgblight_disable();
- }
-#endif
-}
diff --git a/keyboards/idobao/id80/v2/ansi/keymaps/rverst/readme.md b/keyboards/idobao/id80/v2/ansi/keymaps/rverst/readme.md
deleted file mode 100644
index 66dd2b5287..0000000000
--- a/keyboards/idobao/id80/v2/ansi/keymaps/rverst/readme.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# IDOBAO ID80
-
-This is my layout for the IDOBAO ID80. It depends of my [user files](../../../../users/rverst)
-and the main goal is to give an convenient and unified access to some special keys
-(umlauts, ß, €) for different operating systems (Mac, Windows and Linux).
-
-## Overview
-
-- Layer 0 is the base US-ANSI layout with Mac-style system keys and a OSL-Key for Layer 1 right of the space bar.
-- Layer 1 has the special keys and some media-functions like mute, volume up/down etc.
-- Layer 2 and 3 are basically the same as Layer 0 and 1 but in Colemak-Layout
-- Layer 4 and 5 has some functions like switching the keyboard mode, switching the default layer etc.
-
-
-## Keyboard modes
-
-- *F1:* Mac Unicode mode (use 'Unicode Hex Input' as input source)
-- *F2:* Windows Unicode mode (use [WinCompse](https://github.com/SamHocevar/wincompose) software)
-- *F3:* Linux Unicode mode (not tested yet but should work out of the box)
-- *1:* Mac legacy mode (uses option-sequences, e.g. `<option>+u a` for an `ä`), if I'm not able to set the input source
-- *2:* Windows legacy mode (uses altgr-sequences e.g. `<altgr>+0228` for an `ä`, if I'm not able to use WinCompose)
-
-Layer 4 to switch the modes temporary, layer 5 to switch and save to eeprom.
diff --git a/keyboards/idobao/id80/v2/ansi/keymaps/rverst/rverst.json b/keyboards/idobao/id80/v2/ansi/keymaps/rverst/rverst.json
deleted file mode 100644
index d37aef89aa..0000000000
--- a/keyboards/idobao/id80/v2/ansi/keymaps/rverst/rverst.json
+++ /dev/null
@@ -1,499 +0,0 @@
-{
- "keyboard": "ID80",
- "keymap": "rverst",
- "layout": "LAYOUT_ansi",
- "layers": [
- [
- "KC_ESC",
- "KC_F1",
- "KC_F2",
- "KC_F3",
- "KC_F4",
- "KC_F5",
- "KC_F6",
- "KC_F7",
- "KC_F8",
- "KC_F9",
- "KC_F10",
- "KC_F11",
- "KC_F12",
- "MO(4)",
- "KC_DEL",
- "KC_GRV",
- "KC_1",
- "KC_2",
- "KC_3",
- "KC_4",
- "KC_5",
- "KC_6",
- "KC_7",
- "KC_8",
- "KC_9",
- "KC_0",
- "KC_MINS",
- "KC_EQL",
- "KC_BSPC",
- "KC_PGUP",
- "KC_TAB",
- "KC_Q",
- "KC_W",
- "KC_E",
- "KC_R",
- "KC_T",
- "KC_Y",
- "KC_U",
- "KC_I",
- "KC_O",
- "KC_P",
- "KC_LBRC",
- "KC_RBRC",
- "KC_BSLS",
- "KC_PGDN",
- "KC_ESC",
- "KC_A",
- "KC_S",
- "KC_D",
- "KC_F",
- "KC_G",
- "KC_H",
- "KC_J",
- "KC_K",
- "KC_L",
- "KC_SCLN",
- "KC_QUOT",
- "KC_ENT",
- "KC_LSFT",
- "KC_Z",
- "KC_X",
- "KC_C",
- "KC_V",
- "KC_B",
- "KC_N",
- "KC_M",
- "KC_COMM",
- "KC_DOT",
- "KC_SLSH",
- "KC_RSFT",
- "KC_UP",
- "KC_LCTL",
- "KC_LALT",
- "KC_LGUI",
- "KC_SPC",
- "OSL(1)",
- "KC_RCTL",
- "KC_LEFT",
- "KC_DOWN",
- "KC_RGHT"
- ],
- [
- "RV_SNAP",
- "KC_F13",
- "KC_F14",
- "KC_F15",
- "KC_F16",
- "KC_F17",
- "KC_F18",
- "KC_F19",
- "KC_F20",
- "KC_F21",
- "KC_F22",
- "KC_F23",
- "KC_F24",
- "KC_TRNS",
- "KC_MUTE",
- "RV_DEG",
- "RV_SUP1",
- "RV_SUP2",
- "RV_SUP3",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_UNEQ",
- "RV_PM",
- "KC_TRNS",
- "KC_VOLU",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_EUR",
- "RV_RT",
- "RV_TM",
- "KC_TRNS",
- "RV_UUML",
- "KC_TRNS",
- "RV_OUML",
- "KC_TRNS",
- "RV_VDEC",
- "RV_VINC",
- "RV_SEQU",
- "KC_VOLD",
- "KC_CAPS",
- "RV_AUML",
- "RV_SZ",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_LOCK",
- "KC_TRNS",
- "RV_SINC",
- "KC_PENT",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_CC",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_PDOT",
- "RV_SDEC",
- "KC_TRNS",
- "KC_MSTP",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_RGUI",
- "KC_MPRV",
- "KC_MPLY",
- "KC_MNXT"
- ],
- [
- "KC_ESC",
- "KC_F1",
- "KC_F2",
- "KC_F3",
- "KC_F4",
- "KC_F5",
- "KC_F6",
- "KC_F7",
- "KC_F8",
- "KC_F9",
- "KC_F10",
- "KC_F11",
- "KC_TRNS",
- "MO(4)",
- "KC_MUTE",
- "KC_GRV",
- "KC_1",
- "KC_2",
- "KC_3",
- "KC_4",
- "KC_5",
- "KC_6",
- "KC_7",
- "KC_8",
- "KC_9",
- "KC_0",
- "KC_MINS",
- "KC_EQL",
- "KC_BSPC",
- "KC_VOLU",
- "KC_TAB",
- "KC_Q",
- "KC_W",
- "KC_F",
- "KC_P",
- "KC_G",
- "KC_J",
- "KC_L",
- "KC_U",
- "KC_Y",
- "KC_SCLN",
- "KC_LBRC",
- "KC_RBRC",
- "KC_BSLS",
- "KC_VOLD",
- "KC_ESC",
- "KC_A",
- "KC_R",
- "KC_S",
- "KC_T",
- "KC_D",
- "KC_H",
- "KC_N",
- "KC_E",
- "KC_I",
- "KC_O",
- "KC_QUOT",
- "KC_ENT",
- "KC_LSFT",
- "KC_Z",
- "KC_X",
- "KC_C",
- "KC_V",
- "KC_B",
- "KC_K",
- "KC_M",
- "KC_COMM",
- "KC_DOT",
- "KC_SLSH",
- "KC_RSFT",
- "KC_UP",
- "KC_LCTL",
- "KC_LALT",
- "KC_LGUI",
- "KC_SPC",
- "OSL(3)",
- "KC_RCTL",
- "KC_LEFT",
- "KC_DOWN",
- "KC_RGHT"
- ],
- [
- "RV_SNAP",
- "KC_F13",
- "KC_F14",
- "KC_F15",
- "KC_F16",
- "KC_F17",
- "KC_F18",
- "KC_F19",
- "KC_F20",
- "KC_F21",
- "KC_F22",
- "KC_F23",
- "KC_F24",
- "KC_TRNS",
- "KC_MUTE",
- "RV_DEG",
- "RV_SUP1",
- "RV_SUP2",
- "RV_SUP3",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_UNEQ",
- "RV_PM",
- "KC_TRNS",
- "KC_VOLU",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_LOCK",
- "RV_UUML",
- "KC_TRNS",
- "KC_TRNS",
- "RV_VDEC",
- "RV_VINC",
- "RV_SEQU",
- "KC_VOLD",
- "KC_CAPS",
- "RV_AUML",
- "RV_RT",
- "RV_SZ",
- "RV_TM",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_EUR",
- "KC_TRNS",
- "RV_OUML",
- "RV_SINC",
- "KC_PENT",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "RV_CC",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_PDOT",
- "RV_SDEC",
- "KC_TRNS",
- "KC_MSTP",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_TRNS",
- "KC_RGUI",
- "KC_MPRV",
- "KC_MPLY",
- "KC_MNXT"
- ],
- [
- "EE_CLR",
- "RV_SM0",
- "RV_SM1",
- "RV_SM2",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "DF(0)",
- "DF(2)",
- "KC_TRNS",
- "MO(5)",
- "RV_SAYM",
- "RV_SM3",
- "RV_SM4",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_TRNS",
- "RGB_HUI",
- "RGB_SAI",
- "RGB_VAI",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "RGB_TOG",
- "KC_NO",
- "KC_NO",
- "GUI_ON",
- "KC_NO",
- "KC_NO",
- "RCG_SWP",
- "RGB_RMOD",
- "RGB_M_P",
- "RGB_MOD"
- ],
- [
- "QK_BOOT",
- "RV_SM0S",
- "RV_SM1S",
- "RV_SM2S",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_TRNS",
- "KC_NO",
- "RV_SM3S",
- "RV_SM4S",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "KC_NO",
- "GUI_OFF",
- "KC_NO",
- "KC_NO",
- "RCG_NRM",
- "KC_NO",
- "KC_NO",
- "KC_NO"
- ]
- ]
-}
diff --git a/keyboards/idyllic/tinny50_rgb/config.h b/keyboards/idyllic/tinny50_rgb/config.h
index 15e1a6ff5c..0cb5eac432 100644
--- a/keyboards/idyllic/tinny50_rgb/config.h
+++ b/keyboards/idyllic/tinny50_rgb/config.h
@@ -17,9 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
#ifdef RGB_MATRIX_ENABLE
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255
#define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS * 7/8
diff --git a/keyboards/idyllic/tinny50_rgb/info.json b/keyboards/idyllic/tinny50_rgb/info.json
index f02e88f459..7e68b960f5 100644
--- a/keyboards/idyllic/tinny50_rgb/info.json
+++ b/keyboards/idyllic/tinny50_rgb/info.json
@@ -22,6 +22,9 @@
"rgb_matrix": true
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
"matrix_pins": {
"rows": ["GP0", "GP2", "GP3", "GP4", "GP7"],
"cols": ["GP29", "GP28", "GP27", "GP26", "GP25", "GP24", "GP23", "GP20", "GP19", "GP1", "GP6", "GP5"]
diff --git a/keyboards/ilumkb/simpler61/config.h b/keyboards/ilumkb/simpler61/config.h
index 151eba96c9..7978b495de 100644
--- a/keyboards/ilumkb/simpler61/config.h
+++ b/keyboards/ilumkb/simpler61/config.h
@@ -21,8 +21,7 @@
#define RGB_MATRIX_LED_PROCESS_LIMIT 4
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 61
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
#define DRIVER_INDICATOR_LED_TOTAL 0
diff --git a/keyboards/ilumkb/simpler61/simpler61.c b/keyboards/ilumkb/simpler61/simpler61.c
index 32670396da..f29f05defe 100644
--- a/keyboards/ilumkb/simpler61/simpler61.c
+++ b/keyboards/ilumkb/simpler61/simpler61.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS3_SW1, CS2_SW1, CS1_SW1},
{0, CS3_SW2, CS2_SW2, CS1_SW2},
{0, CS3_SW3, CS2_SW3, CS1_SW3},
diff --git a/keyboards/ilumkb/simpler64/config.h b/keyboards/ilumkb/simpler64/config.h
index 5554f56bd1..09dc7dc80f 100644
--- a/keyboards/ilumkb/simpler64/config.h
+++ b/keyboards/ilumkb/simpler64/config.h
@@ -21,8 +21,7 @@
#define RGB_MATRIX_LED_PROCESS_LIMIT 4
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 64
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
#define DRIVER_INDICATOR_LED_TOTAL 0
diff --git a/keyboards/ilumkb/simpler64/simpler64.c b/keyboards/ilumkb/simpler64/simpler64.c
index 130898f037..a562fa5c8b 100644
--- a/keyboards/ilumkb/simpler64/simpler64.c
+++ b/keyboards/ilumkb/simpler64/simpler64.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS3_SW1, CS2_SW1, CS1_SW1},
{0, CS3_SW2, CS2_SW2, CS1_SW2},
{0, CS3_SW3, CS2_SW3, CS1_SW3},
diff --git a/keyboards/inett_studio/sqx/hotswap/config.h b/keyboards/inett_studio/sqx/hotswap/config.h
index f698867ffb..a53a2132fa 100644
--- a/keyboards/inett_studio/sqx/hotswap/config.h
+++ b/keyboards/inett_studio/sqx/hotswap/config.h
@@ -32,9 +32,8 @@
//rgb matrix setting
#define DRIVER_1_LED_TOTAL 33
#define DRIVER_2_LED_TOTAL 31
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
#if defined(RGB_MATRIX_ENABLE) && defined(RGBLIGHT_ENABLE)
diff --git a/keyboards/inett_studio/sqx/hotswap/hotswap.c b/keyboards/inett_studio/sqx/hotswap/hotswap.c
index 7f5e298c4c..4d77a4829e 100644
--- a/keyboards/inett_studio/sqx/hotswap/hotswap.c
+++ b/keyboards/inett_studio/sqx/hotswap/hotswap.c
@@ -20,7 +20,7 @@
#include "hotswap.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/inett_studio/sqx/universal/config.h b/keyboards/inett_studio/sqx/universal/config.h
index 30903b5803..dd123bd7a9 100644
--- a/keyboards/inett_studio/sqx/universal/config.h
+++ b/keyboards/inett_studio/sqx/universal/config.h
@@ -32,9 +32,8 @@
//rgb matrix setting
#define DRIVER_1_LED_TOTAL 36
#define DRIVER_2_LED_TOTAL 36
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
#if defined(RGB_MATRIX_ENABLE) && defined(RGBLIGHT_ENABLE)
diff --git a/keyboards/inett_studio/sqx/universal/universal.c b/keyboards/inett_studio/sqx/universal/universal.c
index 9715f28b78..3ba42e9995 100644
--- a/keyboards/inett_studio/sqx/universal/universal.c
+++ b/keyboards/inett_studio/sqx/universal/universal.c
@@ -20,7 +20,7 @@
#include "universal.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/ingrained/rules.mk b/keyboards/ingrained/rules.mk
index 8dd9805257..e9a8002f90 100644
--- a/keyboards/ingrained/rules.mk
+++ b/keyboards/ingrained/rules.mk
@@ -16,4 +16,4 @@ NO_USB_STARTUP_CHECK = yes
LTO_ENABLE = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/inland/kb83/config.h b/keyboards/inland/kb83/config.h
index d1e7d11acc..be26cf869c 100644
--- a/keyboards/inland/kb83/config.h
+++ b/keyboards/inland/kb83/config.h
@@ -16,13 +16,8 @@
#pragma once
-
#define RGB_TRIGGER_ON_KEYDOWN
-/* DIP switch */
-#define DIP_SWITCH_PINS \
- { A9 }
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
@@ -36,12 +31,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_SDA_PIN B7
#define I2C1_SCL_PIN B6
#define I2C1_SCL_PAL_MODE 4
diff --git a/keyboards/inland/kb83/info.json b/keyboards/inland/kb83/info.json
index ce577fb029..d8e029c5fa 100644
--- a/keyboards/inland/kb83/info.json
+++ b/keyboards/inland/kb83/info.json
@@ -9,7 +9,7 @@
"force_nkro": true
},
"rgb_matrix": {
- "driver": "is31fl3733"
+ "driver": "snled27351"
},
"processor": "WB32FQ95",
"bootloader": "wb32-dfu",
@@ -18,6 +18,16 @@
"rows": ["B15", "C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dip_switch": {
+ "pins": ["A9"]
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "B14", "pin_b": "B13", "resolution": 4}
diff --git a/keyboards/inland/kb83/kb83.c b/keyboards/inland/kb83/kb83.c
index 86b52cfe92..49604b93be 100644
--- a/keyboards/inland/kb83/kb83.c
+++ b/keyboards/inland/kb83/kb83.c
@@ -18,8 +18,8 @@
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/inland/kb83/rules.mk b/keyboards/inland/kb83/rules.mk
index 756d0c0719..aefdb5a168 100644
--- a/keyboards/inland/kb83/rules.mk
+++ b/keyboards/inland/kb83/rules.mk
@@ -14,6 +14,4 @@ AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes # DPI Switch
ENCODER_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
#RGB_MATRIX_CUSTOM_USER = yes #Add turnoff LED
diff --git a/keyboards/inland/mk47/config.h b/keyboards/inland/mk47/config.h
index 678686555a..e5026bd0e7 100644
--- a/keyboards/inland/mk47/config.h
+++ b/keyboards/inland/mk47/config.h
@@ -23,11 +23,10 @@
#define SPI_MISO_PIN B4
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (4 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+
/* WB32 MCU has no default definition */
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000
diff --git a/keyboards/inland/mk47/info.json b/keyboards/inland/mk47/info.json
index 45a11e913a..e647723ed8 100644
--- a/keyboards/inland/mk47/info.json
+++ b/keyboards/inland/mk47/info.json
@@ -25,8 +25,16 @@
"cols": ["C1","C2","C3","A0","A1","A2","A3","A4","A5","A6","A7","C4"],
"rows": ["C6", "C7", "C8", "C9"]
},
+ "diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 4096
+ }
+ },
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 200,
"animations": {
"breathing": true,
@@ -99,7 +107,6 @@
{ "flags": 4, "matrix": [3, 11], "x": 224, "y": 64}
]
},
- "diode_direction": "ROW2COL",
"layout_aliases": {
"LAYOUT": "LAYOUT_planck_mit"
},
diff --git a/keyboards/inland/mk47/mk47.c b/keyboards/inland/mk47/mk47.c
index f247855944..5a34527c6c 100644
--- a/keyboards/inland/mk47/mk47.c
+++ b/keyboards/inland/mk47/mk47.c
@@ -16,8 +16,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/inland/mk47/rules.mk b/keyboards/inland/mk47/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/inland/mk47/rules.mk
+++ b/keyboards/inland/mk47/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/inland/v83p/config.h b/keyboards/inland/v83p/config.h
index c433b568dd..c39cb6421f 100644
--- a/keyboards/inland/v83p/config.h
+++ b/keyboards/inland/v83p/config.h
@@ -4,14 +4,9 @@
#define ENCODER_DEFAULT_POS 0x3
-/* DIP switch */
-#define DIP_SWITCH_PINS \
- { C11 }
-
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_SDA_PIN B7
#define I2C1_SCL_PIN B6
#define I2C1_SCL_PAL_MODE 4
@@ -29,7 +24,6 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (4 * 1024)
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/inland/v83p/info.json b/keyboards/inland/v83p/info.json
index d7a418bccf..69df93e6d0 100644
--- a/keyboards/inland/v83p/info.json
+++ b/keyboards/inland/v83p/info.json
@@ -12,6 +12,13 @@
"suspend_wakeup_delay": 1000
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 4096
+ }
+ },
"features": {
"bootmagic": true,
"command": false,
@@ -27,13 +34,16 @@
"cols": ["C1","C2","C3","A0","A1","A2","A3","A4","A5","A6","A7","C4","C5","B0","B1","B2"],
"rows": ["B15", "C6", "C7", "C8", "C9", "B14"]
},
+ "dip_switch": {
+ "pins": ["C11"]
+ },
"encoder": {
"rotary": [
{ "pin_a": "A8", "pin_b": "B13" }
]
},
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"max_brightness": 180,
"animations": {
"solid_color": true,
diff --git a/keyboards/inland/v83p/rules.mk b/keyboards/inland/v83p/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/inland/v83p/rules.mk
+++ b/keyboards/inland/v83p/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/inland/v83p/v83p.c b/keyboards/inland/v83p/v83p.c
index 26ab62784a..3cb9c06cb0 100644
--- a/keyboards/inland/v83p/v83p.c
+++ b/keyboards/inland/v83p/v83p.c
@@ -5,7 +5,7 @@
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/input_club/ergodox_infinity/config.h b/keyboards/input_club/ergodox_infinity/config.h
index 7db6119a1c..3757ca3d60 100644
--- a/keyboards/input_club/ergodox_infinity/config.h
+++ b/keyboards/input_club/ergodox_infinity/config.h
@@ -43,8 +43,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LED_BRIGHTNESS_HI 255
/* LED matrix driver */
-#define LED_DRIVER_ADDR_1 0x74
-#define LED_DRIVER_COUNT 1
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define LED_MATRIX_LED_COUNT 76
#define LED_MATRIX_SPLIT { 38, 38 }
#define LED_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/input_club/ergodox_infinity/ergodox_infinity.c b/keyboards/input_club/ergodox_infinity/ergodox_infinity.c
index b8f0d4ae13..8f245d9fa3 100644
--- a/keyboards/input_club/ergodox_infinity/ergodox_infinity.c
+++ b/keyboards/input_club/ergodox_infinity/ergodox_infinity.c
@@ -117,9 +117,6 @@ void matrix_init_kb(void) {
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
*/
-# if !defined(LED_MATRIX_DEFAULT_SPD)
-# define LED_MATRIX_DEFAULT_SPD UINT8_MAX / 2
-# endif
led_matrix_set_speed(LED_MATRIX_DEFAULT_SPD);
led_matrix_set_flags(LED_FLAG_ALL);
#endif
@@ -174,7 +171,7 @@ const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
#endif
#ifdef LED_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
// The numbers in the comments are the led numbers DXX on the PCB
/* Refer to IS31 manual for these locations
* driver
@@ -198,7 +195,7 @@ const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
// 71 70 69
{ 0, C3_7 }, { 0, C2_7 }, { 0, C1_7 },
// Right half (mirrored)
-// Due to how LED_MATRIX_SPLIT is implemented, only the first half of g_is31_leds is actually used.
+// Due to how LED_MATRIX_SPLIT is implemented, only the first half of g_is31fl3731_leds is actually used.
// Luckily, the right half has the same LED pinouts, just mirrored.
// 45 44 43 42 41 40 39
{ 0, C2_2 }, { 0, C1_2 }, { 0, C5_1 }, { 0, C4_1 }, { 0, C3_1 }, { 0, C2_1 }, { 0, C1_1 },
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/README.md b/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/README.md
deleted file mode 100644
index a0e4565b10..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/README.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# DudeOfAwesome's ErgoDox Infinity Layout
-
-A basic ErgoDox layout with Planck-like tri-layer support.
-
-![ErgoDox Layout](https://i.imgur.com/ae0Phzb.png)
-
-## Features
-
-- Base Layers
- - QWERTY
- - Workman
- - Dvorak
- - Colemak
-- Planck-like tri-layer
-- In-progress gaming layer
-- Numpad layer
- ![numpad layer](https://i.imgur.com/oHDYpzf.png)
-- LCD colors are linked together, like the default KLL firmware
-
-## Building and flashing
-
-1. Put your board in DFU mode with either the button on the bottom, or with a software key in your current firmware
-1. Flash left half:
- ```bash
- $ make ergodox_infinity:dudeofawesome:dfu-util
- ```
-1. Flash right half:
- ```bash
- $ make ergodox_infinity:dudeofawesome:dfu-util MASTER=right
- ```
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/config.h b/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/config.h
deleted file mode 100644
index 9dcf8a7f43..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/config.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#undef TAPPING_TOGGLE
-
-#include "../../config.h"
-#include "dudeofawesome.h"
-
-#endif
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/keymap.c b/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/keymap.c
deleted file mode 100644
index d1665ecb1f..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/keymap.c
+++ /dev/null
@@ -1,551 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "version.h"
-#include "layers.h"
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- WORKMAN,
- DVORAK,
- COLEMAK,
- LOWER,
- RAISE,
- GAME,
- MOUSE,
- EPRM,
- VRSN,
- RGB_SLD,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Keymap 0: Basic QWERTY layer
- *
- * ,---------------------------------------------. ,---------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | Esc | 6 | 7 | 8 | 9 | 0 | Del |
- * |--------+-----+-----+-----+-----+------------| |------+-----+-----+-----+-----+-----+--------|
- * | Tab | Q | W | E | R | T | [{ | | ]} | Y | U | I | O | P | BSPC |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | ESC | A | S | D | F | G |------| |------| H | J | K | L | ; | ' |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | Enter |
- * `--------+-----+-----+-----+-----+------------' `------------+-----+-----+-----+-----+--------'
- * | Num |Ctrl | Alt |LGUI |Lower| |Raise|Left |Down | Up |Right |
- * `------------------------------' `------------------------------'
- * ,------------. ,------------.
- * |Play | | | |Play |
- * ,-----|-----|------| |------+-----+-----.
- * | | | Alt | | Alt | | |
- * |Space|LOWER|------| |------|RAISE|Space|
- * | | | LGUI | | LGUI | | |
- * `------------------' `------------------'
- */
-[_QWERTY] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, _______,
- TT(_NUM), KC_LCTL, KC_LALT, KC_LGUI, LOWER,
-
- KC_MPLY, _______,
- KC_LALT,
- KC_SPACE, LOWER, KC_LGUI,
-
- // right hand
- KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOTE,
- _______, KC_N, KC_M, KC_COMM, KC_DOT, LT(_MOUSE, KC_SLSH), RSFT_T(KC_ENT),
- RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT,
-
- _______, KC_MPLY,
- KC_LALT,
- KC_LGUI, RAISE, KC_SPACE
-),
-
-/* Keymap 0: Basic Workman layer
- *
- * ,---------------------------------------------. ,--------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | Esc | 6 | 7 | 8 | 9 | 0 | Del |
- * |--------+-----+-----+-----+-----+------------| |------+-----+-----+-----+-----+-----+--------|
- * | Tab | Q | D | R | W | B | [{ | | ]} | J | F | U | P | ; | BSPC |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | ESC | A | S | H | T | G |------| |------| Y | N | E | O | I | ' |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | LShift | Z | X | M | C | V | | | | K | L | , | . | / | Enter |
- * `--------+-----+-----+-----+-----+------------' `------------+-----+-----+-----+-----+--------'
- * | Num |Ctrl | Alt |LGUI |Lower| |Raise|Left |Down | Up |Right |
- * `------------------------------' `------------------------------'
- * ,------------. ,------------.
- * |Play | | | |Play |
- * ,-----|-----|------| |------+-----+-----.
- * | | | Alt | | Alt | | |
- * |Space|LOWER|------| |------|RAISE|Space|
- * | | | LGUI | | LGUI | | |
- * `------------------' `------------------'
- */
-[_WORKMAN] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
- KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_LBRC,
- KC_ESC, KC_A, KC_S, KC_H, KC_T, KC_G,
- KC_LSFT, KC_Z, KC_X, KC_M, KC_C, KC_V, _______,
- TT(_NUM), KC_LCTL, KC_LALT, KC_LGUI, LOWER,
-
- KC_MPLY, _______,
- KC_LALT,
- KC_SPACE, LOWER, KC_LGUI,
-
- // right hand
- KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_RBRC, KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_BSPC,
- KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOTE,
- _______, KC_K, KC_L, KC_COMM, KC_DOT, LT(_MOUSE, KC_SLSH), RSFT_T(KC_ENT),
- RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT,
-
- _______, KC_MPLY,
- KC_LALT,
- KC_LGUI, RAISE, KC_SPACE
-),
-
-/* Keymap 0: Basic Dvorak layer
- *
- * ,---------------------------------------------. ,--------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | Esc | 6 | 7 | 8 | 9 | 0 | Del |
- * |--------+-----+-----+-----+-----+------------| |------+-----+-----+-----+-----+-----+--------|
- * | Tab | ' | , | . | P | Y | [{ | | ]} | F | G | C | R | L | BSPC |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | ESC | A | O | E | U | I |------| |------| D | H | T | N | S | / |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | Enter |
- * `--------+-----+-----+-----+-----+------------' `------------+-----+-----+-----+-----+--------'
- * | Num |Ctrl | Alt |LGUI |Lower| |Raise|Left |Down | Up |Right |
- * `------------------------------' `------------------------------'
- * ,------------. ,------------.
- * |Play | | | |Play |
- * ,-----|-----|------| |------+-----+-----.
- * | | | Alt | | Alt | | |
- * |Space|LOWER|------| |------|RAISE|Space|
- * | | | LGUI | | LGUI | | |
- * `------------------' `------------------'
- */
-[_DVORAK] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_LBRC,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, _______,
- TT(_NUM), KC_LCTL, KC_LALT, KC_LGUI, LOWER,
-
- KC_MPLY, _______,
- KC_LALT,
- KC_SPACE, LOWER, KC_LGUI,
-
- // right hand
- KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_RBRC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC,
- KC_D, KC_H, KC_T, KC_N, KC_S, LT(MOUSE, KC_SLSH),
- _______, KC_B, KC_M, KC_W, KC_V, KC_Z, RSFT_T(KC_ENT),
- RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT,
-
- _______, KC_MPLY,
- KC_LALT,
- KC_LGUI, RAISE, KC_SPACE
-),
-
-/* Keymap 0: Basic Colemak layer
- *
- * ,---------------------------------------------. ,--------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Esc | | Esc | 6 | 7 | 8 | 9 | 0 | Del |
- * |--------+-----+-----+-----+-----+------------| |------+-----+-----+-----+-----+-----+--------|
- * | Tab | Q | W | F | P | G | [{ | | ]} | J | L | U | Y | ; | BSPC |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | ESC | A | R | S | T | D |------| |------| H | N | E | I | O | ' |
- * |--------+-----+-----+-----+-----+-----| | | |-----+-----+-----+-----+-----+--------|
- * | LShift | Z | X | C | V | B | | | | K | M | , | . | / | Enter |
- * `--------+-----+-----+-----+-----+------------' `------------+-----+-----+-----+-----+--------'
- * | Num |Ctrl | Alt |LGUI |Lower| |Raise|Left |Down | Up |Right |
- * `------------------------------' `------------------------------'
- * ,------------. ,------------.
- * |Play | | | |Play |
- * ,-----|-----|------| |------+-----+-----.
- * | | | Alt | | Alt | | |
- * |Space|LOWER|------| |------|RAISE|Space|
- * | | | LGUI | | LGUI | | |
- * `------------------' `------------------'
- */
-[_COLEMAK] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_LBRC,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, _______,
- TT(_NUM), KC_LCTL, KC_LALT, KC_LGUI, LOWER,
-
- KC_MPLY, _______,
- KC_LALT,
- KC_SPACE, LOWER, KC_LGUI,
-
- // right hand
- KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_RBRC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOTE,
- _______, KC_K, KC_M, KC_COMM, KC_DOT, LT(_MOUSE, KC_SLSH), RSFT_T(KC_ENT),
- RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT,
-
- _______, KC_MPLY,
- KC_LALT,
- KC_LGUI, RAISE, KC_SPACE
-),
-
-/* Lower
- *
- * ,---------------------------------------------------. ,--------------------------------------------------.
- * | Version | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | |
- * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
- * | ~ | ! | @ | # | $ | % | F6 | | F5 | ^ | & | * | ( | ) | |
- * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Del | F1 | F2 | F3 | F4 | F5 |------| |------| F6 | _ | + | { | } | | |
- * |---------+------+------+------+------+------| F12 | | F11 |------+------+------+------+------+--------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO ~ |ISO | | Home | End | |
- * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | Play | Vol- | Vol+ | Next |
- * `-----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_LOWER] = LAYOUT_ergodox(
- // left hand
- VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11,
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_F6,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // right hand
- KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- KC_F5, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
- _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MNXT,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-/* Raise
- *
- * ,---------------------------------------------------. ,--------------------------------------------------.
- * | Version | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | F11 |
- * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
- * | ` | 1 | 2 | 3 | 4 | 5 | F6 | | F5 | 6 | 7 | 8 | 9 | 0 | |
- * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Del | F1 | F2 | F3 | F4 | F5 |------| |------| F6 | - | = | [ | ] | \ |
- * |---------+------+------+------+------+------| F12 | | F11 |------+------+------+------+------+--------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
- * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | Play | Vol- | Vol+ | Next |
- * `-----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * |Animat| | |Toggle|Solid |
- * ,------|------|------| |------+------+------.
- * |Bright|Bright| | | |Hue- |Hue+ |
- * |ness- |ness+ |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_RAISE] = LAYOUT_ergodox(
- // left hand
- VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F6,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // right hand
- KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- KC_F5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MNXT,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-/* Adjust
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * |Version | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | |Reset |Debug | | | | | | | |TRM on|TRMoff| | | Del |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | CPSLCK | | | | |AG Nrm|------| |------|AG Swp|QWERTY|Wrkman|Dvorak|Colmak| |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | Prev | Next | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | |VolUp |VolDn | Mute | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_ADJUST] = LAYOUT_ergodox(
- // left hand
- VRSN, _______, _______, _______, _______, _______, _______,
- _______, QK_BOOT, DB_TOGG, BL_TOGG, BL_STEP, _______, _______,
- KC_CAPS, _______, _______, _______, _______, AG_NORM,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_DEL,
- AG_SWAP, QWERTY, WORKMAN, DVORAK, COLEMAK, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-/* Keymap 2: Media and mouse keys
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | Lclk | MsUp | Rclk |Wh Up | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | |MsLeft|MsDown|MsRght|Wh Dn |------| |------| | | | | | Play |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | Prev | Next | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | |VolUp |VolDn | Mute | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | |Brwser|Brwser|
- * | Lclk | Rclk |------| |------|Back |Fwd |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-// MOUSE
-[_MOUSE] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_BTN2, KC_MS_U, KC_BTN1, KC_WH_D, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U,
- _______, _______, KC_WH_L, KC_BTN3, KC_WH_R, _______, TO(_GAME),
- _______, _______, _______, _______, _______,
-
- _______, _______,
- KC_WH_D,
- KC_BTN1, KC_BTN2, KC_WH_U,
-
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, KC_MPLY,
- TO(_GAME), _______, _______, KC_MPRV, KC_MNXT, _______, _______,
- KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
-
- _______, _______,
- _______,
- _______, KC_WBAK, KC_WFWD
-),
-
-/* Keymap 2: GAME
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | Lclk | MsUp | Rclk | | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | Prev | Next | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | |VolUp |VolDn | Mute | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | |Brwser|Brwser|
- * | Lclk | Rclk |------| |------|Back |Fwd |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_GAME] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- KC_SPACE, KC_LGUI, KC_LALT,
-
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- TG(_MOUSE), TT(_NUM),
- _______,
- _______, _______, _______
-),
-
-/* Keymap 2: NUMPAD
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | | ✗ | ✗ | ✗ | / | * | - | |
- * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
- * | | ✗ | Home | Up | End | PgUp | | | | ✗ | 7 | 8 | 9 | + | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | ✗ | Left | Down | Right| PgDn |------| |------| ✗ | 4 | 5 | 6 | + | ✗ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | / | * | - | + | Enter| | | | ✗ | 1 | 2 | 3 | Enter| Enter |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | ✗ | | 0 | 0 | . | Enter| = |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_NUM] = LAYOUT_ergodox(
- // left hand
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- _______, KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_NO,
- _______, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,
- _______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_PENT, KC_NO,
- _______, _______, _______, _______, KC_NO,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // right hand
- KC_NO, KC_NO, KC_NO, KC_PSLS, KC_PAST, KC_PMNS, _______,
- KC_NO, KC_NO, KC_P7, KC_P8, KC_P9, KC_PPLS, _______,
- KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_NO,
- KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_PENT, KC_PENT,
- KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_PEQL,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-};
-
-void matrix_init_user(void) {
- led_matrix_enable_noeeprom();
- led_matrix_set_val_noeeprom(UINT8_MAX);
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- case WORKMAN:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_WORKMAN);
- }
- return false;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- if (IS_LAYER_ON(_ADJUST)) {
- layer_off(_LOWER);
- layer_off(_RAISE);
- }
- } else {
- layer_off(_LOWER);
- if (IS_LAYER_ON(_ADJUST)) {
- layer_off(_ADJUST);
- layer_on(_RAISE);
- }
- }
- return false;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- if (IS_LAYER_ON(_ADJUST)) {
- layer_off(_RAISE);
- layer_off(_LOWER);
- }
- } else {
- layer_off(_RAISE);
- if (IS_LAYER_ON(_ADJUST)) {
- layer_off(_ADJUST);
- layer_on(_LOWER);
- }
- }
- return false;
- case EPRM:
- if (record->event.pressed) {
- eeconfig_init();
- }
- return false;
- case VRSN:
- if (record->event.pressed) {
- SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
- }
- return false;
- case RGB_SLD:
- if (record->event.pressed) {
- #ifdef RGBLIGHT_ENABLE
- rgblight_mode(1);
- #endif
- }
- return false;
- }
- return true;
-}
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/layers.h b/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/layers.h
deleted file mode 100644
index d852fe9803..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/dudeofawesome/layers.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#include QMK_KEYBOARD_H
-
-enum custom_layers {
- _QWERTY,
- _WORKMAN,
- _DVORAK,
- _COLEMAK,
- _LOWER,
- _RAISE,
- _ADJUST,
- _GAME,
- _MOUSE,
- _NUM,
-};
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/halfkeyboard/keymap.c b/keyboards/input_club/ergodox_infinity/keymaps/halfkeyboard/keymap.c
index ca0442103d..35f459fab5 100644
--- a/keyboards/input_club/ergodox_infinity/keymaps/halfkeyboard/keymap.c
+++ b/keyboards/input_club/ergodox_infinity/keymaps/halfkeyboard/keymap.c
@@ -1,8 +1,5 @@
#include QMK_KEYBOARD_H
-#include "debug.h"
-#include "action_layer.h"
#include "version.h"
-#include "keymap_steno.h"
#ifndef MIDI_ENABLE
#error "Midi is not enabled"
#endif
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/config.h b/keyboards/input_club/ergodox_infinity/keymaps/narze/config.h
deleted file mode 100644
index 9c9bca5961..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/config.h
+++ /dev/null
@@ -1,13 +0,0 @@
-#pragma once
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 150
-
-#define COMBO_TERM 20
-
-#define PERMISSIVE_HOLD
-
-#undef MOUSEKEY_DELAY
-#define MOUSEKEY_DELAY 100
-
-#define USB_POLLING_INTERVAL_MS 1
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/default.png.md b/keyboards/input_club/ergodox_infinity/keymaps/narze/default.png.md
deleted file mode 100644
index 744e7d172a..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/default.png.md
+++ /dev/null
@@ -1 +0,0 @@
-https://i.imgur.com/fKX0Zbs.png
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/default_highres.png.md b/keyboards/input_club/ergodox_infinity/keymaps/narze/default_highres.png.md
deleted file mode 100644
index 074e0634d2..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/default_highres.png.md
+++ /dev/null
@@ -1 +0,0 @@
-https://i.imgur.com/giAc3M9.jpg
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/keymap.c b/keyboards/input_club/ergodox_infinity/keymaps/narze/keymap.c
deleted file mode 100644
index 2ad9151bed..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/keymap.c
+++ /dev/null
@@ -1,697 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "narze.h"
-#include "version.h"
-#include "keymap_colemak.h"
-
-extern keymap_config_t keymap_config;
-
-enum ergodox_layers {
- _QWERTY,
- _COLEMAK,
- _QWOC,
- _LOWER,
- _RAISE,
- _PLOVER,
- // Intermediate layers for SuperDuper (Combo keys does not work on Infinity yet)
- _SUPERDUPER,
- _DEV,
- _MOUSE,
- _ADJUST,
- _MDIA,
- _SYMB,
-};
-
-enum ergodox_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- QWOC,
- LOWER,
- RAISE,
- PLOVER,
- SUPERDUPER,
- DEV,
- MOUSE,
- BACKLIT,
- EXT_PLV,
- SDTOGG, // Toggle SuperDuper
- EPRM,
- VRSN,
- RGB_SLD,
- GUI_UNDS,
- LSFT_LPRN,
- RSFT_RPRN,
-};
-
-// Narze : Custom Macros
-#define SFT_PO LSFT_LPRN
-#define SFT_PC RSFT_RPRN
-
-enum process_combo_event {
- CB_SUPERDUPER,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Mdia | | Mdia | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | Tab | Q | W | E | R | T | Symb | | Symb | Y | U | I | O | P | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Hp/Esc | A | S | D | F | G |------| |------| H | J | K | L | ; | ' |
- * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------|
- * | Sft/( | Z/Dv | X | C | V | B | | | | N | M | , | . | SD-/ | Sft/) |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * |Rse/[ | Ctrl | Alt | Gui/_| Lwr | | Rse/B| Bksp | Alt | Ctrl | Low/] |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Enter| LGui | | Alt |Ctrl/Esc|
- * ,------|------|------| |------+--------+------.
- * | | | Home | | PgUp | | |
- * | Space| Back |------| |------| Back |Enter |
- * | | Space| End | | PgDn | Space | |
- * `--------------------' `----------------------'
- */
-[_QWERTY] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_MDIA, KC_NO),
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, LT(_SYMB, KC_NO),
- HPR_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
- SFT_PO, LT(_DEV, KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO),
- LT(_RAISE, KC_LBRC),KC_LCTL, KC_LALT, GUI_UNDS, LOWER,
- KC_ENT, KC_LGUI,
- KC_HOME,
- KC_SPC,KC_BSPC,KC_END,
- // right hand
- LT(_MDIA, KC_NO), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- LT(_SYMB, KC_NO), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, LT(_SUPERDUPER, KC_SLSH), SFT_PC,
- RAISE, KC_BSPC,ALT_COLN,KC_RCTL, LT(_LOWER, KC_RBRC),
- KC_LALT, CTL_T(KC_ESC),
- KC_PGUP,
- KC_PGDN,KC_BSPC, KC_ENT
- ),
-/* Colemak
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | Mdia | | Mdia | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | Tab | Q | W | F | P | G | Symb | | Symb | J | L | U | Y | ; | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Hp/Esc | A | R | S | T | D |------| |------| H | N | E | I | O | ' |
- * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------|
- * | Sft/( | Z/Dv | X | C | V | B | | | | K | M | , | . | SD-/ | Sft/) |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * |Rse/[ | Ctrl | Alt | Gui/_| Lwr | | Rse/B| Bksp | Alt | Ctrl | Low/] |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Enter| LGui | | Alt |Ctrl/Esc|
- * ,------|------|------| |------+--------+------.
- * | | | Home | | PgUp | | |
- * | Space| Back |------| |------| Back |Enter |
- * | | Space| End | | PgDn | Space | |
- * `--------------------' `----------------------'
- */
-[_COLEMAK] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_MDIA, KC_NO),
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, LT(_SYMB, KC_NO),
- HPR_ESC, KC_A, KC_R, KC_S, KC_T, KC_D,
- SFT_PO, LT(_DEV, KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO),
- LT(_RAISE, KC_LBRC),KC_LCTL, KC_LALT, GUI_UNDS, LOWER,
- KC_ENT, KC_LGUI,
- KC_HOME,
- KC_SPC,KC_BSPC,KC_END,
- // right hand
- LT(_MDIA, KC_NO), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- LT(_SYMB, KC_NO), KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
- KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- MEH_T(KC_NO),KC_K, KC_M, KC_COMM,KC_DOT, LT(_SUPERDUPER, KC_SLSH), SFT_PC,
- RAISE, KC_BSPC,ALT_COLN,KC_RCTL, LT(_LOWER, KC_RBRC),
- KC_LALT, CTL_T(KC_ESC),
- KC_PGUP,
- KC_PGDN,KC_BSPC, KC_ENT
- ),
-/* Qwerty on software Colemak : Useful for gaming with qwerty keymaps! */
-[_QWOC] = LAYOUT_ergodox(
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_MDIA, KC_NO),
- KC_TAB, CM_Q, CM_W, CM_E, CM_R, CM_T, LT(_SYMB, KC_NO),
- HPR_ESC, CM_A, CM_S, CM_D, CM_F, CM_G,
- SFT_PO, LT(_MOUSE, CM_Z), CM_X, CM_C, CM_V, CM_B, ALL_T(KC_NO),
- LT(_RAISE, KC_LBRC),KC_LCTL, KC_LALT, GUI_UNDS, LOWER,
- KC_ENT, KC_LGUI,
- KC_HOME,
- KC_SPC,KC_BSPC,KC_END,
- // right hand
- LT(_MDIA, KC_NO), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- LT(_SYMB, KC_NO), CM_Y, CM_U, CM_I, CM_O, CM_P, KC_BSLS,
- CM_H, CM_J, CM_K, CM_L, CM_SCLN, KC_QUOT,
- MEH_T(KC_NO),CM_N, CM_M, CM_COMM,CM_DOT, LT(_SUPERDUPER, KC_SLSH), SFT_PC,
- RAISE, KC_BSPC,ALT_COLN,KC_RCTL, LT(_LOWER, KC_RBRC),
- KC_LALT, CTL_T(KC_ESC),
- KC_PGUP,
- KC_PGDN,KC_BSPC, KC_ENT
- ),
-/* Lower
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | F1 | F2 | F3 | F4 | F5 |------| |------| F6 | _ | + | { | } | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO ~ |ISO | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_LOWER] = LAYOUT_ergodox(
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______,
- _______, _______, _______, KC_BTN1, KC_BTN2,
- _______, _______,
- _______,
- _______, _______, _______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F12,S(KC_NUHS),S(KC_NUBS), _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
-),
-/* Raise
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | F1 | F2 | F3 | F4 | F5 |------| |------| F6 | - | = | [ | ] | \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | F7 | F8 | F9 | F10 | F11 | | | | F12 |ISO ~ |ISO | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[_RAISE] = LAYOUT_ergodox(
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_1, KC_2, KC_3, KC_4, KC_5, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______,
- _______, _______, _______, KC_BTN1, KC_BTN2,
- _______, _______,
- _______,
- _______, _______, _______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F12,S(KC_NUHS),S(KC_NUBS), _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-/* Plover
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | # | # | # | # | # | # | | | | # | # | # | # | # | # |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | # | # | # | # | # | | | | # | # | # | # | # | # |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Hp/Esc | S | T | P | H | * |------| |------| * | F | P | L | T | D |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Sft/( | S | K | W | R | * | | | | * | R | B | G | S | Z |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | Exit | | | A | O | | E | U | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Enter| LGui | | Alt |Ctrl/Esc|
- * ,------|------|------| |------+--------+------.
- * | | | Home | | PgUp | | |
- * | Space| Back |------| |------| Back |Enter |
- * | | Space| End | | PgDn | Space | |
- * `--------------------' `----------------------'
- */
-[_PLOVER] = LAYOUT_ergodox(
- // left hand
- KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, XXXXXXX,
- XXXXXXX, KC_1, KC_1, KC_1, KC_1, KC_1, XXXXXXX,
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T,
- XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX,
- EXT_PLV, XXXXXXX, XXXXXXX,KC_C, KC_V,
- KC_ENT, KC_LGUI,
- KC_HOME,
- KC_SPC,KC_BSPC,KC_END,
- // right hand
- XXXXXXX, KC_1, KC_1, KC_1, KC_1, KC_1, XXXXXXX,
- XXXXXXX, KC_1, KC_1, KC_1, KC_1, KC_1, XXXXXXX,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_N, KC_M,XXXXXXX,XXXXXXX, XXXXXXX,
- KC_LALT, CTL_T(KC_ESC),
- KC_PGUP,
- KC_PGDN,KC_BSPC, KC_ENT
- ),
-
-/* SuperDuper : https://gist.github.com/narze/861e2167784842d38771
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | | | | | | T← | T→ | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | A | [SuperDuper]| Bksp | Gui |------| |------| ← | ↓ | ↑ | → | Del | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+--------+------.
- * | | | | | | | |
- * | Shift| |------| |------| |Shift |
- * | | | | | | | |
- * `--------------------' `----------------------'
- */
-[_SUPERDUPER] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_LALT, _______, _______, KC_BSPC, KC_LGUI,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- KC_LSFT,_______,_______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, S(LGUI(KC_LBRC)), S(LGUI(KC_RBRC)), _______, _______,
- KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______,_______, KC_LSFT
- ),
-
-/* Dev Layer
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | | | | | - | + | ( | ) | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | |------| |------| _ | [ | ] | { | } | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | = | | | < | > | ? | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+--------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `----------------------'
- */
-[_DEV] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______,_______,_______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MINS, S(KC_EQL), S(KC_9), S(KC_0), _______,
- S(KC_MINS), KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), _______,
- _______, KC_EQL, S(KC_BSLS), S(KC_COMM), S(KC_DOT), S(KC_SLSH), _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______,_______, _______
- ),
-
-/* Mouse
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | S↑ | M↑ | S↓ | | | | | | | S↑ | S↓ | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | M← | M↓ | M→ | |------| |------| M← | M↓ | M↑ | M→ | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | |[Mouse| | | | M3 | | | | M3 | | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | M2 | | M2 | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+--------+------.
- * | | | | | | | |
- * | Left | |------| |------| | Left |
- * | Click| | | | | | Click|
- * `--------------------' `----------------------'
- */
-[_MOUSE] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______,
- _______, _______, _______, _______, _______, KC_BTN3, _______,
- _______, _______, _______, _______, KC_BTN2,
- _______, _______,
- _______,
- KC_BTN1,_______,_______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_WH_U, KC_WH_D, _______, _______,
- KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, _______, _______,
- _______, KC_BTN3, _______, _______, _______, _______, _______,
- KC_BTN2, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______,_______, KC_BTN1
- ),
-
-/* Adjust (Lower + Raise)
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | |Reset | | | | | | | | | | | | | Del |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | |AGnorm|------| |------|AGswap|Qwerty|Colemk|QwOnCo|Plover| |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | |SDTogg| | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | BACKLIT|
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+--------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `----------------------'
- */
-[_ADJUST] = LAYOUT_ergodox(
- // left hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, QK_BOOT, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, AG_NORM,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______,_______,_______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_DEL,
- AG_SWAP, QWERTY, COLEMAK, QWOC, PLOVER, _______,
- _______, SDTOGG, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, BACKLIT,
- _______, _______,
- _______,
- _______,_______, _______
- ),
-
-/* Layers below are not actively used but kept for future reference */
-
-/* Symbol
- * ,---------------------------------------------------. ,--------------------------------------------------.
- * |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |---------+------+------+------+------+------+------| |------+------+------+------+------+------+--------|
- * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 |
- * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | |
- * |---------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | |
- * `---------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | EPRM | | | | | | | . | 0 | = | |
- * `-----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * |Animat| | |Toggle|Solid |
- * ,------|------|------| |------+------+------.
- * |Bright|Bright| | | |Hue- |Hue+ |
- * |ness- |ness+ |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-// SYMBOLS
-[_SYMB] = LAYOUT_ergodox(
- // left hand
- VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
- _______,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,_______,
- _______,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV,
- _______,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,_______,
- EPRM,_______,_______,_______,_______,
- RGB_MOD,_______,
- _______,
- RGB_VAD,RGB_VAI,_______,
- // right hand
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12,
- KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, _______,
- _______, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, _______,
- _______,KC_DOT, KC_0, KC_EQL, _______,
- RGB_TOG, RGB_SLD,
- _______,
- _______, RGB_HUD, RGB_HUI
-),
-/* Media and mouse keys
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | MsUp | | | | | | | | | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | | | | | | | | | | Prev | Next | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | |Brwser|
- * | | |------| |------| |Back |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-// MEDIA AND MOUSE
-[_MDIA] = LAYOUT_ergodox(
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_MS_U, _______, _______, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_BTN1, KC_BTN2,
- _______, _______,
- _______,
- _______, _______, _______,
- // right hand
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, KC_MPLY,
- _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______,
- KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
- _______, _______,
- _______,
- _______, _______, KC_WBAK
-)
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
-
- set_superduper_key_combo_layer(_QWERTY);
- }
- return false;
-
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
-
- set_superduper_key_combo_layer(_COLEMAK);
- }
- return false;
-
- case QWOC:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWOC);
-
- set_superduper_key_combo_layer(_QWOC);
- }
- return false;
-
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
-
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
-
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
-
- case PLOVER:
- if (record->event.pressed) {
- layer_off(_RAISE);
- layer_off(_LOWER);
- layer_off(_ADJUST);
- layer_on(_PLOVER);
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- }
- keymap_config.raw = eeconfig_read_keymap();
- keymap_config.nkro = 1;
- eeconfig_update_keymap(keymap_config.raw);
- }
- return false;
-
- case EXT_PLV:
- if (record->event.pressed) {
- layer_off(_PLOVER);
- }
- return false;
-
- case SDTOGG:
- if (record->event.pressed) {
- toggle_superduper_mode();
- }
- return false;
-
- case VRSN:
- if (record->event.pressed) {
- SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
- }
- return false;
-
- case RGB_SLD:
- if (record->event.pressed) {
- #ifdef RGBLIGHT_ENABLE
- rgblight_mode(1);
- #endif
- }
- return false;
-
- // Macros
-
- // 1. Hold for LGUI, tap for Underscore
- case GUI_UNDS:
- perform_space_cadet(record, keycode, KC_LGUI, KC_LSFT, KC_MINS);
- return false;
-
- // 2. Hold for LSHIFT, tap for Parens open
- case LSFT_LPRN:
- perform_space_cadet(record, keycode, KC_LSFT, KC_LSFT, KC_9);
- return false;
-
- // 3. Hold for RSHIFT, tap for Parens close
- case RSFT_RPRN:
- perform_space_cadet(record, keycode, KC_RSFT, KC_RSFT, KC_0);
- return false;
-
- }
- return true;
-}
-
-void matrix_init_user(void) {
-
-}
-
-void matrix_setup(void) {
- set_superduper_key_combos();
-}
-
-void matrix_scan_user(void) {
- // uint8_t layer = get_highest_layer(layer_state);
-
- // ergodox_board_led_off();
- // ergodox_right_led_1_off();
- // ergodox_right_led_2_off();
- // ergodox_right_led_3_off();
- // switch (layer) {
- // // TODO: Make this relevant to the ErgoDox EZ.
- // case 1:
- // ergodox_right_led_1_on();
- // break;
- // case 2:
- // ergodox_right_led_2_on();
- // break;
- // default:
- // // none
- // break;
- // }
-}
-
-// Combos
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- if (pressed) {
- switch(combo_index) {
- case CB_SUPERDUPER:
- layer_on(_SUPERDUPER);
- ergodox_board_led_on();
- break;
- }
- } else {
- layer_off(_SUPERDUPER);
- ergodox_board_led_off();
- unregister_mods(MOD_BIT(KC_LGUI) | MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT)); // Sometimes mods are held, unregister them
- }
-}
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/readme.md b/keyboards/input_club/ergodox_infinity/keymaps/narze/readme.md
deleted file mode 100644
index 3094b021e0..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/readme.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# narze's layout
-
-## Notes
-- SuperDuper mode for Ergodox is still under development, since combo keys does not work very well on Ergodox firmware.
- Now it is using multiple layers as a workaround. Actual implementation using combos are on my Planck layout.
-
-## Key features
-- Qwerty + [Colemak](https://colemak.com) layouts, and you can type Qwerty on software-level Colemak as well. Very useful for gaming or when your friend wanna type something but don't use Colemak.
-- [(S)uper (D)uper Mode](/users/narze/readme.md)
-- Mouse keys with Z
-
-## Build instructions
-If your environment is ready to build with `make`, don't use docker since it takes 5m+ to compile.
-Use the instructions in Ergodox Infinity's readme.
-
-#### Left side (Docker)
-```
-cd /path/to/qmk_firmware
-util/docker_build.sh ergodox_infinity:narze
-avr-objcopy -Iihex -Obinary .build/ergodox_infinity_narze.hex .build/ergodox_infinity_narze_left.bin
-dfu-util --device 1c11:b007 -D .build/ergodox_infinity_narze_left.bin
-```
-
-#### Right side (Docker)
-You have to override `usb_args` in order to pass `MASTER=right` to docker using provided build script.
-```
-cd /path/to/qmk_firmware
-usb_args="-e MASTER=right" util/docker_build.sh ergodox_infinity:narze
-avr-objcopy -Iihex -Obinary .build/ergodox_infinity_narze.hex .build/ergodox_infinity_narze_right.bin
-dfu-util --device 1c11:b007 -D .build/ergodox_infinity_narze_right.bin
-```
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/rules.mk b/keyboards/input_club/ergodox_infinity/keymaps/narze/rules.mk
deleted file mode 100644
index 4a4ed58610..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/rules.mk
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-COMBO_ENABLE = yes
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/narze/visualizer.c b/keyboards/input_club/ergodox_infinity/keymaps/narze/visualizer.c
deleted file mode 100644
index 88f658d6b9..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/narze/visualizer.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
-Copyright 2017 Fred Sundvik
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "simple_visualizer.h"
-#include "util.h"
-
-// Copied from keymap.c
-enum ergodox_layers {
- _QWERTY,
- _COLEMAK,
- _QWOC,
- _LOWER,
- _RAISE,
- _PLOVER,
-// Intermediate layers for SuperDuper (Combo keys does not work on Infinity yet)
- _SUPER,
- _DUPER,
- _SUPERDUPER,
- _MOUSE,
- _ADJUST,
- _MDIA,
- _SYMB,
-};
-
-// This function should be implemented by the keymap visualizer
-// Don't change anything else than state->target_lcd_color and state->layer_text as that's the only thing
-// that the simple_visualizer assumes that you are updating
-// Also make sure that the buffer passed to state->layer_text remains valid until the previous animation is
-// stopped. This can be done by either double buffering it or by using constant strings
-static void get_visualizer_layer_and_color(visualizer_state_t* state) {
- uint8_t saturation = 255;
-
- uint8_t layer = biton32(state->status.layer);
- state->target_lcd_color = LCD_COLOR(layer << 2, saturation, 0xFF);
-
- switch(layer) {
- case _QWERTY:
- state->layer_text = "QWERTY";
- break;
- case _COLEMAK:
- state->layer_text = "COLEMAK";
- break;
- case _QWOC:
- state->layer_text = "QWERTY on COLEMAK";
- break;
- case _LOWER:
- state->layer_text = "LOWER";
- break;
- case _RAISE:
- state->layer_text = "RAISE";
- break;
- case _PLOVER:
- state->layer_text = "PLOVER";
- break;
- case _SUPERDUPER:
- state->layer_text = "SUPERDUPER";
- break;
- case _SUPER:
- state->layer_text = "SUPER";
- break;
- case _DUPER:
- state->layer_text = "DUPER";
- break;
- case _MOUSE:
- state->layer_text = "MOUSE";
- break;
- case _ADJUST:
- state->layer_text = "ADJUST";
- break;
- case _MDIA:
- state->layer_text = "MDIA";
- break;
- case _SYMB:
- state->layer_text = "SYMB";
- break;
- default:
- state->layer_text = "NONE";
- break;
- }
-}
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/keymap.c b/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/keymap.c
deleted file mode 100644
index a49fe882ea..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/keymap.c
+++ /dev/null
@@ -1,267 +0,0 @@
-#include QMK_KEYBOARD_H
-
-/*
-NQN is not-quite-neo
-A layout based on neo2
-*/
-
-#include "action_layer.h"
-#include "version.h"
-
-#include "nqn-keys-on-quertz-de-latin1.h"
-#include "nqn-basic-layout.h"
-
-// Since our quirky block definitions are basically a list of comma separated
-// arguments, we need a wrapper in order for these definitions to be
-// expanded before being used as arguments to the LAYOUT_xxx macro.
-#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__)
-
-#ifdef LEADER_TIMEOUT
-#undef LEADER_TIMEOUT
-#endif
-#define LEADER_TIMEOUT 300
-
-// Automatic number generation of important keywords
-enum my_keycodes{
- // Layer numbers follow the neo2 terminology, i.e. base layer = layer 1
- L01 = 0,
- /* L02, SHIFT is not (yet) implemented as a fully customizable layer */
- L03,
- L04,
- L05,
- /* L06, UNSPECIFIED not (yet) needed */
- LFN
-};
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* L01 -> default: BASE LAYER
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | TAB | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | BACKSP |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | ESC | | LEADR| | LEADR| | ENTER |
- * |--------+ | | | | +--------|
- * | L03 | L01_LEFT |------| |------| L01_RIGHT | L03 |
- * |--------+ | LFN | | LFN | +--------|
- * | SHIFT | | | | | | SHIFT |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | CTRL | GUI | ALT | L05 | L04 | | L04 | L05 | ALTGR| LFN | CTRL |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | HOME | END | | LEFT | RIGHT|
- * ,------|------|------| |------+------+------.
- * | | | PGUP | | UP | | |
- * | SPACE| SHIFT|------| |------| SHIFT| SPACE|
- * | | | PGDN | | DOWN | | |
- * `--------------------' `--------------------'
- */
-[L01] = LAYOUT_ergodox_wrapper(
- KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, XXXXXXX,
- KC_ESC, L01_LEFT_01, QK_LEAD,
- MO(L03), L01_LEFT_02,
- KC_LSFT, L01_LEFT_03, MO(LFN),
- KC_LCTL, KC_LGUI,KC_LALT, MO(L05), MO(L04),
- XXXXXXX, XXXXXXX,
- KC_PGUP,
- KC_SPACE,KC_LSFT, KC_PGDN,
- //--
- XXXXXXX, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- QK_LEAD, L01_RIGHT_01, KC_ENTER,
- L01_RIGHT_02, MO(L03),
- MO(LFN), L01_RIGHT_03, KC_RSFT,
- MO(L04), MO(L05), KC_RALT, MO(LFN), KC_RCTL,
- KC_LEFT, KC_RIGHT,
- KC_UP,
- KC_DOWN, KC_RSFT, KC_SPACE
-),
-
-
-/*
-L02 -> MO(L02): SHIFT (as a layer not used, not defined, not reachable)
- */
-
-
-/* L03 -> MO(L03): PROGRAMMING
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | |
- * |--------+ | | | | +--------|
- * | | L03_LEFT |------| |------| L03_RIGHT | |
- * |--------+ | | | | +--------|
- * | | | | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[L03] = LAYOUT_ergodox_wrapper(
- _______, _______, _______, _______, _______, _______, _______,
- _______, L03_LEFT_01, _______,
- _______, L03_LEFT_02,
- _______, L03_LEFT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______,
- //--
- _______, _______, _______, _______, _______, _______, _______,
- _______, L03_RIGHT_01, _______,
- L03_RIGHT_02, _______,
- _______, L03_RIGHT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-/* L04 -> MO(L04): NAVIGATION AND NUMBERS
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | |
- * |--------+ | | | | +--------|
- * | | L04_LEFT |------| |------| L04_RIGHT | |
- * |--------+ | | | | +--------|
- * | | | | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | 0 | |------| |------| | 0 |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[L04] = LAYOUT_ergodox_wrapper(
- _______, _______, _______, _______, _______, _______, _______,
- _______, L04_LEFT_01, _______,
- _______, L04_LEFT_02,
- _______, L04_LEFT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- KC_0, _______, _______,
- //--
- _______, _______, _______, _______, _______, _______, _______,
- _______, L04_RIGHT_01, _______,
- L04_RIGHT_02, _______,
- _______, L04_RIGHT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, KC_0
-),
-
-
-/* L05 -> MO(L05): ALTERNATE
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | |
- * |--------+ | | | | +--------|
- * | | L05_LEFT |------| |------| L05_RIGHT | |
- * |--------+ | | | | +--------|
- * | | | | | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[L05] = LAYOUT_ergodox_wrapper(
- _______, _______, _______, _______, _______, _______, _______,
- _______, L05_LEFT_01, _______,
- _______, L05_LEFT_02,
- _______, L05_LEFT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______,
- //--
- _______, _______, _______, _______, _______, _______, _______,
- _______, L05_RIGHT_01, _______,
- L05_RIGHT_02, _______,
- _______, L05_RIGHT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-
-/*
-L06 -> <TBD>: UNSPECIFIED
-*/
-
-
-/* LFN -> MO(FN): FUNCTION
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | QK_BOOT | | | | | | | | | | | | | | QK_BOOT |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | | | | BACKSPC|
- * |--------+ | | | | +--------|
- * | | L06_LEFT |------| |------| L06_RIGHT | INSERT |
- * |--------+ | | | | +--------|
- * | | | | | | | DELETE |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | VOL+ | VOL- | MUTE | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[LFN] = LAYOUT_ergodox_wrapper(
- QK_BOOT, _______, _______, _______, _______, _______, _______,
- _______, L06_LEFT_01, _______,
- _______, L06_LEFT_02,
- _______, L06_LEFT_03, _______,
- _______, _______, _______, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______,
- //--
- _______, _______, _______, _______, _______, _______, QK_BOOT,
- _______, L06_RIGHT_01, KC_BSPC,
- L06_RIGHT_02, KC_INSERT,
- _______, L06_RIGHT_03, KC_DELETE,
- KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
- _______, _______,
- _______,
- _______, _______, _______
-)
-
-};
-
-void leader_end_user(void) {
- if (leader_sequence_one_key(KC_1)) {
- send_unicode_string("¯\\_(ツ)_/¯");
- }
-
- if (leader_sequence_one_key(KC_2)) {
- send_unicode_string("凸(ツ)凸");
- }
-}
-
-
-// Runs just one time when the keyboard initializes.
-void matrix_init_user(void) {
- set_unicode_input_mode(UNICODE_MODE_LINUX);
-};
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/readme.md b/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/readme.md
deleted file mode 100644
index 3fcb4edf0d..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# not-quite-neo
-
-This is my personal take on porting the [neo2 layout](https://www.neo-layout.org/) to support multiple keyboards.
-
-Refer to the [readme.md](../../../../users/not-quite-neo/readme.md) of the generic parts of the implementation. \ No newline at end of file
diff --git a/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/rules.mk b/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/rules.mk
deleted file mode 100644
index 74505bd69e..0000000000
--- a/keyboards/input_club/ergodox_infinity/keymaps/not-quite-neo/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-BACKLIGHT_ENABLE = yes
-UNICODE_ENABLE = yes
-LEADER_ENABLE = yes
diff --git a/keyboards/input_club/infinity60/halconf.h b/keyboards/input_club/infinity60/halconf.h
deleted file mode 100644
index f2a330b416..0000000000
--- a/keyboards/input_club/infinity60/halconf.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/infinity60/halconf.h -r platforms/chibios/common/configs/halconf.h`
- */
-
-#pragma once
-
-#define HAL_USE_I2C TRUE
-
-#include_next <halconf.h>
-
diff --git a/keyboards/input_club/infinity60/keymaps/default/keymap.c b/keyboards/input_club/infinity60/keymaps/default/keymap.c
index 8f571a2b9e..29ee5a378e 100644
--- a/keyboards/input_club/infinity60/keymaps/default/keymap.c
+++ b/keyboards/input_club/infinity60/keymaps/default/keymap.c
@@ -1,3 +1,6 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
diff --git a/keyboards/input_club/infinity60/keymaps/jpetermans/config.h b/keyboards/input_club/infinity60/keymaps/jpetermans/config.h
deleted file mode 100644
index 1949a9ad9d..0000000000
--- a/keyboards/input_club/infinity60/keymaps/jpetermans/config.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#pragma once
-
-//overrides
-#undef TAPPING_TOGGLE
-#define TAPPING_TOGGLE 2
-
diff --git a/keyboards/input_club/infinity60/keymaps/jpetermans/keymap.c b/keyboards/input_club/infinity60/keymaps/jpetermans/keymap.c
deleted file mode 100644
index d82517b662..0000000000
--- a/keyboards/input_club/infinity60/keymaps/jpetermans/keymap.c
+++ /dev/null
@@ -1,264 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "led_controller.h"
-
-//Define Layer Names
-#define _BASE 0
-#define _NUMPAD 1
-#define _FNAV 2
-#define _MEDIA 3
-#define _TILDE 4
-
-//IS31 chip has 8 available led pages, using 0 for all leds and 7 for single toggles
-#define max_pages 6
-
-enum led_modes {
- MODE_ALL,
- MODE_GAME,
- MODE_SINGLE,
- MODE_PAGE,
- MODE_FLASH
-};
-
-enum macro_id {
- LED_ALL = SAFE_RANGE,
- LED_GAME,
- LED_BACKLIGHT,
- LED_BRIGHT,
- LED_DIM,
- LED_SINGLE,
- LED_PAGE,
- LED_FLASH
-};
-
-uint8_t current_layer_global = 0;
-uint8_t led_mode_global = MODE_SINGLE;
-uint8_t backlight_status_global = 1; //init on/off state of backlight
-uint32_t led_layer_state = 0;
-
-/* ==================================
- * KEYMAPS
- * ==================================*/
-
-const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0: Default Layer
- * ,-----------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backs|
- * |-----------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \|
- * |-----------------------------------------------------------|
- * |CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Enter |
- * |-----------------------------------------------------------|
- * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |
- * |-----------------------------------------------------------|
- * |Ctrl|Gui |Alt | Space |Alt |Gui | FN | Ctrl |
- * `-----------------------------------------------------------'
- */
- /* default */
- [_BASE] = LAYOUT_60_ansi_split_bs_rshift(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_NO,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC,
- TT(_FNAV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,LM(_TILDE, MOD_LSFT),KC_NO,
- KC_LCTL, KC_LGUI,KC_LALT, LT(_FNAV, KC_SPC), KC_RALT,TG(_NUMPAD),MO(_MEDIA), KC_RCTL
- ),
-
- /* numpad */
- [_NUMPAD] = LAYOUT_60_ansi_split_bs_rshift(
- _______,_______,_______,_______,_______,_______,_______, KC_P7, KC_P8, KC_P9, KC_PSLS, _______,_______,_______,KC_NO,
- _______,_______,_______,_______,_______,_______,_______, KC_P4, KC_P5, KC_P6, KC_PAST, _______,_______,_______,
- MO(_FNAV),_______,_______,_______,_______,_______,_______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______,_______,
- _______,_______,_______,_______,_______,_______,_______, KC_P0,KC_COMM,KC_PDOT,KC_PPLS, _______,KC_NO,
- _______,_______,_______, TO(_BASE), _______,_______,_______,_______
- ),
-
- /* F-, arrow, and media keys */
- [_FNAV] = LAYOUT_60_ansi_split_bs_rshift(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,KC_NO,
- KC_CAPS,_______,_______,_______,_______,_______,_______,KC_PGUP,KC_UP,KC_PGDN,KC_PSCR,_______,_______,KC_DEL,
- _______,_______,KC_BTN2,_______,_______,_______,KC_HOME,KC_LEFT,KC_DOWN,KC_RGHT,KC_INS,_______,_______,
- _______,KC_APP,KC_BTN1,KC_CALC,_______,_______,KC_END,_______,_______,_______,_______,_______,KC_NO,
- _______,_______,_______, _______, C(A(KC_DEL)),KC_NUM,_______,_______
- ),
-
- /* media */
- [_MEDIA] = LAYOUT_60_ansi_split_bs_rshift(
- _______,LED_SINGLE,LED_PAGE,LED_FLASH,_______,_______,_______, _______, _______, _______,KC_MUTE, KC_VOLD, KC_VOLU,_______,KC_NO,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,_______,
- _______,_______,_______,_______,_______,LED_GAME,_______, _______, _______, _______,_______, _______,_______,
- _______,_______,LED_ALL ,LED_BRIGHT,LED_DIM,LED_BACKLIGHT,_______, _______, KC_MPRV, KC_MNXT,KC_MSTP, _______,KC_NO,
- _______,_______,_______, KC_MPLY, _______,_______, _______,_______
- ),
- /* ~ */
- [_TILDE] = LAYOUT_60_ansi_split_bs_rshift(
- KC_GRV,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,_______,KC_NO,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,_______,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,KC_NO,
- _______,_______,_______, _______, _______,_______, _______,_______
- ),
- /* template */
- [5] = LAYOUT_60_ansi_split_bs_rshift(
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,_______,KC_NO,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,_______,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,
- _______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,KC_NO,
- _______,_______,_______, _______, _______,_______, _______,_______
- ),
-};
-
-/* ==================================
- * LED MAPPING
- * ==================================*/
-
-/*
- Infinity60 LED MAP
- 11 12 13 14 15 16 17 18 21 22 23 24 25 26 27*
- 28 31 32 33 34 35 36 37 38 41 42 43 44 45
- 46 47 48 51 52 53 54 55 56 57 58 61 62
- 63 64 65 66 67 68 71 72 73 74 75 76 77*
- 78 81 82 83 84 85 86 87
- *Unused in Alphabet Layout
-*/
-
-//======== full page arrays =========
-//any change in array size needs to be mirrored in matrix_init_user
-uint8_t led_numpad[16] = {
- 18,21,22,23,
- 37,38,41,42,
- 55,56,57,58,
- 72,73,74,75
-};
-//LED Page 2 - _Nav
-uint8_t led_nav[12] = {
- 38,
- 47,48, 55,56,57,
- 64,65,66
-};
-//LED Page 3 - _Media
-uint8_t led_media[15] = {
- 12,13,14, 23,24,25,
- 65,66,67,68, 73,74,75,
- 83, 86
-};
-//LED Page 4 - _Game "WASD"
-uint8_t led_game[5] = {
- 11,
- 32,
- 47,48,51
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- msg_t msg;
-
- switch(keycode) {
- case LED_ALL:
- if(record->event.pressed) {
- led_mode_global = led_mode_global == MODE_ALL ? MODE_SINGLE : MODE_ALL;
- msg=TOGGLE_ALL;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- }
- return false;
-
- case LED_BACKLIGHT:
- if(record->event.pressed) {
- backlight_status_global ^= 1;
- msg=(backlight_status_global << 8) | TOGGLE_BACKLIGHT;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- }
- return false;
-
- case LED_GAME:
- if(record->event.pressed) {
- led_mode_global = led_mode_global == MODE_GAME ? MODE_SINGLE : MODE_GAME;
-
- msg=(4 << 8) | DISPLAY_PAGE;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- }
- return false;
-
- case LED_BRIGHT:
- if(record->event.pressed) {
- msg=(1 << 8) | STEP_BRIGHTNESS;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- }
- return false;
-
- case LED_DIM:
- if(record->event.pressed) {
- msg=(0 << 8) | STEP_BRIGHTNESS;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- }
- return false;
-
- //set led_mode for matrix_scan to toggle leds
- case LED_SINGLE:
- led_mode_global = MODE_SINGLE;
- return false;
- case LED_PAGE:
- led_mode_global = MODE_PAGE;
- return false;
- case LED_FLASH:
- led_mode_global = MODE_FLASH;
- return false;
-
- }
- return true;
-}
-
-// Runs just one time when the keyboard initializes.
-void matrix_init_user(void) {
-
- led_controller_init();
-
- // Write predefined led pages.
- write_led_page(_NUMPAD, led_numpad, 16);
- chThdSleepMilliseconds(10);
-
- write_led_page(_FNAV, led_nav, 12);
- chThdSleepMilliseconds(10);
-
- write_led_page(_MEDIA, led_media, 15);
- chThdSleepMilliseconds(10);
-
- write_led_page(4, led_game, 5);
- chThdSleepMilliseconds(1000);
-};
-
-// Loops constantly in the background.
-void matrix_scan_user(void) {
- uint8_t page;
- uint8_t led_pin_byte;
- msg_t msg;
-
- if (backlight_status_global == 0) {//backlight is off, skip the rest
- return;
- }
-
- if (led_layer_state != layer_state && led_mode_global != MODE_GAME && led_mode_global != MODE_ALL) {
- //check mode
- //Turn on layer indicator or page depending on mode
- switch(led_mode_global) {
- case MODE_FLASH: //flash preset page leds then single indicator
- page = get_highest_layer(layer_state) > max_pages ? 7 : get_highest_layer(layer_state);
- msg=(page << 8) | DISPLAY_PAGE;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- chThdSleepMilliseconds(500);
- //flow to display single layer leds
-
- case MODE_SINGLE: //light layer indicators for all active layers
- led_pin_byte = layer_state & 0xFF;
- msg=(7 << 8) | DISPLAY_PAGE;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- msg=(1 << 16) | (led_pin_byte << 8) | SET_FULL_ROW;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- break;
-
- case MODE_PAGE: //display pre-defined led page
- page = get_highest_layer(layer_state) > max_pages ? 7 : get_highest_layer(layer_state);
- msg=(page << 8) | DISPLAY_PAGE;
- chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
- break;
- }
- led_layer_state = layer_state;
- }
-}
diff --git a/keyboards/input_club/infinity60/keymaps/jpetermans/readme.md b/keyboards/input_club/infinity60/keymaps/jpetermans/readme.md
deleted file mode 100644
index 00421015bd..0000000000
--- a/keyboards/input_club/infinity60/keymaps/jpetermans/readme.md
+++ /dev/null
@@ -1,87 +0,0 @@
-Backlight for Infinity60
-========================
-
-## Led Controller Specs
-
-The Infinity60 (revision 1.1a) pcb uses the IS31FL3731C matrix LED driver from ISSI [(datasheet)](http://www.issi.com/WW/pdf/31FL3731C.pdf). The IS31 has the ability to control two led matrices (A & B), each matrix controlling 9 pins, each pin controlling 8 leds. The Infinity only utilizes matrix A.
-
-Infinity60 LED Map:
-digits mean "row" and "col", i.e. 45 means pin 4, column 5 in the IS31 datasheet
-```c
- 11 12 13 14 15 16 17 18 21 22 23 24 25 26 27*
- 28 31 32 33 34 35 36 37 38 41 42 43 44 45
- 46 47 48 51 52 53 54 55 56 57 58 61 62
- 63 64 65 66 67 68 71 72 73 74 75 76 77*
- 78 81 82 83 84 85 86 87
-```
-*Unused in Alphabet Layout
-
-The IS31 includes 8 led pages (or frames) 0-7 than can be displayed, and each page consists of 144 bytes.
-- **bytes 0 - 17** - LED control (on/off).
- * 18 bytes which alternate between A and B matrices (A1, B1, A2, B2, ..).
- * Each byte controls the 8 leds on that pin with bits (8 to 1).
-- **bytes 8 - 35** - Blink control.
- * Same as LED control above, but sets blink on/off.
-- **bytes 36 - 143** - PWM control.
- * One byte per LED, sets PWM from 0 to 255.
- * Same as above, the register alternates, every 8 *bytes* (not bits) between the A & B matrices.
-
-## Led Controller Code
-In the Infinity60 project folder, led_controller.c sets up ability to write led layers at startup or control leds on demand as part of fn_actions. By default led_controller.c assumes page 0 will be used for full on/off. The remaining 7 pages (1-7) are free for preset led maps or single led actions at init or on demand. Communication with the IS31 is primarily done through the led_mailbox using chMBPost described further below under "Sending messages in Keymap.c". This code is based on work matt3o and flabbergast did for tmk firmware on the [whitefox](https://github.com/tmk/whitefox).
-
-One function is available to directly set leds without the mailbox:
-```
-write_led_page(page#, array of leds by address, # of addresses in array)
-```
-This function saves a full page to the controller using a supplied array of led locations such as:
-```c
-uint8_t led_numpad[16] = {
- 18,21,22,23,
- 37,38,41,42,
- 55,56,57,58,
- 72,73,74,75
-}
-write_led_page(5, led_numpad, 16);
-```
-
-Remaining led control is done through the led mailbox using these message types:
-- **SET_FULL_ROW** (3 bytes) - message type, 8-bit mask, and row#. Sets all leds on one pin per the bit mask.
-- **OFF_LED, ON_LED, TOGGLE_LED** (3 bytes) - message type, led address, and page#. Off/on/toggle specific led.
-- **BLINK_OFF_LED, BLINK_ON_LED, BLINK_TOGGLE_LED** (3 bytes) - message type, led address, and page#. Set blink Off/on/toggle for specific led.
-- **TOGGLE_ALL** (1 byte) - Turn on/off full backlight.
-- **TOGGLE_BACKLIGHT** (2 bytes) - message type, on/off. Sets backlight completely off, no leds will display.
-- **DISPLAY_PAGE** (2 bytes) - message type, page to display. Switch to specific pre-set page.
-- **RESET_PAGE** (2 bytes) - message type, page to reset. Reset/erase specific page.
-- **TOGGLE_NUM_LOCK** (2 bytes) - message type, on/off (NUM_LOCK_LED_ADDRESS). Toggle numlock on/off. Usually run with the `set_leds` function to check state of numlock or capslock. If all leds are on (e.i. TOGGLE_ALL) then this sets numlock to blink instead (this is still a little buggy if toggling on/off quickly).
-- **TOGGLE_CAPS_LOCK** (2 bytes) - message type, on/off (CAPS_LOCK_LED_ADDRESS). Same as numlock.
-- **STEP_BRIGHTNESS** (2 bytes) - message type, and step up (1) or step down (0). Increase or decrease led brightness.
-
-## Sending messages in Keymap.c
-Sending an action to the led mailbox is done using chMBPost:
-```
-chMBPost(&led_mailbox, message, timeout);
-```
-- &led_mailbox - pointer to led mailbox
-- message - up to 4 bytes but most messages use only 2. First byte (LSB) is the message type, the remaining three bytes are the message to process.
-- timeout is TIME_IMMEDIATE
-
-An example:
-```c
-//set the message to be sent. First byte (LSB) is the message type, and second is the led address
-msg=(42 << 8) | ON_LED;
-
-//send msg to the led mailbox
-chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
-```
-
-Another:
-```c
-msg=(46 << 8) | BLINK_TOGGLE_LED;
-chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
-```
-
-Finally, SET_FULL_ROW requires an extra byte with row information in the message so sending this message looks like:
-```c
-msg=(row<<16) | (led_pin_byte << 8) | SET_FULL_ROW;
-chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
-```
diff --git a/keyboards/input_club/infinity60/led.c b/keyboards/input_club/infinity60/led.c
deleted file mode 100644
index 33871bcc49..0000000000
--- a/keyboards/input_club/infinity60/led.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-Copyright 2015 Jun Wako <wakojun@gmail.com>
-Copyright 2017 jpetermans <tibcmhhm@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include <hal.h>
-
-#include "led.h"
-
-#include "led_controller.h"
-
-/* WARNING! This function needs to be callable from
- * both regular threads and ISRs, unlocked (during resume-from-sleep).
- * In particular, I2C functions (interrupt-driven) should NOT be called from here.
- */
-bool led_update_kb(led_t led_state) {
- bool res = led_update_user(led_state);
- if (res) {
- msg_t msg;
-
- if (led_state.num_lock) {
- chSysUnconditionalLock();
- msg=(1 << 8) | TOGGLE_NUM_LOCK;
- chMBPostI(&led_mailbox, msg);
- chSysUnconditionalUnlock();
- } else {
- chSysUnconditionalLock();
- msg=(0 << 8) | TOGGLE_NUM_LOCK;
- chMBPostI(&led_mailbox, msg);
- chSysUnconditionalUnlock();
- }
- if (led_state.caps_lock) {
- chSysUnconditionalLock();
- msg=(1 << 8) | TOGGLE_CAPS_LOCK;
- chMBPostI(&led_mailbox, msg);
- chSysUnconditionalUnlock();
- } else {
- chSysUnconditionalLock();
- msg=(0 << 8) | TOGGLE_CAPS_LOCK;
- chMBPostI(&led_mailbox, msg);
- chSysUnconditionalUnlock();
- }
- }
- return false;
-}
diff --git a/keyboards/input_club/infinity60/led/config.h b/keyboards/input_club/infinity60/led/config.h
new file mode 100644
index 0000000000..293b192d60
--- /dev/null
+++ b/keyboards/input_club/infinity60/led/config.h
@@ -0,0 +1,14 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define LED_MATRIX_LED_COUNT 63
+
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+
+#define I2C1_CLOCK_SPEED 400000
+#define I2C1_SCL_PIN B0
+#define I2C1_SDA_PIN B1
+#define I2C1_SCL_PAL_MODE PAL_MODE_ALTERNATIVE_2
+#define I2C1_SDA_PAL_MODE PAL_MODE_ALTERNATIVE_2
diff --git a/keyboards/input_club/infinity60/led/halconf.h b/keyboards/input_club/infinity60/led/halconf.h
new file mode 100644
index 0000000000..50c7d00001
--- /dev/null
+++ b/keyboards/input_club/infinity60/led/halconf.h
@@ -0,0 +1,8 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define HAL_USE_I2C TRUE
+
+#include_next <halconf.h>
diff --git a/keyboards/input_club/infinity60/led/info.json b/keyboards/input_club/infinity60/led/info.json
index 7a9b924a71..f16554d245 100644
--- a/keyboards/input_club/infinity60/led/info.json
+++ b/keyboards/input_club/infinity60/led/info.json
@@ -3,5 +3,97 @@
"cols": ["C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "D0"],
"rows": ["D1", "D2", "D3", "D4", "D5", "D6", "D7"]
},
- "diode_direction": "COL2ROW"
+ "diode_direction": "COL2ROW",
+ "features": {
+ "led_matrix": true
+ },
+ "led_matrix": {
+ "driver": "is31fl3731",
+ "animations": {
+ "breathing": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "solid_splash": true,
+ "solid_multisplash": true,
+ "wave_left_right": true,
+ "wave_up_down": true
+ },
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 96, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 112, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 128, "y": 0, "flags": 4},
+ {"matrix": [1, 0], "x": 144, "y": 0, "flags": 4},
+ {"matrix": [1, 1], "x": 160, "y": 0, "flags": 4},
+ {"matrix": [1, 2], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [1, 3], "x": 192, "y": 0, "flags": 4},
+ {"matrix": [1, 4], "x": 208, "y": 0, "flags": 1},
+ {"matrix": [1, 5], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 6], "x": 0, "y": 16, "flags": 1},
+ {"matrix": [1, 7], "x": 17, "y": 16, "flags": 4},
+ {"matrix": [1, 8], "x": 35, "y": 16, "flags": 4},
+ {"matrix": [2, 0], "x": 52, "y": 16, "flags": 4},
+ {"matrix": [2, 1], "x": 69, "y": 16, "flags": 4},
+ {"matrix": [2, 2], "x": 86, "y": 16, "flags": 4},
+ {"matrix": [2, 3], "x": 103, "y": 16, "flags": 4},
+ {"matrix": [2, 4], "x": 121, "y": 16, "flags": 4},
+ {"matrix": [2, 5], "x": 138, "y": 16, "flags": 4},
+ {"matrix": [2, 6], "x": 155, "y": 16, "flags": 4},
+ {"matrix": [2, 7], "x": 172, "y": 16, "flags": 4},
+ {"matrix": [2, 8], "x": 190, "y": 16, "flags": 4},
+ {"matrix": [3, 0], "x": 207, "y": 16, "flags": 4},
+ {"matrix": [3, 1], "x": 224, "y": 16, "flags": 4},
+
+ {"matrix": [3, 2], "x": 0, "y": 32, "flags": 9},
+ {"matrix": [3, 3], "x": 19, "y": 32, "flags": 4},
+ {"matrix": [3, 4], "x": 37, "y": 32, "flags": 4},
+ {"matrix": [3, 5], "x": 56, "y": 32, "flags": 4},
+ {"matrix": [3, 6], "x": 75, "y": 32, "flags": 4},
+ {"matrix": [3, 7], "x": 93, "y": 32, "flags": 4},
+ {"matrix": [3, 8], "x": 112, "y": 32, "flags": 4},
+ {"matrix": [4, 0], "x": 131, "y": 32, "flags": 4},
+ {"matrix": [4, 1], "x": 149, "y": 32, "flags": 4},
+ {"matrix": [4, 2], "x": 168, "y": 32, "flags": 4},
+ {"matrix": [4, 3], "x": 187, "y": 32, "flags": 4},
+ {"matrix": [4, 4], "x": 205, "y": 32, "flags": 4},
+ {"matrix": [4, 5], "x": 224, "y": 32, "flags": 1},
+
+ {"matrix": [4, 6], "x": 0, "y": 48, "flags": 1},
+ {"matrix": [4, 7], "x": 19, "y": 48, "flags": 4},
+ {"matrix": [4, 8], "x": 37, "y": 48, "flags": 4},
+ {"matrix": [5, 0], "x": 56, "y": 48, "flags": 4},
+ {"matrix": [5, 1], "x": 75, "y": 48, "flags": 4},
+ {"matrix": [5, 2], "x": 93, "y": 48, "flags": 4},
+ {"matrix": [5, 3], "x": 112, "y": 48, "flags": 4},
+ {"matrix": [5, 4], "x": 131, "y": 48, "flags": 4},
+ {"matrix": [5, 5], "x": 149, "y": 48, "flags": 4},
+ {"matrix": [5, 6], "x": 168, "y": 48, "flags": 4},
+ {"matrix": [5, 7], "x": 187, "y": 48, "flags": 4},
+ {"matrix": [5, 8], "x": 205, "y": 48, "flags": 1},
+ {"matrix": [6, 0], "x": 224, "y": 48, "flags": 1},
+
+ {"matrix": [6, 1], "x": 0, "y": 64, "flags": 1},
+ {"matrix": [6, 2], "x": 32, "y": 64, "flags": 1},
+ {"matrix": [6, 3], "x": 64, "y": 64, "flags": 1},
+ {"matrix": [6, 4], "x": 96, "y": 64, "flags": 4},
+ {"matrix": [6, 5], "x": 128, "y": 64, "flags": 1},
+ {"matrix": [6, 6], "x": 160, "y": 64, "flags": 1},
+ {"matrix": [6, 7], "x": 192, "y": 64, "flags": 1},
+ {"matrix": [6, 8], "x": 224, "y": 64, "flags": 1}
+ ]
+ }
}
diff --git a/keyboards/input_club/infinity60/led/led.c b/keyboards/input_club/infinity60/led/led.c
new file mode 100644
index 0000000000..a6a63e202d
--- /dev/null
+++ b/keyboards/input_club/infinity60/led/led.c
@@ -0,0 +1,83 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "quantum.h"
+
+#ifdef LED_MATRIX_ENABLE
+const is31fl3731_led_t g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | LED address
+ * | | */
+ {0, C1_1}, // LED1
+ {0, C1_2}, // LED2
+ {0, C1_3}, // LED3
+ {0, C1_4}, // LED4
+ {0, C1_5}, // LED5
+ {0, C1_6}, // LED6
+ {0, C1_7}, // LED7
+ {0, C1_8}, // LED8
+
+ {0, C2_1}, // LED9
+ {0, C2_2}, // LED10
+ {0, C2_3}, // LED11
+ {0, C2_4}, // LED12
+ {0, C2_5}, // LED13
+ {0, C2_6}, // LED14/114
+ {0, C2_7}, // LED15
+ {0, C2_8}, // LED16
+
+ {0, C3_1}, // LED17
+ {0, C3_2}, // LED18
+ {0, C3_3}, // LED19
+ {0, C3_4}, // LED20
+ {0, C3_5}, // LED21
+ {0, C3_6}, // LED22
+ {0, C3_7}, // LED23
+ {0, C3_8}, // LED24
+
+ {0, C4_1}, // LED25
+ {0, C4_2}, // LED26
+ {0, C4_3}, // LED27
+ {0, C4_4}, // LED28
+ {0, C4_5}, // LED29
+ {0, C4_6}, // LED30
+ {0, C4_7}, // LED31
+ {0, C4_8}, // LED32
+
+ {0, C5_1}, // LED33
+ {0, C5_2}, // LED34
+ {0, C5_3}, // LED35
+ {0, C5_4}, // LED36
+ {0, C5_5}, // LED37
+ {0, C5_6}, // LED38
+ {0, C5_7}, // LED39
+ {0, C5_8}, // LED40
+
+ {0, C6_1}, // LED41
+ {0, C6_2}, // LED42
+ {0, C6_3}, // LED43
+ {0, C6_4}, // LED44
+ {0, C6_5}, // LED45
+ {0, C6_6}, // LED46
+ {0, C6_7}, // LED47
+ {0, C6_8}, // LED48
+
+ {0, C7_1}, // LED49
+ {0, C7_2}, // LED50
+ {0, C7_3}, // LED51
+ {0, C7_4}, // LED52
+ {0, C7_5}, // LED53
+ {0, C7_6}, // LED54/154
+ {0, C7_7}, // LED55
+ {0, C7_8}, // LED56/156
+
+ {0, C8_1}, // LED57/157
+ {0, C8_2}, // LED58/158
+ {0, C8_3}, // LED59/159
+ {0, C8_4}, // LED60/160
+ {0, C8_5}, // LED61/161
+ {0, C8_6}, // LED62/162
+ {0, C8_7} // LED63/163
+};
+#endif
diff --git a/keyboards/input_club/infinity60/led/rules.mk b/keyboards/input_club/infinity60/led/rules.mk
index d48f3b73a5..e69de29bb2 100644
--- a/keyboards/input_club/infinity60/led/rules.mk
+++ b/keyboards/input_club/infinity60/led/rules.mk
@@ -1,3 +0,0 @@
-# project specific files
-SRC += led.c \
- led_controller.c \ No newline at end of file
diff --git a/keyboards/input_club/infinity60/led_controller.c b/keyboards/input_club/infinity60/led_controller.c
deleted file mode 100644
index 5ea0ae804c..0000000000
--- a/keyboards/input_club/infinity60/led_controller.c
+++ /dev/null
@@ -1,488 +0,0 @@
-/*
-Copyright 2016 flabbergast <s3+flabbergast@sdfeu.org>
-Copyright 2017 jpetermans <tibcmhhm@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-/*
- * LED controller code
- * IS31FL3731C matrix LED driver from ISSI
- * datasheet: http://www.issi.com/WW/pdf/31FL3731C.pdf
- */
-
-#include <ch.h>
-#include <hal.h>
-#include "print.h"
-#include "led.h"
-#include "host.h"
-
-#include "led_controller.h"
-
-#include "suspend.h"
-
-#include "usb_main.h"
-
-/* Infinity60 LED MAP
- - digits mean "row" and "col", i.e. 45 means C4-5 in the IS31 datasheet, matrix A
-
- 11 12 13 14 15 16 17 18 21 22 23 24 25 26 27*
- 28 31 32 33 34 35 36 37 38 41 42 43 44 45
- 46 47 48 51 52 53 54 55 56 57 58 61 62
- 63 64 65 66 67 68 71 72 73 74 75 76 77*
- 78 81 82 83 84 85 86 87
-
-*Unused in Alphabet Layout
-*/
-
-/*
- each page has 0xB4 bytes
- 0 - 0x11: LED control (on/off):
- order: CA1, CB1, CA2, CB2, .... (CA - matrix A, CB - matrix B)
- CAn controls Cn-8 .. Cn-1 (LSbit)
- 0x12 - 0x23: blink control (like "LED control")
- 0x24 - 0xB3: PWM control: byte per LED, 0xFF max on
- order same as above (CA 1st row (8bytes), CB 1st row (8bytes), ...)
-*/
-
-// Which LED should be used for CAPS LOCK indicator
-#if !defined(CAPS_LOCK_LED_ADDRESS)
-#define CAPS_LOCK_LED_ADDRESS 46
-#endif
-
-#if !defined(NUM_LOCK_LED_ADDRESS)
-#define NUM_LOCK_LED_ADDRESS 85
-#endif
-
-/* Which LED should breathe during sleep */
-#if !defined(BREATHE_LED_ADDRESS)
-#define BREATHE_LED_ADDRESS CAPS_LOCK_LED_ADDRESS
-#endif
-
-/* =================
- * ChibiOS I2C setup
- * ================= */
-static const I2CConfig i2ccfg = {
- 400000 // clock speed (Hz); 400kHz max for IS31
-};
-
-/* ==============
- * variables
- * ============== */
-// internal communication buffers
-uint8_t tx[2] __attribute__((aligned(2)));
-uint8_t rx[1] __attribute__((aligned(2)));
-
-// buffer for sending the whole page at once (used also as a temp buffer)
-uint8_t full_page[0xB4+1] = {0};
-
-// LED mask (which LEDs are present, selected by bits)
-// IC60 pcb uses only CA matrix.
-// Each byte is a control pin for 8 leds ordered 8-1
-const uint8_t all_on_leds_mask[0x12] = {
- 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF,
- 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x7F, 0x00, 0x00, 0x00
-};
-
-// array to hold brightness pwm steps
-const uint8_t pwm_levels[5] = {
- 0x00, 0x16, 0x4E, 0xA1, 0xFF
-};
-
-// array to write to pwm register
-uint8_t pwm_register_array[9] = {0};
-
-
-/* ============================
- * communication functions
- * ============================ */
-msg_t is31_select_page(uint8_t page) {
- tx[0] = IS31_COMMANDREGISTER;
- tx[1] = page;
- return i2cMasterTransmitTimeout(&I2CD1, IS31_ADDR_DEFAULT, tx, 2, NULL, 0, TIME_US2I(IS31_TIMEOUT));
-}
-
-msg_t is31_write_data(uint8_t page, uint8_t *buffer, uint8_t size) {
- is31_select_page(page);
- return i2cMasterTransmitTimeout(&I2CD1, IS31_ADDR_DEFAULT, buffer, size, NULL, 0, TIME_US2I(IS31_TIMEOUT));
-}
-
-msg_t is31_write_register(uint8_t page, uint8_t reg, uint8_t data) {
- is31_select_page(page);
- tx[0] = reg;
- tx[1] = data;
- return i2cMasterTransmitTimeout(&I2CD1, IS31_ADDR_DEFAULT, tx, 2, NULL, 0, TIME_US2I(IS31_TIMEOUT));
-}
-
-msg_t is31_read_register(uint8_t page, uint8_t reg, uint8_t *result) {
- is31_select_page(page);
-
- tx[0] = reg;
- return i2cMasterTransmitTimeout(&I2CD1, IS31_ADDR_DEFAULT, tx, 1, result, 1, TIME_US2I(IS31_TIMEOUT));
-}
-
-/* ========================
- * initialise the IS31 chip
- * ======================== */
-void is31_init(void) {
- // just to be sure that it's all zeroes
- __builtin_memset(full_page,0,0xB4+1);
- // zero function page, all registers (assuming full_page is all zeroes)
- is31_write_data(IS31_FUNCTIONREG, full_page, 0xD + 1);
- // disable hardware shutdown
- palSetPadMode(GPIOB, 16, PAL_MODE_OUTPUT_PUSHPULL);
- palSetPad(GPIOB, 16);
- chThdSleepMilliseconds(10);
- // software shutdown
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_ON);
- chThdSleepMilliseconds(10);
- // zero function page, all registers
- is31_write_data(IS31_FUNCTIONREG, full_page, 0xD + 1);
- chThdSleepMilliseconds(10);
- // software shutdown disable (i.e. turn stuff on)
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_OFF);
- chThdSleepMilliseconds(10);
- // zero all LED registers on all 8 pages
- uint8_t i;
- for(i=0; i<8; i++) {
- is31_write_data(i, full_page, 0xB4 + 1);
- chThdSleepMilliseconds(5);
- }
-}
-
-/* ==================
- * LED control thread
- * ================== */
-#define LED_MAILBOX_NUM_MSGS 5
-static msg_t led_mailbox_queue[LED_MAILBOX_NUM_MSGS];
-mailbox_t led_mailbox;
-static THD_WORKING_AREA(waLEDthread, 256);
-static THD_FUNCTION(LEDthread, arg) {
- (void)arg;
- chRegSetThreadName("LEDthread");
-
- uint8_t i;
- uint8_t control_register_word[2] = {0};//2 bytes: register address, byte to write
- uint8_t led_control_reg[0x13] = {0};//led control register start address + 0x12 bytes
-
- //persistent status variables
- uint8_t pwm_step_status, page_status, capslock_status, numlock_status;
-
- //mailbox variables
- uint8_t temp, msg_type;
- uint8_t msg_args[3];
- msg_t msg;
-
- // initialize persistent variables
- pwm_step_status = 4; //full brightness
- page_status = 0; //start frame 0 (all off/on)
- led_t led_state = host_keyboard_led_state();
- numlock_status = led_state.num_lock ? 1 : 0;
- capslock_status = led_state.caps_lock ? 1 : 0;
-
- while(true) {
- // wait for a message (asynchronous)
- // (messages are queued (up to LED_MAILBOX_NUM_MSGS) if they can't
- // be processed right away
- chMBFetchTimeout(&led_mailbox, &msg, TIME_INFINITE);
- msg_type = msg & 0xFF; //first byte is action information
- msg_args[0] = (msg >> 8) & 0xFF;
- msg_args[1] = (msg >> 16) & 0XFF;
- msg_args[2] = (msg >> 24) & 0xFF;
-
-
- switch (msg_type){
- case SET_FULL_ROW:
- //write full byte to pin address, msg_args[1] = pin #, msg_args[0] = 8 bits to write
- //writes only to currently displayed page
- write_led_byte(page_status, msg_args[1], msg_args[0]);
- break;
-
- case OFF_LED:
- //on/off/toggle single led, msg_args[0] = row/col of led, msg_args[1] = page
- set_led_bit(msg_args[1], control_register_word, msg_args[0], 0);
- break;
- case ON_LED:
- set_led_bit(msg_args[1], control_register_word, msg_args[0], 1);
- break;
- case TOGGLE_LED:
- set_led_bit(msg_args[1], control_register_word, msg_args[0], 2);
- break;
-
- case BLINK_OFF_LED:
- //on/off/toggle single led, msg_args[0] = row/col of led
- set_led_bit(msg_args[1], control_register_word, msg_args[0], 4);
- break;
- case BLINK_ON_LED:
- set_led_bit(msg_args[1], control_register_word, msg_args[0], 5);
- break;
- case BLINK_TOGGLE_LED:
- set_led_bit(msg_args[1], control_register_word, msg_args[0], 6);
- break;
-
- case TOGGLE_ALL:
- //turn on/off all leds, msg_args = unused
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_ON);
- chThdSleepMilliseconds(5);
- is31_read_register(0, 0x00, &temp);
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_OFF);
-
- led_control_reg[0] = 0;
-
- //toggle led mask based on current state (temp)
- if (temp==0 || page_status > 0) {
- __builtin_memcpy(led_control_reg+1, all_on_leds_mask, 0x12);
- } else {
- __builtin_memset(led_control_reg+1, 0, 0x12);
- }
- is31_write_data(0, led_control_reg, 0x13);
-
- if (page_status > 0) {
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_PICTDISP, 0);
-
- page_status=0;
-
- //maintain lock leds, reset to off and force recheck to blink of all leds toggled on
- numlock_status = 0;
- capslock_status = 0;
- led_set(host_keyboard_leds());
- }
- break;
-
- case TOGGLE_BACKLIGHT:
- //msg_args[0] = on/off
-
- //populate 9 byte rows to be written to each pin, first byte is register (pin) address
- if (msg_args[0] == 1) {
- __builtin_memset(pwm_register_array+1, pwm_levels[pwm_step_status], 8);
- } else {
- __builtin_memset(pwm_register_array+1, 0, 8);
- }
-
- for(i=0; i<8; i++) {
- //first byte is register address, every 0x10 9 bytes is A-matrix pwm pins
- pwm_register_array[0] = 0x24 + (i * 0x10);
- is31_write_data(0,pwm_register_array,9);
- }
- break;
-
- case DISPLAY_PAGE:
- //msg_args[0] = page to toggle on
- if (page_status != msg_args[0]) {
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_PICTDISP, msg_args[0]);
- page_status = msg_args[0];
-
- //maintain lock leds, reset to off and force recheck for new page
- numlock_status = 0;
- capslock_status = 0;
- led_set(host_keyboard_leds());
- }
- break;
-
- case RESET_PAGE:
- //led_args[0] = page to reset
- led_control_reg[0] = 0;
- __builtin_memset(led_control_reg+1, 0, 0x12);
- is31_write_data(msg_args[0], led_control_reg, 0x13);
-
- //repeat for blink register
- led_control_reg[0] = 0x12;
- is31_write_data(msg_args[0], led_control_reg, 0x13);
- break;
-
- case TOGGLE_NUM_LOCK:
- //msg_args[0] = 0 or 1, off/on
- if (numlock_status != msg_args[0]) {
- set_lock_leds(NUM_LOCK_LED_ADDRESS, msg_args[0], page_status);
- numlock_status = msg_args[0];
- }
- break;
- case TOGGLE_CAPS_LOCK:
- //msg_args[0] = 0 or 1, off/on
- if (capslock_status != msg_args[0]) {
- set_lock_leds(CAPS_LOCK_LED_ADDRESS, msg_args[0], page_status);
- capslock_status = msg_args[0];
- }
- break;
-
- case STEP_BRIGHTNESS:
- //led_args[0] = step up (1) or down (0)
- switch (msg_args[0]) {
- case 0:
- if (pwm_step_status == 0) {
- pwm_step_status = 4;
- } else {
- pwm_step_status--;
- }
- break;
-
- case 1:
- if (pwm_step_status == 4) {
- pwm_step_status = 0;
- } else {
- pwm_step_status++;
- }
- break;
- }
-
- //populate 8 byte arrays to write on each pin
- //first byte is register address, every 0x10 9 bytes are A-matrix pwm pins
- __builtin_memset(pwm_register_array+1, pwm_levels[pwm_step_status], 8);
-
- for(i=0; i<8; i++) {
- pwm_register_array[0] = 0x24 + (i * 0x10);
- is31_write_data(0,pwm_register_array,9);
- }
- break;
- }
- }
-}
-
-/* ==============================
- * led processing functions
- * ============================== */
-
-void set_led_bit (uint8_t page, uint8_t *led_control_word, uint8_t led_addr, uint8_t action) {
- //returns 2 bytes: led control register address and byte to write
- //action: 0 - off, 1 - on, 2 - toggle, 4 - blink on, 5 - blink off, 6 - toggle blink
-
- uint8_t control_reg_addr, column_bit, column_byte, temp, blink_bit;
-
- //check for valid led address
- if (led_addr < 0 || led_addr > 87 || led_addr % 10 > 8) {
- return;
- }
-
- blink_bit = action>>2;//check for blink bit
- action &= ~(1<<2); //strip blink bit
-
- //led_addr tens column is pin#, ones column is bit position in 8-bit mask
- control_reg_addr = ((led_addr / 10) % 10 - 1 ) * 0x02;// A-matrix is every other byte
- control_reg_addr += blink_bit == 1 ? 0x12 : 0x00;//if blink_bit, shift 12 bytes to blink register
-
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_ON);
- chThdSleepMilliseconds(5);
- is31_read_register(page, control_reg_addr, &temp);//maintain status of leds on this byte
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_OFF);
-
- column_bit = 1<<(led_addr % 10 - 1);
- column_byte = temp;
-
- switch(action) {
- case 0:
- column_byte &= ~column_bit;
- break;
- case 1:
- column_byte |= column_bit;
- break;
- case 2:
- column_byte ^= column_bit;
- break;
- }
-
- //return word to be written in register
- led_control_word[0] = control_reg_addr;
- led_control_word[1] = column_byte;
- is31_write_data (page, led_control_word, 0x02);
-}
-
-void write_led_byte (uint8_t page, uint8_t row, uint8_t led_byte) {
- uint8_t led_control_word[2] = {0};//register address and on/off byte
-
- led_control_word[0] = (row - 1 ) * 0x02;// A-matrix is every other byte
- led_control_word[1] = led_byte;
- is31_write_data(page, led_control_word, 0x02);
-}
-
-void write_led_page (uint8_t page, uint8_t *user_led_array, uint8_t led_count) {
- uint8_t i;
- uint8_t pin, col;
- uint8_t led_control_register[0x13] = {0};
-
- __builtin_memset(led_control_register,0,13);
-
- for(i=0;i<led_count;i++){
- //shift pin by 1 for led register 0x00 address
- pin = ((user_led_array[i] / 10) % 10 - 1 ) * 2 + 1;
- col = user_led_array[i] % 10 - 1;
- led_control_register[pin] |= 1<<(col);
- }
-
- is31_write_data(page, led_control_register, 0x13);
-}
-
-void set_lock_leds(uint8_t led_addr, uint8_t led_action, uint8_t page) {
- uint8_t temp;
- uint8_t led_control_word[2] = {0};
-
- //blink if all leds are on
- if (page == 0) {
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_ON);
- chThdSleepMilliseconds(5);
- is31_read_register(0, 0x00, &temp);
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_SHUTDOWN, IS31_REG_SHUTDOWN_OFF);
-
- if (temp == 0xFF) {
- led_action |= (1<<2); //set blink bit
- }
- }
-
- set_led_bit(page,led_control_word,led_addr,led_action);
-}
-
-/* =====================
- * hook into user keymap
- * ===================== */
-void led_controller_init(void) {
- uint8_t i;
-
- /* initialise I2C */
- /* I2C pins */
- palSetPadMode(GPIOB, 0, PAL_MODE_ALTERNATIVE_2); // PTB0/I2C0/SCL
- palSetPadMode(GPIOB, 1, PAL_MODE_ALTERNATIVE_2); // PTB1/I2C0/SDA
- /* start I2C */
- i2cStart(&I2CD1, &i2ccfg);
- // try high drive (from kiibohd)
- I2CD1.i2c->C2 |= I2Cx_C2_HDRS;
- // try glitch fixing (from kiibohd)
- I2CD1.i2c->FLT = 4;
-
- chThdSleepMilliseconds(10);
-
- /* initialise IS31 chip */
- is31_init();
-
- //set Display Option Register so all pwm intensity is controlled from page 0
- //enable blink and set blink period to 0.27s x rate
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_DISPLAYOPT, IS31_REG_DISPLAYOPT_INTENSITY_SAME + IS31_REG_DISPLAYOPT_BLINK_ENABLE + 4);
-
- /* set full pwm on page 1 */
- pwm_register_array[0] = 0;
- __builtin_memset(pwm_register_array+1, 0xFF, 8);
- for(i=0; i<8; i++) {
- pwm_register_array[0] = 0x24 + (i * 0x10);//first byte of 9 bytes must be register address
- is31_write_data(0, pwm_register_array, 9);
- chThdSleepMilliseconds(5);
- }
-
- /* enable breathing when the displayed page changes */
- // Fade-in Fade-out, time = 26ms * 2^N, N=3
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_BREATHCTRL1, (3<<4)|3);
- is31_write_register(IS31_FUNCTIONREG, IS31_REG_BREATHCTRL2, IS31_REG_BREATHCTRL2_ENABLE|3);
-
- /* more time consuming LED processing should be offloaded into
- * a thread, with asynchronous messaging. */
- chMBObjectInit(&led_mailbox, led_mailbox_queue, LED_MAILBOX_NUM_MSGS);
- chThdCreateStatic(waLEDthread, sizeof(waLEDthread), LOWPRIO, LEDthread, NULL);
-}
diff --git a/keyboards/input_club/infinity60/led_controller.h b/keyboards/input_club/infinity60/led_controller.h
deleted file mode 100644
index e4b4717646..0000000000
--- a/keyboards/input_club/infinity60/led_controller.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
-Copyright 2016 flabbergast <s3+flabbergast@sdfeu.org>
-Copyright 2017 jpetermans <tibcmhhm@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _LED_CONTROLLER_H_
-#define _LED_CONTROLLER_H_
-
-/* =========================
- * communication functions
- * ========================= */
-
-msg_t is31_write_data(uint8_t page, uint8_t *buffer, uint8_t size);
-msg_t is31_write_register(uint8_t page, uint8_t reg, uint8_t data);
-msg_t is31_read_register(uint8_t page, uint8_t reg, uint8_t *result);
-
-/* ============================
- * init functions/definitions
- * ============================*/
-
-void led_controller_init(void);
-
-#define CAPS_LOCK_LED_ADDRESS 46 //pin matrix location
-#define NUM_LOCK_LED_ADDRESS 85
-
-/* =============================
- * IS31 chip related definitions
- * ============================= */
-
-#define IS31_ADDR_DEFAULT 0x74
-
-#define IS31_REG_CONFIG 0x00
-// bits in reg
-#define IS31_REG_CONFIG_PICTUREMODE 0x00
-#define IS31_REG_CONFIG_AUTOPLAYMODE 0x08
-#define IS31_REG_CONFIG_AUDIOPLAYMODE 0x18
-// D2:D0 bits are starting frame for autoplay mode
-
-#define IS31_REG_PICTDISP 0x01 // D2:D0 frame select for picture mode
-
-#define IS31_REG_AUTOPLAYCTRL1 0x02
-// D6:D4 number of loops (000=infty)
-// D2:D0 number of frames to be used
-
-#define IS31_REG_AUTOPLAYCTRL2 0x03 // D5:D0 delay time (*11ms)
-
-#define IS31_REG_DISPLAYOPT 0x05
-#define IS31_REG_DISPLAYOPT_INTENSITY_SAME 0x20 // same intensity for all frames
-#define IS31_REG_DISPLAYOPT_BLINK_ENABLE 0x08
-// D2:D0 bits blink period time (*0.27s)
-
-#define IS31_REG_AUDIOSYNC 0x06
-#define IS31_REG_AUDIOSYNC_ENABLE 0x1
-
-#define IS31_REG_FRAMESTATE 0x07
-
-#define IS31_REG_BREATHCTRL1 0x08
-// D6:D4 fade out time (26ms*2^i)
-// D2:D0 fade in time (26ms*2^i)
-
-#define IS31_REG_BREATHCTRL2 0x09
-#define IS31_REG_BREATHCTRL2_ENABLE 0x10
-// D2:D0 extinguish time (3.5ms*2^i)
-
-#define IS31_REG_SHUTDOWN 0x0A
-#define IS31_REG_SHUTDOWN_OFF 0x1
-#define IS31_REG_SHUTDOWN_ON 0x0
-
-#define IS31_REG_AGCCTRL 0x0B
-#define IS31_REG_ADCRATE 0x0C
-
-#define IS31_COMMANDREGISTER 0xFD
-#define IS31_FUNCTIONREG 0x0B // helpfully called 'page nine'
-
-#define IS31_TIMEOUT 10000 // needs to be long enough to write a whole page
-
-/* ========================================
- * LED Thread related items
- * ========================================*/
-
-extern mailbox_t led_mailbox;
-
-void set_led_bit (uint8_t page, uint8_t *led_control_reg, uint8_t led_addr, uint8_t action);
-void set_lock_leds (uint8_t led_addr, uint8_t led_action, uint8_t page);
-void write_led_byte (uint8_t page, uint8_t row, uint8_t led_byte);
-void write_led_page (uint8_t page, uint8_t *led_array, uint8_t led_count);
-
-// constants for signaling the LED controller thread
-enum led_msg_t {
- KEY_LIGHT,
- SET_FULL_ROW,
- OFF_LED,
- ON_LED,
- TOGGLE_LED,
- BLINK_OFF_LED,
- BLINK_ON_LED,
- BLINK_TOGGLE_LED,
- TOGGLE_ALL,
- TOGGLE_BACKLIGHT,
- DISPLAY_PAGE,
- RESET_PAGE,
- TOGGLE_NUM_LOCK,
- TOGGLE_CAPS_LOCK,
- TOGGLE_BREATH,
- STEP_BRIGHTNESS
-};
-
-#endif /* _LED_CONTROLLER_H_ */
diff --git a/keyboards/input_club/k_type/config.h b/keyboards/input_club/k_type/config.h
index 2a4c7d057c..c188038a82 100644
--- a/keyboards/input_club/k_type/config.h
+++ b/keyboards/input_club/k_type/config.h
@@ -34,7 +34,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_ONESHOT
#ifdef RGB_MATRIX_ENABLE
-//#include "gpio.h"
// RGB Matrix Animation modes. Explicitly enabled
// For full list of effects, see:
// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
@@ -103,10 +102,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# define I2C2_SCL_PAL_MODE PAL_MODE_ALTERNATIVE_2
# define I2C2_SDA_PAL_MODE PAL_MODE_ALTERNATIVE_2
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_ADDR_2 0b1010000
-# define DRIVER_COUNT 2
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+# define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_GND
+# define IS31FL3733_DRIVER_COUNT 2
+# define IS31FL3733_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
# define DRIVER_1_LED_TOTAL 64
# define DRIVER_2_LED_TOTAL 55
-# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+# define RGB_MATRIX_LED_COUNT IS31FL3733_LED_COUNT
#endif
diff --git a/keyboards/input_club/k_type/i2c_master.h b/keyboards/input_club/k_type/i2c_master.h
index d4e9d6878f..db4f12e43c 100644
--- a/keyboards/input_club/k_type/i2c_master.h
+++ b/keyboards/input_club/k_type/i2c_master.h
@@ -26,6 +26,7 @@
#include <ch.h>
#include <hal.h>
+#include "gpio.h"
#ifndef I2C_COUNT
# define I2C_COUNT 1
diff --git a/keyboards/input_club/k_type/is31fl3733-dual.c b/keyboards/input_club/k_type/is31fl3733-dual.c
index 2dec2b0a26..e471cf0b71 100644
--- a/keyboards/input_club/k_type/is31fl3733-dual.c
+++ b/keyboards/input_club/k_type/is31fl3733-dual.c
@@ -16,46 +16,48 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifdef RGB_MATRIX_ENABLE
-
#include "is31fl3733-dual.h"
#include "i2c_master.h"
#include "wait.h"
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 00 <-> GND
-// 01 <-> SCL
-// 10 <-> SDA
-// 11 <-> VCC
-// ADDR1 represents A1:A0 of the 7-bit address.
-// ADDR2 represents A3:A2 of the 7-bit address.
-// The result is: 0b101(ADDR2)(ADDR1)
-#define ISSI_ADDR_DEFAULT 0x50
-
-#define ISSI_COMMANDREGISTER 0xFD
-#define ISSI_COMMANDREGISTER_WRITELOCK 0xFE
-#define ISSI_INTERRUPTMASKREGISTER 0xF0
-#define ISSI_INTERRUPTSTATUSREGISTER 0xF1
-
-#define ISSI_PAGE_LEDCONTROL 0x00 // PG0
-#define ISSI_PAGE_PWM 0x01 // PG1
-#define ISSI_PAGE_AUTOBREATH 0x02 // PG2
-#define ISSI_PAGE_FUNCTION 0x03 // PG3
-
-#define ISSI_REG_CONFIGURATION 0x00 // PG3
-#define ISSI_REG_GLOBALCURRENT 0x01 // PG3
-#define ISSI_REG_RESET 0x11 // PG3
-#define ISSI_REG_SWPULLUP 0x0F // PG3
-#define ISSI_REG_CSPULLUP 0x10 // PG3
-
-#ifndef ISSI_TIMEOUT
-# define ISSI_TIMEOUT 5000
+#define IS31FL3733_PWM_REGISTER_COUNT 192
+#define IS31FL3733_LED_CONTROL_REGISTER_COUNT 24
+
+#ifndef IS31FL3733_I2C_TIMEOUT
+# define IS31FL3733_I2C_TIMEOUT 100
+#endif
+
+#ifndef IS31FL3733_I2C_PERSISTENCE
+# define IS31FL3733_I2C_PERSISTENCE 0
+#endif
+
+#ifndef IS31FL3733_PWM_FREQUENCY
+# define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_8K4_HZ // PFS - IS31FL3733B only
+#endif
+
+#ifndef IS31FL3733_SW_PULLUP
+# define IS31FL3733_SW_PULLUP IS31FL3733_PUR_0_OHM
#endif
-#ifndef ISSI_PERSISTENCE
-# define ISSI_PERSISTENCE 0
+#ifndef IS31FL3733_CS_PULLDOWN
+# define IS31FL3733_CS_PULLDOWN IS31FL3733_PDR_0_OHM
+#endif
+
+#ifndef IS31FL3733_GLOBAL_CURRENT
+# define IS31FL3733_GLOBAL_CURRENT 0xFF
+#endif
+
+#ifndef IS31FL3733_SYNC_1
+# define IS31FL3733_SYNC_1 IS31FL3733_SYNC_NONE
+#endif
+#ifndef IS31FL3733_SYNC_2
+# define IS31FL3733_SYNC_2 IS31FL3733_SYNC_NONE
+#endif
+#ifndef IS31FL3733_SYNC_3
+# define IS31FL3733_SYNC_3 IS31FL3733_SYNC_NONE
+#endif
+#ifndef IS31FL3733_SYNC_4
+# define IS31FL3733_SYNC_4 IS31FL3733_SYNC_NONE
#endif
// Transfer buffer for TWITransmitData()
@@ -67,25 +69,25 @@ uint8_t g_twi_transfer_buffer[20];
// We could optimize this and take out the unused registers from these
// buffers and the transfers in is31fl3733_write_pwm_buffer() but it's
// probably not worth the extra complexity.
-uint8_t g_pwm_buffer[DRIVER_COUNT][192];
-bool g_pwm_buffer_update_required[DRIVER_COUNT] = {false};
+uint8_t g_pwm_buffer[IS31FL3733_DRIVER_COUNT][IS31FL3733_PWM_REGISTER_COUNT];
+bool g_pwm_buffer_update_required[IS31FL3733_DRIVER_COUNT] = {false};
-uint8_t g_led_control_registers[DRIVER_COUNT][24] = {{0}, {0}};
-bool g_led_control_registers_update_required[DRIVER_COUNT] = {false};
+uint8_t g_led_control_registers[IS31FL3733_DRIVER_COUNT][IS31FL3733_LED_CONTROL_REGISTER_COUNT] = {0};
+bool g_led_control_registers_update_required[IS31FL3733_DRIVER_COUNT] = {false};
bool is31fl3733_write_register(uint8_t index, uint8_t addr, uint8_t reg, uint8_t data) {
// If the transaction fails function returns false.
g_twi_transfer_buffer[0] = reg;
g_twi_transfer_buffer[1] = data;
-#if ISSI_PERSISTENCE > 0
- for (uint8_t i = 0; i < ISSI_PERSISTENCE; i++) {
- if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 2, TIME_US2I(ISSI_TIMEOUT)) != 0) {
+#if IS31FL3733_I2C_PERSISTENCE > 0
+ for (uint8_t i = 0; i < IS31FL3733_I2C_PERSISTENCE; i++) {
+ if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 2, IS31FL3733_I2C_TIMEOUT) != 0) {
return false;
}
}
#else
- if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 2, TIME_US2I(ISSI_TIMEOUT)) != 0) {
+ if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 2, IS31FL3733_I2C_TIMEOUT) != 0) {
return false;
}
#endif
@@ -99,7 +101,7 @@ bool is31fl3733_write_pwm_buffer(uint8_t index, uint8_t addr, uint8_t *pwm_buffe
// g_twi_transfer_buffer[] is 20 bytes
// Iterate over the pwm_buffer contents at 16 byte intervals.
- for (int i = 0; i < 192; i += 16) {
+ for (int i = 0; i < IS31FL3733_PWM_REGISTER_COUNT; i += 16) {
g_twi_transfer_buffer[0] = i;
// Copy the data from i to i+15.
// Device will auto-increment register for data after the first byte
@@ -108,14 +110,14 @@ bool is31fl3733_write_pwm_buffer(uint8_t index, uint8_t addr, uint8_t *pwm_buffe
g_twi_transfer_buffer[1 + j] = pwm_buffer[i + j];
}
-#if ISSI_PERSISTENCE > 0
- for (uint8_t i = 0; i < ISSI_PERSISTENCE; i++) {
- if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 17, TIME_US2I(ISSI_TIMEOUT)) != 0) {
+#if IS31FL3733_I2C_PERSISTENCE > 0
+ for (uint8_t i = 0; i < IS31FL3733_I2C_PERSISTENCE; i++) {
+ if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 17, IS31FL3733_I2C_TIMEOUT) != 0) {
return false;
}
}
#else
- if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 17, TIME_US2I(ISSI_TIMEOUT)) != 0) {
+ if (i2c_transmit(index, addr << 1, g_twi_transfer_buffer, 17, IS31FL3733_I2C_TIMEOUT) != 0) {
return false;
}
#endif
@@ -123,6 +125,24 @@ bool is31fl3733_write_pwm_buffer(uint8_t index, uint8_t addr, uint8_t *pwm_buffe
return true;
}
+void is31fl3733_init_drivers(void) {
+ i2c_init(&I2CD1, I2C1_SCL_PIN, I2C1_SDA_PIN);
+ is31fl3733_init(0, IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_1);
+# ifdef USE_I2C2
+ i2c_init(&I2CD2, I2C2_SCL_PIN, I2C2_SDA_PIN);
+ is31fl3733_init(1, IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_2);
+# endif
+
+ for (int i = 0; i < IS31FL3733_LED_COUNT; i++) {
+ is31fl3733_set_led_control_register(i, true, true, true);
+ }
+
+ is31fl3733_update_led_control_registers(IS31FL3733_I2C_ADDRESS_1, 0);
+# ifdef USE_I2C2
+ is31fl3733_update_led_control_registers(IS31FL3733_I2C_ADDRESS_2, 1);
+# endif
+}
+
void is31fl3733_init(uint8_t bus, uint8_t addr, uint8_t sync) {
// In order to avoid the LEDs being driven with garbage data
// in the LED driver's PWM registers, shutdown is enabled last.
@@ -131,38 +151,52 @@ void is31fl3733_init(uint8_t bus, uint8_t addr, uint8_t sync) {
// Sync is passed so set it according to the datasheet.
// Unlock the command register.
- is31fl3733_write_register(bus, addr, ISSI_COMMANDREGISTER_WRITELOCK, 0xC5);
+ is31fl3733_write_register(bus, addr, IS31FL3733_REG_COMMAND_WRITE_LOCK, IS31FL3733_COMMAND_WRITE_LOCK_MAGIC);
+
// Select PG0
- is31fl3733_write_register(bus, addr, ISSI_COMMANDREGISTER, ISSI_PAGE_LEDCONTROL);
+ is31fl3733_write_register(bus, addr, IS31FL3733_REG_COMMAND, IS31FL3733_COMMAND_LED_CONTROL);
// Turn off all LEDs.
- for (int i = 0x00; i <= 0x17; i++) {
+ for (int i = 0; i < IS31FL3733_LED_CONTROL_REGISTER_COUNT; i++) {
is31fl3733_write_register(bus, addr, i, 0x00);
}
+
// Unlock the command register.
- is31fl3733_write_register(bus, addr, ISSI_COMMANDREGISTER_WRITELOCK, 0xC5);
+ is31fl3733_write_register(bus, addr, IS31FL3733_REG_COMMAND_WRITE_LOCK, IS31FL3733_COMMAND_WRITE_LOCK_MAGIC);
+
// Select PG1
- is31fl3733_write_register(bus, addr, ISSI_COMMANDREGISTER, ISSI_PAGE_PWM);
+ is31fl3733_write_register(bus, addr, IS31FL3733_REG_COMMAND, IS31FL3733_COMMAND_PWM);
// Set PWM on all LEDs to 0
// No need to setup Breath registers to PWM as that is the default.
- for (int i = 0x00; i <= 0xBF; i++) {
+ for (int i = 0; i < IS31FL3733_PWM_REGISTER_COUNT; i++) {
is31fl3733_write_register(bus, addr, i, 0x00);
}
+
// Unlock the command register.
- is31fl3733_write_register(bus, addr, ISSI_COMMANDREGISTER_WRITELOCK, 0xC5);
+ is31fl3733_write_register(bus, addr, IS31FL3733_REG_COMMAND_WRITE_LOCK, IS31FL3733_COMMAND_WRITE_LOCK_MAGIC);
+
// Select PG3
- is31fl3733_write_register(bus, addr, ISSI_COMMANDREGISTER, ISSI_PAGE_FUNCTION);
+ is31fl3733_write_register(bus, addr, IS31FL3733_REG_COMMAND, IS31FL3733_COMMAND_FUNCTION);
+ // Set de-ghost pull-up resistors (SWx)
+ is31fl3733_write_register(bus, addr, IS31FL3733_FUNCTION_REG_SW_PULLUP, IS31FL3733_SW_PULLUP);
+ // Set de-ghost pull-down resistors (CSx)
+ is31fl3733_write_register(bus, addr, IS31FL3733_FUNCTION_REG_CS_PULLDOWN, IS31FL3733_CS_PULLDOWN);
// Set global current to maximum.
- is31fl3733_write_register(bus, addr, ISSI_REG_GLOBALCURRENT, 0xFF);
+ is31fl3733_write_register(bus, addr, IS31FL3733_FUNCTION_REG_GLOBAL_CURRENT, IS31FL3733_GLOBAL_CURRENT);
// Disable software shutdown.
- is31fl3733_write_register(bus, addr, ISSI_REG_CONFIGURATION, (sync << 6) | 0x01);
+ is31fl3733_write_register(bus, addr, IS31FL3733_FUNCTION_REG_CONFIGURATION, ((sync & 0b11) << 6) | ((IS31FL3733_PWM_FREQUENCY & 0b111) << 3) | 0x01);
+
// Wait 10ms to ensure the device has woken up.
wait_ms(10);
}
void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
- if (index >= 0 && index < RGB_MATRIX_LED_COUNT) {
- is31_led led = g_is31_leds[index];
+ is31fl3733_led_t led;
+ if (index >= 0 && index < IS31FL3733_LED_COUNT) {
+ memcpy_P(&led, (&g_is31fl3733_leds[index]), sizeof(led));
+ if (g_pwm_buffer[led.driver][led.r] == red && g_pwm_buffer[led.driver][led.g] == green && g_pwm_buffer[led.driver][led.b] == blue) {
+ return;
+ }
g_pwm_buffer[led.driver][led.r] = red;
g_pwm_buffer[led.driver][led.g] = green;
g_pwm_buffer[led.driver][led.b] = blue;
@@ -171,13 +205,14 @@ void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
}
void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue) {
- for (int i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
+ for (int i = 0; i < IS31FL3733_LED_COUNT; i++) {
is31fl3733_set_color(i, red, green, blue);
}
}
void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue) {
- is31_led led = g_is31_leds[index];
+ is31fl3733_led_t led;
+ memcpy_P(&led, (&g_is31fl3733_leds[index]), sizeof(led));
uint8_t control_register_r = led.r / 8;
uint8_t control_register_g = led.g / 8;
@@ -208,8 +243,8 @@ void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bo
void is31fl3733_update_pwm_buffers(uint8_t addr, uint8_t index) {
if (g_pwm_buffer_update_required[index]) {
// Firstly we need to unlock the command register and select PG1.
- is31fl3733_write_register(index, addr, ISSI_COMMANDREGISTER_WRITELOCK, 0xC5);
- is31fl3733_write_register(index, addr, ISSI_COMMANDREGISTER, ISSI_PAGE_PWM);
+ is31fl3733_write_register(index, addr, IS31FL3733_REG_COMMAND_WRITE_LOCK, IS31FL3733_COMMAND_WRITE_LOCK_MAGIC);
+ is31fl3733_write_register(index, addr, IS31FL3733_REG_COMMAND, IS31FL3733_COMMAND_PWM);
// If any of the transactions fail we risk writing dirty PG0,
// refresh page 0 just in case.
@@ -223,14 +258,18 @@ void is31fl3733_update_pwm_buffers(uint8_t addr, uint8_t index) {
void is31fl3733_update_led_control_registers(uint8_t addr, uint8_t index) {
if (g_led_control_registers_update_required[index]) {
// Firstly we need to unlock the command register and select PG0
- is31fl3733_write_register(index, addr, ISSI_COMMANDREGISTER_WRITELOCK, 0xC5);
- is31fl3733_write_register(index, addr, ISSI_COMMANDREGISTER, ISSI_PAGE_LEDCONTROL);
- for (int i = 0; i < 24; i++) {
+ is31fl3733_write_register(index, addr, IS31FL3733_REG_COMMAND_WRITE_LOCK, IS31FL3733_COMMAND_WRITE_LOCK_MAGIC);
+ is31fl3733_write_register(index, addr, IS31FL3733_REG_COMMAND, IS31FL3733_COMMAND_LED_CONTROL);
+ for (int i = 0; i < IS31FL3733_LED_CONTROL_REGISTER_COUNT; i++) {
is31fl3733_write_register(index, addr, i, g_led_control_registers[index][i]);
}
}
g_led_control_registers_update_required[index] = false;
}
-
-#endif
+void is31fl3733_flush(void) {
+ is31fl3733_update_pwm_buffers(IS31FL3733_I2C_ADDRESS_1, 0);
+# ifdef USE_I2C2
+ is31fl3733_update_pwm_buffers(IS31FL3733_I2C_ADDRESS_2, 1);
+# endif
+}
diff --git a/keyboards/input_club/k_type/is31fl3733-dual.h b/keyboards/input_club/k_type/is31fl3733-dual.h
index 1becefbf93..2f7d58f7e7 100644
--- a/keyboards/input_club/k_type/is31fl3733-dual.h
+++ b/keyboards/input_club/k_type/is31fl3733-dual.h
@@ -22,15 +22,52 @@
#include <stdbool.h>
#include "progmem.h"
-typedef struct is31_led {
+#define IS31FL3733_REG_INTERRUPT_MASK 0xF0
+#define IS31FL3733_REG_INTERRUPT_STATUS 0xF1
+
+#define IS31FL3733_REG_COMMAND 0xFD
+
+#define IS31FL3733_COMMAND_LED_CONTROL 0x00
+#define IS31FL3733_COMMAND_PWM 0x01
+#define IS31FL3733_COMMAND_AUTO_BREATH 0x02
+#define IS31FL3733_COMMAND_FUNCTION 0x03
+
+#define IS31FL3733_FUNCTION_REG_CONFIGURATION 0x00
+#define IS31FL3733_FUNCTION_REG_GLOBAL_CURRENT 0x01
+#define IS31FL3733_FUNCTION_REG_SW_PULLUP 0x0F
+#define IS31FL3733_FUNCTION_REG_CS_PULLDOWN 0x10
+#define IS31FL3733_FUNCTION_REG_RESET 0x11
+
+#define IS31FL3733_REG_COMMAND_WRITE_LOCK 0xFE
+#define IS31FL3733_COMMAND_WRITE_LOCK_MAGIC 0xC5
+
+#define IS31FL3733_I2C_ADDRESS_GND_GND 0x50
+#define IS31FL3733_I2C_ADDRESS_GND_SCL 0x51
+#define IS31FL3733_I2C_ADDRESS_GND_SDA 0x52
+#define IS31FL3733_I2C_ADDRESS_GND_VCC 0x53
+#define IS31FL3733_I2C_ADDRESS_SCL_GND 0x54
+#define IS31FL3733_I2C_ADDRESS_SCL_SCL 0x55
+#define IS31FL3733_I2C_ADDRESS_SCL_SDA 0x56
+#define IS31FL3733_I2C_ADDRESS_SCL_VCC 0x57
+#define IS31FL3733_I2C_ADDRESS_SDA_GND 0x58
+#define IS31FL3733_I2C_ADDRESS_SDA_SCL 0x59
+#define IS31FL3733_I2C_ADDRESS_SDA_SDA 0x5A
+#define IS31FL3733_I2C_ADDRESS_SDA_VCC 0x5B
+#define IS31FL3733_I2C_ADDRESS_VCC_GND 0x5C
+#define IS31FL3733_I2C_ADDRESS_VCC_SCL 0x5D
+#define IS31FL3733_I2C_ADDRESS_VCC_SDA 0x5E
+#define IS31FL3733_I2C_ADDRESS_VCC_VCC 0x5F
+
+typedef struct is31fl3733_led_t {
uint8_t driver : 2;
uint8_t r;
uint8_t g;
uint8_t b;
-} __attribute__((packed)) is31_led;
+} __attribute__((packed)) is31fl3733_led_t;
-extern const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT];
+extern const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT];
+void is31fl3733_init_drivers(void);
void is31fl3733_init(uint8_t bus, uint8_t addr, uint8_t sync);
bool is31fl3733_write_register(uint8_t index, uint8_t addr, uint8_t reg, uint8_t data);
bool is31fl3733_write_pwm_buffer(uint8_t index, uint8_t addr, uint8_t *pwm_buffer);
@@ -47,6 +84,36 @@ void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bo
void is31fl3733_update_pwm_buffers(uint8_t addr, uint8_t index); // index is the driver index
void is31fl3733_update_led_control_registers(uint8_t addr, uint8_t index);
+void is31fl3733_flush(void);
+
+#define IS31FL3733_PDR_0_OHM 0b000 // No pull-down resistor
+#define IS31FL3733_PDR_0K5_OHM 0b001 // 0.5 kOhm resistor
+#define IS31FL3733_PDR_1K_OHM 0b010 // 1 kOhm resistor
+#define IS31FL3733_PDR_2K_OHM 0b011 // 2 kOhm resistor
+#define IS31FL3733_PDR_4K_OHM 0b100 // 4 kOhm resistor
+#define IS31FL3733_PDR_8K_OHM 0b101 // 8 kOhm resistor
+#define IS31FL3733_PDR_16K_OHM 0b110 // 16 kOhm resistor
+#define IS31FL3733_PDR_32K_OHM 0b111 // 32 kOhm resistor
+
+#define IS31FL3733_PUR_0_OHM 0b000 // No pull-up resistor
+#define IS31FL3733_PUR_0K5_OHM 0b001 // 0.5 kOhm resistor
+#define IS31FL3733_PUR_1K_OHM 0b010 // 1 kOhm resistor
+#define IS31FL3733_PUR_2K_OHM 0b011 // 2 kOhm resistor
+#define IS31FL3733_PUR_4K_OHM 0b100 // 4 kOhm resistor
+#define IS31FL3733_PUR_8K_OHM 0b101 // 8 kOhm resistor
+#define IS31FL3733_PUR_16K_OHM 0b110 // 16 kOhm resistor
+#define IS31FL3733_PUR_32K_OHM 0b111 // 32 kOhm resistor
+
+#define IS31FL3733_PWM_FREQUENCY_8K4_HZ 0b000
+#define IS31FL3733_PWM_FREQUENCY_4K2_HZ 0b001
+#define IS31FL3733_PWM_FREQUENCY_26K7_HZ 0b010
+#define IS31FL3733_PWM_FREQUENCY_2K1_HZ 0b011
+#define IS31FL3733_PWM_FREQUENCY_1K05_HZ 0b100
+
+#define IS31FL3733_SYNC_NONE 0b00
+#define IS31FL3733_SYNC_MASTER 0b01
+#define IS31FL3733_SYNC_SLAVE 0b10
+
#define A_1 0x00
#define A_2 0x01
#define A_3 0x02
diff --git a/keyboards/input_club/k_type/k_type-rgbdriver.c b/keyboards/input_club/k_type/k_type-rgbdriver.c
index dc5d4abd67..e4d2d2d04b 100644
--- a/keyboards/input_club/k_type/k_type-rgbdriver.c
+++ b/keyboards/input_club/k_type/k_type-rgbdriver.c
@@ -15,42 +15,13 @@
*/
#ifdef RGB_MATRIX_ENABLE
-
-#include "rgb_matrix.h"
-#include "i2c_master.h"
-#include "is31fl3733-dual.h"
-#include "gpio.h"
-
-static void init(void) {
- i2c_init(&I2CD1, I2C1_SCL_PIN, I2C1_SDA_PIN);
- is31fl3733_init(0, DRIVER_ADDR_1, 0);
-# ifdef USE_I2C2
- i2c_init(&I2CD2, I2C2_SCL_PIN, I2C2_SDA_PIN);
- is31fl3733_init(1, DRIVER_ADDR_2, 0);
-# endif
- for (int index = 0; index < RGB_MATRIX_LED_COUNT; index++) {
- bool enabled = true;
- // This only caches it for later
- is31fl3733_set_led_control_register(index, enabled, enabled, enabled);
- }
- is31fl3733_update_led_control_registers(DRIVER_ADDR_1, 0);
-# ifdef USE_I2C2
- is31fl3733_update_led_control_registers(DRIVER_ADDR_2, 1);
-# endif
-}
-
-static void flush(void) {
- is31fl3733_update_pwm_buffers(DRIVER_ADDR_1, 0);
-# ifdef USE_I2C2
- is31fl3733_update_pwm_buffers(DRIVER_ADDR_2, 1);
-# endif
-}
+# include "rgb_matrix.h"
+# include "is31fl3733-dual.h"
const rgb_matrix_driver_t rgb_matrix_driver = {
- .init = init,
- .flush = flush,
+ .init = is31fl3733_init_drivers,
+ .flush = is31fl3733_flush,
.set_color = is31fl3733_set_color,
.set_color_all = is31fl3733_set_color_all,
};
-
#endif
diff --git a/keyboards/input_club/k_type/k_type.c b/keyboards/input_club/k_type/k_type.c
index 23a3895408..e97007fc70 100644
--- a/keyboards/input_club/k_type/k_type.c
+++ b/keyboards/input_club/k_type/k_type.c
@@ -18,11 +18,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
+# include "is31fl3733-dual.h"
-#include "is31fl3733-dual.h"
-
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
{ 0, B_1, A_1, C_1 },
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
@@ -202,15 +200,12 @@ led_config_t g_led_config = {
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
}
};
-#endif
-
void keyboard_pre_init_kb(void) {
-#ifdef RGB_MATRIX_ENABLE
// Turn on LED controller
setPinOutput(B16);
writePinHigh(B16);
-#endif
+
keyboard_pre_init_user();
}
@@ -218,17 +213,13 @@ void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
-#ifdef RGB_MATRIX_ENABLE
/*
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
*/
-# if !defined(RGB_MATRIX_DEFAULT_SPD)
-# define RGB_MATRIX_DEFAULT_SPD UINT8_MAX / 2
-# endif
rgb_matrix_set_speed(RGB_MATRIX_DEFAULT_SPD),
rgb_matrix_set_flags(LED_FLAG_ALL);
-#endif
matrix_init_user();
}
+#endif
diff --git a/keyboards/input_club/k_type/post_rules.mk b/keyboards/input_club/k_type/post_rules.mk
new file mode 100644
index 0000000000..ba750e2624
--- /dev/null
+++ b/keyboards/input_club/k_type/post_rules.mk
@@ -0,0 +1,5 @@
+ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes)
+ # Additional files for RGB lighting
+ SRC += k_type-rgbdriver.c is31fl3733-dual.c
+ QUANTUM_LIB_SRC += i2c_master.c
+endif
diff --git a/keyboards/input_club/k_type/rules.mk b/keyboards/input_club/k_type/rules.mk
index d7776bb755..684de50562 100644
--- a/keyboards/input_club/k_type/rules.mk
+++ b/keyboards/input_club/k_type/rules.mk
@@ -13,8 +13,3 @@ AUDIO_ENABLE = no # Audio output
# RGB options
RGB_MATRIX_ENABLE = no
-
-# Additional files for RGB lighting
-SRC += k_type-rgbdriver.c
-QUANTUM_LIB_SRC += i2c_master.c is31fl3733-dual.c
-
diff --git a/keyboards/input_club/whitefox/board_is31fl3731c.h b/keyboards/input_club/whitefox/board_is31fl3731c.h
deleted file mode 100644
index 238d30cb44..0000000000
--- a/keyboards/input_club/whitefox/board_is31fl3731c.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
-Copyright 2016 Fred Sundvik <fsundvik@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _GDISP_LLD_BOARD_H
-#define _GDISP_LLD_BOARD_H
-
-static const I2CConfig i2ccfg = {
- 400000 // clock speed (Hz); 400kHz max for IS31
-};
-
-static const uint8_t led_mask[] = {
- 0xFF, 0x00, /* C1-1 -> C1-16 */
- 0xFF, 0x00, /* C2-1 -> C2-16 */
- 0xFF, 0x00, /* C3-1 -> C3-16 */
- 0xFF, 0x00, /* C4-1 -> C4-16 */
- 0xFF, 0x00, /* C5-1 -> C5-16 */
- 0xFF, 0x00, /* C6-1 -> C6-16 */
- 0xFF, 0x00, /* C7-1 -> C7-16 */
- 0xFF, 0x00, /* C8-1 -> C8-16 */
- 0xFF, 0x00, /* C9-1 -> C9-16 */
-};
-
-// The address of the LED
-#define LA(c, r) (c + r * 16 )
-// Need to be an address that is not mapped, but inside the range of the controller matrix
-#define NA LA(8, 8)
-
-// The numbers in the comments are the led numbers DXX on the PCB
-// The mapping is taken from the schematic of left hand side
-static const uint8_t led_mapping[GDISP_SCREEN_HEIGHT][GDISP_SCREEN_WIDTH] = {
-// 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
- { LA(0, 0), LA(1, 0), LA(2, 0), LA(3, 0), LA(4, 0), LA(5, 0), LA(6, 0), LA(7, 0), LA(0, 1), LA(1, 1), LA(2, 1), LA(3, 1), LA(4, 1), LA(5, 1), LA(6, 1), LA(7, 1)},
-// 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
- { LA(0, 2), LA(1, 2), LA(2, 2), LA(3, 2), LA(4, 2), LA(5, 2), LA(6, 2), LA(7, 2), LA(0, 3), LA(1, 3), NA, LA(2, 3), LA(3, 3), LA(4, 3), LA(5, 3), LA(6, 3)},
-// 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
- { LA(7, 3), LA(0, 4), LA(1, 4), LA(2, 4), LA(3, 4), LA(4, 4), LA(5, 4), LA(6, 4), LA(7, 4), LA(0, 5), NA, LA(1, 5), LA(2, 5), LA(3, 5), LA(4, 5), LA(5, 5)},
-// 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
- { LA(6, 5), LA(7, 5), LA(0, 6), LA(1, 6), LA(2, 6), LA(3, 6), LA(4, 6), LA(5, 6), LA(6, 6), LA(7, 6), NA, LA(0, 7), LA(1, 7), LA(2, 7), LA(3, 7), LA(4, 7)},
-// 62 63 64 65 66 67 68 69 70 71
- { LA(5, 7), LA(6, 7), LA(7, 7), NA, NA, NA, LA(0, 8), NA, NA, NA, LA(1, 8), LA(2, 8), LA(3, 8), LA(4, 8), LA(5, 8), LA(6, 8)},
-};
-
-
-#define IS31_ADDR_DEFAULT 0x74 // AD connected to GND
-#define IS31_TIMEOUT 5000
-
-static GFXINLINE void init_board(GDisplay *g) {
- (void) g;
- /* I2C pins */
- palSetPadMode(GPIOB, 0, PAL_MODE_ALTERNATIVE_2); // PTB0/I2C0/SCL
- palSetPadMode(GPIOB, 1, PAL_MODE_ALTERNATIVE_2); // PTB1/I2C0/SDA
- palSetPadMode(GPIOB, 16, PAL_MODE_OUTPUT_PUSHPULL);
- palClearPad(GPIOB, 16);
- /* start I2C */
- i2cStart(&I2CD1, &i2ccfg);
- // try high drive (from kiibohd)
- I2CD1.i2c->C2 |= I2Cx_C2_HDRS;
- // try glitch fixing (from kiibohd)
- I2CD1.i2c->FLT = 4;
-}
-
-static GFXINLINE void post_init_board(GDisplay *g) {
- (void) g;
-}
-
-static GFXINLINE const uint8_t* get_led_mask(GDisplay* g) {
- (void) g;
- return led_mask;
-}
-
-static GFXINLINE uint8_t get_led_address(GDisplay* g, uint16_t x, uint16_t y)
-{
- (void) g;
- return led_mapping[y][x];
-}
-
-static GFXINLINE void set_hardware_shutdown(GDisplay* g, bool shutdown) {
- (void) g;
- if(!shutdown) {
- palSetPad(GPIOB, 16);
- }
- else {
- palClearPad(GPIOB, 16);
- }
-}
-
-static GFXINLINE void write_data(GDisplay *g, uint8_t* data, uint16_t length) {
- (void) g;
- i2cMasterTransmitTimeout(&I2CD1, IS31_ADDR_DEFAULT, data, length, 0, 0, TIME_US2I(IS31_TIMEOUT));
-}
-
-#endif /* _GDISP_LLD_BOARD_H */
diff --git a/keyboards/input_club/whitefox/config.h b/keyboards/input_club/whitefox/config.h
index 067b7f4e59..2d6affe84a 100644
--- a/keyboards/input_club/whitefox/config.h
+++ b/keyboards/input_club/whitefox/config.h
@@ -21,8 +21,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LED_BRIGHTNESS_HI 255
/* LED matrix driver */
-#define LED_DRIVER_ADDR_1 0x74
-#define LED_DRIVER_COUNT 1
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define LED_MATRIX_LED_COUNT 71
#define LED_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/input_club/whitefox/keymaps/billypython/config.h b/keyboards/input_club/whitefox/keymaps/billypython/config.h
deleted file mode 100644
index 4b511eb848..0000000000
--- a/keyboards/input_club/whitefox/keymaps/billypython/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define LAYER_FN
diff --git a/keyboards/input_club/whitefox/keymaps/billypython/keymap.c b/keyboards/input_club/whitefox/keymaps/billypython/keymap.c
deleted file mode 100644
index 25b8a8572b..0000000000
--- a/keyboards/input_club/whitefox/keymaps/billypython/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "billypython.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │PSc│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │Del│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │PgU│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ LShift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │SftCtl│ ↑ │PgD│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │LCtl│LGui│LAlt│ Space │RAlt│FnLk│ │ ← │ ↓ │ → │
- * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
- */
- [L_BASE] = LAYOUT_truefox(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_PSCR,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSF_RCT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, FN_FNLK, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Function layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Num│Scr│Pau│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │PgU│ ↑ │PgD│Ply│Prv│Nxt│Clear│Ins│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │M← │M↓ │M→ │MW↑│ │Hom│ ← │ ↓ │ → │End│ │ │Top│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │MA0│MA2│MW←│MW→│ │ │ │VoD│VoU│Mut│ App │PgU│Btm│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ MW↓ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
- */
- [L_FN] = LAYOUT_truefox(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUM, KC_SCRL, KC_PAUS,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, KC_PGUP, KC_UP, KC_PGDN, KC_MPLY, KC_MPRV, KC_MNXT, CLEAR, KC_INS,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______, _______, TOP,
- _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_APP, KC_PGUP, BOTTOM,
- _______, _______, _______, KC_WH_D, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
-};
diff --git a/keyboards/input_club/whitefox/keymaps/billypython/rules.mk b/keyboards/input_club/whitefox/keymaps/billypython/rules.mk
deleted file mode 100644
index 4bb1fdfaf7..0000000000
--- a/keyboards/input_club/whitefox/keymaps/billypython/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-BACKLIGHT_ENABLE = no
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-VISUALIZER_ENABLE = no
diff --git a/keyboards/input_club/whitefox/keymaps/dhertz/keymap.c b/keyboards/input_club/whitefox/keymaps/dhertz/keymap.c
deleted file mode 100644
index 57338a43d1..0000000000
--- a/keyboards/input_club/whitefox/keymaps/dhertz/keymap.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-Copyright 2015 Jun Wako <wakojun@gmail.com>
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include QMK_KEYBOARD_H
-#include "dhertz.h"
-
-const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0: Default Layer
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|Del|
- * |---------------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter|PgU|
- * |------------------------------------------------------` |---|
- * |SrCtl | A| S| D| F| G| H| J| K| L| ;| '| \| |PgD|
- * |---------------------------------------------------------------|
- * |Shif| #| Z| X| C| V| B| N| M| ,| .| /|Shift |Up |Hom|
- * |---------------------------------------------------------------|
- * |NcCtl| Alt| CTab| LyrSpc |CGv|Iso|CSL|Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [0] = LAYOUT_iso(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC, KC_PGUP,
- SRCH_CTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS, KC_ENT, KC_PGDN,
- KC_LSFT,HSH_TLD,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_HOME,
- NC_CTL, KC_LALT,CMD_TAB_CMD, LYR_SPC, CMD_GRV_CMD,ISO_COUNTRY_CODE,CMD_SFT_L, KC_LEFT,KC_DOWN,KC_RGHT
- ),
- /* Layer 1: HHKB mode (Space)
- * ,---------------------------------------------------------------.
- * | §| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Backsp|Ins|
- * |---------------------------------------------------------------|
- * |Caps | | | | | | | |Psc|Slk|Pus| Up| | |Del|
- * |------------------------------------------------------` |---|
- * | |VoD|VoU|Mut| | | |Bsp|Del|CSL|Lef|Rig| `| |PgU|
- * |---------------------------------------------------------------|
- * | | `| | |CAC| | | | | | |Dow| |PgU|PgD|
- * |---------------------------------------------------------------|
- * | | | | | | | |Hom|PgD|End|
- * `---------------------------------------------------------------'
- */
- [1] = LAYOUT_iso(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSPC, KC_INS,
- KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,BL_UP, KC_TRNS,KC_TRNS,KC_PSCR,KC_SCRL,KC_TRNS,KC_PAUS, KC_UP, KC_DEL,
- KC_TRNS,KC_VOLD,KC_VOLU,KC_MUTE,KC_TRNS,BL_TOGG,KC_TRNS,KC_BSPC,KC_DEL, CMD_SFT_L,KC_LEFT,KC_RGHT,KC_NUBS, KC_PENT,KC_PGUP,
- KC_TRNS,KC_NUBS,KC_TRNS,KC_TRNS,CMD_ALT_C, BL_DOWN,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_DOWN,KC_TRNS,KC_TRNS, KC_PGUP,KC_PGDN,
- KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END
- ),
-};
diff --git a/keyboards/input_club/whitefox/keymaps/dudeofawesome/keymap.c b/keyboards/input_club/whitefox/keymaps/dudeofawesome/keymap.c
deleted file mode 100644
index 6c4d046881..0000000000
--- a/keyboards/input_club/whitefox/keymaps/dudeofawesome/keymap.c
+++ /dev/null
@@ -1,146 +0,0 @@
-#include QMK_KEYBOARD_H
-
-enum whitefox_layers {
- _QWERTY,
- _WORKMAN,
- _COLEMAK,
- _DVORAK,
- _FUNC,
-};
-
-enum whitefox_keycodes {
- QWERTY = SAFE_RANGE,
- WORKMAN,
- COLEMAK,
- DVORAK,
- FUNC,
-};
-
-const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* QWERTY (Default Layer)
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Prt|
- * |---------------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|Del|
- * |---------------------------------------------------------------|
- * |Fn/CL | A| S| D| F| G| H| J| K| L| ;| '|Enter |PgU|
- * |---------------------------------------------------------------|
- * |Shif| | Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |Ctrl|Alt |Gui | Space |Gui |Alt |Ctrl| |Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [_QWERTY] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_GRV, KC_PSCR,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL,
- LT(_FUNC,KC_CAPS),KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,
- KC_LSFT, KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LALT,KC_LGUI, KC_SPC, KC_RGUI,KC_RALT,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT
- ),
- /* Workman
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|Prt|
- * |---------------------------------------------------------------|
- * |Tab | Q| D| R| W| B| J| F| U| P| ;| [| ]|Backs|Del|
- * |---------------------------------------------------------------|
- * |Fn/CL | A| S| H| T| G| Y| N| E| O| I| '|Enter |PgU|
- * |---------------------------------------------------------------|
- * |Shif| | Z| X| M| C| V| K| L| ,| .| /|Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |Ctrl|Alt |Gui | Space |Gui |Alt |Ctrl| |Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [_WORKMAN] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_GRV, KC_PSCR,
- KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN,KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL,
- LT(_FUNC,KC_CAPS),KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,
- KC_LSFT, KC_NUBS,KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LALT,KC_LGUI, KC_SPC, KC_RGUI,KC_RALT,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT
- ),
- /* Dvorak
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| [| ]| `| \|Prt|
- * |---------------------------------------------------------------|
- * |Tab | '| ,| .| P| Y| F| G| C| R| L| /| =|Backs|Del|
- * |---------------------------------------------------------------|
- * |Fn/CL | A| O| E| U| I| D| H| T| N| S| -|Enter |PgU|
- * |---------------------------------------------------------------|
- * |Shif| | ;| Q| J| K| X| B| M| W| V| Z|Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |Ctrl|Alt |Gui | Space |Gui |Alt |Ctrl| |Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [_DVORAK] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_GRV, KC_PSCR,
- KC_TAB, KC_QUOT,KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH,KC_EQL, KC_BSPC, KC_DEL,
- LT(_FUNC,KC_CAPS),KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS,KC_NUHS,KC_ENT, KC_PGUP,
- KC_LSFT, KC_NUBS,KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z,KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LALT,KC_LGUI, KC_SPC, KC_RGUI,KC_RALT,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT
- ),
- /* Colemak
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| +| `| \|Prt|
- * |---------------------------------------------------------------|
- * |Tab | Q| W| F| P| G| J| L| U| Y| ;| [| ]|Backs|Del|
- * |---------------------------------------------------------------|
- * |Fn/CL | A| R| S| T| D| H| N| E| I| O| '|Enter |PgU|
- * |---------------------------------------------------------------|
- * |Shif| | Z| X| C| V| B| K| M| ,| .| /|Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |Ctrl|Alt |Gui | Space |Gui |Alt |Ctrl| |Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [_COLEMAK] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSLS,KC_GRV, KC_PSCR,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL,
- LT(_FUNC,KC_CAPS),KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,
- KC_LSFT, KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LALT,KC_LGUI, KC_SPC, KC_RGUI,KC_RALT,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT
- ),
- /* Function
- * ,---------------------------------------------------------------.
- * | | F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | | | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | | | | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | |
- * `---------------------------------------------------------------'
- */
- [_FUNC] = LAYOUT(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,_______,_______,
- _______,KC_WH_D,KC_BTN2,KC_MS_U,KC_BTN1,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,
- _______,KC_WH_U,KC_MS_L,KC_MS_D,KC_MS_R,AG_NORM,AG_SWAP,QWERTY, WORKMAN,DVORAK, COLEMAK,_______,_______,_______, _______,
- _______,_______,KC_WH_L,KC_BTN3,KC_WH_R,_______,_______,_______,_______,_______,_______,_______,_______, KC_VOLU,_______,
- _______,_______,_______, KC_MPLY, _______,_______,_______, KC_MPRV,KC_VOLD,KC_MNXT
- ),
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- case WORKMAN:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_WORKMAN);
- }
- return false;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- }
- return true;
-}
diff --git a/keyboards/input_club/whitefox/keymaps/dudeofawesome/readme.md b/keyboards/input_club/whitefox/keymaps/dudeofawesome/readme.md
deleted file mode 100644
index b5a33e74f6..0000000000
--- a/keyboards/input_club/whitefox/keymaps/dudeofawesome/readme.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# DudeOfAwesome's WhiteFox layout
-
-![WhiteFox Layout](https://i.imgur.com/TYYqJbP.png)
-
-## Features
-
-- Base Layers
- - QWERTY
- - Workman
- - Dvorak
- - Colemak
-- Mouse Keys
-
-## Building and flashing
-
-1. Put your board in DFU mode with either the button on the bottom, or with a software key in your current firmware
-1. Flash:
- ```bash
- $ make whitefox:dudeofawesome:dfu-util
- ```
diff --git a/keyboards/input_club/whitefox/keymaps/konstantin/config.h b/keyboards/input_club/whitefox/keymaps/konstantin/config.h
deleted file mode 100644
index 3c2583e2d4..0000000000
--- a/keyboards/input_club/whitefox/keymaps/konstantin/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define LAYER_FN
-#define LAYER_NUMPAD
diff --git a/keyboards/input_club/whitefox/keymaps/konstantin/keymap.c b/keyboards/input_club/whitefox/keymaps/konstantin/keymap.c
deleted file mode 100644
index d89888aa59..0000000000
--- a/keyboards/input_club/whitefox/keymaps/konstantin/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "konstantin.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │PSc│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │Del│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │PgU│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ LShift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RSfRCt│ ↑ │PgD│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │LCtl│LGui│LAlt│ Space │RAlG│FnFL│ │ ← │ ↓ │ → │
- * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
- */
- [L_BASE] = LAYOUT_truefox(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_PSCR,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSF_RCT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, RAL_RGU, FN_FNLK, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Fn layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Num│SLk│Pau│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │UCM│ │Stp│Ply│Prv│Nxt│Clear│Ins│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │M← │M↓ │M→ │MW↑│ │ │ │ │ │ │ │ │Top│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │MA0│MA2│MW←│MW→│ │ │App│Vo-│Vo+│Mut│ │PgU│Btm│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │DtPR│DtNA│ MW↓ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
- */
- [L_FN] = LAYOUT_truefox(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, NUMPAD, KC_SCRL, KC_PAUS,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, UC_NEXT, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, CLEAR, KC_INS,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, TOP,
- _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, KC_APP, KC_VOLD, KC_VOLU, KC_MUTE, _______, KC_PGUP, BOTTOM,
- _______, DST_P_R, DST_N_A, KC_WH_D, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
-
- /* Numpad layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │P7 │P8 │P9 │P- │ − │ = │Num│ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │ │ │ │ │P4 │P5 │P6 │P+ │ ( │ ) │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │P1 │P2 │P3 │P* │ × │ PEnter │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │ │P0 │P0 │ , │P. │P/ │ ÷ │ │ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
- */
- [L_NUMPAD] = LAYOUT_truefox(
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PMNS, MINUS, EQUALS, NUMPAD, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, L_PAREN, R_PAREN, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PAST, TIMES, KC_PENT, _______,
- _______, _______, _______, _______, _______, _______, KC_P0, KC_P0, COMMA, KC_PDOT, KC_PSLS, DIVIDE, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
diff --git a/keyboards/input_club/whitefox/keymaps/konstantin/rules.mk b/keyboards/input_club/whitefox/keymaps/konstantin/rules.mk
deleted file mode 100644
index db238f1d04..0000000000
--- a/keyboards/input_club/whitefox/keymaps/konstantin/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Generic features
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-UNICODEMAP_ENABLE = yes
-
-# Keyboard-specific features
-BACKLIGHT_ENABLE = no
-VISUALIZER_ENABLE = no
-
-# Firmware size reduction
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/input_club/whitefox/whitefox.c b/keyboards/input_club/whitefox/whitefox.c
index 4aa12586f3..63c6a49240 100644
--- a/keyboards/input_club/whitefox/whitefox.c
+++ b/keyboards/input_club/whitefox/whitefox.c
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "quantum.h"
#ifdef LED_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
// The numbers in the comments are the led numbers DXX on the PCB
/* Refer to IS31 manual for these locations
* driver
@@ -83,9 +83,6 @@ void matrix_init_kb(void) {
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
*/
-# if !defined(LED_MATRIX_DEFAULT_SPD)
-# define LED_MATRIX_DEFAULT_SPD UINT8_MAX / 2
-# endif
led_matrix_set_speed(LED_MATRIX_DEFAULT_SPD),
led_matrix_set_flags(LED_FLAG_ALL);
#endif
diff --git a/keyboards/jacky_studio/bear_65/keymaps/stanrc85/keymap.c b/keyboards/jacky_studio/bear_65/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 8f0ce714ec..0000000000
--- a/keyboards/jacky_studio/bear_65/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2021 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_full_bs(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MO(_FN2_60), KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, LT_BPCF, KC_LGUI, LT_SPCF, TD_TWIN, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_DEFAULT] = LAYOUT_full_bs(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, MO(_FN2_60), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1_60] = LAYOUT_full_bs(
- _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_INS,
- _______, _______, _______, _______, _______, _______, KC_VOLU, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PSCR, _______, _______, _______,
- _______, KC_CAPS, _______, _______, KC_LCTL, KC_LSFT, KC_VOLD, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
- _______, KC_RDP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FN2_60] = LAYOUT_full_bs(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE,
- _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, RGB_MOD, RGB_VAI,
- TG(_DEFAULT), _______, _______, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI
- )
-};
diff --git a/keyboards/jacky_studio/bear_65/keymaps/stanrc85/rules.mk b/keyboards/jacky_studio/bear_65/keymaps/stanrc85/rules.mk
deleted file mode 100644
index 89d03e8c1f..0000000000
--- a/keyboards/jacky_studio/bear_65/keymaps/stanrc85/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-USER_NAME := stanrc85
diff --git a/keyboards/jacky_studio/piggy60/rev2/info.json b/keyboards/jacky_studio/piggy60/rev2/info.json
index 50f2849e73..6d5db8874f 100644
--- a/keyboards/jacky_studio/piggy60/rev2/info.json
+++ b/keyboards/jacky_studio/piggy60/rev2/info.json
@@ -1,5 +1,4 @@
{
- "board": "STM32_F103_STM32DUINO",
"bootloader": "uf2boot",
"diode_direction": "ROW2COL",
"community_layouts": ["60_hhkb", "60_tsangan_hhkb"],
diff --git a/keyboards/jd45/keymaps/talljoe/config.h b/keyboards/jd45/keymaps/talljoe/config.h
deleted file mode 100644
index 8b06cefd52..0000000000
--- a/keyboards/jd45/keymaps/talljoe/config.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Copyright 2020 Joseph Wasson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define PREVENT_STUCK_MODIFIERS
-#define SPACE_COUNT 2
-
-#define TEMPLATE( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
- K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \
-) { \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K0D, K1D }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO }, \
- { K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KC_NO }, \
- { K40, K00, K41, K42, K44, KC_NO, K46, KC_NO, K48, K49, K3D, K4C, KC_NO } \
-}
diff --git a/keyboards/jd45/keymaps/talljoe/keymap.c b/keyboards/jd45/keymaps/talljoe/keymap.c
deleted file mode 100644
index 7812add812..0000000000
--- a/keyboards/jd45/keymaps/talljoe/keymap.c
+++ /dev/null
@@ -1 +0,0 @@
-// This space intentionally left blank
diff --git a/keyboards/jian/keymaps/advanced/config.h b/keyboards/jian/keymaps/advanced/config.h
index 1a033d8311..edeab03fb1 100644
--- a/keyboards/jian/keymaps/advanced/config.h
+++ b/keyboards/jian/keymaps/advanced/config.h
@@ -24,3 +24,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define AUTO_SHIFT_MODIFIERS
#define ALT_LAYOUTS_ENABLE
//#define TRAINING_HALFES_LOCK
+
+#define LAYER_STATE_32BIT
diff --git a/keyboards/jian/keymaps/advanced/keymap.c b/keyboards/jian/keymaps/advanced/keymap.c
index a825e061b5..7702fc20b7 100644
--- a/keyboards/jian/keymaps/advanced/keymap.c
+++ b/keyboards/jian/keymaps/advanced/keymap.c
@@ -11,7 +11,6 @@ typedef union {
user_config_t user_config;
#ifdef STENO_ENABLE
-#include "keymap_steno.h"
#endif // STENO_ENABLE
@@ -86,9 +85,6 @@ enum jian_layers {
_LEFT,
_RIGHT,
#endif //TRAINING_HALFES_LOCK
-#ifdef DIPS_ENABLE
- _DIPS,
-#endif // DIPS_ENABLE
#ifdef STENO_ENABLE
_PLOVER
#endif // STENO_ENABLE
@@ -107,7 +103,7 @@ enum jian_keycodes {
CH_QWE,
CH_DVK,
//endif // ALT_LAYOUTS_ENABLE
-#ifdef DIPS_ENABLE
+#ifdef DIP_SWITCH_ENABLE
LAYOUT0,
LAYOUT1,
LAYOUT2,
@@ -120,18 +116,18 @@ enum jian_keycodes {
DIP9,
DIP10,
DIP11,
-#endif // DIPS_ENABLE
+#endif // DIP_SWITCH_ENABLE
};
#ifdef TRAINING_HALFES_LOCK
static uint8_t lock_timeout = 1;
static uint8_t lock_cooldown = 0;
#endif //TRAINING_HALFES_LOCK
-#ifdef DIPS_ENABLE
+#ifdef DIP_SWITCH_ENABLE
#ifdef ALT_LAYOUTS_ENABLE
static uint8_t layout_conversion_dip_state = 0;
#endif // ALT_LAYOUTS_ENABLE
-#endif // DIPS_ENABLE
+#endif // DIP_SWITCH_ENABLE
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
@@ -190,13 +186,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_base_wrapper(QWERTY_base),
-#ifdef DIPS_ENABLE
-[_DIPS] = LAYOUT_dips(
- LAYOUT0, LAYOUT1, LAYOUT2, LAYOUT3, DIP_ISO, FLIP_TH,
- LAYOUT0, LAYOUT1, LAYOUT2, LAYOUT3, DIP_ISO, FLIP_TH
-),
-#endif // DIPS_ENABLE
-
[_LOWER] = LAYOUT(
_______, KC_UNDS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, F12_RGU,
EQL_LCT, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, MIN_RCT,
@@ -282,7 +271,7 @@ layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
-#ifdef DIPS_ENABLE
+#ifdef DIP_SWITCH_ENABLE
#ifdef ALT_LAYOUTS_ENABLE
void layout_convert(uint8_t statuses) {
switch (0b1111 & statuses) {
@@ -337,13 +326,7 @@ void layout_convert(uint8_t statuses) {
}
}
#endif // ALT_LAYOUTS_ENABLE
-#endif // DIPS_ENABLE
-
-void matrix_init_user(void) {
-#ifdef DIPS_ENABLE
- layer_on(_DIPS);
-#endif // DIPS_ENABLE
-}
+#endif // DIP_SWITCH_ENABLE
void keyboard_post_init_user(void) {
user_config.raw = eeconfig_read_user();
@@ -515,70 +498,83 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
#endif // ALT_LAYOUTS_ENABLE
-#ifdef DIPS_ENABLE
-#ifdef ALT_LAYOUTS_ENABLE
- case LAYOUT0:
+ case THUMB_ALT:
+ if (record->event.pressed) {
+ layer_invert(_THUMB_ALT);
+ user_config.thumb_alt ^= 1;
+ eeconfig_update_user(user_config.raw);
+ }
+ return false;
+ case ISO:
if (record->event.pressed) {
+ layer_invert(_ISO);
+ user_config.iso ^= 1;
+ eeconfig_update_user(user_config.raw);
+ }
+ return false;
+ }
+ return true;
+}
+
+#if defined(DIP_SWITCH_ENABLE)
+bool dip_switch_update_user(uint8_t index, bool active) {
+ switch (index) {
+# if defined(ALT_LAYOUTS_ENABLE)
+ case 0: // LAYOUT0
+ case 6:
+ if (active) {
layout_conversion_dip_state |= 1 << 0;
} else {
layout_conversion_dip_state &= ~(1 << 0);
}
layout_convert(layout_conversion_dip_state);
- return false;
- case LAYOUT1:
- if (record->event.pressed) {
+ break;
+ case 1: // LAYOUT1
+ case 7:
+ if (active) {
layout_conversion_dip_state |= 1 << 1;
} else {
layout_conversion_dip_state &= ~(1 << 1);
}
layout_convert(layout_conversion_dip_state);
- return false;
- case LAYOUT2:
- if (record->event.pressed) {
+ break;
+ case 2: // LAYOUT2
+ case 8:
+ if (active) {
layout_conversion_dip_state |= 1 << 2;
} else {
layout_conversion_dip_state &= ~(1 << 2);
}
layout_convert(layout_conversion_dip_state);
- return false;
- case LAYOUT3:
- if (record->event.pressed) {
+ break;
+ case 3: // LAYOUT3
+ case 9:
+ if (active) {
layout_conversion_dip_state |= 1 << 3;
} else {
layout_conversion_dip_state &= ~(1 << 3);
}
layout_convert(layout_conversion_dip_state);
- return false;
-#endif // ALT_LAYOUTS_ENABLE
- case DIP_ISO:
- if (record->event.pressed) {
- layer_on(_ISO);
+ break;
+ case 4: // DIP_ISO
+ case 10:
+ if (active) {
+ layer_on(_ISO);
} else {
- layer_off(_ISO);
+ layer_off(_ISO);
}
- return false;
- case FLIP_TH:
- if (record->event.pressed) {
- layer_on(_THUMB_ALT);
+ break;
+ case 5: // FLIP_TH
+ case 11:
+ if (active) {
+ layer_on(_THUMB_ALT);
} else {
- layer_off(_THUMB_ALT);
- }
- return false;
-#endif // DIPS_ENABLE
- case THUMB_ALT:
- if (record->event.pressed) {
- layer_invert(_THUMB_ALT);
- user_config.thumb_alt ^= 1;
- eeconfig_update_user(user_config.raw);
- }
- return false;
- case ISO:
- if (record->event.pressed) {
- layer_invert(_ISO);
- user_config.iso ^= 1;
- eeconfig_update_user(user_config.raw);
+ layer_off(_THUMB_ALT);
}
- return false;
+ break;
+# endif
}
+
return true;
}
+#endif
diff --git a/keyboards/jian/rev1/config.h b/keyboards/jian/rev1/config.h
index 8f1a34c2ff..fcdf59f044 100644
--- a/keyboards/jian/rev1/config.h
+++ b/keyboards/jian/rev1/config.h
@@ -25,7 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define EE_HANDS
// different Jian configs
-#define DIPS_ENABLE
#define PHYSICAL_LEDS_ENABLE
#define NUM_LOCK_LED_PIN C6
#define CAPS_LOCK_LED_PIN D7
diff --git a/keyboards/jian/rev1/info.json b/keyboards/jian/rev1/info.json
index 27c5c957a6..68a6efe47b 100644
--- a/keyboards/jian/rev1/info.json
+++ b/keyboards/jian/rev1/info.json
@@ -8,6 +8,12 @@
"rows": ["D3", "D2", "E6", "B4"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "matrix_grid": [
+ [1, 0], [2, 0], [3, 0], [3, 1], [3, 2], [3, 3],
+ [7, 3], [7, 2], [7, 1], [7, 0], [6, 0], [5, 0]
+ ]
+ },
"backlight": {
"pin": "B6",
"levels": 5
@@ -90,23 +96,6 @@
{"matrix": [7, 5], "x": 10, "y": 3.375},
{"matrix": [7, 4], "x": 11, "y": 3.25}
]
- },
- "LAYOUT_dips": {
- "layout": [
- {"matrix": [1, 0], "x": 0, "y": 0},
- {"matrix": [2, 0], "x": 1, "y": 0},
- {"matrix": [3, 0], "x": 2, "y": 0},
- {"matrix": [3, 1], "x": 3, "y": 0},
- {"matrix": [3, 2], "x": 4, "y": 0},
- {"matrix": [3, 3], "x": 5, "y": 0},
-
- {"matrix": [7, 3], "x": 6, "y": 0},
- {"matrix": [7, 2], "x": 7, "y": 0},
- {"matrix": [7, 1], "x": 8, "y": 0},
- {"matrix": [7, 0], "x": 9, "y": 0},
- {"matrix": [6, 0], "x": 10, "y": 0},
- {"matrix": [5, 0], "x": 11, "y": 0}
- ]
}
}
}
diff --git a/keyboards/jian/rev1/rules.mk b/keyboards/jian/rev1/rules.mk
index 8e6da2d84f..33588c1755 100644
--- a/keyboards/jian/rev1/rules.mk
+++ b/keyboards/jian/rev1/rules.mk
@@ -5,3 +5,4 @@ CONSOLE_ENABLE = no
SPLIT_KEYBOARD = yes
BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
+DIP_SWITCH_ENABLE = yes
diff --git a/keyboards/jolofsor/denial75/info.json b/keyboards/jolofsor/denial75/info.json
index 545243e410..18becc3ffb 100644
--- a/keyboards/jolofsor/denial75/info.json
+++ b/keyboards/jolofsor/denial75/info.json
@@ -27,8 +27,12 @@
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
+ "community_layouts": ["75_ansi"],
+ "layout_aliases": {
+ "LAYOUT_denial75_ansi": "LAYOUT_75_ansi"
+ },
"layouts": {
- "LAYOUT_denial75_ansi": {
+ "LAYOUT_75_ansi": {
"layout": [
{"x": 0, "y": 0, "matrix": [0, 0]},
{"x": 1.25, "y": 0, "matrix": [0, 1]},
diff --git a/keyboards/jolofsor/denial75/keymaps/default/keymap.c b/keyboards/jolofsor/denial75/keymaps/default/keymap.c
index b324f24558..cf3be1f3e7 100644
--- a/keyboards/jolofsor/denial75/keymaps/default/keymap.c
+++ b/keyboards/jolofsor/denial75/keymaps/default/keymap.c
@@ -114,7 +114,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_denial75_ansi(
+ [0] = LAYOUT_75_ansi(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_INS, KC_DEL,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
@@ -123,12 +123,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_denial75_ansi(
+ [1] = LAYOUT_75_ansi(
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRIU,
KC_NO, LEDRED, LEDBLUE, LEDYELLOW, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID,
KC_NO, LEDORANGE, LEDGREEN, LEDPURPLE, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAI,
KC_NO, LEDWHITE, LEDPINK, LEDBLACK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, MO(1), RGB_TOG, KC_NO, KC_NO, KC_NO
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, RGB_TOG, KC_NO, KC_NO, KC_NO
)
};
diff --git a/keyboards/jolofsor/denial75/keymaps/via/keymap.c b/keyboards/jolofsor/denial75/keymaps/via/keymap.c
index 678522ddfb..cf3be1f3e7 100644
--- a/keyboards/jolofsor/denial75/keymaps/via/keymap.c
+++ b/keyboards/jolofsor/denial75/keymaps/via/keymap.c
@@ -114,7 +114,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_denial75_ansi(
+ [0] = LAYOUT_75_ansi(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_INS, KC_DEL,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
@@ -123,30 +123,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
- [1] = LAYOUT_denial75_ansi(
+ [1] = LAYOUT_75_ansi(
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRIU,
KC_NO, LEDRED, LEDBLUE, LEDYELLOW, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID,
KC_NO, LEDORANGE, LEDGREEN, LEDPURPLE, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAI,
KC_NO, LEDWHITE, LEDPINK, LEDBLACK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, MO(1), RGB_TOG, KC_NO, KC_NO, KC_NO
- ),
-
- [2] = LAYOUT_denial75_ansi(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- ),
-
- [3] = LAYOUT_denial75_ansi(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, RGB_TOG, KC_NO, KC_NO, KC_NO
)
};
diff --git a/keyboards/jones/v1/config.h b/keyboards/jones/v1/config.h
index e36574e56a..541a6ae2f0 100644
--- a/keyboards/jones/v1/config.h
+++ b/keyboards/jones/v1/config.h
@@ -32,8 +32,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* External EEPROM */
// Use 24LC64 EEPROM
#define EEPROM_I2C_24LC64
-// Set MAX_ADDR to specify actual EEPROM size.
-// If it's not set, EEPROM size will be set ATmega32u4's 1023.
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191
-// How many layers to use with VIA / Remap.
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6 // default:4
diff --git a/keyboards/jones/v1/info.json b/keyboards/jones/v1/info.json
index fdc5cbd310..54496d3164 100644
--- a/keyboards/jones/v1/info.json
+++ b/keyboards/jones/v1/info.json
@@ -21,6 +21,12 @@
"pin": "F1"
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "i2c"
+ },
"encoder": {
"rotary": [
{"pin_a": "F5", "pin_b": "F4"},
diff --git a/keyboards/jones/v1/rules.mk b/keyboards/jones/v1/rules.mk
index cfc8879b74..6f522a4365 100644
--- a/keyboards/jones/v1/rules.mk
+++ b/keyboards/jones/v1/rules.mk
@@ -12,7 +12,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = yes # Audio output
ENCODER_ENABLE = yes # Rotary Encoder
-# Use I2C connected External EEPROM
-EEPROM_DRIVER = i2c
-
LTO_ENABLE = yes
diff --git a/keyboards/jorne/keymaps/manna-harbour_miryoku/config.h b/keyboards/jorne/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 76b24aa99e..0000000000
--- a/keyboards/jorne/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, XXX, \
- XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
- XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX, \
- K32, K33, K34, K35, K36, K37 \
-)
diff --git a/keyboards/jorne/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/jorne/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/jorne/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/jorne/rev1/config.h b/keyboards/jorne/rev1/config.h
index 623aaf149c..3b854d3afc 100644
--- a/keyboards/jorne/rev1/config.h
+++ b/keyboards/jorne/rev1/config.h
@@ -7,5 +7,3 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
diff --git a/keyboards/jorne/rev1/info.json b/keyboards/jorne/rev1/info.json
index 1b1f156fa5..f76b9c0e7d 100644
--- a/keyboards/jorne/rev1/info.json
+++ b/keyboards/jorne/rev1/info.json
@@ -14,7 +14,13 @@
},
"diode_direction": "COL2ROW",
"split": {
- "soft_serial_pin": "D2"
+ "soft_serial_pin": "D2",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true
+ }
+ }
},
"rgblight": {
"led_count": 56,
diff --git a/keyboards/jukaie/jk01/config.h b/keyboards/jukaie/jk01/config.h
index 8a7ea71db4..62c709a917 100644
--- a/keyboards/jukaie/jk01/config.h
+++ b/keyboards/jukaie/jk01/config.h
@@ -25,7 +25,6 @@
/* External spi flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* SPI Config for LED Driver */
#define SPI_DRIVER SPIDQ
@@ -38,7 +37,6 @@
#define DRIVER_1_EN C13
#define DRIVER_2_EN C13
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 66
#define DRIVER_2_LED_TOTAL 19
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/jukaie/jk01/info.json b/keyboards/jukaie/jk01/info.json
index 87c787158c..c53a59a5a3 100644
--- a/keyboards/jukaie/jk01/info.json
+++ b/keyboards/jukaie/jk01/info.json
@@ -7,6 +7,13 @@
"matrix": [1, 3]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "C2", "pin_b": "C3"}
@@ -175,9 +182,6 @@
"pid": "0x0002",
"vid": "0x4141"
},
- "eeprom": {
- "driver": "wear_leveling"
- },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/jukaie/jk01/rules.mk b/keyboards/jukaie/jk01/rules.mk
index 002458405e..6e7633bfe0 100644
--- a/keyboards/jukaie/jk01/rules.mk
+++ b/keyboards/jukaie/jk01/rules.mk
@@ -1 +1 @@
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/kabedon/kabedon980/config.h b/keyboards/kabedon/kabedon980/config.h
deleted file mode 100644
index 3623c508cc..0000000000
--- a/keyboards/kabedon/kabedon980/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/kabedon/kabedon980/info.json b/keyboards/kabedon/kabedon980/info.json
index ae15a51ea3..f443f58a3d 100644
--- a/keyboards/kabedon/kabedon980/info.json
+++ b/keyboards/kabedon/kabedon980/info.json
@@ -33,6 +33,9 @@
"rows": ["D0", "D2", "F7", "B1", "B0", "D6", "C7", "D7", "B5", "B2"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 3
+ },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/kagizaraya/chidori/rules.mk b/keyboards/kagizaraya/chidori/rules.mk
index cbec27a8cb..f94317cf22 100644
--- a/keyboards/kagizaraya/chidori/rules.mk
+++ b/keyboards/kagizaraya/chidori/rules.mk
@@ -16,4 +16,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
SRC += board.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/kapl/rev1/config.h b/keyboards/kapl/rev1/config.h
index c5c9ada22b..db7eaaee49 100644
--- a/keyboards/kapl/rev1/config.h
+++ b/keyboards/kapl/rev1/config.h
@@ -8,7 +8,6 @@
#define RGB_MATRIX_LED_COUNT 88
#define RGB_MATRIX_SPLIT { 44, 44 }
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
-#define SPLIT_TRANSPORT_MIRROR
#ifdef RGB_MATRIX_ENABLE
// EFFECTS
@@ -41,6 +40,3 @@
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
diff --git a/keyboards/kapl/rev1/info.json b/keyboards/kapl/rev1/info.json
index 5ef44ccaaa..b649c055ac 100644
--- a/keyboards/kapl/rev1/info.json
+++ b/keyboards/kapl/rev1/info.json
@@ -36,7 +36,14 @@
},
"diode_direction": "COL2ROW",
"split": {
- "soft_serial_pin": "D2"
+ "soft_serial_pin": "D2",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true
+ }
+ }
},
"processor": "atmega32u4",
"bootloader": "caterina",
diff --git a/keyboards/kbdcraft/adam64/adam64.c b/keyboards/kbdcraft/adam64/adam64.c
index c23bd489a5..b0712aec39 100644
--- a/keyboards/kbdcraft/adam64/adam64.c
+++ b/keyboards/kbdcraft/adam64/adam64.c
@@ -19,7 +19,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/kbdcraft/adam64/config.h b/keyboards/kbdcraft/adam64/config.h
index 81101bbb61..511eb7f8ab 100644
--- a/keyboards/kbdcraft/adam64/config.h
+++ b/keyboards/kbdcraft/adam64/config.h
@@ -23,8 +23,7 @@
#define I2C1_CLOCK_SPEED 400000
#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_16_9
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b0110000
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT 64
/* turn off effects when suspended */
diff --git a/keyboards/kbdfans/bella/rgb/config.h b/keyboards/kbdfans/bella/rgb/config.h
index c8114dc57b..754f4e1eb8 100644
--- a/keyboards/kbdfans/bella/rgb/config.h
+++ b/keyboards/kbdfans/bella/rgb/config.h
@@ -71,8 +71,7 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT 108
#define DRIVER_INDICATOR_LED_TOTAL 0
#endif
diff --git a/keyboards/kbdfans/bella/rgb/rgb.c b/keyboards/kbdfans/bella/rgb/rgb.c
index aac16dd820..8bdc1d8fdf 100644
--- a/keyboards/kbdfans/bella/rgb/rgb.c
+++ b/keyboards/kbdfans/bella/rgb/rgb.c
@@ -15,7 +15,7 @@
*/
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS18_SW1, CS17_SW1, CS16_SW1}, /* RGB6 */
{0, CS18_SW3, CS17_SW3, CS16_SW3}, /* RGB32 */
{0, CS18_SW4, CS17_SW4, CS16_SW4}, /* RGB45 */
diff --git a/keyboards/kbdfans/bella/rgb_iso/config.h b/keyboards/kbdfans/bella/rgb_iso/config.h
index 8dea9c2164..48284a5160 100644
--- a/keyboards/kbdfans/bella/rgb_iso/config.h
+++ b/keyboards/kbdfans/bella/rgb_iso/config.h
@@ -71,8 +71,7 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT 109
#define DRIVER_INDICATOR_LED_TOTAL 0
#endif
diff --git a/keyboards/kbdfans/bella/rgb_iso/rgb_iso.c b/keyboards/kbdfans/bella/rgb_iso/rgb_iso.c
index 30371614d8..e36b811bbc 100644
--- a/keyboards/kbdfans/bella/rgb_iso/rgb_iso.c
+++ b/keyboards/kbdfans/bella/rgb_iso/rgb_iso.c
@@ -15,7 +15,7 @@
*/
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS18_SW1, CS17_SW1, CS16_SW1}, /* RGB6 */
{0, CS18_SW3, CS17_SW3, CS16_SW3}, /* RGB32 */
{0, CS18_SW4, CS17_SW4, CS16_SW4}, /* RGB45 */
diff --git a/keyboards/kbdfans/boop65/rgb/config.h b/keyboards/kbdfans/boop65/rgb/config.h
index c1955ac84f..e37e2d1763 100644
--- a/keyboards/kbdfans/boop65/rgb/config.h
+++ b/keyboards/kbdfans/boop65/rgb/config.h
@@ -26,8 +26,7 @@
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-# define DRIVER_ADDR_1 0b0110000
-# define DRIVER_COUNT 1
+# define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
# define RGB_MATRIX_LED_COUNT 83
# define DRIVER_INDICATOR_LED_TOTAL 0
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
diff --git a/keyboards/kbdfans/boop65/rgb/rgb.c b/keyboards/kbdfans/boop65/rgb/rgb.c
index 985f877e85..f2b5858966 100644
--- a/keyboards/kbdfans/boop65/rgb/rgb.c
+++ b/keyboards/kbdfans/boop65/rgb/rgb.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS21_SW1, CS20_SW1, CS19_SW1},
{0, CS21_SW2, CS20_SW2, CS19_SW2},
{0, CS21_SW3, CS20_SW3, CS19_SW3},
diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c b/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 9a60c81f95..0000000000
--- a/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│Hom│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│PgU│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│End│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │Ctrl│ Opt│ Cmd│ Space │Cmd │FnPy│ │Lef│Dow│Rig│
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_BASE] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_PGUP,
- HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, PLY_FN1, KC_LEFT, KC_DOWN, KC_RGHT),
-
-/* Function Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │MKE│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│LHP│MSN│SLP│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │ │RST│ │ │ │ │ │F13│F14│F15│ Del│VlU│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │KMP│ │ │ │ Adjust │VlD│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │VRN│ │ │ │Prv│Nxt│Ply│ │PgU│Mut│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_FN1] = LAYOUT(
- QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_MSSN, MC_SLPD,
- _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, KC_DEL, KC_VOLU,
- _______, _______, _______, _______, _______, _______, _______, _______, QM_KYMP, _______, _______, _______, TG_ADJT, KC_VOLD,
- _______, _______, _______, _______, QM_VRSN, _______, _______, _______, KC_MPRV, KC_MNXT, KC_MPLY, _______, KC_PGUP, KC_MUTE,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ),
-
-/* Adjust Layer Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │EEP│RST│ │ │ │ │ │ │ │ │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ Adjust │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_ADJUST] = LAYOUT(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, EE_CLR, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG_ADJT, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX,
- _______, _______, _______, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX),
-};
-
-/* Blank Template
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-/*
-[_BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
-};
-*/
diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk b/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index 673e15f81f..0000000000
--- a/keyboards/kbdfans/kbd67/hotswap/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-# Build Options
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h
deleted file mode 100644
index 2b0947ace5..0000000000
--- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
-
-#ifdef RGB_MATRIX_ENABLE
- #ifdef RGB_MATRIX_DEFAULT_MODE
- #undef RGB_MATRIX_DEFAULT_MODE
- #endif
- #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
- #define RGB_DISABLE_WHEN_USB_SUSPENDED
-#endif
-
-// Reduce layers to 3 to save memory
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c
deleted file mode 100644
index aad7893f51..0000000000
--- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Copyright 2021 Jonavin
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "rgb_matrix_map.h"
-#include "jonavin.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT_65_ansi_blocker(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- TT(_LOWER), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFTCAPSWIN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- [_FN1] = LAYOUT_65_ansi_blocker(
- QK_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_CALC,
- _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, _______, QK_BOOT, KC_HOME,
- KC_CAPS, RGB_SPI, RGB_SPD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, EE_CLR, KC_END,
- KC_LSFT, RGB_NITE, _______, _______, _______, _______, KC_NUM, _______, RGB_TOD, RGB_TOI, KC_MPLY, _______, KC_VOLU, KC_MUTE,
- _______, KC_WINLCK, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
- ),
- [_LOWER] = LAYOUT_65_ansi_blocker(
- KC_TILD, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, _______, _______,
- _______, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PDOT, _______, _______, _______, KC_HOME,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, KC_PENT, KC_END,
- _______, KC_NO, KC_DEL, KC_INS, KC_NO, KC_NO, KC_NO, KC_P0, KC_00, KC_PDOT, KC_PSLS, _______, _______, _______,
- _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______
- ),
-};
-
-#ifdef RGB_MATRIX_ENABLE
- // Capslock, Scroll lock and Numlock indicator
- bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
- led_t led_state = host_keyboard_led_state();
- if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF);
- if (led_state.scroll_lock) {
- rgb_matrix_set_color(LED_I, RGB_GREEN);
- }
-
- #ifdef INVERT_NUMLOCK_INDICATOR
- if (!led_state.num_lock) { // on if NUM lock is OFF
- rgb_matrix_set_color(LED_B, RGB_GREEN);
- rgb_matrix_set_color(LED_N, RGB_GREEN);
- rgb_matrix_set_color(LED_M, RGB_GREEN);
- }
- #else
- if (led_state.num_lock) { // Normal, on if NUM lock is ON
- rgb_matrix_set_color(LED_B, RGB_GREEN);
- rgb_matrix_set_color(LED_N, RGB_GREEN);
- rgb_matrix_set_color(LED_M, RGB_GREEN);
- }
- #endif // INVERT_NUMLOCK_INDICATOR
-
- if (led_state.caps_lock) {
- rgb_matrix_set_color(LED_CAPS, RGB_RED);
- rgb_matrix_set_color(LED_Q, RGB_RED);
- rgb_matrix_set_color(LED_A, RGB_RED);
- }
- if (keymap_config.no_gui) {
- rgb_matrix_set_color(LED_LCTL, RGB_RED); //light up Win key when disabled
- rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Win key when disabled
- rgb_matrix_set_color(LED_LALT, RGB_RED); //light up Win key when disabled
- }
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- rgb_matrix_set_color(LED_FN, RGB_GOLD);
- rgb_matrix_set_color(LED_RCTL, RGB_GOLD);
-
- #ifdef IDLE_TIMEOUT_ENABLE
- // Add RGB Timeout Indicator -- shows 0 to 139 using num row and qwerty row
- uint16_t timeout_threshold = get_timeout_threshold();
- if (timeout_threshold <= 10) rgb_matrix_set_color(LED_LIST_NUMROW[timeout_threshold], RGB_GOLD);
- else if (timeout_threshold < 140) {
- rgb_matrix_set_color(LED_LIST_NUMROW[(timeout_threshold % 10)], RGB_GOLD);
- rgb_matrix_set_color(LED_LIST_QWERTYROW[(timeout_threshold / 10)], RGB_GOLD);
- } else { // >= 140 minutes, just show these 3 lights
- rgb_matrix_set_color(LED_LIST_NUMROW[10], RGB_GOLD);
- rgb_matrix_set_color(LED_LIST_NUMROW[11], RGB_GOLD);
- rgb_matrix_set_color(LED_LIST_NUMROW[12], RGB_GOLD);
- }
- #endif // IDLE_TIMEOUT_ENABLE
-
- break;
- case _LOWER:
- for (uint8_t i=0; i<ARRAYSIZE(LED_LIST_NUMPAD); i++) {
- rgb_matrix_set_color(LED_LIST_NUMPAD[i], RGB_BLUE);
- }
- for (uint8_t i=0; i<ARRAYSIZE(LED_LIST_WASD); i++) {
- rgb_matrix_set_color(LED_LIST_WASD[i], RGB_BLUE);
- }
- break;
- case _RAISE:
- rgb_matrix_set_color(LED_SPC, RGB_GREEN);
- break;
- default:
- break;
- }
- return false;
- }
-
-#endif
-
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGB_MATRIX_ENABLE
- rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR);
- activate_rgb_nightmode(false); // Set to true if you want to startup in nightmode, otherwise use Fn + Z to toggle
- #endif
-}
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/readme.md b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/readme.md
deleted file mode 100644
index a28e945cd1..0000000000
--- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# jonavin's KBD 67 Lite keymap
-
-NOTE: This keymap uses features from qmk userspace in user/jonavin. I fyou copy this keymap you should also the user folder.
-
-- Add PrtScr, Scroll Lock, Break, NumLock to Fn layer
-- add double tap of Left Shift to toggle Caps Lock
-- Implement Win key lock using Fn+Win
-- Layer 2 mod on Caps Lock with double-tap to switch to this layer, double tap to switch back
-- Layer 2 provides arrows on WASD and additional nav keys + right hand numpad with 00; an be used for Alt Code entry
-- Layer 2 spacebar Backspace
-
-- LED/RGB Functionality
- - RGB idle timeout (default 5 minutes)
- - Can be changed in FN layer with < and >
- - setting to zero disables timeout
- - indicators in FN layer using RGB in number and qwerty rows to show the timeout in minutes
- - LED address location map as enum definition in rgb_matrix_map.h
- - LED group lists for arrows, numpad, qwerty row, num row LEDs
- - default startup in single colour mode
- - Capslock, Scroll Lock, and Num Lock (not set) indicator
- - Fn key light up GOLD when Fn layer activate
- - Win Key light up red when Win Lock mode enabled
- - Layer 2 activation lights up Numpad area
- - Fn + Z to turn off all RGB lights except rgb indicators; press again to toggle
-
-rules.mk OPTIONS - Active features from userspace
-STARTUP_NUMLOCK_ON = yes
- - turns on NUMLOCK by default
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
- - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS
-
-IDLE_TIMEOUT_ENABLE = yes
- - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically
-
-INVERT_NUMLOCK_INDICATOR = yes
- - inverts the Num lock indicator, LED is on when num lock is off
-
-## All layers diagram
-![image](https://user-images.githubusercontent.com/71780717/146864247-4ec05ef7-7936-45db-9db9-02fb17d3f7ed.png)
-
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rgb_matrix_map.h b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rgb_matrix_map.h
deleted file mode 100644
index 66608ba6e6..0000000000
--- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rgb_matrix_map.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef RGB_MATRIX_ENABLE
-
- // Custom RGB Colours
- #define RGB_GODSPEED 0x00, 0xE4, 0xFF // colour for matching keycaps
- #define RGB_NAUTILUS 0x00, 0xA4, 0xA9 // Naurilus Font colours
- #define RGB_PURPLELITE 0x80, 0x00, 0x80 // Purple colours
-
- // RGB LED locations
- enum led_location_map {
- LED_ESC, // 0
- LED_1, // 1
- LED_2, // 2
- LED_3, // 3
- LED_4, // 4
- LED_5, // 5
- LED_6, // 6
- LED_7, // 7
- LED_8, // 8
- LED_9, // 9
- LED_0, // 10
- LED_MINS, // 11
- LED_EQL, // 12
- LED_BSPC, // 13
- LED_DEL, // 14
- LED_TAB, // 15
- LED_Q, // 16
- LED_W, // 17
- LED_E, // 18
- LED_R, // 19
- LED_T, // 20
- LED_Y, // 21
- LED_U, // 22
- LED_I, // 23
- LED_O, // 24
- LED_P, // 25
- LED_LBRC, // 26 [
- LED_RBRC, // 27 ]
- LED_BSLS, // 28 |
- LED_PGUP, // 29
- LED_CAPS, // 30
- LED_A, // 31
- LED_S, // 32
- LED_D, // 33
- LED_F, // 34
- LED_G, // 35
- LED_H, // 36
- LED_J, // 37
- LED_K, // 38
- LED_L, // 39
- LED_SCLN, // 40 ;
- LED_QUOT, // 41 "
- LED_ENT, // 42
- LED_PGDN, // 43
- LED_LSFT, // 44
- LED_Z, // 45
- LED_X, // 46
- LED_C, // 47
- LED_V, // 48
- LED_B, // 49
- LED_N, // 50
- LED_M, // 51
- LED_COMM, // 52 ,
- LED_DOT, // 53 .
- LED_SLSH, // 54 /
- LED_RSFT, // 55
- LED_UP, // 56
- LED_END, // 57
- LED_LCTL, // 58
- LED_LWIN, // 59
- LED_LALT, // 60
- LED_SPC, // 61
- LED_FN, // 62
- LED_RCTL, // 63
- LED_LEFT, // 64
- LED_DOWN, // 65
- LED_RIGHT // 66
- };
-
- const uint8_t LED_LIST_WASD[] = { LED_W, LED_A, LED_S, LED_D };
-
- const uint8_t LED_LIST_ARROWS[] = { LED_LEFT, LED_RIGHT, LED_UP, LED_DOWN };
-
- const uint8_t LED_LIST_NUMROW[] = { LED_ESC, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, LED_BSPC, LED_DEL};
- const uint8_t LED_LIST_QWERTYROW[] = { LED_TAB, LED_Q, LED_W, LED_E, LED_R, LED_T, LED_Y, LED_U, LED_I, LED_O, LED_P, LED_LBRC, LED_RBRC, LED_BSLS, LED_PGUP};
-
- const uint8_t LED_LIST_NUMPAD[] = {
- LED_7, LED_8, LED_9,
- LED_U, LED_I, LED_O,
- LED_J, LED_K, LED_L,
- LED_M, LED_COMM, LED_DOT
- };
-
-#endif
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk
deleted file mode 100644
index c26db537ee..0000000000
--- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-VIA_ENABLE = yes
-LTO_ENABLE = yes
-CONSOLE_ENABLE = no
-MOUSEKEY_ENABLE = no
-TAP_DANCE_ENABLE = yes
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-EXTRAKEY_ENABLE = no
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-IDLE_TIMEOUT_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-INVERT_NUMLOCK_INDICATOR = yes
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v1/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v1/config.h
index f2ee16dac2..51b88510e5 100644
--- a/keyboards/kbdfans/kbd67/mkiirgb/v1/config.h
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v1/config.h
@@ -55,9 +55,8 @@
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define DRIVER_1_LED_TOTAL 35
#define DRIVER_2_LED_TOTAL 32
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v1/v1.c b/keyboards/kbdfans/kbd67/mkiirgb/v1/v1.c
index 336526eb11..c70622dd56 100644
--- a/keyboards/kbdfans/kbd67/mkiirgb/v1/v1.c
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v1/v1.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C8_8, C7_8, C6_8}, // LA17
{0, C9_8, C7_7, C6_7}, // LA16
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v2/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v2/config.h
index cf7f488280..bba655107d 100644
--- a/keyboards/kbdfans/kbd67/mkiirgb/v2/config.h
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v2/config.h
@@ -55,9 +55,8 @@
// #define ENABLE_RGB_MATRIX_SOLID_SPLASH
// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110111
-# define DRIVER_COUNT 2
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
# define DRIVER_1_LED_TOTAL 35
# define DRIVER_2_LED_TOTAL 32
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v2/v2.c b/keyboards/kbdfans/kbd67/mkiirgb/v2/v2.c
index 3bb336c0a2..7de8060d7a 100644
--- a/keyboards/kbdfans/kbd67/mkiirgb/v2/v2.c
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v2/v2.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C8_8, C7_8, C6_8}, // LA17
{0, C9_8, C7_7, C6_7}, // LA16
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h
index e291fa6368..8dd12678ee 100755
--- a/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h
@@ -72,8 +72,7 @@
#define RGB_MATRIX_LED_PROCESS_LIMIT 4
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT 67
#define DRIVER_INDICATOR_LED_TOTAL 0
#endif
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v3/info.json b/keyboards/kbdfans/kbd67/mkiirgb/v3/info.json
index 165db96293..284461c2a7 100644
--- a/keyboards/kbdfans/kbd67/mkiirgb/v3/info.json
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v3/info.json
@@ -5,7 +5,8 @@
"device_version": "0.0.3"
},
"rgb_matrix": {
- "driver": "is31fl3741"
+ "driver": "is31fl3741",
+ "val_steps": 8
},
"matrix_pins": {
"cols": ["F7", "F6", "F5", "C7", "B0", "B1", "B2", "B3", "B4", "D7", "D6", "D4", "D5", "D3", "D2"],
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c b/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c
index 4329893ac1..7347a365bc 100755
--- a/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS21_SW1, CS20_SW1, CS19_SW1},
{0, CS21_SW2, CS20_SW2, CS19_SW2},
{0, CS21_SW3, CS20_SW3, CS19_SW3},
@@ -125,16 +125,12 @@ led_config_t g_led_config = { {
#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
-#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS
+#if !defined(CAPS_LOCK_MAX_BRIGHTNESS)
#define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
-#else
- #define CAPS_LOCK_MAX_BRIGHTNESS 0xFF
#endif
-#ifdef RGB_MATRIX_VAL_STEP
+#if !defined(CAPS_LOCK_VAL_STEP)
#define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP
-#else
- #define CAPS_LOCK_VAL_STEP 8
#endif
bool rgb_matrix_indicators_kb(void) {
diff --git a/keyboards/kbdfans/kbd67/rev1/info.json b/keyboards/kbdfans/kbd67/rev1/info.json
index 9119477584..f279c5a2c9 100644
--- a/keyboards/kbdfans/kbd67/rev1/info.json
+++ b/keyboards/kbdfans/kbd67/rev1/info.json
@@ -38,7 +38,6 @@
"knight": true,
"christmas": true,
"static_gradient": true,
- "rgb_test": true,
"alternating": true,
"twinkle": true
}
diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c b/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index c695227114..0000000000
--- a/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│Hom│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│PgU│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ Up│End│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │Ctrl│ Opt│ Cmd│ Space │Cmd │FnPy│ │Lef│Dow│Rig│
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_BASE] = LAYOUT_all(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_PGUP,
- HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LOPT, KC_LCMD, XXXXXXX, KC_SPC, XXXXXXX, KC_RCMD, PLY_FN1, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT),
-
-/* Function Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │MKE│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│LHP│MSN│SLP│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │RMod │RH+│RS+│RV+│RST│ │ │ │ │ │F13│F14│F15│ Del│VlU│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │RH-│RS-│RV-│ │ │ │ │KMP│ │ │ │ Adjust │VlD│
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │RTg│RLy│RTh│VRN│ │ │ │Prv│Nxt│Ply│ │PgU│Mut│
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │Hom│PgD│End│
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_FN1] = LAYOUT_all(
- QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_MSSN, MC_SLPD,
- RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, QK_BOOT, _______, _______, _______, _______, _______, KC_F13, KC_F14, KC_F15, KC_DEL, KC_VOLU,
- _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, QM_KYMP, _______, _______, _______, TG_ADJT, KC_VOLD,
- _______, XXXXXXX, RGB_TOG, RGB_LYR, RGB_THM, QM_VRSN, _______, _______, _______, KC_MPRV, KC_MNXT, KC_MPLY, _______, KC_PGUP, KC_MUTE,
- _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, XXXXXXX, KC_HOME, KC_PGDN, KC_END ),
-
-/* Adjust Layer Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │EEP│RST│ │ │ │ │ │ │ │ │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ Adjust │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-[_ADJUST] = LAYOUT_all(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, EE_CLR, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG_ADJT, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX,
- _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX),
-};
-
-/* Blank Template
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │
- * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
- */
-/*
-[_BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______),
-};
-*/
diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk b/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index 348eeaee3d..0000000000
--- a/keyboards/kbdfans/kbd67/rev2/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# Build Options
-MOUSEKEY_ENABLE = no # Don't need mouse keys
-BACKLIGHT_ENABLE = no # Backlights not installed
diff --git a/keyboards/kbdfans/kbd6x/keymaps/konstantin/config.h b/keyboards/kbdfans/kbd6x/keymaps/konstantin/config.h
deleted file mode 100644
index 4b511eb848..0000000000
--- a/keyboards/kbdfans/kbd6x/keymaps/konstantin/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define LAYER_FN
diff --git a/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c
deleted file mode 100644
index a8a369a611..0000000000
--- a/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c
+++ /dev/null
@@ -1,181 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "konstantin.h"
-
-enum layers_keymap {
- L_RCTRL = LAYERS_KEYMAP,
-};
-
-enum keycodes_keymap {
- RCTRL = RANGE_KEYMAP,
-};
-
-static inline void reset_light(void) {
- rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL);
- rgblight_sethsv(MODERN_DOLCH_RED);
-}
-
-static inline void fn_light(void) {
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_sethsv_noeeprom(modern_dolch_red.h, modern_dolch_red.s, rgblight_get_val());
-}
-
-static inline void caps_light(void) {
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_sethsv_noeeprom(modern_dolch_cyan.h, modern_dolch_cyan.s, rgblight_get_val());
-}
-
-static inline void restore_light(void) {
- rgblight_config_t saved = { .raw = eeconfig_read_rgblight() };
- rgblight_mode_noeeprom(saved.mode);
- rgblight_sethsv_noeeprom(saved.hue, saved.sat, saved.val);
-}
-
-static bool last_checked_layer;
-
-static void check_light_layer(layer_state_t state) {
- if (IS_LAYER_ON_STATE(state, L_FN)) {
- fn_light();
- } else if (host_keyboard_led_state().caps_lock) {
- caps_light();
- } else {
- restore_light();
- }
- last_checked_layer = true;
-}
-
-static void check_light_led(led_t led_state) {
- if (led_state.caps_lock) {
- caps_light();
- } else if (IS_LAYER_ON(L_FN)) {
- fn_light();
- } else {
- restore_light();
- }
- last_checked_layer = false;
-}
-
-static void inline check_light(void) {
- last_checked_layer
- ? check_light_layer(layer_state)
- : check_light_led(host_keyboard_led_state());
-}
-
-void eeconfig_init_keymap(void) {
- reset_light();
-}
-
-static bool skip_led = false;
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- static layer_state_t prev_state = L_BASE;
- if (IS_LAYER_ON_STATE(state, L_FN) != IS_LAYER_ON_STATE(prev_state, L_FN)) {
- check_light_layer(state); // Fn state changed since last time
- skip_led = IS_LAYER_ON_STATE(state, L_FN);
- // led_set_keymap will be called automatically after this
- }
- return prev_state = state;
-}
-
-void led_set_keymap(uint8_t usb_led) {
- if (skip_led) {
- skip_led = false;
- return; // Skip calls triggered by the Fn layer turning on
- }
- check_light_led(usb_led);
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case RGB_TOG ... RGB_SPD:
- if (record->event.pressed) {
- // Shift+Toggle = reset RGB
- if (keycode == RGB_TOG && get_mods() & MOD_MASK_SHIFT) {
- reset_light();
- return false;
- }
- restore_light();
- } else {
- check_light();
- }
- break;
-
- // Combined RCtrl and layer
- // Cannot use LM(L_RCTRL, MOD_RCTL) because it sends LCtrl instead of RCtrl
- case RCTRL:
- if (record->event.pressed) {
- register_code(KC_RCTL);
- layer_on(L_RCTRL);
- } else {
- unregister_code(KC_RCTL);
- layer_off(L_RCTRL);
- }
- break;
- }
-
- return true;
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │LCtCps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- * │LShiftFn│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RShift│FnF│
- * └─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┘
- * │LGu│LAlt │ Space │RAlGu│RCt│
- * └───┴─────┴───────────────────────────┴─────┴───┘
- */
- [L_BASE] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- LCT_CPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- LSFT_FN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, FN_FNLK,
- XXXXXXX, KC_LGUI, KC_LALT, KC_SPC, RAL_RGU, RCTRL, XXXXXXX
- ),
-
- /* Fn layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│PSc│Ins│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ │Hom│ ↑ │End│PgU│ │ │ │ │M1 │M↑ │М2 │M3 │ Del │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ │ ← │ ↓ │ → │PgD│ │ │ │ │M← │M↓ │M→ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- * │ │Mut│Vo-│Vo+│Ply│Prv│Nxt│App│MW↑│M4 │М5 │ │ │
- * └─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┘
- * │ │ │ MW↓ │MAcl2│ │
- * └───┴─────┴───────────────────────────┴─────┴───┘
- */
- [L_FN] = LAYOUT(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_INS,
- _______, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_BTN3, KC_DEL,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______,
- _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, KC_APP, KC_WH_U, KC_BTN4, KC_BTN5, _______, _______,
- XXXXXXX, _______, _______, KC_WH_D, KC_ACL2, _______, XXXXXXX
- ),
-
- /* RCtrl layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │Clr│
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ │Top│Mv↑│Btm│TPr│ │ │ │ │ │ │ │ │DelNx│
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ │Mv←│Mv↓│Mv→│TNx│ │ │ │ │ │ │ │ │
- * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- * │ │RTg│RV-│RV+│RMd│ │ │ │ │ │ │ │ │
- * └─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┘
- * │DPR│DstNA│ │RGui │ │
- * └───┴─────┴───────────────────────────┴─────┴───┘
- */
- [L_RCTRL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLEAR,
- _______, TOP, MV_UP, BOTTOM, TAB_PRV, _______, _______, _______, _______, _______, _______, _______, _______, DEL_NXT,
- _______, MV_LEFT, MV_DOWN, MV_RGHT, TAB_NXT, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_TOG, RGB_VAD, RGB_VAI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______,
- XXXXXXX, DST_P_R, DST_N_A, _______, KC_RGUI, _______, XXXXXXX
- ),
-};
diff --git a/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk b/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk
deleted file mode 100644
index 9ce299ed68..0000000000
--- a/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Generic features
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-UNICODEMAP_ENABLE = no
-
-# Keyboard-specific features
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = yes
-VIA_ENABLE = yes
-
-# Firmware size reduction
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c
deleted file mode 100644
index 75eb2f6074..0000000000
--- a/keyboards/kbdfans/kbd6x/keymaps/wanleg/keymap.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/* Copyright 2018 wanleg
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "wanleg.h"
-
-
-#define LAYOUT_kbd6x_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, \
- KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_LBRC, KC_RBRC, KC_BSLS, \
- KC_CAPS, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, KC_ENT, \
- KC_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_LSFT, FUNCTION, \
- KC_LCTL, KC_LGUI, KC_LALT, LT(gDIR,KC_SPC), KC_RALT, KC_RGUI, KC_RCTL \
- )
-#define LAYOUT_kbd6x_base_wrapper(...) LAYOUT_kbd6x_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[gGK] = LAYOUT_kbd6x_base_wrapper(
- _______________Gherkin_Row_0_______________,
- _______________Gherkin_Row_1_______________,
- _______________Gherkin_Row_2_______________
-),
-
-[gNUM] = LAYOUT_kbd6x_base_wrapper(
- _______________Gherkin_NUM_0_______________,
- _______________Gherkin_NUM_1_______________,
- _______________Gherkin_NUM_2_______________
-),
-
-[gDIR] = LAYOUT_kbd6x_base_wrapper(
- _______________Gherkin_DIR_0_______________,
- _______________Gherkin_DIR_1_______________,
- _______________Gherkin_DIR_2_______________
-),
-
-[gETC] = LAYOUT_kbd6x_base_wrapper(
- _______________Gherkin_ETC_0_______________,
- _______________Gherkin_ETC_1_______________,
- _______________Gherkin_ETC_2_______________
-),
-
-[_FN] = LAYOUT_kbd6x_base_wrapper(
- _______________Gherkin_FN_0________________,
- _______________Gherkin_FN_1________________,
- _______________Gherkin_FN_2________________
-),
-
-//mac layout
-[_QW] = LAYOUT_wrapper(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(ONE),
- KC_LCTL, MO(ONE), KC_LGUI, KC_SPACE, KC_RGUI, KC_RALT, KC_RCTL
- ),
-
-[ONE] = LAYOUT_wrapper(
- KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
- _______, BL_BRTG, BL_DOWN, BL_UP, BL_TOGG, BL_STEP, BL_ON, KC_PGUP, KC_HOME, _______, _______, _______, _______, _______,
- _______, RGB_M_B, RGB_VAD, RGB_VAI, RGB_TOG, RGB_MOD, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
- _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, KC_PGDN, KC_END, _______, gGHERKIN,_______, _______,
- _______, _______, _______, _______, _______, _______, _______
- ),
-};
diff --git a/keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk b/keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk
deleted file mode 100644
index 76c2575819..0000000000
--- a/keyboards/kbdfans/kbd6x/keymaps/wanleg/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-EXTRAKEY_ENABLE = no # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400) \ No newline at end of file
diff --git a/keyboards/kbdfans/kbd75/keymaps/noroadsleft/config.h b/keyboards/kbdfans/kbd75/keymaps/noroadsleft/config.h
deleted file mode 100644
index 0b28746081..0000000000
--- a/keyboards/kbdfans/kbd75/keymaps/noroadsleft/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2020 James Young (@noroadsleft)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define BACKLIGHT_BREATHING
-
-#define ANSI_NUBS_ROW 4
-#define ANSI_NUBS_COL 2
diff --git a/keyboards/kbdfans/kbd75/keymaps/noroadsleft/keymap.c b/keyboards/kbdfans/kbd75/keymaps/noroadsleft/keymap.c
deleted file mode 100644
index f1a08c2edd..0000000000
--- a/keyboards/kbdfans/kbd75/keymaps/noroadsleft/keymap.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/* Copyright 2020-2022 James Young (@noroadsleft)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "noroadsleft.h"
-
-enum layer_names {
- _DV,
- _QW,
- _Q2,
- _FN,
- _SY
-};
-
-// Tap Dance declarations
-enum tap_dances {
- LAG,
- RAG,
-};
-
-// Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- // Tap once for Escape, twice for Caps Lock
- [LAG] = ACTION_TAP_DANCE_DOUBLE(KC_LALT, KC_LGUI),
- [RAG] = ACTION_TAP_DANCE_DOUBLE(KC_RALT, KC_RGUI),
-};
-
-#define FN_CAPS LT(_FN,KC_CAPS)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_DV] = LAYOUT_75_ansi_wkl(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, MO(_SY),
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSPC, KC_HOME,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS, KC_PGUP,
- FN_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT, KC_PGDN,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, TD(LAG), KC_SPC, TD(RAG), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_QW] = LAYOUT_75_ansi_wkl(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, MO(_SY),
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, TD(LAG), KC_SPC, TD(RAG), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_Q2] = LAYOUT_75_ansi_wkl(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_LALT, _______, KC_RALT, _______, _______, _______, _______
- ),
-
- [_FN] = LAYOUT_75_ansi_wkl(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, DM_REC1,
- _______, KC_CALC, KC_APP, G_PUSH, _______, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SCRL, KC_PAUS, DM_REC2,
- _______, M_SALL, _______, G_FTCH, G_PWD, _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, DM_RSTP, DM_PLY1,
- _______, M_UNDO, M_CUT, M_COPY, M_PASTE, G_BRCH, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, DM_PLY2,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_SY] = LAYOUT_75_ansi_wkl(
- TG(_SY), TO(_DV), TO(_QW), XXXXXXX, TG(_Q2), XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, EE_CLR, DB_TOGG, XXXXXXX, VRSN, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, XXXXXXX,
- XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, BL_DOWN, BL_TOGG, BL_UP, BL_BRTG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
-};
-
-bool led_update_user(led_t led_state) {
- writePin(B2, !led_state.caps_lock);
- return false;
-}
diff --git a/keyboards/kbdfans/kbd75/keymaps/noroadsleft/rules.mk b/keyboards/kbdfans/kbd75/keymaps/noroadsleft/rules.mk
deleted file mode 100644
index 20e13b74a2..0000000000
--- a/keyboards/kbdfans/kbd75/keymaps/noroadsleft/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-TAP_DANCE_ENABLE = yes
-DYNAMIC_MACRO_ENABLE = yes
-
-VIA_ENABLE = no
-LTO_ENABLE = yes
diff --git a/keyboards/kbdfans/kbdmini/config.h b/keyboards/kbdfans/kbdmini/config.h
index a3e8408094..be985880d0 100644
--- a/keyboards/kbdfans/kbdmini/config.h
+++ b/keyboards/kbdfans/kbdmini/config.h
@@ -53,7 +53,6 @@
// #define ENABLE_RGB_MATRIX_SOLID_SPLASH
// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_COUNT 1
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define RGB_MATRIX_LED_COUNT 52
#endif
diff --git a/keyboards/kbdfans/kbdmini/kbdmini.c b/keyboards/kbdfans/kbdmini/kbdmini.c
index 4dd76e974e..d46283b973 100644
--- a/keyboards/kbdfans/kbdmini/kbdmini.c
+++ b/keyboards/kbdfans/kbdmini/kbdmini.c
@@ -1,6 +1,6 @@
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, B_9, A_9, C_9 }, //LA33
{ 0, B_10, A_10, C_10 }, //LA37
{ 0, B_11, A_11, C_11 }, //LA41
diff --git a/keyboards/kbdfans/maja/config.h b/keyboards/kbdfans/maja/config.h
index 8f15d2619f..e07c5adf93 100755
--- a/keyboards/kbdfans/maja/config.h
+++ b/keyboards/kbdfans/maja/config.h
@@ -54,9 +54,8 @@
// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110110
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
#define DRIVER_1_LED_TOTAL 36
#define DRIVER_2_LED_TOTAL 31
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/kbdfans/maja/maja.c b/keyboards/kbdfans/maja/maja.c
index 43153808d9..d30d327113 100755
--- a/keyboards/kbdfans/maja/maja.c
+++ b/keyboards/kbdfans/maja/maja.c
@@ -1,6 +1,6 @@
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C2_1, C3_1, C4_1}, // LA0
{0, C1_1, C3_2, C4_2}, // LA1
{0, C1_2, C2_2, C4_3}, // LA2
diff --git a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/config.h b/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/config.h
deleted file mode 100644
index c79bb54ad2..0000000000
--- a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
-
-// #define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-// #define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// help for fast typist+dual function keys?
-#define PERMISSIVE_HOLD
-
-/* speed up mousekeys a bit */
-#define MOUSEKEY_DELAY 50
-#define MOUSEKEY_INTERVAL 20
-#define MOUSEKEY_MAX_SPEED 8
-#define MOUSEKEY_TIME_TO_MAX 30
-#define MOUSEKEY_WHEEL_MAX_SPEED 8
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 40
-
-#endif
diff --git a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/keymap.c b/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/keymap.c
deleted file mode 100644
index 78fdb0713c..0000000000
--- a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/keymap.c
+++ /dev/null
@@ -1,264 +0,0 @@
- /* Copyright 2015-2017 Christon DeWan
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "xtonhasvim.h"
-#include "fancylighting.h"
-
-/************************************
- * states
- ************************************/
-
-enum layers {
- _QWERTY,
- _LOWER,
- _RAISE,
- _ADJUST,
- _MOVE,
- _MOUSE,
- _CMD
-};
-
-extern uint8_t vim_cmd_layer(void) { return _CMD; }
-
-enum keymap_keycodes {
- RAISE = VIM_SAFE_RANGE,
- LOWER
-};
-
-/************************************
- * keymaps!
- ************************************/
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Ctrl*| A* | S | D | F | G | H | J | K | L | ;* | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Mouse| | Alt | GUI |Lower*| Space |Raise*| GUI | Alt | | Vim |
- * `-----------------------------------------------------------------------------------'
- *
- * - Ctrl acts as Esc when tapped.
- * - Holding ; switches to movement layer.
- * - Raise and Lower are one-shot layers.
- */
-[_QWERTY] = LAYOUT_planck_mit(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(_MOVE,KC_SCLN), KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- LSFT(KC_LALT), TG(_MOUSE), KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LGUI, KC_LALT, X_____X, VIM_START
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | ! | @ | # | $ | % | ^ | & | * | ( | ) | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | Next | Vol- | Vol+ | Play |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Bail | | | | | | | | Bail | |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_planck_mit(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSPC,
- KC_DEL, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, X_____X, X_____X, X_____X, X_____X, FIREY_RETURN,
- _______, TO(_QWERTY), _______, _______, _______, KC_BSPC, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | Next | Vol- | Vol+ | Play |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Bail | | | | | | | | Bail | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_planck_mit(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_DEL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, X_____X, X_____X, X_____X, X_____X, FIREY_RETURN,
- _______, TO(_QWERTY), _______, _______, _______, KC_BSPC, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-
-/* Adjust (Lower + Raise)
- * ,-------------------------------------------------------------------------------------.
- * |RGBPlain| Reset| | | | | | | | | | Del |
- * |--------+------+------+------+------+-------------+------+------+------+------+------|
- * |RGBMode-| | | | | | | | | | |Lite+ |
- * |--------+------+------+------+------+------|------+------+------+------+------+------|
- * |RGBMode+| | | | | | | Next | Vol- | Vol+ | Play |Lite- |
- * |--------+------+------+------+------+------+------+------+------+------+------+------|
- * | RGB | Bail | | | | | | | | Bail | |
- * `-------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_planck_mit(
- RGB_MODE_PLAIN, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
- RGB_MODE_REVERSE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,
- RGB_MODE_FORWARD, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, RGB_VAD,
- RGB_TOG, TO(_QWERTY), _______, _______, _______, _______, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-
-/* movement layer (hold semicolon)
- */
-[_MOVE] = LAYOUT_planck_mit(
- TO(_QWERTY), X_____X, X_____X, X_____X, X_____X, X_____X, KC_HOME, KC_PGDN, KC_PGUP, KC_END, X_____X, X_____X,
- _______, X_____X, LGUI(KC_LBRC), LGUI(LSFT(KC_LBRC)), LGUI(LSFT(KC_RBRC)), LGUI(KC_RBRC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, X_____X, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, TO(_QWERTY), _______, _______, _______, X_____X, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-/* mouse layer
- */
-[_MOUSE] = LAYOUT_planck_mit(
- TO(_QWERTY), X_____X, X_____X, KC_MS_UP, X_____X, X_____X, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_RIGHT, X_____X, X_____X,
- _______, X_____X, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, X_____X, X_____X, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, X_____X, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, TO(_QWERTY), _______, _______, _______, X_____X, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-/* vim command layer.
- */
-[_CMD] = LAYOUT_planck_mit(
- X_____X, X_____X, VIM_W, VIM_E, X_____X, X_____X, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, X_____X,
- VIM_ESC, VIM_A, VIM_S, VIM_D, X_____X, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, X_____X, X_____X,
- VIM_SHIFT, X_____X, VIM_X, VIM_C, VIM_V, VIM_B, X_____X, X_____X, VIM_COMMA, VIM_PERIOD, X_____X, VIM_SHIFT,
- _______, TO(_QWERTY), _______, _______, X_____X, X_____X, X_____X, _______, _______, TO(_QWERTY), X_____X
-)
-
-};
-
-#define C_RED 0xFF, 0x00, 0x00
-#define C_GRN 0x00, 0xFF, 0x00
-#define C_BLU 0x00, 0x00, 0xFF
-
-#define C_YAN 0x00, 0xFF, 0xFF
-#define C_PRP 0x7A, 0x00, 0xFF
-#define C_ORG 0xFF, 0x93, 0x00
-
-/** Set just 4 LEDs closest to the user. Slightly less annoying to bystanders.*/
-void rgbflag(uint8_t r, uint8_t g, uint8_t b, uint8_t rr, uint8_t gg, uint8_t bb) {
- LED_TYPE *target_led = user_rgb_mode ? shadowed_led : led;
- for (int i = 0; i < RGBLED_NUM; i++) {
- switch (i) {
- case 12: case 13:
- target_led[i].r = r;
- target_led[i].g = g;
- target_led[i].b = b;
- break;
- case 8: case 9:
- target_led[i].r = rr;
- target_led[i].g = gg;
- target_led[i].b = bb;
- break;
- default:
- target_led[i].r = 0;
- target_led[i].g = 0;
- target_led[i].b = 0;
- break;
- }
- }
- rgblight_set();
-}
-
-void set_state_leds(void) {
- if (rgblight_get_mode() == 1) {
- switch (get_highest_layer(layer_state)) {
- case _RAISE:
- rgbflag(C_BLU, C_GRN);
- break;
- case _LOWER:
- rgbflag(C_BLU, C_RED);
- break;
- case _ADJUST:
- rgbflag(C_BLU, C_PRP);
- break;
- case _MOVE:
- rgbflag(C_RED, C_PRP);
- break;
- case _MOUSE:
- rgbflag(C_RED, C_GRN);
- break;
- case _CMD:
- switch(vstate) {
- case VIM_V:
- case VIM_VI:
- case VIM_VS:
- rgbflag(C_GRN, C_YAN);
- break;
- case VIM_C:
- case VIM_CI:
- rgbflag(C_GRN, C_ORG);
- break;
- case VIM_D:
- case VIM_DI:
- rgbflag(C_GRN, C_RED);
- break;
- case VIM_G:
- rgbflag(C_GRN, C_BLU);
- break;
- case VIM_Y:
- rgbflag(C_GRN, C_PRP);
- break;
- case VIM_START:
- default:
- rgbflag(C_GRN, C_GRN);
- break;
- }
- break;
- default: // for any other layers, or the default layer
- rgbflag(C_YAN, C_YAN);
- break;
- }
- }
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch(keycode) {
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- }
- return true;
-}
diff --git a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/readme.md b/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/readme.md
deleted file mode 100644
index 9ff4ce1f19..0000000000
--- a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Xton has a tiny keyboard! With Vim!
-
-Based on the standard Planck layout with a few changes:
-
-* Escape moved to dual-function with control.
-* Dedicated movement and mouse layers.
-* Top and middle row swapped in `_RAISE` and `_LOWER` because I never use F-keys.
-* Vim layers! See `users/xtonhasvim`.
-
diff --git a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/rules.mk b/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/rules.mk
deleted file mode 100644
index 00946ff227..0000000000
--- a/keyboards/kbdfans/niu_mini/keymaps/xtonhasvim/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-MOUSEKEY_ENABLE = yes
-BACKLIGHT_ENABLE = no
-AUDIO_ENABLE = no
-CONSOLE_ENABLE = no # Console for debug(+400)
-
diff --git a/keyboards/kbdfans/niu_mini/keymaps/yttyx/keymap.c b/keyboards/kbdfans/niu_mini/keymaps/yttyx/keymap.c
index 55d5a80228..53ed794da8 100644
--- a/keyboards/kbdfans/niu_mini/keymaps/yttyx/keymap.c
+++ b/keyboards/kbdfans/niu_mini/keymaps/yttyx/keymap.c
@@ -1,6 +1,5 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum layers {
_BA, // Base (Balance Twelve mirror variant)
diff --git a/keyboards/kc60/info.json b/keyboards/kc60/info.json
index ea0e7998b8..5dbead0c5f 100644
--- a/keyboards/kc60/info.json
+++ b/keyboards/kc60/info.json
@@ -41,7 +41,7 @@
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
- "community_layouts": ["60_ansi"],
+ "community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_ansi_tsangan", "60_tsangan_hhkb", "60_hhkb", "60_abnt2", "60_iso", "60_iso_split_bs_rshift", "60_iso_tsangan"],
"layouts": {
"LAYOUT_all": {
"layout": [
@@ -116,7 +116,7 @@
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
]
},
- "LAYOUT": {
+ "LAYOUT_60_ansi": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
@@ -131,7 +131,7 @@
{"matrix": [0, 10], "x": 10, "y": 0},
{"matrix": [0, 11], "x": 11, "y": 0},
{"matrix": [0, 12], "x": 12, "y": 0},
- {"matrix": [0, 13], "x": 13, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
{"matrix": [1, 1], "x": 1.5, "y": 1},
@@ -160,11 +160,9 @@
{"matrix": [2, 9], "x": 9.75, "y": 2},
{"matrix": [2, 10], "x": 10.75, "y": 2},
{"matrix": [2, 11], "x": 11.75, "y": 2},
- {"matrix": [2, 12], "x": 12.75, "y": 2},
- {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
- {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
- {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
{"matrix": [3, 2], "x": 2.25, "y": 3},
{"matrix": [3, 3], "x": 3.25, "y": 3},
{"matrix": [3, 4], "x": 4.25, "y": 3},
@@ -175,21 +173,90 @@
{"matrix": [3, 9], "x": 9.25, "y": 3},
{"matrix": [3, 10], "x": 10.25, "y": 3},
{"matrix": [3, 11], "x": 11.25, "y": 3},
- {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
- {"matrix": [3, 13], "x": 14, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
{"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_bs_rshift": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0},
{"matrix": [4, 9], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
+ {"matrix": [3, 12], "x": 14, "y": 3},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
{"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
{"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
{"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
]
},
- "LAYOUT_60_ansi": {
+ "LAYOUT_60_ansi_tsangan": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
@@ -248,6 +315,424 @@
{"matrix": [3, 11], "x": 11.25, "y": 3},
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"matrix": [4, 1], "x": 1.5, "y": 4},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
+ {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"matrix": [4, 12], "x": 12.5, "y": 4},
+ {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_tsangan_hhkb": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0},
+ {"matrix": [4, 9], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
+ {"matrix": [3, 12], "x": 14, "y": 3},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"matrix": [4, 1], "x": 1.5, "y": 4},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
+ {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"matrix": [4, 12], "x": 12.5, "y": 4},
+ {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_hhkb": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0},
+ {"matrix": [4, 9], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
+ {"matrix": [3, 12], "x": 14, "y": 3},
+
+ {"matrix": [4, 1], "x": 1.5, "y": 4},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
+ {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"matrix": [4, 12], "x": 12.5, "y": 4}
+ ]
+ },
+ "LAYOUT_60_true_hhkb": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0},
+ {"matrix": [4, 9], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
+ {"matrix": [3, 12], "x": 14, "y": 3},
+
+ {"matrix": [4, 1], "x": 1.5, "y": 4},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"matrix": [4, 5], "x": 4, "y": 4, "w": 6},
+ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
+ {"matrix": [4, 11], "x": 11.5, "y": 4}
+ ]
+ },
+ "LAYOUT_60_abnt2": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 12], "x": 12.75, "y": 2},
+ {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3},
+ {"matrix": [3, 13], "x": 13.25, "y": 3, "w": 1.75},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 12], "x": 12.75, "y": 2},
+ {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_iso_split_bs_rshift": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0},
+ {"matrix": [4, 9], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 12], "x": 12.75, "y": 2},
+ {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
+ {"matrix": [3, 12], "x": 14, "y": 3},
+
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
@@ -257,6 +742,146 @@
{"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
]
+ },
+ "LAYOUT_60_iso_tsangan": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 12], "x": 12.75, "y": 2},
+ {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"matrix": [4, 1], "x": 1.5, "y": 4},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
+ {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"matrix": [4, 12], "x": 12.5, "y": 4},
+ {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_iso_tsangan_split_bs_rshift": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0},
+ {"matrix": [4, 9], "x": 14, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 12], "x": 12.75, "y": 2},
+ {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
+ {"matrix": [3, 12], "x": 14, "y": 3},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
+ {"matrix": [4, 1], "x": 1.5, "y": 4},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
+ {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
+ {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
+ {"matrix": [4, 12], "x": 12.5, "y": 4},
+ {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
+ ]
}
}
}
diff --git a/keyboards/kc60/keymaps/dbroqua/keymap.c b/keyboards/kc60/keymaps/dbroqua/keymap.c
index ee489bbe91..22ef319103 100644
--- a/keyboards/kc60/keymaps/dbroqua/keymap.c
+++ b/keyboards/kc60/keymaps/dbroqua/keymap.c
@@ -1,82 +1,73 @@
#include QMK_KEYBOARD_H
-#define _QWERTY 0
-#define _FNCAPS 1
-#define _FNRIGHTSHIFT 2
-
-// Fillers to make layering more clear
-#define ______ KC_TRNS
-
-/*
- * | | |
- * | | |
- * | | |
- * | | |
- * | |
- */
+enum layer_names {
+ _QWERTY,
+ _FNCAPS,
+ _FNRIGHTSHIFT
+};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- * ,-----------------------------------------------------------------------------------------.
- * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
- * |-----------------------------------------------------------------------------------------+
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp |
- * |-----------------------------------------------------------------------------------------+
- * | Caps/FN1| A | S | D | F | G | H | J | K | L | ; | ' | Enter |
- * |-----------------------------------------------------------------------------------------+
- * | Shift | Z | X | C | V | B | N | M | , | . | / | Up | FN2 |
- * |-----------------------------------------------------------------------------------------+
- * | Ctrl | Gui | Alt | Space | AltGr | Left | Down | Right |
- * `-----------------------------------------------------------------------------------------'
- */
- [0] = LAYOUT( /* Basic QWERTY */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- LT(_FNCAPS, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_FNRIGHTSHIFT), KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_GRV, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
+ /* Qwerty
+ * ,-----------------------------------------------------------------------------------------.
+ * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
+ * |-----------------------------------------------------------------------------------------+
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp |
+ * |-----------------------------------------------------------------------------------------+
+ * | Caps/FN1| A | S | D | F | G | H | J | K | L | ; | ' | Enter |
+ * |-----------------------------------------------------------------------------------------+
+ * | Shift | Z | X | C | V | B | N | M | , | . | / | Up | FN2 |
+ * |-----------------------------------------------------------------------------------------+
+ * | Ctrl | Gui | Alt | Space | AltGr | Left | Down | Right |
+ * `-----------------------------------------------------------------------------------------'
+ */
+ [0] = LAYOUT_all( /* Basic QWERTY */
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
+ LT(_FNCAPS, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
+ KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FNRIGHTSHIFT),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT
+ ),
-/* Layer 1
- * ,-----------------------------------------------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | | | Psc | | | | | |
- * |-----------------------------------------------------------------------------------------+
- * | | Led | Led+| Led-| | Mute| Vol+| Vol-| | | | Play | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | Prev | Stop | Next |
- * `-----------------------------------------------------------------------------------------'
- */
- [_FNCAPS] = LAYOUT( /* Layer 1 */
- ______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS,
- ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
- ______, ______, ______, ______, ______, ______, ______, KC_PSCR,______, ______, ______, ______, ______, ______,
- ______, ______, BL_TOGG, BL_UP, BL_DOWN,______,KC_MUTE,KC_VOLU,KC_VOLD,______, ______, ______, ______,KC_MPLY,
- ______, ______, ______, ______, KC_DEL, ______, KC_MPRV, KC_MSTP, KC_MNXT
- ),
+ /* Layer 1
+ * ,-----------------------------------------------------------------------------------------.
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | | | Psc | | | | | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | Led | Led+| Led-| | Mute| Vol+| Vol-| | | | Play | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | Prev | Stop | Next |
+ * `-----------------------------------------------------------------------------------------'
+ */
+ [_FNCAPS] = LAYOUT_all( /* Layer 1 */
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______,
+ _______, _______, BL_TOGG, BL_UP, BL_DOWN, _______, KC_MUTE, KC_VOLU, KC_VOLD, _______, _______, _______, KC_MPLY, _______,
+ _______, _______, _______, _______, _______, KC_MPRV, KC_MSTP, KC_MNXT
+ ),
-/* Layer 2
- * ,-----------------------------------------------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | | | | | | | | | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | | | | | | | | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | | | | | | | PgUp | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | | | Home | PgDown| End |
- * `-----------------------------------------------------------------------------------------'
- */
- [_FNRIGHTSHIFT] = LAYOUT( /* Layer 2 */
- ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
- ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
- ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
- ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_PGUP,
- ______, ______, ______, ______, ______, ______, KC_HOME,KC_PGDN,KC_END
- ),
+ /* Layer 2
+ * ,-----------------------------------------------------------------------------------------.
+ * | | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | | | | | | | | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | | | | | | | PgUp | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | | | Home | PgDown| End |
+ * `-----------------------------------------------------------------------------------------'
+ */
+ [_FNRIGHTSHIFT] = LAYOUT_all( /* Layer 2 */
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
+ ),
};
diff --git a/keyboards/kc60/keymaps/dbroqua_hhkb/keymap.c b/keyboards/kc60/keymaps/dbroqua_hhkb/keymap.c
index be15be6174..2189e5bc5c 100644
--- a/keyboards/kc60/keymaps/dbroqua_hhkb/keymap.c
+++ b/keyboards/kc60/keymaps/dbroqua_hhkb/keymap.c
@@ -1,52 +1,51 @@
#include QMK_KEYBOARD_H
-#define _QWERTY 0
-#define _FN 1
-
-// Fillers to make layering more clear
-#define ______ KC_TRNS
+enum layer_names {
+ _QWERTY,
+ _FN
+};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- * ,-----------------------------------------------------------------------------------------.
- * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
- * |-----------------------------------------------------------------------------------------+
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp |
- * |-----------------------------------------------------------------------------------------+
- * | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
- * |-----------------------------------------------------------------------------------------+
- * | Shift | Z | X | C | V | B | N | M | , | . | / | RShift | FN |
- * |-----------------------------------------------------------------------------------------+
- * | LGUI | LAlt | Space | RAlt | RGUI |
- * `-----------------------------------------------------------------'
- */
- [0] = LAYOUT( /* Basic QWERTY */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_FN), KC_RSFT,
- ______, KC_LGUI, KC_LALT, KC_SPC, KC_GRV, KC_RALT, KC_RGUI, ______, ______
- ),
+ /* Qwerty
+ * ,-----------------------------------------------------------------------------------------.
+ * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
+ * |-----------------------------------------------------------------------------------------+
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp |
+ * |-----------------------------------------------------------------------------------------+
+ * | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
+ * |-----------------------------------------------------------------------------------------+
+ * | Shift | Z | X | C | V | B | N | M | , | . | / | RShift | FN |
+ * |-----------------------------------------------------------------------------------------+
+ * | LGUI | LAlt | Space | RAlt | RGUI |
+ * `-----------------------------------------------------------------'
+ */
+ [0] = LAYOUT_all( /* Basic QWERTY */
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
+ KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
+ KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN),
+ _______, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, _______, _______
+ ),
-/* Layer 1
- * ,-----------------------------------------------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
- * |-----------------------------------------------------------------------------------------+
- * | CAPS | Led | Led-| Led+| | | | | Psc | Slck| Paus| Up | | |
- * |-----------------------------------------------------------------------------------------+
- * | | Vol-| Vol+| Mute| | | * | / | Home| PgUp| Left|Right| |
- * |-----------------------------------------------------------------------------------------+
- * | | Prev| Play| Next| | | + | - | End |PgDn| Down| | |
- * |-----------------------------------------------------------------------------------------+
- * | | | | Stop | |
- * `-----------------------------------------------------------------'
- */
- [_FN] = LAYOUT( /* Layer 1 */
- ______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS,
- KC_CAPS, BL_TOGG, BL_UP, BL_DOWN,______, ______, ______, ______, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, ______, ______,
- ______, KC_VOLD, KC_VOLU, KC_MUTE, ______, ______, KC_PAST, KC_PSLS,KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, ______, ______,
- ______, ______, KC_MPRV, KC_MPLY, KC_MNXT,______,______,KC_PPLS,KC_PMNS,KC_END, KC_PGDN, KC_DOWN, ______,______,
- ______, ______, ______, ______, KC_DEL, KC_MSTP, ______, ______, ______
- )
+ /* Layer 1
+ * ,-----------------------------------------------------------------------------------------.
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
+ * |-----------------------------------------------------------------------------------------+
+ * | CAPS | Led | Led-| Led+| | | | | Psc | Slck| Paus| Up | | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | Vol-| Vol+| Mute| | | * | / | Home| PgUp| Left|Right| |
+ * |-----------------------------------------------------------------------------------------+
+ * | | Prev| Play| Next| | | + | - | End |PgDn| Down| | |
+ * |-----------------------------------------------------------------------------------------+
+ * | | | | Stop | |
+ * `-----------------------------------------------------------------'
+ */
+ [_FN] = LAYOUT_all( /* Layer 1 */
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
+ KC_CAPS, BL_TOGG, BL_UP, BL_DOWN, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, _______, _______,
+ _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______,
+ _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______,
+ _______, _______, _______, _______, KC_MSTP, _______, _______, _______
+ )
};
diff --git a/keyboards/kc60/keymaps/default/keymap.c b/keyboards/kc60/keymaps/default/keymap.c
index dfadce34d8..b135569e91 100644
--- a/keyboards/kc60/keymaps/default/keymap.c
+++ b/keyboards/kc60/keymaps/default/keymap.c
@@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL
),
[1] = LAYOUT_all(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX,
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SCRL, KC_PAUS,
XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX,
_______, XXXXXXX, XXXXXXX, BL_DOWN, BL_TOGG, BL_UP, BL_BRTG, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, _______, _______,
diff --git a/keyboards/kc60/keymaps/noroadsleft/config.h b/keyboards/kc60/keymaps/noroadsleft/config.h
deleted file mode 100644
index 1078f3b025..0000000000
--- a/keyboards/kc60/keymaps/noroadsleft/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2018-2020 James Young (@noroadsleft)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define PERMISSIVE_HOLD // https://docs.qmk.fm/#/feature_advanced_keycodes?id=permissive-hold
-
-// Enable single-color backlighting
-#define BACKLIGHT_BREATHING
-#define BACKLIGHT_LEVELS 5
-#define BREATHING_PERIOD 4
-
-#ifdef LOCKING_SUPPORT_ENABLE
-# undef LOCKING_SUPPORT_ENABLE
-#endif
-#ifdef LOCKING_RESYNC_ENABLE
-# undef LOCKING_RESYNC_ENABLE
-#endif
-
-#define NO_ACTION_ONESHOT
-
-#define ANSI_NUBS_ROW 3
-#define ANSI_NUBS_COL 2
diff --git a/keyboards/kc60/keymaps/noroadsleft/keymap.c b/keyboards/kc60/keymaps/noroadsleft/keymap.c
deleted file mode 100644
index eb528c3448..0000000000
--- a/keyboards/kc60/keymaps/noroadsleft/keymap.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/* Copyright 2018-2022 James Young (@noroadsleft)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "noroadsleft.h"
-
-
-// LAYER DEFINITIONS
-enum layer_names {
- // BASE LAYERS
- _DV,
- _QW,
- _CM,
- // QUAKE 2 OVERLAY
- _Q2,
- // FUNCTION LAYER
- _FN,
- // OTHER LAYERS
- _NP,
- _MA,
- _SY,
-};
-
-
-// KEYCODE DEFINITIONS
-#define FN_CAPS LT(_FN, KC_CAPS) // Function Layer when held, Caps Lock when tapped
-#define CTL_GRV MT(MOD_LCTL, KC_GRV) // Left Control when held, Grave accent when tapped
-
-
-// KEYMAPS
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- // BASE LAYERS
-
- [_DV] = LAYOUT_60_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSLS,
- FN_CAPS, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_ENT,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT,
- CTL_GRV, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_MA), MO(_FN), KC_RCTL
- ),
-
- [_QW] = LAYOUT_60_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- CTL_GRV, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_MA), MO(_FN), KC_RCTL
- ),
-
- [_CM] = LAYOUT_60_ansi(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS,
- FN_CAPS, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- CTL_GRV, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_MA), MO(_FN), KC_RCTL
- ),
-
- // QUAKE 2 OVERLAYS
-
- [_Q2] = LAYOUT_60_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_GRV, _______, _______, _______, _______, _______, _______, _______
- ),
-
- // FUNCTION LAYER
-
- [_FN] = LAYOUT_60_ansi(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, KC_CALC, KC_APP, _______, _______, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SCRL, KC_PAUS,
- _______, M_SALL, _______, _______, _______, _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, KC_PENT,
- _______, M_UNDO, M_CUT, M_COPY, M_PASTE, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, TG(_SY), _______,
- _______, _______, _______, TG(_NP), _______, _______, _______, _______
- ),
-
- // OTHER LAYERS
-
- [_NP] = LAYOUT_60_ansi(
- _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______,
- _______, _______, _______, _______, KC_E, KC_F, _______, KC_P4, KC_P5, KC_P6, KC_PAST, KC_PSLS, KC_PEQL, _______,
- _______, _______, _______, _______, KC_C, KC_D, _______, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PMNS, KC_PENT,
- _______, _______, _______, _______, KC_A, KC_B, _______, KC_P0, _______, KC_PDOT, _______, _______,
- _______, _______, _______, TG(_NP), _______, _______, _______, _______
- ),
-
- [_MA] = LAYOUT_60_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DM_REC1, DM_REC2, _______,
- _______, _______, _______, G_PUSH, _______, _______, _______, _______, _______, _______, _______, DM_PLY1, DM_PLY2, DM_RSTP,
- _______, _______, _______, G_FTCH, G_PWD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, G_BRCH, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_SY] = LAYOUT_60_ansi(
- TG(_SY), TO(_DV), TO(_QW), TO(_CM), TG(_Q2), XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, DB_TOGG, XXXXXXX, VRSN, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, BL_DOWN, BL_TOGG, BL_UP, BL_BRTG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX
- ),
-
-};
diff --git a/keyboards/kc60/keymaps/noroadsleft/readme.md b/keyboards/kc60/keymaps/noroadsleft/readme.md
deleted file mode 100644
index cddc1fd976..0000000000
--- a/keyboards/kc60/keymaps/noroadsleft/readme.md
+++ /dev/null
@@ -1,135 +0,0 @@
-# @noroadsleft's KC60 keymap
-
-### Last updated: November 9, 2021, 9:47 (-0800)
-
-![](https://i.imgur.com/tzhXQYIl.jpg)
-
-I am a full-time Dvorak typist, and occasional semi-serious FPS gamer. The layers are oriented towards a mix of typing and gaming.
-
-
-----
-
-## Preface
-
-Images in this readme follow the following format:
-
-![Legend](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/legend.png)
-*Legend*
-
-Descriptions of the physical locations of keys will use the key's function in a US QWERTY layout, even if the layout itself is not QWERTY.
-
-
-----
-
-## Outline
-
-- [Base Layers](#base-layers)
- - Layer 0: Dvorak `_DV`
- - Layer 1: QWERTY `_QW`
- - Layer 2: Colemak `_CM`
-- [Quake 2 Layer](#quake-2-layer)
- - Layer 3: Quake 2 `_Q2`
-- [Function Layer](#function-layer)
- - Layer 4: Fn layer `_FN`
-- [Other Layers](#other-layers)
- - Layer 5: Numpad layer `_NP`
- - Layer 6: Macro layer `_MA`
- - Layer 7: System layer `_SY`
-
-
-----
-
-## Base Layers
-
-My base layers are pretty standard for a 60%, with the following changes:
-
-- The `Menu` key has been replaced by `MO(_FN)`, which moves to my Function layer when held.
-- The Right `GUI` key has been replaced with a `MO(_MA)` key, which moves to the Macro layer when held.
-- The `Caps Lock` key has been replaced with a dual function `LT()` key, which opens the Function layer when held, and is `Caps Lock` when tapped.
-- The Left `Control` key has been replaced with a `MT(MOD_CTRL, KC_GRV)` key, which is `Ctrl` when held and <code>&#96; ~</code> when tapped.
-- The Number Row `1` through `0` keys will send Numeric Keypad keycodes instead of Number Row keycodes if tapped while `Right Alt` is active. This functionality is documented in [my userspace readme](../../../../users/noroadsleft/readme.md#emulated-numeric-keypad).
-
-### Layer 0: Dvorak - `_DV`
-
-A hardware-based Dvorak Simplified layout. In this layer, I can leave the host system in QWERTY, plug my keyboard in, and still type in Dvorak.
-
-![Dvorak layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/dvorak.png)
-
-
-### Layer 1: QWERTY - `_QW`
-
-- Accessed by holding either `Fn` and tapping `/?` key, then tapping `2@`.
-
-For when other people need to use my keyboard. :)
-
-![QWERTY layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/qwerty.png)
-
-
-### Layer 2: Hardware Colemak `_CM`
-
-- Accessed by holding either `Fn` and tapping `/?` key, then tapping `3#`.
-
-A hardware-based Colemak layout. Been thinking of trying it, so it's here.
-
-![Colemak layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/colemak.png)
-
-
-----
-
-## Quake 2 Layer
-
-### Layer 3: Quake 2 `_Q2`
-
-- Accessed by holding either `Fn` key and tapping the `/?` key, then tapping `4$`
-
-I used to have some macro craziness here. I've now switched to leaving my main system in QWERTY and having the Dvorak stuff happen on the keyboard, and setting my in-game key assignments to the Dvorak mapping (`.OEU` instead of `ESDF`).
-
-![Quake 2](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/quake2.png)
-
-
-----
-
-## Function Layer
-
-### Layer 4: Function layer - `_FN`
-
-- Accessed by holding either `Fn` key from any base layer
-
-Arrows, Navigation keys (Insert, Home, Page Up, etc.), and Function keys are here. Also has keys for Calculator, Menu, Volume Control, and shortcuts for Select All, Undo, Cut, Copy, and Paste. Numpad Enter for when I'm working in Adobe Photoshop, because it treats Numpad Enter differently from the regular Enter key.
-
-Similarly to my Emulated Numeric Keypad functionality, the `F1` through `F12` keys will change to `F13` through `F24` while `Right Alt` is active. This functionality is documented in [my userspace readme](../../../../users/noroadsleft/readme.md#emulated-extended-function-keys).
-
-![Fn layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/function.png)
-
-
-----
-
-## Other Layers
-
-### Layer 5: Numpad layer - `_NP`
-
-- Accessed by holding either `Fn` key and tapping `Space`, from any of the Base Layers
-
-Puts a Numpad on the right-hand side of the keyboard. A through F included for hexadecimal input. Tapping `Space` returns to the previous Base Layer.
-
-![Numpad layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/numpad.png)
-
-
-### Layer 6: Macro layer - `_MA`
-
-- Accessed by holding the right-side `Win` key
-
-Has some macros that I use in Git, and keys for use with the [Dynamic Macros feature](https://docs.qmk.fm/#/feature_dynamic_macros).
-
-For macro documentation, see [my userspace readme](../../../../users/noroadsleft/readme.md).
-
-![Macro layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/macros.png)
-
-
-### Layer 7: System layer - `_SY`
-
-- Accessed by holding either `Fn` key and tapping the `/?` key
-
-This is where I change my keyboard function. Base layer select on `1` through `4`, Backlight controls on `C` through `N`, Reset on `8*`, Debug on `0)`. Hitting `Esc` exits the layer.
-
-![System layer](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/kc60/keymaps/noroadsleft/system.png)
diff --git a/keyboards/kc60/keymaps/noroadsleft/rules.mk b/keyboards/kc60/keymaps/noroadsleft/rules.mk
deleted file mode 100644
index cd417e76b1..0000000000
--- a/keyboards/kc60/keymaps/noroadsleft/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-MOUSEKEY_ENABLE = no # Mouse keys
-# COMMAND_ENABLE = no # Commands for debug and configuration
-SPACE_CADET_ENABLE = no # Space Cadet
-DYNAMIC_MACRO_ENABLE = yes
-
-LTO_ENABLE = yes
diff --git a/keyboards/kc60/keymaps/sgoodwin/keymap.c b/keyboards/kc60/keymaps/sgoodwin/keymap.c
index 75091a1557..e62e89d016 100644
--- a/keyboards/kc60/keymaps/sgoodwin/keymap.c
+++ b/keyboards/kc60/keymaps/sgoodwin/keymap.c
@@ -2,29 +2,29 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- * Toggles between colemak and qwerty by tapping the bottom right key.
- * Holding capslock key gives a layer like the KBParadise v60.
- */
- [0] = LAYOUT( /* Basic Colemak */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS,
- MO(2), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_NO, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, KC_RSFT,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_NO, KC_RGUI, KC_RALT, KC_RCTL, DF(1)
- ),
- [1] = LAYOUT( /* Basic QWERTY */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, KC_RSFT,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_NO, KC_RGUI, KC_RALT, KC_RCTL, DF(0)
- ),
- [2] = LAYOUT( /* KBP v60-like arrows, media keys, etc */
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, BL_UP, BL_DOWN, BL_STEP,
- KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_NO, KC_TRNS,
- KC_TRNS, KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_NO, DB_TOGG, QK_BOOT, KC_TRNS, KC_NO
- ),
+ /*
+ * Toggles between colemak and qwerty by tapping the bottom right key.
+ * Holding capslock key gives a layer like the KBParadise v60.
+ */
+ [0] = LAYOUT_all( /* Basic Colemak */
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO,
+ KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS,
+ MO(2), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_NO, KC_ENT,
+ KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, DF(1)
+ ),
+ [1] = LAYOUT_all( /* Basic QWERTY */
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
+ KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, DF(0)
+ ),
+ [2] = LAYOUT_all( /* KBP v60-like arrows, media keys, etc */
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_NO,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, BL_UP, BL_DOWN, BL_STEP,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_NO, KC_TRNS,
+ KC_TRNS, KC_NO, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, DB_TOGG, QK_BOOT, KC_TRNS, KC_NO
+ ),
};
diff --git a/keyboards/kc60/keymaps/stanleylai/config.h b/keyboards/kc60/keymaps/stanleylai/config.h
deleted file mode 100644
index b5024a6d02..0000000000
--- a/keyboards/kc60/keymaps/stanleylai/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-// Use configs from WS2812 enabled Keymap
-
-#include "../ws2812/config.h"
diff --git a/keyboards/kc60/keymaps/stanleylai/keymap.c b/keyboards/kc60/keymaps/stanleylai/keymap.c
index 9440ab1c78..6a1503ce64 100644
--- a/keyboards/kc60/keymaps/stanleylai/keymap.c
+++ b/keyboards/kc60/keymaps/stanleylai/keymap.c
@@ -5,45 +5,47 @@
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
-#define _BL 0
-#define _FL 1
-#define _RGBL 2
+enum layer_names {
+ _BL,
+ _FL,
+ _RGBL
+};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-// See base_layer.png and rgb_layer.png for layout reference
+ // See base_layer.png and rgb_layer.png for layout reference
-// Base Default Layer
-// Mac Modifier Layout. Use BootMagic to toggle GUI and ALT positions.
-[_BL] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- LT(_FL, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_NO, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, MO(_FL), KC_UP,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_NO, KC_RGUI,KC_LEFT, KC_DOWN, KC_RGHT),
+ // Base Default Layer
+ // Mac Modifier Layout. Use BootMagic to toggle GUI and ALT positions.
+ [_BL] = LAYOUT_all(
+ QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ LT(_FL, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
+ KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FL),
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT),
-// Function layer
-[_FL] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- KC_NO, KC_MPRV,KC_UP, KC_MNXT,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR,KC_SCRL, KC_PAUS, KC_INS,
- KC_TRNS,KC_LEFT,KC_DOWN,KC_RGHT,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_TRNS,KC_NO, KC_MUTE,KC_VOLD,KC_VOLU,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, LT(_RGBL, KC_PGUP),
- KC_TRNS,KC_TRNS,KC_TRNS, KC_MPLY, KC_NO, KC_TRNS,KC_HOME, KC_PGDN, KC_END),
+ // Function layer
+ [_FL] = LAYOUT_all(
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_NO,
+ KC_NO, KC_MPRV, KC_UP, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LT(_RGBL, KC_PGUP), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_HOME, KC_PGDN, KC_END),
-// RGB Layer
-[_RGBL] = LAYOUT(
- #ifdef RGBLIGHT_ENABLE
- QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_TRNS,KC_NO, RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,BL_STEP,BL_TOGG, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_NO, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS
- #else
- QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_TRNS,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, BL_STEP,BL_TOGG, KC_TRNS, KC_TRNS,
- KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_NO, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS
- #endif
- ),
+ // RGB Layer
+ [_RGBL] = LAYOUT_all(
+ #ifdef RGBLIGHT_ENABLE
+ QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_NO, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, BL_TOGG, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ #else
+ QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, BL_STEP, BL_TOGG, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ #endif
+ ),
};
diff --git a/keyboards/kc60/keymaps/via/keymap.c b/keyboards/kc60/keymaps/via/keymap.c
index d8925172fd..877d62e04f 100644
--- a/keyboards/kc60/keymaps/via/keymap.c
+++ b/keyboards/kc60/keymaps/via/keymap.c
@@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL
),
[1] = LAYOUT_all(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX,
+ QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SCRL, KC_PAUS,
XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX,
_______, XXXXXXX, XXXXXXX, BL_DOWN, BL_TOGG, BL_UP, BL_BRTG, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, _______, _______,
diff --git a/keyboards/kc60/keymaps/wigguno/keymap.c b/keyboards/kc60/keymaps/wigguno/keymap.c
index 8d1ae5f1c5..ba4571c4e4 100644
--- a/keyboards/kc60/keymaps/wigguno/keymap.c
+++ b/keyboards/kc60/keymaps/wigguno/keymap.c
@@ -6,47 +6,47 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Basic QWERTY
- * ,-----------------------------------------------------------.
- * |Esc | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |
- * |-----------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |
- * |-----------------------------------------------------------|
- * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return |
- * |-----------------------------------------------------------|
- * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |
- * |-----------------------------------------------------------|
- * |Ctrl|Gui |Alt | Space |Alt |FN |Gui |Ctrl |
- * `-----------------------------------------------------------'
- */
- [0] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_NO, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_RALT, MO(1), KC_RGUI, KC_RCTL
- ),
+ /* Basic QWERTY
+ * ,-----------------------------------------------------------.
+ * |Esc | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |
+ * |-----------------------------------------------------------|
+ * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |
+ * |-----------------------------------------------------------|
+ * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return |
+ * |-----------------------------------------------------------|
+ * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |
+ * |-----------------------------------------------------------|
+ * |Ctrl|Gui |Alt | Space |Alt |FN |Gui |Ctrl |
+ * `-----------------------------------------------------------'
+ */
+ [0] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
+ KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL
+ ),
- /*
- * ,-----------------------------------------------------------.
- * | ` |F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Del |
- * |-----------------------------------------------------------|
- * | | | Up| | | | | | | | PS| | | |
- * |-----------------------------------------------------------|
- * | |Lft|Dwn|Rgt| |BL-|BL+| | | | | | |
- * |-----------------------------------------------------------|
- * | |Prv| PP|Nxt| | | | |Hom|End| | |
- * |-----------------------------------------------------------|
- * | Rst| | | BL | | | | |
- * `-----------------------------------------------------------'
- * PS = Print Screen
- * PP = Play/Pause
- */
- [1] = LAYOUT( /* Function Layer */
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DELETE,
- KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, BL_DOWN, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_TRNS, KC_TRNS, KC_TRNS,
- QK_BOOT, KC_TRNS, KC_TRNS, BL_TOGG, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
+ /*
+ * ,-----------------------------------------------------------.
+ * | ` |F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Del |
+ * |-----------------------------------------------------------|
+ * | | | Up| | | | | | | | PS| | | |
+ * |-----------------------------------------------------------|
+ * | |Lft|Dwn|Rgt| |BL-|BL+| | | | | | |
+ * |-----------------------------------------------------------|
+ * | |Prv| PP|Nxt| | | | |Hom|End| | |
+ * |-----------------------------------------------------------|
+ * | Rst| | | BL | | | | |
+ * `-----------------------------------------------------------'
+ * PS = Print Screen
+ * PP = Play/Pause
+ */
+ [1] = LAYOUT_all( /* Function Layer */
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_NO,
+ KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, BL_DOWN, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_TRNS, KC_TRNS, KC_TRNS,
+ QK_BOOT, KC_TRNS, KC_TRNS, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
};
diff --git a/keyboards/kc60/matrix_diagram.md b/keyboards/kc60/matrix_diagram.md
new file mode 100644
index 0000000000..d8d63ca5ec
--- /dev/null
+++ b/keyboards/kc60/matrix_diagram.md
@@ -0,0 +1,33 @@
+# Matrix Diagram for NPKC KC60
+
+```
+ ┌───────┐
+ 2u Backspace │0D │
+ └───────┘
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │49 │
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ┌─────┐
+│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ │ │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌──┴┐2D │ ISO Enter
+│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │ │2C │ │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ └───┴────┘
+│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │3C │
+├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤
+│40 │41 │42 │45 │4A │4B │4C │4D │
+└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+┌────────┐ ┌──────────┐
+│30 │ 2.25u LShift 2.75u RShift │3D │
+└────────┘ └──────────┘
+ ┌───┬──────┐
+ 1u/1.75u RShift (JIS) │3C │3D │
+ └───┴──────┘
+┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
+│40 │41 │42 │45 │4B │4C │4D │ Tsangan/WKL/HHKB
+└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
+┌─────┬───┬─────┬───────────────────────┬─────┬───┬───┬─────┐
+│40 │41 │42 │45 │4A │4B │4C │4D │ 6u Spacebar
+└─────┴───┴─────┴───────────────────────┴─────┴───┴───┴─────┘
+ ┌───┬─────┬───────────────────────┬─────┬───┐
+ │41 │42 │45 │4A │4B │ True HHKB
+ └───┴─────┴───────────────────────┴─────┴───┘
+```
diff --git a/keyboards/keebio/bdn9/keymaps/bcat/keymap.c b/keyboards/keebio/bdn9/keymaps/bcat/keymap.c
deleted file mode 100644
index 9d4c26f8cb..0000000000
--- a/keyboards/keebio/bdn9/keymaps/bcat/keymap.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "bcat.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- [LAYER_DEFAULT] = LAYOUT(
- KC_MUTE, LY_FN1, BL_BRTG,
- KC_F4, KC_F5, KC_F6,
- KC_F1, KC_F2, KC_F3
- ),
- [LAYER_FUNCTION_1] = LAYOUT(
- EE_CLR, _______, QK_BOOT,
- KC_F10, KC_F11, KC_F12,
- KC_F7, KC_F8, KC_F9
- ),
- // clang-format on
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- switch (index) {
- /* Top-left encoder (volume) */
- case 0:
- tap_code(clockwise ? KC_VOLU : KC_VOLD);
- return false;
- /* Top-right encoder (backlight brightness) */
- case 1:
-#if defined(BACKLIGHT_ENABLE)
- if (clockwise) {
- backlight_increase();
- } else {
- backlight_decrease();
- }
-#endif
- return false;
- }
- return true;
-}
diff --git a/keyboards/keebio/bdn9/keymaps/bcat/readme.md b/keyboards/keebio/bdn9/keymaps/bcat/readme.md
deleted file mode 100644
index 277d9bfb18..0000000000
--- a/keyboards/keebio/bdn9/keymaps/bcat/readme.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# bcat's BDN9 layout
-
-This is a simple macropad with seven keys and two rotary encoders. We use one
-encoder for volume and the other for backlight brightness. Six of the keys are
-F keys (for gaming, since I use keyboards without function keys normally), with
-the remaining key a layer toggle that switches the function keys between F1-F6
-and F7-F12.
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/config.h b/keyboards/keebio/bdn9/keymaps/brandonschlack/config.h
deleted file mode 100644
index 16d5bf6ea8..0000000000
--- a/keyboards/keebio/bdn9/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define ENCODER_DIRECTION_FLIP
-
-#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
-#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
-#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#undef RGBLIGHT_EFFECT_SNAKE
-#undef RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_CHRISTMAS
-#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
-#undef RGBLIGHT_EFFECT_RGB_TEST
-#undef RGBLIGHT_EFFECT_ALTERNATING
-#undef RGBLIGHT_EFFECT_TWINKLE
-
-
-/* Mouse Keys Configuration */
-#define MK_3_SPEED
-#define MK_W_INTERVAL_UNMOD 20
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c b/keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index afe150cc60..0000000000
--- a/keyboards/keebio/bdn9/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,394 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-/**
- * Layer Names
- */
-enum bdn9_layers {
- _REEDER = 0,
- _MEDIA,
- _NAVI,
- _KARABINER,
- LR_NAV,
- LR_REVIEW,
- LR_EDIT
-};
-
-#define _AUDIO 13
-#define _LIGHT 14
-
-/**
- * Keycodes & Macros
- */
-#define DF_REDR DF(_REEDER) // Set Default Layer to Reeder shortcuts
-#define DF_MEDA DF(_MEDIA) // Set Default Layer to Media controls
-#define DF_NAVI DF(_NAVI) // Set Default Layer to Navigation shortcuts
-#define DF_KBNR DF(_KARABINER) // Set Default Layer to Basic Macro keys
-
-enum bdn9_keycodes {
- TG_LNAV = KEYMAP_SAFE_RANGE,
- TG_REVW,
- TG_EDIT
-};
-
-/**
- * Tap Dances
- *
- * Use tap dance for layer changes
- */
-enum bdn9_dances {
- TD_DTAP_ADIO = 0,
- TD_DTAP_LGHT,
- TD_DTAP_ADJT
-};
-// Tap Dance Definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_DTAP_ADIO] = ACTION_TAP_DANCE_TRIGGER_LAYER(DOUBLE_TAP, _AUDIO),
- [TD_DTAP_LGHT] = ACTION_TAP_DANCE_TRIGGER_LAYER(DOUBLE_TAP, _LIGHT),
- [TD_DTAP_ADJT] = ACTION_TAP_DANCE_TRIGGER_LAYER(DOUBLE_TAP, _ADJUST),
-};
-// Tap Dance Aliases
-#if defined(RGBLIGHT_ENABLE)
-#define DTP_AVC TD(TD_DTAP_LGHT) //
-#elif defined(AUDIO_ENABLE)
-#define DTP_AVC TD(TD_DTAP_ADIO)
-#endif
-#define DTP_ADJ TD(TD_DTAP_ADJT)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- Layer: Reeder
- ┌───────────┐ ┌───────────┐
- │   Items   │  │    Subs   │
- │  Prv  Nxt │  │  Prv  Nxt │
- ├────────┬──┴──┴──┬────────┤
- │ VwBrsw │  Star  │  Sync  │
- ├────────┼────────┼────────┤
- │ CmdTab │ TgRead │  Clear │
- ├────────┼────────┼────────┤
- │ VwStard│ VwUnrd │  VwAll │
- └────────┴────────┴────────┘
- */
- [_REEDER] = LAYOUT(
- KC_H, KC_S, KC_R,
- CMD_TAB, KC_M, DTP_AVC,
- G(KC_1), G(KC_2), DTP_ADJ
- ),
- /*
- Layer: Media
- ┌───────────┐  ┌───────────┐
- │    Vol    │  │   Track   │
- │  Prv  Nxt │  │  Prv  Nxt │
- ├────────┬──┴──┴──┬────────┤
- │  Mute  │ Player │  Sync  │
- ├────────┼────────┼────────┤
- │ YT<10s │ YT Ply │ YT>10s │
- ├────────┼────────┼────────┤
- │  Left  │  Spce  │  Rght  │
- └────────┴────────┴────────┘
- */
- [_MEDIA] = LAYOUT(
- KC_MUTE, MC_PLYR, KC_MPLY,
- KC_J, KC_K, DTP_AVC,
- KC_LEFT, KC_SPC, DTP_ADJ
- ),
- /*
- Layer: Navigation
- ┌───────────┐  ┌───────────┐
- │  Scroll   │  │    Tab    │
- │  Up   Dn  │  │  Prv  Nxt │
- ├────────┬──┴──┴──┬────────┤
- │ ReOTab │ CmdTab │ ClsTab │
- ├────────┼────────┼────────┤
- │  PgDn  │   Up   │  PgUp  │
- ├────────┼────────┼────────┤
- │  Left  │  Down  │  Rght  │
- └────────┴────────┴────────┘
- */
- [_NAVI] = LAYOUT(
- REO_TAB, CMD_TAB, CLS_TAB,
- KC_PGDN, KC_UP, DTP_AVC,
- KC_LEFT, KC_DOWN, DTP_ADJ
- ),
- /*
- Layer: Macro/Karabiner
- ┌───────────┐  ┌───────────┐
- │           │  │           │
- │   -    +  │  │   .    =  │
- ├────────┬──┴──┴──┬────────┤
- │    1   │    2   │    3   │
- ├────────┼────────┼────────┤
- │    4   │    5   │    6   │
- ├────────┼────────┼────────┤
- │    7   │    8   │    9   │
- └────────┴────────┴────────┘
- */
- [_KARABINER] = LAYOUT(
- KC_P1, KC_P2, KC_P3,
- KC_P4, KC_P5, DTP_AVC,
- KC_P7, KC_P8, DTP_ADJ
- ),
- /*
- Layer: Lightroom Navigation
- ┌───────────┐  ┌───────────┐
- │ Thumbnail │  │ Scrl Grid │
- │ Dec   Inc │  │ Up     Dn │
- ├────────┬──┴──┴──┬────────┤
- │ TgRevw │CylGrdVw│ TgEdit │
- ├────────┼────────┼────────┤
- │  Start │   Up   │  End   │
- ├────────┼────────┼────────┤
- │  Left  │  Down  │  Rght  │
- └────────┴────────┴────────┘
- */
- [LR_NAV] = LAYOUT(
- TG_REVW, KC_J, TG_EDIT,
- KC_HOME, KC_UP, DTP_AVC,
- KC_LEFT, KC_DOWN, DTP_ADJ
- ),
- /*
- Layer: Review/Rate
- ┌───────────┐  ┌───────────┐
- │   Stars   │  │   Flag    │
- │ Dec   Inc │  │ Dec   Inc │
- ├────────┬──┴──┴──┬────────┤
- │ TgLNav │ Yellow │ TgEdit │
- ├────────┼────────┼────────┤
- │ NoStar │  Green │ UnFlag │
- ├────────┼────────┼────────┤
- │  Left  │  Blue  │  Rght  │
- └────────┴────────┴────────┘
- */
- [LR_REVIEW] = LAYOUT(
- TG_LNAV, KC_7, TG_EDIT,
- KC_0, KC_8, DTP_AVC,
- KC_LEFT, KC_6, DTP_ADJ
- ),
- /*
- Layer: Edit/Develop
- ┌───────────┐  ┌───────────┐
- │  Sliders  │  │   Value   │
- │ Prv   Nxt │  │ Dec   Inc │
- ├────────┬──┴──┴──┬────────┤
- │ TgRevw │ Bf/Aft │ TgLNav │
- ├────────┼────────┼────────┤
- │ FlgRjt │  Undo  │ FlgPkd │
- ├────────┼────────┼────────┤
- │  Left  │  Redo  │  Rght  │
- └────────┴────────┴────────┘
- */
- [LR_EDIT] = LAYOUT(
- TG_REVW, KC_BSLS, TG_LNAV,
- KC_X, MC_UNDO, DTP_AVC,
- KC_LEFT, MC_REDO, DTP_ADJ
- ),
- /*
- Layer: Light
- ┌───────────┐  ┌───────────┐
- │  RGB Hue  │  │  RGB Sat  │
- │ Prv   Nxt │  │ Dec   Inc │
- ├────────┬──┴──┴──┬────────┤
- │ RGBTgl │  Val+  │ TgLNav │
- ├────────┼────────┼────────┤
- │  Mode- │  Val-  │  Mode+ │
- ├────────┼────────┼────────┤
- │ LyrTgl │ NxtThm │  XXXX  │
- └────────┴────────┴────────┘
- */
- [_LIGHT] = LAYOUT(
- RGB_TOG, RGB_VAI, TG_LGHT,
- RGB_RMOD,RGB_VAD, RGB_MOD,
- RGB_LYR, RGB_THM, XXXXXXX
- ),
- /*
- Layer: ADJUST
- ┌───────────┐  ┌───────────┐
- │    XXXX   │  │   XXXX    │
- │           │  │           │
- ├────────┬──┴──┴──┬────────┤
- │  MAKE  │ Reeder │  Light │
- ├────────┼────────┼────────┤
- │  Media │  Navi  │  Macro │
- ├────────┼────────┼────────┤
- │ LR Rvw │ LR Nav │ LR Edt │
- └────────┴────────┴────────┘
- */
- [_ADJUST] = LAYOUT(
- QM_MAKE, DF_REDR, TG_LGHT,
- DF_MEDA, DF_NAVI, DF_KBNR,
- TG_REVW, TG_LNAV, TG_EDIT
- ),
-};
-
-void keyboard_post_init_keymap(void){
- // Debug to Console by default
- debug_enable = true;
-}
-
-/**
- * Encoder
- */
-const uint16_t PROGMEM encoders[][2][2] = {
- [_REEDER] = {{ KC_K, KC_J }, { KC_P, KC_N }},
- [_MEDIA] = {{ KC_VOLD, KC_VOLU }, { KC_MPRV, KC_MNXT }},
- [_NAVI] = {{ MC_WH_U, MC_WH_D }, { PRV_TAB, NXT_TAB }},
- [_KARABINER] = {{ KC_PMNS, KC_PPLS }, { KC_PDOT, KC_PEQL }},
- [LR_NAV] = {{ KC_MINS, KC_EQL }, { KC_PGDN, KC_PGUP }},
- [LR_REVIEW] = {{ KC_LBRC, KC_RBRC }, { G(KC_DOWN), G(KC_UP) }},
- [LR_EDIT] = {{ KC_COMM, KC_DOT }, { KC_MINS, KC_EQL }},
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t layer = get_highest_layer(layer_state);
-
- switch (layer) {
- case _AUDIO:
- #ifdef AUDIO_ENABLE
- #endif
- break;
- case _LIGHT:
- #ifdef RGBLIGHT_ENABLE
- switch (index) {
- case 0:
- if (clockwise) {
- rgblight_increase_hue();
- } else {
- rgblight_decrease_hue();
- }
- break;
- case 1:
- if (clockwise) {
- rgblight_increase_sat();
- } else {
- rgblight_decrease_sat();
- }
- break;
- }
- #endif
- break;
- default:
- tap_code16(pgm_read_word(&encoders[layer][index][clockwise]));
- break;
- }
- return true;
-}
-
-/**
- * Keycodes
- */
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TG_LNAV:
- if (!record->event.pressed) {
- tap_code(KC_G);
- layer_move(LR_NAV);
- }
- break;
- case TG_REVW:
- if (!record->event.pressed) {
- tap_code(KC_E);
- layer_move(LR_REVIEW);
- }
- break;
- case TG_EDIT:
- if (!record->event.pressed) {
- tap_code(KC_D);
- layer_move(LR_EDIT);
- }
- break;
- }
- return true;
-}
-
-/**
- * Layer Switch
- */
-layer_state_t layer_state_set_keymap (layer_state_t state) {
- switch (get_highest_layer(state)) {
- case LR_NAV:
- #if defined(RGBLIGHT_ENABLE)
- rgb_layer_helper(HSV_TEAL);
- #endif
- break;
- case LR_REVIEW:
- #if defined(RGBLIGHT_ENABLE)
- rgb_layer_helper(HSV_CYAN);
- #endif
- break;
- case LR_EDIT:
- #if defined(RGBLIGHT_ENABLE)
- rgb_layer_helper(HSV_AZURE);
- #endif
- break;
- default:
- break;
- }
- return state;
-}
-
-/**
- * Tap Dances
- */
-void process_tap_dance_keycode (bool reset, uint8_t toggle_layer) {
- uint16_t keycode = 0;
- switch (toggle_layer) {
- case _LIGHT:
- switch (get_highest_layer(layer_state)) {
- case _REEDER:
- case _MEDIA:
- keycode = KC_L;
- break;
- case _NAVI:
- keycode = KC_PGUP;
- break;
- case _KARABINER:
- keycode = KC_P6;
- break;
- case LR_NAV:
- keycode = KC_END;
- case LR_REVIEW:
- keycode = KC_U;
- case LR_EDIT:
- keycode = KC_P;
- break;
- }
- break;
- case _ADJUST:
- switch (get_highest_layer(layer_state)) {
- case _REEDER:
- keycode = G(KC_3);
- break;
- case _KARABINER:
- keycode = KC_P9;
- break;
- case _MEDIA:
- case _NAVI:
- case LR_NAV:
- case LR_REVIEW:
- case LR_EDIT:
- keycode = KC_RGHT;
- break;
- }
- break;
- }
- if (!reset) {
- register_code16(keycode);
- } else {
- unregister_code16(keycode);
- }
-}
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md b/keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md
deleted file mode 100644
index 54e460c2d9..0000000000
--- a/keyboards/keebio/bdn9/keymaps/brandonschlack/readme.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# brandonschlack's Macropad/Lightroom layout for BDN9
-##### 2 encoders required
-
-![brandonschlack BDN9](https://i.imgur.com/pai9M0m.jpg)
-
-I built this pad to match my Lightroom photo editing workflow using
-[Lightroom Classic Keyboard shortcuts](https://helpx.adobe.com/lightroom-classic/help/keyboard-shortcuts.html), and added on general macropad layers along the way.
-
-I use macOS, so shortcuts and macros are configured as such. Encoder functionality is in the header of the tables, as clockwise/counterclockwise.
-
----
-
-## Macropad Layers
-
-### Reeder Layer
-This layer is used for browsing [Reeder](https://reederapp.com/), an awesome RSS reader for Mac
-
-| Prev/Next Item | **Knobs** | Prev/Next Subscription |
-| --- | --- | --- |
-| Open Item in Browser | Star Item/Save for Later | Sync |
-| Command+Tab | Toggle Read Status | Clear Read Items |
-| Starred Items | Unread Items | All Items |
-
-
-### Media Layer
-This layer is used for media controls. Player button is a hotkey to focus the current media player with [BeardedSpice](https://beardedspice.github.io/)
-
-| Volume Down/Up | **Knobs** | Prev/Next Track |
-| --- | --- | --- |
-| Mute | Current Player | Play/Pause |
-| YouTube Rewind 10s (J) | YouTube Play/Pause (K) | YouTube Forward 10s (L) |
-| Left | Space | Right |
-
-
-### Navigation Layer
-This layer is used for general window navigation around macOS
-
-| Scroll Up/Down | **Knobs** | Next/Prev Tab |
-| --- | --- | --- |
-| Reopen Tab | Cmd+Tab | Close Tab |
-| Page Down | Up | Page Up |
-| Left | Down | Right |
-
-
-### Macro Layer
-This layer is used to send generic macro keys, meant to be remapped based on current app with [Karabiner](https://pqrs.org/osx/karabiner/)
-
-| +/- | **Knobs** | =/. |
-| --- | --- | --- |
-| 1 | 2 | 3 |
-| 4 | 5 | 6 |
-| 7 | 8 | 9 |
-
-
-## Lightroom Layers
-
-### LR Navigation Layer
-This layer is used for navigating Grid View in the Library Module.
-
-| Inc/Dec Thumbnail Size | **Knobs** | Scroll Up/Dn Grid Thumbnails |
-| --- | --- | --- |
-| Review Layer | Cycle Grid View options | Edit Layer |
-| Start of Grid View | Up | End of Grid View |
-| Left | Down | Right |
-
-
-### Lightroom Review Layer
-This layer is used for Reviewing, Rating, and Culling images with the Loupe View in the Library Module.
-
-| Inc/Dec Star Rating | **Knobs** | Inc/Dec Flag Status |
-| --- | --- | --- |
-| LR Navigation Layer | Yellow Label | Edit Layer |
-| Remove Star Rating | Green Label | Unflag Photo |
-| Left | Blue Label | Right |
-
-
-### Lightroom Edit Layer
-This layer is used for editing photos in the Develop Module
-
-| Next/Prev Basic Panel Settings | **Knobs** | Inc/Dec Selected Slider |
-| --- | --- | --- |
-| Review Layer | Toggle Before View | LR Navigation Layer |
-| Flag Rejected | Undo | Flag Picked |
-| Left | Redo | Right |
-
-
-## Meta Layers
-
-### Light Layer
-This layer is used to control lighting for the pad. Currently nothing is saved in EEPROM, so it will reset after power loss. Also currently my userspace layer colors take priority until I build out that feature. This layer is accessed with a double tap of the middle right key via [tap dance](https://docs.qmk.fm/#/feature_tap_dance). A triple tap of the middle right key will also toggle lights on/off.
-
-| Inc/Dec RGB Hue | **Knobs** | Inc/Dec RGB Saturation |
-| --- | --- | --- |
-| RGB Toggle | RGB Value Increase | Toggle Layer Off |
-| RGB Mode Prev | RGB Value Decrease | RGB Mode Next |
-| RGB Layer Indication | Cycle RGB Themes | XXX |
-
-
-### Adjust Layer
-This layer is used as a meta layer for the pad. This layer is accessed with a double tap of the bottom right key via [tap dance](https://docs.qmk.fm/#/feature_tap_dance).
-
-| XXX | **Knobs** | XXX |
-| --- | --- | --- |
-| MAKE | **Reeder** Layer | **Light** Layer |
-| **Media** Layer | **Navigation** Layer | **Keypad** Layer |
-| **Lightroom Review** Layer | **Lightroom Navigation** Layer | **Lightroom Edit** Layer |
-
diff --git a/keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk b/keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index 847ef9d368..0000000000
--- a/keyboards/keebio/bdn9/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
-IS_MACROPAD = yes
-
-# Use dfu bootloader for Elite-C
-BOOTLOADER = atmel-dfu
-
-# Build Options
-MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
-COMMAND_ENABLE = no # Disable Command, breaks with Mouse Keys set to constant.
-BACKLIGHT_ENABLE = no # No backlights installed
-TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/keebio/bdn9/keymaps/rishka/config.h b/keyboards/keebio/bdn9/keymaps/rishka/config.h
deleted file mode 100644
index 05f1bada99..0000000000
--- a/keyboards/keebio/bdn9/keymaps/rishka/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#pragma once
-
-#define QMK_ESC_OUTPUT B4
-#define QMK_ESC_INPUT F7
-#define QMK_LED B0
diff --git a/keyboards/keebio/bdn9/keymaps/rishka/keymap.c b/keyboards/keebio/bdn9/keymaps/rishka/keymap.c
deleted file mode 100644
index f164f66567..0000000000
--- a/keyboards/keebio/bdn9/keymaps/rishka/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Copyright 2019 Danny Nguyen <danny@keeb.io>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- | Knob 1: Vol Dn/Up | | Knob 2: Page Dn/Up |
- | Press: Mute | Home | Press: Play/Pause |
- | Hold: Layer 2 | Up | RGB Mode |
- | Left | Down | Right |
- */
- [0] = LAYOUT(
- KC_MUTE, KC_UP, TO(0),
- KC_F12 , _______ , KC_F1,
- KC_LEFT, KC_DOWN, KC_RGHT
- ),
- /*
- | QK_BOOT | N/A | Media Stop |
- | Held: Layer 2 | Home | RGB Mode |
- | Media Previous | End | Media Next |
- */
- [1] = LAYOUT(
- QK_BOOT, KC_HOME, _______,
- _______, _______, _______,
- KC_MPRV, KC_END , KC_MNXT
- ),
-};
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- if (clockwise) {
- tap_code(KC_VOLD);
- } else {
- tap_code(KC_VOLU);
- }
- }
- else if (index == 1) {
- int mod = 0;
- if (clockwise) {
- mod = 1;
- } else {
- mod = -1;
- }
- int n = 2; //sizeof(PROGMEM);
- int new_layer = ((layer_state + mod) % n + n) % n;
- uprintf("new: %d\n", new_layer);
- layer_on(new_layer);
- for(int i=0; i < n; i++) {
- if (new_layer != i) {
- layer_off(i);
- }
- }
- }
- return true;
-}
diff --git a/keyboards/keebio/bdn9/keymaps/rishka/rules.mk b/keyboards/keebio/bdn9/keymaps/rishka/rules.mk
deleted file mode 100644
index 0613ea8667..0000000000
--- a/keyboards/keebio/bdn9/keymaps/rishka/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BOOTLOADER = qmk-dfu
diff --git a/keyboards/keebio/cepstrum/rev1/info.json b/keyboards/keebio/cepstrum/rev1/info.json
index b5bf188c92..b4b764c889 100644
--- a/keyboards/keebio/cepstrum/rev1/info.json
+++ b/keyboards/keebio/cepstrum/rev1/info.json
@@ -121,6 +121,7 @@
}
},
"ws2812": {
+ "driver": "vendor",
"pin": "GP18"
},
"rgb_matrix": {
diff --git a/keyboards/keebio/cepstrum/rev1/rules.mk b/keyboards/keebio/cepstrum/rev1/rules.mk
index 8fb51ec82d..161ec22b16 100644
--- a/keyboards/keebio/cepstrum/rev1/rules.mk
+++ b/keyboards/keebio/cepstrum/rev1/rules.mk
@@ -1,2 +1 @@
SERIAL_DRIVER = vendor
-WS2812_DRIVER = vendor
diff --git a/keyboards/keebio/iris/keymaps/333fred/config.h b/keyboards/keebio/iris/keymaps/333fred/config.h
deleted file mode 100644
index 0c0250291c..0000000000
--- a/keyboards/keebio/iris/keymaps/333fred/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#pragma once
-
-#define EE_HANDS
-#define NO_ACTION_MACRO
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 200
-
-#undef RGBLED_NUM
-#define RGBLED_NUM 24
-#define RGBLIGHT_SLEEP
diff --git a/keyboards/keebio/iris/keymaps/333fred/keymap.c b/keyboards/keebio/iris/keymaps/333fred/keymap.c
deleted file mode 100644
index 1141e6b009..0000000000
--- a/keyboards/keebio/iris/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-#include "333fred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT(
- //┌──────────────┬────────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬──────────────┐
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- //├──────────────┼────────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼──────────────┤
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- //├──────────────┼────────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼──────────────┤
- CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- //├──────────────┼────────────┼────────┼────────┼────────┼────────┼───────────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼──────────────┤
- OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_DOWN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT),
- //└──────────────┴────────────┴────────┴────────┼────────┼────────┼───────────────┤ ├────────┼────────┼────────┼────────┴────────┴────────┴──────────────┘
- KC_LALT, KC_BSPC, TD(TD_SYM_VIM), KC_ENT, KC_SPC, KC_RGUI
- // └────────┴────────┴───────────────┘ └────────┴────────┴────────┘
- ),
-
-
- [SYMB] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PLUS, _______, KC_7, KC_8, KC_9, _______, KC_F12,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- _______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_EQL, _______, KC_4, KC_5, KC_6, _______, KC_VOLU,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_UP, KC_UP, KC_0, KC_1, KC_2, KC_3, _______, KC_VOLD,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───────┴─────┬───┴────┐ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- _______, TD(TD_COPY_PASTE), _______, KC_MPRV, KC_MPLY, KC_MNXT
- // └────────┴──────────────────┴────────┘ └────────┴────────┴────────┘
- ),
-
-
- [VIM] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- _______, _______, _______, _______, KC_LSFT, _______, _______, _______, _______, _______, _______, _______,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- _______, DLEFT, DRIGHT, KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- _______, _______, _______, _______, _______, _______
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- ),
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- tap_dance_process_keycode(keycode);
- return !try_handle_macro(keycode, record);
-}
diff --git a/keyboards/keebio/iris/keymaps/333fred/rules.mk b/keyboards/keebio/iris/keymaps/333fred/rules.mk
deleted file mode 100644
index 5ad63b02b7..0000000000
--- a/keyboards/keebio/iris/keymaps/333fred/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-KEY_LOCK_ENABLE = yes
-CONSOLE_ENABLE = no
-LTO_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/csc027/config.h b/keyboards/keebio/iris/keymaps/csc027/config.h
deleted file mode 100644
index a32a595481..0000000000
--- a/keyboards/keebio/iris/keymaps/csc027/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@keeb.io>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define EE_HANDS
-
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/iris/keymaps/csc027/keymap.c b/keyboards/keebio/iris/keymaps/csc027/keymap.c
deleted file mode 100644
index b9bc4c272e..0000000000
--- a/keyboards/keebio/iris/keymaps/csc027/keymap.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
-Copyright 2020 Constantine Chen @csc027
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "csc027.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_wrapper(
- _____________________QWERTY_L1_____________________, _____________________QWERTY_R1_____________________,
- _____________________QWERTY_L2_____________________, _____________________QWERTY_R2_____________________,
- _____________________QWERTY_L3_____________________, _____________________QWERTY_R3_____________________,
- _____________________QWERTY_L4_____________________, KC_SPC, KC_SPC, _____________________QWERTY_R4_____________________,
- KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI
- ),
-
- [_RS] = LAYOUT_wrapper(
- ______________________RAISE_L1_____________________, ______________________RAISE_R1_____________________,
- ______________________RAISE_L2_____________________, ______________________RAISE_R2_____________________,
- ______________________RAISE_L3_____________________, ______________________RAISE_R3_____________________,
- ______________________RAISE_L4_____________________, _______, _______, ______________________RAISE_R4_____________________,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_LW] = LAYOUT_wrapper(
- ______________________LOWER_L1_____________________, ______________________LOWER_R1_____________________,
- ______________________LOWER_L2_____________________, ______________________LOWER_R2_____________________,
- ______________________LOWER_L3_____________________, ______________________LOWER_R3_____________________,
- ______________________LOWER_L4_____________________, _______, _______, ______________________LOWER_R4_____________________,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_MS] = LAYOUT_wrapper(
- ______________________MOUSE_L1_____________________, ______________________MOUSE_R1_____________________,
- ______________________MOUSE_L2_____________________, ______________________MOUSE_R2_____________________,
- ______________________MOUSE_L3_____________________, ______________________MOUSE_R3_____________________,
- ______________________MOUSE_L4_____________________, _______, _______, ______________________MOUSE_R4_____________________,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_WT] = LAYOUT_wrapper(
- ________________WINDOWS_TERMINAL_L1________________, ________________WINDOWS_TERMINAL_R1________________,
- ________________WINDOWS_TERMINAL_L2________________, ________________WINDOWS_TERMINAL_R2________________,
- ________________WINDOWS_TERMINAL_L3________________, ________________WINDOWS_TERMINAL_R3________________,
- ________________WINDOWS_TERMINAL_L4________________, _______, _______, ________________WINDOWS_TERMINAL_R4________________,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_CN] = LAYOUT_wrapper(
- ___________________CONVENIENCE_L1__________________, ___________________CONVENIENCE_R1__________________,
- ___________________CONVENIENCE_L2__________________, ___________________CONVENIENCE_R2__________________,
- ___________________CONVENIENCE_L3__________________, ___________________CONVENIENCE_R3__________________,
- ___________________CONVENIENCE_L4__________________, _______, _______, ___________________CONVENIENCE_R4__________________,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_GG] = LAYOUT(
- KC_5, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_T, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_G, MC_LSEC, KC_A, KC_S, KC_D, KC_F, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
- KC_B, KC_LCTL, KC_Z, KC_X, KC_C, KC_SPC, KC_SPC, _______, KC_N, KC_M, KC_COMM, KC_DOT, TO(_CS), TO(_QW),
- KC_LALT, KC_V, KC_SPC, _______, KC_M, KC_B
- ),
-
- [_CS] = LAYOUT(
- XXXXXXX, KC_5, KC_1, KC_2, KC_3, KC_4, KC_6, KC_P7, KC_P8, KC_P9, KC_0, KC_BSPC,
- XXXXXXX, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_Y, KC_P4, KC_P5, KC_P6, XXXXXXX, KC_NUM,
- KC_G, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_H, KC_P1, KC_P2, KC_P3, KC_PENT, KC_ESC,
- XXXXXXX, KC_LCTL, XXXXXXX, KC_X, XXXXXXX, XXXXXXX, KC_SPC, _______, KC_N, KC_P0, KC_P0, KC_PDOT, TO(_QW), TO(_QW),
- KC_B, KC_SPC, KC_SPC, _______, KC_N, KC_P0
- )
-};
diff --git a/keyboards/keebio/iris/keymaps/csc027/rules.mk b/keyboards/keebio/iris/keymaps/csc027/rules.mk
deleted file mode 100644
index 6fff152f60..0000000000
--- a/keyboards/keebio/iris/keymaps/csc027/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-BACKLIGHT_ENABLE = yes
-CONSOLE_ENABLE = no
-EXTRAKEY_ENABLE = yes
-LTO_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/drashna/config.h b/keyboards/keebio/iris/keymaps/drashna/config.h
deleted file mode 100644
index a4d2def67c..0000000000
--- a/keyboards/keebio/iris/keymaps/drashna/config.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define EE_HANDS
-
-#ifdef RGBLIGHT_ENABLE
-# undef RGBLED_NUM
-# define RGBLED_NUM 18 // Number of LEDs
-# undef RGBLED_SPLIT
-# define RGBLED_SPLIT \
- { 9, 9 }
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
-# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
-
-# ifndef RGBLIGHT_LIMIT_VAL
-# define RGBLIGHT_LIMIT_VAL 225
-# endif
-#endif // RGBLIGHT_ENABLE
-
-#ifdef AUDIO_ENABLE
-# define AUDIO_PIN C6
-# ifdef RGBLIGHT_ENABLE
-# ifndef __arm__
-# define NO_MUSIC_MODE
-# endif
-# endif // RGBLIGHT_ENABLE
-#endif // AUDIO_ENABLE
-
-#if defined(KEYBOARD_keebio_iris_rev1) || defined(KEYBOARD_keebio_iris_rev2)
-# define QMK_ESC_OUTPUT F6 // usually COL
-# define QMK_ESC_INPUT D7 // usually ROW
-# define QMK_LED B0
-# define QMK_SPEAKER C6
-#endif
-
-#if defined(KEYBOARD_keebio_iris_rev2)
-# undef PRODUCT
-# define PRODUCT "Drashna Hacked Iris Rev 2"
-#elif defined(KEYBOARD_keebio_iris_rev3)
-# undef PRODUCT
-# define PRODUCT "Drashna Hacked Iris Rev 3"
-#elif defined(KEYBOARD_keebio_iris_rev4)
-# undef PRODUCT
-# define PRODUCT "Drashna Hacked Iris Rev 4"
-#endif
-
-#define SHFT_LED1 6
-#define SHFT_LED2 11
-
-#define CTRL_LED1 7
-#define CTRL_LED2 10
-
-#define ALT_LED1 8
-#define GUI_LED1 9
-
-#define BOOTMAGIC_LITE_ROW 4
-#define BOOTMAGIC_LITE_COLUMN 3
diff --git a/keyboards/keebio/iris/keymaps/drashna/keymap.c b/keyboards/keebio/iris/keymaps/drashna/keymap.c
deleted file mode 100644
index 02d0011f5c..0000000000
--- a/keyboards/keebio/iris/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,112 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-/*
- * The `LAYOUT_iris_base` macro is a template to allow the use of identical
- * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
- * that there is no need to set them up for each layout, and modify all of
- * them if I want to change them. This helps to keep consistency and ease
- * of use. K## is a placeholder to pass through the individual keycodes
- */
-
-// clang-format off
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define LAYOUT_iris_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, \
- LALT_T(KC_TAB), K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSLS, \
- KC_C1R3, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- OS_LSFT, CTL_T(K21), K22, K23, K24, K25, OS_LALT, OS_RGUI, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \
- KC_GRV, KC_SPC, LT(_LOWER,KC_BSPC), LT(_RAISE,KC_DEL), KC_ENT, RAISE \
- )
-#define LAYOUT_base_wrapper(...) LAYOUT_iris_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_GAMEPAD] = LAYOUT_wrapper(
- KC_ESC, KC_NO, KC_1, KC_2, KC_3, KC_4, _______, _______, _______, _______, _______, _______,
- KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_H, TG_GAME, _______, _______, _______, _______, _______, _______, _______,
- KC_GRV, KC_V, KC_SPC, _______, _______, _______
- ),
-
-
- [_LOWER] = LAYOUT_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
- KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______,
- _______, ___________________BLANK___________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, ___________________BLANK___________________, _______, _______, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11,
- KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _______, _______, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- QK_MAKE, _______, _______, _______, _______, _______, _________________ADJUST_R1_________________, QK_BOOT,
- VRSN, _________________ADJUST_L1_________________, KC_NUKE, _______, _______, _______, _______, EE_CLR,
- _______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS,
- _______, _________________ADJUST_L3_________________, TG_GAME, _______, _________________ADJUST_R3_________________, KC_MPLY,
- _______, _______, _______, _______, _______, _______
- )
-
-};
-// clang-format on
-
-void keyboard_post_init_keymap(void) {
-#if BACKLIGHT_ENABLE
- backlight_enable();
- backlight_level(5);
-# ifdef BACKLIGHT_BREATHING
- breathing_enable();
-# endif
-#endif
-}
diff --git a/keyboards/keebio/iris/keymaps/drashna/rules.mk b/keyboards/keebio/iris/keymaps/drashna/rules.mk
deleted file mode 100644
index f531c74a56..0000000000
--- a/keyboards/keebio/iris/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-TAP_DANCE_ENABLE = no
-AUDIO_ENABLE = no
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = no
-SWAP_HANDS_ENABLE = no
-BOOTLOADER = qmk-dfu
-
-INDICATOR_LIGHTS = no
-RGBLIGHT_STARTUP_ANIMATION = no
-CUSTOM_UNICODE_ENABLE = no
-CUSTOM_SPLIT_TRANSPORT_SYNC = no
diff --git a/keyboards/keebio/iris/keymaps/edvorakjp/config.h b/keyboards/keebio/iris/keymaps/edvorakjp/config.h
deleted file mode 100644
index d5caa23369..0000000000
--- a/keyboards/keebio/iris/keymaps/edvorakjp/config.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define SWAP_SCLN
-#define TAPPING_TERM 300
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLED_NUM 10
-#define RGBLIGHT_LIMIT_VAL 100
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/iris/keymaps/edvorakjp/keymap.c b/keyboards/keebio/iris/keymaps/edvorakjp/keymap.c
deleted file mode 100644
index 97c9f48f89..0000000000
--- a/keyboards/keebio/iris/keymaps/edvorakjp/keymap.c
+++ /dev/null
@@ -1,72 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "edvorakjp.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define __KC_TRNS_x6__ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_EDVORAKJP_BASE] = LAYOUT_wrapper(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_GRV, __EDVORAKJP_BASE_L1__ , __EDVORAKJP_BASE_R1__ , KC_BSLS,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_EQL, __EDVORAKJP_BASE_L2__ , __EDVORAKJP_BASE_R2__ , KC_MINS,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_ESC, __EDVORAKJP_BASE_L3__ , XXXXXXX, XXXXXXX, __EDVORAKJP_BASE_R3__ , KC_SLSH,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- LA_TAB, LS_SPC,LOWER_TD, RAISE_TD, RC_BSPC, RG_ENT
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- ),
-
- [L_EDVORAKJP_LOWER] = LAYOUT_wrapper(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- __KC_TRNS_x6__ , __KC_TRNS_x6__ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX, XXXXXXX, __EDVORAKJP_BRACKET_L__ , XXXXXXX, XXXXXXX, __EDVORAKJP_BRACKET_R__ , XXXXXXX, XXXXXXX,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- __EDVORAKJP_FUNCTION_L__ , __EDVORAKJP_FUNCTION_R__ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_PSCR, XXXXXXX, __EDVORAKJP_PAGE__ , XXXXXXX, XXXXXXX, __EDVORAKJP_CURSOR__ , XXXXXXX, XXXXXXX,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- KC_TRNS, KC_TRNS, XXXXXXX, KC_MAC, RC_DEL, KC_TRNS
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- ),
-
- [L_EDVORAKJP_RAISE] = LAYOUT_wrapper(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- __KC_TRNS_x6__ , __KC_TRNS_x6__ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX, XXXXXXX, __EDVORAKJP_SYMBOL_L__ , __EDVORAKJP_SYMBOL_R__ , XXXXXXX, XXXXXXX,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX, __EDVORAKJP_NUMBER_L__ , __EDVORAKJP_NUMBER_R__ , XXXXXXX,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_PSCR, XXXXXXX, __EDVORAKJP_PAGE__ , XXXXXXX, XXXXXXX, __EDVORAKJP_CURSOR__ , XXXXXXX, XXXXXXX,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- KC_TRNS, KC_TRNS, KC_WIN, XXXXXXX, KC_TRNS, KC_TRNS
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- )
-};
-// clang-format on
-
-void matrix_init_keymap(void) {}
-
-#ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- switch (get_highest_layer(state)) {
- case L_EDVORAKJP_LOWER:
- rgblight_sethsv_noeeprom(HSV_RED);
- break;
- case L_EDVORAKJP_RAISE:
- rgblight_sethsv_noeeprom(HSV_GREEN);
- break;
- default: // for any other layers, or the default layer
- rgblight_mode(RGBLIGHT_MODE_STATIC_GRADIENT + 3);
- rgblight_sethsv(HSV_RED);
- break;
- }
- return state;
-}
-#endif
diff --git a/keyboards/keebio/iris/keymaps/edvorakjp/readme.md b/keyboards/keebio/iris/keymaps/edvorakjp/readme.md
deleted file mode 100644
index dd406523d2..0000000000
--- a/keyboards/keebio/iris/keymaps/edvorakjp/readme.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# edvorakjp
-
-Epaew's Enhanced Dvorak layout for Japanese Programmer
-see [here](/users/edvorakjp) for more informations.
-
-## License
-
-Copyright 2018 Ryo Maeda epaew.333@gmail.com @epaew
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/keebio/iris/keymaps/edvorakjp/rules.mk b/keyboards/keebio/iris/keymaps/edvorakjp/rules.mk
deleted file mode 100644
index 685b3b2cfc..0000000000
--- a/keyboards/keebio/iris/keymaps/edvorakjp/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = no # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/gary/README.md b/keyboards/keebio/iris/keymaps/gary/README.md
deleted file mode 100644
index fd50751d89..0000000000
--- a/keyboards/keebio/iris/keymaps/gary/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Gary's Iris Layout
-
-My personal keymap for my Iris.
-
-Copyright 2019 Gary @garyjzhao
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/keebio/iris/keymaps/gary/config.h b/keyboards/keebio/iris/keymaps/gary/config.h
deleted file mode 100644
index e337f4403f..0000000000
--- a/keyboards/keebio/iris/keymaps/gary/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
diff --git a/keyboards/keebio/iris/keymaps/gary/keymap.c b/keyboards/keebio/iris/keymaps/gary/keymap.c
deleted file mode 100644
index 0a178ecb05..0000000000
--- a/keyboards/keebio/iris/keymaps/gary/keymap.c
+++ /dev/null
@@ -1,47 +0,0 @@
-#include "gary.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_BSPC,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_DEL ,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_RASE, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
- //|----+----+----+---- +----+----+----. ,----|----+----+----+----+----+----|
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B ,KC_NEXT, KC_FULL , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,SC_SENT,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- KC_LGUI,KC_LOWR,KC_SPC , KC_GARY, KC_ENT,KC_LALT
- // `----+----+----' `----+----+----'
- ),
-
-
- [_LOWER] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- KC_GRV ,KC_EXLM, KC_AT ,KC_HASH,KC_DLR ,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_BSPC,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_CLTB,_______,KC_CNTR,KC_UPLF,KC_UPRG,_______, _______,_______,KC_PLUS,KC_LBRC,KC_RBRC,KC_OPASS,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- _______,KC_LHLF,KC_RHLF,KC_DNLF,KC_DNRG,_______, _______,_______,KC_MINS,_______,_______,KC_PIPE,
- //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|`
- _______,_______,_______,KC_CTLC,_______,_______,_______, _______,_______,_______,_______,KC_EQL ,_______,KC_UNDS ,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,_______,KC_DEL , KC_BSPC ,_______, _______
- // `----+----+----' `----+----+----'
- ),
-
- [_RAISE] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- KC_TILD, KC_F1 , KC_F2 , KC_F3 ,KC_SHOT, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 ,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- _______,KC_MPRV,KC_MPLY,KC_MNXT,_______,_______, _______,KC_PGUP, KC_UP ,KC_PGDN,_______,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- _______,_______,KC_VOLD,KC_VOLU,KC_MUTE,_______, _______,KC_LEFT,KC_DOWN,KC_RGHT,_______,_______,
- //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
- _______,_______,_______,_______,_______,_______,_______, KC_RST,_______,_______,_______,_______,_______,_______,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,KC_LALT,_______, _______,_______, _______
- // `----+----+----' `----+----+----'
- ),
-};
diff --git a/keyboards/keebio/iris/keymaps/gary/rules.mk b/keyboards/keebio/iris/keymaps/gary/rules.mk
deleted file mode 100644
index 2df7e9a203..0000000000
--- a/keyboards/keebio/iris/keymaps/gary/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = no
-EXTRAKEY_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/manna-harbour_miryoku/config.h b/keyboards/keebio/iris/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 17a89bb1e1..0000000000
--- a/keyboards/keebio/iris/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
- K32, K33, K34, K35, K36, K37\
-)
diff --git a/keyboards/keebio/iris/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/keebio/iris/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/keebio/iris/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/keebio/iris/keymaps/mattly/config.h b/keyboards/keebio/iris/keymaps/mattly/config.h
deleted file mode 100644
index a3ee1ec898..0000000000
--- a/keyboards/keebio/iris/keymaps/mattly/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@keeb.io>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// #define USE_I2C
-#define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
-#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#undef RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_CHRISTMAS
-#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
-#undef RGBLIGHT_EFFECT_RGB_TEST
-#undef RGBLIGHT_EFFECT_ALTERNATING
-#undef RGBLIGHT_EFFECT_TWINKLE
-#undef RGBLIGHT_DEFAULT_MODE
-#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_BREATHING + 2)
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/iris/keymaps/mattly/keymap.c b/keyboards/keebio/iris/keymaps/mattly/keymap.c
deleted file mode 100644
index 0f7121b7be..0000000000
--- a/keyboards/keebio/iris/keymaps/mattly/keymap.c
+++ /dev/null
@@ -1,70 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "mattly.h"
-
-// extern keymap_config_t keymap_config;
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_BASE_MAC] = LAYOUT(
- KC_DEL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_ESC,
- KC_BSPC, KC_Q, W_CTL, E_ALT, R_GUI, KC_T, KC_Y, U_GUI, I_ALT, O_CTL, KC_P, KC_SCLN,
- KC_CAPS, A_CTL, S_ALT, D_GUI, F_SFT, KC_G, KC_H, J_SFT, K_GUI, L_ALT, MINSCTL, KC_QUOT,
- NAVLOCK, KC_Z, KC_X, KC_C, KC_V, KC_B, ENT_SYM, TAB_NUM, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- ESC_HYP, TAB_NUM, SPC_SFT, SPC_SFT, BSP_SYM, DEL_WRP
-),
-
- [_OVER_WIN] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, W_GUI, _______, R_CTL, _______, _______, U_CTL, _______, O_GUI, _______, _______,
- _______, A_GUI, _______, D_CTL, _______, _______, _______, _______, K_CTL, _______, MINSGUI, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_SYMBOL] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_AMPR, KC_GRV, KC_TILD, KC_LBRC, KC_RBRC, KC_LABK, KC_RABK, KC_PLUS, KC_ASTR, XXXXXXX, _______,
- _______, KC_DLR, KC_PERC, KC_EQL, KC_LPRN, KC_RPRN, KC_SCLN, KC_COLN, KC_EXLM, KC_AT, KC_UNDS, _______,
- _______, XXXXXXX, KC_CIRC, KC_HASH, KC_LCBR, KC_RCBR, _______, _______, KC_QUOT, KC_DQUO, KC_PIPE, KC_BSLS, KC_QUES, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_NAVNUM] = LAYOUT(
- M_PVWIN, M_NXWIN, XXXXXXX, M_BPARA, XXXXXXX, KC_HOME, XXXXXXX, KC_SLSH, KC_ASTR, KC_MINS, KC_PLUS, XXXXXXX,
- M_PVTAB, M_NAVFW, M_BWORD, KC_UP, M_FWORD, KC_PGUP, KC_DLR, KC_P7, KC_P8, KC_P9, KC_DOT, XXXXXXX,
- XXXXXXX, M_NAVBK, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_PERC, KC_P4, KC_P5, KC_P6, KC_EQL, XXXXXXX,
- _______, M_NAVFW, M_BLINE, M_NPARA, M_ELINE, KC_END, _______, _______, KC_P0, KC_P1, KC_P2, KC_P3, KC_COMM, _______,
- _______, _______, _______, _______, _______, KC_P0
- ),
- [_NAVNUM_WIN] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, W_NAVFW, W_BWORD, _______, W_FWORD, _______, _______, _______, _______, _______, _______, _______,
- _______, W_NAVBK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_GAME] = LAYOUT(
- KC_BSPC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_SCLN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_MINS, KC_QUOT,
- KC_ESC, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(_NAVNUM), MO(_SYMBOL), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_LGUI, KC_LSFT
- ),
-
- [_FUNCT] = LAYOUT(
- KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- QK_BOOT, M_NAVFW, XXXXXXX, M_NXWIN, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_M_P, RGB_M_B, XXXXXXX, QK_BOOT,
- DB_TOGG, M_NAVBK, M_PVTAB, M_PVWIN, M_NXTAB, XXXXXXX, XXXXXXX, TOG_WIN, TOG_GAM, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_MUTE, KC_VOLD, KC_VOLU, KC_MRWD, KC_MFFD, KC_MPLY, _______, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD,
- _______, _______, _______, _______, _______, _______
- ),
-[_FUNCT_WIN] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, W_NAVFW, _______, W_NXWIN, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, W_NAVBK, W_PVTAB, W_PVWIN, W_NXTAB, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-};
-
diff --git a/keyboards/keebio/iris/keymaps/mattly/readme.md b/keyboards/keebio/iris/keymaps/mattly/readme.md
deleted file mode 100644
index 4e8c7f17c6..0000000000
--- a/keyboards/keebio/iris/keymaps/mattly/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-See my readme in [users/mattly](../../../../../users/mattly/readme.md) \ No newline at end of file
diff --git a/keyboards/keebio/iris/keymaps/mnil/config.h b/keyboards/keebio/iris/keymaps/mnil/config.h
deleted file mode 100644
index e8118c1c4b..0000000000
--- a/keyboards/keebio/iris/keymaps/mnil/config.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2021 Mats Nilsson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
-#define RGBLIGHT_SPLIT \
- { 6, 6 }
-#define RGBLIGHT_SLEEP
diff --git a/keyboards/keebio/iris/keymaps/mnil/keymap.c b/keyboards/keebio/iris/keymaps/mnil/keymap.c
deleted file mode 100644
index 1cac3be141..0000000000
--- a/keyboards/keebio/iris/keymaps/mnil/keymap.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/* Copyright 2021 Mats Nilsson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "mnil.h"
-
-const uint8_t RGBLED_BREATHING_INTERVALS[] PROGMEM = {5, 5, 5, 5};
-
-#define HSV_DEFAULT 32, 255, 255
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- state = update_tri_layer_state(state, _SYMBOLS, _NAVIGATION, _NUMPAD);
-
- switch (get_highest_layer(state)) {
- case _NUMPAD:
- rgblight_sethsv_noeeprom(HSV_GREEN);
- break;
- case _NAVIGATION:
- rgblight_sethsv_noeeprom(HSV_MAGENTA);
- break;
- case _SYMBOLS:
- rgblight_sethsv_noeeprom(HSV_AZURE);
- break;
- default: // for any other layers, or the default layer
- rgblight_sethsv_noeeprom(HSV_DEFAULT);
- break;
- }
- return state;
-}
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_COLEMAK] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, TD(OAA), KC_NO,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_LSFT, TD(AAE), KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_NO,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_LCTL, KC_Z, KC_X, KC_C, KC_D, KC_V, _NAV_SPC, _SYM_ENT,KC_K, KC_H, KC_COMM, KC_DOT, SE_MINS, KC_LGUI,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- KC_LGUI, SFT_TAB, _NAV_SPC, _SYM_ENT,CTL_BSPC,ALT_DEL),
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- [_SYMBOLS] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, KC_NO, SE_PIPE, SE_LBRC, SE_RBRC, KC_NO, S(KC_5), SE_QUES, SE_AT, SE_EQL, SE_DLR, KC_TRNS,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, SE_LCBR, SE_RCBR, SE_LPRN, SE_RPRN, KC_NO, SE_PLUS, S(KC_1), S(KC_2), S(KC_3), SE_AMPR, KC_TRNS,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, M_TILD, M_CIRC, SE_LABK, SE_RABK, KC_NO, KC_TRNS, KC_TRNS, SE_QUOT, SE_SLSH, SE_BSLS, SE_ASTR, M_BTCK, KC_TRNS,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ),
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- [_NAVIGATION] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, KC_NO, CUT, COPY, PASTE, AUTOFILL, KC_NO, KC_HOME, KC_WH_D, KC_WH_U, KC_END, KC_NO,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, KC_ACL0, KC_ACL1, KC_BTN2, KC_BTN1, KC_LCTL, KC_WH_L, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_WH_R,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, KC_ACL2, KC_BTN4, KC_BTN3, KC_BTN5, KC_NO, KC_TRNS, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_LCTL,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ),
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
- [_NUMPAD] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- RGB_TOG, RGB_M_P, RGB_M_B, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, QUIT, WIN, MVWSL , MVWSR, CRYWS, TERM, KC_7, KC_8, KC_9, KC_COMM, KC_NO,
- //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, CS_TAB, C_TAB, PRVWS, NXTWS, I3MOD, OPEN, KC_4, KC_5, KC_6, KC_0, KC_NO,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, MOVWS, KC_TRNS, KC_TRNS, BROWSER, KC_1, KC_2, KC_3, KC_DOT, KC_NO,
- //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ),
- // └────────┴────────┴────────┘ └────────┴────────┴────────┘
-};
-// clang-format on
diff --git a/keyboards/keebio/iris/keymaps/mnil/readme.md b/keyboards/keebio/iris/keymaps/mnil/readme.md
deleted file mode 100644
index e74eea4715..0000000000
--- a/keyboards/keebio/iris/keymaps/mnil/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# mnil's iris keymap
-Read my user settings [here](../../../../../users/mnil/readme.md) for more details.
diff --git a/keyboards/keebio/iris/keymaps/mnil/rules.mk b/keyboards/keebio/iris/keymaps/mnil/rules.mk
deleted file mode 100644
index 22e6c8fccc..0000000000
--- a/keyboards/keebio/iris/keymaps/mnil/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/nstickney/config.h b/keyboards/keebio/iris/keymaps/nstickney/config.h
deleted file mode 100644
index da682cb921..0000000000
--- a/keyboards/keebio/iris/keymaps/nstickney/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright 2021 @nstickney
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define RGBLED_NUM 12
-#define RGBLIGHT_SPLIT
diff --git a/keyboards/keebio/iris/keymaps/nstickney/keymap.c b/keyboards/keebio/iris/keymaps/nstickney/keymap.c
deleted file mode 100644
index cf53ffd934..0000000000
--- a/keyboards/keebio/iris/keymaps/nstickney/keymap.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Copyright 2021 @nstickney
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "nstickney.h"
-#include "unicodemap.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
- CC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, CC_QUOT,
- SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, TD(LOCKS), TD(LAYERS), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC,
- AC_SLSH, FC_BSLS, KC_SPC, KC_ENT, FC_MINS, AC_EQL
- ),
-
- [SYMB] = LAYOUT(
- _______, UP(IEX, SS1), UM(SS2), UM(SS3), UP(CUR, GBP), UM(EUR), UM(V14), UM(V12), UM(V34), UP(LSQ, LDQ), UP(RSQ, RDQ), _______,
- _______, UP(A_D, AXD), UP(A_R, ACR), UP(E_A, ECA), UP(REG, CPL), UM(THR), UP(U_D, UCD), UP(U_A, UCA), UP(I_A, ICA), UP(O_A, OCA), UP(O_D, OCD), _______,
- _______, UP(A_A, ACA), UP(S_S, SEC), UP(ETH, ETC), UM(EMD), _______, _______, _______, _______, UP(O_S, OCS), UP(PLC, DEG), UP(ACT, DIS),
- _______, UP(AEL, AEC), _______, UP(CPR, CNT), _______, _______, _______, _______, UP(N_T, NCT), UM(MCR), UP(C_C, CCC), _______, _______, _______,
- UM(IQM), UP(NOT, BKB), _______, _______, UM(YEN), UP(MLT, DIV)
- ),
-
- [NUMP] = LAYOUT(
- _______, _______, KC_P7, KC_P8, KC_P9, KC_PSLS, _______, KC_P7, KC_P8, KC_P9, KC_PSLS, _______,
- _______, _______, KC_P4, KC_P5, KC_P6, KC_PAST, _______, KC_P4, KC_P5, KC_P6, KC_PAST, _______,
- _______, _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______, KC_P1, KC_P2, KC_P3, KC_PMNS, _______,
- _______, _______, KC_P0, KC_PCMM, KC_PDOT, KC_PPLS, _______, _______, _______, KC_P0, KC_PCMM, KC_PDOT, KC_PPLS, _______,
- _______, _______, _______, KC_PENT, _______, _______
- ),
-
- [FCTN] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_SYRQ,
- KC_PSCR, RGB_TOG, KC_HOME, KC_UP, KC_END, KC_PGUP, QK_LOCK, KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), KC_INS,
- KC_PAUS, RGB_VAI, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_BRIU, KC_CLR,
- _______, KC_MPRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_MNXT, KC_F11, KC_F12, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, KC_BRID, _______,
- _______, _______, _______, _______, _______, _______
- )
-
-};
diff --git a/keyboards/keebio/iris/keymaps/pvinis/config.h b/keyboards/keebio/iris/keymaps/pvinis/config.h
deleted file mode 100644
index 861c474e54..0000000000
--- a/keyboards/keebio/iris/keymaps/pvinis/config.h
+++ /dev/null
@@ -1,32 +0,0 @@
-#pragma once
-
-#ifdef PRODUCT
-# undef PRODUCT
-# define PRODUCT "Iris Keyboard - pvinis"
-#endif
-
-// Select hand configuration.
-// #define MASTER_LEFT
-#define MASTER_RIGHT
-// #define EE_HANDS
-
-// Choose pin to use for audio. C6 is the one iris uses.
-#ifdef AUDIO_ENABLE
-# define AUDIO_PIN C6
-# define STARTUP_SONG SONG(NO_SOUND) // No startup song.
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-# undef RGBLED_NUM
-# define RGBLED_NUM 16
-#endif
-
-#ifdef ENCODER_ENABLE
-# define ENCODERS_PAD_A \
- { F5 } // I connected the encoder to F4 and F5.
-# define ENCODERS_PAD_B \
- { F4 }
-// #define ENCODERS_PAD_A_RIGHT { B5 }
-// #define ENCODERS_PAD_B_RIGHT { C6 }
-# define ENCODER_RESOLUTION 2
-#endif
diff --git a/keyboards/keebio/iris/keymaps/pvinis/keymap.c b/keyboards/keebio/iris/keymaps/pvinis/keymap.c
deleted file mode 100644
index 0c8706de6c..0000000000
--- a/keyboards/keebio/iris/keymaps/pvinis/keymap.c
+++ /dev/null
@@ -1,198 +0,0 @@
-// pvinis iris
-// make keebio/iris/rev2:pvinis:avrdude
-// ,-----------------------------. ┌────┬────┬────┬────┬────┬────┐
-// | | | | | | | │ │ │ │ │ │ │
-// |----+----+----+----+----+----| ├────┼────┼────┼────┼────┼────┤
-// | | | | | | | │ │ │ │ │ │ │
-// |----+----+----+----x----x----| ├────╆━━━━╅────┼────┼────┼────┤
-// | | | | | | | │ ┃ ┃ │ │ │ │
-// |----+----+----+----x----x----+----. ┌────┼────╄━━━━╃────┼────┼────┼────┤
-// | | | | | | | | │ │ │ │ │ │ │ │
-// `-------------------+----+----+----/ └┬───┴┬───┴┬───┴┬───┴────┴────┴────┘
-// | | | | │ │ │ │
-// `----+---------' └────┴────┴────┘
-
-#include QMK_KEYBOARD_H
-#include "pvinis.h"
-//#include "iris.h"
-//#include "action_layer.h"
-//#include "eeconfig.h"
-
-#ifdef AUDIO_ENABLE
-# include "audio.h"
-#endif
-
-#ifdef AUDIO_ENABLE
-// #define STARTUP_SONG SONG(SONIC_RING)
-#endif
-
-#ifdef AUDIO_ENABLE
-// float n04[][2] = SONG(CLOSE_ENCOUNTERS_5_NOTE);
-// float n10[][2] = SONG(STARTUP_SOUND);
-// float n11[][2] = SONG(GOODBYE_SOUND);
-// float n12[][2] = SONG(PLANCK_SOUND);
-// float n19[][2] = SONG(MUSIC_ON_SOUND);
-// float n20[][2] = SONG(AUDIO_ON_SOUND);
-// float n29[][2] = SONG(CAPS_LOCK_ON_SOUND);
-// float n30[][2] = SONG(CAPS_LOCK_OFF_SOUND);
-// float n31[][2] = SONG(SCROLL_LOCK_ON_SOUND);
-// float n32[][2] = SONG(SCROLL_LOCK_OFF_SOUND);
-// float n33[][2] = SONG(NUM_LOCK_ON_SOUND);
-// float n34[][2] = SONG(NUM_LOCK_OFF_SOUND);
-// float n40[][2] = SONG(ONE_UP_SOUND);
-// float n49[][2] = SONG(E1M1_DOOM);
-// float n53[][2] = SONG(OLD_SPICE);
-// float n56[][2] = SONG(RICK_ROLL);
-// float n57[][2] = SONG(FF_PRELUDE);
-// RGB_MODE_KNIGHT
-// float n78[][2] = SONG(KATAMARI_ROLLING_STAR);
-#endif
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- // ,-----------------------------. ,-----------------------------.
- // | | | | |GAME|QWER| | | | | | | |
- // |----+----+----+----+----+----| |----+----+----+----+----+----|
- // |Tab | | | | |CRPL| | | | | | |Del |
- // |----+----+----+----x----x----| |----x----x----+----+----+----|
- // |EscC| | | | | | | | | | | |Ent |
- // |----+----+----+----x----x----+----. ,----|----x----x----+----+----+----|
- // |LSft| | | | | |Home| |End | | | | | |Rsft|
- // `-------------------+----+----+----/ \----+----+----+-------------------'
- // |Cmd |LOWR|Bspc| |Spc |RASE|RAlt|
- // `----+---------' `--------------'
- [LR_BASE] = LAYOUT_wrapper(
- // clang-format off
- KC_MUTE, _______, _______, _______, GAME1 , QWERTY , KC_1 , _______, _______, _______, _______, _______,
- KC_TAB , ___________________________________________, ___________________________________________, KC_DEL ,
- PV_ESCC, ___________________________________________, ___________________________________________, KC_ENT ,
- KC_LSFT, ___________________________________________, _______, _______, _______, _______, _______, _______, _______, KC_RSFT,
- KC_LGUI, SYMBOL , KC_BSPC, KC_SPC , SYSCTL , KC_RALT
- // clang-format on
- ),
-
- // ,-----------------------------. ,-----------------------------.
- // | | NUMBERS_L | | NUMBERS_R | |
- // |----+----+----+----+----+----| |----+----+----+----+----+----|
- // | | | | | |
- // |----+ | | +----|
- // | | QWERTY_L | | QWERTY_R | |
- // |----+ +----. ,----| +----|
- // | | | | | | | |
- // `-------------------+----+----+----/ \----+----+----+-------------------'
- // | | | | | | | |
- // `----+---------' `--------------'
- [LR_QWERTY] = LAYOUT_wrapper(
- // clang-format off
- _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, _______,
- _______, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, _______,
- _______, _____________MOD_QWERTY_L2_________________, _________________QWERTY_R2_________________, _______,
- _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format on
- ),
-
- // ,-----------------------------. ,-----------------------------.
- // | | NUMBERS_L | | NUMBERS_R | |
- // |----+----+----+----+----+----| |----+----+----+----+----+----|
- // | | | | | |
- // |----+ | | +----|
- // | | CARPALX_L | | CARPALX_R | |
- // |----+ +----. ,----| +----|
- // | | | | | | | |
- // `-------------------+----+----+----/ \----+----+----+-------------------'
- // | | | | | | | |
- // `----+---------' `--------------'
- [LR_CARPALX] = LAYOUT_wrapper(
- // clang-format off
- _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, _______,
- _______, ________________CARPALX_L1_________________, ________________CARPALX_R1_________________, _______,
- _______, ________________CARPALX_L2_________________, ________________CARPALX_R2_________________, _______,
- _______, ________________CARPALX_L3_________________, _______, _______, ________________CARPALX_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format on
- ),
-
- [LR_SYMBOL] = LAYOUT_wrapper(
- // clang-format off
- KC_F12 , ______________________F_L__________________, ______________________F_R__________________, KC_F11 ,
- _______, _________________SYMBOL_L1_________________, _________________SYMBOL_R1_________________, _______,
- _______, _________________SYMBOL_L2_________________, _________________SYMBOL_R2_________________, _______,
- _______, _________________SYMBOL_L3_________________, _______, _______, _________________SYMBOL_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format on
- ),
-
- [LR_SYSCTL] = LAYOUT_wrapper(
- // clang-format off
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _________________SYSCTL_L1_________________, _________________SYSCTL_R1_________________, _______,
- _______, _________________SYSCTL_L2_________________, _________________SYSCTL_R2_________________, _______,
- _______, _________________SYSCTL_L3_________________, _______, _______, _________________SYSCTL_R3_________________, _______,
- _______, _______, _______, _______, _______, _______
- // clang-format on
- ),
-
- [LR_KBCTL] = LAYOUT_wrapper(
- // clang-format off
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, __________________KBCTL_L1_________________, __________________KBCTL_R1_________________, XXXXXXX,
- XXXXXXX, __________________KBCTL_L2_________________, __________________KBCTL_R2_________________, XXXXXXX,
- BASE , __________________KBCTL_L3_________________, XXXXXXX, XXXXXXX, __________________KBCTL_R3_________________, XXXXXXX,
- XXXXXXX, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX
- // clang-format on
- ),
-
- // ,-----------------------------. ,-----------------------------.
- // | | NUMBERS_L | | NUMBERS_R | |
- // |----+----+----+----+----+----| |----+----+----+----+----+----|
- // | | | | | |
- // |----+ | | +----|
- // |ESC | QWERTY_L | | QWERTY_R | |
- // |----+ +----. ,----| +----|
- // | | | | | | | |
- // `-------------------+----+----+----/ \----+----+----+-------------------'
- // | |SPC | | | | | |
- // `----+---------' `--------------'
- [LR_GAME1] = LAYOUT_wrapper(
- // clang-format off
- _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, KC_BSPC,
- _______, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, QWERTY ,
- KC_ESC , _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, _______,
- _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______,
- _______, _______, KC_SPC , _______, _______, _______
- // clang-format on
- ),
-
- [LR_GAME2] = LAYOUT_wrapper(
- // clang-format off
- _______, ________________NUMBERS_L__________________, ________________NUMBERS_R__________________, KC_BSPC,
- _______, _________________QWERTY_L1_________________, KC_Y , KC_U , KC_UP , KC_O , KC_P , QWERTY ,
- KC_ESC , _________________QWERTY_L2_________________, KC_H , KC_LEFT, KC_DOWN, KC_RGHT, KC_SCLN, _______,
- _______, _________________QWERTY_L3_________________, _______, _______, _________________QWERTY_R3_________________, _______,
- _______, _______, KC_SPC , _______, _______, _______
- // clang-format on
- ),
-};
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_user(uint8_t index, bool clockwise) {
- // if (index == 0) { /* First encoder */
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- // }
- return true;
-}
-#endif
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
-#ifdef AUDIO_ENABLE
-// case PV_S04: if (record->event.pressed) PLAY_SONG(n04); return false; break;
-#endif
- }
- return true; // Process everything else normally
-}
diff --git a/keyboards/keebio/iris/keymaps/pvinis/rules.mk b/keyboards/keebio/iris/keymaps/pvinis/rules.mk
deleted file mode 100644
index 1e7e2d417a..0000000000
--- a/keyboards/keebio/iris/keymaps/pvinis/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-TAP_DANCE_ENABLE = yes
-AUDIO_ENABLE = no # piezo speaker sounds
-RGBLIGHT_ENABLE = yes # rgb leds underlight
-ENCODER_ENABLE = yes # rotary knob
-
-# Some extra stuff to make firmware smaller.
-LTO_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
diff --git a/keyboards/keebio/iris/keymaps/rs/config.h b/keyboards/keebio/iris/keymaps/rs/config.h
deleted file mode 100644
index 8aed71e202..0000000000
--- a/keyboards/keebio/iris/keymaps/rs/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@hexwire.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define TAPPING_TERM 150
-
-#undef RGBLED_NUM
-#define RGBLED_NUM 6
-#define RGBLIGHT_SLEEP
-#define RGBLIGHT_HUE_STEP 1
-#define RGBLIGHT_SAT_STEP 1
-#define RGBLIGHT_VAL_STEP 1
diff --git a/keyboards/keebio/iris/keymaps/rs/keymap.c b/keyboards/keebio/iris/keymaps/rs/keymap.c
deleted file mode 100644
index 40c62bbc81..0000000000
--- a/keyboards/keebio/iris/keymaps/rs/keymap.c
+++ /dev/null
@@ -1,45 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rs.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_MINS,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_EQL ,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_ESCC, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
- //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B ,KC_SPC, KC_BSPC, KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_ENTS,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- KC_LALT,KC_LGUI,KC_SPC , KC_BSPC,KC_CODE,KC_FN
- // `----+----+----' `+---+----+----'
- ),
- [_CODE] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_GRV ,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC, KC_CIRC,KC_LPLT,KC_ASTR,KC_RPGT,KC_NEQL,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_MINS,KC_LBRC, KC_UP ,KC_RBRC,_______,KC_BSLS,
- //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
- _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,_______, _______,KC_AMPR,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_PIPE,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,_______, KC_DOT, _______,_______, _______
- // `----+----+----' `----+----+----'
- ),
- [_FN] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_BLTG,KC_BLUP,_______,_______,_______,KC_BRMU, _______,_______,KC_PGUP,_______,_______,_______,
- //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
- _______,KC_BLDN,_______,_______,KC_RST ,KC_BRMD,_______, KC_VOLU,_______,KC_CTRA,KC_PGDN,KC_CTRE,_______,_______,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,_______, _______, KC_VOLD,KC_MUTE, _______
- // `----+----+----' `----+----+----'
- ),
-};
-
diff --git a/keyboards/keebio/iris/keymaps/rs/readme.md b/keyboards/keebio/iris/keymaps/rs/readme.md
deleted file mode 100644
index d23ab66877..0000000000
--- a/keyboards/keebio/iris/keymaps/rs/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-See [rs readme](../../../../users/rs/readme.md). \ No newline at end of file
diff --git a/keyboards/keebio/iris/keymaps/rs/rules.mk b/keyboards/keebio/iris/keymaps/rs/rules.mk
deleted file mode 100644
index b4f058b4b9..0000000000
--- a/keyboards/keebio/iris/keymaps/rs/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-BACKLIGHT_ENABLE = yes
-BOOTLOADER = atmel-dfu
diff --git a/keyboards/keebio/iris/keymaps/sethBarberee/config.h b/keyboards/keebio/iris/keymaps/sethBarberee/config.h
deleted file mode 100644
index 61aa24ff01..0000000000
--- a/keyboards/keebio/iris/keymaps/sethBarberee/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@keeb.io>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-//#define MASTER_LEFT
-//#define MASTER_RIGHT
-#define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLED_NUM 8
-
-#undef RGBLED_SPLIT
-#define RGBLED_SPLIT { RGBLED_NUM, 0}
diff --git a/keyboards/keebio/iris/keymaps/sethBarberee/keymap.c b/keyboards/keebio/iris/keymaps/sethBarberee/keymap.c
deleted file mode 100644
index b2dc3816f7..0000000000
--- a/keyboards/keebio/iris/keymaps/sethBarberee/keymap.c
+++ /dev/null
@@ -1,82 +0,0 @@
- /* Copyright 2021 SethBarberee <seth.barberee@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "sethBarberee.h"
-
-extern backlight_config_t backlight_config;
-
-#define KC_RST QK_BOOT
-#define KC_BL_S BL_STEP
-#define KC_RTOG RGB_TOG
-#define KC_RMOD RGB_MOD
-#define KC_RHUI RGB_HUI
-#define KC_RHUD RGB_HUD
-#define KC_RSAI RGB_SAI
-#define KC_RSAD RGB_SAD
-#define KC_RVAI RGB_VAI
-#define KC_RVAD RGB_VAD
-#define KC_VK VK_TOGG
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_wrapper(
- KC_ECAP, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS,
- KC_TAB , _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_DEL ,
- KC_LSFT, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- KC_LCTL, _________________QWERTY_L3_________________, KC_SPC, KC_RASE, _________________QWERTY_R3_________________,KC_RSFT,
- KC_LGUI, KC_LOWR, KC_SPC, KC_BSPC , KC_ENT, KC_LALT
- ),
-
- [_LOWER] = LAYOUT(
- KC_TILD,KC_EXLM, KC_AT ,KC_HASH,KC_DLR ,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_BSPC,
- KC_RST ,_______,_______, KC_UP ,_______,_______, KC_GRV , KC_P7 , KC_P8 , KC_P9 ,_______,_______,
- KC_DEL ,_______,KC_LEFT,KC_DOWN,KC_RGHT,KC_LBRC, KC_RBRC, KC_P4 , KC_P5 , KC_P6 ,KC_PLUS,KC_PIPE,
- KC_BL_S,_______,_______,_______,_______,KC_LCBR,KC_LPRN, KC_RPRN,KC_RCBR, KC_P1 , KC_P2 , KC_P3 ,KC_MINS,_______,
- _______,_______,KC_LPRN, KC_DEL ,_______, KC_P0
- ),
-
- [_RAISE] = LAYOUT(
- KC_F12 , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 ,
- _______,_______,_______,_______,_______,_______, _______, _______,_______,_______,_______,_______,
- _______,KC_MPRV,KC_MNXT,KC_VOLU,KC_PGUP,KC_UNDS, KC_EQL ,KC_HOME,_______,_______,_______,KC_BSLS,
- KC_MUTE,KC_MSTP,KC_MPLY,KC_VOLD,KC_PGDN,KC_MINS,_______, _______,KC_PLUS,KC_END ,_______,_______,_______,_______,
- _______,_______,_______, _______,_______, _______
- ),
-
- [_ADJUST] = LAYOUT(
- //,----+----+----+----+----+----. ,----+----+----+----+----+----.
- _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_RTOG,KC_RMOD,KC_RHUI,KC_RSAI,KC_RVAI,_______, _______,_______,_______,_______,_______,_______,
- //|----+----+----+----+----+----| |----+----+----+----+----+----|
- KC_VK, _______,KC_RHUD,KC_RSAD,KC_RVAD,_______, _______,_______,_______,_______,_______,_______,
- //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
- KC_BL_S,KC_RST ,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,
- //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
- _______,_______,_______, _______,_______, _______
- // `----+----+----' `----+----+----'
- )
-
-};
-
-void suspend_power_down_keymap(void){
- backlight_config.enable = false; // disable LED backlight
-}
-
-void suspend_wakeup_init_keymap(void){
- backlight_config.enable = true; // enable LED backlight
-}
diff --git a/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk b/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk
deleted file mode 100644
index b282b1aa4c..0000000000
--- a/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-CONSOLE_ENABLE = no
-NKRO_ENABLE = yes
-VELOCIKEY_ENABLE = yes # I like RGB
-TAP_DANCE_ENABLE = yes # fancy fancy Caps
-LTO_ENABLE = yes # Enable link time optimization
diff --git a/keyboards/keebio/iris/keymaps/wanleg/config.h b/keyboards/keebio/iris/keymaps/wanleg/config.h
deleted file mode 100644
index 6e774d9de7..0000000000
--- a/keyboards/keebio/iris/keymaps/wanleg/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@keeb.io>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#undef USE_I2C
-
-/* Select hand configuration */
-
-// #define MASTER_LEFT
-// #define MASTER_RIGHT
-#define EE_HANDS
-
-#define QMK_ESC_OUTPUT F6 // usually COL
-#define QMK_ESC_INPUT D7 // usually ROW
-#define QMK_LED B0
diff --git a/keyboards/keebio/iris/keymaps/wanleg/keymap.c b/keyboards/keebio/iris/keymaps/wanleg/keymap.c
deleted file mode 100644
index 6f8ff90661..0000000000
--- a/keyboards/keebio/iris/keymaps/wanleg/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-
-#include QMK_KEYBOARD_H
-#include "wanleg.h"
-
-
-#define LAYOUT_iris_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C \
- ) \
- LAYOUT_wrapper( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K31, K32, K33, K34, K35, K36, _______, _______, K37, K38, K39, K3A, K3B, K3C, \
- _______, _______, _______, _______, _______, _______ \
- )
-#define LAYOUT_iris_base_wrapper(...) LAYOUT_iris_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_GK] = LAYOUT_iris_base_wrapper(
- _______________GherkinLike_0_______________,
- _______________GherkinLike_1_______________,
- _______________GherkinLike_2_______________,
- _______________GherkinLike_3_OneHand_______
- ),
- [ONE] = LAYOUT_wrapper(
- _______________Qwerty_Row__0_______________,
- _______________Qwerty_Row__1_______________,
- _______________Qwerty_Row__2_______________,
- KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), _______, _______, SH_T(KC_SPC), SUPRA, KC_RGUI, KC_RALT, GHERKIN, KC_RCTL,
- _______, _______, _______, _______, _______, _______
- ),
- [SUP] = LAYOUT_iris_base_wrapper(
- ________________SUPRA_Row_0________________,
- ________________SUPRA_Row_1________________,
- ________________SUPRA_Row_2________________,
- ________________SUPRA_Row_3________________
- ),
- [SUB] = LAYOUT_iris_base_wrapper(
- _______________SUBTER_Row__0_______________,
- _______________SUBTER_Row__1_______________,
- _______________SUBTER_Row__2_______________,
- _______________SUBTER_Row__3_______________
- ),
- [NUM] = LAYOUT_iris_base_wrapper(
- _______________NUMBERS_Row_0_______________,
- _______________NUMBERS_Row_1_______________,
- _______________NUMBERS_Row_2_______________,
- _______________NUMBERS_Row_3_______________
- ),
- [DIR] = LAYOUT_iris_base_wrapper(
- _____________DIRECTIONS_Row__0_____________,
- _____________DIRECTIONS_Row__1_____________,
- _____________DIRECTIONS_Row__2_____________,
- _______, _______, ONEHAND, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [ETC] = LAYOUT_iris_base_wrapper(
- ______________ETCETERA_Row__0______________,
- ______________ETCETERA_Row__1______________,
- ______________ETCETERA_Row__2______________,
- ______________ETCETERA_Row__3______________
- )
-
-};
-
-
-void matrix_init_keymap(void) {
- DDRD &= ~(1<<5);
- PORTD &= ~(1<<5);
-
- DDRB &= ~(1<<0);
- PORTB &= ~(1<<0);
-}
diff --git a/keyboards/keebio/iris/keymaps/wanleg/rules.mk b/keyboards/keebio/iris/keymaps/wanleg/rules.mk
deleted file mode 100644
index bbb05a5b48..0000000000
--- a/keyboards/keebio/iris/keymaps/wanleg/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-RGBLIGHT_ENABLE = no
-BACKLIGHT_ENABLE = no
-
-SWAP_HANDS_ENABLE = yes
-BOOTLOADER = qmk-dfu
diff --git a/keyboards/keebio/iris/rev8/info.json b/keyboards/keebio/iris/rev8/info.json
index 7d75640801..998cde201d 100644
--- a/keyboards/keebio/iris/rev8/info.json
+++ b/keyboards/keebio/iris/rev8/info.json
@@ -31,7 +31,9 @@
}
},
"transport": {
- "sync_matrix_state": true
+ "sync" :{
+ "matrix_state": true
+ }
}
},
"processor": "RP2040",
diff --git a/keyboards/keebio/levinson/keymaps/dcompact/keymap.c b/keyboards/keebio/levinson/keymaps/dcompact/keymap.c
index f501ef7cef..0495649c42 100644
--- a/keyboards/keebio/levinson/keymaps/dcompact/keymap.c
+++ b/keyboards/keebio/levinson/keymaps/dcompact/keymap.c
@@ -1,7 +1,5 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
-
// Custom Keycodes and Combinations Used
#define DEL_SHF SFT_T(KC_DEL)
#define QUAKE LCTL(KC_GRV)
diff --git a/keyboards/keebio/levinson/keymaps/drogglbecher/rules.mk b/keyboards/keebio/levinson/keymaps/drogglbecher/rules.mk
index b2a5451c82..a22dc3d2a9 100644
--- a/keyboards/keebio/levinson/keymaps/drogglbecher/rules.mk
+++ b/keyboards/keebio/levinson/keymaps/drogglbecher/rules.mk
@@ -1,5 +1,4 @@
AUTO_SHIFT_ENABLE = no
-AUTO_SHIFT_MODIFIERS = no
RGBLIGHT_ENABLE = no
BACKLIGHT_ENABLE = no
UNICODE_ENABLE = yes
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/README.md b/keyboards/keebio/levinson/keymaps/issmirnov/README.md
deleted file mode 100644
index b6a94c6c3d..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Levinson
-
-## Colors
-
-- https://github.com/qmk/qmk_firmware/blob/master/docs/feature_rgblight.md
- - main docs.
-- https://github.com/qmk/qmk_firmware/blob/master/quantum/color.h
- - list of colors
-- https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight.h
- - list of functions for RGB manipulation
-
-## Troubleshooting
-
-- When in doubt, flash both sides of the keyboard. For some reason that helps with LEDs and reponsiveness.
- - `cd qmk_firmware && make keebio/levinson/rev2:issmirnov:dfu-split-right`
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/asci-keymap.txt b/keyboards/keebio/levinson/keymaps/issmirnov/asci-keymap.txt
deleted file mode 100644
index aa5bd08b3d..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/asci-keymap.txt
+++ /dev/null
@@ -1,55 +0,0 @@
- Qwerty
-,-----------------------------------. ,-----------------------------------.
-| Esc | Q | W | E | R | T | | Y | U | I | O | P |⌘ + d|
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| Tab | A | S | D | F | G | | H | J | K | L |TapTo|Mo(Na|
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-|⇧(1) | Z | X | C | V | B | | N | M | . |Comma|Tg(Nu| ' |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-|Ctrl | ⌘⇧ | Alt | Mod | ⌫ | Spc | |Enter| Tab | ↑ | ↓ | ← | → |
-`-----------------------------------' ------------------------------------'
-
- Symb
-,-----------------------------------. ,-----------------------------------.
-| | - | @ | { | } | ` | | * | ! | | | % | + | Esc |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | ^ | _ | ( | ) | $ | | # | = | : | ; |TapTo| " |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | < | > | [ | ] | ~ | | & | ? | / | \ |Tg(Nu| ' |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | | | | | | | | | Esc | : | % | 🔒 |
-`-----------------------------------' ------------------------------------'
-
- Nump
-,-----------------------------------. ,-----------------------------------.
-| | No | No |Lgui(| | | | , | 7 | 8 | 9 | |Reset|
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | |Lgui(|Lgui(|Lgui(| | | 0 | 4 | 5 | 6 |To(Sy| |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | | | |Audio|Audio| | . | 1 | 2 | 3 |To(Qw| |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | | | | | | | | | | |To(Ov| |
-`-----------------------------------' ------------------------------------'
-
- Overwatch
-,-----------------------------------. ,-----------------------------------.
-| Tab | Q | W | E | R | T | |To(0)| | | | |Clear|
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-|Ctrl | A | S | D | F | P | |RgbMo|RgbMo|RgbVa|RgbVa| |RgbTo|
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-|Lshif| Z | X | C | V |Grave| |RgbMo|RgbMo|RgbMo|RgbMo|RgbMo|RgbMo|
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-|Ctrl | F9 |Pscre| H | R | ⎵ | |RgbHu|RgbHu|RgbSa|RgbSa|RgbMo|RgbMo|
-`-----------------------------------' ------------------------------------'
-
- Navi
-,-----------------------------------. ,-----------------------------------.
-| | | | ↑ | | | | | | | | | |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | | ← | ↓ | → | | | |Ctrl | | | | |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | | | | | | | | | | | | |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| | | | | |⌘ + d| | Mod | ⌘⇧ | | | | |
-`-----------------------------------' ------------------------------------'
-
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/config.h b/keyboards/keebio/levinson/keymaps/issmirnov/config.h
deleted file mode 100644
index 033f6dbfe0..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#pragma once
-
-#ifdef RGBLIGHT_ENABLE
- // Enable animations. +5500 bytes
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-
-
- // Map my custom number of LED's
- #undef RGBLED_NUM
- #define RGBLED_NUM 16
- #define RGBLIGHT_LED_MAP { 0, 1, 2, 3, 4, 5, 6, 7, 15, 14, 13, 12, 11, 10, 9, 8 } // When changed, BE SURE to flash EEPROM on both halves and clear it.
-
- // DO NOT USE RGBLED_SPLIT - the slave board will stop responding.
-
- // Turn off RGB when computer sleeps
- #define RGBLIGHT_SLEEP
-
- // custom colors
- #define RGB_CLEAR 0x00, 0x00, 0x00
-
- // MOD indicators
- #define SHFT_LED1 7
- #define GUI_LED1 8
-#endif
-
-#ifdef AUDIO_ENABLE
- #define QMK_SPEAKER C6
- #define AUDIO_PIN C6
- #define NO_MUSIC_MODE // Save 2000 bytes
-#endif
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/keymap.c b/keyboards/keebio/levinson/keymaps/issmirnov/keymap.c
deleted file mode 100644
index f5fbe16c9d..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/keymap.c
+++ /dev/null
@@ -1,124 +0,0 @@
-#include "tap_tog.h"
-
-#ifdef AUDIO_ENABLE
- #include "audio.h"
- #include "sounds.h"
-#endif
-
-
-#ifdef RGBLIGHT_ENABLE
- #include "rgb.h"
-#endif
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// Run `./qmk show levinson` from parent dir to see this layer.
-[_QWERTY] = LAYOUT_ortho_4x12_wrapper(
-KC_ESC , _________________QWERTY_L1_________________, _________________QWERTY_R1_________________ , APPS ,
-KC_TAB , _________________QWERTY_L2_________________, _________________QWERTY_R2_________________ , MO(_NAVI) ,
-OSMSFT , _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ , KC_QUOTE ,
-KC_LCTL , MODSFT , KC_LALT , KC_LGUI , KC_BSPC , KC_SPC , KC_ENTER , KC_TAB , KC_UP , KC_DOWN , KC_LEFT , KC_RGHT
-), // Note: visualizer expects this closing parens to be right at the start of the line.
-
-// Run `./qmk show levinson` from parent dir to see this layer.
-[_SYMB] = LAYOUT_ortho_4x12_wrapper(
-_______ , _________________SYMB_L1___________________, _________________SYMB_R1___________________ , KC_ESC ,
-_______ , _________________SYMB_L2___________________, _________________SYMB_R2___________________ , KC_DQT ,
-_______ , _________________SYMB_L3___________________, _________________SYMB_R3___________________ , KC_QUOTE ,
-_______ , ___________________BLANK___________________, _______ , _______ , KC_ESC , KC_COLN , KC_PERC , LOCK
-), // Note: visualizer expects this closing parens to be right at the start of the line.
-
-// Run `./qmk show levinson` from parent dir to see this layer.
-[_NUMP] = LAYOUT_ortho_4x12_wrapper(
-_______ , _________________NUMP_L1___________________ , _________________NUMP_R1___________________ , QK_BOOT,
-_______ , _________________NUMP_L2___________________ , _________________NUMP_R2___________________ , _______ ,
-_______ , _________________NUMP_L3___________________ , _________________NUMP_R3___________________ , _______ ,
-_______ , ___________________BLANK___________________ , _______ , _______ , _______ , _______ , TO(_OVERWATCH) , _______
-), // Note: visualizer expects this closing parens to be right at the start of the line.
-
-// Run `./qmk show levinson` from parent dir to see this layer.
-[_OVERWATCH] = LAYOUT_ortho_4x12_wrapper(
-______________OVERWATCH_L1_________________ , TO(0) , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , EE_CLR ,
-______________OVERWATCH_L2_________________ , RGB_MODE_FORWARD , RGB_MODE_REVERSE , RGB_VAI , RGB_VAD , XXXXXXX , RGB_TOG ,
-______________OVERWATCH_L3_________________ , RGB_MODE_PLAIN , RGB_MODE_BREATHE , RGB_MODE_RAINBOW , RGB_MODE_SWIRL , RGB_MODE_SNAKE , RGB_MODE_XMAS ,
-______________OVERWATCH_L4_________________ , KC_SPACE, RGB_HUI , RGB_HUD , RGB_SAI , RGB_SAD , RGB_MODE_RGBTEST , RGB_MODE_GRADIENT
-), // Note: visualizer expects this closing parens to be right at the start of the line.
-
-// Run `./qmk show levinson` from parent dir to see this layer.
-[_NAVI] = LAYOUT_ortho_4x12_wrapper(
-XXXXXXX , _________________NAVI_L1___________________ , _________________NAVI_R1___________________ , XXXXXXX ,
-XXXXXXX , _________________NAVI_L2___________________ , _________________NAVI_R2___________________ , XXXXXXX ,
-XXXXXXX , _________________NAVI_L3___________________ , _________________NAVI_R3___________________ , XXXXXXX ,
-XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , APPS , KC_LGUI , MODSFT , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX
-), // Note: visualizer expects this closing parens to be right at the start of the line.
-
-};
-
-// called by QMK during key processing before the actual key event is handled. Useful for macros.
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LOCK:
- if (record->event.pressed) {
- rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL);
- }
- return true; // Let QMK send the press/release events
- break;
-
- case TAP_TOG_LAYER:
- process_tap_tog(_SYMB,record);
- return false;
- break;
- default:
- tap_tog_count = 0; // reset counter.
- tap_tog_layer_other_key_pressed = true; // always set this to true, TAP_TOG_LAYER handlers will handle interpreting this
- break;
- }
- return true;
-}
-
-
-// Runs constantly in the background, in a loop every 100ms or so.
-// Best used for LED status output triggered when user isn't actively typing.
-void matrix_scan_user(void) {
- #ifdef RGBLIGHT_ENABLE
- matrix_scan_rgb();
- #endif // RGBLIGHT_ENABLE
-}
-
-// only runs when when the layer is changed, good for updating LED's and clearing sticky state
-// RGB modes: https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight.h
-layer_state_t layer_state_set_user(layer_state_t state) {
- #ifdef RGBLIGHT_ENABLE
- layer_state_set_rgb(state);
- #endif
- uint8_t layer = get_highest_layer(state);
- combo_enable(); // by default, enable combos.
- switch (layer) {
- case 0:
- break;
- case 1:
- clear_mods();
- break;
- case 2:
- clear_mods();
- break;
- case _OVERWATCH:
- clear_mods();
- combo_disable(); // We don't want combos in overwatch
- #ifdef AUDIO_ENABLE
- // PLAY_SONG(song_overwatch);
- #endif
- break;
- default:
- break;
- }
- return state;
-};
-
-// Runs boot tasks for keyboard.
-// Plays a welcome song and clears RGB state.
-void matrix_init_user(void) {
- #ifdef RGBLIGHT_ENABLE
- keyboard_post_init_rgb();
- #endif
-}
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/rgb.c b/keyboards/keebio/levinson/keymaps/issmirnov/rgb.c
deleted file mode 100644
index 0b123bb8d2..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/rgb.c
+++ /dev/null
@@ -1,61 +0,0 @@
-#include "rgb.h"
-
-// TODO gate this debugging header
-#include <print.h>
-
-// Wired up in layer_state_set_user in keymap.c
-layer_state_t layer_state_set_rgb(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case _QWERTY:
- rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_sethsv_noeeprom(RGB_CLEAR);
- break;
- case _SYMB:
- rgblight_sethsv_noeeprom(HSV_RED);
- break;
- case _NUMP:
- rgblight_sethsv_noeeprom(HSV_GREEN);
- break;
- case _OVERWATCH:
- rgblight_sethsv_noeeprom(HSV_BLUE);
- // TODO set up animated rainbow swirl with overwatch colors.
- // rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_SWIRL);
- // rgblight_effect_breathing(&animation_status);
- // rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3);
- break;
- case _NAVI:
- rgblight_sethsv_noeeprom(HSV_AZURE);
- break;
- default: // for any other layers, or the default layer
- break;
- }
- return state;
-}
-
-
-void keyboard_post_init_rgb(void) {
- rgblight_enable();
- rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_setrgb(RGB_CLEAR);
- uprintf("Reset RGB colors");
-}
-
-void matrix_scan_rgb(void) {
- set_rgb_indicators(get_mods(), get_oneshot_mods());
-}
-
-void set_rgb_indicators(uint8_t this_mod, uint8_t this_osm) {
- if (get_highest_layer(layer_state) == _QWERTY) {
- if ((this_mod | this_osm) & MOD_MASK_SHIFT) {
- rgblight_setrgb_at(RGB_GOLD, SHFT_LED1);
- } else {
- rgblight_setrgb_at(RGB_CLEAR, SHFT_LED1);
- }
-
- if ((this_mod | this_osm) & MOD_MASK_GUI) {
- rgblight_setrgb_purple_at(GUI_LED1);
- } else {
- rgblight_setrgb_at(RGB_CLEAR, GUI_LED1);
- }
- }
-}
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/rgb.h b/keyboards/keebio/levinson/keymaps/issmirnov/rgb.h
deleted file mode 100644
index 8b14d8571d..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/rgb.h
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-#include "quantum.h"
-#include "issmirnov.h"
-
-// Welcome animation when keyboard boots
-void keyboard_post_init_rgb(void);
-
-// If rgb enabled, set underglow for layer
-layer_state_t layer_state_set_rgb(layer_state_t state);
-
-// Enhance matrix scan code. Note: keep this light, since it runs every 100ms
-void matrix_scan_rgb(void);
-
-// Light up SHIFT and GUI indicator when pressed.
-void set_rgb_indicators(uint8_t this_mod, uint8_t this_osm);
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/rules.mk b/keyboards/keebio/levinson/keymaps/issmirnov/rules.mk
deleted file mode 100644
index 6cbed2f770..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Enable RGB underglow
-# https://beta.docs.qmk.fm/features/feature_rgblight
-RGBLIGHT_ENABLE = yes # +5500 bytes
-ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)
- # Include my fancy rgb functions source here
- SRC += rgb.c
-endif
-
-# Disable backlight, since I use RGB underglow.
-# https://beta.docs.qmk.fm/features/feature_backlight
-BACKLIGHT_ENABLE = no
-
-# Control piezo speaker on C6
-AUDIO_ENABLE = yes # +4000 bytes
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/sounds.h b/keyboards/keebio/levinson/keymaps/issmirnov/sounds.h
deleted file mode 100644
index dac9d276c1..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/sounds.h
+++ /dev/null
@@ -1,9 +0,0 @@
-// ................................................................ Audio Sounds
-#pragma once
-#ifdef AUDIO_ENABLE
-// Songs come from quantum/audio/song_list.h
-float song_startup [][2] = SONG(STARTUP_SOUND);
-float song_goodbye [][2] = SONG(GOODBYE_SOUND);
-float song_overwatch[][2] = SONG(OVERWATCH_THEME);
-#undef AUDIO_VOICES
-#endif
diff --git a/keyboards/keebio/levinson/keymaps/issmirnov/template.txt b/keyboards/keebio/levinson/keymaps/issmirnov/template.txt
deleted file mode 100644
index 8787cee7b5..0000000000
--- a/keyboards/keebio/levinson/keymaps/issmirnov/template.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-,-----------------------------------. ,-----------------------------------.
-| 0 | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 10 | 11 |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| 12 | 13 | 14 | 15 | 16 | 17 | | 18 | 19 | 20 | 21 | 22 | 23 |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| 24 | 25 | 26 | 27 | 28 | 29 | | 30 | 31 | 32 | 33 | 34 | 35 |
-|-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----|
-| 36 | 37 | 38 | 39 | 40 | 41 | | 42 | 43 | 44 | 45 | 46 | 47 |
-`-----------------------------------' ------------------------------------'
diff --git a/keyboards/keebio/levinson/keymaps/losinggeneration/README.md b/keyboards/keebio/levinson/keymaps/losinggeneration/README.md
deleted file mode 100644
index 44c904508a..0000000000
--- a/keyboards/keebio/levinson/keymaps/losinggeneration/README.md
+++ /dev/null
@@ -1,28 +0,0 @@
-losinggeneration's Levinson Layout
-============================
-
-See description of the layout in the common folder
-[here](../../../../users/losinggeneration/README.md)
-
-## Features
-- Adjust
- - Removed AGSwap, AGNorm, & Del
- - Added Caps Lock, F1-F12 in a 4x3 grid, backlight control, arrow cluster,
- and layer transitions to the new layers.
- - Moved Reset & Audio control to the right side
-
-## Layouts
-
-### Adjust (Lower + Raise)
-
-```
- ,-----------------------------------------..-----------------------------------------.
- | | F1 | F2 | F3 | F4 |BL Off|| RESET| Game |Numpad|Mouse | |Sleep |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | | F5 | F6 | F7 | F8 |BL Tg ||Aud on|Qwerty|Colmak|Workmn|Dvorak| |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | CAPS | F9 | F10 | F11 | F12 |BL On ||Audoff| | | | Up | |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | | | | | | || | | XXX | Left | Down |Right |
- `-----------------------------------------''-----------------------------------------'
-```
diff --git a/keyboards/keebio/levinson/keymaps/losinggeneration/config.h b/keyboards/keebio/levinson/keymaps/losinggeneration/config.h
deleted file mode 100644
index 5c8956ab69..0000000000
--- a/keyboards/keebio/levinson/keymaps/losinggeneration/config.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@hexwire.com>
-Copyright 2018 Harley Laue <losinggeneration@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-long with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-/* #define _MASTER_RIGHT */
-/* #define EE_HANDS */
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/levinson/keymaps/losinggeneration/keymap.c b/keyboards/keebio/levinson/keymaps/losinggeneration/keymap.c
deleted file mode 100644
index d943d1cc16..0000000000
--- a/keyboards/keebio/levinson/keymaps/losinggeneration/keymap.c
+++ /dev/null
@@ -1,38 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "losinggeneration-config.h"
-#include "losinggeneration-keymap.h"
-
-extern keymap_config_t keymap_config;
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QWERTY] = CATMAP( QWERTY_LAYER ),
-[_COLEMAK] = CATMAP( COLEMAK_LAYER ),
-[_WORKMAN] = CATMAP( WORKMAN_LAYER ),
-[_DVORAK] = CATMAP( DVORAK_LAYER ),
-[_GAME] = CATMAP( GAME_LAYER ),
-[_NUMPAD] = CATMAP( NUMPAD_LAYER ),
-[_MOUSE] = CATMAP( MOUSE_LAYER ),
-[_LOWER] = CATMAP( LOWER_LAYER ),
-[_RAISE] = CATMAP( RAISE_LAYER ),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------..-----------------------------------------.
- * | | F1 | F2 | F3 | F4 |BL Off|| QK_BOOT| Game |Numpad|Mouse | |Sleep |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | | F5 | F6 | F7 | F8 |BL Tg ||Aud on|Qwerty|Colmak|Workmn|Dvorak| |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | CAPS | F9 | F10 | F11 | F12 |BL On ||Audoff| | | | Up | |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | | | | | | || | | XXX | Left | Down |Right |
- * `-----------------------------------------''-----------------------------------------'
- */
-[_ADJUST] = CATMAP(
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , BL_OFF , QK_BOOT, TO_GAME, TO_NUM , TO_MS , _______, KC_SLEP,
- _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , BL_TOGG, AU_ON , QWERTY , COLEMAK, WORKMAN, DVORAK , _______,
- KC_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , BL_ON , AU_OFF , _______, _______, _______, KC_UP , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT
-)
-
-};
-
diff --git a/keyboards/keebio/levinson/keymaps/losinggeneration/rules.mk b/keyboards/keebio/levinson/keymaps/losinggeneration/rules.mk
deleted file mode 100644
index b10c462f74..0000000000
--- a/keyboards/keebio/levinson/keymaps/losinggeneration/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-AUDIO_ENABLE = no # Audio output on port C6
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-COMMAND_ENABLE = no # Commands for debug and configuration
-CONSOLE_ENABLE = no # Console for debug(+400)
-MIDI_ENABLE = no # MIDI controls
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-
diff --git a/keyboards/keebio/levinson/keymaps/rossman360/keymap.c b/keyboards/keebio/levinson/keymaps/rossman360/keymap.c
deleted file mode 100644
index aeb501bf1b..0000000000
--- a/keyboards/keebio/levinson/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,135 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define PGMOD LT(_NUM, KC_PGDN)
-#define TABMOD LT(_FN1, KC_TAB)
-#define SPCMOD LT(_FN1, KC_SPACE)
-#define ENTMOD LT(_FN2, KC_ENTER)
-#define ESCMOD LT(_NUM, KC_ESC)
-#define RSMOD LT(_FN1, KC_RSFT)
-#define CMDBSP MT(MOD_LGUI, KC_BSPC)
-#define ALTDEL MT(MOD_LALT, KC_DEL)
-#define CTRLSP MT(MOD_LCTL, KC_SPACE)
-#define BWORD LCTL(KC_BSPC)
-#define JUMPBACK LSFT(KC_TAB)
-#define LWORD LCTL(KC_LEFT)
-#define RWORD LCTL(KC_RIGHT)
-#define UNDO LCTL(KC_Z)
-#define NTAB LCTL(KC_T)
-#define CTAB LCTL(KC_W)
-#define XPANDR LCTL(LSFT(KC_X))
-#define TAB1 LCTL(KC_1)
-#define TAB2 LCTL(KC_2)
-#define TAB3 LCTL(KC_3)
-#define TAB4 LCTL(KC_4)
-#define RVOLU LCTL(KC_RBRC)
-#define RVOLD LCTL(KC_LBRC)
-
-enum layer_names {
- _BASE,
- _DEL,
- _FN1,
- _FN2,
- _NUM,
-};
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- CSPEAK,
- PARADOWN,
- PMERGE,
- WREFRESH,
- REMCAPS,
- SPEAK1,
- SPEAK2,
- SPEAK3,
- SPEAK4
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
-switch (keycode) {
- case CSPEAK:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_PAGEDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PAGEDOWN));
- }
- break;
- case SPEAK1:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_PAGEDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PAGEDOWN) SS_LCTL(SS_TAP(X_1)));
- }
- break;
- case SPEAK2:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_PAGEDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PAGEDOWN) SS_LCTL(SS_TAP(X_2)));
- }
- break;
- case SPEAK3:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_PAGEDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PAGEDOWN) SS_LCTL(SS_TAP(X_3)));
- }
- break;
- case SPEAK4:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_PAGEDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PAGEDOWN) SS_LCTL(SS_TAP(X_4)));
- }
- break;
- case PARADOWN:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_PAGEDOWN) SS_TAP(X_ENTER) SS_TAP(X_PAGEDOWN));
- }
- break;
- case PMERGE:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_HOME) SS_TAP(X_BACKSPACE) SS_TAP(X_SPACE) SS_LCTL(SS_TAP(X_BACKSPACE)) SS_TAP(X_SPACE));
- }
- break;
- case WREFRESH:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_SPACE) SS_TAP(X_BACKSPACE));
- }
- break;
- case REMCAPS:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_LEFT) SS_TAP(X_LEFT) SS_LCTL(SS_TAP(X_LEFT)) SS_TAP(X_DELETE));
- }
- break;
-};
-return true;
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_BASE] = LAYOUT_ortho_4x12(
- KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , NTAB ,
- JUMPBACK, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS,
- CMDBSP , ALTDEL , KC_NO , CTRLSP , TABMOD , PGMOD , ENTMOD , SPCMOD , MO(_DEL),KC_NO , KC_BSPC, KC_DEL
- ),
-
-[_FN1] = LAYOUT_ortho_4x12(
- _______, TAB1 , TAB2 , TAB3 , TAB4 , _______, _______, UNDO , _______, _______, _______, CTAB ,
- KC_CAPS, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP , KC_RIGHT,KC_END , KC_NO ,
- _______, _______, XPANDR , _______, _______, _______, _______, PMERGE , KC_DOWN, _______, _______, _______,
- WREFRESH,_______, _______, _______, LWORD , RWORD , RVOLD , RVOLU , _______, _______, _______, _______
- ),
-
-[_FN2] = LAYOUT_ortho_4x12(
- _______, SPEAK1 , SPEAK2 , SPEAK3 , SPEAK4 , _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, PARADOWN, CSPEAK, _______, _______, _______, _______, _______, _______
- ),
-
-[_DEL] = LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, _______, UNDO , _______, _______, _______, CTAB ,
- REMCAPS, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_UP ,KC_RIGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______,
- _______, _______, _______, KC_DEL , KC_BSPC, BWORD , _______, _______, _______, _______, _______, _______
- ),
-
-[_NUM] = LAYOUT_ortho_4x12(
- _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_MINS, KC_EQL,
- KC_CAPS, _______, _______, _______, _______, _______, KC_MINS, KC_4 , KC_5 , KC_6 , KC_COLN, _______,
- _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_1 , KC_2 , KC_3 , KC_BSLS, _______,
- _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_0 , _______, _______, _______
- )
-};
diff --git a/keyboards/keebio/levinson/keymaps/steno/keymap.c b/keyboards/keebio/levinson/keymaps/steno/keymap.c
index 854ef41999..067e560d1b 100644
--- a/keyboards/keebio/levinson/keymaps/steno/keymap.c
+++ b/keyboards/keebio/levinson/keymaps/steno/keymap.c
@@ -1,5 +1,4 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
extern keymap_config_t keymap_config;
diff --git a/keyboards/keebio/levinson/keymaps/xtonhasvim/config.h b/keyboards/keebio/levinson/keymaps/xtonhasvim/config.h
deleted file mode 100644
index 53847db93a..0000000000
--- a/keyboards/keebio/levinson/keymaps/xtonhasvim/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-#pragma once
-
-// #define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-// #define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// help for fast typist+dual function keys?
-#define PERMISSIVE_HOLD
-
-// where is the cord plugged in?
-#define MASTER_LEFT
diff --git a/keyboards/keebio/levinson/keymaps/xtonhasvim/keymap.c b/keyboards/keebio/levinson/keymaps/xtonhasvim/keymap.c
deleted file mode 100644
index b260f5d43c..0000000000
--- a/keyboards/keebio/levinson/keymaps/xtonhasvim/keymap.c
+++ /dev/null
@@ -1,237 +0,0 @@
- /* Copyright 2015-2017 Christon DeWan
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "xtonhasvim.h"
-#include "fancylighting.h"
-
-/************************************
- * states
- ************************************/
-
-enum layers {
- _QWERTY,
- _LOWER,
- _RAISE,
- _ADJUST,
- _MOVE,
- _MOUSE,
- _CMD
-};
-
-extern uint8_t vim_cmd_layer(void) { return _CMD; }
-
-/************************************
- * keymaps!
- ************************************/
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Ctrl*| A* | S | D | F | G | H | J | K | L | ;* | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | chkwm| | Alt | GUI |Lower*| Sp|ace |Raise*| SPC | GUI | | Vim |
- * `-----------------------------------------------------------------------------------'
- *
- * - Ctrl acts as Esc when tapped.
- * - Holding A or ; switches to movement layer.
- * - Raise and Lower are one-shot layers.
- */
-[_QWERTY] = LAYOUT_ortho_4x12(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(_MOVE,KC_SCLN), KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT) ,
- LSFT(KC_LALT), MO(_MOVE), KC_LALT, KC_LGUI, MO(_LOWER), KC_SPC, KC_SPC, MO(_RAISE), KC_RGUI, KC_RALT, MO(_MOVE), VIM_START
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | ! | @ | # | $ | % | ^ | & | * | ( | ) | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | Next | Vol- | Vol+ | Play |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Bail | | | | | |Raise | | | Bail | |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_ortho_4x12(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSPC,
- KC_DEL, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, X_____X, X_____X, X_____X, X_____X, FIREY_RETURN,
- QK_BOOT, TO(_QWERTY), _______, _______, _______, _______, _______, MO(_RAISE), _______, _______, TO(_QWERTY), X_____X
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | Next | Vol- | Vol+ | Play |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Bail | | |Lower | | | | | | Bail | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_ortho_4x12(
- KC_GRV, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_DEL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, FIREY_RETURN,
- X_____X, TO(_QWERTY), _______, _______, MO(_LOWER), _______, _______, _______, _______, _______, TO(_QWERTY), QK_BOOT
-),
-
-
-/* Adjust (Lower + Raise)
- * ,-------------------------------------------------------------------------------------.
- * |BL Raise| | | | | | | | | | | |
- * |--------+------+------+------+------+-------------+------+------+------+------+------|
- * |BL Lower| | | | | | | | | | | |
- * |--------+------+------+------+------+------|------+------+------+------+------+------|
- * |BL STEP | | | | | | | Next | Vol- | Vol+ | Play | |
- * |--------+------+------+------+------+------+------+------+------+------+------+------|
- * |Backlite| Bail | | | | | | | | | Bail | |
- * `-------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_ortho_4x12(
- BL_UP, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, RGB_MODE_PLAIN,
- BL_DOWN, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, RGB_MODE_REVERSE,
- BL_STEP, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, RGB_MODE_FORWARD,
- BL_TOGG, TO(_MOUSE), _______, _______, _______, _______, _______, _______, _______, _______, TO(_QWERTY), RGB_TOG
-),
-
-
-/* movement layer (hold semicolon) */
-[_MOVE] = LAYOUT_ortho_4x12(
- TO(_QWERTY), X_____X, X_____X, X_____X, X_____X, X_____X, KC_HOME, KC_PGDN, KC_PGUP, KC_END, X_____X, X_____X,
- _______, X_____X, LGUI(KC_LBRC), LGUI(LSFT(KC_LBRC)), LGUI(LSFT(KC_RBRC)), LGUI(KC_RBRC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, _______, _______, _______, _______, X_____X, X_____X, _______, _______, _______, _______, X_____X
-),
-
-/* mouse layer
- */
-[_MOUSE] = LAYOUT_ortho_4x12(
- TO(_QWERTY), X_____X, X_____X, KC_MS_UP, X_____X, X_____X, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_RIGHT, X_____X, X_____X,
- _______, X_____X, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, X_____X, X_____X, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, X_____X, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, TO(_QWERTY), _______, _______, _______, X_____X, X_____X, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-/* vim command layer.
- */
-[_CMD] = LAYOUT_ortho_4x12(
- X_____X, X_____X, VIM_W, VIM_E, X_____X, X_____X, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, X_____X,
- VIM_ESC, VIM_A, VIM_S, VIM_D, X_____X, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, X_____X, X_____X,
- VIM_SHIFT, X_____X, VIM_X, VIM_C, VIM_V, VIM_B, X_____X, X_____X, VIM_COMMA, VIM_PERIOD, X_____X, VIM_SHIFT,
- _______, TO(_QWERTY), _______, _______, X_____X, X_____X, X_____X, X_____X, _______, _______, TO(_QWERTY), X_____X
-)
-
-};
-
-
-
-#define C_RED 0xFF, 0x00, 0x00
-#define C_GRN 0x00, 0xFF, 0x00
-#define C_BLU 0x00, 0x00, 0xFF
-
-#define C_YAN 0x00, 0xFF, 0xFF
-#define C_PRP 0x7A, 0x00, 0xFF
-#define C_ORG 0xFF, 0x93, 0x00
-
-void rgbflag(uint8_t r, uint8_t g, uint8_t b, uint8_t rr, uint8_t gg, uint8_t bb) {
- LED_TYPE *target_led = user_rgb_mode ? shadowed_led : led;
- for (int i = 0; i < RGBLED_NUM; i++) {
- switch (i) {
- case 10: case 11:
- target_led[i].r = r;
- target_led[i].g = g;
- target_led[i].b = b;
- break;
- case 0: case 1:
- target_led[i].r = rr;
- target_led[i].g = gg;
- target_led[i].b = bb;
- break;
- default:
- target_led[i].r = 0;
- target_led[i].g = 0;
- target_led[i].b = 0;
- break;
- }
- }
- rgblight_set();
-}
-
-void set_state_leds(void) {
- if (rgblight_get_mode() == 1) {
- switch (get_highest_layer(layer_state)) {
- case _RAISE:
- rgbflag(C_BLU, C_GRN);
- break;
- case _LOWER:
- rgbflag(C_BLU, C_RED);
- break;
- case _ADJUST:
- rgbflag(C_BLU, C_PRP);
- break;
- case _MOVE:
- rgbflag(C_RED, C_PRP);
- break;
- case _MOUSE:
- rgbflag(C_RED, C_GRN);
- break;
- case _CMD:
- switch(vstate) {
- case VIM_V:
- case VIM_VI:
- case VIM_VS:
- rgbflag(C_GRN, C_YAN);
- break;
- case VIM_C:
- case VIM_CI:
- rgbflag(C_GRN, C_ORG);
- break;
- case VIM_D:
- case VIM_DI:
- rgbflag(C_GRN, C_RED);
- break;
- case VIM_G:
- rgbflag(C_GRN, C_BLU);
- break;
- case VIM_Y:
- rgbflag(C_GRN, C_PRP);
- break;
- case VIM_START:
- default:
- rgbflag(C_GRN, C_GRN);
- break;
- }
- break;
- default: // for any other layers, or the default layer
- rgbflag(C_YAN, C_YAN);
- break;
- }
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST);
-}
diff --git a/keyboards/keebio/levinson/keymaps/xtonhasvim/readme.md b/keyboards/keebio/levinson/keymaps/xtonhasvim/readme.md
deleted file mode 100644
index 9ff4ce1f19..0000000000
--- a/keyboards/keebio/levinson/keymaps/xtonhasvim/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Xton has a tiny keyboard! With Vim!
-
-Based on the standard Planck layout with a few changes:
-
-* Escape moved to dual-function with control.
-* Dedicated movement and mouse layers.
-* Top and middle row swapped in `_RAISE` and `_LOWER` because I never use F-keys.
-* Vim layers! See `users/xtonhasvim`.
-
diff --git a/keyboards/keebio/levinson/keymaps/xtonhasvim/rules.mk b/keyboards/keebio/levinson/keymaps/xtonhasvim/rules.mk
deleted file mode 100644
index ad5466991c..0000000000
--- a/keyboards/keebio/levinson/keymaps/xtonhasvim/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# MOUSEKEY_ENABLE = yes
-# BACKLIGHT_ENABLE = yes
-# AUDIO_ENABLE = no
-
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
diff --git a/keyboards/keebio/nyquist/keymaps/losinggeneration/README.md b/keyboards/keebio/nyquist/keymaps/losinggeneration/README.md
deleted file mode 100644
index b03f81583d..0000000000
--- a/keyboards/keebio/nyquist/keymaps/losinggeneration/README.md
+++ /dev/null
@@ -1,29 +0,0 @@
-losinggeneration's Nyquist Layout
-============================
-
-See description of the layout in the common folder
-[here](../../../../users/losinggeneration/README.md)
-
-## Features
-- Adjust
- - Removed AGSwap, AGNorm, & Del
- - Added Caps Lock, F1-F12 in a 4x3 grid, arrow cluster, and layer transitions
- to the new layers.
-
-## Layouts
-
-### Adjust (Lower + Raise)
-
-```
- ,-----------------------------------------..-----------------------------------------.
- | RESET|Debug | | | | || | | | | | |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| |Sleep |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | | F5 | F6 | F7 | F8 | || |Qwerty|Colmak|Workmn|Dvorak| |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | CAPS | F9 | F10 | F11 | F12 | || | | | | Up | |
- |------+------+------+------+------+------||------+------+------+------+------+------|
- | | | | | | || | | XXX | Left | Down |Right |
- `-----------------------------------------''-----------------------------------------'
-```
diff --git a/keyboards/keebio/nyquist/keymaps/losinggeneration/config.h b/keyboards/keebio/nyquist/keymaps/losinggeneration/config.h
deleted file mode 100644
index 38d1939580..0000000000
--- a/keyboards/keebio/nyquist/keymaps/losinggeneration/config.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@hexwire.com>
-Copyright 2018 Harley Laue <losinggeneration@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-long with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-/* #define _MASTER_RIGHT */
-/* #define EE_HANDS */
diff --git a/keyboards/keebio/nyquist/keymaps/losinggeneration/keymap.c b/keyboards/keebio/nyquist/keymaps/losinggeneration/keymap.c
deleted file mode 100644
index d8c2daded8..0000000000
--- a/keyboards/keebio/nyquist/keymaps/losinggeneration/keymap.c
+++ /dev/null
@@ -1,55 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "losinggeneration-config.h"
-#include "losinggeneration-keymap.h"
-
-extern keymap_config_t keymap_config;
-
-#define NUMBER_ROW \
- KC_GRV ,KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QWERTY] = CATMAP( NUMBER_ROW, QWERTY_LAYER ),
-[_COLEMAK] = CATMAP( NUMBER_ROW, COLEMAK_LAYER ),
-[_WORKMAN] = CATMAP( NUMBER_ROW, WORKMAN_LAYER ),
-[_DVORAK] = CATMAP( NUMBER_ROW, DVORAK_LAYER ),
-[_GAME] = CATMAP( NUMBER_ROW, GAME_LAYER ),
-[_NUMPAD] = CATMAP(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NUM, KC_PAST, KC_PSLS, KC_BSPC, KC_BSPC,
- NUMPAD_LAYER
-),
-
-[_MOUSE] = CATMAP(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- MOUSE_LAYER
-),
-
-[_LOWER] = CATMAP(
- KC_TILD, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL ,
- LOWER_LAYER
-),
-
-[_RAISE] = CATMAP(NUMBER_ROW, RAISE_LAYER ),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------..-----------------------------------------.
- * | Boot |Debug | | | | || | | | | | |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | || | Game |Numpad| Mouse| |Sleep |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | | F5 | F6 | F7 | F8 | || |Qwerty|Colmak|Workmn|Dvorak| |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | CAPS | F9 | F10 | F11 | F12 | || | | | | Up | |
- * |------+------+------+------+------+------||------+------+------+------+------+------|
- * | | | | | | || | | XXX | Left | Down |Right |
- * `-----------------------------------------''-----------------------------------------'
- */
-[_ADJUST] = CATMAP(
- QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, _______, TO_GAME, TO_NUM , TO_MS , _______, KC_SLEP,
- _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , _______, _______, QWERTY , COLEMAK, WORKMAN, DVORAK , _______,
- KC_CAPS, KC_F9 , KC_F10, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, KC_UP , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT
-)
-};
-
diff --git a/keyboards/keebio/nyquist/keymaps/losinggeneration/rules.mk b/keyboards/keebio/nyquist/keymaps/losinggeneration/rules.mk
deleted file mode 100644
index 34b0ba318f..0000000000
--- a/keyboards/keebio/nyquist/keymaps/losinggeneration/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-AUDIO_ENABLE = no # Audio output on port C6
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-COMMAND_ENABLE = no # Commands for debug and configuration
-CONSOLE_ENABLE = no # Console for debug(+400)
-MIDI_ENABLE = no # MIDI controls
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
diff --git a/keyboards/keebio/nyquist/rev4/info.json b/keyboards/keebio/nyquist/rev4/info.json
index d18af71952..043bb02f01 100644
--- a/keyboards/keebio/nyquist/rev4/info.json
+++ b/keyboards/keebio/nyquist/rev4/info.json
@@ -28,7 +28,9 @@
}
},
"transport": {
- "sync_matrix_state": true
+ "sync" :{
+ "matrix_state": true
+ }
}
},
"matrix_pins": {
diff --git a/keyboards/keebio/quefrency/keymaps/bcat/config.h b/keyboards/keebio/quefrency/keymaps/bcat/config.h
deleted file mode 100644
index 32510e9031..0000000000
--- a/keyboards/keebio/quefrency/keymaps/bcat/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Use an extra LED on the right side since it's wider on the 65% PCB. */
-#undef RGBLED_NUM
-#define RGBLED_NUM 17
-
-/* Set up RGB lighting so it works with either side as master. */
-#undef RGBLED_SPLIT
-#define RGBLED_SPLIT \
- { 8, 9 }
diff --git a/keyboards/keebio/quefrency/keymaps/bcat/keymap.c b/keyboards/keebio/quefrency/keymaps/bcat/keymap.c
deleted file mode 100644
index a11bfc4eb0..0000000000
--- a/keyboards/keebio/quefrency/keymaps/bcat/keymap.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "bcat.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- /* Default layer: http://www.keyboard-layout-editor.com/#/gists/60a262432bb340b37d364a4424f3037b */
- [LAYER_DEFAULT] = LAYOUT_65(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_PGUP,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_LCTL, KC_LGUI, KC_LALT, LY_FN1, KC_SPC, KC_SPC, XXXXXXX, KC_RALT, LY_FN1, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- /* Function layer: http://www.keyboard-layout-editor.com/#/gists/59636898946da51f91fb290f8e078b4d */
- [LAYER_FUNCTION_1] = LAYOUT_65(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, RGB_HUI,
- KC_CAPS, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EE_CLR, QK_BOOT, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, _______, RGB_SAI,
- _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_SAD,
- _______, KC_APP, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_HUD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_MOD
- ),
- // clang-format on
-};
diff --git a/keyboards/keebio/quefrency/keymaps/bcat/readme.md b/keyboards/keebio/quefrency/keymaps/bcat/readme.md
deleted file mode 100644
index 59a691654d..0000000000
--- a/keyboards/keebio/quefrency/keymaps/bcat/readme.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# bcat's Quefrency 65% layout
-
-This is a standard 65% keyboard layout, with a split spacebar, an HHKB-style
-(split) backspace, media controls in the function layer (centered around the
-ESDF cluster), and RGB controls in the function layer (on the arrow/nav keys).
-
-## Default layer
-
-![Default layer layout](https://i.imgur.com/gfVTuPO.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/60a262432bb340b37d364a4424f3037b))
-
-## Function layer
-
-![Function layer layout](https://i.imgur.com/7oCdN86.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/59636898946da51f91fb290f8e078b4d))
diff --git a/keyboards/keebio/quefrency/keymaps/bcat/rules.mk b/keyboards/keebio/quefrency/keymaps/bcat/rules.mk
deleted file mode 100644
index c87b447c1e..0000000000
--- a/keyboards/keebio/quefrency/keymaps/bcat/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BOOTLOADER = atmel-dfu # Elite-C
diff --git a/keyboards/keebio/quefrency/keymaps/draevin/keymap.c b/keyboards/keebio/quefrency/keymaps/draevin/keymap.c
deleted file mode 100644
index 00a933ddb4..0000000000
--- a/keyboards/keebio/quefrency/keymaps/draevin/keymap.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright 2020 Draevin Luke <contact@drae.vin> @draevin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "draevin.h"
-
-#define LAYOUT_65wm_wrapped(...) LAYOUT_65_with_macro(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_CM] = LAYOUT_65wm_wrapped(
- HYPR_T(KC_MPLY), KC_ESC, KC_GRV, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_DEL,
- KC_MPRV, KC_MNXT, KC_TAB, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- KC_F15, KC_F16, KC_BSPC, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, KC_ENT, KC_END,
- KC_F17, KC_F18, TD(TD_CAPS), _________________COLEMAK_L3________________, _________________COLEMAK_R3________________, KC_RSFT, KC_UP, MO(_FN),
- KC_F19, KC_F20, KC_LCTL, KC_LGUI, KC_LALT, MO(_FN), KC_SPC, XXXXXXX, KC_SPC, KC_RCTL, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_QW] = LAYOUT_65wm_wrapped(
- HYPR_T(KC_MPLY), KC_ESC, KC_GRV, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_DEL,
- KC_MPRV, KC_MNXT, KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- KC_F15, KC_F16, KC_BSPC, _________________QWERTY_L2_________________, _________________QWERTY_L2_________________, KC_QUOT, KC_ENT, KC_END,
- KC_F17, KC_F18, TD(TD_CAPS), _________________QWERTY_L3_________________, _________________QWERTY_L3_________________, KC_RSFT, KC_UP, MO(_FN),
- KC_F19, KC_F20, KC_LCTL, KC_LGUI, KC_LALT, MO(_FN), KC_SPC, XXXXXXX, KC_SPC, KC_RCTL, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN] = LAYOUT_65wm_wrapped(
- _______, _______, _______, _________________FROW_LEFT_________________, _________________FROW_RIGHT________________, KC_F11, KC_F12, XXXXXXX, _______, _______,
- RGB_TOG, RGB_MOD, _______, ___________________FN_L1___________________, ___________________FN_R1___________________, _______, _______, KC_MAKE, KC_PGUP,
- _______, _______, KC_DEL, ___________________FN_L2___________________, ___________________FN_R2___________________, _______, _______, KC_PGDN,
- _______, _______, _______, ___________________BLANK___________________, ___________________FN_R3___________________, _______, _______, _______,
- _______, CM_QW, _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______//_______
- ),
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (layer_state_is(_FN)) {
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- } else {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- return true;
-}
diff --git a/keyboards/keebio/quefrency/keymaps/draevin/rules.mk b/keyboards/keebio/quefrency/keymaps/draevin/rules.mk
deleted file mode 100644
index fcfd2225bc..0000000000
--- a/keyboards/keebio/quefrency/keymaps/draevin/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-EXTRAKEY_ENABLE = yes
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/config.h b/keyboards/keebio/quefrency/keymaps/jonavin/config.h
deleted file mode 100644
index 495638123a..0000000000
--- a/keyboards/keebio/quefrency/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2018 Danny Nguyen <danny@keeb.io>
-Copyright 2021 Jonavin Eng
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
-
-#ifdef RGBLIGHT_ENABLE
- #define RGBLIGHT_LAYERS
- #define RGBLIGHT_SLEEP
-#endif // RGBLIGHT_ENABLE
-
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c b/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c
deleted file mode 100644
index c2375514f0..0000000000
--- a/keyboards/keebio/quefrency/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Copyright 2021 Jonavin Eng @Jonavin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include QMK_KEYBOARD_H
-#include "jonavin.h"
-
-#ifdef RGBLIGHT_ENABLE
- // Custom RGB Colours
- #define RGB_GODSPEED 0x00, 0xE4, 0xFF // colour for matching keycaps
-#endif // RGBLIGHT_ENABLE
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT_65(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_INS,
- KC_PSCR, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL,
- TT(_LOWER), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFTCAPS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, LT(_FN1, KC_SPC), KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
- [_FN1] = LAYOUT_65(
- KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_CALC, KC_NO,
- RGB_TOG, RGB_MOD, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SCRL, KC_PAUS, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
- KC_CAPS, KC_NO, RGB_VAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_HOME,
- KC_TRNS, KC_NO, RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, RGB_MOD, KC_END,
- KC_TRNS, KC_WINLCK, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_APP, RGB_SPD, RGB_RMOD, RGB_SPI),
- [_LOWER] = LAYOUT_65(
- KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_PSLS, KC_PEQL, KC_TRNS,
- KC_TAB, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_NO, KC_NO, KC_P4, KC_P5, KC_P6, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_NO, KC_TAB, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, KC_PENT, KC_HOME,
- KC_TRNS, KC_NO, KC_DEL, KC_INS, KC_NO, KC_NO, KC_NUM, KC_P0, KC_00, KC_PDOT, KC_PSLS, KC_TRNS, RCTL(KC_PGUP), KC_END,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RCTL(KC_LEFT), RCTL(KC_PGDN), RCTL(KC_RIGHT)),
- [_RAISE] = LAYOUT_65(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-};
-
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- // process_record_user() moved to userspace
- return true;
-};
-
-#ifdef ENCODER_ENABLE // Encoder Functionality
- bool encoder_update_user(uint8_t index, bool clockwise) {
- uint8_t mods_state = get_mods();
- switch (index) {
- case 0: // first encoder (Left Macro set)
- encoder_action_navpage(clockwise);
- break;
-
- default: // other encoder (Top right)
- if (mods_state & MOD_BIT(KC_LSFT) ) { // If you are holding Left shift, change layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_RSFT) ) { // If you are holding Right shift, Page up
- unregister_mods(MOD_BIT(KC_RSFT));
- encoder_action_navpage(clockwise);
- register_mods(MOD_BIT(KC_RSFT));
- } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- }
- break;
- }
- return true;
- }
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-
- enum custom_rgblight_layers
- {
- _rgbCAPS,
- _rgbNUMLOCK,
- _rgbWINLOCK,
- _rgbFN,
- _rgbNUMPAD,
- };
-
- // RGB map LEFT 1, 2, 3, 12, 13, 14, 15, 0 RIGHT 7, 6, 5, 4, 11, 10, 9, 8
- const rgblight_segment_t PROGMEM _rgb_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {14, 1, HSV_RED} // Light 4 LEDs, starting with LED 6
- );
- const rgblight_segment_t PROGMEM _rgb_numlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {15, 1, HSV_BLUE}
- ); const rgblight_segment_t PROGMEM _rgb_winlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {13, 1, HSV_PURPLE} // Light 4 LEDs, starting with LED 6
- );
- const rgblight_segment_t PROGMEM _rgb_fn_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {9, 2, HSV_ORANGE},
- {12, 2, HSV_ORANGE}
- );
- // Light LEDs 9 & 10 in cyan when keyboard layer 1 is active
- const rgblight_segment_t PROGMEM _rgb_numpad_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 3, HSV_PURPLE},
- {9, 3, HSV_PURPLE}
- );
-
- const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- _rgb_capslock_layer,
- _rgb_numlock_layer,
- _rgb_winlock_layer,
- _rgb_fn_layer,
- _rgb_numpad_layer
- );
-
- bool led_update_user(led_t led_state) {
- rgblight_set_layer_state(_rgbCAPS, led_state.caps_lock);
-
- #ifdef INVERT_NUMLOCK_INDICATOR
- rgblight_set_layer_state(_rgbNUMLOCK, !led_state.num_lock); // inverse numlock indicator override
- #else
- rgblight_set_layer_state(_rgbNUMLOCK, led_state.num_lock); // normal, light LED when numlock on
- #endif // INVERT_NUMLOCK_INDICATOR
-
- rgblight_set_layer_state(_rgbWINLOCK, keymap_config.no_gui);
- return true;
- }
-
- layer_state_t layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(_rgbFN, layer_state_cmp(state, _FN1));
- rgblight_set_layer_state(_rgbNUMPAD, layer_state_cmp(state, _LOWER));
- return state;
- }
-#endif // RGBLIGHT_ENABLE
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGBLIGHT_ENABLE
- rgblight_mode(1); // single colour mode
- rgblight_setrgb(RGB_GODSPEED); // Default startup colour
- rgblight_layers = _rgb_layers;
- #endif
-}
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/readme.md b/keyboards/keebio/quefrency/keymaps/jonavin/readme.md
deleted file mode 100644
index dad817e8ec..0000000000
--- a/keyboards/keebio/quefrency/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# jonavin's Quefrency layout - No Macros 65%
-
-- ANSI qwerty layout with split Backspace, 1.25 Left mods, 1u right
-- Left Fn key is Spacebar tap and Fn when held
-- Layer 2 mod on Caps Lock with double-tap to switch to this layer, double tap to switch back
-- Layer 2 provides arrows on WASD and additional nav keys + right hand numpad with 00
-- ESC is set to GRAVESC (Esc when pressed, Shift-Esc is ~ and Win-ESC is `), plus handling for Ctrl-Shift-ESC to bring up Task Manager in Windows
-- Layer 2 left spacebar Backspace
-- add double tap of Left Shift to toggle Caps Lock
-- add Win Key lock function using Fn+Win
-- additional encoder functionality
- - holding L shift, Navigate page up/down
- - holding Left Ctrl, navigate prev/next word
- - holding Left Alt, change media prev/next track
- - default is change volume
-- RGB Functionality
- - additional RGB function key binds to arrow on Fn layer
- - Add capslock indicator, win key lock indicator
- - Fn and layer 2 indicators using RGB underglow
- - Inverted NUM lock indicator (light on when NUM lock is off when INVERT_NUMLOCK_INDICATOR = yes in rules.mk)
-
-rules.mk OPTIONS - Active features from userspace
-STARTUP_NUMLOCK_ON = yes
- - turns on NUMLOCK by default
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
- - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS
-
-## All layers diagram
-
-Default Layer
-![image](https://user-images.githubusercontent.com/71780717/127251683-ad445b40-95a9-4d2a-b164-a96f3a13464e.png)
-
-MO(1) / FN layer
-![image](https://user-images.githubusercontent.com/71780717/127251736-047f2f73-dfff-4fcc-bf0e-a5378e2fee08.png)
-
-MO(2) / Numpad layer
-![image](https://user-images.githubusercontent.com/71780717/127251985-4f564a56-8836-4db0-9cbd-ec859755a8d9.png)
diff --git a/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk b/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk
deleted file mode 100644
index ac2865f600..0000000000
--- a/keyboards/keebio/quefrency/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-VIA_ENABLE = yes
-CONSOLE_ENABLE = no
-LTO_ENABLE = yes
-
-MOUSEKEY_ENABLE = no
-TAP_DANCE_ENABLE = yes
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-INVERT_NUMLOCK_INDICATOR = yes
diff --git a/keyboards/keebio/sinc/keymaps/draevin/keymap.c b/keyboards/keebio/sinc/keymaps/draevin/keymap.c
deleted file mode 100644
index d9d4be1b2b..0000000000
--- a/keyboards/keebio/sinc/keymaps/draevin/keymap.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2020 Draevin Luke <contact@drae.vin> @draevin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "draevin.h"
-
-#define LAYOUT_80_wrapper(...) LAYOUT_80(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_CM] = LAYOUT_80_wrapper(
- HYPR_T(KC_ESC), _________________FROW_LEFT_________________, _________________FROW_RIGHT________________, KC_F11, KC_F12, KC_F13, KC_HYPR,
- KC_GRV, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_DEL,
- KC_TAB, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- KC_BSPC, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_QUOT, KC_ENT, KC_END,
- TD(TD_CAPS), _________________COLEMAK_L3________________, _________________COLEMAK_R3________________, KC_RSFT, KC_UP, MO(_FN),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, XXXXXXX, MO(_FN), XXXXXXX, KC_SPC, KC_RCTL, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_QW] = LAYOUT_80_wrapper(
- HYPR_T(KC_ESC), _________________FROW_LEFT_________________, _________________FROW_RIGHT________________, KC_F11, KC_F12, KC_F13, KC_HYPR,
- KC_GRV, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_MINS, KC_EQL, XXXXXXX, KC_BSPC, KC_DEL,
- KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- KC_BSPC, _________________QWERTY_L2_________________, _________________QWERTY_L2_________________, KC_QUOT, KC_ENT, KC_END,
- TD(TD_CAPS), _________________QWERTY_L3_________________, _________________QWERTY_L3_________________, KC_RSFT, KC_UP, MO(_FN),
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, XXXXXXX, MO(_FN), XXXXXXX, KC_SPC, KC_RCTL, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN] = LAYOUT_80_wrapper(
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, _______, CM_QW,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, ___________________BLANK___________________,
- _______, ___________________FN_L1___________________, ___________________FN_R1___________________, _______, _______, KC_MAKE, KC_PGUP,
- _______, ___________________FN_L2___________________, ___________________FN_R2___________________, _______, _______, KC_PGDN,
- _______, ___________________BLANK___________________, ___________________FN_R3___________________, _______, _______, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, _______, _______
- ),
-};
diff --git a/keyboards/keebio/sinc/keymaps/sethBarberee/config.h b/keyboards/keebio/sinc/keymaps/sethBarberee/config.h
deleted file mode 100644
index 343567273d..0000000000
--- a/keyboards/keebio/sinc/keymaps/sethBarberee/config.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
-Copyright 2017 Danny Nguyen <danny@keeb.io>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#ifdef RGBLIGHT_ENABLE
-//# ifdef NORMAL_MODE
-//# undef NORMAL_MODE
-//# define NORMAL_MODE RGBLIGHT_MODE_TWINKLE + 4
-//# endif
-//#endif
diff --git a/keyboards/keebio/sinc/keymaps/sethBarberee/keymap.c b/keyboards/keebio/sinc/keymaps/sethBarberee/keymap.c
deleted file mode 100644
index 2bd560c199..0000000000
--- a/keyboards/keebio/sinc/keymaps/sethBarberee/keymap.c
+++ /dev/null
@@ -1,82 +0,0 @@
- /* Copyright 2021 SethBarberee <seth.barberee@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "sethBarberee.h"
-
-#define LAYOUT_80_with_macro_wrapper(...) LAYOUT_80_with_macro(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_80_with_macro_wrapper(
- KC_MUTE, KC_ECAP, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, KC_F12, KC_DEL, KC_MUTE,
- KC_F1, KC_F2, KC_GRV, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,KC_MINS, KC_EQL, _______, KC_BSPC, KC_HOME,
- KC_F3, KC_F4, KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- KC_F5, KC_F6, KC_LSFT, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_ENT, KC_PGUP,
- KC_F7, KC_F8, KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_RSFT, KC_UP, KC_PGDN,
- KC_F9, KC_F10, KC_LCTL, KC_LALT, KC_LGUI, KC_LOWR, _______, KC_SPC, KC_BSPC, KC_RASE, KC_RALT, KC_RCTL, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_DVORAK] = LAYOUT_80_with_macro_wrapper(
- KC_MUTE, KC_ECAP, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, KC_F12, KC_DEL, KC_MUTE,
- KC_F1, KC_F2, KC_GRV, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,KC_MINS, KC_EQL, _______, KC_BSPC, KC_HOME,
- KC_F3, KC_F4, KC_TAB, _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- KC_F5, KC_F6, KC_LSFT, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_ENT, KC_PGUP,
- KC_F7, KC_F8, KC_LSFT, _________________DVORAK_L3_________________, _________________DVORAK_R3_________________, KC_RSFT, KC_UP, KC_PGDN,
- KC_F9, KC_F10, KC_LCTL, KC_LALT, KC_LGUI, KC_LOWR, _______, KC_SPC, KC_BSPC, KC_RASE, KC_RALT, KC_RCTL, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_LOWER] = LAYOUT_80_with_macro_wrapper(
- RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR,
- RGB_HUI, RGB_HUD, QK_GESC, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, KC_F12, _______, _______, KC_MPRV,
- RGB_SAI, RGB_SAD, RGB_TOG, _______, _______, _______, _______, KC_LPRN, KC_RPRN, _______, _______, _______, _______, _______, _______, _______, KC_MNXT,
- RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, _______, _______, _______, _______, _______, _______, KC_VOLU,
- RGB_MOD, RGB_RMOD, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, _______, _______, _______, _______, KC_VOLD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_80_with_macro_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- QK_BOOT, KC_VRSN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT_80_with_macro_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_QWER, KC_DVOR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- } else if (index == 1) {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- return true;
-}
diff --git a/keyboards/keebio/sinc/keymaps/sethBarberee/rules.mk b/keyboards/keebio/sinc/keymaps/sethBarberee/rules.mk
deleted file mode 100644
index 1475c36e7c..0000000000
--- a/keyboards/keebio/sinc/keymaps/sethBarberee/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-BACKLIGHT_ENABLE=no
-CONSOLE_ENABLE=no
-TAP_DANCE_ENABLE=yes
-MUSIC_ENABLE=no
diff --git a/keyboards/keebio/sinc/rev1/config.h b/keyboards/keebio/sinc/rev1/config.h
index 8894354d43..2d2c772422 100644
--- a/keyboards/keebio/sinc/rev1/config.h
+++ b/keyboards/keebio/sinc/rev1/config.h
@@ -23,8 +23,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-/* Synchronize Caps Lock LED across halves */
-#define SPLIT_LED_STATE_ENABLE
#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2)
diff --git a/keyboards/keebio/sinc/rev1/info.json b/keyboards/keebio/sinc/rev1/info.json
index 5ddb54ee60..0829cae6e7 100644
--- a/keyboards/keebio/sinc/rev1/info.json
+++ b/keyboards/keebio/sinc/rev1/info.json
@@ -18,7 +18,10 @@
"enabled": true,
"soft_serial_pin": "D0",
"transport": {
- "protocol": "serial"
+ "protocol": "serial",
+ "sync" :{
+ "indicators": true
+ }
},
"encoder": {
"right": {
diff --git a/keyboards/keebio/sinc/rev2/config.h b/keyboards/keebio/sinc/rev2/config.h
index 8894354d43..2d2c772422 100644
--- a/keyboards/keebio/sinc/rev2/config.h
+++ b/keyboards/keebio/sinc/rev2/config.h
@@ -23,8 +23,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-/* Synchronize Caps Lock LED across halves */
-#define SPLIT_LED_STATE_ENABLE
#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2)
diff --git a/keyboards/keebio/sinc/rev2/info.json b/keyboards/keebio/sinc/rev2/info.json
index 0c86727abe..5b74d17b1a 100644
--- a/keyboards/keebio/sinc/rev2/info.json
+++ b/keyboards/keebio/sinc/rev2/info.json
@@ -18,7 +18,10 @@
"enabled": true,
"soft_serial_pin": "D0",
"transport": {
- "protocol": "serial"
+ "protocol": "serial",
+ "sync" :{
+ "indicators": true
+ }
},
"encoder": {
"right": {
diff --git a/keyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c b/keyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c
deleted file mode 100755
index 68dd9ef7d3..0000000000
--- a/keyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,71 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rossman360.h"
-
-#define PGMOD LT(_MOD, KC_PGDN)
-#define SPCMOD LT(_MOD, KC_SPACE)
-#define VOLMOD LT(_MOD, KC_MUTE)
-
-enum layer_names {
- _BASE,
- _REV,
- _MOD,
- _DEL,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_BASE] = LAYOUT_split_space(
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, NTAB,
- //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, MO(_MOD),CTAB,
- //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENTER,
- //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- //├──────────┬───────┴──┬─────┴────┬───┴────────┴─────┬───┴────────┴───┬─────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
- CMDBSP, ALTDEL, KC_LCTL, KC_SPACE, SPCMOD, SPCMOD, MO(_DEL), KC_LCTL, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- //└──────────┴──────────┴──────────┴──────────────────┴────────────────┴───────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
- ),
-
-[_REV] = LAYOUT_split_space(
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
- _______, _______, _______, _______, _______, _______,_______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
- //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
- KC_LEFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,KC_HOME, KC_END, KC_RIGHT, _______, _______,
- //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
- JUMPBACK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CSPEAK, _______,
- //├──────────┬───────┴──┬─────┴────┬───┴────────┴──────┬──┴────────┴────┬────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
- _______, _______, _______, KC_TAB, PGMOD, _______, _______, _______, _______, _______, _______, _______
- //└──────────┴──────────┴──────────┴───────────────────┴────────────────┴──────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
- ),
-
-[_MOD] = LAYOUT_split_space(
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
- QK_BOOT, _______, _______, _______, _______, _______,_______, _______,KC_F8 , _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU,
- //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
- _______, _______, WREFRESH,_______, DF(_REV), _______, _______, UNDO, _______, _______, _______, _______, _______, _______, _______, _______,
- //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
- KC_CAPS, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP, KC_RIGHT, KC_END, _______, PARADOWN,
- //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
- _______, _______, XPANDR, _______, _______, _______, _______, PMERGE, KC_DOWN, _______, _______, _______, KC_F1 ,
- //├──────────┬───────┴──┬─────┴────┬───┴────────┴──────┬──┴────────┴────┬────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
- _______, _______, _______, LWORD, RWORD, LWORD, RWORD, _______, _______, _______, KC_F2 , _______
- //└──────────┴──────────┴──────────┴───────────────────┴────────────────┴──────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
- ),
-
-[_DEL] = LAYOUT_split_space(
- //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
- _______, SPEAK1, SPEAK2, SPEAK3, SPEAK4, _______,_______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
- //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
- REMCAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //├──────────┬───────┴──┬─────┴────┬───┴────────┴──────┬──┴────────┴────┬────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
- _______, _______, KC_DEL, KC_BSPC, BWORD, _______, _______, _______, _______, _______, _______, _______
- //└──────────┴──────────┴──────────┴───────────────────┴────────────────┴──────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
- ),
-};
diff --git a/keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md b/keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md
deleted file mode 100644
index 95e76d6308..0000000000
--- a/keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md
+++ /dev/null
@@ -1,3 +0,0 @@
-#Rossman360's Tragicforce68 Layout
-
-This is a split-space layout that, like a lot of my layouts, has a lot of macros specific to the transcription service Rev. Moving back through text, deleting characters or whole words and returning to the end of the document can all be done using thumbs.
diff --git a/keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk b/keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk
deleted file mode 100644
index d10eda0fbe..0000000000
--- a/keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-MACROS_ENABLED = yes
-BOOTLOADER = atmel-dfu
diff --git a/keyboards/keebio/viterbi/keymaps/drashna/config.h b/keyboards/keebio/viterbi/keymaps/drashna/config.h
deleted file mode 100644
index cd640ec8d5..0000000000
--- a/keyboards/keebio/viterbi/keymaps/drashna/config.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#undef MATRIX_ROWS
-#define MATRIX_ROWS 5
-
-#ifdef RGBLIGHT_ENABLE
-# undef RGBLED_NUM
-# define RGBLED_NUM 16
-
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
-# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
-#endif // RGBLIGHT_ENABLE
-
-#undef PRODUCT
-#define PRODUCT "Drashnas Viterbi Macro Pad"
-
-#ifdef AUDIO_ENABLE
-# define AUDIO_PIN C6
-# define NO_MUSIC_MODE
-#endif
-
-// clang-format off
-#define LAYOUT_ortho_5x7( \
- L00, L01, L02, L03, L04, L05, L06, \
- L10, L11, L12, L13, L14, L15, L16, \
- L20, L21, L22, L23, L24, L25, L26, \
- L30, L31, L32, L33, L34, L35, L36, \
- L40, L41, L42, L43, L44, L45, L46 \
- ) \
- { \
- { L00, L01, L02, L03, L04, L05, L06 }, \
- { L10, L11, L12, L13, L14, L15, L16 }, \
- { L20, L21, L22, L23, L24, L25, L26 }, \
- { L30, L31, L32, L33, L34, L35, L36 }, \
- { L40, L41, L42, L43, L44, L45, L46 }, \
- }
-// clang-format on
-
-#define QMK_ESC_OUTPUT F5 // usually COL
-#define QMK_ESC_INPUT D4 // usually ROW
-#define QMK_LED B0
-#define QMK_SPEAKER C6
diff --git a/keyboards/keebio/viterbi/keymaps/drashna/keymap.c b/keyboards/keebio/viterbi/keymaps/drashna/keymap.c
deleted file mode 100644
index 9b33f35e0e..0000000000
--- a/keyboards/keebio/viterbi/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-// Fillers to make layering more clear
-#define TT_MDIA TT(_MEDIA)
-
-// enum more_custom_keycodes {
-// KC_P00 = USER_SAFE_RANGE
-//};
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_NUMLOCK] = LAYOUT_ortho_5x7(
- KC_NO, TG_DBLO, TG_GAME, KC_NUM, KC_SCRL, KC_COLN, KC_PSLS,
- TT_MDIA, KC_CALC, XXXXXXX, KC_P7, KC_P8, KC_P9, KC_PAST,
- KC_HOME, KC_DEL, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PMNS,
- KC_END, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_PPLS,
- KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_COLN, KC_PENT
- ),
-
- [_DIABLO] = LAYOUT_ortho_5x7(
- KC_ESC, _______, KC_V, KC_D, XXXXXXX, XXXXXXX, KC_L,
- KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_J,
- KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, KC_F,
- KC_LCTL, KC_D3_3, KC_D3_3, KC_D3_3, KC_D3_3, KC_Z, KC_DIABLO_CLEAR,
- KC_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE)
- ),
-
- [_GAMEPAD] = LAYOUT_ortho_5x7( // Game pad layout designed primarily for Overwatch
- KC_NO, KC_ESC, _______, KC_1, KC_2, KC_3, KC_4,
- TT_MDIA, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
- KC_Z, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_Y, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
- KC_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V
- ),
-
- [_MEDIA] = LAYOUT_ortho_5x7(
- QK_MAKE, QK_BOOT, MU_TOGG, AU_ON, AU_OFF, CK_TOGG, RGB_SAD,
- _______, EE_CLR, KC_RGB_T,RGB_M_P, RGB_M_B, RGB_M_R, RGB_SAI,
- RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_SW,RGB_M_SN,RGB_M_K, RGB_HUD,
- KC_MPLY, KC_MPRV, KC_MNXT, RGB_M_X, RGB_M_G, RGB_M_P, RGB_HUI,
- KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI
- )
-
-
-};
-// clang-format on
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- // switch (keycode) {
- // case KC_P00:
- // if (!record->event.pressed) {
- // tap(KC_KP_0);
- // tap(KC_KP_0);
- // }
- // return false;
- // break;
- //}
- return true;
-}
diff --git a/keyboards/keebio/viterbi/keymaps/drashna/rules.mk b/keyboards/keebio/viterbi/keymaps/drashna/rules.mk
deleted file mode 100644
index 86a693c3b1..0000000000
--- a/keyboards/keebio/viterbi/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,25 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-TAP_DANCE_ENABLE = no
-RGBLIGHT_ENABLE = yes
-AUDIO_ENABLE = yes
-NKRO_ENABLE = yes
-SPLIT_KEYBOARD = no
-SPACE_CADET_ENABLE = no
-
-NO_SECRETS = yes
-INDICATOR_LIGHTS = no
-LAYOUTS = ortho_5x7
-
-# SRC := $(filter-out serial.c matrix.c i2c.c split_util.c,$(SRC))
-# SRC := $(filter-out serial.c,$(SRC))
-# SRC := $(filter-out matrix.c,$(SRC))
-# SRC := $(filter-out i2c.c,$(SRC))
-# SRC := $(filter-out split_util.c,$(SRC))
-# SRC += quantum/matrix.c
-
-BOOTLOADER = qmk-hid
-BOOTLOADER_SIZE = 512
diff --git a/keyboards/keebio/viterbi/keymaps/ericgebhart/config.h b/keyboards/keebio/viterbi/keymaps/ericgebhart/config.h
deleted file mode 100644
index c5f8fff090..0000000000
--- a/keyboards/keebio/viterbi/keymaps/ericgebhart/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#pragma once
-
-// #define USE_I2C
-
-/* Select hand configuration */
-
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 12
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c b/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/keebio/viterbi/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/keebio/viterbi/keymaps/vosechu/config.h b/keyboards/keebio/viterbi/keymaps/vosechu/config.h
deleted file mode 100644
index a808f80f85..0000000000
--- a/keyboards/keebio/viterbi/keymaps/vosechu/config.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-Copyright 2017 Chuck Lauer Vose <vosechu@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 3
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-
-#define RGBLIGHT_SLEEP // Put the keyboard to sleep when USB goes dark
-
-#define LAYOUT_ortho_half_5x7( \
- L00, L01, L02, L03, L04, L05, L06, \
- L10, L11, L12, L13, L14, L15, L16, \
- L20, L21, L22, L23, L24, L25, L26, \
- L30, L31, L32, L33, L34, L35, L36, \
- L40, L41, L42, L43, L44, L45, L46 \
- ) \
- LAYOUT_ortho_5x14( \
- L00, L01, L02, L03, L04, L05, L06, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO, \
- L10, L11, L12, L13, L14, L15, L16, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO, \
- L20, L21, L22, L23, L24, L25, L26, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO, \
- L30, L31, L32, L33, L34, L35, L36, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO, \
- L40, L41, L42, L43, L44, L45, L46, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO \
- )
diff --git a/keyboards/keebio/viterbi/keymaps/vosechu/keymap.c b/keyboards/keebio/viterbi/keymaps/vosechu/keymap.c
deleted file mode 100644
index 0d2677d22b..0000000000
--- a/keyboards/keebio/viterbi/keymaps/vosechu/keymap.c
+++ /dev/null
@@ -1,91 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "vosechu.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[BASE] = LAYOUT_ortho_half_5x7( // Base layer
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_9 ,
- ALT_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , TT(TT1) ,
- CTL_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , TT(TT2) ,
- KC_F13 , KC_Z , KC_X , KC_C , KC_V , KC_B , TT(TT3) ,
- KC_MEH , CTL_GRV , ALT_TAB , KC_LALT , MO(LWR) , LFT_BK , SFT_SPC
-),
-[LWR] = LAYOUT_ortho_half_5x7( // EVE layer
- _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
- A(KC_LEFT), KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F9 ,
- SFT_SPC , A(KC_F1), A(KC_F2), A(KC_F3), A(KC_F4), _______ , _______ ,
- A(KC_RGHT), C(KC_F1), C(KC_F2), C(KC_F3), C(KC_F4), _______ , _______ ,
- _______ , QK_BOOT, _______ , _______ , _LAYER_ , KC_DEL , KC_ENT
-),
-[LFT] = LAYOUT_ortho_half_5x7( // Media
- _______ , KC_F10 , KC_F11 , KC_F12 , KC_PSCR , KC_SCRL , KC_PAUS ,
- _______ , KC_F7 , KC_F8 , KC_F9 , KC_INS , KC_HOME , KC_PGUP ,
- RGB_TOG , KC_F4 , KC_F5 , KC_F6 , KC_DEL , KC_END , KC_PGDN ,
- _______ , KC_F1 , KC_F2 , KC_F3 , KC_VOLU , KC_VOLD , KC_MUTE ,
- _______ , _______ , _______ , _______ , PSWD , _LAYER_ , PSWD_ALT
-),
-[TT1] = LAYOUT_ortho_half_5x7( // Override WASD with arrows
- _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
- _______ , _______ , KC_UP , _______ , _______ , _______ , _______ ,
- _______ , KC_LEFT , KC_DOWN , KC_RGHT , _______ , _______ , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , _______
-),
-[TT2] = LAYOUT_ortho_half_5x7( // Browser layer
- C(KC_W) , C(KC_1) , C(KC_T) , C(KC_9) , _______ , _______ , _______ ,
- WBWSRBK , WTABLFT , KC_UP , WTABRGT , WBWSRFW , _______ , _______ ,
- KC_ESC , KC_LEFT , KC_DOWN , KC_RGHT , C(KC_R) , _______ , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , TT(T23X),
- _______ , _______ , _______ , _______ , _______ , _______ , _______
-),
-[TT3] = LAYOUT_ortho_half_5x7( // OS X override layer
- _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , TT(T23X),
- _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
- _______ , _______ , _______ , KC_LGUI , _______ , _______ , _______
-),
-[T23X] = LAYOUT_ortho_half_5x7( // Browser layer
- G(KC_W) , G(KC_1) , G(KC_T) , G(KC_9) , _______ , SLACKTB , _______ ,
- BWSR_BK , TAB_LFT , KC_UP , TAB_RGT , BWSR_FW , SLACKUP , _______ ,
- KC_ESC , KC_LEFT , KC_DOWN , KC_RGHT , G(KC_R) , SLACKDN , _______ ,
- _______ , _______ , KC_Q , KC_J , KC_K , _______ , _______ ,
- _______ , _______ , _______ , KC_LGUI , _______ , _______ , _______
-),
-// [_EMPTY] = LAYOUT(
-// _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
-// _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
-// _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
-// _______ , _______ , _______ , _______ , _______ , _______ , _______ ,
-// _______ , _______ , _______ , _______ , _______ , _______ , _______
-// ),
-};
-
-void keyboard_post_init_user(void) {
- // Call the post init code.
- rgblight_enable_noeeprom(); // enables Rgb, without saving settings
- rgblight_mode_noeeprom(0);
- rgblight_sethsv_noeeprom(0, 0, 0);
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case TT1:
- rgblight_sethsv_noeeprom(HSV_BLUE);
- break;
- case TT2:
- rgblight_sethsv_noeeprom(HSV_PURPLE);
- break;
- case T23X:
- rgblight_sethsv_noeeprom(HSV_GOLD);
- break;
- case TT3:
- rgblight_sethsv_noeeprom(HSV_GREEN);
- break;
- default: // for any other layers, or the default layer
- rgblight_sethsv_noeeprom(0, 0, 0);
- break;
- }
-
- return state;
-}
diff --git a/keyboards/keebio/viterbi/keymaps/vosechu/rules.mk b/keyboards/keebio/viterbi/keymaps/vosechu/rules.mk
deleted file mode 100644
index 1e3cebb145..0000000000
--- a/keyboards/keebio/viterbi/keymaps/vosechu/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/keebsforall/coarse60/config.h b/keyboards/keebsforall/coarse60/config.h
index a9cd3b03b0..6ea9b9aae2 100644
--- a/keyboards/keebsforall/coarse60/config.h
+++ b/keyboards/keebsforall/coarse60/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/keebwerk/mega/ansi/ansi.c b/keyboards/keebwerk/mega/ansi/ansi.c
index 4494ffd9ff..4b10cdde66 100755
--- a/keyboards/keebwerk/mega/ansi/ansi.c
+++ b/keyboards/keebwerk/mega/ansi/ansi.c
@@ -20,6 +20,146 @@
#include "ansi.h"
#include "drivers/led/issi/is31fl3733.h"
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_KW_MEGA)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
+
uint8_t R = 0;
uint8_t G = 0;
uint8_t B = 0;
diff --git a/keyboards/keebwerk/mega/ansi/config.h b/keyboards/keebwerk/mega/ansi/config.h
index c02f298e84..8a110a91dc 100755
--- a/keyboards/keebwerk/mega/ansi/config.h
+++ b/keyboards/keebwerk/mega/ansi/config.h
@@ -50,8 +50,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 128
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_SDA
+#define IS31FL3733_LED_COUNT 128
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/keebwerk/mega/ansi/keymaps/jesusvallejo/keymap.c b/keyboards/keebwerk/mega/ansi/keymaps/jesusvallejo/keymap.c
index 2b5d658f02..307eac90e1 100644
--- a/keyboards/keebwerk/mega/ansi/keymaps/jesusvallejo/keymap.c
+++ b/keyboards/keebwerk/mega/ansi/keymaps/jesusvallejo/keymap.c
@@ -14,7 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "drivers/issi/is31fl3733.h"
+#include "drivers/led/issi/is31fl3733.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -50,9 +50,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
static uint16_t ledTimer;
-uint8_t R = 0; /* First led*/
-uint8_t G = 0; /* Second led*/
-uint8_t B = 0; /* Third led*/
+uint8_t r = 0; /* First led*/
+uint8_t g = 0; /* Second led*/
+uint8_t b = 0; /* Third led*/
/* Boot animation parameters */
@@ -74,44 +74,44 @@ bool bootAnimation(void){
if (bootFirst>0 || bootSec>0){
if(bootFirst!=0){
if (timer_elapsed(ledTimer) > 150){
- G = 255;
- R = 0;
- B = 0;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 255;
+ r = 0;
+ b = 0;
+ is31fl3733_set_color( 6+64-1, r, g, b );
}
if (timer_elapsed(ledTimer) > 300){
- G = 255;
- R = 255;
- B = 0;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 255;
+ r = 255;
+ b = 0;
+ is31fl3733_set_color( 6+64-1, r, g, b );
}
if (timer_elapsed(ledTimer) > 400){
- G = 255;
- R = 255;
- B = 255;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 255;
+ r = 255;
+ b = 255;
+ is31fl3733_set_color( 6+64-1, r, g, b );
}
if (timer_elapsed(ledTimer) > 500){
- G = 0;
- R = 0;
- B = 0;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 0;
+ r = 0;
+ b = 0;
+ is31fl3733_set_color( 6+64-1, r, g, b );
ledTimer = timer_read();
bootFirst--;
}
}
if (bootFirst==0 && bootSec!=0){
if (timer_elapsed(ledTimer) > 200) {
- G = 255;
- R = 255;
- B = 255;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 255;
+ r = 255;
+ b = 255;
+ is31fl3733_set_color( 6+64-1, r, g, b );
}
if (timer_elapsed(ledTimer) > 400){
- G = 0;
- R = 0;
- B = 0;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 0;
+ r = 0;
+ b = 0;
+ is31fl3733_set_color( 6+64-1, r, g, b );
ledTimer = timer_read();
bootSec--;
}
@@ -125,29 +125,29 @@ bool bootAnimation(void){
void breathing(void) {
if(timer_elapsed(ledTimer)<travelTime){
time = timer_elapsed(ledTimer);
- if((time - previousTime) > fadeTime && R<maxBrightness){
- G+=fadeStep;
- R+=fadeStep;
- B+=fadeStep;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ if((time - previousTime) > fadeTime && r<maxBrightness){
+ g+=fadeStep;
+ r+=fadeStep;
+ b+=fadeStep;
+ is31fl3733_set_color( 6+64-1, r, g, b );
previousTime = time;
}
}
else if(timer_elapsed(ledTimer)<(travelTime * 2)){
time = timer_elapsed(ledTimer);
- if((time - previousTime) > fadeTime && R>minBrightness){
- G-=fadeStep;
- R-=fadeStep;
- B-=fadeStep;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ if((time - previousTime) > fadeTime && r>minBrightness){
+ g-=fadeStep;
+ r-=fadeStep;
+ b-=fadeStep;
+ is31fl3733_set_color( 6+64-1, r, g, b );
previousTime = time;
}
}
else {
- R=0;
- G=0;
- B=0;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ r=0;
+ g=0;
+ b=0;
+ is31fl3733_set_color( 6+64-1, r, g, b );
previousTime = 0;
time = 0;
ledTimer=timer_read();
@@ -166,10 +166,10 @@ void matrix_scan_user(void){
prevCapsState = capsState;
}
else if(!capsState && capsState != prevCapsState){
- G = 0;
- R = 0;
- B = 0;
- is31fl3733_set_color( 6+64-1, R, G, B );
+ g = 0;
+ r = 0;
+ b = 0;
+ is31fl3733_set_color( 6+64-1, r, g, b );
prevCapsState = capsState;
}
}
diff --git a/keyboards/keebwerk/mega/ansi/rules.mk b/keyboards/keebwerk/mega/ansi/rules.mk
index 5546dc18d4..e257f3063f 100755
--- a/keyboards/keebwerk/mega/ansi/rules.mk
+++ b/keyboards/keebwerk/mega/ansi/rules.mk
@@ -24,4 +24,4 @@ SRC += keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
quantum/color.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/keebwerk/nano_slider/rules.mk b/keyboards/keebwerk/nano_slider/rules.mk
index a7fcafd4b9..d133bb6d6e 100644
--- a/keyboards/keebwerk/nano_slider/rules.mk
+++ b/keyboards/keebwerk/nano_slider/rules.mk
@@ -13,4 +13,4 @@ MIDI_ENABLE = yes # MIDI support
AUDIO_ENABLE = no # Audio output
LTO_ENABLE = yes
-SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c b/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c
deleted file mode 100644
index 4ee528ce52..0000000000
--- a/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright 2021 Daniel Shields
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "dshields.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [DEF] = LAYOUT(
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P ,
- MT_A, MT_S, MT_D, MT_F, LT_G, LT_H, MT_J, MT_K, MT_L, MT_SCLN,
- KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TAB, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
- OSMLCTL, MT_ESC, OSMLALT, OSL_FUN, MT_BSPC, OSL_LWR, OSL_RSE, MT_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
- [LWR] = LAYOUT(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,
- KC_TILD, _______, _______, _______, _______, KC_UNDS, KC_PLUS, _______, KC_LCBR, KC_RCBR,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DQUO, KC_PIPE,
- _______, _______, _______, _______, KC_DEL, _______, _______, KC_ENT, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
-
- [RSE] = LAYOUT(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0 ,
- KC_GRV, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, KC_LBRC, KC_RBRC,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_QUOT, KC_BSLS,
- _______, _______, _______, _______, KC_DEL, _______, _______, KC_ENT, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
- [FUN] = LAYOUT(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 ,
- KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R,
- _______, _______, _______, _______, _______, QK_BOOT, EE_CLR, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R
- )
-};
diff --git a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h b/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 4251834da2..0000000000
--- a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, \
-XXX, XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX, XXX \
-)
diff --git a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/keyboardio/model01/keymaps/dshields/config.h b/keyboards/keyboardio/model01/keymaps/dshields/config.h
deleted file mode 100644
index fdb23d46ba..0000000000
--- a/keyboards/keyboardio/model01/keymaps/dshields/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define RGB_DIGITAL_RAIN_DROPS 18
-
diff --git a/keyboards/keyboardio/model01/keymaps/dshields/keymap.c b/keyboards/keyboardio/model01/keymaps/dshields/keymap.c
deleted file mode 100644
index aa5ef5d4ca..0000000000
--- a/keyboards/keyboardio/model01/keymaps/dshields/keymap.c
+++ /dev/null
@@ -1,28 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "dshields.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[DEF] = LAYOUT(
- QK_BOOT, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______,
- KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , RGB_TOG, DM_REC1, KC_Y , KC_U , KC_I , KC_O , KC_P , KC_EQL ,
- KC_PGUP, MT_A , MT_S , MT_D , MT_F , LT_G , KC_TAB , KC_ENT , LT_H , MT_J , MT_K , MT_L , MT_SCLN, KC_QUOT,
- KC_PGDN, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , DM_PLY1, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS,
- OSMLCTL, OSMRCTL,
- KC_BSPC, KC_SPC ,
- KC_LGUI, OSMRALT,
- OSMLSFT, OSMRSFT,
- OSL_FUN, OSL_FUN
- ),
-[FUN] = LAYOUT(
- EE_CLR, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 ,
- KC_TAB , _______, KC_MS_U, _______, KC_BTN3, _______, RGB_MOD, DM_REC2, _______, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_F12 ,
- KC_HOME, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN1, _______, RGB_HUI, DM_RSTP, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, _______,
- KC_END , KC_PSCR, KC_INS , _______, KC_BTN2, _______, RGB_HUD, DM_PLY2, _______, _______, _______, _______, KC_BSLS, KC_PIPE,
- _______, _______,
- KC_DEL , KC_ENT ,
- _______, _______,
- _______, _______,
- _______, _______
- )
-};
-
diff --git a/keyboards/keyboardio/model01/keymaps/dshields/readme.md b/keyboards/keyboardio/model01/keymaps/dshields/readme.md
deleted file mode 100644
index ead1c1aad2..0000000000
--- a/keyboards/keyboardio/model01/keymaps/dshields/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-
-About
-------
-
-A lightly modded version of the default keymap.
-
-- One-shot modifiers and layers.
-- Dynamic macros
-- No num lock layer
-
diff --git a/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/config.h b/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index b97a66c264..0000000000
--- a/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
-XXX, K00, K01, K02, K03, K04, XXX, XXX, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, XXX, XXX, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- K32, K37, \
- K33, K36, \
- K34, K35, \
- XXX, XXX, \
- XXX, XXX \
-)
diff --git a/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/rules.mk b/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/rules.mk
deleted file mode 100644
index 6a111feef0..0000000000
--- a/keyboards/keyboardio/model01/keymaps/manna-harbour_miryoku/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Copyright 2022 Manna Harbour
-# https://github.com/manna-harbour/miryoku
-
-CONSOLE_ENABLE = no
diff --git a/keyboards/keyboardio/model01/rules.mk b/keyboards/keyboardio/model01/rules.mk
index e653ec5f73..29e1f4fea8 100644
--- a/keyboards/keyboardio/model01/rules.mk
+++ b/keyboards/keyboardio/model01/rules.mk
@@ -9,7 +9,7 @@ COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
CUSTOM_MATRIX = yes
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
SRC += leds.c \
matrix.c
diff --git a/keyboards/keychron/c1_pro/ansi/rgb/config.h b/keyboards/keychron/c1_pro/ansi/rgb/config.h
index a103d190d0..a88319a63d 100644
--- a/keyboards/keychron/c1_pro/ansi/rgb/config.h
+++ b/keyboards/keychron/c1_pro/ansi/rgb/config.h
@@ -20,19 +20,17 @@
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* RGB Matrix Configuration */
#define DRIVER_1_LED_TOTAL 49
#define DRIVER_2_LED_TOTAL 39
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* Set led driver current */
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44 }
/* turn off effects when suspended */
diff --git a/keyboards/keychron/c1_pro/ansi/rgb/info.json b/keyboards/keychron/c1_pro/ansi/rgb/info.json
index c6011a2837..fcd805706b 100644
--- a/keyboards/keychron/c1_pro/ansi/rgb/info.json
+++ b/keyboards/keychron/c1_pro/ansi/rgb/info.json
@@ -105,7 +105,7 @@
}
},
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"breathing": true,
"band_spiral_val": true,
diff --git a/keyboards/keychron/c1_pro/ansi/rgb/rgb.c b/keyboards/keychron/c1_pro/ansi/rgb/rgb.c
index 04565f3b01..c04e82a44e 100644
--- a/keyboards/keychron/c1_pro/ansi/rgb/rgb.c
+++ b/keyboards/keychron/c1_pro/ansi/rgb/rgb.c
@@ -18,8 +18,8 @@
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/c1_pro/ansi/white/config.h b/keyboards/keychron/c1_pro/ansi/white/config.h
index dd3e1da477..a8a836c5dd 100644
--- a/keyboards/keychron/c1_pro/ansi/white/config.h
+++ b/keyboards/keychron/c1_pro/ansi/white/config.h
@@ -20,16 +20,14 @@
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* LED Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* LED Matrix Configuration */
#define LED_MATRIX_LED_COUNT 90
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* Set led driver current */
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44 }
/* turn off effects when suspended */
diff --git a/keyboards/keychron/c1_pro/ansi/white/info.json b/keyboards/keychron/c1_pro/ansi/white/info.json
index 070ed6c427..4a6c6e2b8d 100644
--- a/keyboards/keychron/c1_pro/ansi/white/info.json
+++ b/keyboards/keychron/c1_pro/ansi/white/info.json
@@ -105,7 +105,7 @@
}
},
"led_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"none": true,
"solid": true,
diff --git a/keyboards/keychron/c1_pro/ansi/white/white.c b/keyboards/keychron/c1_pro/ansi/white/white.c
index 72e9ad4db1..15f291e80c 100644
--- a/keyboards/keychron/c1_pro/ansi/white/white.c
+++ b/keyboards/keychron/c1_pro/ansi/white/white.c
@@ -18,8 +18,8 @@
// clang-format off
#ifdef LED_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[LED_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[LED_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | LED address
* | | */
diff --git a/keyboards/keychron/c2_pro/ansi/rgb/config.h b/keyboards/keychron/c2_pro/ansi/rgb/config.h
index d62b756f5a..47b47b920d 100644
--- a/keyboards/keychron/c2_pro/ansi/rgb/config.h
+++ b/keyboards/keychron/c2_pro/ansi/rgb/config.h
@@ -17,12 +17,11 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Set LED driver current */
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xAA, 0xAA, 0x56, 0xAA, 0xAA, 0x56, 0xAA, 0xAA, 0x56, 0xAA, 0xAA, 0x56 }
/* RGB Matrix Configuration */
diff --git a/keyboards/keychron/c2_pro/ansi/rgb/info.json b/keyboards/keychron/c2_pro/ansi/rgb/info.json
index e527af3371..1eee0ee1cd 100644
--- a/keyboards/keychron/c2_pro/ansi/rgb/info.json
+++ b/keyboards/keychron/c2_pro/ansi/rgb/info.json
@@ -122,7 +122,7 @@
}
},
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"breathing": true,
"band_spiral_val": true,
diff --git a/keyboards/keychron/c2_pro/ansi/rgb/rgb.c b/keyboards/keychron/c2_pro/ansi/rgb/rgb.c
index 998933081f..d42c2de39e 100644
--- a/keyboards/keychron/c2_pro/ansi/rgb/rgb.c
+++ b/keyboards/keychron/c2_pro/ansi/rgb/rgb.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/c2_pro/ansi/white/config.h b/keyboards/keychron/c2_pro/ansi/white/config.h
index d2a0e27b57..26c812ffef 100644
--- a/keyboards/keychron/c2_pro/ansi/white/config.h
+++ b/keyboards/keychron/c2_pro/ansi/white/config.h
@@ -17,11 +17,10 @@
#pragma once
/* LED Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* Set LED driver current */
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0, 0xA0 }
/* LED Matrix Configuration */
diff --git a/keyboards/keychron/c2_pro/ansi/white/info.json b/keyboards/keychron/c2_pro/ansi/white/info.json
index dc58d1943b..4d9b1e12b8 100644
--- a/keyboards/keychron/c2_pro/ansi/white/info.json
+++ b/keyboards/keychron/c2_pro/ansi/white/info.json
@@ -122,7 +122,7 @@
}
},
"led_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"none": true,
"solid": true,
diff --git a/keyboards/keychron/c2_pro/ansi/white/white.c b/keyboards/keychron/c2_pro/ansi/white/white.c
index 963ac8755f..9c75e73c6d 100644
--- a/keyboards/keychron/c2_pro/ansi/white/white.c
+++ b/keyboards/keychron/c2_pro/ansi/white/white.c
@@ -18,8 +18,8 @@
// clang-format off
#ifdef LED_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[LED_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[LED_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | LED address
* | | */
diff --git a/keyboards/keychron/q0/base/base.c b/keyboards/keychron/q0/base/base.c
new file mode 100644
index 0000000000..05803234c0
--- /dev/null
+++ b/keyboards/keychron/q0/base/base.c
@@ -0,0 +1,57 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+#ifdef RGB_MATRIX_ENABLE
+
+// clang-format off
+
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, F_5, D_5, E_5}, // 0
+ {0, I_5, G_5, H_5}, // 1
+ {0, L_5, J_5, K_5}, // 2
+ {0, C_5, A_5, B_5}, // 3
+
+ {0, F_4, D_4, E_4}, // 4
+ {0, I_4, G_4, H_4}, // 5
+ {0, L_4, J_4, K_4}, // 6
+ {0, C_4, A_4, B_4}, // 7
+
+ {0, F_6, D_6, E_6}, // 8
+ {0, I_6, G_6, H_6}, // 9
+ {0, L_6, J_6, K_6}, // 10
+
+ {0, F_3, D_3, E_3}, // 11
+ {0, I_3, G_3, H_3}, // 12
+ {0, L_3, J_3, K_3}, // 13
+ {0, C_6, A_6, B_6}, // 14
+
+ {0, F_2, D_2, E_2}, // 15
+ {0, I_2, G_2, H_2}, // 16
+ {0, L_2, J_2, K_2}, // 17
+
+ {0, F_1, D_1, E_1}, // 18
+ {0, L_1, J_1, K_1}, // 19
+ {0, C_2, A_2, B_2}, // 20
+};
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q0/base/config.h b/keyboards/keychron/q0/base/config.h
new file mode 100644
index 0000000000..1d6c1a6757
--- /dev/null
+++ b/keyboards/keychron/q0/base/config.h
@@ -0,0 +1,26 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Driver Configuration */
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 21
+
+/* Enable num-lock LED */
+#define NUM_LOCK_LED_INDEX 4
diff --git a/keyboards/keychron/q0/base/info.json b/keyboards/keychron/q0/base/info.json
new file mode 100644
index 0000000000..ad89cf84da
--- /dev/null
+++ b/keyboards/keychron/q0/base/info.json
@@ -0,0 +1,75 @@
+{
+ "keyboard_name": "Q0",
+ "usb": {
+ "pid": "0x0130",
+ "device_version": "1.0.2"
+ },
+ "matrix_pins": {
+ "cols": ["A5", "A6", "A7", "B0"],
+ "rows": ["B5", "B4", "B3", "A15", "A14", "A13"]
+ },
+ "rgb_matrix": {
+ "center_point": [56, 16],
+ "layout": [
+ {"flags": 1, "matrix": [0, 0], "x": 0, "y": 0},
+ {"flags": 1, "matrix": [0, 1], "x": 37, "y": 0},
+ {"flags": 1, "matrix": [0, 2], "x": 75, "y": 0},
+ {"flags": 1, "matrix": [0, 3], "x": 112, "y": 0},
+
+ {"flags": 9, "matrix": [1, 0], "x": 0, "y": 6},
+ {"flags": 4, "matrix": [1, 1], "x": 37, "y": 6},
+ {"flags": 4, "matrix": [1, 2], "x": 75, "y": 6},
+ {"flags": 4, "matrix": [1, 3], "x": 112, "y": 6},
+
+ {"flags": 4, "matrix": [2, 0], "x": 0, "y": 13},
+ {"flags": 4, "matrix": [2, 1], "x": 37, "y": 13},
+ {"flags": 4, "matrix": [2, 2], "x": 75, "y": 13},
+
+ {"flags": 4, "matrix": [3, 0], "x": 0, "y": 19},
+ {"flags": 4, "matrix": [3, 1], "x": 37, "y": 19},
+ {"flags": 4, "matrix": [3, 2], "x": 75, "y": 19},
+ {"flags": 4, "matrix": [2, 3], "x": 112, "y": 16},
+
+ {"flags": 4, "matrix": [4, 0], "x": 0, "y": 25},
+ {"flags": 4, "matrix": [4, 1], "x": 37, "y": 25},
+ {"flags": 4, "matrix": [4, 2], "x": 75, "y": 25},
+
+ {"flags": 4, "matrix": [5, 0], "x": 18, "y": 32},
+ {"flags": 4, "matrix": [5, 2], "x": 75, "y": 32},
+ {"flags": 1, "matrix": [4, 3], "x": 112, "y": 29}
+ ]
+ },
+ "community_layouts": ["numpad_6x4"],
+ "layouts": {
+ "LAYOUT_numpad_6x4": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1, "y": 1},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2},
+ {"matrix": [2, 1], "x": 1, "y": 2},
+ {"matrix": [2, 2], "x": 2, "y": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3},
+ {"matrix": [3, 1], "x": 1, "y": 3},
+ {"matrix": [3, 2], "x": 2, "y": 3},
+ {"matrix": [2, 3], "x": 3, "y": 2, "h": 2},
+
+ {"matrix": [4, 0], "x": 0, "y": 4},
+ {"matrix": [4, 1], "x": 1, "y": 4},
+ {"matrix": [4, 2], "x": 2, "y": 4},
+
+ {"matrix": [5, 0], "x": 0, "y": 5, "w": 2},
+ {"matrix": [5, 2], "x": 2, "y": 5},
+ {"matrix": [4, 3], "x": 3, "y": 4, "h": 2}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q0/rev_0130/keymaps/default/keymap.c b/keyboards/keychron/q0/base/keymaps/default/keymap.c
index 387ff2d686..387ff2d686 100644
--- a/keyboards/keychron/q0/rev_0130/keymaps/default/keymap.c
+++ b/keyboards/keychron/q0/base/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q0/rev_0130/keymaps/keychron/keymap.c b/keyboards/keychron/q0/base/keymaps/keychron/keymap.c
index 73826716fc..73826716fc 100644
--- a/keyboards/keychron/q0/rev_0130/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q0/base/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q0/rev_0130/keymaps/keychron/rules.mk b/keyboards/keychron/q0/base/keymaps/keychron/rules.mk
index 495e8907b4..495e8907b4 100644
--- a/keyboards/keychron/q0/rev_0130/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q0/base/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q0/rev_0130/keymaps/via/keymap.c b/keyboards/keychron/q0/base/keymaps/via/keymap.c
index 32fd198cf0..32fd198cf0 100644
--- a/keyboards/keychron/q0/rev_0130/keymaps/via/keymap.c
+++ b/keyboards/keychron/q0/base/keymaps/via/keymap.c
diff --git a/keyboards/dztech/og60/keymaps/via/rules.mk b/keyboards/keychron/q0/base/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/dztech/og60/keymaps/via/rules.mk
+++ b/keyboards/keychron/q0/base/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q0/rev_0130/readme.md b/keyboards/keychron/q0/base/readme.md
index a6db5bc015..a6db5bc015 100644
--- a/keyboards/keychron/q0/rev_0130/readme.md
+++ b/keyboards/keychron/q0/base/readme.md
diff --git a/keyboards/soda/mango/rules.mk b/keyboards/keychron/q0/base/rules.mk
index 7ff128fa69..7ff128fa69 100644
--- a/keyboards/soda/mango/rules.mk
+++ b/keyboards/keychron/q0/base/rules.mk
diff --git a/keyboards/keychron/q0/config.h b/keyboards/keychron/q0/config.h
index c0366b1ed8..24b629a520 100644
--- a/keyboards/keychron/q0/config.h
+++ b/keyboards/keychron/q0/config.h
@@ -16,14 +16,10 @@
#pragma once
-#define CKLED2001_CURRENT_TUNE { 0xFF, 0xFF, 0x70, 0xFF, 0xFF, 0x70, 0xFF, 0xFF, 0x70, 0xFF, 0xFF, 0x70 }
+#define SNLED27351_CURRENT_TUNE { 0xFF, 0xFF, 0x70, 0xFF, 0xFF, 0x70, 0xFF, 0xFF, 0x70, 0xFF, 0xFF, 0x70 }
/* turn off effects when suspended */
#define RGB_DISABLE_WHEN_USB_SUSPENDED
-/* EEPROM Driver Configuration */
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
-
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS \ No newline at end of file
diff --git a/keyboards/keychron/q0/info.json b/keyboards/keychron/q0/info.json
new file mode 100644
index 0000000000..70a726c520
--- /dev/null
+++ b/keyboards/keychron/q0/info.json
@@ -0,0 +1,52 @@
+{
+ "manufacturer": "Keychron",
+ "maintainer": "lalalademaxiya1",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "processor": "STM32L432",
+ "rgb_matrix": {
+ "animations": {
+ "band_spiral_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "digital_rain": true,
+ "dual_beacon": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "rainbow_beacon": true,
+ "rainbow_moving_chevron": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_simple": true,
+ "solid_splash": true,
+ "splash": true,
+ "typing_heatmap": true
+ },
+ "driver": "snled27351"
+ },
+ "url": "https://github.com/Keychron",
+ "usb": {
+ "force_nkro": true,
+ "vid": "0x3434"
+ }
+} \ No newline at end of file
diff --git a/keyboards/keychron/q0/plus/config.h b/keyboards/keychron/q0/plus/config.h
new file mode 100644
index 0000000000..01320b1f31
--- /dev/null
+++ b/keyboards/keychron/q0/plus/config.h
@@ -0,0 +1,31 @@
+/* Copyright 2023 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Driver Configuration */
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 26
+
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+
+/* Encoder Configuration*/
+#define ENCODER_DEFAULT_POS 0x3
+
+/* Enable num-lock LED */
+#define NUM_LOCK_LED_INDEX 5
diff --git a/keyboards/keychron/q0/plus/info.json b/keyboards/keychron/q0/plus/info.json
new file mode 100644
index 0000000000..b187a79139
--- /dev/null
+++ b/keyboards/keychron/q0/plus/info.json
@@ -0,0 +1,94 @@
+{
+ "keyboard_name": "Keychron Q0 Plus",
+ "usb": {
+ "pid": "0x0131",
+ "device_version": "1.0.0"
+ },
+ "matrix_pins": {
+ "cols": ["C14", "C15", "A0", "A1", "A2"],
+ "rows": ["B5", "B4", "B3", "A15", "A14", "A13"]
+ },
+ "encoder": {
+ "enabled": true,
+ "rotary": [
+ {"pin_a": "A3", "pin_b": "A4"}
+ ]
+ },
+ "bootmagic": {
+ "matrix": [0, 1]
+ },
+ "rgb_matrix": {
+ "layout": [
+ {"flags": 1, "matrix": [0, 1], "x": 56, "y": 0},
+ {"flags": 1, "matrix": [0, 2], "x": 112, "y": 0},
+ {"flags": 1, "matrix": [0, 3], "x": 168, "y": 0},
+ {"flags": 1, "matrix": [0, 4], "x": 224, "y": 0},
+
+ {"flags": 4, "matrix": [1, 0], "x": 0, "y": 15},
+ {"flags": 8, "matrix": [1, 1], "x": 56, "y": 15},
+ {"flags": 4, "matrix": [1, 2], "x": 112, "y": 15},
+ {"flags": 4, "matrix": [1, 3], "x": 168, "y": 15},
+ {"flags": 4, "matrix": [1, 4], "x": 224, "y": 15},
+
+ {"flags": 4, "matrix": [2, 0], "x": 0, "y": 27},
+ {"flags": 4, "matrix": [2, 1], "x": 56, "y": 27},
+ {"flags": 4, "matrix": [2, 2], "x": 112, "y": 27},
+ {"flags": 4, "matrix": [2, 3], "x": 168, "y": 27},
+ {"flags": 4, "matrix": [2, 4], "x": 224, "y": 34},
+
+ {"flags": 4, "matrix": [3, 0], "x": 0, "y": 40},
+ {"flags": 4, "matrix": [3, 1], "x": 56, "y": 40},
+ {"flags": 4, "matrix": [3, 2], "x": 112, "y": 40},
+ {"flags": 4, "matrix": [3, 3], "x": 168, "y": 40},
+
+ {"flags": 4, "matrix": [4, 0], "x": 0, "y": 52},
+ {"flags": 4, "matrix": [4, 1], "x": 56, "y": 52},
+ {"flags": 4, "matrix": [4, 2], "x": 112, "y": 52},
+ {"flags": 4, "matrix": [4, 3], "x": 168, "y": 52},
+ {"flags": 4, "matrix": [4, 4], "x": 224, "y": 58},
+
+ {"flags": 4, "matrix": [5, 0], "x": 0, "y": 64},
+ {"flags": 4, "matrix": [5, 1], "x": 84, "y": 64},
+ {"flags": 1, "matrix": [5, 3], "x": 168, "y": 64}
+ ]
+ },
+ "community_layouts": ["numpad_6x5"],
+ "layouts": {
+ "LAYOUT_numpad_6x5": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1.25, "y": 0},
+ {"matrix": [0, 2], "x": 2.25, "y": 0},
+ {"matrix": [0, 3], "x": 3.25, "y": 0},
+ {"matrix": [0, 4], "x": 4.25, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1.25},
+ {"matrix": [1, 1], "x": 1.25, "y": 1.25},
+ {"matrix": [1, 2], "x": 2.25, "y": 1.25},
+ {"matrix": [1, 3], "x": 3.25, "y": 1.25},
+ {"matrix": [1, 4], "x": 4.25, "y": 1.25},
+
+ {"matrix": [2, 0], "x": 0, "y": 2.25},
+ {"matrix": [2, 1], "x": 1.25, "y": 2.25},
+ {"matrix": [2, 2], "x": 2.25, "y": 2.25},
+ {"matrix": [2, 3], "x": 3.25, "y": 2.25},
+ {"matrix": [2, 4], "x": 4.25, "y": 2.25, "h": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3.25},
+ {"matrix": [3, 3], "x": 3.25, "y": 3.25},
+
+ {"matrix": [4, 0], "x": 0, "y": 4.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4.25},
+ {"matrix": [4, 3], "x": 3.25, "y": 4.25},
+ {"matrix": [4, 4], "x": 4.25, "y": 4.25, "h": 2},
+
+ {"matrix": [5, 0], "x": 0, "y": 5.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 2},
+ {"matrix": [5, 3], "x": 3.25, "y": 5.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q0/rev_0131/keymaps/default/keymap.c b/keyboards/keychron/q0/plus/keymaps/default/keymap.c
index 4e281d4d7d..4e281d4d7d 100644
--- a/keyboards/keychron/q0/rev_0131/keymaps/default/keymap.c
+++ b/keyboards/keychron/q0/plus/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q0/plus/keymaps/default/rules.mk b/keyboards/keychron/q0/plus/keymaps/default/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/keychron/q0/plus/keymaps/default/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/keychron/q0/rev_0131/keymaps/keychron/keymap.c b/keyboards/keychron/q0/plus/keymaps/keychron/keymap.c
index 795c275543..795c275543 100644
--- a/keyboards/keychron/q0/rev_0131/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q0/plus/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q0/rev_0131/keymaps/keychron/rules.mk b/keyboards/keychron/q0/plus/keymaps/keychron/rules.mk
index 9cf1a9b56c..9cf1a9b56c 100644
--- a/keyboards/keychron/q0/rev_0131/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q0/plus/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q0/rev_0131/keymaps/via/keymap.c b/keyboards/keychron/q0/plus/keymaps/via/keymap.c
index 935d3edb76..935d3edb76 100644
--- a/keyboards/keychron/q0/rev_0131/keymaps/via/keymap.c
+++ b/keyboards/keychron/q0/plus/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q0/rev_0131/keymaps/via/rules.mk b/keyboards/keychron/q0/plus/keymaps/via/rules.mk
index f1adcab005..f1adcab005 100644
--- a/keyboards/keychron/q0/rev_0131/keymaps/via/rules.mk
+++ b/keyboards/keychron/q0/plus/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q0/plus/plus.c b/keyboards/keychron/q0/plus/plus.c
new file mode 100644
index 0000000000..0466e1a584
--- /dev/null
+++ b/keyboards/keychron/q0/plus/plus.c
@@ -0,0 +1,62 @@
+/* Copyright 2023 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+#ifdef RGB_MATRIX_ENABLE
+
+// clang-format off
+
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {0, I_4, G_4, H_4},
+ {0, I_5, G_5, H_5},
+
+ {0, C_1, A_1, B_1},
+ {0, C_2, A_2, B_2},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+
+ {0, I_6, G_6, H_6},
+ {0, I_7, G_7, H_7},
+ {0, I_8, G_8, H_8},
+ {0, I_9, G_9, H_9},
+
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_9, D_9, E_9},
+};
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q0/plus/readme.md b/keyboards/keychron/q0/plus/readme.md
new file mode 100644
index 0000000000..6cc6e263f4
--- /dev/null
+++ b/keyboards/keychron/q0/plus/readme.md
@@ -0,0 +1,12 @@
+# Keychron Q0 Plus
+
+![Keychron Q0 Plus](https://i.imgur.com/EDbfVVOh.jpg)
+
+* Keyboard Maintainer: [Keychron](https://github.com/keychron)
+* Hardware Supported: Keychron Q0 Plus
+* Hardware Availability: [Keychron Q0 Plus QMK Custom Number Pad](https://www.keychron.com/products/keychron-q0-plus-qmk-custom-number-pad)
+
+1. The name of this keyboard is "Keychron Q0 Plus"
+2. Enables EC11 rotary encoder
+ - Turn clockwise to increase volume and turn anti-clockwise to decrease volume
+ - Press the knob button to mute
diff --git a/keyboards/keychron/q0/plus/rules.mk b/keyboards/keychron/q0/plus/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/keychron/q0/plus/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q0/readme.md b/keyboards/keychron/q0/readme.md
index d0180d386e..aa6d109a29 100644
--- a/keyboards/keychron/q0/readme.md
+++ b/keyboards/keychron/q0/readme.md
@@ -1,18 +1,22 @@
# Keychron Q0
+![Keychron Q0](https://i.imgur.com/cLbEiZ0h.jpg)
+
A customizable number keypad.
* Keyboard Maintainer: [Keychron](https://github.com/keychron)
* Hardware Supported: Keychron Q0
-* Hardware Availability: [Keychron](https://www.keychron.com)
+* Hardware Availability: [Keychron Q0 QMK Custom Number Pad](https://www.keychron.com/products/keychron-q0-qmk-custom-number-pad)
Make example for this keyboard (after setting up your build environment):
- make keychron/q0/rev_0130:default
+ make keychron/q0/base:default
+ make keychron/q0/plus:default
Flashing example for this keyboard:
- make keychron/q0/rev_0130:default:flash
+ make keychron/q0/base:default:flash
+ make keychron/q0/plus:default:flash
**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard.
diff --git a/keyboards/keychron/q0/rev_0130/config.h b/keyboards/keychron/q0/rev_0130/config.h
deleted file mode 100644
index 12ecfe1356..0000000000
--- a/keyboards/keychron/q0/rev_0130/config.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 21
-#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-
-/* Enable num-lock LED */
-#define NUM_LOCK_LED_INDEX 4
diff --git a/keyboards/keychron/q0/rev_0130/info.json b/keyboards/keychron/q0/rev_0130/info.json
deleted file mode 100644
index f6225c884a..0000000000
--- a/keyboards/keychron/q0/rev_0130/info.json
+++ /dev/null
@@ -1,118 +0,0 @@
-{
- "keyboard_name": "Q0",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0130",
- "device_version": "1.0.2",
- "force_nkro": true
- },
- "matrix_pins": {
- "cols": ["A5", "A6", "A7", "B0"],
- "rows": ["B5", "B4", "B3", "A15", "A14", "A13"]
- },
- "features": {
- "audio": false,
- "backlight": false,
- "bootmagic": true,
- "command": false,
- "console": false,
- "extrakey": true,
- "mousekey": true,
- "nkro": true,
- "rgb_matrix": true,
- "rgblight": false
- },
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
- "rgb_matrix": {
- "driver": "ckled2001",
- "animations": {
- "band_spiral_val": true,
- "breathing": true,
- "cycle_all": true,
- "cycle_left_right": true,
- "cycle_up_down": true,
- "rainbow_moving_chevron": true,
- "cycle_out_in": true,
- "cycle_out_in_dual": true,
- "cycle_pinwheel": true,
- "cycle_spiral": true,
- "dual_beacon": true,
- "rainbow_beacon": true,
- "jellybean_raindrops": true,
- "pixel_rain": true,
- "typing_heatmap": true,
- "digital_rain": true,
- "solid_reactive_simple": true,
- "solid_reactive_multiwide": true,
- "solid_reactive_multinexus": true,
- "splash": true,
- "solid_splash": true
- },
- "center_point": [56, 16],
- "layout": [
- {"flags": 1, "matrix": [0, 0], "x": 0, "y": 0},
- {"flags": 1, "matrix": [0, 1], "x": 37, "y": 0},
- {"flags": 1, "matrix": [0, 2], "x": 75, "y": 0},
- {"flags": 1, "matrix": [0, 3], "x": 112, "y": 0},
-
- {"flags": 9, "matrix": [1, 0], "x": 0, "y": 6},
- {"flags": 4, "matrix": [1, 1], "x": 37, "y": 6},
- {"flags": 4, "matrix": [1, 2], "x": 75, "y": 6},
- {"flags": 4, "matrix": [1, 3], "x": 112, "y": 6},
-
- {"flags": 4, "matrix": [2, 0], "x": 0, "y": 13},
- {"flags": 4, "matrix": [2, 1], "x": 37, "y": 13},
- {"flags": 4, "matrix": [2, 2], "x": 75, "y": 13},
-
- {"flags": 4, "matrix": [3, 0], "x": 0, "y": 19},
- {"flags": 4, "matrix": [3, 1], "x": 37, "y": 19},
- {"flags": 4, "matrix": [3, 2], "x": 75, "y": 19},
- {"flags": 4, "matrix": [2, 3], "x": 112, "y": 16},
-
- {"flags": 4, "matrix": [4, 0], "x": 0, "y": 25},
- {"flags": 4, "matrix": [4, 1], "x": 37, "y": 25},
- {"flags": 4, "matrix": [4, 2], "x": 75, "y": 25},
-
- {"flags": 4, "matrix": [5, 0], "x": 18, "y": 32},
- {"flags": 4, "matrix": [5, 2], "x": 75, "y": 32},
- {"flags": 1, "matrix": [4, 3], "x": 112, "y": 29}
- ]
- },
- "layouts": {
- "LAYOUT_numpad_6x4": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
-
- {"matrix": [2, 0], "x": 0, "y": 2},
- {"matrix": [2, 1], "x": 1, "y": 2},
- {"matrix": [2, 2], "x": 2, "y": 2},
-
- {"matrix": [3, 0], "x": 0, "y": 3},
- {"matrix": [3, 1], "x": 1, "y": 3},
- {"matrix": [3, 2], "x": 2, "y": 3},
- {"matrix": [2, 3], "x": 3, "y": 2, "h": 2},
-
- {"matrix": [4, 0], "x": 0, "y": 4},
- {"matrix": [4, 1], "x": 1, "y": 4},
- {"matrix": [4, 2], "x": 2, "y": 4},
-
- {"matrix": [5, 0], "x": 0, "y": 5, "w": 2},
- {"matrix": [5, 2], "x": 2, "y": 5},
- {"matrix": [4, 3], "x": 3, "y": 4, "h": 2}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q0/rev_0130/rev_0130.c b/keyboards/keychron/q0/rev_0130/rev_0130.c
deleted file mode 100644
index ffe82a6d8c..0000000000
--- a/keyboards/keychron/q0/rev_0130/rev_0130.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-
-// clang-format off
-
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, F_5, D_5, E_5}, // 0
- {0, I_5, G_5, H_5}, // 1
- {0, L_5, J_5, K_5}, // 2
- {0, C_5, A_5, B_5}, // 3
-
- {0, F_4, D_4, E_4}, // 4
- {0, I_4, G_4, H_4}, // 5
- {0, L_4, J_4, K_4}, // 6
- {0, C_4, A_4, B_4}, // 7
-
- {0, F_6, D_6, E_6}, // 8
- {0, I_6, G_6, H_6}, // 9
- {0, L_6, J_6, K_6}, // 10
-
- {0, F_3, D_3, E_3}, // 11
- {0, I_3, G_3, H_3}, // 12
- {0, L_3, J_3, K_3}, // 13
- {0, C_6, A_6, B_6}, // 14
-
- {0, F_2, D_2, E_2}, // 15
- {0, I_2, G_2, H_2}, // 16
- {0, L_2, J_2, K_2}, // 17
-
- {0, F_1, D_1, E_1}, // 18
- {0, L_1, J_1, K_1}, // 19
- {0, C_2, A_2, B_2}, // 20
-};
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q0/rev_0130/rules.mk b/keyboards/keychron/q0/rev_0130/rules.mk
deleted file mode 100644
index f6868e88e3..0000000000
--- a/keyboards/keychron/q0/rev_0130/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q0/rev_0131/config.h b/keyboards/keychron/q0/rev_0131/config.h
deleted file mode 100644
index e4c5c2d3fc..0000000000
--- a/keyboards/keychron/q0/rev_0131/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright 2023 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110111
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 26
-#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-
-/* Enable num-lock LED */
-#define NUM_LOCK_LED_INDEX 5
-
-/* Encoder Configuration */
-#define ENCODER_DEFAULT_POS 0x3
diff --git a/keyboards/keychron/q0/rev_0131/info.json b/keyboards/keychron/q0/rev_0131/info.json
deleted file mode 100644
index c569e498f4..0000000000
--- a/keyboards/keychron/q0/rev_0131/info.json
+++ /dev/null
@@ -1,137 +0,0 @@
-{
- "keyboard_name": "Keychron Q0 Plus",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0131",
- "device_version": "1.0.0",
- "force_nkro": true
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2"],
- "rows": ["B5", "B4", "B3", "A15", "A14", "A13"]
- },
- "features": {
- "audio": false,
- "backlight": false,
- "bootmagic": true,
- "command": false,
- "console": false,
- "encoder": true,
- "extrakey": true,
- "mousekey": true,
- "nkro": true,
- "rgb_matrix": true,
- "rgblight": false
- },
- "diode_direction": "ROW2COL",
- "encoder": {
- "rotary": [
- {"pin_a": "A3", "pin_b": "A4"}
- ]
- },
- "bootmagic": {
- "matrix": [0, 1]
- },
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
- "rgb_matrix": {
- "driver": "ckled2001",
- "animations": {
- "band_spiral_val": true,
- "breathing": true,
- "cycle_all": true,
- "cycle_left_right": true,
- "cycle_up_down": true,
- "rainbow_moving_chevron": true,
- "cycle_out_in": true,
- "cycle_out_in_dual": true,
- "cycle_pinwheel": true,
- "cycle_spiral": true,
- "dual_beacon": true,
- "rainbow_beacon": true,
- "jellybean_raindrops": true,
- "pixel_rain": true,
- "typing_heatmap": true,
- "digital_rain": true,
- "solid_reactive_simple": true,
- "solid_reactive_multiwide": true,
- "solid_reactive_multinexus": true,
- "splash": true,
- "solid_splash": true
- },
- "layout": [
- {"flags": 1, "matrix": [0, 1], "x": 56, "y": 0},
- {"flags": 1, "matrix": [0, 2], "x": 112, "y": 0},
- {"flags": 1, "matrix": [0, 3], "x": 168, "y": 0},
- {"flags": 1, "matrix": [0, 4], "x": 224, "y": 0},
-
- {"flags": 4, "matrix": [1, 0], "x": 0, "y": 15},
- {"flags": 8, "matrix": [1, 1], "x": 56, "y": 15},
- {"flags": 4, "matrix": [1, 2], "x": 112, "y": 15},
- {"flags": 4, "matrix": [1, 3], "x": 168, "y": 15},
- {"flags": 4, "matrix": [1, 4], "x": 224, "y": 15},
-
- {"flags": 4, "matrix": [2, 0], "x": 0, "y": 27},
- {"flags": 4, "matrix": [2, 1], "x": 56, "y": 27},
- {"flags": 4, "matrix": [2, 2], "x": 112, "y": 27},
- {"flags": 4, "matrix": [2, 3], "x": 168, "y": 27},
- {"flags": 4, "matrix": [2, 4], "x": 224, "y": 34},
-
- {"flags": 4, "matrix": [3, 0], "x": 0, "y": 40},
- {"flags": 4, "matrix": [3, 1], "x": 56, "y": 40},
- {"flags": 4, "matrix": [3, 2], "x": 112, "y": 40},
- {"flags": 4, "matrix": [3, 3], "x": 168, "y": 40},
-
- {"flags": 4, "matrix": [4, 0], "x": 0, "y": 52},
- {"flags": 4, "matrix": [4, 1], "x": 56, "y": 52},
- {"flags": 4, "matrix": [4, 2], "x": 112, "y": 52},
- {"flags": 4, "matrix": [4, 3], "x": 168, "y": 52},
- {"flags": 4, "matrix": [4, 4], "x": 224, "y": 58},
-
- {"flags": 4, "matrix": [5, 0], "x": 0, "y": 64},
- {"flags": 4, "matrix": [5, 1], "x": 84, "y": 64},
- {"flags": 1, "matrix": [5, 3], "x": 168, "y": 64}
- ]
- },
- "layouts": {
- "LAYOUT_numpad_6x5": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1.25, "y": 0},
- {"matrix": [0, 2], "x": 2.25, "y": 0},
- {"matrix": [0, 3], "x": 3.25, "y": 0},
- {"matrix": [0, 4], "x": 4.25, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1.25},
- {"matrix": [1, 1], "x": 1.25, "y": 1.25},
- {"matrix": [1, 2], "x": 2.25, "y": 1.25},
- {"matrix": [1, 3], "x": 3.25, "y": 1.25},
- {"matrix": [1, 4], "x": 4.25, "y": 1.25},
-
- {"matrix": [2, 0], "x": 0, "y": 2.25},
- {"matrix": [2, 1], "x": 1.25, "y": 2.25},
- {"matrix": [2, 2], "x": 2.25, "y": 2.25},
- {"matrix": [2, 3], "x": 3.25, "y": 2.25},
- {"matrix": [2, 4], "x": 4.25, "y": 2.25, "h": 2},
-
- {"matrix": [3, 0], "x": 0, "y": 3.25},
- {"matrix": [3, 1], "x": 1.25, "y": 3.25},
- {"matrix": [3, 2], "x": 2.25, "y": 3.25},
- {"matrix": [3, 3], "x": 3.25, "y": 3.25},
-
- {"matrix": [4, 0], "x": 0, "y": 4.25},
- {"matrix": [4, 1], "x": 1.25, "y": 4.25},
- {"matrix": [4, 2], "x": 2.25, "y": 4.25},
- {"matrix": [4, 3], "x": 3.25, "y": 4.25},
- {"matrix": [4, 4], "x": 4.25, "y": 4.25, "h": 2},
-
- {"matrix": [5, 0], "x": 0, "y": 5.25},
- {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 2},
- {"matrix": [5, 3], "x": 3.25, "y": 5.25}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q0/rev_0131/readme.md b/keyboards/keychron/q0/rev_0131/readme.md
deleted file mode 100644
index df07c40e49..0000000000
--- a/keyboards/keychron/q0/rev_0131/readme.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# The enhanced version with encoder of the Keychron Q0
-
-- The name of this keyboard is "Q0 Plus"
-- Enable EC11 rotary encoder
-- Turn clockwise to increase volume and turn anti-clockwise to decrease volume
-- Press the knob button to mute
diff --git a/keyboards/keychron/q0/rev_0131/rev_0131.c b/keyboards/keychron/q0/rev_0131/rev_0131.c
deleted file mode 100644
index 282c511ce2..0000000000
--- a/keyboards/keychron/q0/rev_0131/rev_0131.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright 2023 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-
-// clang-format off
-
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {0, I_4, G_4, H_4},
- {0, I_5, G_5, H_5},
-
- {0, C_1, A_1, B_1},
- {0, C_2, A_2, B_2},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
-
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
-
- {0, I_6, G_6, H_6},
- {0, I_7, G_7, H_7},
- {0, I_8, G_8, H_8},
- {0, I_9, G_9, H_9},
-
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
-
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_9, D_9, E_9},
-};
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q0/rev_0131/rules.mk b/keyboards/keychron/q0/rev_0131/rules.mk
deleted file mode 100644
index f6868e88e3..0000000000
--- a/keyboards/keychron/q0/rev_0131/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q1/ansi/ansi.c b/keyboards/keychron/q1/ansi/ansi.c
deleted file mode 100644
index ee586fef93..0000000000
--- a/keyboards/keychron/q1/ansi/ansi.c
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C_1, A_1, B_1},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
- {0, C_11, A_11, B_11},
- {0, C_12, A_12, B_12},
- {0, C_13, A_13, B_13},
- {0, C_14, A_14, B_14},
- {0, C_15, A_15, B_15},
- {0, C_16, A_16, B_16},
-
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_8, D_8, E_8},
- {0, F_9, D_9, E_9},
- {0, F_10, D_10, E_10},
- {0, F_11, D_11, E_11},
- {0, F_12, D_12, E_12},
- {0, F_13, D_13, E_13},
- {0, F_14, D_14, E_14},
- {0, F_16, D_16, E_16},
-
- {0, I_1, G_1, H_1},
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {0, I_4, G_4, H_4},
- {0, I_5, G_5, H_5},
- {0, I_6, G_6, H_6},
- {0, I_7, G_7, H_7},
- {0, I_8, G_8, H_8},
- {0, I_9, G_9, H_9},
- {0, I_10, G_10, H_10},
- {0, I_11, G_11, H_11},
- {0, I_12, G_12, H_12},
- {0, I_13, G_13, H_13},
- {0, I_14, G_14, H_14},
- {0, I_16, G_16, H_16},
-
- {0, L_1, J_1, K_1},
- {0, L_2, J_2, K_2},
- {0, L_3, J_3, K_3},
- {0, L_4, J_4, K_4},
- {0, L_5, J_5, K_5},
- {0, L_6, J_6, K_6},
- {0, L_7, J_7, K_7},
- {0, L_8, J_8, K_8},
- {0, L_9, J_9, K_9},
- {0, L_10, J_10, K_10},
- {0, L_11, J_11, K_11},
- {0, L_12, J_12, K_12},
- {0, L_14, J_14, K_14},
- {0, L_16, J_16, K_16},
-
- {1, C_1, A_1, B_1},
- {1, C_3, A_3, B_3},
- {1, C_4, A_4, B_4},
- {1, C_5, A_5, B_5},
- {1, C_6, A_6, B_6},
- {1, C_7, A_7, B_7},
- {1, C_8, A_8, B_8},
- {1, C_9, A_9, B_9},
- {1, C_10, A_10, B_10},
- {1, C_11, A_11, B_11},
- {1, C_12, A_12, B_12},
- {1, C_14, A_14, B_14},
- {1, C_15, A_15, B_15},
-
- {1, F_1, D_1, E_1},
- {1, F_2, D_2, E_2},
- {1, F_3, D_3, E_3},
- {1, F_7, D_7, E_7},
- {1, F_11, D_11, E_11},
- {1, F_12, D_12, E_12},
- {1, F_13, D_13, E_13},
- {1, F_14, D_14, E_14},
- {1, F_15, D_15, E_15},
- {1, F_16, D_16, E_16}
-
-};
-
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, __, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 },
- { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 71, 57, 58 },
- { 59, __, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 80, 70, 13 },
- { 72, 73, 74, __, __, __, 75, __, __, __, 76, 77, 78, 79, 81 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {18,0}, {33,0}, {48,0}, {62,0}, {81,0}, {95,0}, {110,0}, {125,0}, {143,0}, {158,0}, {173,0}, {187,0}, {206,0}, {224,0},
- {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {118,15}, {132,15}, {147,15}, {162,15}, {176,15}, {198,15}, {224,15},
- {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {140,26}, {154,26}, {169,26}, {184,26}, {202,26}, {224,26},
- {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {129,38}, {143,38}, {158,38}, {173,38}, {196,38}, {224,38},
- {9,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {151,49}, {165,49}, {185,49}, {209,52},
- {2,61}, {20,61}, {39,61}, {94,61}, {147,61}, {162,61}, {176,61}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1/ansi/config.h b/keyboards/keychron/q1/ansi/config.h
deleted file mode 100644
index c6d4e44c87..0000000000
--- a/keyboards/keychron/q1/ansi/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 59
-#define DRIVER_2_LED_TOTAL 23
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) \ No newline at end of file
diff --git a/keyboards/keychron/q1/ansi/info.json b/keyboards/keychron/q1/ansi/info.json
deleted file mode 100644
index 8ff2075747..0000000000
--- a/keyboards/keychron/q1/ansi/info.json
+++ /dev/null
@@ -1,115 +0,0 @@
-{
- "keyboard_name": "Q1",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0100",
- "device_version": "1.0.0",
- "force_nkro": true
- },
- "rgb_matrix": {
- "driver": "is31fl3733"
- },
- "matrix_pins": {
- "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
- "rows": ["D3", "D2", "B3", "B2", "B1", "B0"]
- },
- "diode_direction": "ROW2COL",
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "layouts": {
- "LAYOUT_ansi_82": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 2], "x": 1.25, "y": 0},
- {"matrix": [0, 3], "x": 2.25, "y": 0},
- {"matrix": [0, 4], "x": 3.25, "y": 0},
- {"matrix": [0, 5], "x": 4.25, "y": 0},
- {"matrix": [0, 6], "x": 5.5, "y": 0},
- {"matrix": [0, 7], "x": 6.5, "y": 0},
- {"matrix": [0, 8], "x": 7.5, "y": 0},
- {"matrix": [0, 9], "x": 8.5, "y": 0},
- {"matrix": [0, 10], "x": 9.75, "y": 0},
- {"matrix": [0, 11], "x": 10.75, "y": 0},
- {"matrix": [0, 12], "x": 11.75, "y": 0},
- {"matrix": [0, 13], "x": 12.75, "y": 0},
- {"matrix": [4, 14], "x": 14, "y": 0},
- {"matrix": [0, 14], "x": 15.25, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1},
- {"matrix": [1, 5], "x": 5, "y": 1},
- {"matrix": [1, 6], "x": 6, "y": 1},
- {"matrix": [1, 7], "x": 7, "y": 1},
- {"matrix": [1, 8], "x": 8, "y": 1},
- {"matrix": [1, 9], "x": 9, "y": 1},
- {"matrix": [1, 10], "x": 10, "y": 1},
- {"matrix": [1, 11], "x": 11, "y": 1},
- {"matrix": [1, 12], "x": 12, "y": 1},
- {"matrix": [1, 13], "x": 13, "y": 1, "w": 2},
- {"matrix": [1, 14], "x": 15.25, "y": 1},
-
- {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
- {"matrix": [2, 1], "x": 1.5, "y": 2},
- {"matrix": [2, 2], "x": 2.5, "y": 2},
- {"matrix": [2, 3], "x": 3.5, "y": 2},
- {"matrix": [2, 4], "x": 4.5, "y": 2},
- {"matrix": [2, 5], "x": 5.5, "y": 2},
- {"matrix": [2, 6], "x": 6.5, "y": 2},
- {"matrix": [2, 7], "x": 7.5, "y": 2},
- {"matrix": [2, 8], "x": 8.5, "y": 2},
- {"matrix": [2, 9], "x": 9.5, "y": 2},
- {"matrix": [2, 10], "x": 10.5, "y": 2},
- {"matrix": [2, 11], "x": 11.5, "y": 2},
- {"matrix": [2, 12], "x": 12.5, "y": 2},
- {"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
- {"matrix": [2, 14], "x": 15.25, "y": 2},
-
- {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
- {"matrix": [3, 1], "x": 1.75, "y": 3},
- {"matrix": [3, 2], "x": 2.75, "y": 3},
- {"matrix": [3, 3], "x": 3.75, "y": 3},
- {"matrix": [3, 4], "x": 4.75, "y": 3},
- {"matrix": [3, 5], "x": 5.75, "y": 3},
- {"matrix": [3, 6], "x": 6.75, "y": 3},
- {"matrix": [3, 7], "x": 7.75, "y": 3},
- {"matrix": [3, 8], "x": 8.75, "y": 3},
- {"matrix": [3, 9], "x": 9.75, "y": 3},
- {"matrix": [3, 10], "x": 10.75, "y": 3},
- {"matrix": [3, 11], "x": 11.75, "y": 3},
- {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25},
- {"matrix": [3, 14], "x": 15.25, "y": 3},
-
- {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25},
- {"matrix": [4, 2], "x": 2.25, "y": 4},
- {"matrix": [4, 3], "x": 3.25, "y": 4},
- {"matrix": [4, 4], "x": 4.25, "y": 4},
- {"matrix": [4, 5], "x": 5.25, "y": 4},
- {"matrix": [4, 6], "x": 6.25, "y": 4},
- {"matrix": [4, 7], "x": 7.25, "y": 4},
- {"matrix": [4, 8], "x": 8.25, "y": 4},
- {"matrix": [4, 9], "x": 9.25, "y": 4},
- {"matrix": [4, 10], "x": 10.25, "y": 4},
- {"matrix": [4, 11], "x": 11.25, "y": 4},
- {"matrix": [4, 13], "x": 12.25, "y": 4, "w": 1.75},
- {"matrix": [3, 12], "x": 14.25, "y": 4.25},
-
- {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
- {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
- {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
- {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25},
- {"matrix": [5, 10], "x": 10, "y": 5},
- {"matrix": [5, 11], "x": 11, "y": 5},
- {"matrix": [5, 12], "x": 12, "y": 5},
- {"matrix": [5, 13], "x": 13.25, "y": 5.25},
- {"matrix": [4, 12], "x": 14.25, "y": 5.25},
- {"matrix": [5, 14], "x": 15.25, "y": 5.25}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q1/ansi/rules.mk b/keyboards/keychron/q1/ansi/rules.mk
deleted file mode 100644
index 0379fdb94c..0000000000
--- a/keyboards/keychron/q1/ansi/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/keychron/q1/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q1/ansi_encoder/ansi_encoder.c
deleted file mode 100644
index bc559b3541..0000000000
--- a/keyboards/keychron/q1/ansi_encoder/ansi_encoder.c
+++ /dev/null
@@ -1,148 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C_1, A_1, B_1},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
- {0, C_11, A_11, B_11},
- {0, C_12, A_12, B_12},
- {0, C_13, A_13, B_13},
- {0, C_14, A_14, B_14},
- {0, C_15, A_15, B_15},
- {0, C_16, A_16, B_16},
-
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_8, D_8, E_8},
- {0, F_9, D_9, E_9},
- {0, F_10, D_10, E_10},
- {0, F_11, D_11, E_11},
- {0, F_12, D_12, E_12},
- {0, F_13, D_13, E_13},
- {0, F_14, D_14, E_14},
- {0, F_16, D_16, E_16},
-
- {0, I_1, G_1, H_1},
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {0, I_4, G_4, H_4},
- {0, I_5, G_5, H_5},
- {0, I_6, G_6, H_6},
- {0, I_7, G_7, H_7},
- {0, I_8, G_8, H_8},
- {0, I_9, G_9, H_9},
- {0, I_10, G_10, H_10},
- {0, I_11, G_11, H_11},
- {0, I_12, G_12, H_12},
- {0, I_13, G_13, H_13},
- {0, I_14, G_14, H_14},
- {0, I_16, G_16, H_16},
-
- {0, L_1, J_1, K_1},
- {0, L_2, J_2, K_2},
- {0, L_3, J_3, K_3},
- {0, L_4, J_4, K_4},
- {0, L_5, J_5, K_5},
- {0, L_6, J_6, K_6},
- {0, L_7, J_7, K_7},
- {0, L_8, J_8, K_8},
- {0, L_9, J_9, K_9},
- {0, L_10, J_10, K_10},
- {0, L_11, J_11, K_11},
- {0, L_12, J_12, K_12},
- {0, L_14, J_14, K_14},
- {0, L_16, J_16, K_16},
-
- {1, C_1, A_1, B_1},
- {1, C_3, A_3, B_3},
- {1, C_4, A_4, B_4},
- {1, C_5, A_5, B_5},
- {1, C_6, A_6, B_6},
- {1, C_7, A_7, B_7},
- {1, C_8, A_8, B_8},
- {1, C_9, A_9, B_9},
- {1, C_10, A_10, B_10},
- {1, C_11, A_11, B_11},
- {1, C_12, A_12, B_12},
- {1, C_14, A_14, B_14},
- {1, C_15, A_15, B_15},
-
- {1, F_1, D_1, E_1},
- {1, F_2, D_2, E_2},
- {1, F_3, D_3, E_3},
- {1, F_7, D_7, E_7},
- {1, F_11, D_11, E_11},
- {1, F_12, D_12, E_12},
- {1, F_13, D_13, E_13},
- {1, F_14, D_14, E_14},
- {1, F_15, D_15, E_15},
- {1, F_16, D_16, E_16}
-};
-
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, __, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 },
- { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 71, 57, 58 },
- { 59, __, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 80, 70, 13 },
- { 72, 73, 74, __, __, __, 75, __, __, __, 76, 77, 78, 79, 81 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {18,0}, {33,0}, {48,0}, {62,0}, {81,0}, {95,0}, {110,0}, {125,0}, {143,0}, {158,0}, {173,0}, {187,0}, {206,0}, {224,0},
- {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {118,15}, {132,15}, {147,15}, {162,15}, {176,15}, {198,15}, {224,15},
- {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {140,26}, {154,26}, {169,26}, {184,26}, {202,26}, {224,26},
- {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {129,38}, {143,38}, {158,38}, {173,38}, {196,38}, {224,38},
- {9,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {151,49}, {165,49}, {185,49}, {209,52},
- {2,61}, {20,61}, {39,61}, {94,61}, {147,61}, {162,61}, {176,61}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1/ansi_encoder/config.h b/keyboards/keychron/q1/ansi_encoder/config.h
deleted file mode 100644
index 28bbea9087..0000000000
--- a/keyboards/keychron/q1/ansi_encoder/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 59
-#define DRIVER_2_LED_TOTAL 23
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/keychron/q1/ansi_encoder/info.json b/keyboards/keychron/q1/ansi_encoder/info.json
deleted file mode 100644
index ef361257f0..0000000000
--- a/keyboards/keychron/q1/ansi_encoder/info.json
+++ /dev/null
@@ -1,120 +0,0 @@
-{
- "keyboard_name": "Q1",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0101",
- "device_version": "1.0.0",
- "force_nkro": true
- },
- "rgb_matrix": {
- "driver": "is31fl3733"
- },
- "matrix_pins": {
- "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
- "rows": ["D3", "D2", "B3", "B2", "B1", "B0"]
- },
- "diode_direction": "ROW2COL",
- "encoder": {
- "rotary": [
- {"pin_a": "E6", "pin_b": "B7"}
- ]
- },
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "layouts": {
- "LAYOUT_ansi_82": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 2], "x": 1.25, "y": 0},
- {"matrix": [0, 3], "x": 2.25, "y": 0},
- {"matrix": [0, 4], "x": 3.25, "y": 0},
- {"matrix": [0, 5], "x": 4.25, "y": 0},
- {"matrix": [0, 6], "x": 5.5, "y": 0},
- {"matrix": [0, 7], "x": 6.5, "y": 0},
- {"matrix": [0, 8], "x": 7.5, "y": 0},
- {"matrix": [0, 9], "x": 8.5, "y": 0},
- {"matrix": [0, 10], "x": 9.75, "y": 0},
- {"matrix": [0, 11], "x": 10.75, "y": 0},
- {"matrix": [0, 12], "x": 11.75, "y": 0},
- {"matrix": [0, 13], "x": 12.75, "y": 0},
- {"matrix": [4, 14], "x": 14, "y": 0},
- {"matrix": [0, 14], "x": 15.25, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1},
- {"matrix": [1, 5], "x": 5, "y": 1},
- {"matrix": [1, 6], "x": 6, "y": 1},
- {"matrix": [1, 7], "x": 7, "y": 1},
- {"matrix": [1, 8], "x": 8, "y": 1},
- {"matrix": [1, 9], "x": 9, "y": 1},
- {"matrix": [1, 10], "x": 10, "y": 1},
- {"matrix": [1, 11], "x": 11, "y": 1},
- {"matrix": [1, 12], "x": 12, "y": 1},
- {"matrix": [1, 13], "x": 13, "y": 1, "w": 2},
- {"matrix": [1, 14], "x": 15.25, "y": 1},
-
- {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
- {"matrix": [2, 1], "x": 1.5, "y": 2},
- {"matrix": [2, 2], "x": 2.5, "y": 2},
- {"matrix": [2, 3], "x": 3.5, "y": 2},
- {"matrix": [2, 4], "x": 4.5, "y": 2},
- {"matrix": [2, 5], "x": 5.5, "y": 2},
- {"matrix": [2, 6], "x": 6.5, "y": 2},
- {"matrix": [2, 7], "x": 7.5, "y": 2},
- {"matrix": [2, 8], "x": 8.5, "y": 2},
- {"matrix": [2, 9], "x": 9.5, "y": 2},
- {"matrix": [2, 10], "x": 10.5, "y": 2},
- {"matrix": [2, 11], "x": 11.5, "y": 2},
- {"matrix": [2, 12], "x": 12.5, "y": 2},
- {"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
- {"matrix": [2, 14], "x": 15.25, "y": 2},
-
- {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
- {"matrix": [3, 1], "x": 1.75, "y": 3},
- {"matrix": [3, 2], "x": 2.75, "y": 3},
- {"matrix": [3, 3], "x": 3.75, "y": 3},
- {"matrix": [3, 4], "x": 4.75, "y": 3},
- {"matrix": [3, 5], "x": 5.75, "y": 3},
- {"matrix": [3, 6], "x": 6.75, "y": 3},
- {"matrix": [3, 7], "x": 7.75, "y": 3},
- {"matrix": [3, 8], "x": 8.75, "y": 3},
- {"matrix": [3, 9], "x": 9.75, "y": 3},
- {"matrix": [3, 10], "x": 10.75, "y": 3},
- {"matrix": [3, 11], "x": 11.75, "y": 3},
- {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25},
- {"matrix": [3, 14], "x": 15.25, "y": 3},
-
- {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25},
- {"matrix": [4, 2], "x": 2.25, "y": 4},
- {"matrix": [4, 3], "x": 3.25, "y": 4},
- {"matrix": [4, 4], "x": 4.25, "y": 4},
- {"matrix": [4, 5], "x": 5.25, "y": 4},
- {"matrix": [4, 6], "x": 6.25, "y": 4},
- {"matrix": [4, 7], "x": 7.25, "y": 4},
- {"matrix": [4, 8], "x": 8.25, "y": 4},
- {"matrix": [4, 9], "x": 9.25, "y": 4},
- {"matrix": [4, 10], "x": 10.25, "y": 4},
- {"matrix": [4, 11], "x": 11.25, "y": 4},
- {"matrix": [4, 13], "x": 12.25, "y": 4, "w": 1.75},
- {"matrix": [3, 12], "x": 14.25, "y": 4.25},
-
- {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
- {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
- {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
- {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25},
- {"matrix": [5, 10], "x": 10, "y": 5},
- {"matrix": [5, 11], "x": 11, "y": 5},
- {"matrix": [5, 12], "x": 12, "y": 5},
- {"matrix": [5, 13], "x": 13.25, "y": 5.25},
- {"matrix": [4, 12], "x": 14.25, "y": 5.25},
- {"matrix": [5, 14], "x": 15.25, "y": 5.25}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q1/ansi_encoder/rules.mk b/keyboards/keychron/q1/ansi_encoder/rules.mk
deleted file mode 100644
index d60167579e..0000000000
--- a/keyboards/keychron/q1/ansi_encoder/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/keychron/q1/config.h b/keyboards/keychron/q1/config.h
deleted file mode 100644
index c78453dc5f..0000000000
--- a/keyboards/keychron/q1/config.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright 2021 @ Keychron(https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1011111
-
-/* DIP switch */
-#define DIP_SWITCH_MATRIX_GRID { {0,1} }
-
-/* Disable DIP switch in matrix data */
-#define MATRIX_MASKED
-
-/* Disable RGB lighting when PC is in suspend */
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-// #define ENABLE_RGB_MATRIX_ALPHAS_MODS
-// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_BREATHING
-// #define ENABLE_RGB_MATRIX_BAND_SAT
-// #define ENABLE_RGB_MATRIX_BAND_VAL
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_ALL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#define ENABLE_RGB_MATRIX_DUAL_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-// #define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-// #define ENABLE_RGB_MATRIX_HUE_BREATHING
-// #define ENABLE_RGB_MATRIX_HUE_PENDULUM
-// #define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-// #define ENABLE_RGB_MATRIX_PIXEL_FLOW
-// #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-#define ENABLE_RGB_MATRIX_SPLASH
-// #define ENABLE_RGB_MATRIX_MULTISPLASH
-#define ENABLE_RGB_MATRIX_SOLID_SPLASH
-#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
diff --git a/keyboards/keychron/q1/iso/config.h b/keyboards/keychron/q1/iso/config.h
deleted file mode 100644
index cb7b05560a..0000000000
--- a/keyboards/keychron/q1/iso/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 59
-#define DRIVER_2_LED_TOTAL 24
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) \ No newline at end of file
diff --git a/keyboards/keychron/q1/iso/info.json b/keyboards/keychron/q1/iso/info.json
deleted file mode 100644
index 424ed021e1..0000000000
--- a/keyboards/keychron/q1/iso/info.json
+++ /dev/null
@@ -1,116 +0,0 @@
-{
- "keyboard_name": "Q1",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0102",
- "device_version": "1.0.0",
- "force_nkro": true
- },
- "rgb_matrix": {
- "driver": "is31fl3733"
- },
- "matrix_pins": {
- "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
- "rows": ["D3", "D2", "B3", "B2", "B1", "B0"]
- },
- "diode_direction": "ROW2COL",
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "layouts": {
- "LAYOUT_iso_83": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 2], "x": 1.25, "y": 0},
- {"matrix": [0, 3], "x": 2.25, "y": 0},
- {"matrix": [0, 4], "x": 3.25, "y": 0},
- {"matrix": [0, 5], "x": 4.25, "y": 0},
- {"matrix": [0, 6], "x": 5.5, "y": 0},
- {"matrix": [0, 7], "x": 6.5, "y": 0},
- {"matrix": [0, 8], "x": 7.5, "y": 0},
- {"matrix": [0, 9], "x": 8.5, "y": 0},
- {"matrix": [0, 10], "x": 9.75, "y": 0},
- {"matrix": [0, 11], "x": 10.75, "y": 0},
- {"matrix": [0, 12], "x": 11.75, "y": 0},
- {"matrix": [0, 13], "x": 12.75, "y": 0},
- {"matrix": [4, 14], "x": 14, "y": 0},
- {"matrix": [0, 14], "x": 15.25, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1.25},
- {"matrix": [1, 1], "x": 1, "y": 1.25},
- {"matrix": [1, 2], "x": 2, "y": 1.25},
- {"matrix": [1, 3], "x": 3, "y": 1.25},
- {"matrix": [1, 4], "x": 4, "y": 1.25},
- {"matrix": [1, 5], "x": 5, "y": 1.25},
- {"matrix": [1, 6], "x": 6, "y": 1.25},
- {"matrix": [1, 7], "x": 7, "y": 1.25},
- {"matrix": [1, 8], "x": 8, "y": 1.25},
- {"matrix": [1, 9], "x": 9, "y": 1.25},
- {"matrix": [1, 10], "x": 10, "y": 1.25},
- {"matrix": [1, 11], "x": 11, "y": 1.25},
- {"matrix": [1, 12], "x": 12, "y": 1.25},
- {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
- {"matrix": [1, 14], "x": 15.25, "y": 1.25},
-
- {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
- {"matrix": [2, 1], "x": 1.5, "y": 2.25},
- {"matrix": [2, 2], "x": 2.5, "y": 2.25},
- {"matrix": [2, 3], "x": 3.5, "y": 2.25},
- {"matrix": [2, 4], "x": 4.5, "y": 2.25},
- {"matrix": [2, 5], "x": 5.5, "y": 2.25},
- {"matrix": [2, 6], "x": 6.5, "y": 2.25},
- {"matrix": [2, 7], "x": 7.5, "y": 2.25},
- {"matrix": [2, 8], "x": 8.5, "y": 2.25},
- {"matrix": [2, 9], "x": 9.5, "y": 2.25},
- {"matrix": [2, 10], "x": 10.5, "y": 2.25},
- {"matrix": [2, 11], "x": 11.5, "y": 2.25},
- {"matrix": [2, 12], "x": 12.5, "y": 2.25},
- {"matrix": [2, 14], "x": 15.25, "y": 2.25},
-
- {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
- {"matrix": [3, 1], "x": 1.75, "y": 3.25},
- {"matrix": [3, 2], "x": 2.75, "y": 3.25},
- {"matrix": [3, 3], "x": 3.75, "y": 3.25},
- {"matrix": [3, 4], "x": 4.75, "y": 3.25},
- {"matrix": [3, 5], "x": 5.75, "y": 3.25},
- {"matrix": [3, 6], "x": 6.75, "y": 3.25},
- {"matrix": [3, 7], "x": 7.75, "y": 3.25},
- {"matrix": [3, 8], "x": 8.75, "y": 3.25},
- {"matrix": [3, 9], "x": 9.75, "y": 3.25},
- {"matrix": [3, 10], "x": 10.75, "y": 3.25},
- {"matrix": [3, 11], "x": 11.75, "y": 3.25},
- {"matrix": [3, 13], "x": 12.75, "y": 3.25},
- {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
- {"matrix": [3, 14], "x": 15.25, "y": 3.25},
-
- {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
- {"matrix": [4, 1], "x": 1.25, "y": 4.25},
- {"matrix": [4, 2], "x": 2.25, "y": 4.25},
- {"matrix": [4, 3], "x": 3.25, "y": 4.25},
- {"matrix": [4, 4], "x": 4.25, "y": 4.25},
- {"matrix": [4, 5], "x": 5.25, "y": 4.25},
- {"matrix": [4, 6], "x": 6.25, "y": 4.25},
- {"matrix": [4, 7], "x": 7.25, "y": 4.25},
- {"matrix": [4, 8], "x": 8.25, "y": 4.25},
- {"matrix": [4, 9], "x": 9.25, "y": 4.25},
- {"matrix": [4, 10], "x": 10.25, "y": 4.25},
- {"matrix": [4, 11], "x": 11.25, "y": 4.25},
- {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 1.75},
- {"matrix": [3, 12], "x": 14.25, "y": 4.5},
-
- {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
- {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25},
- {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
- {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25},
- {"matrix": [5, 10], "x": 10, "y": 5.25},
- {"matrix": [5, 11], "x": 11, "y": 5.25},
- {"matrix": [5, 12], "x": 12, "y": 5.25},
- {"matrix": [5, 13], "x": 13.25, "y": 5.5},
- {"matrix": [4, 12], "x": 14.25, "y": 5.5},
- {"matrix": [5, 14], "x": 15.25, "y": 5.5}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q1/iso/iso.c b/keyboards/keychron/q1/iso/iso.c
deleted file mode 100644
index 619d89dffc..0000000000
--- a/keyboards/keychron/q1/iso/iso.c
+++ /dev/null
@@ -1,149 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C_1, A_1, B_1},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
- {0, C_11, A_11, B_11},
- {0, C_12, A_12, B_12},
- {0, C_13, A_13, B_13},
- {0, C_14, A_14, B_14},
- {0, C_15, A_15, B_15},
- {0, C_16, A_16, B_16},
-
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_8, D_8, E_8},
- {0, F_9, D_9, E_9},
- {0, F_10, D_10, E_10},
- {0, F_11, D_11, E_11},
- {0, F_12, D_12, E_12},
- {0, F_13, D_13, E_13},
- {0, F_14, D_14, E_14},
- {0, F_16, D_16, E_16},
-
- {0, I_1, G_1, H_1},
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {0, I_4, G_4, H_4},
- {0, I_5, G_5, H_5},
- {0, I_6, G_6, H_6},
- {0, I_7, G_7, H_7},
- {0, I_8, G_8, H_8},
- {0, I_9, G_9, H_9},
- {0, I_10, G_10, H_10},
- {0, I_11, G_11, H_11},
- {0, I_12, G_12, H_12},
- {0, I_13, G_13, H_13},
- {0, I_16, G_16, H_16},
-
- {0, L_1, J_1, K_1},
- {0, L_2, J_2, K_2},
- {0, L_3, J_3, K_3},
- {0, L_4, J_4, K_4},
- {0, L_5, J_5, K_5},
- {0, L_6, J_6, K_6},
- {0, L_7, J_7, K_7},
- {0, L_8, J_8, K_8},
- {0, L_9, J_9, K_9},
- {0, L_10, J_10, K_10},
- {0, L_11, J_11, K_11},
- {0, L_12, J_12, K_12},
- {0, L_14, J_14, K_14},
- {0, I_14, G_14, H_14},
- {0, L_16, J_16, K_16},
-
- {1, C_1, A_1, B_1},
- {1, C_2, A_2, B_2},
- {1, C_3, A_3, B_3},
- {1, C_4, A_4, B_4},
- {1, C_5, A_5, B_5},
- {1, C_6, A_6, B_6},
- {1, C_7, A_7, B_7},
- {1, C_8, A_8, B_8},
- {1, C_9, A_9, B_9},
- {1, C_10, A_10, B_10},
- {1, C_11, A_11, B_11},
- {1, C_12, A_12, B_12},
- {1, C_14, A_14, B_14},
- {1, C_15, A_15, B_15},
-
- {1, F_1, D_1, E_1},
- {1, F_2, D_2, E_2},
- {1, F_3, D_3, E_3},
- {1, F_7, D_7, E_7},
- {1, F_11, D_11, E_11},
- {1, F_12, D_12, E_12},
- {1, F_13, D_13, E_13},
- {1, F_14, D_14, E_14},
- {1, F_15, D_15, E_15},
- {1, F_16, D_16, E_16}
-};
-
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, __, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 57, 43 },
- { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 72, 56, 58 },
- { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 81, 71, 13 },
- { 73, 74, 75, __, __, __, 76, __, __, __, 77, 78, 79, 80, 82 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {18,0}, {33,0}, {48,0}, {62,0}, {81,0}, {95,0}, {110,0}, {125,0}, {143,0}, {158,0}, {173,0}, {187,0}, {206,0}, {224,0},
- {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {118,15}, {132,15}, {147,15}, {162,15}, {176,15}, {198,15}, {224,15},
- {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {140,26}, {154,26}, {169,26}, {184,26}, {224,26},
- {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {129,38}, {143,38}, {158,38}, {173,38}, {187,38}, {203,32}, {224,38},
- {2,49}, {18,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {151,49}, {165,49}, {185,49}, {209,52},
- {2,61}, {20,61}, {39,61}, {94,61}, {147,61}, {162,61}, {176,61}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1/iso/rules.mk b/keyboards/keychron/q1/iso/rules.mk
deleted file mode 100644
index 0379fdb94c..0000000000
--- a/keyboards/keychron/q1/iso/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/keychron/q1/iso_encoder/config.h b/keyboards/keychron/q1/iso_encoder/config.h
deleted file mode 100644
index c1e84e44d3..0000000000
--- a/keyboards/keychron/q1/iso_encoder/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* DIP switch */
-#define DIP_SWITCH_MATRIX_GRID { {0,1} }
-
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1011111
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 59
-#define DRIVER_2_LED_TOTAL 24
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-
-/* Enable caps-lock LED */
-#define CAPS_LOCK_LED_INDEX 44
diff --git a/keyboards/keychron/q1/iso_encoder/info.json b/keyboards/keychron/q1/iso_encoder/info.json
deleted file mode 100644
index 250cd1ffb4..0000000000
--- a/keyboards/keychron/q1/iso_encoder/info.json
+++ /dev/null
@@ -1,121 +0,0 @@
-{
- "keyboard_name": "Keychron Q1",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0103",
- "device_version": "1.0.2",
- "force_nkro": true
- },
- "rgb_matrix": {
- "driver": "is31fl3733"
- },
- "matrix_pins": {
- "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
- "rows": ["D3", "D2", "B3", "B2", "B1", "B0"]
- },
- "diode_direction": "ROW2COL",
- "encoder": {
- "rotary": [
- {"pin_a": "E6", "pin_b": "B7"}
- ]
- },
- "processor": "atmega32u4",
- "bootloader": "atmel-dfu",
- "layouts": {
- "LAYOUT_iso_83": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 2], "x": 1.25, "y": 0},
- {"matrix": [0, 3], "x": 2.25, "y": 0},
- {"matrix": [0, 4], "x": 3.25, "y": 0},
- {"matrix": [0, 5], "x": 4.25, "y": 0},
- {"matrix": [0, 6], "x": 5.5, "y": 0},
- {"matrix": [0, 7], "x": 6.5, "y": 0},
- {"matrix": [0, 8], "x": 7.5, "y": 0},
- {"matrix": [0, 9], "x": 8.5, "y": 0},
- {"matrix": [0, 10], "x": 9.75, "y": 0},
- {"matrix": [0, 11], "x": 10.75, "y": 0},
- {"matrix": [0, 12], "x": 11.75, "y": 0},
- {"matrix": [0, 13], "x": 12.75, "y": 0},
- {"matrix": [4, 14], "x": 14, "y": 0},
- {"matrix": [0, 14], "x": 15.25, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1.25},
- {"matrix": [1, 1], "x": 1, "y": 1.25},
- {"matrix": [1, 2], "x": 2, "y": 1.25},
- {"matrix": [1, 3], "x": 3, "y": 1.25},
- {"matrix": [1, 4], "x": 4, "y": 1.25},
- {"matrix": [1, 5], "x": 5, "y": 1.25},
- {"matrix": [1, 6], "x": 6, "y": 1.25},
- {"matrix": [1, 7], "x": 7, "y": 1.25},
- {"matrix": [1, 8], "x": 8, "y": 1.25},
- {"matrix": [1, 9], "x": 9, "y": 1.25},
- {"matrix": [1, 10], "x": 10, "y": 1.25},
- {"matrix": [1, 11], "x": 11, "y": 1.25},
- {"matrix": [1, 12], "x": 12, "y": 1.25},
- {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
- {"matrix": [1, 14], "x": 15.25, "y": 1.25},
-
- {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
- {"matrix": [2, 1], "x": 1.5, "y": 2.25},
- {"matrix": [2, 2], "x": 2.5, "y": 2.25},
- {"matrix": [2, 3], "x": 3.5, "y": 2.25},
- {"matrix": [2, 4], "x": 4.5, "y": 2.25},
- {"matrix": [2, 5], "x": 5.5, "y": 2.25},
- {"matrix": [2, 6], "x": 6.5, "y": 2.25},
- {"matrix": [2, 7], "x": 7.5, "y": 2.25},
- {"matrix": [2, 8], "x": 8.5, "y": 2.25},
- {"matrix": [2, 9], "x": 9.5, "y": 2.25},
- {"matrix": [2, 10], "x": 10.5, "y": 2.25},
- {"matrix": [2, 11], "x": 11.5, "y": 2.25},
- {"matrix": [2, 12], "x": 12.5, "y": 2.25},
- {"matrix": [2, 14], "x": 15.25, "y": 2.25},
-
- {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
- {"matrix": [3, 1], "x": 1.75, "y": 3.25},
- {"matrix": [3, 2], "x": 2.75, "y": 3.25},
- {"matrix": [3, 3], "x": 3.75, "y": 3.25},
- {"matrix": [3, 4], "x": 4.75, "y": 3.25},
- {"matrix": [3, 5], "x": 5.75, "y": 3.25},
- {"matrix": [3, 6], "x": 6.75, "y": 3.25},
- {"matrix": [3, 7], "x": 7.75, "y": 3.25},
- {"matrix": [3, 8], "x": 8.75, "y": 3.25},
- {"matrix": [3, 9], "x": 9.75, "y": 3.25},
- {"matrix": [3, 10], "x": 10.75, "y": 3.25},
- {"matrix": [3, 11], "x": 11.75, "y": 3.25},
- {"matrix": [3, 13], "x": 12.75, "y": 3.25},
- {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
- {"matrix": [3, 14], "x": 15.25, "y": 3.25},
-
- {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
- {"matrix": [4, 1], "x": 1.25, "y": 4.25},
- {"matrix": [4, 2], "x": 2.25, "y": 4.25},
- {"matrix": [4, 3], "x": 3.25, "y": 4.25},
- {"matrix": [4, 4], "x": 4.25, "y": 4.25},
- {"matrix": [4, 5], "x": 5.25, "y": 4.25},
- {"matrix": [4, 6], "x": 6.25, "y": 4.25},
- {"matrix": [4, 7], "x": 7.25, "y": 4.25},
- {"matrix": [4, 8], "x": 8.25, "y": 4.25},
- {"matrix": [4, 9], "x": 9.25, "y": 4.25},
- {"matrix": [4, 10], "x": 10.25, "y": 4.25},
- {"matrix": [4, 11], "x": 11.25, "y": 4.25},
- {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 1.75},
- {"matrix": [3, 12], "x": 14.25, "y": 4.5},
-
- {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
- {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25},
- {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
- {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25},
- {"matrix": [5, 10], "x": 10, "y": 5.25},
- {"matrix": [5, 11], "x": 11, "y": 5.25},
- {"matrix": [5, 12], "x": 12, "y": 5.25},
- {"matrix": [5, 13], "x": 13.25, "y": 5.5},
- {"matrix": [4, 12], "x": 14.25, "y": 5.5},
- {"matrix": [5, 14], "x": 15.25, "y": 5.5}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q1/iso_encoder/iso_encoder.c b/keyboards/keychron/q1/iso_encoder/iso_encoder.c
deleted file mode 100644
index c6b091fff1..0000000000
--- a/keyboards/keychron/q1/iso_encoder/iso_encoder.c
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C_1, A_1, B_1},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
- {0, C_11, A_11, B_11},
- {0, C_12, A_12, B_12},
- {0, C_13, A_13, B_13},
- {0, C_14, A_14, B_14},
- {0, C_15, A_15, B_15},
- {0, C_16, A_16, B_16},
-
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_8, D_8, E_8},
- {0, F_9, D_9, E_9},
- {0, F_10, D_10, E_10},
- {0, F_11, D_11, E_11},
- {0, F_12, D_12, E_12},
- {0, F_13, D_13, E_13},
- {0, F_14, D_14, E_14},
- {0, F_16, D_16, E_16},
-
- {0, I_1, G_1, H_1},
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {0, I_4, G_4, H_4},
- {0, I_5, G_5, H_5},
- {0, I_6, G_6, H_6},
- {0, I_7, G_7, H_7},
- {0, I_8, G_8, H_8},
- {0, I_9, G_9, H_9},
- {0, I_10, G_10, H_10},
- {0, I_11, G_11, H_11},
- {0, I_12, G_12, H_12},
- {0, I_13, G_13, H_13},
- {0, I_16, G_16, H_16},
-
- {0, L_1, J_1, K_1},
- {0, L_2, J_2, K_2},
- {0, L_3, J_3, K_3},
- {0, L_4, J_4, K_4},
- {0, L_5, J_5, K_5},
- {0, L_6, J_6, K_6},
- {0, L_7, J_7, K_7},
- {0, L_8, J_8, K_8},
- {0, L_9, J_9, K_9},
- {0, L_10, J_10, K_10},
- {0, L_11, J_11, K_11},
- {0, L_12, J_12, K_12},
- {0, L_14, J_14, K_14},
- {0, I_14, G_14, H_14},
- {0, L_16, J_16, K_16},
-
- {1, C_1, A_1, B_1},
- {1, C_2, A_2, B_2},
- {1, C_3, A_3, B_3},
- {1, C_4, A_4, B_4},
- {1, C_5, A_5, B_5},
- {1, C_6, A_6, B_6},
- {1, C_7, A_7, B_7},
- {1, C_8, A_8, B_8},
- {1, C_9, A_9, B_9},
- {1, C_10, A_10, B_10},
- {1, C_11, A_11, B_11},
- {1, C_12, A_12, B_12},
- {1, C_14, A_14, B_14},
- {1, C_15, A_15, B_15},
-
- {1, F_1, D_1, E_1},
- {1, F_2, D_2, E_2},
- {1, F_3, D_3, E_3},
- {1, F_7, D_7, E_7},
- {1, F_11, D_11, E_11},
- {1, F_12, D_12, E_12},
- {1, F_13, D_13, E_13},
- {1, F_14, D_14, E_14},
- {1, F_15, D_15, E_15},
- {1, F_16, D_16, E_16}
-};
-
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, __, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 57, 43 },
- { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 72, 56, 58 },
- { 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 81, 71, 13 },
- { 73, 74, 75, __, __, __, 76, __, __, __, 77, 78, 79, 80, 82 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {18,0}, {33,0}, {48,0}, {62,0}, {81,0}, {95,0}, {110,0}, {125,0}, {143,0}, {158,0}, {173,0}, {187,0}, {206,0}, {224,0},
- {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {118,15}, {132,15}, {147,15}, {162,15}, {176,15}, {198,15}, {224,15},
- {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {140,26}, {154,26}, {169,26}, {184,26}, {224,26},
- {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {129,38}, {143,38}, {158,38}, {173,38}, {187,38}, {203,32}, {224,38},
- {2,49}, {18,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {151,49}, {165,49}, {185,49}, {209,52},
- {2,61}, {20,61}, {39,61}, {94,61}, {147,61}, {162,61}, {176,61}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
-#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1/iso_encoder/rules.mk b/keyboards/keychron/q1/iso_encoder/rules.mk
deleted file mode 100644
index d994ac1fad..0000000000
--- a/keyboards/keychron/q1/iso_encoder/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-RAW_ENABLE = yes
-LTO_ENABLE = yes
-
diff --git a/keyboards/keychron/q1/q1.c b/keyboards/keychron/q1/q1.c
deleted file mode 100644
index 3df62c4339..0000000000
--- a/keyboards/keychron/q1/q1.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-const matrix_row_t matrix_mask[] = {
- 0b0111111111111101,
- 0b0111111111111111,
- 0b0111111111111111,
- 0b0111111111111111,
- 0b0111111111111111,
- 0b0111111111111111,
-};
-
-#ifdef DIP_SWITCH_ENABLE
-
-bool dip_switch_update_kb(uint8_t index, bool active) {
- if (!dip_switch_update_user(index, active)) { return false;}
- if (index == 0) {
- default_layer_set(1UL << (active ? 2 : 0));
- }
- return true;
-}
-
-#endif // DIP_SWITCH_ENABLE
diff --git a/keyboards/keychron/q1/readme.md b/keyboards/keychron/q1/readme.md
deleted file mode 100644
index 94b7a21f5b..0000000000
--- a/keyboards/keychron/q1/readme.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# Keychron Q1
-
-![Keychron Q1](https://cdn.shopify.com/s/files/1/0059/0630/1017/t/5/assets/pf-823ebdc7--1073.jpg)
-
-A customizable 75% keyboard.
-
-* Keyboard Maintainer: [Keychron](https://github.com/keychron)
-* Hardware Supported: Keychron Q1
-* Hardware Availability: [Keychron](https://www.keychron.com)
-
-Make example for this keyboard (after setting up your build environment):
-
- make keychron/q1/ansi:default
-
-Flashing example for this keyboard:
-
- make keychron/q1/ansi:default:flash
-
-**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard.
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/keychron/q10/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q10/ansi_encoder/ansi_encoder.c
index c5abcb4f6e..a9df1609e0 100644
--- a/keyboards/keychron/q10/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q10/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q10/ansi_encoder/info.json b/keyboards/keychron/q10/ansi_encoder/info.json
index 8a8a624154..da2cb106e3 100644
--- a/keyboards/keychron/q10/ansi_encoder/info.json
+++ b/keyboards/keychron/q10/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q10/ansi_encoder/rules.mk b/keyboards/keychron/q10/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/q10/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q10/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q10/config.h b/keyboards/keychron/q10/config.h
index 0ef4edf245..eb3a56e9ad 100644
--- a/keyboards/keychron/q10/config.h
+++ b/keyboards/keychron/q10/config.h
@@ -30,9 +30,8 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -41,9 +40,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE \
{ 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A }
/* DIP switch */
diff --git a/keyboards/keychron/q10/iso_encoder/info.json b/keyboards/keychron/q10/iso_encoder/info.json
index d7e1bf2885..08e6b2deae 100644
--- a/keyboards/keychron/q10/iso_encoder/info.json
+++ b/keyboards/keychron/q10/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q10/iso_encoder/iso_encoder.c b/keyboards/keychron/q10/iso_encoder/iso_encoder.c
index 1e8f80ddd8..fbe4bca637 100644
--- a/keyboards/keychron/q10/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q10/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q10/iso_encoder/rules.mk b/keyboards/keychron/q10/iso_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/q10/iso_encoder/rules.mk
+++ b/keyboards/keychron/q10/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q11/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q11/ansi_encoder/ansi_encoder.c
index 0585ae9c96..f7acae7add 100755
--- a/keyboards/keychron/q11/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q11/ansi_encoder/ansi_encoder.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q11/ansi_encoder/rules.mk b/keyboards/keychron/q11/ansi_encoder/rules.mk
index 60d5c6bea2..c6e2988321 100644
--- a/keyboards/keychron/q11/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q11/ansi_encoder/rules.mk
@@ -1,6 +1 @@
-# Build Options
-# change yes to no to disable
-#
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
SERIAL_DRIVER = usart
diff --git a/keyboards/keychron/q11/config.h b/keyboards/keychron/q11/config.h
index d2c7ad4a96..0d6b9c9c48 100755
--- a/keyboards/keychron/q11/config.h
+++ b/keyboards/keychron/q11/config.h
@@ -27,8 +27,7 @@
#define MATRIX_MASKED // actual mask is defined by `matrix_mask` in `q11.c`
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -37,7 +36,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x80, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0x80, 0xFF, 0xFF } // 300mA
/* EEPROM Driver Configuration */
diff --git a/keyboards/keychron/q11/info.json b/keyboards/keychron/q11/info.json
index cd2864979d..f240c70801 100755
--- a/keyboards/keychron/q11/info.json
+++ b/keyboards/keychron/q11/info.json
@@ -44,7 +44,9 @@
},
"transport": {
"protocol": "serial_usart",
- "sync_matrix_state": true
+ "sync" :{
+ "matrix_state": true
+ }
},
"bootmagic": {
"matrix": [6, 7]
@@ -59,7 +61,7 @@
]
},
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"breathing": true,
"band_spiral_val": true,
diff --git a/keyboards/keychron/q11/iso_encoder/iso_encoder.c b/keyboards/keychron/q11/iso_encoder/iso_encoder.c
index 08858d9b79..a2db569710 100755
--- a/keyboards/keychron/q11/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q11/iso_encoder/iso_encoder.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q12/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q12/ansi_encoder/ansi_encoder.c
index 2cfaeae8fc..350da52661 100644
--- a/keyboards/keychron/q12/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q12/ansi_encoder/ansi_encoder.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q12/ansi_encoder/info.json b/keyboards/keychron/q12/ansi_encoder/info.json
index 97c1334ffd..291fd1774c 100644
--- a/keyboards/keychron/q12/ansi_encoder/info.json
+++ b/keyboards/keychron/q12/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q12/ansi_encoder/rules.mk b/keyboards/keychron/q12/ansi_encoder/rules.mk
index 80a3f300bd..213c733c9c 100644
--- a/keyboards/keychron/q12/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q12/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q12/config.h b/keyboards/keychron/q12/config.h
index 95281b4854..cc24578c16 100644
--- a/keyboards/keychron/q12/config.h
+++ b/keyboards/keychron/q12/config.h
@@ -26,9 +26,8 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -37,7 +36,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xAD, 0xAD, 0x55, 0xAD, 0xAD, 0x55, 0xAD, 0xAD, 0x55, 0xAD, 0xAD, 0x55 }
/* DIP switch */
diff --git a/keyboards/keychron/q12/iso_encoder/info.json b/keyboards/keychron/q12/iso_encoder/info.json
index cd848c86b6..edd0d0ea43 100644
--- a/keyboards/keychron/q12/iso_encoder/info.json
+++ b/keyboards/keychron/q12/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q12/iso_encoder/iso_encoder.c b/keyboards/keychron/q12/iso_encoder/iso_encoder.c
index 8090649d33..37d9db10b4 100644
--- a/keyboards/keychron/q12/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q12/iso_encoder/iso_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q12/iso_encoder/rules.mk b/keyboards/keychron/q12/iso_encoder/rules.mk
index 9867724957..39b0594039 100644
--- a/keyboards/keychron/q12/iso_encoder/rules.mk
+++ b/keyboards/keychron/q12/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q1v1/ansi/ansi.c b/keyboards/keychron/q1v1/ansi/ansi.c
new file mode 100644
index 0000000000..5f74267bf4
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi/ansi.c
@@ -0,0 +1,126 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+const matrix_row_t matrix_mask[] = {
+ 0b0111111111111101,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+};
+
+#ifdef RGB_MATRIX_ENABLE
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C_1, A_1, B_1},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+ {0, C_11, A_11, B_11},
+ {0, C_12, A_12, B_12},
+ {0, C_13, A_13, B_13},
+ {0, C_14, A_14, B_14},
+ {0, C_15, A_15, B_15},
+ {0, C_16, A_16, B_16},
+
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_8, D_8, E_8},
+ {0, F_9, D_9, E_9},
+ {0, F_10, D_10, E_10},
+ {0, F_11, D_11, E_11},
+ {0, F_12, D_12, E_12},
+ {0, F_13, D_13, E_13},
+ {0, F_14, D_14, E_14},
+ {0, F_16, D_16, E_16},
+
+ {0, I_1, G_1, H_1},
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {0, I_4, G_4, H_4},
+ {0, I_5, G_5, H_5},
+ {0, I_6, G_6, H_6},
+ {0, I_7, G_7, H_7},
+ {0, I_8, G_8, H_8},
+ {0, I_9, G_9, H_9},
+ {0, I_10, G_10, H_10},
+ {0, I_11, G_11, H_11},
+ {0, I_12, G_12, H_12},
+ {0, I_13, G_13, H_13},
+ {0, I_14, G_14, H_14},
+ {0, I_16, G_16, H_16},
+
+ {0, L_1, J_1, K_1},
+ {0, L_2, J_2, K_2},
+ {0, L_3, J_3, K_3},
+ {0, L_4, J_4, K_4},
+ {0, L_5, J_5, K_5},
+ {0, L_6, J_6, K_6},
+ {0, L_7, J_7, K_7},
+ {0, L_8, J_8, K_8},
+ {0, L_9, J_9, K_9},
+ {0, L_10, J_10, K_10},
+ {0, L_11, J_11, K_11},
+ {0, L_12, J_12, K_12},
+ {0, L_14, J_14, K_14},
+ {0, L_16, J_16, K_16},
+
+ {1, C_1, A_1, B_1},
+ {1, C_3, A_3, B_3},
+ {1, C_4, A_4, B_4},
+ {1, C_5, A_5, B_5},
+ {1, C_6, A_6, B_6},
+ {1, C_7, A_7, B_7},
+ {1, C_8, A_8, B_8},
+ {1, C_9, A_9, B_9},
+ {1, C_10, A_10, B_10},
+ {1, C_11, A_11, B_11},
+ {1, C_12, A_12, B_12},
+ {1, C_14, A_14, B_14},
+ {1, C_15, A_15, B_15},
+
+ {1, F_1, D_1, E_1},
+ {1, F_2, D_2, E_2},
+ {1, F_3, D_3, E_3},
+ {1, F_7, D_7, E_7},
+ {1, F_11, D_11, E_11},
+ {1, F_12, D_12, E_12},
+ {1, F_13, D_13, E_13},
+ {1, F_14, D_14, E_14},
+ {1, F_15, D_15, E_15},
+ {1, F_16, D_16, E_16}
+
+};
+
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1v1/ansi/config.h b/keyboards/keychron/q1v1/ansi/config.h
new file mode 100644
index 0000000000..5eaa1e82f1
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi/config.h
@@ -0,0 +1,23 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 82
+
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 45 \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/ansi/info.json b/keyboards/keychron/q1v1/ansi/info.json
new file mode 100644
index 0000000000..028967d608
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi/info.json
@@ -0,0 +1,190 @@
+{
+ "usb": {
+ "pid": "0x0100",
+ "device_version": "1.0.0"
+ },
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 18, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 33, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 48, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 62, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 81, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 95, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 125, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 158, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 173, "y": 0, "flags": 1},
+ {"matrix": [0, 13], "x": 187, "y": 0, "flags": 1},
+ {"matrix": [4, 14], "x": 206, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 15, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 29, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 44, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 59, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 73, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 88, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 103, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 118, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 132, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 147, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 162, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 176, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 4, "y": 26, "flags": 1},
+ {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 51, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 66, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 81, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 95, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 110, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 125, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 140, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 154, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 169, "y": 26, "flags": 4},
+ {"matrix": [2, 12], "x": 184, "y": 26, "flags": 4},
+ {"matrix": [2, 13], "x": 202, "y": 26, "flags": 4},
+ {"matrix": [2, 14], "x": 224, "y": 26, "flags": 1},
+
+ {"matrix": [3, 0], "x": 6, "y": 38, "flags": 1},
+ {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4},
+ {"matrix": [3, 2], "x": 40, "y": 38, "flags": 4},
+ {"matrix": [3, 3], "x": 55, "y": 38, "flags": 4},
+ {"matrix": [3, 4], "x": 70, "y": 38, "flags": 4},
+ {"matrix": [3, 5], "x": 84, "y": 38, "flags": 4},
+ {"matrix": [3, 6], "x": 99, "y": 38, "flags": 4},
+ {"matrix": [3, 7], "x": 114, "y": 38, "flags": 4},
+ {"matrix": [3, 8], "x": 129, "y": 38, "flags": 4},
+ {"matrix": [3, 9], "x": 143, "y": 38, "flags": 4},
+ {"matrix": [3, 10], "x": 158, "y": 38, "flags": 4},
+ {"matrix": [3, 11], "x": 173, "y": 38, "flags": 4},
+ {"matrix": [3, 13], "x": 196, "y": 38, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 38, "flags": 1},
+
+ {"matrix": [4, 0], "x": 9, "y": 49, "flags": 1},
+ {"matrix": [4, 2], "x": 33, "y": 49, "flags": 4},
+ {"matrix": [4, 3], "x": 48, "y": 49, "flags": 4},
+ {"matrix": [4, 4], "x": 62, "y": 49, "flags": 4},
+ {"matrix": [4, 5], "x": 77, "y": 49, "flags": 4},
+ {"matrix": [4, 6], "x": 92, "y": 49, "flags": 4},
+ {"matrix": [4, 7], "x": 106, "y": 49, "flags": 4},
+ {"matrix": [4, 8], "x": 121, "y": 49, "flags": 4},
+ {"matrix": [4, 9], "x": 136, "y": 49, "flags": 4},
+ {"matrix": [4, 10], "x": 151, "y": 49, "flags": 4},
+ {"matrix": [4, 11], "x": 165, "y": 49, "flags": 4},
+ {"matrix": [4, 13], "x": 185, "y": 49, "flags": 1},
+ {"matrix": [3, 12], "x": 209, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x":2, "y": 61, "flags": 1},
+ {"matrix": [5, 1], "x":20, "y": 61, "flags": 1},
+ {"matrix": [5, 2], "x":39, "y": 61, "flags": 1},
+ {"matrix": [5, 6], "x":94, "y": 61, "flags": 4},
+ {"matrix": [5, 10], "x":147, "y": 61, "flags": 1},
+ {"matrix": [5, 11], "x":162, "y": 61, "flags": 1},
+ {"matrix": [5, 12], "x":176, "y": 61, "flags": 1},
+ {"matrix": [5, 13], "x":195, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x":209, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x":224, "y": 64, "flags": 1}
+ ]
+ },
+ "layouts": {
+ "LAYOUT_ansi_82": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 2], "x": 1.25, "y": 0},
+ {"matrix": [0, 3], "x": 2.25, "y": 0},
+ {"matrix": [0, 4], "x": 3.25, "y": 0},
+ {"matrix": [0, 5], "x": 4.25, "y": 0},
+ {"matrix": [0, 6], "x": 5.5, "y": 0},
+ {"matrix": [0, 7], "x": 6.5, "y": 0},
+ {"matrix": [0, 8], "x": 7.5, "y": 0},
+ {"matrix": [0, 9], "x": 8.5, "y": 0},
+ {"matrix": [0, 10], "x": 9.75, "y": 0},
+ {"matrix": [0, 11], "x": 10.75, "y": 0},
+ {"matrix": [0, 12], "x": 11.75, "y": 0},
+ {"matrix": [0, 13], "x": 12.75, "y": 0},
+ {"matrix": [4, 14], "x": 14, "y": 0},
+ {"matrix": [0, 14], "x": 15.25, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1, "y": 1},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+ {"matrix": [1, 4], "x": 4, "y": 1},
+ {"matrix": [1, 5], "x": 5, "y": 1},
+ {"matrix": [1, 6], "x": 6, "y": 1},
+ {"matrix": [1, 7], "x": 7, "y": 1},
+ {"matrix": [1, 8], "x": 8, "y": 1},
+ {"matrix": [1, 9], "x": 9, "y": 1},
+ {"matrix": [1, 10], "x": 10, "y": 1},
+ {"matrix": [1, 11], "x": 11, "y": 1},
+ {"matrix": [1, 12], "x": 12, "y": 1},
+ {"matrix": [1, 13], "x": 13, "y": 1, "w": 2},
+ {"matrix": [1, 14], "x": 15.25, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 2},
+ {"matrix": [2, 2], "x": 2.5, "y": 2},
+ {"matrix": [2, 3], "x": 3.5, "y": 2},
+ {"matrix": [2, 4], "x": 4.5, "y": 2},
+ {"matrix": [2, 5], "x": 5.5, "y": 2},
+ {"matrix": [2, 6], "x": 6.5, "y": 2},
+ {"matrix": [2, 7], "x": 7.5, "y": 2},
+ {"matrix": [2, 8], "x": 8.5, "y": 2},
+ {"matrix": [2, 9], "x": 9.5, "y": 2},
+ {"matrix": [2, 10], "x": 10.5, "y": 2},
+ {"matrix": [2, 11], "x": 11.5, "y": 2},
+ {"matrix": [2, 12], "x": 12.5, "y": 2},
+ {"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
+ {"matrix": [2, 14], "x": 15.25, "y": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 3},
+ {"matrix": [3, 2], "x": 2.75, "y": 3},
+ {"matrix": [3, 3], "x": 3.75, "y": 3},
+ {"matrix": [3, 4], "x": 4.75, "y": 3},
+ {"matrix": [3, 5], "x": 5.75, "y": 3},
+ {"matrix": [3, 6], "x": 6.75, "y": 3},
+ {"matrix": [3, 7], "x": 7.75, "y": 3},
+ {"matrix": [3, 8], "x": 8.75, "y": 3},
+ {"matrix": [3, 9], "x": 9.75, "y": 3},
+ {"matrix": [3, 10], "x": 10.75, "y": 3},
+ {"matrix": [3, 11], "x": 11.75, "y": 3},
+ {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25},
+ {"matrix": [3, 14], "x": 15.25, "y": 3},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4},
+ {"matrix": [4, 3], "x": 3.25, "y": 4},
+ {"matrix": [4, 4], "x": 4.25, "y": 4},
+ {"matrix": [4, 5], "x": 5.25, "y": 4},
+ {"matrix": [4, 6], "x": 6.25, "y": 4},
+ {"matrix": [4, 7], "x": 7.25, "y": 4},
+ {"matrix": [4, 8], "x": 8.25, "y": 4},
+ {"matrix": [4, 9], "x": 9.25, "y": 4},
+ {"matrix": [4, 10], "x": 10.25, "y": 4},
+ {"matrix": [4, 11], "x": 11.25, "y": 4},
+ {"matrix": [4, 13], "x": 12.25, "y": 4, "w": 1.75},
+ {"matrix": [3, 12], "x": 14.25, "y": 4.25},
+
+ {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
+ {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
+ {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25},
+ {"matrix": [5, 10], "x": 10, "y": 5},
+ {"matrix": [5, 11], "x": 11, "y": 5},
+ {"matrix": [5, 12], "x": 12, "y": 5},
+ {"matrix": [5, 13], "x": 13.25, "y": 5.25},
+ {"matrix": [4, 12], "x": 14.25, "y": 5.25},
+ {"matrix": [5, 14], "x": 15.25, "y": 5.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q1/ansi/keymaps/default/keymap.c b/keyboards/keychron/q1v1/ansi/keymaps/default/keymap.c
index 092d446773..092d446773 100644
--- a/keyboards/keychron/q1/ansi/keymaps/default/keymap.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/README.md b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/README.md
index c2d5799bb8..c2d5799bb8 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/README.md
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/README.md
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/config.h b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/config.h
index 5ac05d04c1..5ac05d04c1 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/config.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/config.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/keymap.c b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/keymap.c
index 8da475c3c6..8da475c3c6 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/keymap.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/keymap.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/keymap_user.h b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/keymap_user.h
index 728114d556..728114d556 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/keymap_user.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/keymap_user.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/rgb_matrix_user.c b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rgb_matrix_user.c
index b7d12f9466..b7d12f9466 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/rgb_matrix_user.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rgb_matrix_user.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/rgb_matrix_user.h b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rgb_matrix_user.h
index dead454167..dead454167 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/rgb_matrix_user.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rgb_matrix_user.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/gtg465x/rules.mk b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rules.mk
index 42ba38028d..42ba38028d 100644
--- a/keyboards/keychron/q1/ansi/keymaps/gtg465x/rules.mk
+++ b/keyboards/keychron/q1v1/ansi/keymaps/gtg465x/rules.mk
diff --git a/keyboards/keychron/q1/ansi/keymaps/keychron/keymap.c b/keyboards/keychron/q1v1/ansi/keymaps/keychron/keymap.c
index e7c9fddcdc..e7c9fddcdc 100644
--- a/keyboards/keychron/q1/ansi/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/keychron/rules.mk b/keyboards/keychron/q1v1/ansi/keymaps/keychron/rules.mk
index 495e8907b4..495e8907b4 100644
--- a/keyboards/keychron/q1/ansi/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q1v1/ansi/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/config.h b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/config.h
index bc9fe405c3..bc9fe405c3 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/config.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/config.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/keymap.c b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/keymap.c
index 4fc8ad58e5..4fc8ad58e5 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/keymap.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/keymap.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/keymap_user.h b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/keymap_user.h
index 87b1baf47f..87b1baf47f 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/keymap_user.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/keymap_user.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/readme.md b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/readme.md
index 8ff2dbcc2c..8ff2dbcc2c 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/readme.md
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/readme.md
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/rgb_matrix_user.c b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rgb_matrix_user.c
index c6fa5f1f15..c6fa5f1f15 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/rgb_matrix_user.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rgb_matrix_user.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/rgb_matrix_user.h b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rgb_matrix_user.h
index 1fb79c0b2a..1fb79c0b2a 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/rgb_matrix_user.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rgb_matrix_user.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/mkillewald/rules.mk b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rules.mk
index af720e37ee..af720e37ee 100644
--- a/keyboards/keychron/q1/ansi/keymaps/mkillewald/rules.mk
+++ b/keyboards/keychron/q1v1/ansi/keymaps/mkillewald/rules.mk
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/config.h b/keyboards/keychron/q1v1/ansi/keymaps/teimor/config.h
index 4378af4f58..4378af4f58 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/config.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/config.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/keymap.c b/keyboards/keychron/q1v1/ansi/keymaps/teimor/keymap.c
index 77af30c5b6..77af30c5b6 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/keymap.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/keymap.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/keymap_user.h b/keyboards/keychron/q1v1/ansi/keymaps/teimor/keymap_user.h
index 57ac5258c2..57ac5258c2 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/keymap_user.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/keymap_user.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/readme.md b/keyboards/keychron/q1v1/ansi/keymaps/teimor/readme.md
index 9aa16f9a89..9aa16f9a89 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/readme.md
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/readme.md
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/rgb_matrix_user.c b/keyboards/keychron/q1v1/ansi/keymaps/teimor/rgb_matrix_user.c
index fbc37fb5bf..fbc37fb5bf 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/rgb_matrix_user.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/rgb_matrix_user.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/rgb_matrix_user.h b/keyboards/keychron/q1v1/ansi/keymaps/teimor/rgb_matrix_user.h
index 5b53b5b8ec..5b53b5b8ec 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/rgb_matrix_user.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/rgb_matrix_user.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/rules.mk b/keyboards/keychron/q1v1/ansi/keymaps/teimor/rules.mk
index bafb40484b..bafb40484b 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/rules.mk
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/rules.mk
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_mac_caps.c b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_mac_caps.c
index dfb0346ff1..dfb0346ff1 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_mac_caps.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_mac_caps.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_mac_caps.h b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_mac_caps.h
index ef552a2c2c..ef552a2c2c 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_mac_caps.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_mac_caps.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_setup.c b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_setup.c
index 07257e556a..07257e556a 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_setup.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_setup.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_setup.h b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_setup.h
index 5d2f4acd57..5d2f4acd57 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_setup.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_setup.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_user.c b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_user.c
index ed8120572e..ed8120572e 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_user.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_user.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_win_caps.c b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_win_caps.c
index 1c7c438d2e..1c7c438d2e 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_win_caps.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_win_caps.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_win_caps.h b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_win_caps.h
index 2289cce326..2289cce326 100644
--- a/keyboards/keychron/q1/ansi/keymaps/teimor/tap_dance_win_caps.h
+++ b/keyboards/keychron/q1v1/ansi/keymaps/teimor/tap_dance_win_caps.h
diff --git a/keyboards/keychron/q1/ansi/keymaps/via/keymap.c b/keyboards/keychron/q1v1/ansi/keymaps/via/keymap.c
index 6cbf71baf5..6cbf71baf5 100644
--- a/keyboards/keychron/q1/ansi/keymaps/via/keymap.c
+++ b/keyboards/keychron/q1v1/ansi/keymaps/via/keymap.c
diff --git a/keyboards/hs60/v2/ansi/keymaps/stanrc85/rules.mk b/keyboards/keychron/q1v1/ansi/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/hs60/v2/ansi/keymaps/stanrc85/rules.mk
+++ b/keyboards/keychron/q1v1/ansi/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q1/ansi/readme.md b/keyboards/keychron/q1v1/ansi/readme.md
index 5cf488f048..5cf488f048 100644
--- a/keyboards/keychron/q1/ansi/readme.md
+++ b/keyboards/keychron/q1v1/ansi/readme.md
diff --git a/keyboards/keychron/q1v1/ansi/rules.mk b/keyboards/keychron/q1v1/ansi/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q1v1/ansi_encoder/ansi_encoder.c
new file mode 100644
index 0000000000..c4fc884bc2
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi_encoder/ansi_encoder.c
@@ -0,0 +1,125 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+const matrix_row_t matrix_mask[] = {
+ 0b0111111111111101,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+};
+
+#ifdef RGB_MATRIX_ENABLE
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C_1, A_1, B_1},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+ {0, C_11, A_11, B_11},
+ {0, C_12, A_12, B_12},
+ {0, C_13, A_13, B_13},
+ {0, C_14, A_14, B_14},
+ {0, C_15, A_15, B_15},
+ {0, C_16, A_16, B_16},
+
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_8, D_8, E_8},
+ {0, F_9, D_9, E_9},
+ {0, F_10, D_10, E_10},
+ {0, F_11, D_11, E_11},
+ {0, F_12, D_12, E_12},
+ {0, F_13, D_13, E_13},
+ {0, F_14, D_14, E_14},
+ {0, F_16, D_16, E_16},
+
+ {0, I_1, G_1, H_1},
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {0, I_4, G_4, H_4},
+ {0, I_5, G_5, H_5},
+ {0, I_6, G_6, H_6},
+ {0, I_7, G_7, H_7},
+ {0, I_8, G_8, H_8},
+ {0, I_9, G_9, H_9},
+ {0, I_10, G_10, H_10},
+ {0, I_11, G_11, H_11},
+ {0, I_12, G_12, H_12},
+ {0, I_13, G_13, H_13},
+ {0, I_14, G_14, H_14},
+ {0, I_16, G_16, H_16},
+
+ {0, L_1, J_1, K_1},
+ {0, L_2, J_2, K_2},
+ {0, L_3, J_3, K_3},
+ {0, L_4, J_4, K_4},
+ {0, L_5, J_5, K_5},
+ {0, L_6, J_6, K_6},
+ {0, L_7, J_7, K_7},
+ {0, L_8, J_8, K_8},
+ {0, L_9, J_9, K_9},
+ {0, L_10, J_10, K_10},
+ {0, L_11, J_11, K_11},
+ {0, L_12, J_12, K_12},
+ {0, L_14, J_14, K_14},
+ {0, L_16, J_16, K_16},
+
+ {1, C_1, A_1, B_1},
+ {1, C_3, A_3, B_3},
+ {1, C_4, A_4, B_4},
+ {1, C_5, A_5, B_5},
+ {1, C_6, A_6, B_6},
+ {1, C_7, A_7, B_7},
+ {1, C_8, A_8, B_8},
+ {1, C_9, A_9, B_9},
+ {1, C_10, A_10, B_10},
+ {1, C_11, A_11, B_11},
+ {1, C_12, A_12, B_12},
+ {1, C_14, A_14, B_14},
+ {1, C_15, A_15, B_15},
+
+ {1, F_1, D_1, E_1},
+ {1, F_2, D_2, E_2},
+ {1, F_3, D_3, E_3},
+ {1, F_7, D_7, E_7},
+ {1, F_11, D_11, E_11},
+ {1, F_12, D_12, E_12},
+ {1, F_13, D_13, E_13},
+ {1, F_14, D_14, E_14},
+ {1, F_15, D_15, E_15},
+ {1, F_16, D_16, E_16}
+};
+
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1v1/ansi_encoder/config.h b/keyboards/keychron/q1v1/ansi_encoder/config.h
new file mode 100644
index 0000000000..e608b42c8d
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi_encoder/config.h
@@ -0,0 +1,23 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 82
+
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 45
diff --git a/keyboards/keychron/q1v1/ansi_encoder/info.json b/keyboards/keychron/q1v1/ansi_encoder/info.json
new file mode 100644
index 0000000000..786c297fd3
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi_encoder/info.json
@@ -0,0 +1,196 @@
+{
+ "usb": {
+ "pid": "0x0101",
+ "device_version": "1.0.0"
+ },
+ "encoder": {
+ "enabled": true,
+ "rotary": [
+ {"pin_a": "E6", "pin_b": "B7"}
+ ]
+ },
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 18, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 33, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 48, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 62, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 81, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 95, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 125, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 158, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 173, "y": 0, "flags": 1},
+ {"matrix": [0, 13], "x": 187, "y": 0, "flags": 1},
+ {"matrix": [4, 14], "x": 206, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 15, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 29, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 44, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 59, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 73, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 88, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 103, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 118, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 132, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 147, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 162, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 176, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 4, "y": 26, "flags": 1},
+ {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 51, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 66, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 81, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 95, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 110, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 125, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 140, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 154, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 169, "y": 26, "flags": 4},
+ {"matrix": [2, 12], "x": 184, "y": 26, "flags": 4},
+ {"matrix": [2, 13], "x": 202, "y": 26, "flags": 4},
+ {"matrix": [2, 14], "x": 224, "y": 26, "flags": 1},
+
+ {"matrix": [3, 0], "x": 6, "y": 38, "flags": 1},
+ {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4},
+ {"matrix": [3, 2], "x": 40, "y": 38, "flags": 4},
+ {"matrix": [3, 3], "x": 55, "y": 38, "flags": 4},
+ {"matrix": [3, 4], "x": 70, "y": 38, "flags": 4},
+ {"matrix": [3, 5], "x": 84, "y": 38, "flags": 4},
+ {"matrix": [3, 6], "x": 99, "y": 38, "flags": 4},
+ {"matrix": [3, 7], "x": 114, "y": 38, "flags": 4},
+ {"matrix": [3, 8], "x": 129, "y": 38, "flags": 4},
+ {"matrix": [3, 9], "x": 143, "y": 38, "flags": 4},
+ {"matrix": [3, 10], "x": 158, "y": 38, "flags": 4},
+ {"matrix": [3, 11], "x": 173, "y": 38, "flags": 4},
+ {"matrix": [3, 13], "x": 196, "y": 38, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 38, "flags": 1},
+
+ {"matrix": [4, 0], "x": 9, "y": 49, "flags": 1},
+ {"matrix": [4, 2], "x": 33, "y": 49, "flags": 4},
+ {"matrix": [4, 3], "x": 48, "y": 49, "flags": 4},
+ {"matrix": [4, 4], "x": 62, "y": 49, "flags": 4},
+ {"matrix": [4, 5], "x": 77, "y": 49, "flags": 4},
+ {"matrix": [4, 6], "x": 92, "y": 49, "flags": 4},
+ {"matrix": [4, 7], "x": 106, "y": 49, "flags": 4},
+ {"matrix": [4, 8], "x": 121, "y": 49, "flags": 4},
+ {"matrix": [4, 9], "x": 136, "y": 49, "flags": 4},
+ {"matrix": [4, 10], "x": 151, "y": 49, "flags": 4},
+ {"matrix": [4, 11], "x": 165, "y": 49, "flags": 4},
+ {"matrix": [4, 13], "x": 185, "y": 49, "flags": 1},
+ {"matrix": [3, 12], "x": 209, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x":2, "y": 61, "flags": 1},
+ {"matrix": [5, 1], "x":20, "y": 61, "flags": 1},
+ {"matrix": [5, 2], "x":39, "y": 61, "flags": 1},
+ {"matrix": [5, 6], "x":94, "y": 61, "flags": 4},
+ {"matrix": [5, 10], "x":147, "y": 61, "flags": 1},
+ {"matrix": [5, 11], "x":162, "y": 61, "flags": 1},
+ {"matrix": [5, 12], "x":176, "y": 61, "flags": 1},
+ {"matrix": [5, 13], "x":195, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x":209, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x":224, "y": 64, "flags": 1}
+ ]
+ },
+ "layouts": {
+ "LAYOUT_ansi_82": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 2], "x": 1.25, "y": 0},
+ {"matrix": [0, 3], "x": 2.25, "y": 0},
+ {"matrix": [0, 4], "x": 3.25, "y": 0},
+ {"matrix": [0, 5], "x": 4.25, "y": 0},
+ {"matrix": [0, 6], "x": 5.5, "y": 0},
+ {"matrix": [0, 7], "x": 6.5, "y": 0},
+ {"matrix": [0, 8], "x": 7.5, "y": 0},
+ {"matrix": [0, 9], "x": 8.5, "y": 0},
+ {"matrix": [0, 10], "x": 9.75, "y": 0},
+ {"matrix": [0, 11], "x": 10.75, "y": 0},
+ {"matrix": [0, 12], "x": 11.75, "y": 0},
+ {"matrix": [0, 13], "x": 12.75, "y": 0},
+ {"matrix": [4, 14], "x": 14, "y": 0},
+ {"matrix": [0, 14], "x": 15.25, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1, "y": 1},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+ {"matrix": [1, 4], "x": 4, "y": 1},
+ {"matrix": [1, 5], "x": 5, "y": 1},
+ {"matrix": [1, 6], "x": 6, "y": 1},
+ {"matrix": [1, 7], "x": 7, "y": 1},
+ {"matrix": [1, 8], "x": 8, "y": 1},
+ {"matrix": [1, 9], "x": 9, "y": 1},
+ {"matrix": [1, 10], "x": 10, "y": 1},
+ {"matrix": [1, 11], "x": 11, "y": 1},
+ {"matrix": [1, 12], "x": 12, "y": 1},
+ {"matrix": [1, 13], "x": 13, "y": 1, "w": 2},
+ {"matrix": [1, 14], "x": 15.25, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 2},
+ {"matrix": [2, 2], "x": 2.5, "y": 2},
+ {"matrix": [2, 3], "x": 3.5, "y": 2},
+ {"matrix": [2, 4], "x": 4.5, "y": 2},
+ {"matrix": [2, 5], "x": 5.5, "y": 2},
+ {"matrix": [2, 6], "x": 6.5, "y": 2},
+ {"matrix": [2, 7], "x": 7.5, "y": 2},
+ {"matrix": [2, 8], "x": 8.5, "y": 2},
+ {"matrix": [2, 9], "x": 9.5, "y": 2},
+ {"matrix": [2, 10], "x": 10.5, "y": 2},
+ {"matrix": [2, 11], "x": 11.5, "y": 2},
+ {"matrix": [2, 12], "x": 12.5, "y": 2},
+ {"matrix": [2, 13], "x": 13.5, "y": 2, "w": 1.5},
+ {"matrix": [2, 14], "x": 15.25, "y": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 3},
+ {"matrix": [3, 2], "x": 2.75, "y": 3},
+ {"matrix": [3, 3], "x": 3.75, "y": 3},
+ {"matrix": [3, 4], "x": 4.75, "y": 3},
+ {"matrix": [3, 5], "x": 5.75, "y": 3},
+ {"matrix": [3, 6], "x": 6.75, "y": 3},
+ {"matrix": [3, 7], "x": 7.75, "y": 3},
+ {"matrix": [3, 8], "x": 8.75, "y": 3},
+ {"matrix": [3, 9], "x": 9.75, "y": 3},
+ {"matrix": [3, 10], "x": 10.75, "y": 3},
+ {"matrix": [3, 11], "x": 11.75, "y": 3},
+ {"matrix": [3, 13], "x": 12.75, "y": 3, "w": 2.25},
+ {"matrix": [3, 14], "x": 15.25, "y": 3},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 2.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4},
+ {"matrix": [4, 3], "x": 3.25, "y": 4},
+ {"matrix": [4, 4], "x": 4.25, "y": 4},
+ {"matrix": [4, 5], "x": 5.25, "y": 4},
+ {"matrix": [4, 6], "x": 6.25, "y": 4},
+ {"matrix": [4, 7], "x": 7.25, "y": 4},
+ {"matrix": [4, 8], "x": 8.25, "y": 4},
+ {"matrix": [4, 9], "x": 9.25, "y": 4},
+ {"matrix": [4, 10], "x": 10.25, "y": 4},
+ {"matrix": [4, 11], "x": 11.25, "y": 4},
+ {"matrix": [4, 13], "x": 12.25, "y": 4, "w": 1.75},
+ {"matrix": [3, 12], "x": 14.25, "y": 4.25},
+
+ {"matrix": [5, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 5, "w": 1.25},
+ {"matrix": [5, 2], "x": 2.5, "y": 5, "w": 1.25},
+ {"matrix": [5, 6], "x": 3.75, "y": 5, "w": 6.25},
+ {"matrix": [5, 10], "x": 10, "y": 5},
+ {"matrix": [5, 11], "x": 11, "y": 5},
+ {"matrix": [5, 12], "x": 12, "y": 5},
+ {"matrix": [5, 13], "x": 13.25, "y": 5.25},
+ {"matrix": [4, 12], "x": 14.25, "y": 5.25},
+ {"matrix": [5, 14], "x": 15.25, "y": 5.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q1/ansi_encoder/keymaps/default/keymap.c b/keyboards/keychron/q1v1/ansi_encoder/keymaps/default/keymap.c
index a4febc93c7..a4febc93c7 100644
--- a/keyboards/keychron/q1/ansi_encoder/keymaps/default/keymap.c
+++ b/keyboards/keychron/q1v1/ansi_encoder/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q1/ansi_encoder/keymaps/default/rules.mk b/keyboards/keychron/q1v1/ansi_encoder/keymaps/default/rules.mk
index a40474b4d5..a40474b4d5 100644
--- a/keyboards/keychron/q1/ansi_encoder/keymaps/default/rules.mk
+++ b/keyboards/keychron/q1v1/ansi_encoder/keymaps/default/rules.mk
diff --git a/keyboards/keychron/q1/ansi_encoder/keymaps/keychron/keymap.c b/keyboards/keychron/q1v1/ansi_encoder/keymaps/keychron/keymap.c
index 88d0b49efd..88d0b49efd 100644
--- a/keyboards/keychron/q1/ansi_encoder/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q1v1/ansi_encoder/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q1/ansi_encoder/keymaps/keychron/rules.mk b/keyboards/keychron/q1v1/ansi_encoder/keymaps/keychron/rules.mk
index 9cf1a9b56c..9cf1a9b56c 100644
--- a/keyboards/keychron/q1/ansi_encoder/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q1v1/ansi_encoder/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q1/ansi_encoder/keymaps/via/keymap.c b/keyboards/keychron/q1v1/ansi_encoder/keymaps/via/keymap.c
index 9372a1d814..9372a1d814 100644
--- a/keyboards/keychron/q1/ansi_encoder/keymaps/via/keymap.c
+++ b/keyboards/keychron/q1v1/ansi_encoder/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q1/ansi_encoder/keymaps/via/rules.mk b/keyboards/keychron/q1v1/ansi_encoder/keymaps/via/rules.mk
index f1adcab005..f1adcab005 100644
--- a/keyboards/keychron/q1/ansi_encoder/keymaps/via/rules.mk
+++ b/keyboards/keychron/q1v1/ansi_encoder/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q1/ansi_encoder/readme.md b/keyboards/keychron/q1v1/ansi_encoder/readme.md
index b89c9ad7ad..b89c9ad7ad 100644
--- a/keyboards/keychron/q1/ansi_encoder/readme.md
+++ b/keyboards/keychron/q1v1/ansi_encoder/readme.md
diff --git a/keyboards/keychron/q1v1/ansi_encoder/rules.mk b/keyboards/keychron/q1v1/ansi_encoder/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/keychron/q1v1/ansi_encoder/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/keychron/q1v1/config.h b/keyboards/keychron/q1v1/config.h
new file mode 100644
index 0000000000..ec1bcc5794
--- /dev/null
+++ b/keyboards/keychron/q1v1/config.h
@@ -0,0 +1,36 @@
+/* Copyright 2021 @ Keychron(https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Driver Configuration */
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_VCC
+
+/* DIP switch */
+#define DIP_SWITCH_MATRIX_GRID { {0,1} }
+
+/* Disable DIP switch in matrix data */
+#define MATRIX_MASKED
+
+/* Encoder Configuration*/
+#define ENCODER_DEFAULT_POS 0x3
+
+/* Disable RGB lighting when PC is in suspend */
+#define RGB_DISABLE_WHEN_USB_SUSPENDED
+
+#define RGB_MATRIX_KEYPRESSES
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/info.json b/keyboards/keychron/q1v1/info.json
new file mode 100644
index 0000000000..26c846927b
--- /dev/null
+++ b/keyboards/keychron/q1v1/info.json
@@ -0,0 +1,54 @@
+{
+ "keyboard_name": "Keychron Q1v1",
+ "manufacturer": "Keychron",
+ "maintainer": "lalalademaxiya1",
+ "bootloader": "atmel-dfu",
+ "diode_direction": "ROW2COL",
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "dip_switch": true,
+ "extrakey": true,
+ "lto": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "matrix_pins": {
+ "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
+ "rows": ["D3", "D2", "B3", "B2", "B1", "B0"]
+ },
+ "processor": "atmega32u4",
+ "rgb_matrix": {
+ "animations": {
+ "band_spiral_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "digital_rain": true,
+ "dual_beacon": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "rainbow_beacon": true,
+ "rainbow_moving_chevron": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_simple": true,
+ "solid_splash": true,
+ "splash": true,
+ "typing_heatmap": true
+ },
+ "driver": "is31fl3733"
+ },
+ "url": "https://github.com/Keychron",
+ "usb": {
+ "force_nkro": true,
+ "vid": "0x3434"
+ }
+} \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/iso/config.h b/keyboards/keychron/q1v1/iso/config.h
new file mode 100644
index 0000000000..b6a2563986
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso/config.h
@@ -0,0 +1,23 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 83
+
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 44 \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/iso/info.json b/keyboards/keychron/q1v1/iso/info.json
new file mode 100644
index 0000000000..2bd353803e
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso/info.json
@@ -0,0 +1,192 @@
+{
+ "usb": {
+ "pid": "0x0102",
+ "device_version": "1.0.0"
+ },
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 18, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 33, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 48, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 62, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 81, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 95, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 125, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 158, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 173, "y": 0, "flags": 1},
+ {"matrix": [0, 13], "x": 187, "y": 0, "flags": 1},
+ {"matrix": [4, 14], "x": 206, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 15, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 29, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 44, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 59, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 73, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 88, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 103, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 118, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 132, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 147, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 162, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 176, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 4, "y": 26, "flags": 1},
+ {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 51, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 66, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 81, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 95, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 110, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 125, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 140, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 154, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 169, "y": 26, "flags": 4},
+ {"matrix": [2, 12], "x": 184, "y": 26, "flags": 4},
+ {"matrix": [2, 14], "x": 224, "y": 26, "flags": 1},
+
+ {"matrix": [3, 0], "x": 6, "y": 38, "flags": 1},
+ {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4},
+ {"matrix": [3, 2], "x": 40, "y": 38, "flags": 4},
+ {"matrix": [3, 3], "x": 55, "y": 38, "flags": 4},
+ {"matrix": [3, 4], "x": 70, "y": 38, "flags": 4},
+ {"matrix": [3, 5], "x": 84, "y": 38, "flags": 4},
+ {"matrix": [3, 6], "x": 99, "y": 38, "flags": 4},
+ {"matrix": [3, 7], "x": 114, "y": 38, "flags": 4},
+ {"matrix": [3, 8], "x": 129, "y": 38, "flags": 4},
+ {"matrix": [3, 9], "x": 143, "y": 38, "flags": 4},
+ {"matrix": [3, 10], "x": 158, "y": 38, "flags": 4},
+ {"matrix": [3, 11], "x": 173, "y": 38, "flags": 4},
+ {"matrix": [3, 13], "x": 187, "y": 38, "flags": 4},
+ {"matrix": [2, 13], "x": 203, "y": 32, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 38, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 49, "flags": 1},
+ {"matrix": [4, 1], "x": 18, "y": 49, "flags": 4},
+ {"matrix": [4, 2], "x": 33, "y": 49, "flags": 4},
+ {"matrix": [4, 3], "x": 48, "y": 49, "flags": 4},
+ {"matrix": [4, 4], "x": 62, "y": 49, "flags": 4},
+ {"matrix": [4, 5], "x": 77, "y": 49, "flags": 4},
+ {"matrix": [4, 6], "x": 92, "y": 49, "flags": 4},
+ {"matrix": [4, 7], "x": 106, "y": 49, "flags": 4},
+ {"matrix": [4, 8], "x": 121, "y": 49, "flags": 4},
+ {"matrix": [4, 9], "x": 136, "y": 49, "flags": 4},
+ {"matrix": [4, 10], "x": 151, "y": 49, "flags": 4},
+ {"matrix": [4, 11], "x": 165, "y": 49, "flags": 4},
+ {"matrix": [4, 13], "x": 185, "y": 49, "flags": 1},
+ {"matrix": [3, 12], "x": 209, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 61, "flags": 1},
+ {"matrix": [5, 1], "x": 20, "y": 61, "flags": 1},
+ {"matrix": [5, 2], "x": 39, "y": 61, "flags": 1},
+ {"matrix": [5, 6], "x": 94, "y": 61, "flags": 4},
+ {"matrix": [5, 10], "x": 147, "y": 61, "flags": 1},
+ {"matrix": [5, 11], "x": 162, "y": 61, "flags": 1},
+ {"matrix": [5, 12], "x": 176, "y": 61, "flags": 1},
+ {"matrix": [5, 13], "x": 195, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "layouts": {
+ "LAYOUT_iso_83": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 2], "x": 1.25, "y": 0},
+ {"matrix": [0, 3], "x": 2.25, "y": 0},
+ {"matrix": [0, 4], "x": 3.25, "y": 0},
+ {"matrix": [0, 5], "x": 4.25, "y": 0},
+ {"matrix": [0, 6], "x": 5.5, "y": 0},
+ {"matrix": [0, 7], "x": 6.5, "y": 0},
+ {"matrix": [0, 8], "x": 7.5, "y": 0},
+ {"matrix": [0, 9], "x": 8.5, "y": 0},
+ {"matrix": [0, 10], "x": 9.75, "y": 0},
+ {"matrix": [0, 11], "x": 10.75, "y": 0},
+ {"matrix": [0, 12], "x": 11.75, "y": 0},
+ {"matrix": [0, 13], "x": 12.75, "y": 0},
+ {"matrix": [4, 14], "x": 14, "y": 0},
+ {"matrix": [0, 14], "x": 15.25, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1.25},
+ {"matrix": [1, 1], "x": 1, "y": 1.25},
+ {"matrix": [1, 2], "x": 2, "y": 1.25},
+ {"matrix": [1, 3], "x": 3, "y": 1.25},
+ {"matrix": [1, 4], "x": 4, "y": 1.25},
+ {"matrix": [1, 5], "x": 5, "y": 1.25},
+ {"matrix": [1, 6], "x": 6, "y": 1.25},
+ {"matrix": [1, 7], "x": 7, "y": 1.25},
+ {"matrix": [1, 8], "x": 8, "y": 1.25},
+ {"matrix": [1, 9], "x": 9, "y": 1.25},
+ {"matrix": [1, 10], "x": 10, "y": 1.25},
+ {"matrix": [1, 11], "x": 11, "y": 1.25},
+ {"matrix": [1, 12], "x": 12, "y": 1.25},
+ {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
+ {"matrix": [1, 14], "x": 15.25, "y": 1.25},
+
+ {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 2.25},
+ {"matrix": [2, 2], "x": 2.5, "y": 2.25},
+ {"matrix": [2, 3], "x": 3.5, "y": 2.25},
+ {"matrix": [2, 4], "x": 4.5, "y": 2.25},
+ {"matrix": [2, 5], "x": 5.5, "y": 2.25},
+ {"matrix": [2, 6], "x": 6.5, "y": 2.25},
+ {"matrix": [2, 7], "x": 7.5, "y": 2.25},
+ {"matrix": [2, 8], "x": 8.5, "y": 2.25},
+ {"matrix": [2, 9], "x": 9.5, "y": 2.25},
+ {"matrix": [2, 10], "x": 10.5, "y": 2.25},
+ {"matrix": [2, 11], "x": 11.5, "y": 2.25},
+ {"matrix": [2, 12], "x": 12.5, "y": 2.25},
+ {"matrix": [2, 14], "x": 15.25, "y": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 3.25},
+ {"matrix": [3, 2], "x": 2.75, "y": 3.25},
+ {"matrix": [3, 3], "x": 3.75, "y": 3.25},
+ {"matrix": [3, 4], "x": 4.75, "y": 3.25},
+ {"matrix": [3, 5], "x": 5.75, "y": 3.25},
+ {"matrix": [3, 6], "x": 6.75, "y": 3.25},
+ {"matrix": [3, 7], "x": 7.75, "y": 3.25},
+ {"matrix": [3, 8], "x": 8.75, "y": 3.25},
+ {"matrix": [3, 9], "x": 9.75, "y": 3.25},
+ {"matrix": [3, 10], "x": 10.75, "y": 3.25},
+ {"matrix": [3, 11], "x": 11.75, "y": 3.25},
+ {"matrix": [3, 13], "x": 12.75, "y": 3.25},
+ {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
+ {"matrix": [3, 14], "x": 15.25, "y": 3.25},
+
+ {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4.25},
+ {"matrix": [4, 3], "x": 3.25, "y": 4.25},
+ {"matrix": [4, 4], "x": 4.25, "y": 4.25},
+ {"matrix": [4, 5], "x": 5.25, "y": 4.25},
+ {"matrix": [4, 6], "x": 6.25, "y": 4.25},
+ {"matrix": [4, 7], "x": 7.25, "y": 4.25},
+ {"matrix": [4, 8], "x": 8.25, "y": 4.25},
+ {"matrix": [4, 9], "x": 9.25, "y": 4.25},
+ {"matrix": [4, 10], "x": 10.25, "y": 4.25},
+ {"matrix": [4, 11], "x": 11.25, "y": 4.25},
+ {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 1.75},
+ {"matrix": [3, 12], "x": 14.25, "y": 4.5},
+
+ {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25},
+ {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
+ {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25},
+ {"matrix": [5, 10], "x": 10, "y": 5.25},
+ {"matrix": [5, 11], "x": 11, "y": 5.25},
+ {"matrix": [5, 12], "x": 12, "y": 5.25},
+ {"matrix": [5, 13], "x": 13.25, "y": 5.5},
+ {"matrix": [4, 12], "x": 14.25, "y": 5.5},
+ {"matrix": [5, 14], "x": 15.25, "y": 5.5}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q1v1/iso/iso.c b/keyboards/keychron/q1v1/iso/iso.c
new file mode 100644
index 0000000000..874f5c8539
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso/iso.c
@@ -0,0 +1,158 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+const matrix_row_t matrix_mask[] = {
+ 0b0111111111111101,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+};
+
+#ifdef RGB_MATRIX_ENABLE
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C_1, A_1, B_1},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+ {0, C_11, A_11, B_11},
+ {0, C_12, A_12, B_12},
+ {0, C_13, A_13, B_13},
+ {0, C_14, A_14, B_14},
+ {0, C_15, A_15, B_15},
+ {0, C_16, A_16, B_16},
+
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_8, D_8, E_8},
+ {0, F_9, D_9, E_9},
+ {0, F_10, D_10, E_10},
+ {0, F_11, D_11, E_11},
+ {0, F_12, D_12, E_12},
+ {0, F_13, D_13, E_13},
+ {0, F_14, D_14, E_14},
+ {0, F_16, D_16, E_16},
+
+ {0, I_1, G_1, H_1},
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {0, I_4, G_4, H_4},
+ {0, I_5, G_5, H_5},
+ {0, I_6, G_6, H_6},
+ {0, I_7, G_7, H_7},
+ {0, I_8, G_8, H_8},
+ {0, I_9, G_9, H_9},
+ {0, I_10, G_10, H_10},
+ {0, I_11, G_11, H_11},
+ {0, I_12, G_12, H_12},
+ {0, I_13, G_13, H_13},
+ {0, I_16, G_16, H_16},
+
+ {0, L_1, J_1, K_1},
+ {0, L_2, J_2, K_2},
+ {0, L_3, J_3, K_3},
+ {0, L_4, J_4, K_4},
+ {0, L_5, J_5, K_5},
+ {0, L_6, J_6, K_6},
+ {0, L_7, J_7, K_7},
+ {0, L_8, J_8, K_8},
+ {0, L_9, J_9, K_9},
+ {0, L_10, J_10, K_10},
+ {0, L_11, J_11, K_11},
+ {0, L_12, J_12, K_12},
+ {0, L_14, J_14, K_14},
+ {0, I_14, G_14, H_14},
+ {0, L_16, J_16, K_16},
+
+ {1, C_1, A_1, B_1},
+ {1, C_2, A_2, B_2},
+ {1, C_3, A_3, B_3},
+ {1, C_4, A_4, B_4},
+ {1, C_5, A_5, B_5},
+ {1, C_6, A_6, B_6},
+ {1, C_7, A_7, B_7},
+ {1, C_8, A_8, B_8},
+ {1, C_9, A_9, B_9},
+ {1, C_10, A_10, B_10},
+ {1, C_11, A_11, B_11},
+ {1, C_12, A_12, B_12},
+ {1, C_14, A_14, B_14},
+ {1, C_15, A_15, B_15},
+
+ {1, F_1, D_1, E_1},
+ {1, F_2, D_2, E_2},
+ {1, F_3, D_3, E_3},
+ {1, F_7, D_7, E_7},
+ {1, F_11, D_11, E_11},
+ {1, F_12, D_12, E_12},
+ {1, F_13, D_13, E_13},
+ {1, F_14, D_14, E_14},
+ {1, F_15, D_15, E_15},
+ {1, F_16, D_16, E_16}
+};
+
+#define __ NO_LED
+
+led_config_t g_led_config = {
+ {
+ // Key Matrix to LED Index
+ { 0, __, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14 },
+ { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
+ { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44 },
+ { 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 71, 57, 58 },
+ { 59, __, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 80, 70, 13 },
+ { 72, 73, 74, __, __, __, 75, __, __, __, 76, 77, 78, 79, 81 }
+ },
+ {
+ // LED Index to Physical Position
+ {0,0}, {18,0}, {33,0}, {48,0}, {62,0}, {81,0}, {95,0}, {110,0}, {125,0}, {143,0}, {158,0}, {173,0}, {187,0}, {206,0}, {224,0},
+ {0,15}, {15,15}, {29,15}, {44,15}, {59,15}, {73,15}, {88,15}, {103,15}, {118,15}, {132,15}, {147,15}, {162,15}, {176,15}, {198,15}, {224,15},
+ {4,26}, {22,26}, {37,26}, {51,26}, {66,26}, {81,26}, {95,26}, {110,26}, {125,26}, {140,26}, {154,26}, {169,26}, {184,26}, {202,26}, {224,26},
+ {6,38}, {26,38}, {40,38}, {55,38}, {70,38}, {84,38}, {99,38}, {114,38}, {129,38}, {143,38}, {158,38}, {173,38}, {196,38}, {224,38},
+ {9,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {151,49}, {165,49}, {185,49}, {209,52},
+ {2,61}, {20,61}, {39,61}, {94,61}, {147,61}, {162,61}, {176,61}, {195,64}, {209,64}, {224,64}
+ },
+ {
+ // RGB LED Index to Flag
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
+ 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
+ 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
+ }
+};
+
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1/iso/keymaps/default/keymap.c b/keyboards/keychron/q1v1/iso/keymaps/default/keymap.c
index 080e2839c8..080e2839c8 100644
--- a/keyboards/keychron/q1/iso/keymaps/default/keymap.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q1/iso/keymaps/keychron/keymap.c b/keyboards/keychron/q1v1/iso/keymaps/keychron/keymap.c
index d641f62c3f..d641f62c3f 100644
--- a/keyboards/keychron/q1/iso/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q1/iso/keymaps/keychron/rules.mk b/keyboards/keychron/q1v1/iso/keymaps/keychron/rules.mk
index 495e8907b4..495e8907b4 100644
--- a/keyboards/keychron/q1/iso/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q1v1/iso/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/README.md b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/README.md
index 3cfae17543..3cfae17543 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/README.md
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/README.md
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/config.h b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/config.h
index 55dbb74d4a..55dbb74d4a 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/config.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/config.h
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/keymap.c b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/keymap.c
index 479988dfa9..479988dfa9 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/keymap.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/keymap.c
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/keymap_user.h b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/keymap_user.h
index 728114d556..728114d556 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/keymap_user.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/keymap_user.h
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/rgb_matrix_user.c b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/rgb_matrix_user.c
index 638aa77eb0..638aa77eb0 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/rgb_matrix_user.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/rgb_matrix_user.c
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/rgb_matrix_user.h b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/rgb_matrix_user.h
index dead454167..dead454167 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/rgb_matrix_user.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/rgb_matrix_user.h
diff --git a/keyboards/keychron/q1/iso/keymaps/kubahorak/rules.mk b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/rules.mk
index af720e37ee..af720e37ee 100644
--- a/keyboards/keychron/q1/iso/keymaps/kubahorak/rules.mk
+++ b/keyboards/keychron/q1v1/iso/keymaps/kubahorak/rules.mk
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/config.h b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/config.h
index bc9fe405c3..bc9fe405c3 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/config.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/config.h
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/keymap.c b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/keymap.c
index f86a84e468..f86a84e468 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/keymap.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/keymap.c
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/keymap_user.h b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/keymap_user.h
index 87b1baf47f..87b1baf47f 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/keymap_user.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/keymap_user.h
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/readme.md b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/readme.md
index 25d835b1c0..25d835b1c0 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/readme.md
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/readme.md
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rgb_matrix_user.c b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rgb_matrix_user.c
index c6fa5f1f15..c6fa5f1f15 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rgb_matrix_user.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rgb_matrix_user.c
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rgb_matrix_user.h b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rgb_matrix_user.h
index 1fb79c0b2a..1fb79c0b2a 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rgb_matrix_user.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rgb_matrix_user.h
diff --git a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rules.mk b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rules.mk
index af720e37ee..af720e37ee 100644
--- a/keyboards/keychron/q1/iso/keymaps/mkillewald_iso/rules.mk
+++ b/keyboards/keychron/q1v1/iso/keymaps/mkillewald_iso/rules.mk
diff --git a/keyboards/keychron/q1/iso/keymaps/via/keymap.c b/keyboards/keychron/q1v1/iso/keymaps/via/keymap.c
index 4d9f158e1e..4d9f158e1e 100644
--- a/keyboards/keychron/q1/iso/keymaps/via/keymap.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q0/rev_0130/keymaps/via/rules.mk b/keyboards/keychron/q1v1/iso/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/keychron/q0/rev_0130/keymaps/via/rules.mk
+++ b/keyboards/keychron/q1v1/iso/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q1/iso/keymaps/victorsavu3/config.h b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/config.h
index 02f08db4a7..02f08db4a7 100644
--- a/keyboards/keychron/q1/iso/keymaps/victorsavu3/config.h
+++ b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/config.h
diff --git a/keyboards/keychron/q1/iso/keymaps/victorsavu3/keymap.c b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/keymap.c
index 5256c97dca..5256c97dca 100644
--- a/keyboards/keychron/q1/iso/keymaps/victorsavu3/keymap.c
+++ b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/keymap.c
diff --git a/keyboards/keychron/q1/iso/keymaps/victorsavu3/readme.md b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/readme.md
index c96130816e..c96130816e 100644
--- a/keyboards/keychron/q1/iso/keymaps/victorsavu3/readme.md
+++ b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/readme.md
diff --git a/keyboards/keychron/q1/iso/keymaps/victorsavu3/rules.mk b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/rules.mk
index 853c414ec7..853c414ec7 100644
--- a/keyboards/keychron/q1/iso/keymaps/victorsavu3/rules.mk
+++ b/keyboards/keychron/q1v1/iso/keymaps/victorsavu3/rules.mk
diff --git a/keyboards/keychron/q1/iso/readme.md b/keyboards/keychron/q1v1/iso/readme.md
index 777ce04773..777ce04773 100644
--- a/keyboards/keychron/q1/iso/readme.md
+++ b/keyboards/keychron/q1v1/iso/readme.md
diff --git a/keyboards/keychron/q1v1/iso/rules.mk b/keyboards/keychron/q1v1/iso/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/iso_encoder/config.h b/keyboards/keychron/q1v1/iso_encoder/config.h
new file mode 100644
index 0000000000..0907aa14af
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso_encoder/config.h
@@ -0,0 +1,23 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 83
+
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 44
diff --git a/keyboards/keychron/q1v1/iso_encoder/info.json b/keyboards/keychron/q1v1/iso_encoder/info.json
new file mode 100644
index 0000000000..780fc7ae82
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso_encoder/info.json
@@ -0,0 +1,199 @@
+{
+ "usb": {
+ "pid": "0x0103",
+ "device_version": "1.0.2"
+ },
+ "diode_direction": "ROW2COL",
+ "encoder": {
+ "enabled": true,
+ "rotary": [
+ {"pin_a": "E6", "pin_b": "B7"}
+ ]
+ },
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 18, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 33, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 48, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 62, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 81, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 95, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 125, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 158, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 173, "y": 0, "flags": 1},
+ {"matrix": [0, 13], "x": 187, "y": 0, "flags": 1},
+ {"matrix": [4, 14], "x": 206, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 15, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 29, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 44, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 59, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 73, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 88, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 103, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 118, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 132, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 147, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 162, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 176, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 4, "y": 26, "flags": 1},
+ {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 51, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 66, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 81, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 95, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 110, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 125, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 140, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 154, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 169, "y": 26, "flags": 4},
+ {"matrix": [2, 12], "x": 184, "y": 26, "flags": 4},
+ {"matrix": [2, 14], "x": 224, "y": 26, "flags": 1},
+
+ {"matrix": [3, 0], "x": 6, "y": 38, "flags": 1},
+ {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4},
+ {"matrix": [3, 2], "x": 40, "y": 38, "flags": 4},
+ {"matrix": [3, 3], "x": 55, "y": 38, "flags": 4},
+ {"matrix": [3, 4], "x": 70, "y": 38, "flags": 4},
+ {"matrix": [3, 5], "x": 84, "y": 38, "flags": 4},
+ {"matrix": [3, 6], "x": 99, "y": 38, "flags": 4},
+ {"matrix": [3, 7], "x": 114, "y": 38, "flags": 4},
+ {"matrix": [3, 8], "x": 129, "y": 38, "flags": 4},
+ {"matrix": [3, 9], "x": 143, "y": 38, "flags": 4},
+ {"matrix": [3, 10], "x": 158, "y": 38, "flags": 4},
+ {"matrix": [3, 11], "x": 173, "y": 38, "flags": 4},
+ {"matrix": [3, 13], "x": 187, "y": 38, "flags": 4},
+ {"matrix": [2, 13], "x": 203, "y": 32, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 38, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 49, "flags": 1},
+ {"matrix": [4, 1], "x": 18, "y": 49, "flags": 4},
+ {"matrix": [4, 2], "x": 33, "y": 49, "flags": 4},
+ {"matrix": [4, 3], "x": 48, "y": 49, "flags": 4},
+ {"matrix": [4, 4], "x": 62, "y": 49, "flags": 4},
+ {"matrix": [4, 5], "x": 77, "y": 49, "flags": 4},
+ {"matrix": [4, 6], "x": 92, "y": 49, "flags": 4},
+ {"matrix": [4, 7], "x": 106, "y": 49, "flags": 4},
+ {"matrix": [4, 8], "x": 121, "y": 49, "flags": 4},
+ {"matrix": [4, 9], "x": 136, "y": 49, "flags": 4},
+ {"matrix": [4, 10], "x": 151, "y": 49, "flags": 4},
+ {"matrix": [4, 11], "x": 165, "y": 49, "flags": 4},
+ {"matrix": [4, 13], "x": 185, "y": 49, "flags": 1},
+ {"matrix": [3, 12], "x": 209, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 61, "flags": 1},
+ {"matrix": [5, 1], "x": 20, "y": 61, "flags": 1},
+ {"matrix": [5, 2], "x": 39, "y": 61, "flags": 1},
+ {"matrix": [5, 6], "x": 94, "y": 61, "flags": 4},
+ {"matrix": [5, 10], "x": 147, "y": 61, "flags": 1},
+ {"matrix": [5, 11], "x": 162, "y": 61, "flags": 1},
+ {"matrix": [5, 12], "x": 176, "y": 61, "flags": 1},
+ {"matrix": [5, 13], "x": 195, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "layouts": {
+ "LAYOUT_iso_83": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 2], "x": 1.25, "y": 0},
+ {"matrix": [0, 3], "x": 2.25, "y": 0},
+ {"matrix": [0, 4], "x": 3.25, "y": 0},
+ {"matrix": [0, 5], "x": 4.25, "y": 0},
+ {"matrix": [0, 6], "x": 5.5, "y": 0},
+ {"matrix": [0, 7], "x": 6.5, "y": 0},
+ {"matrix": [0, 8], "x": 7.5, "y": 0},
+ {"matrix": [0, 9], "x": 8.5, "y": 0},
+ {"matrix": [0, 10], "x": 9.75, "y": 0},
+ {"matrix": [0, 11], "x": 10.75, "y": 0},
+ {"matrix": [0, 12], "x": 11.75, "y": 0},
+ {"matrix": [0, 13], "x": 12.75, "y": 0},
+ {"matrix": [4, 14], "x": 14, "y": 0},
+ {"matrix": [0, 14], "x": 15.25, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1.25},
+ {"matrix": [1, 1], "x": 1, "y": 1.25},
+ {"matrix": [1, 2], "x": 2, "y": 1.25},
+ {"matrix": [1, 3], "x": 3, "y": 1.25},
+ {"matrix": [1, 4], "x": 4, "y": 1.25},
+ {"matrix": [1, 5], "x": 5, "y": 1.25},
+ {"matrix": [1, 6], "x": 6, "y": 1.25},
+ {"matrix": [1, 7], "x": 7, "y": 1.25},
+ {"matrix": [1, 8], "x": 8, "y": 1.25},
+ {"matrix": [1, 9], "x": 9, "y": 1.25},
+ {"matrix": [1, 10], "x": 10, "y": 1.25},
+ {"matrix": [1, 11], "x": 11, "y": 1.25},
+ {"matrix": [1, 12], "x": 12, "y": 1.25},
+ {"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
+ {"matrix": [1, 14], "x": 15.25, "y": 1.25},
+
+ {"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 2.25},
+ {"matrix": [2, 2], "x": 2.5, "y": 2.25},
+ {"matrix": [2, 3], "x": 3.5, "y": 2.25},
+ {"matrix": [2, 4], "x": 4.5, "y": 2.25},
+ {"matrix": [2, 5], "x": 5.5, "y": 2.25},
+ {"matrix": [2, 6], "x": 6.5, "y": 2.25},
+ {"matrix": [2, 7], "x": 7.5, "y": 2.25},
+ {"matrix": [2, 8], "x": 8.5, "y": 2.25},
+ {"matrix": [2, 9], "x": 9.5, "y": 2.25},
+ {"matrix": [2, 10], "x": 10.5, "y": 2.25},
+ {"matrix": [2, 11], "x": 11.5, "y": 2.25},
+ {"matrix": [2, 12], "x": 12.5, "y": 2.25},
+ {"matrix": [2, 14], "x": 15.25, "y": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 3.25},
+ {"matrix": [3, 2], "x": 2.75, "y": 3.25},
+ {"matrix": [3, 3], "x": 3.75, "y": 3.25},
+ {"matrix": [3, 4], "x": 4.75, "y": 3.25},
+ {"matrix": [3, 5], "x": 5.75, "y": 3.25},
+ {"matrix": [3, 6], "x": 6.75, "y": 3.25},
+ {"matrix": [3, 7], "x": 7.75, "y": 3.25},
+ {"matrix": [3, 8], "x": 8.75, "y": 3.25},
+ {"matrix": [3, 9], "x": 9.75, "y": 3.25},
+ {"matrix": [3, 10], "x": 10.75, "y": 3.25},
+ {"matrix": [3, 11], "x": 11.75, "y": 3.25},
+ {"matrix": [3, 13], "x": 12.75, "y": 3.25},
+ {"matrix": [2, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
+ {"matrix": [3, 14], "x": 15.25, "y": 3.25},
+
+ {"matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4.25},
+ {"matrix": [4, 3], "x": 3.25, "y": 4.25},
+ {"matrix": [4, 4], "x": 4.25, "y": 4.25},
+ {"matrix": [4, 5], "x": 5.25, "y": 4.25},
+ {"matrix": [4, 6], "x": 6.25, "y": 4.25},
+ {"matrix": [4, 7], "x": 7.25, "y": 4.25},
+ {"matrix": [4, 8], "x": 8.25, "y": 4.25},
+ {"matrix": [4, 9], "x": 9.25, "y": 4.25},
+ {"matrix": [4, 10], "x": 10.25, "y": 4.25},
+ {"matrix": [4, 11], "x": 11.25, "y": 4.25},
+ {"matrix": [4, 13], "x": 12.25, "y": 4.25, "w": 1.75},
+ {"matrix": [3, 12], "x": 14.25, "y": 4.5},
+
+ {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25},
+ {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
+ {"matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25},
+ {"matrix": [5, 10], "x": 10, "y": 5.25},
+ {"matrix": [5, 11], "x": 11, "y": 5.25},
+ {"matrix": [5, 12], "x": 12, "y": 5.25},
+ {"matrix": [5, 13], "x": 13.25, "y": 5.5},
+ {"matrix": [4, 12], "x": 14.25, "y": 5.5},
+ {"matrix": [5, 14], "x": 15.25, "y": 5.5}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q1v1/iso_encoder/iso_encoder.c b/keyboards/keychron/q1v1/iso_encoder/iso_encoder.c
new file mode 100644
index 0000000000..4a7496ed29
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso_encoder/iso_encoder.c
@@ -0,0 +1,127 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+const matrix_row_t matrix_mask[] = {
+ 0b0111111111111101,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+ 0b0111111111111111,
+};
+
+#ifdef RGB_MATRIX_ENABLE
+
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C_1, A_1, B_1},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+ {0, C_11, A_11, B_11},
+ {0, C_12, A_12, B_12},
+ {0, C_13, A_13, B_13},
+ {0, C_14, A_14, B_14},
+ {0, C_15, A_15, B_15},
+ {0, C_16, A_16, B_16},
+
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_8, D_8, E_8},
+ {0, F_9, D_9, E_9},
+ {0, F_10, D_10, E_10},
+ {0, F_11, D_11, E_11},
+ {0, F_12, D_12, E_12},
+ {0, F_13, D_13, E_13},
+ {0, F_14, D_14, E_14},
+ {0, F_16, D_16, E_16},
+
+ {0, I_1, G_1, H_1},
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {0, I_4, G_4, H_4},
+ {0, I_5, G_5, H_5},
+ {0, I_6, G_6, H_6},
+ {0, I_7, G_7, H_7},
+ {0, I_8, G_8, H_8},
+ {0, I_9, G_9, H_9},
+ {0, I_10, G_10, H_10},
+ {0, I_11, G_11, H_11},
+ {0, I_12, G_12, H_12},
+ {0, I_13, G_13, H_13},
+ {0, I_16, G_16, H_16},
+
+ {0, L_1, J_1, K_1},
+ {0, L_2, J_2, K_2},
+ {0, L_3, J_3, K_3},
+ {0, L_4, J_4, K_4},
+ {0, L_5, J_5, K_5},
+ {0, L_6, J_6, K_6},
+ {0, L_7, J_7, K_7},
+ {0, L_8, J_8, K_8},
+ {0, L_9, J_9, K_9},
+ {0, L_10, J_10, K_10},
+ {0, L_11, J_11, K_11},
+ {0, L_12, J_12, K_12},
+ {0, L_14, J_14, K_14},
+ {0, I_14, G_14, H_14},
+ {0, L_16, J_16, K_16},
+
+ {1, C_1, A_1, B_1},
+ {1, C_2, A_2, B_2},
+ {1, C_3, A_3, B_3},
+ {1, C_4, A_4, B_4},
+ {1, C_5, A_5, B_5},
+ {1, C_6, A_6, B_6},
+ {1, C_7, A_7, B_7},
+ {1, C_8, A_8, B_8},
+ {1, C_9, A_9, B_9},
+ {1, C_10, A_10, B_10},
+ {1, C_11, A_11, B_11},
+ {1, C_12, A_12, B_12},
+ {1, C_14, A_14, B_14},
+ {1, C_15, A_15, B_15},
+
+ {1, F_1, D_1, E_1},
+ {1, F_2, D_2, E_2},
+ {1, F_3, D_3, E_3},
+ {1, F_7, D_7, E_7},
+ {1, F_11, D_11, E_11},
+ {1, F_12, D_12, E_12},
+ {1, F_13, D_13, E_13},
+ {1, F_14, D_14, E_14},
+ {1, F_15, D_15, E_15},
+ {1, F_16, D_16, E_16}
+};
+
+#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q1/iso_encoder/keymaps/default/keymap.c b/keyboards/keychron/q1v1/iso_encoder/keymaps/default/keymap.c
index 237d9a3f1e..237d9a3f1e 100644
--- a/keyboards/keychron/q1/iso_encoder/keymaps/default/keymap.c
+++ b/keyboards/keychron/q1v1/iso_encoder/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q1/iso_encoder/keymaps/default/rules.mk b/keyboards/keychron/q1v1/iso_encoder/keymaps/default/rules.mk
index a40474b4d5..a40474b4d5 100644
--- a/keyboards/keychron/q1/iso_encoder/keymaps/default/rules.mk
+++ b/keyboards/keychron/q1v1/iso_encoder/keymaps/default/rules.mk
diff --git a/keyboards/keychron/q1/iso_encoder/keymaps/keychron/keymap.c b/keyboards/keychron/q1v1/iso_encoder/keymaps/keychron/keymap.c
index b007e56fba..b007e56fba 100644
--- a/keyboards/keychron/q1/iso_encoder/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q1v1/iso_encoder/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q1/iso_encoder/keymaps/keychron/rules.mk b/keyboards/keychron/q1v1/iso_encoder/keymaps/keychron/rules.mk
index 2d17902f98..2d17902f98 100644
--- a/keyboards/keychron/q1/iso_encoder/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q1v1/iso_encoder/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q1/iso_encoder/keymaps/via/keymap.c b/keyboards/keychron/q1v1/iso_encoder/keymaps/via/keymap.c
index 47f04d8a29..47f04d8a29 100644
--- a/keyboards/keychron/q1/iso_encoder/keymaps/via/keymap.c
+++ b/keyboards/keychron/q1v1/iso_encoder/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q1/iso_encoder/keymaps/via/rules.mk b/keyboards/keychron/q1v1/iso_encoder/keymaps/via/rules.mk
index 4253f570f0..4253f570f0 100644
--- a/keyboards/keychron/q1/iso_encoder/keymaps/via/rules.mk
+++ b/keyboards/keychron/q1v1/iso_encoder/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q1/iso_encoder/readme.md b/keyboards/keychron/q1v1/iso_encoder/readme.md
index 66db24a197..66db24a197 100644
--- a/keyboards/keychron/q1/iso_encoder/readme.md
+++ b/keyboards/keychron/q1v1/iso_encoder/readme.md
diff --git a/keyboards/keychron/q1v1/iso_encoder/rules.mk b/keyboards/keychron/q1v1/iso_encoder/rules.mk
new file mode 100644
index 0000000000..6968c52335
--- /dev/null
+++ b/keyboards/keychron/q1v1/iso_encoder/rules.mk
@@ -0,0 +1,2 @@
+# This file intentionally left blank
+
diff --git a/keyboards/keychron/q1v1/q1v1.c b/keyboards/keychron/q1v1/q1v1.c
new file mode 100644
index 0000000000..2ed907adb9
--- /dev/null
+++ b/keyboards/keychron/q1v1/q1v1.c
@@ -0,0 +1,73 @@
+/* Copyright 2021 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+#ifdef DIP_SWITCH_ENABLE
+
+bool dip_switch_update_kb(uint8_t index, bool active) {
+ if (!dip_switch_update_user(index, active)) { return false;}
+ if (index == 0) {
+ default_layer_set(1UL << (active ? 2 : 0));
+ }
+ return true;
+}
+
+#endif // DIP_SWITCH_ENABLE
+
+#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
+
+bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
+ if (!process_record_user(keycode, record)) { return false; }
+ switch (keycode) {
+#ifdef RGB_MATRIX_ENABLE
+ case RGB_TOG:
+ if (record->event.pressed) {
+ switch (rgb_matrix_get_flags()) {
+ case LED_FLAG_ALL: {
+ rgb_matrix_set_flags(LED_FLAG_NONE);
+ rgb_matrix_set_color_all(0, 0, 0);
+ } break;
+ default: {
+ rgb_matrix_set_flags(LED_FLAG_ALL);
+ } break;
+ }
+ }
+ if (!rgb_matrix_is_enabled()) {
+ rgb_matrix_set_flags(LED_FLAG_ALL);
+ rgb_matrix_enable();
+ }
+ return false;
+#endif
+ }
+ return true;
+}
+
+bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) {
+ if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) { return false; }
+ // RGB_MATRIX_INDICATOR_SET_COLOR(index, red, green, blue);
+
+ if (host_keyboard_led_state().caps_lock) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_LED_INDEX, 255, 255, 255);
+ } else {
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_LED_INDEX, 0, 0, 0);
+ }
+ }
+ return true;
+}
+
+#endif // CAPS_LOCK_LED_INDEX \ No newline at end of file
diff --git a/keyboards/keychron/q1v1/readme.md b/keyboards/keychron/q1v1/readme.md
new file mode 100644
index 0000000000..af54da8195
--- /dev/null
+++ b/keyboards/keychron/q1v1/readme.md
@@ -0,0 +1,27 @@
+# Keychron Q1v1
+
+![Keychron Q1v1](https://i.imgur.com/BbJNGLY.jpg)
+
+A customizable 75% keyboard.
+
+* Keyboard Maintainer: [Keychron](https://github.com/keychron)
+* Hardware Supported: Keychron Q1v1
+* Hardware Availability: [Keychron Q1v1 QMK Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q1-qmk-custom-mechanical-keyboard)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make keychron/q1v1/ansi:default
+ make keychron/q1v1/ansi_encoder:default
+ make keychron/q1v1/iso:default
+ make keychron/q1v1/iso_encoder:default
+
+Flashing example for this keyboard:
+
+ make keychron/q1v1/ansi:default:flash
+ make keychron/q1v1/ansi_encoder:default:flash
+ make keychron/q1v1/iso:default:flash
+ make keychron/q1v1/iso_encoder:default:flash
+
+**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard.
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file
diff --git a/keyboards/keychron/q1v2/ansi/ansi.c b/keyboards/keychron/q1v2/ansi/ansi.c
index ea6c6278d1..3b80c9d5c4 100644
--- a/keyboards/keychron/q1v2/ansi/ansi.c
+++ b/keyboards/keychron/q1v2/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q1v2/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q1v2/ansi_encoder/ansi_encoder.c
index ea6c6278d1..3b80c9d5c4 100644
--- a/keyboards/keychron/q1v2/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q1v2/ansi_encoder/ansi_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q1v2/config.h b/keyboards/keychron/q1v2/config.h
index e2d331c1ac..5e2a7eaa54 100644
--- a/keyboards/keychron/q1v2/config.h
+++ b/keyboards/keychron/q1v2/config.h
@@ -17,9 +17,8 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -44,10 +43,9 @@
#define WEAR_LEVELING_LOGICAL_SIZE 2048
#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* Set LED driver current */
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50 }
// RGB Matrix Animation modes. Explicitly enabled
diff --git a/keyboards/keychron/q1v2/info.json b/keyboards/keychron/q1v2/info.json
index c4a75f0283..b40c41c760 100644
--- a/keyboards/keychron/q1v2/info.json
+++ b/keyboards/keychron/q1v2/info.json
@@ -30,7 +30,7 @@
},
"diode_direction": "ROW2COL",
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"band_spiral_val": true,
"breathing": true,
diff --git a/keyboards/keychron/q1v2/iso/iso.c b/keyboards/keychron/q1v2/iso/iso.c
index eae39c8d61..d879e55083 100644
--- a/keyboards/keychron/q1v2/iso/iso.c
+++ b/keyboards/keychron/q1v2/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q1v2/iso_encoder/iso_encoder.c b/keyboards/keychron/q1v2/iso_encoder/iso_encoder.c
index eae39c8d61..d879e55083 100644
--- a/keyboards/keychron/q1v2/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q1v2/iso_encoder/iso_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q1v2/jis/jis.c b/keyboards/keychron/q1v2/jis/jis.c
index 6bfcbad3e4..e8c0112649 100644
--- a/keyboards/keychron/q1v2/jis/jis.c
+++ b/keyboards/keychron/q1v2/jis/jis.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q1v2/jis_encoder/jis_encoder.c b/keyboards/keychron/q1v2/jis_encoder/jis_encoder.c
index 6bfcbad3e4..e8c0112649 100644
--- a/keyboards/keychron/q1v2/jis_encoder/jis_encoder.c
+++ b/keyboards/keychron/q1v2/jis_encoder/jis_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q2/ansi/ansi.c b/keyboards/keychron/q2/ansi/ansi.c
index 28f91269c4..d0ff0a1869 100644
--- a/keyboards/keychron/q2/ansi/ansi.c
+++ b/keyboards/keychron/q2/ansi/ansi.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -97,33 +97,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, F_16, D_16, E_16},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 65, 42, 43 },
- { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56 },
- { 57, 58, 59, __, __, __, 60, __, __, __, 61, 62, 63, 64, 66 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {15,0}, {29,0}, {44,0}, {59,0}, {73,0}, {88,0}, {103,0}, {118,0}, {132,0}, {147,0}, {162,0}, {176,0}, {198,0}, {224,0},
- {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {140,15}, {154,15}, {169,15}, {184,15}, {202,15}, {224,15},
- {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {129,30}, {143,30}, {158,30}, {173,30}, {196,30}, {224,30},
- {9,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {151,45}, {165,45}, {185,45}, {209,49},
- {2,60}, {20,60}, {39,60}, {94,60}, {147,60}, {162,60}, {176,60}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q2/ansi/config.h b/keyboards/keychron/q2/ansi/config.h
index 6c39432b74..41b92074be 100644
--- a/keyboards/keychron/q2/ansi/config.h
+++ b/keyboards/keychron/q2/ansi/config.h
@@ -17,6 +17,7 @@
#pragma once
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 34
-#define DRIVER_2_LED_TOTAL 33
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 67
+
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 30 \ No newline at end of file
diff --git a/keyboards/keychron/q2/ansi/info.json b/keyboards/keychron/q2/ansi/info.json
index 8ed601fe8f..d419d31eef 100644
--- a/keyboards/keychron/q2/ansi/info.json
+++ b/keyboards/keychron/q2/ansi/info.json
@@ -1,23 +1,84 @@
{
- "keyboard_name": "Q2",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0110",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 44, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 59, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 73, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 88, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 103, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 118, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 132, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 147, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 22, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 51, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 66, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 81, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 95, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 110, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 125, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 140, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 154, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 169, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 184, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 202, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 30, "flags": 1},
+ {"matrix": [2, 1], "x": 26, "y": 30, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 30, "flags": 4},
+ {"matrix": [2, 3], "x": 55, "y": 30, "flags": 4},
+ {"matrix": [2, 4], "x": 70, "y": 30, "flags": 4},
+ {"matrix": [2, 5], "x": 84, "y": 30, "flags": 4},
+ {"matrix": [2, 6], "x": 99, "y": 30, "flags": 4},
+ {"matrix": [2, 7], "x": 114, "y": 30, "flags": 4},
+ {"matrix": [2, 8], "x": 129, "y": 30, "flags": 4},
+ {"matrix": [2, 9], "x": 143, "y": 30, "flags": 4},
+ {"matrix": [2, 10], "x": 158, "y": 30, "flags": 4},
+ {"matrix": [2, 11], "x": 173, "y": 30, "flags": 4},
+ {"matrix": [2, 13], "x": 196, "y": 30, "flags": 1},
+ {"matrix": [2, 14], "x": 224, "y": 30, "flags": 1},
+
+ {"matrix": [3, 0], "x": 9, "y": 45, "flags": 1},
+ {"matrix": [3, 2], "x": 33, "y": 45, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 45, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 45, "flags": 4},
+ {"matrix": [3, 5], "x": 77, "y": 45, "flags": 4},
+ {"matrix": [3, 6], "x": 92, "y": 45, "flags": 4},
+ {"matrix": [3, 7], "x": 106, "y": 45, "flags": 4},
+ {"matrix": [3, 8], "x": 121, "y": 45, "flags": 4},
+ {"matrix": [3, 9], "x": 136, "y": 45, "flags": 4},
+ {"matrix": [3, 10], "x": 151, "y": 45, "flags": 4},
+ {"matrix": [3, 11], "x": 165, "y": 45, "flags": 4},
+ {"matrix": [3, 13], "x": 185, "y": 45, "flags": 1},
+ {"matrix": [3, 14], "x": 209, "y": 49, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 60, "flags": 1},
+ {"matrix": [4, 1], "x": 20, "y": 60, "flags": 1},
+ {"matrix": [4, 2], "x": 39, "y": 60, "flags": 1},
+ {"matrix": [4, 6], "x": 94, "y": 60, "flags": 4},
+ {"matrix": [4, 10], "x": 147, "y": 60, "flags": 1},
+ {"matrix": [4, 11], "x": 162, "y": 60, "flags": 1},
+ {"matrix": [4, 12], "x": 176, "y": 60, "flags": 1},
+ {"matrix": [4, 13], "x": 195, "y": 64, "flags": 1},
+ {"matrix": [2, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+
+ ]
},
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_ansi_67": {
"layout": [
diff --git a/keyboards/keychron/q2/ansi/rules.mk b/keyboards/keychron/q2/ansi/rules.mk
index ede7d6fab2..7ff128fa69 100644
--- a/keyboards/keychron/q2/ansi/rules.mk
+++ b/keyboards/keychron/q2/ansi/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = no # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q2/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q2/ansi_encoder/ansi_encoder.c
index 28f91269c4..d0ff0a1869 100644
--- a/keyboards/keychron/q2/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q2/ansi_encoder/ansi_encoder.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -97,33 +97,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, F_16, D_16, E_16},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 65, 42, 43 },
- { 44, __, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, __, 55, 56 },
- { 57, 58, 59, __, __, __, 60, __, __, __, 61, 62, 63, 64, 66 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {15,0}, {29,0}, {44,0}, {59,0}, {73,0}, {88,0}, {103,0}, {118,0}, {132,0}, {147,0}, {162,0}, {176,0}, {198,0}, {224,0},
- {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {140,15}, {154,15}, {169,15}, {184,15}, {202,15}, {224,15},
- {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {129,30}, {143,30}, {158,30}, {173,30}, {196,30}, {224,30},
- {9,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {151,45}, {165,45}, {185,45}, {209,49},
- {2,60}, {20,60}, {39,60}, {94,60}, {147,60}, {162,60}, {176,60}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q2/ansi_encoder/config.h b/keyboards/keychron/q2/ansi_encoder/config.h
index b7e4b1e7f8..41b92074be 100644
--- a/keyboards/keychron/q2/ansi_encoder/config.h
+++ b/keyboards/keychron/q2/ansi_encoder/config.h
@@ -17,9 +17,7 @@
#pragma once
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 34
-#define DRIVER_2_LED_TOTAL 33
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 67
-/* Encoder used pins */
-#define ENCODER_DEFAULT_POS 0x3
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 30 \ No newline at end of file
diff --git a/keyboards/keychron/q2/ansi_encoder/info.json b/keyboards/keychron/q2/ansi_encoder/info.json
index c9587d20ea..1e1f22bada 100644
--- a/keyboards/keychron/q2/ansi_encoder/info.json
+++ b/keyboards/keychron/q2/ansi_encoder/info.json
@@ -1,28 +1,90 @@
{
- "keyboard_name": "Q2",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0111",
"device_version": "1.0.0"
},
- "rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
- },
- "diode_direction": "ROW2COL",
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "A10", "pin_b": "B5"}
]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 44, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 59, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 73, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 88, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 103, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 118, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 132, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 147, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 22, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 51, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 66, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 81, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 95, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 110, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 125, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 140, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 154, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 169, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 184, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 202, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 30, "flags": 1},
+ {"matrix": [2, 1], "x": 26, "y": 30, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 30, "flags": 4},
+ {"matrix": [2, 3], "x": 55, "y": 30, "flags": 4},
+ {"matrix": [2, 4], "x": 70, "y": 30, "flags": 4},
+ {"matrix": [2, 5], "x": 84, "y": 30, "flags": 4},
+ {"matrix": [2, 6], "x": 99, "y": 30, "flags": 4},
+ {"matrix": [2, 7], "x": 114, "y": 30, "flags": 4},
+ {"matrix": [2, 8], "x": 129, "y": 30, "flags": 4},
+ {"matrix": [2, 9], "x": 143, "y": 30, "flags": 4},
+ {"matrix": [2, 10], "x": 158, "y": 30, "flags": 4},
+ {"matrix": [2, 11], "x": 173, "y": 30, "flags": 4},
+ {"matrix": [2, 13], "x": 196, "y": 30, "flags": 1},
+ {"matrix": [2, 14], "x": 224, "y": 30, "flags": 1},
+
+ {"matrix": [3, 0], "x": 9, "y": 45, "flags": 1},
+ {"matrix": [3, 2], "x": 33, "y": 45, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 45, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 45, "flags": 4},
+ {"matrix": [3, 5], "x": 77, "y": 45, "flags": 4},
+ {"matrix": [3, 6], "x": 92, "y": 45, "flags": 4},
+ {"matrix": [3, 7], "x": 106, "y": 45, "flags": 4},
+ {"matrix": [3, 8], "x": 121, "y": 45, "flags": 4},
+ {"matrix": [3, 9], "x": 136, "y": 45, "flags": 4},
+ {"matrix": [3, 10], "x": 151, "y": 45, "flags": 4},
+ {"matrix": [3, 11], "x": 165, "y": 45, "flags": 4},
+ {"matrix": [3, 13], "x": 185, "y": 45, "flags": 1},
+ {"matrix": [3, 14], "x": 209, "y": 49, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 60, "flags": 1},
+ {"matrix": [4, 1], "x": 20, "y": 60, "flags": 1},
+ {"matrix": [4, 2], "x": 39, "y": 60, "flags": 1},
+ {"matrix": [4, 6], "x": 94, "y": 60, "flags": 4},
+ {"matrix": [4, 10], "x": 147, "y": 60, "flags": 1},
+ {"matrix": [4, 11], "x": 162, "y": 60, "flags": 1},
+ {"matrix": [4, 12], "x": 176, "y": 60, "flags": 1},
+ {"matrix": [4, 13], "x": 195, "y": 64, "flags": 1},
+ {"matrix": [2, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+
+ ]
+ },
"layouts": {
"LAYOUT_ansi_67": {
"layout": [
diff --git a/keyboards/keychron/q2/ansi_encoder/rules.mk b/keyboards/keychron/q2/ansi_encoder/rules.mk
index b294cf950e..7ff128fa69 100644
--- a/keyboards/keychron/q2/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q2/ansi_encoder/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q2/config.h b/keyboards/keychron/q2/config.h
index 63e31cd01d..831612326b 100644
--- a/keyboards/keychron/q2/config.h
+++ b/keyboards/keychron/q2/config.h
@@ -22,12 +22,10 @@
#define DIP_SWITCH_MATRIX_GRID { {4, 4} }
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* Disable DIP switch in matrix data */
#define MATRIX_MASKED
@@ -35,61 +33,8 @@
/* turn off effects when suspended */
#define RGB_DISABLE_WHEN_USB_SUSPENDED
-/* Use 5 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
-
-/* EEPROM Driver Configuration */
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-// #define ENABLE_RGB_MATRIX_ALPHAS_MODS
-// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_BREATHING
-// #define ENABLE_RGB_MATRIX_BAND_SAT
-// #define ENABLE_RGB_MATRIX_BAND_VAL
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_ALL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#define ENABLE_RGB_MATRIX_DUAL_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-// #define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-// #define ENABLE_RGB_MATRIX_HUE_BREATHING
-// #define ENABLE_RGB_MATRIX_HUE_PENDULUM
-// #define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-// #define ENABLE_RGB_MATRIX_PIXEL_FLOW
-// #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-#define ENABLE_RGB_MATRIX_SPLASH
-// #define ENABLE_RGB_MATRIX_MULTISPLASH
-#define ENABLE_RGB_MATRIX_SOLID_SPLASH
-// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
+/* Encoder Configuration*/
+#define ENCODER_DEFAULT_POS 0x3
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/keychron/q2/info.json b/keyboards/keychron/q2/info.json
new file mode 100644
index 0000000000..47d9aa83b1
--- /dev/null
+++ b/keyboards/keychron/q2/info.json
@@ -0,0 +1,60 @@
+{
+ "keyboard_name": "Keychron Q2",
+ "manufacturer": "Keychron",
+ "maintainer": "lalalademaxiya1",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "dip_switch": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "matrix_pins": {
+ "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
+ "rows": ["B4", "B3", "A15", "A14", "A13"]
+ },
+ "processor": "STM32L432",
+ "rgb_matrix": {
+ "animations": {
+ "band_spiral_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "digital_rain": true,
+ "dual_beacon": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "rainbow_beacon": true,
+ "rainbow_moving_chevron": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_simple": true,
+ "solid_splash": true,
+ "splash": true,
+ "typing_heatmap": true
+ },
+ "driver": "snled27351"
+ },
+ "url": "https://github.com/Keychron",
+ "usb": {
+ "vid": "0x3434"
+ }
+} \ No newline at end of file
diff --git a/keyboards/keychron/q2/iso/config.h b/keyboards/keychron/q2/iso/config.h
index 35a86d5839..b463f7886e 100644
--- a/keyboards/keychron/q2/iso/config.h
+++ b/keyboards/keychron/q2/iso/config.h
@@ -17,6 +17,7 @@
#pragma once
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 34
-#define DRIVER_2_LED_TOTAL 34
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 68
+
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 29 \ No newline at end of file
diff --git a/keyboards/keychron/q2/iso/info.json b/keyboards/keychron/q2/iso/info.json
index e3cad79b14..8a2023320d 100644
--- a/keyboards/keychron/q2/iso/info.json
+++ b/keyboards/keychron/q2/iso/info.json
@@ -1,23 +1,85 @@
{
- "keyboard_name": "Q2",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0112",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 44, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 59, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 73, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 88, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 103, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 118, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 132, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 147, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 22, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 51, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 66, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 81, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 95, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 110, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 125, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 140, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 154, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 169, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 184, "y": 15, "flags": 4},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 30, "flags": 1},
+ {"matrix": [2, 1], "x": 26, "y": 30, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 30, "flags": 4},
+ {"matrix": [2, 3], "x": 55, "y": 30, "flags": 4},
+ {"matrix": [2, 4], "x": 70, "y": 30, "flags": 4},
+ {"matrix": [2, 5], "x": 84, "y": 30, "flags": 4},
+ {"matrix": [2, 6], "x": 99, "y": 30, "flags": 4},
+ {"matrix": [2, 7], "x": 114, "y": 30, "flags": 4},
+ {"matrix": [2, 8], "x": 129, "y": 30, "flags": 4},
+ {"matrix": [2, 9], "x": 143, "y": 30, "flags": 4},
+ {"matrix": [2, 10], "x": 158, "y": 30, "flags": 4},
+ {"matrix": [2, 11], "x": 173, "y": 30, "flags": 4},
+ {"matrix": [2, 13], "x": 187, "y": 30, "flags": 4},
+ {"matrix": [1, 13], "x": 204, "y": 23, "flags": 1},
+ {"matrix": [2, 14], "x": 224, "y": 30, "flags": 1},
+
+ {"matrix": [3, 0], "x": 9, "y": 45, "flags": 1},
+ {"matrix": [3, 1], "x": 18, "y": 45, "flags": 4},
+ {"matrix": [3, 2], "x": 33, "y": 45, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 45, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 45, "flags": 4},
+ {"matrix": [3, 5], "x": 77, "y": 45, "flags": 4},
+ {"matrix": [3, 6], "x": 92, "y": 45, "flags": 4},
+ {"matrix": [3, 7], "x": 106, "y": 45, "flags": 4},
+ {"matrix": [3, 8], "x": 121, "y": 45, "flags": 4},
+ {"matrix": [3, 9], "x": 136, "y": 45, "flags": 4},
+ {"matrix": [3, 10], "x": 151, "y": 45, "flags": 4},
+ {"matrix": [3, 11], "x": 165, "y": 45, "flags": 4},
+ {"matrix": [3, 13], "x": 185, "y": 45, "flags": 1},
+ {"matrix": [3, 14], "x": 209, "y": 49, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 60, "flags": 1},
+ {"matrix": [4, 1], "x": 20, "y": 60, "flags": 1},
+ {"matrix": [4, 2], "x": 39, "y": 60, "flags": 1},
+ {"matrix": [4, 6], "x": 94, "y": 60, "flags": 4},
+ {"matrix": [4, 10], "x": 147, "y": 60, "flags": 1},
+ {"matrix": [4, 11], "x": 162, "y": 60, "flags": 1},
+ {"matrix": [4, 12], "x": 176, "y": 60, "flags": 1},
+ {"matrix": [4, 13], "x": 195, "y": 64, "flags": 1},
+ {"matrix": [2, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+
+ ]
},
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_iso_68": {
"layout": [
diff --git a/keyboards/keychron/q2/iso/iso.c b/keyboards/keychron/q2/iso/iso.c
index 1f2c76468e..a54c90bc4b 100644
--- a/keyboards/keychron/q2/iso/iso.c
+++ b/keyboards/keychron/q2/iso/iso.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -98,33 +98,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, F_16, D_16, E_16}
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 42, 28 },
- { 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 66, 41, 43 },
- { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57 },
- { 58, 59, 60, __, __, __, 61, __, __, __, 62, 63, 64, 65, 67 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {15,0}, {29,0}, {44,0}, {59,0}, {73,0}, {88,0}, {103,0}, {118,0}, {132,0}, {147,0}, {162,0}, {176,0}, {198,0}, {224,0},
- {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {140,15}, {154,15}, {169,15}, {184,15}, {224,15},
- {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {129,30}, {143,30}, {158,30}, {173,30}, {187,30}, {204,23}, {224,30},
- {2,45}, {18,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {151,45}, {165,45}, {185,45}, {209,49},
- {2,60}, {20,60}, {39,60}, {94,60}, {147,60}, {162,60}, {176,60}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q2/iso/rules.mk b/keyboards/keychron/q2/iso/rules.mk
index b3de962291..7ff128fa69 100644
--- a/keyboards/keychron/q2/iso/rules.mk
+++ b/keyboards/keychron/q2/iso/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = no # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q2/iso_encoder/config.h b/keyboards/keychron/q2/iso_encoder/config.h
index 376b92b6fa..b463f7886e 100644
--- a/keyboards/keychron/q2/iso_encoder/config.h
+++ b/keyboards/keychron/q2/iso_encoder/config.h
@@ -17,9 +17,7 @@
#pragma once
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 34
-#define DRIVER_2_LED_TOTAL 34
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 68
-/* Encoder used pins */
-#define ENCODER_DEFAULT_POS 0x3
+/* Enable caps-lock LED */
+#define CAPS_LOCK_LED_INDEX 29 \ No newline at end of file
diff --git a/keyboards/keychron/q2/iso_encoder/info.json b/keyboards/keychron/q2/iso_encoder/info.json
index 5030e6be42..b828c88931 100644
--- a/keyboards/keychron/q2/iso_encoder/info.json
+++ b/keyboards/keychron/q2/iso_encoder/info.json
@@ -1,28 +1,91 @@
{
- "keyboard_name": "Q2",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0113",
"device_version": "1.0.0"
},
- "rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
- },
- "diode_direction": "ROW2COL",
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "A10", "pin_b": "B5"}
]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 44, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 59, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 73, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 88, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 103, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 118, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 132, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 147, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 22, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 51, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 66, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 81, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 95, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 110, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 125, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 140, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 154, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 169, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 184, "y": 15, "flags": 4},
+ {"matrix": [1, 14], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 30, "flags": 1},
+ {"matrix": [2, 1], "x": 26, "y": 30, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 30, "flags": 4},
+ {"matrix": [2, 3], "x": 55, "y": 30, "flags": 4},
+ {"matrix": [2, 4], "x": 70, "y": 30, "flags": 4},
+ {"matrix": [2, 5], "x": 84, "y": 30, "flags": 4},
+ {"matrix": [2, 6], "x": 99, "y": 30, "flags": 4},
+ {"matrix": [2, 7], "x": 114, "y": 30, "flags": 4},
+ {"matrix": [2, 8], "x": 129, "y": 30, "flags": 4},
+ {"matrix": [2, 9], "x": 143, "y": 30, "flags": 4},
+ {"matrix": [2, 10], "x": 158, "y": 30, "flags": 4},
+ {"matrix": [2, 11], "x": 173, "y": 30, "flags": 4},
+ {"matrix": [2, 13], "x": 187, "y": 30, "flags": 4},
+ {"matrix": [1, 13], "x": 204, "y": 23, "flags": 1},
+ {"matrix": [2, 14], "x": 224, "y": 30, "flags": 1},
+
+ {"matrix": [3, 0], "x": 9, "y": 45, "flags": 1},
+ {"matrix": [3, 1], "x": 18, "y": 45, "flags": 4},
+ {"matrix": [3, 2], "x": 33, "y": 45, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 45, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 45, "flags": 4},
+ {"matrix": [3, 5], "x": 77, "y": 45, "flags": 4},
+ {"matrix": [3, 6], "x": 92, "y": 45, "flags": 4},
+ {"matrix": [3, 7], "x": 106, "y": 45, "flags": 4},
+ {"matrix": [3, 8], "x": 121, "y": 45, "flags": 4},
+ {"matrix": [3, 9], "x": 136, "y": 45, "flags": 4},
+ {"matrix": [3, 10], "x": 151, "y": 45, "flags": 4},
+ {"matrix": [3, 11], "x": 165, "y": 45, "flags": 4},
+ {"matrix": [3, 13], "x": 185, "y": 45, "flags": 1},
+ {"matrix": [3, 14], "x": 209, "y": 49, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 60, "flags": 1},
+ {"matrix": [4, 1], "x": 20, "y": 60, "flags": 1},
+ {"matrix": [4, 2], "x": 39, "y": 60, "flags": 1},
+ {"matrix": [4, 6], "x": 94, "y": 60, "flags": 4},
+ {"matrix": [4, 10], "x": 147, "y": 60, "flags": 1},
+ {"matrix": [4, 11], "x": 162, "y": 60, "flags": 1},
+ {"matrix": [4, 12], "x": 176, "y": 60, "flags": 1},
+ {"matrix": [4, 13], "x": 195, "y": 64, "flags": 1},
+ {"matrix": [2, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+
+ ]
+ },
"layouts": {
"LAYOUT_iso_68": {
"layout": [
diff --git a/keyboards/keychron/q2/iso_encoder/iso_encoder.c b/keyboards/keychron/q2/iso_encoder/iso_encoder.c
index 1f2c76468e..a54c90bc4b 100644
--- a/keyboards/keychron/q2/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q2/iso_encoder/iso_encoder.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -98,33 +98,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, F_16, D_16, E_16}
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
- { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 42, 28 },
- { 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 66, 41, 43 },
- { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57 },
- { 58, 59, 60, __, __, __, 61, __, __, __, 62, 63, 64, 65, 67 }
- },
- {
- // LED Index to Physical Position
- {0,0}, {15,0}, {29,0}, {44,0}, {59,0}, {73,0}, {88,0}, {103,0}, {118,0}, {132,0}, {147,0}, {162,0}, {176,0}, {198,0}, {224,0},
- {4,15}, {22,15}, {37,15}, {51,15}, {66,15}, {81,15}, {95,15}, {110,15}, {125,15}, {140,15}, {154,15}, {169,15}, {184,15}, {224,15},
- {6,30}, {26,30}, {40,30}, {55,30}, {70,30}, {84,30}, {99,30}, {114,30}, {129,30}, {143,30}, {158,30}, {173,30}, {187,30}, {204,23}, {224,30},
- {2,45}, {18,45}, {33,45}, {48,45}, {62,45}, {77,45}, {92,45}, {106,45}, {121,45}, {136,45}, {151,45}, {165,45}, {185,45}, {209,49},
- {2,60}, {20,60}, {39,60}, {94,60}, {147,60}, {162,60}, {176,60}, {195,64}, {209,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q2/iso_encoder/keymaps/dhertz/keymap.c b/keyboards/keychron/q2/iso_encoder/keymaps/dhertz/keymap.c
deleted file mode 100644
index 0d4f7e6a22..0000000000
--- a/keyboards/keychron/q2/iso_encoder/keymaps/dhertz/keymap.c
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright 2022 Dan Hertz (@dhertz)
-// SPDX-License-Identifier: GPL-3.0
-
-#include QMK_KEYBOARD_H
-#include "dhertz.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0: Default Layer
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|( )|
- * |---------------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter|Del|
- * |------------------------------------------------------` |---|
- * |SrCtl | A| S| D| F| G| H| J| K| L| ;| '| \| |Hom|
- * |---------------------------------------------------------------|
- * |Shif| #| Z| X| C| V| B| N| M| ,| .| /|Shift |Up | |
- * |---------------------------------------------------------------|
- * |NcCtl| Alt| CTab| LyrSpc |CGv|Alt|CSL|Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [0] = LAYOUT_iso_68(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_MUTE,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_DEL,
- SRCH_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_HOME,
- KC_LSFT, HSH_TLD, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- NC_CTL, KC_LALT, CMD_TAB_CMD, LYR_SPC, CMD_GRV_CMD, KC_RALT, CMD_SFT_ALT_A, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- /* Layer 1: Special
- * ,---------------------------------------------------------------.
- * | §| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| |( )|
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | | | | | |
- * |------------------------------------------------------` |---|
- * | | | | | | | | | |CSL| | | `| | |
- * |---------------------------------------------------------------|
- * | | `| | |CAC| | | | | | | | |PgU| |
- * |---------------------------------------------------------------|
- * | | | | | | | |Hom|PgD|End|
- * `---------------------------------------------------------------'
- */
- [1] = LAYOUT_iso_68(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F10, KC_F11, KC_TRNS, CMD_SFT_A,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, CMD_SFT_L, KC_TRNS, KC_TRNS, KC_NUBS, KC_TRNS, KC_END,
- KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS, CMD_ALT_C, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END
- ),
-};
-
-void keyboard_post_init_user(void) {
- rgb_matrix_mode(RGB_MATRIX_NONE);
- rgb_matrix_set_color_all(RGB_BLACK);
-}
-
-uint32_t cancel_cmd(uint32_t trigger_time, void *cb_arg) {
- if (get_highest_layer(layer_state|default_layer_state) > 0) {
- return 20;
- }
- unregister_code(KC_LCMD);
- return 0;
-}
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (get_highest_layer(layer_state|default_layer_state) == 0) {
- if (clockwise) {
- tap_code_delay(KC_VOLU, 10);
- } else {
- tap_code_delay(KC_VOLD, 10);
- }
- } else {
- if ((get_mods() & MOD_BIT(KC_LCMD)) != MOD_BIT(KC_LCMD)) {
- register_code(KC_LCMD);
- defer_exec(20, cancel_cmd, NULL);
- }
- if (clockwise) {
- tap_code(KC_TAB);
- } else {
- tap_code16(S(KC_TAB));
- }
- }
- return false;
-}
-
-bool rgb_matrix_indicators_user(void) {
- switch(get_highest_layer(layer_state|default_layer_state)) {
- case 1:
- rgb_matrix_set_color_all(RGB_BLACK);
- rgb_matrix_set_color_all(25, 25, 112);
- break;
- default:
- rgb_matrix_set_color_all(RGB_BLACK);
- break;
- }
- return false;
-}
diff --git a/keyboards/keychron/q2/iso_encoder/keymaps/dhertz/rules.mk b/keyboards/keychron/q2/iso_encoder/keymaps/dhertz/rules.mk
deleted file mode 100644
index 199bad85f3..0000000000
--- a/keyboards/keychron/q2/iso_encoder/keymaps/dhertz/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-DEFERRED_EXEC_ENABLE = yes
diff --git a/keyboards/keychron/q2/iso_encoder/rules.mk b/keyboards/keychron/q2/iso_encoder/rules.mk
index aba76c0944..7ff128fa69 100644
--- a/keyboards/keychron/q2/iso_encoder/rules.mk
+++ b/keyboards/keychron/q2/iso_encoder/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q2/jis/config.h b/keyboards/keychron/q2/jis/config.h
index 2d83933f9a..0d811e0845 100644
--- a/keyboards/keychron/q2/jis/config.h
+++ b/keyboards/keychron/q2/jis/config.h
@@ -17,11 +17,9 @@
#pragma once
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 35
-#define DRIVER_2_LED_TOTAL 36
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 71
-#define CKLED2001_CURRENT_TUNE { 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D }
+#define SNLED27351_CURRENT_TUNE { 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D }
/* Enable caps-lock LED */
#define CAPS_LOCK_LED_INDEX 30
diff --git a/keyboards/keychron/q2/jis/info.json b/keyboards/keychron/q2/jis/info.json
index d0af24b29d..834b89332e 100644
--- a/keyboards/keychron/q2/jis/info.json
+++ b/keyboards/keychron/q2/jis/info.json
@@ -1,23 +1,86 @@
{
- "keyboard_name": "Keychron Q2",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0114",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 4, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 4, "flags": 4},
+ {"matrix": [0, 2], "x": 29, "y": 4, "flags": 4},
+ {"matrix": [0, 3], "x": 44, "y": 4, "flags": 4},
+ {"matrix": [0, 4], "x": 59, "y": 4, "flags": 4},
+ {"matrix": [0, 5], "x": 73, "y": 4, "flags": 4},
+ {"matrix": [0, 6], "x": 88, "y": 4, "flags": 4},
+ {"matrix": [0, 7], "x": 103, "y": 4, "flags": 4},
+ {"matrix": [0, 8], "x": 117, "y": 4, "flags": 4},
+ {"matrix": [0, 9], "x": 132, "y": 4, "flags": 4},
+ {"matrix": [0, 10], "x": 146, "y": 4, "flags": 4},
+ {"matrix": [0, 11], "x": 161, "y": 4, "flags": 4},
+ {"matrix": [0, 12], "x": 176, "y": 4, "flags": 4},
+ {"matrix": [0, 13], "x": 190, "y": 4, "flags": 4},
+ {"matrix": [3, 1], "x": 205, "y": 4, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 19, "flags": 1},
+ {"matrix": [1, 1], "x": 22, "y": 19, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 19, "flags": 4},
+ {"matrix": [1, 3], "x": 51, "y": 19, "flags": 4},
+ {"matrix": [1, 4], "x": 66, "y": 19, "flags": 4},
+ {"matrix": [1, 5], "x": 81, "y": 19, "flags": 4},
+ {"matrix": [1, 6], "x": 95, "y": 19, "flags": 4},
+ {"matrix": [1, 7], "x": 110, "y": 19, "flags": 4},
+ {"matrix": [1, 8], "x": 125, "y": 19, "flags": 4},
+ {"matrix": [1, 9], "x": 139, "y": 19, "flags": 4},
+ {"matrix": [1, 10], "x": 154, "y": 19, "flags": 4},
+ {"matrix": [1, 11], "x": 168, "y": 19, "flags": 4},
+ {"matrix": [1, 12], "x": 183, "y": 19, "flags": 4},
+ {"matrix": [1, 14], "x": 224, "y": 19, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 34, "flags": 1},
+ {"matrix": [2, 1], "x": 26, "y": 34, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 34, "flags": 4},
+ {"matrix": [2, 3], "x": 55, "y": 34, "flags": 4},
+ {"matrix": [2, 4], "x": 70, "y": 34, "flags": 4},
+ {"matrix": [2, 5], "x": 84, "y": 34, "flags": 4},
+ {"matrix": [2, 6], "x": 99, "y": 34, "flags": 4},
+ {"matrix": [2, 7], "x": 114, "y": 34, "flags": 4},
+ {"matrix": [2, 8], "x": 128, "y": 34, "flags": 4},
+ {"matrix": [2, 9], "x": 143, "y": 34, "flags": 4},
+ {"matrix": [2, 10], "x": 158, "y": 34, "flags": 4},
+ {"matrix": [2, 11], "x": 172, "y": 34, "flags": 4},
+ {"matrix": [2, 13], "x": 187, "y": 34, "flags": 4},
+ {"matrix": [1, 13], "x": 207, "y": 29, "flags": 1},
+ {"matrix": [2, 14], "x": 224, "y": 34, "flags": 1},
+
+ {"matrix": [3, 0], "x": 9, "y": 49, "flags": 1},
+ {"matrix": [3, 2], "x": 33, "y": 49, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 49, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 49, "flags": 4},
+ {"matrix": [3, 5], "x": 77, "y": 49, "flags": 4},
+ {"matrix": [3, 6], "x": 92, "y": 49, "flags": 4},
+ {"matrix": [3, 7], "x": 106, "y": 49, "flags": 4},
+ {"matrix": [3, 8], "x": 121, "y": 49, "flags": 4},
+ {"matrix": [3, 9], "x": 136, "y": 49, "flags": 4},
+ {"matrix": [3, 10], "x": 150, "y": 49, "flags": 4},
+ {"matrix": [3, 11], "x": 179, "y": 49, "flags": 4},
+ {"matrix": [3, 13], "x": 194, "y": 49, "flags": 1},
+ {"matrix": [3, 14], "x": 209, "y": 49, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [4, 1], "x": 18, "y": 64, "flags": 1},
+ {"matrix": [4, 2], "x": 35, "y": 64, "flags": 1},
+ {"matrix": [4, 3], "x": 51, "y": 64, "flags": 1},
+ {"matrix": [4, 6], "x": 92, "y": 64, "flags": 4},
+ {"matrix": [4, 9], "x": 134, "y": 64, "flags": 1},
+ {"matrix": [4, 10], "x": 150, "y": 64, "flags": 1},
+ {"matrix": [4, 11], "x": 165, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 179, "y": 64, "flags": 1},
+ {"matrix": [4, 13], "x": 194, "y": 64, "flags": 1},
+ {"matrix": [2, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 223, "y": 64, "flags": 1}
+ ]
},
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_jis_71": {
"layout": [
diff --git a/keyboards/keychron/q2/jis/jis.c b/keyboards/keychron/q2/jis/jis.c
index 31ed1edc58..d877e225d9 100644
--- a/keyboards/keychron/q2/jis/jis.c
+++ b/keyboards/keychron/q2/jis/jis.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -102,33 +102,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, F_16, D_16, E_16}
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 43, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 69, 42, 44 },
- { 45, 14, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 },
- { 59, 60, 61, 62, __, __, 63, __, __, 64, 65, 66, 67, 68, 70 }
- },
- {
- // LED Index to Physical Position
- {0,4}, {15,4}, {29,4}, {44,4}, {59,4}, {73,4}, {88,4}, {103,4}, {117,4}, {132,4}, {146,4}, {161,4}, {176,4}, {190,4}, {205,4}, {224,0},
- {4,19}, {22,19}, {37,19}, {51,19}, {66,19}, {81,19}, {95,19}, {110,19}, {125,19}, {139,19}, {154,19}, {168,19}, {183,19}, {224,19},
- {6,34}, {26,34}, {40,34}, {55,34}, {70,34}, {84,34}, {99,34}, {114,34}, {128,34}, {143,34}, {158,34}, {172,34}, {187,34}, {207,29}, {224,34},
- {9,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {179,49}, {194,49}, {209,49},
- {2,64}, {18,64}, {35,64}, {51,64}, {92,64}, {134,64}, {150,64}, {165,64}, {179,64}, {194,64}, {209,64}, {223,64},
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q2/jis/rules.mk b/keyboards/keychron/q2/jis/rules.mk
index c37beecb9e..6e7633bfe0 100644
--- a/keyboards/keychron/q2/jis/rules.mk
+++ b/keyboards/keychron/q2/jis/rules.mk
@@ -1,17 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank
diff --git a/keyboards/keychron/q2/jis_encoder/config.h b/keyboards/keychron/q2/jis_encoder/config.h
index 5e7ab55143..0d811e0845 100644
--- a/keyboards/keychron/q2/jis_encoder/config.h
+++ b/keyboards/keychron/q2/jis_encoder/config.h
@@ -17,14 +17,9 @@
#pragma once
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 35
-#define DRIVER_2_LED_TOTAL 36
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 71
-#define CKLED2001_CURRENT_TUNE { 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D }
-
-/* Encoder Configuration */
-#define ENCODER_DEFAULT_POS 0x3
+#define SNLED27351_CURRENT_TUNE { 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D, 0xC0, 0xC0, 0x5D }
/* Enable caps-lock LED */
#define CAPS_LOCK_LED_INDEX 30
diff --git a/keyboards/keychron/q2/jis_encoder/info.json b/keyboards/keychron/q2/jis_encoder/info.json
index e409fb63a6..32b691742b 100644
--- a/keyboards/keychron/q2/jis_encoder/info.json
+++ b/keyboards/keychron/q2/jis_encoder/info.json
@@ -1,28 +1,92 @@
{
- "keyboard_name": "Keychron Q2",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0115",
"device_version": "1.0.0"
},
- "rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
- },
- "diode_direction": "ROW2COL",
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "A10", "pin_b": "B5"}
]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 4, "flags": 1},
+ {"matrix": [0, 1], "x": 15, "y": 4, "flags": 4},
+ {"matrix": [0, 2], "x": 29, "y": 4, "flags": 4},
+ {"matrix": [0, 3], "x": 44, "y": 4, "flags": 4},
+ {"matrix": [0, 4], "x": 59, "y": 4, "flags": 4},
+ {"matrix": [0, 5], "x": 73, "y": 4, "flags": 4},
+ {"matrix": [0, 6], "x": 88, "y": 4, "flags": 4},
+ {"matrix": [0, 7], "x": 103, "y": 4, "flags": 4},
+ {"matrix": [0, 8], "x": 117, "y": 4, "flags": 4},
+ {"matrix": [0, 9], "x": 132, "y": 4, "flags": 4},
+ {"matrix": [0, 10], "x": 146, "y": 4, "flags": 4},
+ {"matrix": [0, 11], "x": 161, "y": 4, "flags": 4},
+ {"matrix": [0, 12], "x": 176, "y": 4, "flags": 4},
+ {"matrix": [0, 13], "x": 190, "y": 4, "flags": 4},
+ {"matrix": [3, 1], "x": 205, "y": 4, "flags": 1},
+ {"matrix": [0, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 19, "flags": 1},
+ {"matrix": [1, 1], "x": 22, "y": 19, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 19, "flags": 4},
+ {"matrix": [1, 3], "x": 51, "y": 19, "flags": 4},
+ {"matrix": [1, 4], "x": 66, "y": 19, "flags": 4},
+ {"matrix": [1, 5], "x": 81, "y": 19, "flags": 4},
+ {"matrix": [1, 6], "x": 95, "y": 19, "flags": 4},
+ {"matrix": [1, 7], "x": 110, "y": 19, "flags": 4},
+ {"matrix": [1, 8], "x": 125, "y": 19, "flags": 4},
+ {"matrix": [1, 9], "x": 139, "y": 19, "flags": 4},
+ {"matrix": [1, 10], "x": 154, "y": 19, "flags": 4},
+ {"matrix": [1, 11], "x": 168, "y": 19, "flags": 4},
+ {"matrix": [1, 12], "x": 183, "y": 19, "flags": 4},
+ {"matrix": [1, 14], "x": 224, "y": 19, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 34, "flags": 1},
+ {"matrix": [2, 1], "x": 26, "y": 34, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 34, "flags": 4},
+ {"matrix": [2, 3], "x": 55, "y": 34, "flags": 4},
+ {"matrix": [2, 4], "x": 70, "y": 34, "flags": 4},
+ {"matrix": [2, 5], "x": 84, "y": 34, "flags": 4},
+ {"matrix": [2, 6], "x": 99, "y": 34, "flags": 4},
+ {"matrix": [2, 7], "x": 114, "y": 34, "flags": 4},
+ {"matrix": [2, 8], "x": 128, "y": 34, "flags": 4},
+ {"matrix": [2, 9], "x": 143, "y": 34, "flags": 4},
+ {"matrix": [2, 10], "x": 158, "y": 34, "flags": 4},
+ {"matrix": [2, 11], "x": 172, "y": 34, "flags": 4},
+ {"matrix": [2, 13], "x": 187, "y": 34, "flags": 4},
+ {"matrix": [1, 13], "x": 207, "y": 29, "flags": 1},
+ {"matrix": [2, 14], "x": 224, "y": 34, "flags": 1},
+
+ {"matrix": [3, 0], "x": 9, "y": 49, "flags": 1},
+ {"matrix": [3, 2], "x": 33, "y": 49, "flags": 4},
+ {"matrix": [3, 3], "x": 48, "y": 49, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 49, "flags": 4},
+ {"matrix": [3, 5], "x": 77, "y": 49, "flags": 4},
+ {"matrix": [3, 6], "x": 92, "y": 49, "flags": 4},
+ {"matrix": [3, 7], "x": 106, "y": 49, "flags": 4},
+ {"matrix": [3, 8], "x": 121, "y": 49, "flags": 4},
+ {"matrix": [3, 9], "x": 136, "y": 49, "flags": 4},
+ {"matrix": [3, 10], "x": 150, "y": 49, "flags": 4},
+ {"matrix": [3, 11], "x": 179, "y": 49, "flags": 4},
+ {"matrix": [3, 13], "x": 194, "y": 49, "flags": 1},
+ {"matrix": [3, 14], "x": 209, "y": 49, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [4, 1], "x": 18, "y": 64, "flags": 1},
+ {"matrix": [4, 2], "x": 35, "y": 64, "flags": 1},
+ {"matrix": [4, 3], "x": 51, "y": 64, "flags": 1},
+ {"matrix": [4, 6], "x": 92, "y": 64, "flags": 4},
+ {"matrix": [4, 9], "x": 134, "y": 64, "flags": 1},
+ {"matrix": [4, 10], "x": 150, "y": 64, "flags": 1},
+ {"matrix": [4, 11], "x": 165, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 179, "y": 64, "flags": 1},
+ {"matrix": [4, 13], "x": 194, "y": 64, "flags": 1},
+ {"matrix": [2, 12], "x": 209, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 223, "y": 64, "flags": 1}
+ ]
+ },
"layouts": {
"LAYOUT_jis_71": {
"layout": [
diff --git a/keyboards/keychron/q2/jis_encoder/jis_encoder.c b/keyboards/keychron/q2/jis_encoder/jis_encoder.c
index de20255e0b..d877e225d9 100644
--- a/keyboards/keychron/q2/jis_encoder/jis_encoder.c
+++ b/keyboards/keychron/q2/jis_encoder/jis_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -102,33 +102,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, F_16, D_16, E_16}
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 43, 29 },
- { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 69, 42, 44 },
- { 45, 14, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58 },
- { 59, 60, 61, 62, __, __, 63, __, __, 64, 65, 66, 67, 68, 70 },
- },
- {
- // LED Index to Physical Position
- {0,4}, {15,4}, {29,4}, {44,4}, {59,4}, {73,4}, {88,4}, {103,4}, {117,4}, {132,4}, {146,4}, {161,4}, {176,4}, {190,4}, {205,4}, {224,0},
- {4,19}, {22,19}, {37,19}, {51,19}, {66,19}, {81,19}, {95,19}, {110,19}, {125,19}, {139,19}, {154,19}, {168,19}, {183,19}, {224,19},
- {6,34}, {26,34}, {40,34}, {55,34}, {70,34}, {84,34}, {99,34}, {114,34}, {128,34}, {143,34}, {158,34}, {172,34}, {187,34}, {207,29}, {224,34},
- {9,49}, {33,49}, {48,49}, {62,49}, {77,49}, {92,49}, {106,49}, {121,49}, {136,49}, {150,49}, {165,49}, {179,49}, {194,49}, {209,49},
- {2,64}, {18,64}, {35,64}, {51,64}, {92,64}, {134,64}, {150,64}, {165,64}, {179,64}, {194,64}, {209,64}, {223,64},
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q2/jis_encoder/rules.mk b/keyboards/keychron/q2/jis_encoder/rules.mk
index 5091fe9414..6e7633bfe0 100644
--- a/keyboards/keychron/q2/jis_encoder/rules.mk
+++ b/keyboards/keychron/q2/jis_encoder/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank
diff --git a/keyboards/keychron/q2/readme.md b/keyboards/keychron/q2/readme.md
index 60144a1079..69a2d892ff 100644
--- a/keyboards/keychron/q2/readme.md
+++ b/keyboards/keychron/q2/readme.md
@@ -1,19 +1,31 @@
# Keychron Q2
+![Keychron Q2](https://i.imgur.com/9bJ6Moh.jpg)
+
A customizable 65% keyboard.
* Keyboard Maintainer: [Keychron](https://github.com/keychron)
* Hardware Supported: Keychron Q2
-* Hardware Availability: [Keychron](https://www.keychron.com)
+* Hardware Availability: [Keychron Q2 QMK Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q2-qmk-custom-mechanical-keyboard)
Make example for this keyboard (after setting up your build environment):
make keychron/q2/ansi:default
+ make keychron/q2/ansi_encoder:default
+ make keychron/q2/iso:default
+ make keychron/q2/iso_encoder:default
+ make keychron/q2/jis:default
+ make keychron/q2/jis_encoder:default
Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid))
make keychron/q2/ansi:default:flash
+ make keychron/q2/ansi_encoder:default:flash
+ make keychron/q2/iso:default:flash
+ make keychron/q2/iso_encoder:default:flash
+ make keychron/q2/jis:default:flash
+ make keychron/q2/jis_encoder:default:flash
**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard.
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file
diff --git a/keyboards/keychron/q3/ansi/ansi.c b/keyboards/keychron/q3/ansi/ansi.c
index 432a914058..8327ee430b 100644
--- a/keyboards/keychron/q3/ansi/ansi.c
+++ b/keyboards/keychron/q3/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -119,36 +119,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, C_15, A_15, B_15},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, __, 13, 14 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 },
- { 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48 },
- { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 49, 62, 15, 32 },
- { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, 86, 75 },
- { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {85,0}, {98,0}, {111,0}, {124,0}, {143,0}, {156,0}, {169,0}, {182,0}, {198,0}, {211,0}, {224,0},
- {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15},
- {3,28}, {20,28}, {33,28}, {46,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {179,28}, {198,28}, {211,28}, {224,28},
- {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {174,40},
- {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52},
- {2,64}, {18,64}, {34,64}, {83,64}, {131,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q3/ansi/config.h b/keyboards/keychron/q3/ansi/config.h
index f7c1c16931..77afc9b9b6 100644
--- a/keyboards/keychron/q3/ansi/config.h
+++ b/keyboards/keychron/q3/ansi/config.h
@@ -16,19 +16,13 @@
#pragma once
-/* key matrix pins */
-#define MATRIX_ROW_PINS { B5, B4, B3, A15, A14, A13 }
-#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A4, A5, A6, A7, B0, B1, A8, A9, A10, H3 }
-
-/* We uses a pin with a stronger pull resistor than the internal MCU pins */
+/* We use a pin with a stronger pull resistor than the internal MCU pins */
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 48
-#define DRIVER_2_LED_TOTAL 39
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 87
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44 }
/* Enable CapsLcok LED */
diff --git a/keyboards/keychron/q3/ansi/info.json b/keyboards/keychron/q3/ansi/info.json
index 124ac1bdcc..2162208082 100644
--- a/keyboards/keychron/q3/ansi/info.json
+++ b/keyboards/keychron/q3/ansi/info.json
@@ -1,18 +1,109 @@
{
- "keyboard_name": "Keychron Q3",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0120",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 26, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 39, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 52, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 65, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 85, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 98, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 111, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 124, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 156, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 169, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 182, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 176, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
+ {"matrix": [3, 15], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 3, "y": 28, "flags": 1},
+ {"matrix": [2, 1], "x": 20, "y": 28, "flags": 4},
+ {"matrix": [2, 2], "x": 33, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 46, "y": 28, "flags": 4},
+ {"matrix": [2, 4], "x": 59, "y": 28, "flags": 4},
+ {"matrix": [2, 5], "x": 72, "y": 28, "flags": 4},
+ {"matrix": [2, 6], "x": 85, "y": 28, "flags": 4},
+ {"matrix": [2, 7], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [2, 8], "x": 111, "y": 28, "flags": 4},
+ {"matrix": [2, 9], "x": 124, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 137, "y": 28, "flags": 4},
+ {"matrix": [2, 11], "x": 150, "y": 28, "flags": 4},
+ {"matrix": [2, 12], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [2, 13], "x": 179, "y": 28, "flags": 4},
+ {"matrix": [2, 14], "x": 198, "y": 28, "flags": 1},
+ {"matrix": [2, 15], "x": 211, "y": 28, "flags": 1},
+ {"matrix": [3, 12], "x": 224, "y": 28, "flags": 1},
+
+ {"matrix": [3, 0], "x": 5, "y": 40, "flags": 8},
+ {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
+ {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
+ {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
+ {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
+ {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
+ {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
+ {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
+ {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
+ {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
+ {"matrix": [3, 13], "x": 174, "y": 40, "flags": 1},
+
+ {"matrix": [4, 0], "x": 8, "y": 52, "flags": 1},
+ {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
+ {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
+ {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
+ {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
+ {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
+ {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
+ {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
+ {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
+ {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
+ {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
+ {"matrix": [4, 13], "x": 171, "y": 52, "flags": 1},
+ {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [5, 1], "x": 18, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 34, "y": 64, "flags": 1},
+ {"matrix": [5, 6], "x": 83, "y": 64, "flags": 4},
+ {"matrix": [5, 10], "x": 131, "y": 64, "flags": 1},
+ {"matrix": [5, 11], "x": 148, "y": 64, "flags": 1},
+ {"matrix": [5, 12], "x": 164, "y": 64, "flags": 1},
+ {"matrix": [5, 13], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
+ {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "matrix_pins": {
+ "rows": ["B5", "B4", "B3", "A15", "A14", "A13"],
+ "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "H3"]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "community_layouts": ["tkl_ansi"],
"layouts": {
"LAYOUT_tkl_ansi": {
"layout": [
diff --git a/keyboards/keychron/q3/ansi/rules.mk b/keyboards/keychron/q3/ansi/rules.mk
index 58bbb89a72..7ff128fa69 100644
--- a/keyboards/keychron/q3/ansi/rules.mk
+++ b/keyboards/keychron/q3/ansi/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q3/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q3/ansi_encoder/ansi_encoder.c
index f873f77d12..a386e87a01 100644
--- a/keyboards/keychron/q3/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q3/ansi_encoder/ansi_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -119,36 +119,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, C_15, A_15, B_15},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, __, 13, 14 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 },
- { 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48 },
- { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 49, 62, 15, 32 },
- { 63, __, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, __, 74, 86, 75 },
- { 76, 77, 78, __, __, __, 79, __, __, __, 80, 81, 82, 83, 84, 85 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {16,0}, {29,0}, {42,0}, {55,0}, {71,0}, {84,0}, {97,0}, {110,0}, {126,0}, {139,0}, {152,0}, {165,0}, {198,0}, {211,0}, {224,0},
- {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15},
- {3,28}, {19,28}, {32,28}, {45,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {179,28}, {198,28}, {211,28}, {224,28},
- {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {174,40},
- {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52},
- {2,64}, {18,64}, {34,64}, {83,64}, {131,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q3/ansi_encoder/config.h b/keyboards/keychron/q3/ansi_encoder/config.h
index 201288841a..2a6f9ba4c5 100644
--- a/keyboards/keychron/q3/ansi_encoder/config.h
+++ b/keyboards/keychron/q3/ansi_encoder/config.h
@@ -21,14 +21,9 @@
#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A4, A5, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN }
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 48
-#define DRIVER_2_LED_TOTAL 39
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 87
-/* Encoder Configuration */
-#define ENCODER_DEFAULT_POS 0x3
-
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44 }
/* Enable CapsLcok LED */
diff --git a/keyboards/keychron/q3/ansi_encoder/info.json b/keyboards/keychron/q3/ansi_encoder/info.json
index 2dd2f18bf9..f3bab2768f 100644
--- a/keyboards/keychron/q3/ansi_encoder/info.json
+++ b/keyboards/keychron/q3/ansi_encoder/info.json
@@ -1,23 +1,111 @@
{
- "keyboard_name": "Keychron Q3",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0121",
"device_version": "1.0.0"
},
- "rgb_matrix": {
- "driver": "ckled2001"
- },
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "A10", "pin_b": "A8"}
]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 42, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 55, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 71, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 84, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 97, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 126, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 139, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 152, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 165, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 176, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
+ {"matrix": [3, 15], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 3, "y": 28, "flags": 1},
+ {"matrix": [2, 1], "x": 19, "y": 28, "flags": 4},
+ {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 45, "y": 28, "flags": 4},
+ {"matrix": [2, 4], "x": 59, "y": 28, "flags": 4},
+ {"matrix": [2, 5], "x": 72, "y": 28, "flags": 4},
+ {"matrix": [2, 6], "x": 85, "y": 28, "flags": 4},
+ {"matrix": [2, 7], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [2, 8], "x": 111, "y": 28, "flags": 4},
+ {"matrix": [2, 9], "x": 124, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 137, "y": 28, "flags": 4},
+ {"matrix": [2, 11], "x": 150, "y": 28, "flags": 4},
+ {"matrix": [2, 12], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [2, 13], "x": 179, "y": 28, "flags": 4},
+ {"matrix": [2, 14], "x": 198, "y": 28, "flags": 1},
+ {"matrix": [2, 15], "x": 211, "y": 28, "flags": 1},
+ {"matrix": [3, 12], "x": 224, "y": 28, "flags": 1},
+
+ {"matrix": [3, 0], "x": 5, "y": 40, "flags": 8},
+ {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
+ {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
+ {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
+ {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
+ {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
+ {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
+ {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
+ {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
+ {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
+ {"matrix": [3, 13], "x": 174, "y": 40, "flags": 1},
+
+ {"matrix": [4, 0], "x": 8, "y": 52, "flags": 1},
+ {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
+ {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
+ {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
+ {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
+ {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
+ {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
+ {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
+ {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
+ {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
+ {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
+ {"matrix": [4, 13], "x": 171, "y": 52, "flags": 1},
+ {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [5, 1], "x": 18, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 34, "y": 64, "flags": 1},
+ {"matrix": [5, 6], "x": 83, "y": 64, "flags": 4},
+ {"matrix": [5, 10], "x": 131, "y": 64, "flags": 1},
+ {"matrix": [5, 11], "x": 148, "y": 64, "flags": 1},
+ {"matrix": [5, 12], "x": 164, "y": 64, "flags": 1},
+ {"matrix": [5, 13], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
+ {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "community_layouts": ["tkl_f13_ansi"],
"layouts": {
"LAYOUT_tkl_f13_ansi": {
"layout": [
diff --git a/keyboards/keychron/q3/ansi_encoder/rules.mk b/keyboards/keychron/q3/ansi_encoder/rules.mk
index 77b90f2466..5f0634f6d3 100644
--- a/keyboards/keychron/q3/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q3/ansi_encoder/rules.mk
@@ -1,23 +1,4 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
-# custom matrix setup
+# Custom matrix setup
CUSTOM_MATRIX = lite
SRC += matrix.c
diff --git a/keyboards/keychron/q3/config.h b/keyboards/keychron/q3/config.h
index 79f07d0390..f93da42353 100644
--- a/keyboards/keychron/q3/config.h
+++ b/keyboards/keychron/q3/config.h
@@ -16,17 +16,9 @@
#pragma once
-/* key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 16
-
-/* COL2ROW or ROW2COL */
-#define DIODE_DIRECTION ROW2COL
-
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -35,8 +27,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* DIP switch */
#define DIP_SWITCH_MATRIX_GRID { {5, 4} }
@@ -44,61 +35,11 @@
/* Disable DIP switch in matrix data */
#define MATRIX_MASKED
+/* Encoder Configuration*/
+#define ENCODER_DEFAULT_POS 0x3
+
/* turn off effects when suspended */
#define RGB_DISABLE_WHEN_USB_SUSPENDED
-/* EEPROM Driver Configuration */
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-// #define ENABLE_RGB_MATRIX_ALPHAS_MODS
-// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_BREATHING
-// #define ENABLE_RGB_MATRIX_BAND_SAT
-// #define ENABLE_RGB_MATRIX_BAND_VAL
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_ALL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#define ENABLE_RGB_MATRIX_DUAL_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-// #define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-// #define ENABLE_RGB_MATRIX_HUE_BREATHING
-// #define ENABLE_RGB_MATRIX_HUE_PENDULUM
-// #define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-// #define ENABLE_RGB_MATRIX_PIXEL_FLOW
-// #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-#define ENABLE_RGB_MATRIX_SPLASH
-// #define ENABLE_RGB_MATRIX_MULTISPLASH
-#define ENABLE_RGB_MATRIX_SOLID_SPLASH
-// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/keychron/q3/info.json b/keyboards/keychron/q3/info.json
new file mode 100644
index 0000000000..c08d73f26a
--- /dev/null
+++ b/keyboards/keychron/q3/info.json
@@ -0,0 +1,52 @@
+{
+ "manufacturer": "Keychron Q3",
+ "maintainer": "lalalademaxiya1",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "dip_switch": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "processor": "STM32L432",
+ "rgb_matrix": {
+ "animations": {
+ "band_spiral_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "digital_rain": true,
+ "dual_beacon": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "rainbow_beacon": true,
+ "rainbow_moving_chevron": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_simple": true,
+ "solid_splash": true,
+ "splash": true,
+ "typing_heatmap": true
+ },
+ "driver": "snled27351"
+ },
+ "url": "https://github.com/Keychron",
+ "usb": {
+ "vid": "0x3434"
+ }
+} \ No newline at end of file
diff --git a/keyboards/keychron/q3/iso/config.h b/keyboards/keychron/q3/iso/config.h
index c6992eb52b..3ffda1ce1e 100644
--- a/keyboards/keychron/q3/iso/config.h
+++ b/keyboards/keychron/q3/iso/config.h
@@ -16,19 +16,13 @@
#pragma once
-/* key matrix pins */
-#define MATRIX_ROW_PINS { B5, B4, B3, A15, A14, A13 }
-#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A4, A5, A6, A7, B0, B1, A8, A9, A10, H3 }
-
-/* We uses a pin with a stronger pull resistor than the internal MCU pins */
+/* We use a pin with a stronger pull resistor than the internal MCU pins */
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 48
-#define DRIVER_2_LED_TOTAL 40
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 88
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44 }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/q3/iso/info.json b/keyboards/keychron/q3/iso/info.json
index c9618c5b47..14e1e96629 100644
--- a/keyboards/keychron/q3/iso/info.json
+++ b/keyboards/keychron/q3/iso/info.json
@@ -1,18 +1,110 @@
{
- "keyboard_name": "Keychron Q3",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0122",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 26, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 39, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 52, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 65, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 84, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 97, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 111, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 124, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 156, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 169, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 182, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 176, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
+ {"matrix": [3, 15], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 3, "y": 28, "flags": 1},
+ {"matrix": [2, 1], "x": 19, "y": 28, "flags": 4},
+ {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 45, "y": 28, "flags": 4},
+ {"matrix": [2, 4], "x": 59, "y": 28, "flags": 4},
+ {"matrix": [2, 5], "x": 72, "y": 28, "flags": 4},
+ {"matrix": [2, 6], "x": 85, "y": 28, "flags": 4},
+ {"matrix": [2, 7], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [2, 8], "x": 111, "y": 28, "flags": 4},
+ {"matrix": [2, 9], "x": 124, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 137, "y": 28, "flags": 4},
+ {"matrix": [2, 11], "x": 150, "y": 28, "flags": 4},
+ {"matrix": [2, 12], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [2, 14], "x": 198, "y": 28, "flags": 1},
+ {"matrix": [2, 15], "x": 211, "y": 28, "flags": 1},
+ {"matrix": [3, 12], "x": 224, "y": 28, "flags": 1},
+
+ {"matrix": [3, 0], "x": 5, "y": 40, "flags": 8},
+ {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
+ {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
+ {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
+ {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
+ {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
+ {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
+ {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
+ {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
+ {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
+ {"matrix": [3, 13], "x": 166, "y": 40, "flags": 4},
+ {"matrix": [2, 13], "x": 183, "y": 36, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 52, "flags": 1},
+ {"matrix": [4, 1], "x": 16, "y": 52, "flags": 4},
+ {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
+ {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
+ {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
+ {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
+ {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
+ {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
+ {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
+ {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
+ {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
+ {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
+ {"matrix": [4, 13], "x": 171, "y": 52, "flags": 1},
+ {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [5, 1], "x": 18, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 34, "y": 64, "flags": 1},
+ {"matrix": [5, 6], "x": 83, "y": 64, "flags": 4},
+ {"matrix": [5, 10], "x": 131, "y": 64, "flags": 1},
+ {"matrix": [5, 11], "x": 148, "y": 64, "flags": 1},
+ {"matrix": [5, 12], "x": 164, "y": 64, "flags": 1},
+ {"matrix": [5, 13], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
+ {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "matrix_pins": {
+ "rows": ["B5", "B4", "B3", "A15", "A14", "A13"],
+ "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "H3"]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "community_layouts": ["tkl_iso"],
"layouts": {
"LAYOUT_tkl_iso": {
"layout": [
diff --git a/keyboards/keychron/q3/iso/iso.c b/keyboards/keychron/q3/iso/iso.c
index d747d55115..725af67006 100644
--- a/keyboards/keychron/q3/iso/iso.c
+++ b/keyboards/keychron/q3/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -120,36 +120,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, C_15, A_15, B_15},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, __, 13, 14 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 },
- { 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 62, 46, 47 },
- { 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 48, 61, 15, 32 },
- { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, 87, 76 },
- { 77, 78, 79, __, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {84,0}, {97,0}, {111,0}, {124,0}, {143,0}, {156,0}, {169,0}, {182,0}, {198,0}, {211,0}, {224,0},
- {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15},
- {3,28}, {19,28}, {32,28}, {45,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {198,28}, {211,28}, {224,28},
- {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {166,40}, {183,36},
- {2,52}, {16,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52},
- {2,64}, {18,64}, {34,64}, {83,64}, {131,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q3/iso/rules.mk b/keyboards/keychron/q3/iso/rules.mk
index 58bbb89a72..7ff128fa69 100644
--- a/keyboards/keychron/q3/iso/rules.mk
+++ b/keyboards/keychron/q3/iso/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q3/iso_encoder/config.h b/keyboards/keychron/q3/iso_encoder/config.h
index 2ee93a4fae..6893c2e8ff 100644
--- a/keyboards/keychron/q3/iso_encoder/config.h
+++ b/keyboards/keychron/q3/iso_encoder/config.h
@@ -21,14 +21,9 @@
#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A4, A5, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN }
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 48
-#define DRIVER_2_LED_TOTAL 40
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 88
-/* Encoder Configuration */
-#define ENCODER_DEFAULT_POS 0x3
-
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44, 0x9D, 0x9D, 0x44 }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/q3/iso_encoder/info.json b/keyboards/keychron/q3/iso_encoder/info.json
index 8571445087..f86e425c9d 100644
--- a/keyboards/keychron/q3/iso_encoder/info.json
+++ b/keyboards/keychron/q3/iso_encoder/info.json
@@ -1,23 +1,112 @@
{
- "keyboard_name": "Keychron Q3",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0123",
"device_version": "1.0.0"
},
- "rgb_matrix": {
- "driver": "ckled2001"
- },
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "A10", "pin_b": "A8"}
]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 42, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 55, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 71, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 84, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 97, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 126, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 139, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 152, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 165, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 176, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
+ {"matrix": [3, 15], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 3, "y": 28, "flags": 1},
+ {"matrix": [2, 1], "x": 19, "y": 28, "flags": 4},
+ {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 45, "y": 28, "flags": 4},
+ {"matrix": [2, 4], "x": 59, "y": 28, "flags": 4},
+ {"matrix": [2, 5], "x": 72, "y": 28, "flags": 4},
+ {"matrix": [2, 6], "x": 85, "y": 28, "flags": 4},
+ {"matrix": [2, 7], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [2, 8], "x": 111, "y": 28, "flags": 4},
+ {"matrix": [2, 9], "x": 124, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 137, "y": 28, "flags": 4},
+ {"matrix": [2, 11], "x": 150, "y": 28, "flags": 4},
+ {"matrix": [2, 12], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [2, 14], "x": 198, "y": 28, "flags": 1},
+ {"matrix": [2, 15], "x": 211, "y": 28, "flags": 1},
+ {"matrix": [3, 12], "x": 224, "y": 28, "flags": 1},
+
+ {"matrix": [3, 0], "x": 5, "y": 40, "flags": 8},
+ {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
+ {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
+ {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
+ {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
+ {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
+ {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
+ {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
+ {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
+ {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
+ {"matrix": [3, 13], "x": 166, "y": 40, "flags": 4},
+ {"matrix": [2, 13], "x": 183, "y": 36, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 52, "flags": 1},
+ {"matrix": [4, 1], "x": 16, "y": 52, "flags": 4},
+ {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
+ {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
+ {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
+ {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
+ {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
+ {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
+ {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
+ {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
+ {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
+ {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
+ {"matrix": [4, 13], "x": 171, "y": 52, "flags": 1},
+ {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [5, 1], "x": 18, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 34, "y": 64, "flags": 1},
+ {"matrix": [5, 6], "x": 83, "y": 64, "flags": 4},
+ {"matrix": [5, 10], "x": 131, "y": 64, "flags": 1},
+ {"matrix": [5, 11], "x": 148, "y": 64, "flags": 1},
+ {"matrix": [5, 12], "x": 164, "y": 64, "flags": 1},
+ {"matrix": [5, 13], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
+ {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "community_layouts": ["tkl_f13_iso"],
"layouts": {
"LAYOUT_tkl_f13_iso": {
"layout": [
diff --git a/keyboards/keychron/q3/iso_encoder/iso_encoder.c b/keyboards/keychron/q3/iso_encoder/iso_encoder.c
index d2bb169aac..725af67006 100644
--- a/keyboards/keychron/q3/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q3/iso_encoder/iso_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -120,36 +120,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, C_15, A_15, B_15},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, __, 13, 14 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 },
- { 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 62, 46, 47 },
- { 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 48, 61, 15, 32 },
- { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, __, 75, 87, 76 },
- { 77, 78, 79, __, __, __, 80, __, __, __, 81, 82, 83, 84, 85, 86 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {16,0}, {29,0}, {42,0}, {55,0}, {71,0}, {84,0}, {97,0}, {110,0}, {126,0}, {139,0}, {152,0}, {165,0}, {198,0}, {211,0}, {224,0},
- {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {176,15}, {198,15}, {211,15}, {224,15},
- {3,28}, {19,28}, {32,28}, {45,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {198,28}, {211,28}, {224,28},
- {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {166,40}, {183,36},
- {2,52}, {16,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {171,52}, {211,52},
- {2,64}, {18,64}, {34,64}, {83,64}, {131,64}, {148,64}, {164,64}, {180,64}, {198,64}, {211,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q3/iso_encoder/rules.mk b/keyboards/keychron/q3/iso_encoder/rules.mk
index 77b90f2466..5f0634f6d3 100644
--- a/keyboards/keychron/q3/iso_encoder/rules.mk
+++ b/keyboards/keychron/q3/iso_encoder/rules.mk
@@ -1,23 +1,4 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
-# custom matrix setup
+# Custom matrix setup
CUSTOM_MATRIX = lite
SRC += matrix.c
diff --git a/keyboards/keychron/q3/jis/config.h b/keyboards/keychron/q3/jis/config.h
index 856dd14df4..1ea4386bba 100644
--- a/keyboards/keychron/q3/jis/config.h
+++ b/keyboards/keychron/q3/jis/config.h
@@ -16,21 +16,13 @@
#pragma once
-/* key matrix pins */
-#define MATRIX_ROW_PINS \
- { B5, B4, B3, A15, A14, A13 }
-#define MATRIX_COL_PINS \
- { C14, C15, A0, A1, A2, A3, A4, A5, A6, A7, B0, B1, A8, A9, A10, H3 }
-
/* If PH3 used with a stronger pull resistor then the following definition needs be included */
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 48
-#define DRIVER_2_LED_TOTAL 43
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 91
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44 }
/* Enable CapsLcok LED */
diff --git a/keyboards/keychron/q3/jis/info.json b/keyboards/keychron/q3/jis/info.json
index 6f17a7cf9d..7a45046f82 100644
--- a/keyboards/keychron/q3/jis/info.json
+++ b/keyboards/keychron/q3/jis/info.json
@@ -1,18 +1,116 @@
{
- "keyboard_name": "Keychron Q3",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0124",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 26, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 39, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 52, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 65, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 84, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 97, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 111, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 124, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 143, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 156, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 169, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 182, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 169, "y": 15, "flags": 4},
+ {"matrix": [0, 13], "x": 182, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
+ {"matrix": [3, 15], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 3, "y": 28, "flags": 1},
+ {"matrix": [2, 1], "x": 19, "y": 28, "flags": 4},
+ {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 45, "y": 28, "flags": 4},
+ {"matrix": [2, 4], "x": 59, "y": 28, "flags": 4},
+ {"matrix": [2, 5], "x": 72, "y": 28, "flags": 4},
+ {"matrix": [2, 6], "x": 85, "y": 28, "flags": 4},
+ {"matrix": [2, 7], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [2, 8], "x": 111, "y": 28, "flags": 4},
+ {"matrix": [2, 9], "x": 124, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 137, "y": 28, "flags": 4},
+ {"matrix": [2, 11], "x": 150, "y": 28, "flags": 4},
+ {"matrix": [2, 12], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [2, 14], "x": 198, "y": 28, "flags": 1},
+ {"matrix": [2, 15], "x": 211, "y": 28, "flags": 1},
+ {"matrix": [3, 12], "x": 224, "y": 28, "flags": 1},
+
+ {"matrix": [3, 0], "x": 5, "y": 40, "flags": 8},
+ {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
+ {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
+ {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
+ {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
+ {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
+ {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
+ {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
+ {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
+ {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
+ {"matrix": [3, 13], "x": 166, "y": 40, "flags": 4},
+ {"matrix": [2, 13], "x": 183, "y": 36, "flags": 1},
+
+ {"matrix": [4, 0], "x": 8, "y": 52, "flags": 1},
+ {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
+ {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
+ {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
+ {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
+ {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
+ {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
+ {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
+ {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
+ {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
+ {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
+ {"matrix": [4, 12], "x": 159, "y": 52, "flags": 4},
+ {"matrix": [4, 13], "x": 177, "y": 52, "flags": 1},
+ {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [5, 1], "x": 16, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 31, "y": 64, "flags": 1},
+ {"matrix": [5, 3], "x": 45, "y": 64, "flags": 1},
+ {"matrix": [5, 6], "x": 83, "y": 64, "flags": 4},
+ {"matrix": [5, 9], "x": 119, "y": 64, "flags": 1},
+ {"matrix": [5, 10], "x": 135, "y": 64, "flags": 1},
+ {"matrix": [5, 11], "x": 151, "y": 64, "flags": 1},
+ {"matrix": [5, 12], "x": 166, "y": 64, "flags": 1},
+ {"matrix": [5, 13], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
+ {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "matrix_pins": {
+ "rows": ["B5", "B4", "B3", "A15", "A14", "A13"],
+ "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "H3"]
+ },
+ "layout_aliases": {
+ "LAYOUT_tkl_jis": "LAYOUT_jis_91"
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "community_layouts": ["tkl_jis"],
"layouts": {
"LAYOUT_jis_91": {
"layout": [
diff --git a/keyboards/keychron/q3/jis/jis.c b/keyboards/keychron/q3/jis/jis.c
index f262d3c7d8..4b19eca52f 100644
--- a/keyboards/keychron/q3/jis/jis.c
+++ b/keyboards/keychron/q3/jis/jis.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -123,36 +123,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, C_15, A_15, B_15}, // Right
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 30, 13, 14 },
- { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 32 },
- { 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 63, 47, 48 },
- { 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 49, 62, 15, 33 },
- { 64, __, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 90, 77 },
- { 78, 79, 80, 81, __, __, 82, __, __, 83, 84, 85, 86, 87, 88, 89 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {26,0}, {39,0}, {52,0}, {65,0}, {84,0}, {97,0}, {111,0}, {124,0}, {143,0}, {156,0}, {169,0}, {182,0}, {198,0}, {211,0}, {224,0},
- {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {169,15}, {182,15}, {198,15}, {211,15}, {224,15},
- {3,28}, {19,28}, {32,28}, {45,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {198,28}, {211,28}, {224,28},
- {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {166,40}, {183,36},
- {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {159,52}, {177,52}, {211,52},
- {2,64}, {16,64}, {31,64}, {45,64}, {81,64}, {119,64}, {135,64}, {151,64}, {166,64}, {180,64}, {198,64}, {211,64}, {224,64}
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // GB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q3/jis/rules.mk b/keyboards/keychron/q3/jis/rules.mk
index 58bbb89a72..7ff128fa69 100644
--- a/keyboards/keychron/q3/jis/rules.mk
+++ b/keyboards/keychron/q3/jis/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q3/jis_encoder/config.h b/keyboards/keychron/q3/jis_encoder/config.h
index 9fca0cfc73..5c5efb4ff6 100644
--- a/keyboards/keychron/q3/jis_encoder/config.h
+++ b/keyboards/keychron/q3/jis_encoder/config.h
@@ -17,21 +17,14 @@
#pragma once
/* key matrix pins */
-#define MATRIX_ROW_PINS \
- { B5, B4, B3, A15, A14, A13 }
-#define MATRIX_COL_PINS \
- { C14, C15, A0, A1, A2, A3, A4, A5, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN }
+#define MATRIX_ROW_PINS { B5, B4, B3, A15, A14, A13 }
+#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A4, A5, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN }
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 49
-#define DRIVER_2_LED_TOTAL 43
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT 92
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44 }
-/* Encoder Configuration */
-#define ENCODER_DEFAULT_POS 0x3
-
/* Enable CapsLcok LED */
#define CAPS_LOCK_LED_INDEX 51
diff --git a/keyboards/keychron/q3/jis_encoder/info.json b/keyboards/keychron/q3/jis_encoder/info.json
index fd1f361f57..9fc61c7e6c 100644
--- a/keyboards/keychron/q3/jis_encoder/info.json
+++ b/keyboards/keychron/q3/jis_encoder/info.json
@@ -1,23 +1,119 @@
{
- "keyboard_name": "Keychron Q3",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0125",
"device_version": "1.0.0"
},
- "rgb_matrix": {
- "driver": "ckled2001"
- },
"encoder": {
+ "enabled": true,
"rotary": [
{"pin_a": "A10", "pin_b": "A8"}
]
},
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 1},
+ {"matrix": [0, 2], "x": 29, "y": 0, "flags": 1},
+ {"matrix": [0, 3], "x": 42, "y": 0, "flags": 1},
+ {"matrix": [0, 4], "x": 55, "y": 0, "flags": 1},
+ {"matrix": [0, 5], "x": 71, "y": 0, "flags": 1},
+ {"matrix": [0, 6], "x": 84, "y": 0, "flags": 1},
+ {"matrix": [0, 7], "x": 97, "y": 0, "flags": 1},
+ {"matrix": [0, 8], "x": 110, "y": 0, "flags": 1},
+ {"matrix": [0, 9], "x": 126, "y": 0, "flags": 1},
+ {"matrix": [0, 10], "x": 139, "y": 0, "flags": 1},
+ {"matrix": [0, 11], "x": 152, "y": 0, "flags": 1},
+ {"matrix": [0, 12], "x": 165, "y": 0, "flags": 1},
+ {"matrix": [0, 13], "x": 182, "y": 0, "flags": 1},
+ {"matrix": [0, 14], "x": 198, "y": 0, "flags": 1},
+ {"matrix": [0, 15], "x": 211, "y": 0, "flags": 1},
+ {"matrix": [3, 14], "x": 224, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 15, "flags": 1},
+ {"matrix": [1, 1], "x": 13, "y": 15, "flags": 4},
+ {"matrix": [1, 2], "x": 26, "y": 15, "flags": 4},
+ {"matrix": [1, 3], "x": 39, "y": 15, "flags": 4},
+ {"matrix": [1, 4], "x": 52, "y": 15, "flags": 4},
+ {"matrix": [1, 5], "x": 65, "y": 15, "flags": 4},
+ {"matrix": [1, 6], "x": 78, "y": 15, "flags": 4},
+ {"matrix": [1, 7], "x": 91, "y": 15, "flags": 4},
+ {"matrix": [1, 8], "x": 104, "y": 15, "flags": 4},
+ {"matrix": [1, 9], "x": 117, "y": 15, "flags": 4},
+ {"matrix": [1, 10], "x": 130, "y": 15, "flags": 4},
+ {"matrix": [1, 11], "x": 143, "y": 15, "flags": 4},
+ {"matrix": [1, 12], "x": 156, "y": 15, "flags": 4},
+ {"matrix": [1, 13], "x": 169, "y": 15, "flags": 4},
+ {"matrix": [0, 13], "x": 182, "y": 15, "flags": 1},
+ {"matrix": [1, 14], "x": 198, "y": 15, "flags": 1},
+ {"matrix": [1, 15], "x": 211, "y": 15, "flags": 1},
+ {"matrix": [3, 15], "x": 224, "y": 15, "flags": 1},
+
+ {"matrix": [2, 0], "x": 3, "y": 28, "flags": 1},
+ {"matrix": [2, 1], "x": 19, "y": 28, "flags": 4},
+ {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4},
+ {"matrix": [2, 3], "x": 45, "y": 28, "flags": 4},
+ {"matrix": [2, 4], "x": 59, "y": 28, "flags": 4},
+ {"matrix": [2, 5], "x": 72, "y": 28, "flags": 4},
+ {"matrix": [2, 6], "x": 85, "y": 28, "flags": 4},
+ {"matrix": [2, 7], "x": 98, "y": 28, "flags": 4},
+ {"matrix": [2, 8], "x": 111, "y": 28, "flags": 4},
+ {"matrix": [2, 9], "x": 124, "y": 28, "flags": 4},
+ {"matrix": [2, 10], "x": 137, "y": 28, "flags": 4},
+ {"matrix": [2, 11], "x": 150, "y": 28, "flags": 4},
+ {"matrix": [2, 12], "x": 163, "y": 28, "flags": 4},
+ {"matrix": [2, 14], "x": 198, "y": 28, "flags": 1},
+ {"matrix": [2, 15], "x": 211, "y": 28, "flags": 1},
+ {"matrix": [3, 12], "x": 224, "y": 28, "flags": 1},
+
+ {"matrix": [3, 0], "x": 5, "y": 40, "flags": 8},
+ {"matrix": [3, 1], "x": 23, "y": 40, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 40, "flags": 4},
+ {"matrix": [3, 3], "x": 49, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 62, "y": 40, "flags": 4},
+ {"matrix": [3, 5], "x": 75, "y": 40, "flags": 4},
+ {"matrix": [3, 6], "x": 88, "y": 40, "flags": 4},
+ {"matrix": [3, 7], "x": 101, "y": 40, "flags": 4},
+ {"matrix": [3, 8], "x": 114, "y": 40, "flags": 4},
+ {"matrix": [3, 9], "x": 127, "y": 40, "flags": 4},
+ {"matrix": [3, 10], "x": 140, "y": 40, "flags": 4},
+ {"matrix": [3, 11], "x": 153, "y": 40, "flags": 4},
+ {"matrix": [3, 13], "x": 166, "y": 40, "flags": 4},
+ {"matrix": [2, 13], "x": 183, "y": 36, "flags": 1},
+
+ {"matrix": [4, 0], "x": 8, "y": 52, "flags": 1},
+ {"matrix": [4, 2], "x": 29, "y": 52, "flags": 4},
+ {"matrix": [4, 3], "x": 42, "y": 52, "flags": 4},
+ {"matrix": [4, 4], "x": 55, "y": 52, "flags": 4},
+ {"matrix": [4, 5], "x": 68, "y": 52, "flags": 4},
+ {"matrix": [4, 6], "x": 81, "y": 52, "flags": 4},
+ {"matrix": [4, 7], "x": 94, "y": 52, "flags": 4},
+ {"matrix": [4, 8], "x": 107, "y": 52, "flags": 4},
+ {"matrix": [4, 9], "x": 120, "y": 52, "flags": 4},
+ {"matrix": [4, 10], "x": 133, "y": 52, "flags": 4},
+ {"matrix": [4, 11], "x": 146, "y": 52, "flags": 4},
+ {"matrix": [4, 12], "x": 159, "y": 52, "flags": 4},
+ {"matrix": [4, 13], "x": 177, "y": 52, "flags": 1},
+ {"matrix": [4, 15], "x": 211, "y": 52, "flags": 1},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [5, 1], "x": 16, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 31, "y": 64, "flags": 1},
+ {"matrix": [5, 3], "x": 45, "y": 64, "flags": 1},
+ {"matrix": [5, 6], "x": 81, "y": 64, "flags": 4},
+ {"matrix": [5, 9], "x": 119, "y": 64, "flags": 1},
+ {"matrix": [5, 10], "x": 135, "y": 64, "flags": 1},
+ {"matrix": [5, 11], "x": 151, "y": 64, "flags": 1},
+ {"matrix": [5, 12], "x": 166, "y": 64, "flags": 1},
+ {"matrix": [5, 13], "x": 180, "y": 64, "flags": 1},
+ {"matrix": [5, 14], "x": 198, "y": 64, "flags": 1},
+ {"matrix": [5, 15], "x": 211, "y": 64, "flags": 1},
+ {"matrix": [4, 14], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "layout_aliases": {
+ "LAYOUT_tkl_f13_jis": "LAYOUT_jis_92"
+ },
+ "community_layouts": ["tkl_f13_jis"],
"layouts": {
"LAYOUT_jis_92": {
"layout": [
diff --git a/keyboards/keychron/q3/jis_encoder/jis_encoder.c b/keyboards/keychron/q3/jis_encoder/jis_encoder.c
index 0a97c5ca68..8770f9d33c 100644
--- a/keyboards/keychron/q3/jis_encoder/jis_encoder.c
+++ b/keyboards/keychron/q3/jis_encoder/jis_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -124,36 +124,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{1, C_15, A_15, B_15}, // Right
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 },
- { 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33 },
- { 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 64, 48, 49 },
- { 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 50, 63, 16, 34 },
- { 65, __, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 91, 78 },
- { 79, 80, 81, 82, __, 31, 83, __, __, 84, 85, 86, 87, 88, 89, 90 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {16,0}, {29,0}, {42,0}, {55,0}, {71,0}, {84,0}, {97,0}, {110,0}, {126,0}, {139,0}, {152,0}, {165,0}, {182,0}, {198,0}, {211,0}, {224,0},
- {0,15}, {13,15}, {26,15}, {39,15}, {52,15}, {65,15}, {78,15}, {91,15}, {104,15}, {117,15}, {130,15}, {143,15}, {156,15}, {169,15}, {182,15}, {198,15}, {211,15}, {224,15},
- {3,28}, {19,28}, {32,28}, {45,28}, {59,28}, {72,28}, {85,28}, {98,28}, {111,28}, {124,28}, {137,28}, {150,28}, {163,28}, {198,28}, {211,28}, {224,28},
- {5,40}, {23,40}, {36,40}, {49,40}, {62,40}, {75,40}, {88,40}, {101,40}, {114,40}, {127,40}, {140,40}, {153,40}, {166,40}, {183,36},
- {8,52}, {29,52}, {42,52}, {55,52}, {68,52}, {81,52}, {94,52}, {107,52}, {120,52}, {133,52}, {146,52}, {159,52}, {177,52}, {211,52},
- {2,64}, {16,64}, {31,64}, {45,64}, {81,64}, {119,64}, {135,64}, {151,64}, {166,64}, {180,64}, {198,64}, {211,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1,
- 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
#endif // RGB_MATRIX_ENABLE
diff --git a/keyboards/keychron/q3/jis_encoder/rules.mk b/keyboards/keychron/q3/jis_encoder/rules.mk
index 77b90f2466..5f0634f6d3 100644
--- a/keyboards/keychron/q3/jis_encoder/rules.mk
+++ b/keyboards/keychron/q3/jis_encoder/rules.mk
@@ -1,23 +1,4 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable Encoder
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
-# custom matrix setup
+# Custom matrix setup
CUSTOM_MATRIX = lite
SRC += matrix.c
diff --git a/keyboards/keychron/q3/readme.md b/keyboards/keychron/q3/readme.md
index 8e25a1b332..073455336f 100644
--- a/keyboards/keychron/q3/readme.md
+++ b/keyboards/keychron/q3/readme.md
@@ -1,22 +1,30 @@
# Keychron Q3
+![Keychron Q3](https://i.imgur.com/KjP4nqdh.jpg)
+
A customizable 80% keyboard.
* Keyboard Maintainer: [Keychron](https://github.com/keychron)
* Hardware Supported: Keychron Q3
-* Hardware Availability: [Keychron](https://www.keychron.com)
+* Hardware Availability: [Keychron Q3 QMK Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q3-qmk-custom-mechanical-keyboard)
Make example for this keyboard (after setting up your build environment):
-```
- make keychron/q3/ansi:default
-```
+ make keychron/q3/ansi:default
+ make keychron/q3/ansi_encoder:default
+ make keychron/q3/iso:default
+ make keychron/q3/iso_encoder:default
+ make keychron/q3/jis:default
+ make keychron/q3/jis_encoder:default
Flashing example for this keyboard:
-```
- make keychron/q3/ansi:default:flash
-```
+ make keychron/q3/ansi:default:flash
+ make keychron/q3/ansi_encoder:default:flash
+ make keychron/q3/iso:default:flash
+ make keychron/q3/iso_encoder:default:flash
+ make keychron/q3/jis:default:flash
+ make keychron/q3/jis_encoder:default:flash
**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard.
diff --git a/keyboards/keychron/q4/ansi/config.h b/keyboards/keychron/q4/ansi/config.h
new file mode 100644
index 0000000000..c05e8f73a0
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/config.h
@@ -0,0 +1,20 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* Enable CapsLcok LED*/
+#define CAPS_LOCK_LED_INDEX 28
diff --git a/keyboards/keychron/q4/ansi/info.json b/keyboards/keychron/q4/ansi/info.json
new file mode 100644
index 0000000000..392ef8fc45
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/info.json
@@ -0,0 +1,147 @@
+{
+ "usb": {
+ "pid": "0x0140",
+ "device_version": "1.0.6"
+ },
+ "rgb_matrix": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 81, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 97, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 113, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 129, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 145, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 161, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 177, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 193, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 218, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4,"y": 16, "flags": 1},
+ {"matrix": [1, 1], "x": 24,"y": 16, "flags": 4},
+ {"matrix": [1, 2], "x": 40,"y": 16, "flags": 4},
+ {"matrix": [1, 3], "x": 56,"y": 16, "flags": 4},
+ {"matrix": [1, 4], "x": 73,"y": 16, "flags": 4},
+ {"matrix": [1, 5], "x": 89,"y": 16, "flags": 4},
+ {"matrix": [1, 6], "x": 105,"y": 16, "flags": 4},
+ {"matrix": [1, 7], "x": 121,"y": 16, "flags": 4},
+ {"matrix": [1, 8], "x": 137,"y": 16, "flags": 4},
+ {"matrix": [1, 9], "x": 153,"y": 16, "flags": 4},
+ {"matrix": [1, 10], "x": 169,"y": 16, "flags": 4},
+ {"matrix": [1, 11], "x": 185,"y": 16, "flags": 4},
+ {"matrix": [1, 12], "x": 202,"y": 16, "flags": 4},
+ {"matrix": [1, 13], "x": 222,"y": 16, "flags": 4},
+
+ {"matrix": [2, 0], "x": 6, "y": 32, "flags": 8},
+ {"matrix": [2, 1], "x": 28, "y": 32, "flags": 4},
+ {"matrix": [2, 2], "x": 44, "y": 32, "flags": 4},
+ {"matrix": [2, 3], "x": 60, "y": 32, "flags": 4},
+ {"matrix": [2, 4], "x": 77, "y": 32, "flags": 4},
+ {"matrix": [2, 5], "x": 93, "y": 32, "flags": 4},
+ {"matrix": [2, 6], "x": 109, "y": 32, "flags": 4},
+ {"matrix": [2, 7], "x": 125, "y": 32, "flags": 4},
+ {"matrix": [2, 8], "x": 141, "y": 32, "flags": 4},
+ {"matrix": [2, 9], "x": 157, "y": 32, "flags": 4},
+ {"matrix": [2, 10], "x": 173, "y": 32, "flags": 4},
+ {"matrix": [2, 11], "x": 189, "y": 32, "flags": 4},
+ {"matrix": [2, 13], "x": 216, "y": 32, "flags": 1},
+
+ {"matrix": [3, 0], "x": 10, "y": 48, "flags": 1},
+ {"matrix": [3, 2], "x": 36, "y": 48, "flags": 4},
+ {"matrix": [3, 3], "x": 52, "y": 48, "flags": 4},
+ {"matrix": [3, 4], "x": 69, "y": 48, "flags": 4},
+ {"matrix": [3, 5], "x": 85, "y": 48, "flags": 4},
+ {"matrix": [3, 6], "x": 101, "y": 48, "flags": 4},
+ {"matrix": [3, 7], "x": 117, "y": 48, "flags": 4},
+ {"matrix": [3, 8], "x": 133, "y": 48, "flags": 4},
+ {"matrix": [3, 9], "x": 149, "y": 48, "flags": 4},
+ {"matrix": [3, 10], "x": 165, "y": 48, "flags": 4},
+ {"matrix": [3, 11], "x": 181, "y": 48, "flags": 4},
+ {"matrix": [3, 13], "x": 212, "y": 48, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [4, 1], "x": 22, "y": 64, "flags": 1},
+ {"matrix": [4, 2], "x": 42, "y": 64, "flags": 1},
+ {"matrix": [4, 6], "x": 103, "y": 64, "flags": 4},
+ {"matrix": [4, 10], "x": 164, "y": 64, "flags": 1},
+ {"matrix": [4, 11], "x": 184, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 204, "y": 64, "flags": 1},
+ {"matrix": [4, 13], "x": 224, "y": 64, "flags": 1}
+
+ ]
+ },
+ "layouts": {
+ "LAYOUT_ansi_61": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [3, 8], "x": 8.25, "y": 3},
+ {"matrix": [3, 9], "x": 9.25, "y": 3},
+ {"matrix": [3, 10], "x": 10.25, "y": 3},
+ {"matrix": [3, 11], "x": 11.25, "y": 3},
+ {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
+
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/keychron/q4/ansi_v1/keymaps/default/keymap.c b/keyboards/keychron/q4/ansi/keymaps/default/keymap.c
index dd8669c3fb..dd8669c3fb 100644
--- a/keyboards/keychron/q4/ansi_v1/keymaps/default/keymap.c
+++ b/keyboards/keychron/q4/ansi/keymaps/default/keymap.c
diff --git a/keyboards/keychron/q4/ansi_v1/keymaps/keychron/keymap.c b/keyboards/keychron/q4/ansi/keymaps/keychron/keymap.c
index d58af0f244..d58af0f244 100644
--- a/keyboards/keychron/q4/ansi_v1/keymaps/keychron/keymap.c
+++ b/keyboards/keychron/q4/ansi/keymaps/keychron/keymap.c
diff --git a/keyboards/keychron/q4/ansi_v1/keymaps/keychron/rules.mk b/keyboards/keychron/q4/ansi/keymaps/keychron/rules.mk
index 1f273de340..1f273de340 100644
--- a/keyboards/keychron/q4/ansi_v1/keymaps/keychron/rules.mk
+++ b/keyboards/keychron/q4/ansi/keymaps/keychron/rules.mk
diff --git a/keyboards/keychron/q4/ansi_v1/keymaps/via/keymap.c b/keyboards/keychron/q4/ansi/keymaps/via/keymap.c
index dd8669c3fb..dd8669c3fb 100644
--- a/keyboards/keychron/q4/ansi_v1/keymaps/via/keymap.c
+++ b/keyboards/keychron/q4/ansi/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q4/ansi_v1/keymaps/via/rules.mk b/keyboards/keychron/q4/ansi/keymaps/via/rules.mk
index 036bd6d1c3..036bd6d1c3 100644
--- a/keyboards/keychron/q4/ansi_v1/keymaps/via/rules.mk
+++ b/keyboards/keychron/q4/ansi/keymaps/via/rules.mk
diff --git a/keyboards/keychron/q4/ansi_v1/readme.md b/keyboards/keychron/q4/ansi/readme.md
index bd2f3fd8a8..bd2f3fd8a8 100644
--- a/keyboards/keychron/q4/ansi_v1/readme.md
+++ b/keyboards/keychron/q4/ansi/readme.md
diff --git a/keyboards/keychron/q4/ansi/v1/config.h b/keyboards/keychron/q4/ansi/v1/config.h
new file mode 100644
index 0000000000..2f437c72c6
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/v1/config.h
@@ -0,0 +1,26 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Driver Configuration */
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 61
+
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
diff --git a/keyboards/keychron/q4/ansi/v1/rules.mk b/keyboards/keychron/q4/ansi/v1/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/v1/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi/v1/v1.c b/keyboards/keychron/q4/ansi/v1/v1.c
new file mode 100644
index 0000000000..6c1fecefec
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/v1/v1.c
@@ -0,0 +1,95 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+#ifdef RGB_MATRIX_ENABLE
+
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C_1, A_1, B_1},
+ {0, C_2, A_2, B_2},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+ {0, C_11, A_11, B_11},
+ {0, C_12, A_12, B_12},
+ {0, C_13, A_13, B_13},
+ {0, C_14, A_14, B_14},
+
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_8, D_8, E_8},
+ {0, F_9, D_9, E_9},
+ {0, F_10, D_10, E_10},
+ {0, F_11, D_11, E_11},
+ {0, F_12, D_12, E_12},
+ {0, F_13, D_13, E_13},
+ {0, F_14, D_14, E_14},
+
+ {0, I_1, G_1, H_1},
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {1, I_4, G_4, H_4},
+ {1, I_5, G_5, H_5},
+ {1, I_6, G_6, H_6},
+ {1, I_7, G_7, H_7},
+ {1, I_8, G_8, H_8},
+ {1, I_9, G_9, H_9},
+ {1, I_10, G_10, H_10},
+ {1, I_11, G_11, H_11},
+ {1, I_12, G_12, H_12},
+ {1, I_14, G_14, H_14},
+
+ {1, C_1, A_1, B_1},
+ {1, C_3, A_3, B_3},
+ {1, C_4, A_4, B_4},
+ {1, C_5, A_5, B_5},
+ {1, C_6, A_6, B_6},
+ {1, C_7, A_7, B_7},
+ {1, C_8, A_8, B_8},
+ {1, C_9, A_9, B_9},
+ {1, C_10, A_10, B_10},
+ {1, C_11, A_11, B_11},
+ {1, C_12, A_12, B_12},
+ {1, C_14, A_14, B_14},
+
+ {1, F_1, D_1, E_1},
+ {1, F_2, D_2, E_2},
+ {1, F_3, D_3, E_3},
+ {1, F_7, D_7, E_7},
+ {1, F_11, D_11, E_11},
+ {1, F_12, D_12, E_12},
+ {1, F_13, D_13, E_13},
+ {1, F_14, D_14, E_14},
+};
+
+#endif
diff --git a/keyboards/keychron/q4/ansi/v2/config.h b/keyboards/keychron/q4/ansi/v2/config.h
new file mode 100644
index 0000000000..029e7727a8
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/v2/config.h
@@ -0,0 +1,23 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+/* RGB Matrix Driver Configuration */
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+
+/* RGB Matrix Configuration */
+#define RGB_MATRIX_LED_COUNT 61
diff --git a/keyboards/keychron/q4/ansi/v2/rules.mk b/keyboards/keychron/q4/ansi/v2/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/v2/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi/v2/v2.c b/keyboards/keychron/q4/ansi/v2/v2.c
new file mode 100644
index 0000000000..468a87af41
--- /dev/null
+++ b/keyboards/keychron/q4/ansi/v2/v2.c
@@ -0,0 +1,95 @@
+/* Copyright 2022 @ Keychron (https://www.keychron.com)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "quantum.h"
+
+#ifdef RGB_MATRIX_ENABLE
+
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, F_1, D_1, E_1},
+ {0, F_2, D_2, E_2},
+ {0, F_3, D_3, E_3},
+ {0, F_4, D_4, E_4},
+ {0, F_5, D_5, E_5},
+ {0, F_6, D_6, E_6},
+ {0, F_7, D_7, E_7},
+ {0, F_8, D_8, E_8},
+ {0, F_9, D_9, E_9},
+ {0, F_10, D_10, E_10},
+ {0, F_11, D_11, E_11},
+ {0, F_12, D_12, E_12},
+ {0, F_13, D_13, E_13},
+ {0, F_14, D_14, E_14},
+
+ {0, I_1, G_1, H_1},
+ {0, I_2, G_2, H_2},
+ {0, I_3, G_3, H_3},
+ {0, I_4, G_4, H_4},
+ {0, I_5, G_5, H_5},
+ {0, I_6, G_6, H_6},
+ {0, I_7, G_7, H_7},
+ {0, I_8, G_8, H_8},
+ {0, I_9, G_9, H_9},
+ {0, I_10, G_10, H_10},
+ {0, I_11, G_11, H_11},
+ {0, I_12, G_12, H_12},
+ {0, I_13, G_13, H_13},
+ {0, I_14, G_14, H_14},
+
+ {0, L_1, J_1, K_1},
+ {0, L_2, J_2, K_2},
+ {0, L_3, J_3, K_3},
+ {0, L_4, J_4, K_4},
+ {0, L_5, J_5, K_5},
+ {0, L_6, J_6, K_6},
+ {0, L_7, J_7, K_7},
+ {0, L_8, J_8, K_8},
+ {0, L_9, J_9, K_9},
+ {0, L_10, J_10, K_10},
+ {0, L_11, J_11, K_11},
+ {0, L_12, J_12, K_12},
+ {0, L_14, J_14, K_14},
+
+ {0, C_1, A_1, B_1},
+ {0, C_3, A_3, B_3},
+ {0, C_4, A_4, B_4},
+ {0, C_5, A_5, B_5},
+ {0, C_6, A_6, B_6},
+ {0, C_7, A_7, B_7},
+ {0, C_8, A_8, B_8},
+ {0, C_9, A_9, B_9},
+ {0, C_10, A_10, B_10},
+ {0, C_11, A_11, B_11},
+ {0, C_12, A_12, B_12},
+ {0, C_14, A_14, B_14},
+
+ {0, C_15, A_15, B_15},
+ {0, C_16, A_16, B_16},
+ {0, L_15, J_15, K_15},
+ {0, L_16, J_16, K_16},
+ {0, I_15, G_15, H_15},
+ {0, I_16, G_16, H_16},
+ {0, F_15, D_15, E_15},
+ {0, F_16, D_16, E_16},
+};
+
+#endif
diff --git a/keyboards/keychron/q4/ansi_v1/ansi_v1.c b/keyboards/keychron/q4/ansi_v1/ansi_v1.c
deleted file mode 100644
index 88599103ef..0000000000
--- a/keyboards/keychron/q4/ansi_v1/ansi_v1.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C_1, A_1, B_1},
- {0, C_2, A_2, B_2},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
- {0, C_11, A_11, B_11},
- {0, C_12, A_12, B_12},
- {0, C_13, A_13, B_13},
- {0, C_14, A_14, B_14},
-
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_8, D_8, E_8},
- {0, F_9, D_9, E_9},
- {0, F_10, D_10, E_10},
- {0, F_11, D_11, E_11},
- {0, F_12, D_12, E_12},
- {0, F_13, D_13, E_13},
- {0, F_14, D_14, E_14},
-
- {0, I_1, G_1, H_1},
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {1, I_4, G_4, H_4},
- {1, I_5, G_5, H_5},
- {1, I_6, G_6, H_6},
- {1, I_7, G_7, H_7},
- {1, I_8, G_8, H_8},
- {1, I_9, G_9, H_9},
- {1, I_10, G_10, H_10},
- {1, I_11, G_11, H_11},
- {1, I_12, G_12, H_12},
- {1, I_14, G_14, H_14},
-
- {1, C_1, A_1, B_1},
- {1, C_3, A_3, B_3},
- {1, C_4, A_4, B_4},
- {1, C_5, A_5, B_5},
- {1, C_6, A_6, B_6},
- {1, C_7, A_7, B_7},
- {1, C_8, A_8, B_8},
- {1, C_9, A_9, B_9},
- {1, C_10, A_10, B_10},
- {1, C_11, A_11, B_11},
- {1, C_12, A_12, B_12},
- {1, C_14, A_14, B_14},
-
- {1, F_1, D_1, E_1},
- {1, F_2, D_2, E_2},
- {1, F_3, D_3, E_3},
- {1, F_7, D_7, E_7},
- {1, F_11, D_11, E_11},
- {1, F_12, D_12, E_12},
- {1, F_13, D_13, E_13},
- {1, F_14, D_14, E_14},
-};
-
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 },
- { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 },
- { 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, __, 40 },
- { 41, __, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, __, 52 },
- { 53, 54, 55, __, __, __, 56, __, __, __, 57, 58, 59, 60 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {16,0}, {32,0}, {48,0}, {64,0}, {81,0}, {97,0}, {113,0}, {129,0}, {145,0}, {161,0}, {177,0}, {193,0}, {218,0},
- {4,16}, {24,16}, {40,16}, {56,16}, {73,16}, {89,16}, {105,16}, {121,16}, {137,16}, {153,16}, {169,16}, {185,16}, {202,16}, {222,16},
- {6,32}, {28,32}, {44,32}, {60,32}, {77,32}, {93,32}, {109,32}, {125,32}, {141,32}, {157,32}, {173,32}, {189,32}, {216,32},
- {10,48}, {36,48}, {52,48}, {69,48}, {85,48}, {101,48}, {117,48}, {133,48}, {149,48}, {165,48}, {181,48}, {212,48},
- {2,64}, {22,64}, {42,64}, {103,64}, {164,64}, {184,64}, {204,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 1, 4, 1, 1, 1, 1,
- }
-};
-
-#endif
diff --git a/keyboards/keychron/q4/ansi_v1/config.h b/keyboards/keychron/q4/ansi_v1/config.h
deleted file mode 100644
index e11ab12b93..0000000000
--- a/keyboards/keychron/q4/ansi_v1/config.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 31
-#define DRIVER_2_LED_TOTAL 30
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE \
- { 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60 }
-
-/* Enable CapsLcok LED*/
-#define CAPS_LOCK_LED_INDEX 28
diff --git a/keyboards/keychron/q4/ansi_v1/info.json b/keyboards/keychron/q4/ansi_v1/info.json
deleted file mode 100644
index 8ee286c481..0000000000
--- a/keyboards/keychron/q4/ansi_v1/info.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "keyboard_name": "Keychron Q4",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0140",
- "device_version": "1.0.0"
- },
- "rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
- },
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
- "layouts": {
- "LAYOUT_ansi_61": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0},
- {"matrix": [0, 5], "x": 5, "y": 0},
- {"matrix": [0, 6], "x": 6, "y": 0},
- {"matrix": [0, 7], "x": 7, "y": 0},
- {"matrix": [0, 8], "x": 8, "y": 0},
- {"matrix": [0, 9], "x": 9, "y": 0},
- {"matrix": [0, 10], "x": 10, "y": 0},
- {"matrix": [0, 11], "x": 11, "y": 0},
- {"matrix": [0, 12], "x": 12, "y": 0},
- {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
-
- {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"matrix": [1, 1], "x": 1.5, "y": 1},
- {"matrix": [1, 2], "x": 2.5, "y": 1},
- {"matrix": [1, 3], "x": 3.5, "y": 1},
- {"matrix": [1, 4], "x": 4.5, "y": 1},
- {"matrix": [1, 5], "x": 5.5, "y": 1},
- {"matrix": [1, 6], "x": 6.5, "y": 1},
- {"matrix": [1, 7], "x": 7.5, "y": 1},
- {"matrix": [1, 8], "x": 8.5, "y": 1},
- {"matrix": [1, 9], "x": 9.5, "y": 1},
- {"matrix": [1, 10], "x": 10.5, "y": 1},
- {"matrix": [1, 11], "x": 11.5, "y": 1},
- {"matrix": [1, 12], "x": 12.5, "y": 1},
- {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"matrix": [2, 1], "x": 1.75, "y": 2},
- {"matrix": [2, 2], "x": 2.75, "y": 2},
- {"matrix": [2, 3], "x": 3.75, "y": 2},
- {"matrix": [2, 4], "x": 4.75, "y": 2},
- {"matrix": [2, 5], "x": 5.75, "y": 2},
- {"matrix": [2, 6], "x": 6.75, "y": 2},
- {"matrix": [2, 7], "x": 7.75, "y": 2},
- {"matrix": [2, 8], "x": 8.75, "y": 2},
- {"matrix": [2, 9], "x": 9.75, "y": 2},
- {"matrix": [2, 10], "x": 10.75, "y": 2},
- {"matrix": [2, 11], "x": 11.75, "y": 2},
- {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
- {"matrix": [3, 2], "x": 2.25, "y": 3},
- {"matrix": [3, 3], "x": 3.25, "y": 3},
- {"matrix": [3, 4], "x": 4.25, "y": 3},
- {"matrix": [3, 5], "x": 5.25, "y": 3},
- {"matrix": [3, 6], "x": 6.25, "y": 3},
- {"matrix": [3, 7], "x": 7.25, "y": 3},
- {"matrix": [3, 8], "x": 8.25, "y": 3},
- {"matrix": [3, 9], "x": 9.25, "y": 3},
- {"matrix": [3, 10], "x": 10.25, "y": 3},
- {"matrix": [3, 11], "x": 11.25, "y": 3},
- {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
-
- {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
- {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
- {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
- {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
- {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
- {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
- {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
- {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q4/ansi_v1/rules.mk b/keyboards/keychron/q4/ansi_v1/rules.mk
deleted file mode 100644
index cad488b009..0000000000
--- a/keyboards/keychron/q4/ansi_v1/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Build Options
-# change yes to no to disable.
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = no
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q4/ansi_v2/ansi_v2.c b/keyboards/keychron/q4/ansi_v2/ansi_v2.c
deleted file mode 100644
index d454a796fa..0000000000
--- a/keyboards/keychron/q4/ansi_v2/ansi_v2.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "quantum.h"
-
-#ifdef RGB_MATRIX_ENABLE
-
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, F_1, D_1, E_1},
- {0, F_2, D_2, E_2},
- {0, F_3, D_3, E_3},
- {0, F_4, D_4, E_4},
- {0, F_5, D_5, E_5},
- {0, F_6, D_6, E_6},
- {0, F_7, D_7, E_7},
- {0, F_8, D_8, E_8},
- {0, F_9, D_9, E_9},
- {0, F_10, D_10, E_10},
- {0, F_11, D_11, E_11},
- {0, F_12, D_12, E_12},
- {0, F_13, D_13, E_13},
- {0, F_14, D_14, E_14},
-
- {0, I_1, G_1, H_1},
- {0, I_2, G_2, H_2},
- {0, I_3, G_3, H_3},
- {0, I_4, G_4, H_4},
- {0, I_5, G_5, H_5},
- {0, I_6, G_6, H_6},
- {0, I_7, G_7, H_7},
- {0, I_8, G_8, H_8},
- {0, I_9, G_9, H_9},
- {0, I_10, G_10, H_10},
- {0, I_11, G_11, H_11},
- {0, I_12, G_12, H_12},
- {0, I_13, G_13, H_13},
- {0, I_14, G_14, H_14},
-
- {0, L_1, J_1, K_1},
- {0, L_2, J_2, K_2},
- {0, L_3, J_3, K_3},
- {0, L_4, J_4, K_4},
- {0, L_5, J_5, K_5},
- {0, L_6, J_6, K_6},
- {0, L_7, J_7, K_7},
- {0, L_8, J_8, K_8},
- {0, L_9, J_9, K_9},
- {0, L_10, J_10, K_10},
- {0, L_11, J_11, K_11},
- {0, L_12, J_12, K_12},
- {0, L_14, J_14, K_14},
-
- {0, C_1, A_1, B_1},
- {0, C_3, A_3, B_3},
- {0, C_4, A_4, B_4},
- {0, C_5, A_5, B_5},
- {0, C_6, A_6, B_6},
- {0, C_7, A_7, B_7},
- {0, C_8, A_8, B_8},
- {0, C_9, A_9, B_9},
- {0, C_10, A_10, B_10},
- {0, C_11, A_11, B_11},
- {0, C_12, A_12, B_12},
- {0, C_14, A_14, B_14},
-
- {0, C_15, A_15, B_15},
- {0, C_16, A_16, B_16},
- {0, L_15, J_15, K_15},
- {0, L_16, J_16, K_16},
- {0, I_15, G_15, H_15},
- {0, I_16, G_16, H_16},
- {0, F_15, D_15, E_15},
- {0, F_16, D_16, E_16},
-};
-
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 },
- { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 },
- { 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, __, 40 },
- { 41, __, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, __, 52 },
- { 53, 54, 55, __, __, __, 56, __, __, __, 57, 58, 59, 60 },
- },
- {
- // LED Index to Physical Position
- {0,0}, {16,0}, {32,0}, {48,0}, {64,0}, {81,0}, {97,0}, {113,0}, {129,0}, {145,0}, {161,0}, {177,0}, {193,0}, {218,0},
- {4,16}, {24,16}, {40,16}, {56,16}, {73,16}, {89,16}, {105,16}, {121,16}, {137,16}, {153,16}, {169,16}, {185,16}, {202,16}, {222,16},
- {6,32}, {28,32}, {44,32}, {60,32}, {77,32}, {93,32}, {109,32}, {125,32}, {141,32}, {157,32}, {173,32}, {189,32}, {216,32},
- {10,48}, {36,48}, {52,48}, {69,48}, {85,48}, {101,48}, {117,48}, {133,48}, {149,48}, {165,48}, {181,48}, {212,48},
- {2,64}, {22,64}, {42,64}, {103,64}, {164,64}, {184,64}, {204,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 1, 4, 1, 1, 1, 1,
- }
-};
-
-#endif
diff --git a/keyboards/keychron/q4/ansi_v2/config.h b/keyboards/keychron/q4/ansi_v2/config.h
deleted file mode 100644
index cc906fed03..0000000000
--- a/keyboards/keychron/q4/ansi_v2/config.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
-
-/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 61
-#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-
-#define CKLED2001_CURRENT_TUNE \
- { 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60 }
-
-/* Enable CapsLcok LED*/
-#define CAPS_LOCK_LED_INDEX 28
diff --git a/keyboards/keychron/q4/ansi_v2/info.json b/keyboards/keychron/q4/ansi_v2/info.json
deleted file mode 100644
index 8ee286c481..0000000000
--- a/keyboards/keychron/q4/ansi_v2/info.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "keyboard_name": "Keychron Q4",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
- "usb": {
- "vid": "0x3434",
- "pid": "0x0140",
- "device_version": "1.0.0"
- },
- "rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
- },
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
- "layouts": {
- "LAYOUT_ansi_61": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0},
- {"matrix": [0, 5], "x": 5, "y": 0},
- {"matrix": [0, 6], "x": 6, "y": 0},
- {"matrix": [0, 7], "x": 7, "y": 0},
- {"matrix": [0, 8], "x": 8, "y": 0},
- {"matrix": [0, 9], "x": 9, "y": 0},
- {"matrix": [0, 10], "x": 10, "y": 0},
- {"matrix": [0, 11], "x": 11, "y": 0},
- {"matrix": [0, 12], "x": 12, "y": 0},
- {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
-
- {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"matrix": [1, 1], "x": 1.5, "y": 1},
- {"matrix": [1, 2], "x": 2.5, "y": 1},
- {"matrix": [1, 3], "x": 3.5, "y": 1},
- {"matrix": [1, 4], "x": 4.5, "y": 1},
- {"matrix": [1, 5], "x": 5.5, "y": 1},
- {"matrix": [1, 6], "x": 6.5, "y": 1},
- {"matrix": [1, 7], "x": 7.5, "y": 1},
- {"matrix": [1, 8], "x": 8.5, "y": 1},
- {"matrix": [1, 9], "x": 9.5, "y": 1},
- {"matrix": [1, 10], "x": 10.5, "y": 1},
- {"matrix": [1, 11], "x": 11.5, "y": 1},
- {"matrix": [1, 12], "x": 12.5, "y": 1},
- {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
-
- {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"matrix": [2, 1], "x": 1.75, "y": 2},
- {"matrix": [2, 2], "x": 2.75, "y": 2},
- {"matrix": [2, 3], "x": 3.75, "y": 2},
- {"matrix": [2, 4], "x": 4.75, "y": 2},
- {"matrix": [2, 5], "x": 5.75, "y": 2},
- {"matrix": [2, 6], "x": 6.75, "y": 2},
- {"matrix": [2, 7], "x": 7.75, "y": 2},
- {"matrix": [2, 8], "x": 8.75, "y": 2},
- {"matrix": [2, 9], "x": 9.75, "y": 2},
- {"matrix": [2, 10], "x": 10.75, "y": 2},
- {"matrix": [2, 11], "x": 11.75, "y": 2},
- {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
-
- {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
- {"matrix": [3, 2], "x": 2.25, "y": 3},
- {"matrix": [3, 3], "x": 3.25, "y": 3},
- {"matrix": [3, 4], "x": 4.25, "y": 3},
- {"matrix": [3, 5], "x": 5.25, "y": 3},
- {"matrix": [3, 6], "x": 6.25, "y": 3},
- {"matrix": [3, 7], "x": 7.25, "y": 3},
- {"matrix": [3, 8], "x": 8.25, "y": 3},
- {"matrix": [3, 9], "x": 9.25, "y": 3},
- {"matrix": [3, 10], "x": 10.25, "y": 3},
- {"matrix": [3, 11], "x": 11.25, "y": 3},
- {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
-
- {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
- {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
- {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
- {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
- {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
- {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
- {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
- {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
- ]
- }
- }
-}
diff --git a/keyboards/keychron/q4/ansi_v2/keymaps/default/keymap.c b/keyboards/keychron/q4/ansi_v2/keymaps/default/keymap.c
deleted file mode 100644
index dd8669c3fb..0000000000
--- a/keyboards/keychron/q4/ansi_v2/keymaps/default/keymap.c
+++ /dev/null
@@ -1,66 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-// clang-format off
-
-enum layers {
- MAC_BASE,
- WIN_BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [MAC_BASE] = LAYOUT_ansi_61(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO(_FN1), MO(_FN3), KC_RCTL),
-
- [WIN_BASE] = LAYOUT_ansi_61(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN2), MO(_FN3), KC_RCTL),
-
- [_FN1] = LAYOUT_ansi_61(
- KC_GRV, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, KC_UP, KC_NO, KC_PGDN, KC_END, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN2] = LAYOUT_ansi_61(
- KC_GRV, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN3] = LAYOUT_ansi_61(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______)
-};
-
-// clang-format on \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi_v2/keymaps/keychron/keymap.c b/keyboards/keychron/q4/ansi_v2/keymaps/keychron/keymap.c
deleted file mode 100644
index d58af0f244..0000000000
--- a/keyboards/keychron/q4/ansi_v2/keymaps/keychron/keymap.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "keychron_common.h"
-
-// clang-format off
-
-enum layers {
- MAC_BASE,
- WIN_BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [MAC_BASE] = LAYOUT_ansi_61(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO(_FN1), MO(_FN3), KC_RCTL),
-
- [WIN_BASE] = LAYOUT_ansi_61(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN2), MO(_FN3), KC_RCTL),
-
- [_FN1] = LAYOUT_ansi_61(
- KC_GRV, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, KC_UP, KC_NO, KC_PGDN, KC_END, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN2] = LAYOUT_ansi_61(
- KC_GRV, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN3] = LAYOUT_ansi_61(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______)
-};
-
-// clang-format on
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (!process_record_keychron(keycode, record)) {
- return false;
- }
-
- return true;
-} \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi_v2/keymaps/keychron/rules.mk b/keyboards/keychron/q4/ansi_v2/keymaps/keychron/rules.mk
deleted file mode 100644
index 1f273de340..0000000000
--- a/keyboards/keychron/q4/ansi_v2/keymaps/keychron/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-VIA_ENABLE = yes
-
-VPATH += keyboards/keychron/common
-SRC += keychron_common.c \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi_v2/keymaps/via/keymap.c b/keyboards/keychron/q4/ansi_v2/keymaps/via/keymap.c
deleted file mode 100644
index dd8669c3fb..0000000000
--- a/keyboards/keychron/q4/ansi_v2/keymaps/via/keymap.c
+++ /dev/null
@@ -1,66 +0,0 @@
-/* Copyright 2022 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-// clang-format off
-
-enum layers {
- MAC_BASE,
- WIN_BASE,
- _FN1,
- _FN2,
- _FN3
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [MAC_BASE] = LAYOUT_ansi_61(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO(_FN1), MO(_FN3), KC_RCTL),
-
- [WIN_BASE] = LAYOUT_ansi_61(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN2), MO(_FN3), KC_RCTL),
-
- [_FN1] = LAYOUT_ansi_61(
- KC_GRV, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, KC_UP, KC_NO, KC_PGDN, KC_END, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN2] = LAYOUT_ansi_61(
- KC_GRV, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, RGB_MOD,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, KC_APP, KC_SCRL, KC_INS, KC_PGUP, KC_HOME, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, KC_UP, KC_PSCR, KC_PGDN, KC_END, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FN3] = LAYOUT_ansi_61(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______)
-};
-
-// clang-format on \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi_v2/keymaps/via/rules.mk b/keyboards/keychron/q4/ansi_v2/keymaps/via/rules.mk
deleted file mode 100644
index 036bd6d1c3..0000000000
--- a/keyboards/keychron/q4/ansi_v2/keymaps/via/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-VIA_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/keychron/q4/ansi_v2/readme.md b/keyboards/keychron/q4/ansi_v2/readme.md
deleted file mode 100644
index bd2f3fd8a8..0000000000
--- a/keyboards/keychron/q4/ansi_v2/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The ANSI variant of the Keychron Q4
diff --git a/keyboards/keychron/q4/ansi_v2/rules.mk b/keyboards/keychron/q4/ansi_v2/rules.mk
deleted file mode 100644
index cad488b009..0000000000
--- a/keyboards/keychron/q4/ansi_v2/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Build Options
-# change yes to no to disable.
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = no
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q4/config.h b/keyboards/keychron/q4/config.h
index 940ee44e77..62f8294966 100644
--- a/keyboards/keychron/q4/config.h
+++ b/keyboards/keychron/q4/config.h
@@ -25,60 +25,8 @@
/* turn off effects when suspended */
#define RGB_DISABLE_WHEN_USB_SUSPENDED
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
-
-/* EEPROM Driver Configuration */
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2)
-
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-// #define ENABLE_RGB_MATRIX_ALPHAS_MODS
-// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_BREATHING
-// #define ENABLE_RGB_MATRIX_BAND_SAT
-// #define ENABLE_RGB_MATRIX_BAND_VAL
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_ALL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#define ENABLE_RGB_MATRIX_DUAL_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-// #define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-// #define ENABLE_RGB_MATRIX_HUE_BREATHING
-// #define ENABLE_RGB_MATRIX_HUE_PENDULUM
-// #define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-// #define ENABLE_RGB_MATRIX_PIXEL_FLOW
-// #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-#define ENABLE_RGB_MATRIX_SPLASH
-// #define ENABLE_RGB_MATRIX_MULTISPLASH
-#define ENABLE_RGB_MATRIX_SOLID_SPLASH
-// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
+#define SNLED27351_CURRENT_TUNE \
+ { 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60 }
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS \ No newline at end of file
diff --git a/keyboards/keychron/q4/info.json b/keyboards/keychron/q4/info.json
new file mode 100644
index 0000000000..0a9dcf4957
--- /dev/null
+++ b/keyboards/keychron/q4/info.json
@@ -0,0 +1,62 @@
+{
+ "manufacturer": "Keychron",
+ "keyboard_name": "Keychron Q4",
+ "maintainer": "lalalademaxiya1",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
+ "features": {
+ "audio": false,
+ "backlight": false,
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true,
+ "rgblight": false
+ },
+ "matrix_pins": {
+ "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
+ "rows": ["B4", "B3", "A15", "A14", "A13"]
+ },
+ "processor": "STM32L432",
+ "rgb_matrix": {
+ "animations": {
+ "band_spiral_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "digital_rain": true,
+ "dual_beacon": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "rainbow_beacon": true,
+ "rainbow_moving_chevron": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_simple": true,
+ "solid_splash": true,
+ "splash": true,
+ "typing_heatmap": true
+ },
+ "driver": "snled27351"
+ },
+ "url": "https://github.com/Keychron",
+ "usb": {
+ "vid": "0x3434"
+ }
+} \ No newline at end of file
diff --git a/keyboards/keychron/q4/iso/config.h b/keyboards/keychron/q4/iso/config.h
index 9e4a1fc3e5..8231b9eba8 100644
--- a/keyboards/keychron/q4/iso/config.h
+++ b/keyboards/keychron/q4/iso/config.h
@@ -17,15 +17,10 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* RGB Matrix Configuration */
-#define DRIVER_1_LED_TOTAL 62
-#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-
-#define CKLED2001_CURRENT_TUNE \
- { 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60 }
+#define RGB_MATRIX_LED_COUNT 62
/* Enable CapsLcok LED*/
#define CAPS_LOCK_LED_INDEX 27
diff --git a/keyboards/keychron/q4/iso/info.json b/keyboards/keychron/q4/iso/info.json
index f8945cda61..13b25f74e0 100644
--- a/keyboards/keychron/q4/iso/info.json
+++ b/keyboards/keychron/q4/iso/info.json
@@ -1,23 +1,78 @@
{
- "keyboard_name": "Keychron Q4",
- "manufacturer": "Keychron",
- "url": "https://github.com/Keychron",
- "maintainer": "lalalademaxiya1",
"usb": {
- "vid": "0x3434",
"pid": "0x0142",
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
- },
- "matrix_pins": {
- "cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
- "rows": ["B4", "B3", "A15", "A14", "A13"]
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 81, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 97, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 113, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 129, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 145, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 161, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 177, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 193, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 218, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1},
+ {"matrix": [1, 1], "x": 24, "y": 16, "flags": 4},
+ {"matrix": [1, 2], "x": 40, "y": 16, "flags": 4},
+ {"matrix": [1, 3], "x": 56, "y": 16, "flags": 4},
+ {"matrix": [1, 4], "x": 73, "y": 16, "flags": 4},
+ {"matrix": [1, 5], "x": 89, "y": 16, "flags": 4},
+ {"matrix": [1, 6], "x": 105, "y": 16, "flags": 4},
+ {"matrix": [1, 7], "x": 121, "y": 16, "flags": 4},
+ {"matrix": [1, 8], "x": 137, "y": 16, "flags": 4},
+ {"matrix": [1, 9], "x": 153, "y": 16, "flags": 4},
+ {"matrix": [1, 10], "x": 169, "y": 16, "flags": 4},
+ {"matrix": [1, 11], "x": 185, "y": 16, "flags": 4},
+ {"matrix": [1, 12], "x": 202, "y": 16, "flags": 4},
+
+ {"matrix": [2, 0], "x": 6, "y": 32, "flags": 8},
+ {"matrix": [2, 1], "x": 28, "y": 32, "flags": 4},
+ {"matrix": [2, 2], "x": 44, "y": 32, "flags": 4},
+ {"matrix": [2, 3], "x": 60, "y": 32, "flags": 4},
+ {"matrix": [2, 4], "x": 77, "y": 32, "flags": 4},
+ {"matrix": [2, 5], "x": 93, "y": 32, "flags": 4},
+ {"matrix": [2, 6], "x": 109, "y": 32, "flags": 4},
+ {"matrix": [2, 7], "x": 125, "y": 32, "flags": 4},
+ {"matrix": [2, 8], "x": 141, "y": 32, "flags": 4},
+ {"matrix": [2, 9], "x": 157, "y": 32, "flags": 4},
+ {"matrix": [2, 10], "x": 173, "y": 32, "flags": 4},
+ {"matrix": [2, 11], "x": 189, "y": 32, "flags": 4},
+ {"matrix": [2, 13], "x": 206, "y": 32, "flags": 4},
+ {"matrix": [1, 13], "x": 224, "y": 24, "flags": 1},
+
+ {"matrix": [3, 0], "x": 2, "y": 48, "flags": 1},
+ {"matrix": [3, 1], "x": 20, "y": 48, "flags": 4},
+ {"matrix": [3, 2], "x": 36, "y": 48, "flags": 4},
+ {"matrix": [3, 3], "x": 52, "y": 48, "flags": 4},
+ {"matrix": [3, 4], "x": 69, "y": 48, "flags": 4},
+ {"matrix": [3, 5], "x": 85, "y": 48, "flags": 4},
+ {"matrix": [3, 6], "x": 101, "y": 48, "flags": 4},
+ {"matrix": [3, 7], "x": 117, "y": 48, "flags": 4},
+ {"matrix": [3, 8], "x": 133, "y": 48, "flags": 4},
+ {"matrix": [3, 9], "x": 149, "y": 48, "flags": 4},
+ {"matrix": [3, 10], "x": 165, "y": 48, "flags": 4},
+ {"matrix": [3, 11], "x": 181, "y": 48, "flags": 4},
+ {"matrix": [3, 13], "x": 212, "y": 48, "flags": 1},
+
+ {"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
+ {"matrix": [4, 1], "x": 22, "y": 64, "flags": 1},
+ {"matrix": [4, 2], "x": 42, "y": 64, "flags": 1},
+ {"matrix": [4, 6], "x": 103, "y": 64, "flags": 4},
+ {"matrix": [4, 10], "x": 164, "y": 64, "flags": 1},
+ {"matrix": [4, 11], "x": 184, "y": 64, "flags": 1},
+ {"matrix": [4, 12], "x": 204, "y": 64, "flags": 1},
+ {"matrix": [4, 13], "x": 224, "y": 64, "flags": 1}
+ ]
},
- "diode_direction": "ROW2COL",
- "processor": "STM32L432",
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_iso_62": {
"layout": [
diff --git a/keyboards/keychron/q4/iso/iso.c b/keyboards/keychron/q4/iso/iso.c
index 24cbcfd745..a808c3ad74 100644
--- a/keyboards/keychron/q4/iso/iso.c
+++ b/keyboards/keychron/q4/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
@@ -93,33 +93,4 @@ const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
{0, F_16, D_16, E_16},
};
-#define __ NO_LED
-
-led_config_t g_led_config = {
- {
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 },
- { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 40 },
- { 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, __, 39 },
- { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, __, 53 },
- { 54, 55, 56, __, __, __, 57, __, __, __, 58, 59, 60, 61 },
- },
- {
- // LED Index to Physical Position
- {0, 0}, {16, 0}, {32, 0}, {48, 0}, {64, 0}, {81, 0}, { 97, 0}, {113, 0}, {129, 0}, {145, 0}, {161, 0}, {177, 0}, {193, 0}, {218, 0},
- {4,16}, {24,16}, {40,16}, {56,16}, {73,16}, {89,16}, {105,16}, {121,16}, {137,16}, {153,16}, {169,16}, {185,16}, {202,16},
- {6,32}, {28,32}, {44,32}, {60,32}, {77,32}, {93,32}, {109,32}, {125,32}, {141,32}, {157,32}, {173,32}, {189,32}, {206,32}, {224,24},
- {2,48}, {20,48}, {36,48}, {52,48}, {69,48}, {85,48}, {101,48}, {117,48}, {133,48}, {149,48}, {165,48}, {181,48}, {212,48},
- {2,64}, {22,64}, {42,64}, {103,64}, {164,64}, {184,64}, {204,64}, {224,64},
- },
- {
- // RGB LED Index to Flag
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 1, 4, 1, 1, 1, 1,
- }
-};
-
#endif
diff --git a/keyboards/keychron/q4/iso/rules.mk b/keyboards/keychron/q4/iso/rules.mk
index cad488b009..7ff128fa69 100644
--- a/keyboards/keychron/q4/iso/rules.mk
+++ b/keyboards/keychron/q4/iso/rules.mk
@@ -1,18 +1 @@
-# Build Options
-# change yes to no to disable.
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable USB N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-DIP_SWITCH_ENABLE = yes
-RGB_MATRIX_ENABLE = yes
-LTO_ENABLE = no
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/keychron/q4/readme.md b/keyboards/keychron/q4/readme.md
index 2c3d9c8572..711eeadbb4 100644
--- a/keyboards/keychron/q4/readme.md
+++ b/keyboards/keychron/q4/readme.md
@@ -1,18 +1,26 @@
# Keychron Q4
+![Keychron Q4](https://i.imgur.com/daIVjVGh.jpg)
+
A customizable 60% keyboard.
+Q4 Version 1 uses only 2 ICs for CKLED2001 and Q4 Version 2 uses only one IC.
+
* Keyboard Maintainer: [Keychron](https://github.com/keychron)
* Hardware Supported: Keychron Q4
-* Hardware Availability: [Keychron](https://www.keychron.com)
+* Hardware Availability: [Keychron Q4 QMK Custom Mechanical Keyboard](https://www.keychron.com/products/keychron-q4-qmk-via-custom-mechanical-keyboard)
Make example for this keyboard (after setting up your build environment):
- make keychron/q4/ansi_v2:default
+ make keychron/q4/ansi/v1:default
+ make keychron/q4/ansi/v2:default
+ make keychron/q4/iso:default
Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid))
- make keychron/q4/ansi_v2:default:flash
+ make keychron/q4/ansi/v1:default:flash
+ make keychron/q4/ansi/v2:default:flash
+ make keychron/q4/iso:default:flash
**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard.
diff --git a/keyboards/keychron/q5/ansi/ansi.c b/keyboards/keychron/q5/ansi/ansi.c
index dda563cd79..8c80245fbc 100644
--- a/keyboards/keychron/q5/ansi/ansi.c
+++ b/keyboards/keychron/q5/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q5/ansi/info.json b/keyboards/keychron/q5/ansi/info.json
index 55d7ae0165..8795957c45 100644
--- a/keyboards/keychron/q5/ansi/info.json
+++ b/keyboards/keychron/q5/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/q5/ansi/rules.mk b/keyboards/keychron/q5/ansi/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/q5/ansi/rules.mk
+++ b/keyboards/keychron/q5/ansi/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q5/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q5/ansi_encoder/ansi_encoder.c
index 4d3cc0f036..d5f67f1297 100644
--- a/keyboards/keychron/q5/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q5/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q5/ansi_encoder/info.json b/keyboards/keychron/q5/ansi_encoder/info.json
index 468261b1e9..ae4a58e55d 100644
--- a/keyboards/keychron/q5/ansi_encoder/info.json
+++ b/keyboards/keychron/q5/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q5/ansi_encoder/rules.mk b/keyboards/keychron/q5/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/q5/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q5/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q5/config.h b/keyboards/keychron/q5/config.h
index bf25cb7441..0640331997 100644
--- a/keyboards/keychron/q5/config.h
+++ b/keyboards/keychron/q5/config.h
@@ -30,11 +30,10 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xB6, 0xB6, 0x56, 0xB6, 0xB6, 0x56, 0xB6, 0xB6, 0x56, 0xB6, 0xB6, 0x56 }
/* DIP switch */
diff --git a/keyboards/keychron/q5/iso/info.json b/keyboards/keychron/q5/iso/info.json
index 3b0b2ea1a0..2cc2ce9640 100644
--- a/keyboards/keychron/q5/iso/info.json
+++ b/keyboards/keychron/q5/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/q5/iso/iso.c b/keyboards/keychron/q5/iso/iso.c
index 65924abd76..8a7cb863ec 100644
--- a/keyboards/keychron/q5/iso/iso.c
+++ b/keyboards/keychron/q5/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q5/iso/rules.mk b/keyboards/keychron/q5/iso/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/q5/iso/rules.mk
+++ b/keyboards/keychron/q5/iso/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q5/iso_encoder/info.json b/keyboards/keychron/q5/iso_encoder/info.json
index eefa6dc693..a425cf3145 100644
--- a/keyboards/keychron/q5/iso_encoder/info.json
+++ b/keyboards/keychron/q5/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q5/iso_encoder/iso_encoder.c b/keyboards/keychron/q5/iso_encoder/iso_encoder.c
index 22ba9e2d4e..009e8043db 100644
--- a/keyboards/keychron/q5/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q5/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q5/iso_encoder/rules.mk b/keyboards/keychron/q5/iso_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/q5/iso_encoder/rules.mk
+++ b/keyboards/keychron/q5/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q6/ansi/ansi.c b/keyboards/keychron/q6/ansi/ansi.c
index a81d5f9e9f..80eaad02b3 100644
--- a/keyboards/keychron/q6/ansi/ansi.c
+++ b/keyboards/keychron/q6/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q6/ansi/info.json b/keyboards/keychron/q6/ansi/info.json
index fdec220e80..108cc46379 100644
--- a/keyboards/keychron/q6/ansi/info.json
+++ b/keyboards/keychron/q6/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/q6/ansi/rules.mk b/keyboards/keychron/q6/ansi/rules.mk
index ec47b77d0f..9383cc955f 100644
--- a/keyboards/keychron/q6/ansi/rules.mk
+++ b/keyboards/keychron/q6/ansi/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q6/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q6/ansi_encoder/ansi_encoder.c
index 6fbece3678..9c88533620 100644
--- a/keyboards/keychron/q6/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q6/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q6/ansi_encoder/info.json b/keyboards/keychron/q6/ansi_encoder/info.json
index df3902f44a..fc2da19f73 100644
--- a/keyboards/keychron/q6/ansi_encoder/info.json
+++ b/keyboards/keychron/q6/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q6/ansi_encoder/rules.mk b/keyboards/keychron/q6/ansi_encoder/rules.mk
index 77b90f2466..929c4532a0 100644
--- a/keyboards/keychron/q6/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q6/ansi_encoder/rules.mk
@@ -14,8 +14,6 @@ ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q6/config.h b/keyboards/keychron/q6/config.h
index 060804057f..2edceb09d7 100644
--- a/keyboards/keychron/q6/config.h
+++ b/keyboards/keychron/q6/config.h
@@ -24,11 +24,10 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA4, 0xA4, 0x52, 0xA4, 0xA4, 0x52, 0xA4, 0xA4, 0x52, 0xA4, 0xA4, 0x52 }
/* DIP switch */
diff --git a/keyboards/keychron/q6/iso/info.json b/keyboards/keychron/q6/iso/info.json
index dfaa20aa93..269605ff8b 100644
--- a/keyboards/keychron/q6/iso/info.json
+++ b/keyboards/keychron/q6/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/q6/iso/iso.c b/keyboards/keychron/q6/iso/iso.c
index f2081177e9..d2aa010c05 100644
--- a/keyboards/keychron/q6/iso/iso.c
+++ b/keyboards/keychron/q6/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q6/iso/rules.mk b/keyboards/keychron/q6/iso/rules.mk
index 6548448302..f16a475f61 100644
--- a/keyboards/keychron/q6/iso/rules.mk
+++ b/keyboards/keychron/q6/iso/rules.mk
@@ -14,8 +14,6 @@ DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
RAW_ENABLE = yes
LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q6/iso_encoder/info.json b/keyboards/keychron/q6/iso_encoder/info.json
index 4590616831..e5aa0bd8f5 100644
--- a/keyboards/keychron/q6/iso_encoder/info.json
+++ b/keyboards/keychron/q6/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q6/iso_encoder/iso_encoder.c b/keyboards/keychron/q6/iso_encoder/iso_encoder.c
index e9a6f6edfc..66e066b839 100644
--- a/keyboards/keychron/q6/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q6/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q6/iso_encoder/rules.mk b/keyboards/keychron/q6/iso_encoder/rules.mk
index 548b0d696b..712c2ef1fd 100644
--- a/keyboards/keychron/q6/iso_encoder/rules.mk
+++ b/keyboards/keychron/q6/iso_encoder/rules.mk
@@ -15,8 +15,6 @@ DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
RAW_ENABLE = yes
LTO_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q60/ansi/ansi.c b/keyboards/keychron/q60/ansi/ansi.c
index bb3c84b64a..ac72737146 100644
--- a/keyboards/keychron/q60/ansi/ansi.c
+++ b/keyboards/keychron/q60/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q60/ansi/info.json b/keyboards/keychron/q60/ansi/info.json
index 95b1c4e472..f5832b2d8f 100644
--- a/keyboards/keychron/q60/ansi/info.json
+++ b/keyboards/keychron/q60/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
diff --git a/keyboards/keychron/q60/ansi/rules.mk b/keyboards/keychron/q60/ansi/rules.mk
index 46f5aef144..468ed6fae3 100644
--- a/keyboards/keychron/q60/ansi/rules.mk
+++ b/keyboards/keychron/q60/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q60/config.h b/keyboards/keychron/q60/config.h
index 779feea4ce..6b6c3c5f48 100644
--- a/keyboards/keychron/q60/config.h
+++ b/keyboards/keychron/q60/config.h
@@ -17,8 +17,7 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -27,7 +26,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xD8, 0xD8, 0x60, 0xD8, 0xD8, 0x60, 0xD8, 0xD8, 0x60, 0xD8, 0xD8, 0x60 }
/* DIP switch */
diff --git a/keyboards/keychron/q65/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q65/ansi_encoder/ansi_encoder.c
index fffa00194d..8e9b37b806 100644
--- a/keyboards/keychron/q65/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q65/ansi_encoder/ansi_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q65/ansi_encoder/info.json b/keyboards/keychron/q65/ansi_encoder/info.json
index 0f7679945a..a42d7d289c 100644
--- a/keyboards/keychron/q65/ansi_encoder/info.json
+++ b/keyboards/keychron/q65/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/q65/ansi_encoder/rules.mk b/keyboards/keychron/q65/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/q65/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q65/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/q65/config.h b/keyboards/keychron/q65/config.h
index 148ea9ad14..84c4e9fc17 100644
--- a/keyboards/keychron/q65/config.h
+++ b/keyboards/keychron/q65/config.h
@@ -26,9 +26,8 @@
{ NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, A2, A3, A4, A5, A6, A7, B0, B1 }
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -37,9 +36,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 30U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE \
{ 0xB8, 0xB8, 0x58, 0xB8, 0xB8, 0x58, 0xB8, 0xB8, 0x58, 0xB8, 0xB8, 0x58 }
/* Disable DIP switch in matrix data */
diff --git a/keyboards/keychron/q7/ansi/ansi.c b/keyboards/keychron/q7/ansi/ansi.c
index 3dccb8b660..190c110a77 100644
--- a/keyboards/keychron/q7/ansi/ansi.c
+++ b/keyboards/keychron/q7/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q7/ansi/info.json b/keyboards/keychron/q7/ansi/info.json
index 2549e329f2..717fe357b7 100644
--- a/keyboards/keychron/q7/ansi/info.json
+++ b/keyboards/keychron/q7/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "B5"],
diff --git a/keyboards/keychron/q7/ansi/rules.mk b/keyboards/keychron/q7/ansi/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/q7/ansi/rules.mk
+++ b/keyboards/keychron/q7/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q7/config.h b/keyboards/keychron/q7/config.h
index 0ea9ee5f46..4794c80011 100644
--- a/keyboards/keychron/q7/config.h
+++ b/keyboards/keychron/q7/config.h
@@ -17,9 +17,8 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -28,9 +27,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define SCAN_PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE \
{ 0xF8, 0xF8, 0x80, 0xF8, 0xF8, 0x80, 0xF8, 0xF8, 0x80, 0xF8, 0xF8, 0x80 }
/* DIP switch */
diff --git a/keyboards/keychron/q7/iso/info.json b/keyboards/keychron/q7/iso/info.json
index 27262eb4f3..d57c5b17b9 100644
--- a/keyboards/keychron/q7/iso/info.json
+++ b/keyboards/keychron/q7/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "B5"],
diff --git a/keyboards/keychron/q7/iso/iso.c b/keyboards/keychron/q7/iso/iso.c
index 039bd13836..13354b9f0b 100644
--- a/keyboards/keychron/q7/iso/iso.c
+++ b/keyboards/keychron/q7/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q7/iso/rules.mk b/keyboards/keychron/q7/iso/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/q7/iso/rules.mk
+++ b/keyboards/keychron/q7/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q8/ansi/ansi.c b/keyboards/keychron/q8/ansi/ansi.c
index e9c4edeb3e..3bb10b383d 100644
--- a/keyboards/keychron/q8/ansi/ansi.c
+++ b/keyboards/keychron/q8/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q8/ansi/info.json b/keyboards/keychron/q8/ansi/info.json
index 7ee5b6c21f..f733004270 100644
--- a/keyboards/keychron/q8/ansi/info.json
+++ b/keyboards/keychron/q8/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/q8/ansi/rules.mk b/keyboards/keychron/q8/ansi/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/q8/ansi/rules.mk
+++ b/keyboards/keychron/q8/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q8/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q8/ansi_encoder/ansi_encoder.c
index e9c4edeb3e..3bb10b383d 100644
--- a/keyboards/keychron/q8/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q8/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q8/ansi_encoder/info.json b/keyboards/keychron/q8/ansi_encoder/info.json
index a4c3ac77e1..ccf9453d53 100644
--- a/keyboards/keychron/q8/ansi_encoder/info.json
+++ b/keyboards/keychron/q8/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/q8/ansi_encoder/rules.mk b/keyboards/keychron/q8/ansi_encoder/rules.mk
index 5091fe9414..5d77f09971 100644
--- a/keyboards/keychron/q8/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q8/ansi_encoder/rules.mk
@@ -13,6 +13,3 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q8/config.h b/keyboards/keychron/q8/config.h
index e0f6c673a5..7ecbf40b23 100644
--- a/keyboards/keychron/q8/config.h
+++ b/keyboards/keychron/q8/config.h
@@ -20,9 +20,8 @@
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -31,9 +30,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE \
{ 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60 }
/* DIP switch */
diff --git a/keyboards/keychron/q8/iso/info.json b/keyboards/keychron/q8/iso/info.json
index 03a6cd1fdd..28d586984e 100644
--- a/keyboards/keychron/q8/iso/info.json
+++ b/keyboards/keychron/q8/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/q8/iso/iso.c b/keyboards/keychron/q8/iso/iso.c
index 205989383e..dbcefd76c0 100644
--- a/keyboards/keychron/q8/iso/iso.c
+++ b/keyboards/keychron/q8/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q8/iso/rules.mk b/keyboards/keychron/q8/iso/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/q8/iso/rules.mk
+++ b/keyboards/keychron/q8/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q8/iso_encoder/info.json b/keyboards/keychron/q8/iso_encoder/info.json
index eb9dc22503..0d96f3f193 100644
--- a/keyboards/keychron/q8/iso_encoder/info.json
+++ b/keyboards/keychron/q8/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/q8/iso_encoder/iso_encoder.c b/keyboards/keychron/q8/iso_encoder/iso_encoder.c
index 205989383e..dbcefd76c0 100644
--- a/keyboards/keychron/q8/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q8/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q8/iso_encoder/rules.mk b/keyboards/keychron/q8/iso_encoder/rules.mk
index 5091fe9414..5d77f09971 100644
--- a/keyboards/keychron/q8/iso_encoder/rules.mk
+++ b/keyboards/keychron/q8/iso_encoder/rules.mk
@@ -13,6 +13,3 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q9/ansi/ansi.c b/keyboards/keychron/q9/ansi/ansi.c
index b98149a5f8..9178c8dcc7 100644
--- a/keyboards/keychron/q9/ansi/ansi.c
+++ b/keyboards/keychron/q9/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q9/ansi/info.json b/keyboards/keychron/q9/ansi/info.json
index 952d3158c8..ccb29a749b 100644
--- a/keyboards/keychron/q9/ansi/info.json
+++ b/keyboards/keychron/q9/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"],
diff --git a/keyboards/keychron/q9/ansi/rules.mk b/keyboards/keychron/q9/ansi/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/q9/ansi/rules.mk
+++ b/keyboards/keychron/q9/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q9/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q9/ansi_encoder/ansi_encoder.c
index de0eda1c02..58d66e0473 100644
--- a/keyboards/keychron/q9/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q9/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q9/ansi_encoder/info.json b/keyboards/keychron/q9/ansi_encoder/info.json
index 4fd5352638..3826a1b768 100644
--- a/keyboards/keychron/q9/ansi_encoder/info.json
+++ b/keyboards/keychron/q9/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"],
diff --git a/keyboards/keychron/q9/ansi_encoder/rules.mk b/keyboards/keychron/q9/ansi_encoder/rules.mk
index 911c497043..ed8fd33800 100644
--- a/keyboards/keychron/q9/ansi_encoder/rules.mk
+++ b/keyboards/keychron/q9/ansi_encoder/rules.mk
@@ -14,6 +14,3 @@ ENCODER_ENABLE = yes # Enable Encoder
ENCODER_MAP_ENBALE = no
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q9/config.h b/keyboards/keychron/q9/config.h
index 742dde3ff2..4226980d3e 100644
--- a/keyboards/keychron/q9/config.h
+++ b/keyboards/keychron/q9/config.h
@@ -23,8 +23,7 @@
#define DIP_SWITCH_MATRIX_GRID { { 3, 4 } }
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -33,7 +32,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xF8, 0xF8, 0x70, 0xF8, 0xF8, 0x70, 0xF8, 0xF8, 0x70, 0xF8, 0xF8, 0x70 }
/* turn off effects when suspended */
diff --git a/keyboards/keychron/q9/iso/info.json b/keyboards/keychron/q9/iso/info.json
index 3e9a7690c1..a9586d6d91 100644
--- a/keyboards/keychron/q9/iso/info.json
+++ b/keyboards/keychron/q9/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"],
diff --git a/keyboards/keychron/q9/iso/iso.c b/keyboards/keychron/q9/iso/iso.c
index 0e258e8c63..1917b61f37 100644
--- a/keyboards/keychron/q9/iso/iso.c
+++ b/keyboards/keychron/q9/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q9/iso/rules.mk b/keyboards/keychron/q9/iso/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/q9/iso/rules.mk
+++ b/keyboards/keychron/q9/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q9/iso_encoder/info.json b/keyboards/keychron/q9/iso_encoder/info.json
index ecf944744d..1c74566da1 100644
--- a/keyboards/keychron/q9/iso_encoder/info.json
+++ b/keyboards/keychron/q9/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"],
diff --git a/keyboards/keychron/q9/iso_encoder/iso_encoder.c b/keyboards/keychron/q9/iso_encoder/iso_encoder.c
index 0804f33671..3a161fe9d7 100644
--- a/keyboards/keychron/q9/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/q9/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q9/iso_encoder/rules.mk b/keyboards/keychron/q9/iso_encoder/rules.mk
index 911c497043..ed8fd33800 100644
--- a/keyboards/keychron/q9/iso_encoder/rules.mk
+++ b/keyboards/keychron/q9/iso_encoder/rules.mk
@@ -14,6 +14,3 @@ ENCODER_ENABLE = yes # Enable Encoder
ENCODER_MAP_ENBALE = no
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/q9_plus/ansi_encoder/ansi_encoder.c b/keyboards/keychron/q9_plus/ansi_encoder/ansi_encoder.c
index c0b4b3a32d..d264334fa0 100755
--- a/keyboards/keychron/q9_plus/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/q9_plus/ansi_encoder/ansi_encoder.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/q9_plus/config.h b/keyboards/keychron/q9_plus/config.h
index a8cba07e90..c9ef05b613 100755
--- a/keyboards/keychron/q9_plus/config.h
+++ b/keyboards/keychron/q9_plus/config.h
@@ -23,8 +23,7 @@
#define DIP_SWITCH_MATRIX_GRID {{ 3, 4 }}
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -34,7 +33,7 @@
#define I2C1_TIMINGR_SCLL 51U
/* Set LED driver current */
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xF8, 0xF8, 0x70, 0xF8, 0xF8, 0x70, 0xF8, 0xF8, 0x70, 0xF8, 0xF8, 0x70 }
/* turn off effects when suspended */
diff --git a/keyboards/keychron/q9_plus/info.json b/keyboards/keychron/q9_plus/info.json
index c56650cb1d..9f8703de37 100755
--- a/keyboards/keychron/q9_plus/info.json
+++ b/keyboards/keychron/q9_plus/info.json
@@ -96,7 +96,7 @@
}
},
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"animations": {
"breathing": true,
"band_spiral_val": true,
diff --git a/keyboards/keychron/s1/ansi/rgb/config.h b/keyboards/keychron/s1/ansi/rgb/config.h
index 9cf8df3b82..647a877a4c 100644
--- a/keyboards/keychron/s1/ansi/rgb/config.h
+++ b/keyboards/keychron/s1/ansi/rgb/config.h
@@ -17,16 +17,14 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 46
#define DRIVER_2_LED_TOTAL 38
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE \
{ 0xA0, 0xA0, 0x48, 0xA0, 0xA0, 0x48, 0xA0, 0xA0, 0x48, 0xA0, 0xA0, 0x48 }
/* Disable RGB lighting when PC is in suspend */
diff --git a/keyboards/keychron/s1/ansi/rgb/info.json b/keyboards/keychron/s1/ansi/rgb/info.json
index 3bef5f343c..6b49cb18e0 100644
--- a/keyboards/keychron/s1/ansi/rgb/info.json
+++ b/keyboards/keychron/s1/ansi/rgb/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"],
diff --git a/keyboards/keychron/s1/ansi/rgb/rgb.c b/keyboards/keychron/s1/ansi/rgb/rgb.c
index a0a2d25f94..ca39b0c796 100644
--- a/keyboards/keychron/s1/ansi/rgb/rgb.c
+++ b/keyboards/keychron/s1/ansi/rgb/rgb.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/s1/ansi/rgb/rules.mk b/keyboards/keychron/s1/ansi/rgb/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/s1/ansi/rgb/rules.mk
+++ b/keyboards/keychron/s1/ansi/rgb/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/s1/ansi/white/config.h b/keyboards/keychron/s1/ansi/white/config.h
index 65a79726ca..fbe02caeb1 100644
--- a/keyboards/keychron/s1/ansi/white/config.h
+++ b/keyboards/keychron/s1/ansi/white/config.h
@@ -17,14 +17,12 @@
#pragma once
/* LED Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 84
#define LED_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_6CHANNEL
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_6_CHANNEL
+#define SNLED27351_CURRENT_TUNE \
{ 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80 } // 250mA
// { 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40 } // 127mA
diff --git a/keyboards/keychron/s1/ansi/white/info.json b/keyboards/keychron/s1/ansi/white/info.json
index ff0a6b69cb..bcd64eea59 100644
--- a/keyboards/keychron/s1/ansi/white/info.json
+++ b/keyboards/keychron/s1/ansi/white/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"led_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "C14"],
diff --git a/keyboards/keychron/s1/ansi/white/rules.mk b/keyboards/keychron/s1/ansi/white/rules.mk
index cb70ced917..afcbe18d62 100644
--- a/keyboards/keychron/s1/ansi/white/rules.mk
+++ b/keyboards/keychron/s1/ansi/white/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
LED_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/s1/ansi/white/white.c b/keyboards/keychron/s1/ansi/white/white.c
index e41ba06401..b3a49ae9eb 100644
--- a/keyboards/keychron/s1/ansi/white/white.c
+++ b/keyboards/keychron/s1/ansi/white/white.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[LED_MATRIX_LED_COUNT] = {
-/* Refer to CKLED2001 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[LED_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | LED address
* | | */
diff --git a/keyboards/keychron/v1/ansi/ansi.c b/keyboards/keychron/v1/ansi/ansi.c
index dc488d1b73..ed8a6ed1af 100644
--- a/keyboards/keychron/v1/ansi/ansi.c
+++ b/keyboards/keychron/v1/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v1/ansi/config.h b/keyboards/keychron/v1/ansi/config.h
index 143042076d..5d10cae886 100644
--- a/keyboards/keychron/v1/ansi/config.h
+++ b/keyboards/keychron/v1/ansi/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 37
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50 }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/v1/ansi/info.json b/keyboards/keychron/v1/ansi/info.json
index f4c526bfdc..34fdd6ac31 100644
--- a/keyboards/keychron/v1/ansi/info.json
+++ b/keyboards/keychron/v1/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v1/ansi/keymaps/vnmm/keymap.c b/keyboards/keychron/v1/ansi/keymaps/vnmm/keymap.c
deleted file mode 100644
index 6f26cc8729..0000000000
--- a/keyboards/keychron/v1/ansi/keymaps/vnmm/keymap.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "vnmm.h"
-
-// clang-format off
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [MAC_BASE] = LAYOUT_ansi_82(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MAC_F, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [MAC_FN] = LAYOUT_ansi_82(
- _______, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, KC_MUTE,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
-
- [WIN_BASE] = LAYOUT_ansi_82(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, WIN_F, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [WIN_FN] = LAYOUT_ansi_82(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, KC_END,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
-};
diff --git a/keyboards/keychron/v1/ansi/keymaps/vnmm/readme.md b/keyboards/keychron/v1/ansi/keymaps/vnmm/readme.md
deleted file mode 100644
index 1ee0e0b117..0000000000
--- a/keyboards/keychron/v1/ansi/keymaps/vnmm/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Vnmm's Keychron V1 ansi layout
-
-This keymap builds on the default but with some extras I use on all my keyboards
-
-## Features
-
-- Alphabet keys light up red when caps lock is on or shift is pressed
-- Pressing either FN shows keys that have a definition
-- Via enabled
-- Reset to bootloader with FN+Space
diff --git a/keyboards/keychron/v1/ansi/rules.mk b/keyboards/keychron/v1/ansi/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/v1/ansi/rules.mk
+++ b/keyboards/keychron/v1/ansi/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v1/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v1/ansi_encoder/ansi_encoder.c
index dc488d1b73..ed8a6ed1af 100644
--- a/keyboards/keychron/v1/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v1/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v1/ansi_encoder/config.h b/keyboards/keychron/v1/ansi_encoder/config.h
index c32e4d104a..ea0733eeaf 100644
--- a/keyboards/keychron/v1/ansi_encoder/config.h
+++ b/keyboards/keychron/v1/ansi_encoder/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 37
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50 }
/* Encoder Configuration */
diff --git a/keyboards/keychron/v1/ansi_encoder/info.json b/keyboards/keychron/v1/ansi_encoder/info.json
index 9beffb9f6a..43e07609ae 100644
--- a/keyboards/keychron/v1/ansi_encoder/info.json
+++ b/keyboards/keychron/v1/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v1/ansi_encoder/rules.mk b/keyboards/keychron/v1/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v1/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v1/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v1/config.h b/keyboards/keychron/v1/config.h
index e5b82a143d..e5b6805859 100644
--- a/keyboards/keychron/v1/config.h
+++ b/keyboards/keychron/v1/config.h
@@ -32,9 +32,8 @@
#define DIP_SWITCH_MATRIX_GRID { {5,4} }
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -43,8 +42,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* turn off effects when suspended */
#define RGB_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/keychron/v1/iso/config.h b/keyboards/keychron/v1/iso/config.h
index 13ebd695f3..acb35ac7ac 100644
--- a/keyboards/keychron/v1/iso/config.h
+++ b/keyboards/keychron/v1/iso/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 38
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50 }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/v1/iso/info.json b/keyboards/keychron/v1/iso/info.json
index 5a4c74234c..6dbf50a931 100644
--- a/keyboards/keychron/v1/iso/info.json
+++ b/keyboards/keychron/v1/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v1/iso/iso.c b/keyboards/keychron/v1/iso/iso.c
index 1d9ef76997..00909c85e3 100644
--- a/keyboards/keychron/v1/iso/iso.c
+++ b/keyboards/keychron/v1/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v1/iso/rules.mk b/keyboards/keychron/v1/iso/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/v1/iso/rules.mk
+++ b/keyboards/keychron/v1/iso/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v1/iso_encoder/config.h b/keyboards/keychron/v1/iso_encoder/config.h
index fd231aa98a..1a928cd9b7 100644
--- a/keyboards/keychron/v1/iso_encoder/config.h
+++ b/keyboards/keychron/v1/iso_encoder/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 38
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50, 0xA6, 0xA6, 0x50 }
/* Encoder Configuration */
diff --git a/keyboards/keychron/v1/iso_encoder/info.json b/keyboards/keychron/v1/iso_encoder/info.json
index 106b43b5e7..1f009ac0c7 100644
--- a/keyboards/keychron/v1/iso_encoder/info.json
+++ b/keyboards/keychron/v1/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v1/iso_encoder/iso_encoder.c b/keyboards/keychron/v1/iso_encoder/iso_encoder.c
index 1d9ef76997..00909c85e3 100644
--- a/keyboards/keychron/v1/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v1/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v1/iso_encoder/rules.mk b/keyboards/keychron/v1/iso_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v1/iso_encoder/rules.mk
+++ b/keyboards/keychron/v1/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v1/jis/config.h b/keyboards/keychron/v1/jis/config.h
index 300beba867..ef778528fe 100644
--- a/keyboards/keychron/v1/jis/config.h
+++ b/keyboards/keychron/v1/jis/config.h
@@ -16,17 +16,12 @@
#pragma once
-/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
-
/* RGB Matrix Configuration */
#define DRIVER_1_LED_TOTAL 46
#define DRIVER_2_LED_TOTAL 40
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA0, 0xA0, 0x4D, 0xA0, 0xA0, 0x4D, 0xA0, 0xA0, 0x4D, 0xA0, 0xA0, 0x4D }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/v1/jis/info.json b/keyboards/keychron/v1/jis/info.json
index 16365ccd9e..28425b5b50 100644
--- a/keyboards/keychron/v1/jis/info.json
+++ b/keyboards/keychron/v1/jis/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v1/jis/jis.c b/keyboards/keychron/v1/jis/jis.c
index 7f2f02bfa5..6bc647656d 100644
--- a/keyboards/keychron/v1/jis/jis.c
+++ b/keyboards/keychron/v1/jis/jis.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v1/jis/rules.mk b/keyboards/keychron/v1/jis/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/v1/jis/rules.mk
+++ b/keyboards/keychron/v1/jis/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v1/jis_encoder/config.h b/keyboards/keychron/v1/jis_encoder/config.h
index 93d2a72d98..25db44a84c 100644
--- a/keyboards/keychron/v1/jis_encoder/config.h
+++ b/keyboards/keychron/v1/jis_encoder/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 40
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xA0, 0xA0, 0x4D, 0xA0, 0xA0, 0x4D, 0xA0, 0xA0, 0x4D, 0xA0, 0xA0, 0x4D }
/* Encoder Configuration */
diff --git a/keyboards/keychron/v1/jis_encoder/info.json b/keyboards/keychron/v1/jis_encoder/info.json
index 702e579758..018f154537 100644
--- a/keyboards/keychron/v1/jis_encoder/info.json
+++ b/keyboards/keychron/v1/jis_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v1/jis_encoder/jis_encoder.c b/keyboards/keychron/v1/jis_encoder/jis_encoder.c
index 7f2f02bfa5..6bc647656d 100644
--- a/keyboards/keychron/v1/jis_encoder/jis_encoder.c
+++ b/keyboards/keychron/v1/jis_encoder/jis_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v1/jis_encoder/rules.mk b/keyboards/keychron/v1/jis_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v1/jis_encoder/rules.mk
+++ b/keyboards/keychron/v1/jis_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v10/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v10/ansi_encoder/ansi_encoder.c
index bada8af6e9..8b787aad18 100644
--- a/keyboards/keychron/v10/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v10/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v10/ansi_encoder/info.json b/keyboards/keychron/v10/ansi_encoder/info.json
index 2a7dc307cb..a416601d02 100644
--- a/keyboards/keychron/v10/ansi_encoder/info.json
+++ b/keyboards/keychron/v10/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v10/ansi_encoder/rules.mk b/keyboards/keychron/v10/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v10/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v10/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v10/config.h b/keyboards/keychron/v10/config.h
index 9bc5d0f559..d643049c03 100644
--- a/keyboards/keychron/v10/config.h
+++ b/keyboards/keychron/v10/config.h
@@ -31,9 +31,8 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -42,9 +41,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE { 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A }
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE { 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A, 0x98, 0x98, 0x4A }
/* DIP switch */
#define DIP_SWITCH_MATRIX_GRID { {5,5} }
diff --git a/keyboards/keychron/v10/iso_encoder/info.json b/keyboards/keychron/v10/iso_encoder/info.json
index 455b375472..4c6b6580e0 100644
--- a/keyboards/keychron/v10/iso_encoder/info.json
+++ b/keyboards/keychron/v10/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v10/iso_encoder/iso_encoder.c b/keyboards/keychron/v10/iso_encoder/iso_encoder.c
index 070a01a8a8..f7e0a10470 100644
--- a/keyboards/keychron/v10/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v10/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v10/iso_encoder/rules.mk b/keyboards/keychron/v10/iso_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v10/iso_encoder/rules.mk
+++ b/keyboards/keychron/v10/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v2/ansi/ansi.c b/keyboards/keychron/v2/ansi/ansi.c
index a2524d36cc..d98a96fdf9 100644
--- a/keyboards/keychron/v2/ansi/ansi.c
+++ b/keyboards/keychron/v2/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v2/ansi/config.h b/keyboards/keychron/v2/ansi/config.h
index b6c31201a7..094038d5b3 100644
--- a/keyboards/keychron/v2/ansi/config.h
+++ b/keyboards/keychron/v2/ansi/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 33
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60, 0xCA, 0xCA, 0x60 }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/v2/ansi/info.json b/keyboards/keychron/v2/ansi/info.json
index d07fba97b8..3b54b90201 100644
--- a/keyboards/keychron/v2/ansi/info.json
+++ b/keyboards/keychron/v2/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v2/ansi/keymaps/vnmm/keymap.c b/keyboards/keychron/v2/ansi/keymaps/vnmm/keymap.c
deleted file mode 100644
index 8e93b07639..0000000000
--- a/keyboards/keychron/v2/ansi/keymaps/vnmm/keymap.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "vnmm.h"
-
-// clang-format off
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [MAC_BASE] = LAYOUT_ansi_67(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MAC_F, EXT_F, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [WIN_BASE] = LAYOUT_ansi_67(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, WIN_F, EXT_F, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [MAC_FN] = LAYOUT_ansi_67(
- KC_GRV, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, KC_MUTE,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
-
- [WIN_FN] = LAYOUT_ansi_67(
- KC_GRV, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, KC_MUTE,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT),
-
- [EXTRA_FN] = LAYOUT_ansi_67(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______)
-};
diff --git a/keyboards/keychron/v2/ansi/keymaps/vnmm/readme.md b/keyboards/keychron/v2/ansi/keymaps/vnmm/readme.md
deleted file mode 100644
index c4fd5e9d01..0000000000
--- a/keyboards/keychron/v2/ansi/keymaps/vnmm/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Vnmm's Keychron V2 ansi layout
-
-This keymap builds on the default but with some extras I use on all my keyboards
-
-## Features
-
-- Alphabet keys light up red when caps lock is on or shift is pressed
-- Pressing either FN shows keys that have a definition
-- Via enabled
-- Reset to bootloader with FN+Space
diff --git a/keyboards/keychron/v2/ansi/rules.mk b/keyboards/keychron/v2/ansi/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/v2/ansi/rules.mk
+++ b/keyboards/keychron/v2/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v2/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v2/ansi_encoder/ansi_encoder.c
index 2c9fe0e8e2..64153d4251 100644
--- a/keyboards/keychron/v2/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v2/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v2/ansi_encoder/info.json b/keyboards/keychron/v2/ansi_encoder/info.json
index c733b389e6..f1998272e9 100644
--- a/keyboards/keychron/v2/ansi_encoder/info.json
+++ b/keyboards/keychron/v2/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v2/ansi_encoder/rules.mk b/keyboards/keychron/v2/ansi_encoder/rules.mk
index 5091fe9414..5d77f09971 100644
--- a/keyboards/keychron/v2/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v2/ansi_encoder/rules.mk
@@ -13,6 +13,3 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v2/config.h b/keyboards/keychron/v2/config.h
index 08cc5b8e84..7efbf8c549 100644
--- a/keyboards/keychron/v2/config.h
+++ b/keyboards/keychron/v2/config.h
@@ -20,9 +20,8 @@
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -31,8 +30,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* Disable DIP switch in matrix data */
#define MATRIX_MASKED
diff --git a/keyboards/keychron/v2/iso/info.json b/keyboards/keychron/v2/iso/info.json
index 0d8376f7b7..cfc5ef3c5b 100644
--- a/keyboards/keychron/v2/iso/info.json
+++ b/keyboards/keychron/v2/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v2/iso/iso.c b/keyboards/keychron/v2/iso/iso.c
index 385f566252..37cac7337d 100644
--- a/keyboards/keychron/v2/iso/iso.c
+++ b/keyboards/keychron/v2/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v2/iso/rules.mk b/keyboards/keychron/v2/iso/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/v2/iso/rules.mk
+++ b/keyboards/keychron/v2/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v2/iso_encoder/info.json b/keyboards/keychron/v2/iso_encoder/info.json
index 0241cdb21e..d5f630a3c3 100644
--- a/keyboards/keychron/v2/iso_encoder/info.json
+++ b/keyboards/keychron/v2/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v2/iso_encoder/iso_encoder.c b/keyboards/keychron/v2/iso_encoder/iso_encoder.c
index 385f566252..37cac7337d 100644
--- a/keyboards/keychron/v2/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v2/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v2/iso_encoder/rules.mk b/keyboards/keychron/v2/iso_encoder/rules.mk
index 5091fe9414..5d77f09971 100644
--- a/keyboards/keychron/v2/iso_encoder/rules.mk
+++ b/keyboards/keychron/v2/iso_encoder/rules.mk
@@ -13,6 +13,3 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v2/jis/config.h b/keyboards/keychron/v2/jis/config.h
index f258f9edd1..1b3fd5a27a 100644
--- a/keyboards/keychron/v2/jis/config.h
+++ b/keyboards/keychron/v2/jis/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 36
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xBD, 0xBD, 0x5D, 0xBD, 0xBD, 0x5D, 0xBD, 0xBD, 0x5D, 0xBD, 0xBD, 0x5D }
/* Enable caps-lock LED */
diff --git a/keyboards/keychron/v2/jis/info.json b/keyboards/keychron/v2/jis/info.json
index f65e2b51d2..124cb0ecc6 100644
--- a/keyboards/keychron/v2/jis/info.json
+++ b/keyboards/keychron/v2/jis/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v2/jis/jis.c b/keyboards/keychron/v2/jis/jis.c
index b9060cafb2..42285e56ca 100644
--- a/keyboards/keychron/v2/jis/jis.c
+++ b/keyboards/keychron/v2/jis/jis.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v2/jis/rules.mk b/keyboards/keychron/v2/jis/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/v2/jis/rules.mk
+++ b/keyboards/keychron/v2/jis/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v2/jis_encoder/config.h b/keyboards/keychron/v2/jis_encoder/config.h
index a9a3438ab7..aacac818a4 100644
--- a/keyboards/keychron/v2/jis_encoder/config.h
+++ b/keyboards/keychron/v2/jis_encoder/config.h
@@ -21,7 +21,7 @@
#define DRIVER_2_LED_TOTAL 36
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xBD, 0xBD, 0x5D, 0xBD, 0xBD, 0x5D, 0xBD, 0xBD, 0x5D, 0xBD, 0xBD, 0x5D }
/* Encoder Configuration */
diff --git a/keyboards/keychron/v2/jis_encoder/info.json b/keyboards/keychron/v2/jis_encoder/info.json
index 263e403167..d3df93819f 100644
--- a/keyboards/keychron/v2/jis_encoder/info.json
+++ b/keyboards/keychron/v2/jis_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v2/jis_encoder/jis_encoder.c b/keyboards/keychron/v2/jis_encoder/jis_encoder.c
index 661ee0c1d6..5ccbb807cb 100644
--- a/keyboards/keychron/v2/jis_encoder/jis_encoder.c
+++ b/keyboards/keychron/v2/jis_encoder/jis_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v2/jis_encoder/rules.mk b/keyboards/keychron/v2/jis_encoder/rules.mk
index 5091fe9414..5d77f09971 100644
--- a/keyboards/keychron/v2/jis_encoder/rules.mk
+++ b/keyboards/keychron/v2/jis_encoder/rules.mk
@@ -13,6 +13,3 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v3/ansi/ansi.c b/keyboards/keychron/v3/ansi/ansi.c
index 6d56122c52..16d6b77131 100644
--- a/keyboards/keychron/v3/ansi/ansi.c
+++ b/keyboards/keychron/v3/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v3/ansi/config.h b/keyboards/keychron/v3/ansi/config.h
index ff756dc046..ba64aa96da 100644
--- a/keyboards/keychron/v3/ansi/config.h
+++ b/keyboards/keychron/v3/ansi/config.h
@@ -30,7 +30,7 @@
#define DRIVER_2_LED_TOTAL 39
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x95, 0x95, 0x55, 0x95, 0x95, 0x55, 0x95, 0x95, 0x55, 0x95, 0x95, 0x55 }
/* Enable CapsLcok LED */
diff --git a/keyboards/keychron/v3/ansi/info.json b/keyboards/keychron/v3/ansi/info.json
index 6572066329..49792690a7 100644
--- a/keyboards/keychron/v3/ansi/info.json
+++ b/keyboards/keychron/v3/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v3/ansi/rules.mk b/keyboards/keychron/v3/ansi/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/v3/ansi/rules.mk
+++ b/keyboards/keychron/v3/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v3/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v3/ansi_encoder/ansi_encoder.c
index 5ed38074e3..39fa354539 100644
--- a/keyboards/keychron/v3/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v3/ansi_encoder/ansi_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v3/ansi_encoder/info.json b/keyboards/keychron/v3/ansi_encoder/info.json
index cffbc85158..ad46ae7a62 100644
--- a/keyboards/keychron/v3/ansi_encoder/info.json
+++ b/keyboards/keychron/v3/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/keymap.c b/keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/keymap.c
deleted file mode 100644
index e32c683016..0000000000
--- a/keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/keymap.c
+++ /dev/null
@@ -1,77 +0,0 @@
-/* Copyright 2021 @ Keychron (https://www.keychron.com)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "vnmm.h"
-
-// clang-format off
-
-#define KC_TASK LGUI(KC_TAB)
-#define KC_FLXP LGUI(KC_E)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [MAC_BASE] = LAYOUT_tkl_f13_ansi(
- KC_ESC, KC_BRID, KC_BRIU, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, KC_ROPT, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [WIN_BASE] = LAYOUT_tkl_f13_ansi(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RWIN, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [MAC_FN] = LAYOUT_tkl_f13_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, _______, KC_MPRV, _______, KC_MNXT),
-
- [WIN_FN] = LAYOUT_tkl_f13_ansi(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_TOG, RGB_MOD, RGB_VAI, RGB_SPI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_RMOD, RGB_VAD, RGB_SPD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______,
- EE_CLR, _______, _______, QK_BOOT, _______, _______, _______, _______, KC_MPRV, _______, KC_MNXT),
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
- [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
- [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
- [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
-};
-#endif // ENCODER_MAP_ENABLE
-
-#ifdef DIP_SWITCH_ENABLE
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- if (index == 0) {
- default_layer_set(1UL << (active ? 1 : 0));
- }
- return false;
-}
-
-#endif // DIP_SWITCH_ENABLE \ No newline at end of file
diff --git a/keyboards/keychron/v3/ansi_encoder/rules.mk b/keyboards/keychron/v3/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v3/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v3/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v3/config.h b/keyboards/keychron/v3/config.h
index 87ab3c8667..d3e02d8f81 100644
--- a/keyboards/keychron/v3/config.h
+++ b/keyboards/keychron/v3/config.h
@@ -20,9 +20,8 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -31,8 +30,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
/* DIP switch */
#define DIP_SWITCH_MATRIX_GRID { {5, 4} }
diff --git a/keyboards/keychron/v3/iso/info.json b/keyboards/keychron/v3/iso/info.json
index 18c73a8f58..56796b5eb2 100644
--- a/keyboards/keychron/v3/iso/info.json
+++ b/keyboards/keychron/v3/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v3/iso/iso.c b/keyboards/keychron/v3/iso/iso.c
index 95b324d11b..24b406467a 100644
--- a/keyboards/keychron/v3/iso/iso.c
+++ b/keyboards/keychron/v3/iso/iso.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v3/iso/rules.mk b/keyboards/keychron/v3/iso/rules.mk
index 2eadfbded9..118bf40e5a 100644
--- a/keyboards/keychron/v3/iso/rules.mk
+++ b/keyboards/keychron/v3/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v3/iso_encoder/info.json b/keyboards/keychron/v3/iso_encoder/info.json
index 60c56a6b87..057e4a8d7d 100644
--- a/keyboards/keychron/v3/iso_encoder/info.json
+++ b/keyboards/keychron/v3/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v3/iso_encoder/iso_encoder.c b/keyboards/keychron/v3/iso_encoder/iso_encoder.c
index 6231172fde..53fe99aac0 100644
--- a/keyboards/keychron/v3/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v3/iso_encoder/iso_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v3/iso_encoder/rules.mk b/keyboards/keychron/v3/iso_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v3/iso_encoder/rules.mk
+++ b/keyboards/keychron/v3/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v3/jis/config.h b/keyboards/keychron/v3/jis/config.h
index f19e7538c2..10c77c74f0 100644
--- a/keyboards/keychron/v3/jis/config.h
+++ b/keyboards/keychron/v3/jis/config.h
@@ -30,7 +30,7 @@
#define DRIVER_2_LED_TOTAL 43
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44 }
/* Enable CapsLcok LED */
diff --git a/keyboards/keychron/v3/jis/info.json b/keyboards/keychron/v3/jis/info.json
index 9b97707b2f..d5601a3b34 100644
--- a/keyboards/keychron/v3/jis/info.json
+++ b/keyboards/keychron/v3/jis/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v3/jis/jis.c b/keyboards/keychron/v3/jis/jis.c
index 7e05aa4063..70dbf812fa 100644
--- a/keyboards/keychron/v3/jis/jis.c
+++ b/keyboards/keychron/v3/jis/jis.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v3/jis/rules.mk b/keyboards/keychron/v3/jis/rules.mk
index c37beecb9e..cf31e094cb 100644
--- a/keyboards/keychron/v3/jis/rules.mk
+++ b/keyboards/keychron/v3/jis/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v3/jis_encoder/config.h b/keyboards/keychron/v3/jis_encoder/config.h
index 5f67d6a870..27f37cbed4 100644
--- a/keyboards/keychron/v3/jis_encoder/config.h
+++ b/keyboards/keychron/v3/jis_encoder/config.h
@@ -27,7 +27,7 @@
#define DRIVER_2_LED_TOTAL 43
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44, 0x94, 0x94, 0x44 }
/* Encoder Configuration */
diff --git a/keyboards/keychron/v3/jis_encoder/info.json b/keyboards/keychron/v3/jis_encoder/info.json
index 585cf4519e..968c0396e9 100644
--- a/keyboards/keychron/v3/jis_encoder/info.json
+++ b/keyboards/keychron/v3/jis_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v3/jis_encoder/jis_encoder.c b/keyboards/keychron/v3/jis_encoder/jis_encoder.c
index 41b1c1e5af..cf1065eed9 100644
--- a/keyboards/keychron/v3/jis_encoder/jis_encoder.c
+++ b/keyboards/keychron/v3/jis_encoder/jis_encoder.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v3/jis_encoder/rules.mk b/keyboards/keychron/v3/jis_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v3/jis_encoder/rules.mk
+++ b/keyboards/keychron/v3/jis_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v4/ansi/ansi.c b/keyboards/keychron/v4/ansi/ansi.c
index 44056459f9..6326405380 100644
--- a/keyboards/keychron/v4/ansi/ansi.c
+++ b/keyboards/keychron/v4/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v4/ansi/info.json b/keyboards/keychron/v4/ansi/info.json
index 812aec53a7..5fad0ca9b1 100644
--- a/keyboards/keychron/v4/ansi/info.json
+++ b/keyboards/keychron/v4/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
diff --git a/keyboards/keychron/v4/ansi/rules.mk b/keyboards/keychron/v4/ansi/rules.mk
index 46f5aef144..468ed6fae3 100644
--- a/keyboards/keychron/v4/ansi/rules.mk
+++ b/keyboards/keychron/v4/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v4/config.h b/keyboards/keychron/v4/config.h
index 8d92219f20..8325317c27 100644
--- a/keyboards/keychron/v4/config.h
+++ b/keyboards/keychron/v4/config.h
@@ -17,8 +17,7 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -27,7 +26,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xD0, 0xD0, 0x60, 0xD0, 0xD0, 0x60, 0xD0, 0xD0, 0x60, 0xD0, 0xD0, 0x60 }
/* DIP switch */
diff --git a/keyboards/keychron/v4/iso/info.json b/keyboards/keychron/v4/iso/info.json
index 7d4a8eae1d..a53d3ee6a4 100644
--- a/keyboards/keychron/v4/iso/info.json
+++ b/keyboards/keychron/v4/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9"],
diff --git a/keyboards/keychron/v4/iso/iso.c b/keyboards/keychron/v4/iso/iso.c
index 8f86aa0498..9116135a4a 100644
--- a/keyboards/keychron/v4/iso/iso.c
+++ b/keyboards/keychron/v4/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v4/iso/rules.mk b/keyboards/keychron/v4/iso/rules.mk
index 46f5aef144..468ed6fae3 100644
--- a/keyboards/keychron/v4/iso/rules.mk
+++ b/keyboards/keychron/v4/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v5/ansi/ansi.c b/keyboards/keychron/v5/ansi/ansi.c
index f4525dc3dc..073fb0cde0 100644
--- a/keyboards/keychron/v5/ansi/ansi.c
+++ b/keyboards/keychron/v5/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v5/ansi/info.json b/keyboards/keychron/v5/ansi/info.json
index bc5eec2ca5..eb5cdca90b 100644
--- a/keyboards/keychron/v5/ansi/info.json
+++ b/keyboards/keychron/v5/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v5/ansi/rules.mk b/keyboards/keychron/v5/ansi/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/v5/ansi/rules.mk
+++ b/keyboards/keychron/v5/ansi/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v5/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v5/ansi_encoder/ansi_encoder.c
index 1e3b303896..62ebc3f7b3 100644
--- a/keyboards/keychron/v5/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v5/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v5/ansi_encoder/info.json b/keyboards/keychron/v5/ansi_encoder/info.json
index 8a4aec4e36..00079fca47 100644
--- a/keyboards/keychron/v5/ansi_encoder/info.json
+++ b/keyboards/keychron/v5/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v5/ansi_encoder/rules.mk b/keyboards/keychron/v5/ansi_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v5/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v5/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v5/config.h b/keyboards/keychron/v5/config.h
index 142dfead34..8c4128a43e 100644
--- a/keyboards/keychron/v5/config.h
+++ b/keyboards/keychron/v5/config.h
@@ -26,9 +26,8 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -37,7 +36,7 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-#define CKLED2001_CURRENT_TUNE \
+#define SNLED27351_CURRENT_TUNE \
{ 0xB6, 0xB6, 0x56, 0xB6, 0xB6, 0x56, 0xB6, 0xB6, 0x56, 0xB6, 0xB6, 0x56 }
/* DIP switch */
diff --git a/keyboards/keychron/v5/iso/info.json b/keyboards/keychron/v5/iso/info.json
index 02db87e9ac..badac7f49a 100644
--- a/keyboards/keychron/v5/iso/info.json
+++ b/keyboards/keychron/v5/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v5/iso/iso.c b/keyboards/keychron/v5/iso/iso.c
index d67be2d530..1552de7d47 100644
--- a/keyboards/keychron/v5/iso/iso.c
+++ b/keyboards/keychron/v5/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v5/iso/rules.mk b/keyboards/keychron/v5/iso/rules.mk
index e859eb9c34..465dfa9348 100644
--- a/keyboards/keychron/v5/iso/rules.mk
+++ b/keyboards/keychron/v5/iso/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v5/iso_encoder/info.json b/keyboards/keychron/v5/iso_encoder/info.json
index b0be43fc50..cbf77fc93a 100644
--- a/keyboards/keychron/v5/iso_encoder/info.json
+++ b/keyboards/keychron/v5/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v5/iso_encoder/iso_encoder.c b/keyboards/keychron/v5/iso_encoder/iso_encoder.c
index 5719da5e34..95eb62ae1f 100644
--- a/keyboards/keychron/v5/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v5/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v5/iso_encoder/rules.mk b/keyboards/keychron/v5/iso_encoder/rules.mk
index 7da353fbd1..4c6e5bebf0 100644
--- a/keyboards/keychron/v5/iso_encoder/rules.mk
+++ b/keyboards/keychron/v5/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v6/ansi/ansi.c b/keyboards/keychron/v6/ansi/ansi.c
index 4011529883..a3f1032a1e 100644
--- a/keyboards/keychron/v6/ansi/ansi.c
+++ b/keyboards/keychron/v6/ansi/ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v6/ansi/info.json b/keyboards/keychron/v6/ansi/info.json
index 3f12305f06..3eee229ea8 100644
--- a/keyboards/keychron/v6/ansi/info.json
+++ b/keyboards/keychron/v6/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v6/ansi/rules.mk b/keyboards/keychron/v6/ansi/rules.mk
index 980311d3f2..eff255ee8c 100644
--- a/keyboards/keychron/v6/ansi/rules.mk
+++ b/keyboards/keychron/v6/ansi/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v6/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v6/ansi_encoder/ansi_encoder.c
index 91831bf3c1..02e0de0b3d 100644
--- a/keyboards/keychron/v6/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v6/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v6/ansi_encoder/info.json b/keyboards/keychron/v6/ansi_encoder/info.json
index ad0ea78318..86ecc82e35 100644
--- a/keyboards/keychron/v6/ansi_encoder/info.json
+++ b/keyboards/keychron/v6/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v6/ansi_encoder/rules.mk b/keyboards/keychron/v6/ansi_encoder/rules.mk
index 80a3f300bd..213c733c9c 100644
--- a/keyboards/keychron/v6/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v6/ansi_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v6/config.h b/keyboards/keychron/v6/config.h
index 38cff19e6b..eb2296a172 100644
--- a/keyboards/keychron/v6/config.h
+++ b/keyboards/keychron/v6/config.h
@@ -20,9 +20,8 @@
#define DIODE_DIRECTION ROW2COL
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -32,7 +31,7 @@
#define I2C1_TIMINGR_SCLL 51U
/* Limit the maximum brigtness current of colour white to 500mA */
-#define CKLED2001_CURRENT_TUNE { 0xA8, 0xA8, 0x48, 0xA8, 0xA8, 0x48, 0xA8, 0xA8, 0x48, 0xA8, 0xA8, 0x48 }
+#define SNLED27351_CURRENT_TUNE { 0xA8, 0xA8, 0x48, 0xA8, 0xA8, 0x48, 0xA8, 0xA8, 0x48, 0xA8, 0xA8, 0x48 }
/* DIP switch */
#define DIP_SWITCH_MATRIX_GRID { {5, 4} }
diff --git a/keyboards/keychron/v6/iso/info.json b/keyboards/keychron/v6/iso/info.json
index 0840ee9cc8..242e904cf0 100644
--- a/keyboards/keychron/v6/iso/info.json
+++ b/keyboards/keychron/v6/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"processor": "STM32L432",
"bootloader": "stm32-dfu",
diff --git a/keyboards/keychron/v6/iso/iso.c b/keyboards/keychron/v6/iso/iso.c
index 5c0e2fa396..7804ca3600 100644
--- a/keyboards/keychron/v6/iso/iso.c
+++ b/keyboards/keychron/v6/iso/iso.c
@@ -20,8 +20,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v6/iso/rules.mk b/keyboards/keychron/v6/iso/rules.mk
index 980311d3f2..eff255ee8c 100644
--- a/keyboards/keychron/v6/iso/rules.mk
+++ b/keyboards/keychron/v6/iso/rules.mk
@@ -12,8 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v6/iso_encoder/info.json b/keyboards/keychron/v6/iso_encoder/info.json
index a40d4d66b6..d4237a69f4 100644
--- a/keyboards/keychron/v6/iso_encoder/info.json
+++ b/keyboards/keychron/v6/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"encoder": {
"rotary": [
diff --git a/keyboards/keychron/v6/iso_encoder/iso_encoder.c b/keyboards/keychron/v6/iso_encoder/iso_encoder.c
index 8268e5b0a9..bd9189f8b5 100644
--- a/keyboards/keychron/v6/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v6/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v6/iso_encoder/rules.mk b/keyboards/keychron/v6/iso_encoder/rules.mk
index 9867724957..39b0594039 100644
--- a/keyboards/keychron/v6/iso_encoder/rules.mk
+++ b/keyboards/keychron/v6/iso_encoder/rules.mk
@@ -13,8 +13,6 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/keychron/v7/ansi/ansi.c b/keyboards/keychron/v7/ansi/ansi.c
index c0deea7845..07a98622a4 100644
--- a/keyboards/keychron/v7/ansi/ansi.c
+++ b/keyboards/keychron/v7/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v7/ansi/info.json b/keyboards/keychron/v7/ansi/info.json
index 26f31786b5..4088a20ced 100644
--- a/keyboards/keychron/v7/ansi/info.json
+++ b/keyboards/keychron/v7/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "B5"],
diff --git a/keyboards/keychron/v7/ansi/rules.mk b/keyboards/keychron/v7/ansi/rules.mk
index 46f5aef144..468ed6fae3 100644
--- a/keyboards/keychron/v7/ansi/rules.mk
+++ b/keyboards/keychron/v7/ansi/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v7/config.h b/keyboards/keychron/v7/config.h
index c439a7e366..cff96774e3 100644
--- a/keyboards/keychron/v7/config.h
+++ b/keyboards/keychron/v7/config.h
@@ -17,9 +17,8 @@
#pragma once
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -28,9 +27,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define SCAN_PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE { 0xFC, 0xFC, 0x70, 0xFC, 0xFC, 0x70, 0xFC, 0xFC, 0x70, 0xFC, 0xFC, 0x70 }
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE { 0xFC, 0xFC, 0x70, 0xFC, 0xFC, 0x70, 0xFC, 0xFC, 0x70, 0xFC, 0xFC, 0x70 }
/* DIP switch */
#define DIP_SWITCH_MATRIX_GRID { {4,4} }
diff --git a/keyboards/keychron/v7/iso/info.json b/keyboards/keychron/v7/iso/info.json
index f29d9d9a32..97588498ed 100644
--- a/keyboards/keychron/v7/iso/info.json
+++ b/keyboards/keychron/v7/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "A10", "B5"],
diff --git a/keyboards/keychron/v7/iso/iso.c b/keyboards/keychron/v7/iso/iso.c
index 4630059be4..a35dcb2092 100644
--- a/keyboards/keychron/v7/iso/iso.c
+++ b/keyboards/keychron/v7/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v7/iso/rules.mk b/keyboards/keychron/v7/iso/rules.mk
index 46f5aef144..468ed6fae3 100644
--- a/keyboards/keychron/v7/iso/rules.mk
+++ b/keyboards/keychron/v7/iso/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v8/ansi/ansi.c b/keyboards/keychron/v8/ansi/ansi.c
index 670ff2fbdb..bda7ba1d74 100644
--- a/keyboards/keychron/v8/ansi/ansi.c
+++ b/keyboards/keychron/v8/ansi/ansi.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v8/ansi/info.json b/keyboards/keychron/v8/ansi/info.json
index 02780ffcde..06a657a5a8 100644
--- a/keyboards/keychron/v8/ansi/info.json
+++ b/keyboards/keychron/v8/ansi/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v8/ansi/rules.mk b/keyboards/keychron/v8/ansi/rules.mk
index e506e322d5..08a7658da3 100644
--- a/keyboards/keychron/v8/ansi/rules.mk
+++ b/keyboards/keychron/v8/ansi/rules.mk
@@ -14,6 +14,3 @@ ENCODER_ENABLE = no # Enable Encoder
ENCODER_MAP_ENABLE = no
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v8/ansi_encoder/ansi_encoder.c b/keyboards/keychron/v8/ansi_encoder/ansi_encoder.c
index 670ff2fbdb..bda7ba1d74 100644
--- a/keyboards/keychron/v8/ansi_encoder/ansi_encoder.c
+++ b/keyboards/keychron/v8/ansi_encoder/ansi_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v8/ansi_encoder/info.json b/keyboards/keychron/v8/ansi_encoder/info.json
index c3fc389780..6202a306c5 100644
--- a/keyboards/keychron/v8/ansi_encoder/info.json
+++ b/keyboards/keychron/v8/ansi_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v8/ansi_encoder/rules.mk b/keyboards/keychron/v8/ansi_encoder/rules.mk
index e3b0d8f03f..d53dc0f5d5 100644
--- a/keyboards/keychron/v8/ansi_encoder/rules.mk
+++ b/keyboards/keychron/v8/ansi_encoder/rules.mk
@@ -14,6 +14,3 @@ ENCODER_ENABLE = yes # Enable Encoder
ENCODER_MAP_ENABLE = no
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v8/config.h b/keyboards/keychron/v8/config.h
index 7c6076e199..3a860e8eb6 100644
--- a/keyboards/keychron/v8/config.h
+++ b/keyboards/keychron/v8/config.h
@@ -20,9 +20,8 @@
// #define MATRIX_UNSELECT_DRIVE_HIGH
/* RGB Matrix Driver Configuration */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110111
-#define DRIVER_ADDR_2 0b1110100
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND
/* Increase I2C speed to 1000 KHz */
#define I2C1_TIMINGR_PRESC 0U
@@ -31,9 +30,8 @@
#define I2C1_TIMINGR_SCLH 15U
#define I2C1_TIMINGR_SCLL 51U
-/* Scan phase of led driver set as MSKPHASE_9CHANNEL(defined as 0x03 in CKLED2001.h) */
-#define PHASE_CHANNEL MSKPHASE_9CHANNEL
-#define CKLED2001_CURRENT_TUNE { 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60 }
+#define SNLED27351_PHASE_CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL
+#define SNLED27351_CURRENT_TUNE { 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60, 0xC4, 0xC4, 0x60 }
/* DIP switch */
#define DIP_SWITCH_MATRIX_GRID { {4, 4} }
diff --git a/keyboards/keychron/v8/iso/info.json b/keyboards/keychron/v8/iso/info.json
index 5f30af5b1a..8b40b7d065 100644
--- a/keyboards/keychron/v8/iso/info.json
+++ b/keyboards/keychron/v8/iso/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v8/iso/iso.c b/keyboards/keychron/v8/iso/iso.c
index f64d3c4c56..88040c3ab8 100644
--- a/keyboards/keychron/v8/iso/iso.c
+++ b/keyboards/keychron/v8/iso/iso.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v8/iso/rules.mk b/keyboards/keychron/v8/iso/rules.mk
index 8edab2465b..4aa9221c24 100644
--- a/keyboards/keychron/v8/iso/rules.mk
+++ b/keyboards/keychron/v8/iso/rules.mk
@@ -13,6 +13,3 @@ AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = no # Enable Encoder
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keychron/v8/iso_encoder/info.json b/keyboards/keychron/v8/iso_encoder/info.json
index e13261a2d6..3d04699651 100644
--- a/keyboards/keychron/v8/iso_encoder/info.json
+++ b/keyboards/keychron/v8/iso_encoder/info.json
@@ -9,7 +9,7 @@
"device_version": "1.0.0"
},
"rgb_matrix": {
- "driver": "ckled2001"
+ "driver": "snled27351"
},
"matrix_pins": {
"cols": ["C14", "C15", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "A8", "A9", "H3"],
diff --git a/keyboards/keychron/v8/iso_encoder/iso_encoder.c b/keyboards/keychron/v8/iso_encoder/iso_encoder.c
index f64d3c4c56..88040c3ab8 100644
--- a/keyboards/keychron/v8/iso_encoder/iso_encoder.c
+++ b/keyboards/keychron/v8/iso_encoder/iso_encoder.c
@@ -20,8 +20,8 @@
// clang-format off
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to CKLED manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/keychron/v8/iso_encoder/rules.mk b/keyboards/keychron/v8/iso_encoder/rules.mk
index e3b0d8f03f..d53dc0f5d5 100644
--- a/keyboards/keychron/v8/iso_encoder/rules.mk
+++ b/keyboards/keychron/v8/iso_encoder/rules.mk
@@ -14,6 +14,3 @@ ENCODER_ENABLE = yes # Enable Encoder
ENCODER_MAP_ENABLE = no
DIP_SWITCH_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/keyhive/honeycomb/rules.mk b/keyboards/keyhive/honeycomb/rules.mk
index 040710a460..bfa5252a03 100755
--- a/keyboards/keyhive/honeycomb/rules.mk
+++ b/keyboards/keyhive/honeycomb/rules.mk
@@ -14,4 +14,4 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
# # project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/keyhive/navi10/keymaps/devdev/config.h b/keyboards/keyhive/navi10/keymaps/devdev/config.h
deleted file mode 100644
index 8d8a6df8c9..0000000000
--- a/keyboards/keyhive/navi10/keymaps/devdev/config.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-Copyright 2019 Ethan Durrant (emdarcher)
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#undef DEBOUNCE
-#define DEBOUNCE 1
-
-#define TAPPING_TERM 220
-
-#ifdef RGBLIGHT_ENABLE
- #define WS2812_DI_PIN D3
- #define RGBLED_NUM 3
-
- #define RGBLIGHT_LIMIT_VAL 120
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-
-
-#endif
diff --git a/keyboards/keyhive/navi10/keymaps/devdev/keymap.c b/keyboards/keyhive/navi10/keymaps/devdev/keymap.c
deleted file mode 100644
index 36a76c50ce..0000000000
--- a/keyboards/keyhive/navi10/keymaps/devdev/keymap.c
+++ /dev/null
@@ -1,263 +0,0 @@
-/* Copyright 2019 Ethan Durrant (emdarcher)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
- // NAVI 10
-#include QMK_KEYBOARD_H
-
-#define INDICATOR_LED B5
-
-
-#define _ML1 2
-#define _FN2 3
-#define _PR3 4
-#define _GI4 4
-
-
-#define HS_RED 0,255
-#define HS_WHITE 0, 0
-#define HS_ORANGE 28, 255
-#define HS_GREEN 85, 255
-#define HS_TURQUOISE 123, 90
-#define HS_CYAN 128, 255
-#define HS_AZURE 132, 102
-#define HS_BLUE 170, 255
-#define HS_PURPLE 191, 255
-#define HS_MAGENTA 213, 255
-
-
-//create the tap type
-typedef struct {
- bool is_press_action;
- int state;
-} tap;
-
-//tap dance states
-enum {
- // uses https://beta.docs.qmk.fm/using-qmk/software-features/feature_tap_dance
- SINGLE_TAP = 1,
- SINGLE_HOLD = 2,
- DOUBLE_TAP = 3,
- TRIPLE_TAP = 4,
-};
-
-//tap dance keys
-enum {
- TAPPY_KEY = 0
-};
-
-enum custom_keycodes { // git macros
- M_G_HERE = SAFE_RANGE,
- M_G_PUSH,
- M_G_PULL,
- M_G_ADD,
- M_G_COMM
-};
-
-//function to handle all the tap dances
-int cur_dance(tap_dance_state_t *state);
-
-//functions for each tap dance
-void tk_finished(tap_dance_state_t *state, void *user_data);
-void tk_reset(tap_dance_state_t *state, void *user_data);
-
-// define the macros in here
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- // open git bash here
- case M_G_HERE:
- if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_APP)"s");
- } else {
- // when keycode M_G_HERE is released
- }
- break;
-
- //git push
- case M_G_PUSH:
- if (record->event.pressed) {
- // when keycode M_G_PUSH is pressed
- SEND_STRING("git push"SS_TAP(X_ENTER));
- } else {
- // when keycode M_G_PUSH is released
- }
- break;
-
- // git pull
- case M_G_PULL:
- if (record->event.pressed) {
- SEND_STRING("git pull"SS_TAP(X_ENTER));
- }
- break;
-
- // git add
- case M_G_ADD:
- if (record->event.pressed) {
- SEND_STRING("git add ");
- }
- break;
-
- // git commit
- case M_G_COMM: // git commit
- if (record->event.pressed) {
- SEND_STRING("git commit -m ' ");
- }
- break;
- }
- return true;
-};
-
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // Base
- [0] = LAYOUT(
- TD(TAPPY_KEY),KC_HOME, KC_PGUP,
- KC_DEL, KC_END, KC_PGDN,
-
- KC_UP,
- KC_LEFT, KC_DOWN, KC_RIGHT),
-
- // media function layer, toggled on a single tap
- [_ML1] = LAYOUT(
- KC_TRNS, KC_BSPC, KC_VOLU,
- KC_MUTE, KC_ENTER, KC_VOLD,
-
- KC_SPC,
- KC_MRWD, KC_MPLY, KC_MFFD),
-
- // F keys, double tap to get here
- [_FN2] = LAYOUT(
- TO(0), KC_F3, KC_F5,
- KC_F2, KC_F4, KC_F6,
-
- KC_F7,
- KC_F9, KC_F8, KC_F10),
-
- // programming, triple tap to get here
- [_PR3] = LAYOUT(
- TO(0), A(KC_F7), S(KC_F10), //atmel, segger, pycharm
- KC_F2, KC_F4, S(KC_F9),
-
- KC_UP,
- KC_LEFT, KC_DOWN, KC_RIGHT),
-
- // git function layer, hold to get here
- [_GI4] = LAYOUT(
- KC_TRNS, M_G_PUSH, M_G_ADD,
- M_G_HERE, M_G_PULL, M_G_COMM,
-
- RGB_VAI,
- RGB_TOG, RGB_VAD, RGB_MOD),
-
-
-
-};
-
-//determine the current tap dance state
-int cur_dance (tap_dance_state_t *state){
- if(state->count == 1)
- {
- //if a tap was registered
- if(!state->pressed)
- {
- //if not still pressed, then was a single tap
- return SINGLE_TAP;
- } else
- {
- //if still pressed/held down, then it's a single hold
- return SINGLE_HOLD;
- }
- }
- else if (state->count == 2)
- {
- return DOUBLE_TAP;
- }
-
- else if (state->count == 3)
- {
- return TRIPLE_TAP;
- }
- else
- {
- return 8;
- }
-}
-
-//initialize the tap structure for the tap key
-static tap tk_tap_state = {
- .is_press_action = true,
- .state = 0
-};
-
-//functions that control what our tap dance key does
-void tk_finished(tap_dance_state_t *state, void *user_data){
- tk_tap_state.state = cur_dance(state);
- uint8_t val = rgblight_get_val();
- switch(tk_tap_state.state){
- case SINGLE_TAP:
- //send desired key when tapped:
- //setting to the media layer
- if(layer_state_is(_ML1)){
- //if already active, toggle it to off
- layer_off(_ML1);
- rgblight_sethsv(HS_PURPLE, val);
- } else {
- //turn on the media layer
- layer_on(_ML1);
- rgblight_sethsv_at(HS_RED, 0, 0);
- rgblight_sethsv_at(HS_GREEN, 0, 1);
- rgblight_sethsv_at(HS_BLUE, val, 2);
- }
- break;
-
- case DOUBLE_TAP:
- layer_on(_FN2);
- rgblight_sethsv_at(HS_RED, 0, 0);
- rgblight_sethsv_at(HS_GREEN, val, 1);
- rgblight_sethsv_at(HS_BLUE, 0, 2);
- break;
- case TRIPLE_TAP:
- layer_on(_PR3);
- rgblight_sethsv_at(HS_RED, 0, 0);
- rgblight_sethsv_at(HS_GREEN, val, 1);
- rgblight_sethsv_at(HS_BLUE, val, 2);
- break;
- case SINGLE_HOLD:
- //set to desired layer when held:
- //setting to the function layer
- layer_on(_GI4);
- rgblight_sethsv_at(HS_RED, val, 0);
- rgblight_sethsv_at(HS_GREEN, val, 1);
- rgblight_sethsv_at(HS_BLUE, val, 2);
- break;
- }
-}
-
-void tk_reset(tap_dance_state_t *state, void *user_data){
- //if held and released, leave the layer
- if(tk_tap_state.state == SINGLE_HOLD){
- layer_off(_GI4);
- uint8_t val = rgblight_get_val();
- rgblight_sethsv(HS_PURPLE, val);
- }
- //reset the state
- tk_tap_state.state = 0;
-}
-
-//associate the tap dance key with its functionality
-tap_dance_action_t tap_dance_actions[] = {
- [TAPPY_KEY] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, tk_finished, tk_reset)
-};
diff --git a/keyboards/keyhive/navi10/keymaps/devdev/rules.mk b/keyboards/keyhive/navi10/keymaps/devdev/rules.mk
deleted file mode 100644
index 1c1ed316a0..0000000000
--- a/keyboards/keyhive/navi10/keymaps/devdev/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/keyhive/ut472/keymaps/hvp/config.h b/keyboards/keyhive/ut472/keymaps/hvp/config.h
deleted file mode 100644
index a2a492ff27..0000000000
--- a/keyboards/keyhive/ut472/keymaps/hvp/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2018 Carlos Filoteo
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-#define TAPPING_TERM 200
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/keyhive/ut472/keymaps/hvp/keymap.c b/keyboards/keyhive/ut472/keymaps/hvp/keymap.c
deleted file mode 100644
index 49bfedcc3f..0000000000
--- a/keyboards/keyhive/ut472/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Copyright 2018 Carlos Filoteo
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-#define LT3_ESC LT(3, KC_ESC)
-#define LT4_TAB LT(5, KC_TAB)
-#define LT2 LT(2, KC_LEFT_CURLY_BRACE)
-#define LT1 LT(1, KC_RIGHT_CURLY_BRACE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[0] = LAYOUT(
- LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LT3_ESC, LG_A, LA_S, LS_D, LC_F, LT(4,KC_G), RC_H, RS_J, RA_K, RG_L, TD(TD1), TD(TD2),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT,
- SC_LCPO, KC_RPRN, KC_LGUI, KC_LALT, LT2, KC_SPC, LT1, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-[1] = LAYOUT( /* Right */
- KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DELETE, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[2] = LAYOUT( /* Left */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DELETE, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, XXXXXXX,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[3] = LAYOUT( /* Esc */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_PSCR,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, _______, _______, _______, KC_MUTE, KC_MPLY, KC_MSTP, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
-),
-
-[4] = LAYOUT( /* G */
- _______, LGUI(KC_1), LGUI(KC_2), LGUI(KC_3), LGUI(KC_4), LGUI(KC_5), LGUI(KC_6), LGUI(KC_7), KC_7, KC_8, KC_9, KC_BSPC,
- _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_4, KC_5, KC_6, KC_0,
- _______, _______, _______, _______, _______, _______, XXXXXXX, KC_0, KC_1, KC_2, KC_3, _______,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[5] = LAYOUT( /* Tab */
- _______, G(S(KC_1)), G(S(KC_2)), G(S(KC_3)), G(S(KC_4)), G(S(KC_5)), G(S(KC_6)), G(S(KC_7)), G(S(KC_8)), G(S(KC_9)), G(S(KC_0)), _______,
- RGB_TOG, RGB_MOD, RGB_M_P, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______,
- KC_PSCR, _______, RGB_RMOD, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, KC_CAPS,
- QK_BOOT, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, KC_NUM
-),
-};
diff --git a/keyboards/keyhive/ut472/keymaps/hvp/readme.md b/keyboards/keyhive/ut472/keymaps/hvp/readme.md
deleted file mode 100644
index a249201ded..0000000000
--- a/keyboards/keyhive/ut472/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: UT47.2
-Keys: 47key staggered 40% keyboard
-Layout: Swedish characters on main layer using tap dance. Built for Eurkey keyboard layout.
-Flash instructions: Flash using dfu, will req the hvp user space to compile.
-
-> make ut472:hvp:dfu
-
-Links:
-Github - https://github.com/ai03-2725/UT47.2
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/keyhive/ut472/keymaps/hvp/rules.mk b/keyboards/keyhive/ut472/keymaps/hvp/rules.mk
deleted file mode 100644
index 1ba2fa8fbe..0000000000
--- a/keyboards/keyhive/ut472/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/kikoslab/kl90/config.h b/keyboards/kikoslab/kl90/config.h
deleted file mode 100644
index 7f9b0b12d4..0000000000
--- a/keyboards/kikoslab/kl90/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/kinesis/keymaps/ericgebhart/keymap.c b/keyboards/kinesis/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/kinesis/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/kinesis/keymaps/ericgebhart/readme.md b/keyboards/kinesis/keymaps/ericgebhart/readme.md
deleted file mode 100644
index 3a47968596..0000000000
--- a/keyboards/kinesis/keymaps/ericgebhart/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-Overview
-========
-
-These are my keymaps. There isn't much here. Go take a look at my Userspace readme.
-That's where all the code is.
diff --git a/keyboards/kinesis/keymaps/ericgebhart/rules.mk b/keyboards/kinesis/keymaps/ericgebhart/rules.mk
deleted file mode 100644
index dd62550343..0000000000
--- a/keyboards/kinesis/keymaps/ericgebhart/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output
-UNICODE_ENABLE = no # Unicode
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
diff --git a/keyboards/kingly_keys/ave/ortho/keymaps/default/keymap.c b/keyboards/kingly_keys/ave/ortho/keymaps/default/keymap.c
index c8dbb6c18d..7c0dc92812 100644
--- a/keyboards/kingly_keys/ave/ortho/keymaps/default/keymap.c
+++ b/keyboards/kingly_keys/ave/ortho/keymaps/default/keymap.c
@@ -217,7 +217,7 @@ void keyboard_post_init_user(void) {
rgblight_sethsv_noeeprom(50, 255, 100);
rgblight_mode_noeeprom(RGBLIGHT_EFFECT_BREATHING + 2);
// Init the second LED to a static color:
- setrgb(225, 185, 0, (LED_TYPE *)&led[1]);
+ setrgb(225, 185, 0, (rgb_led_t *)&led[1]);
rgblight_set();
#endif // RGBLIGHT_ENABLE
}
@@ -232,7 +232,7 @@ layer_state_t layer_state_set_user(layer_state_t state){
if (layer_state_cmp(state, 3)) {
led1r = 200;
}
- setrgb(led1r, led1g, led1b, (LED_TYPE *)&led[1]);
+ setrgb(led1r, led1g, led1b, (rgb_led_t *)&led[1]);
rgblight_set();
#endif //RGBLIGHT_ENABLE
return state;
diff --git a/keyboards/kingly_keys/ave/staggered/keymaps/default/keymap.c b/keyboards/kingly_keys/ave/staggered/keymaps/default/keymap.c
index 4a56915ae5..8c5033302c 100644
--- a/keyboards/kingly_keys/ave/staggered/keymaps/default/keymap.c
+++ b/keyboards/kingly_keys/ave/staggered/keymaps/default/keymap.c
@@ -217,7 +217,7 @@ void keyboard_post_init_user(void) {
rgblight_sethsv_noeeprom(50, 255, 100);
rgblight_mode_noeeprom(RGBLIGHT_EFFECT_BREATHING + 2);
// Init the second LED to a static color:
- setrgb(225, 185, 0, (LED_TYPE *)&led[1]);
+ setrgb(225, 185, 0, (rgb_led_t *)&led[1]);
rgblight_set();
#endif // RGBLIGHT_ENABLE
}
@@ -232,7 +232,7 @@ layer_state_t layer_state_set_user(layer_state_t state){
if (layer_state_cmp(state, 3)) {
led1r = 200;
}
- setrgb(led1r, led1g, led1b, (LED_TYPE *)&led[1]);
+ setrgb(led1r, led1g, led1b, (rgb_led_t *)&led[1]);
rgblight_set();
#endif //RGBLIGHT_ENABLE
return state;
diff --git a/keyboards/kingly_keys/little_foot/keymaps/yanfali/config.h b/keyboards/kingly_keys/little_foot/keymaps/yanfali/config.h
deleted file mode 100644
index 72892851e0..0000000000
--- a/keyboards/kingly_keys/little_foot/keymaps/yanfali/config.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#pragma once
-
-#define TAPPING_TERM 150
-#define RETRO_TAPPING
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(NOCTURNE_OP_9_NO_1)
- #define AUDIO_CLICKY
- #define AUDIO_CLICKY_FREQ_RANDOMNESS 0.8f
-#endif
diff --git a/keyboards/kingly_keys/little_foot/keymaps/yanfali/keymap.c b/keyboards/kingly_keys/little_foot/keymaps/yanfali/keymap.c
deleted file mode 100644
index 44b561d642..0000000000
--- a/keyboards/kingly_keys/little_foot/keymaps/yanfali/keymap.c
+++ /dev/null
@@ -1,40 +0,0 @@
-
-#include QMK_KEYBOARD_H
-
-// Layer names
-enum{
- // - Base layer:
- _BASE,
- // - Symbols, numbers, and functions:
- _FN,
- // - Alternate Function layer:
- _LN
-};
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_BASE] = LAYOUT_split_space_base(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- LCTL_T(KC_A), KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
- KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
- LSFT_T(KC_ESC), LGUI_T(KC_SPACE), LT(_LN, KC_BSPC), LT(_FN, KC_ENT)
- ),
-
- [_FN] = LAYOUT_split_space_base(
- LT(_LN, KC_ESC), _______, _______, _______, _______, _______, _______, _______, KC_MINS, QK_BOOT,
- KC_TAB, _______, _______, _______, _______, _______, _______, _______, LSFT(KC_MINS), KC_BSLS,
- KC_LSFT, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_QUOT,
- AU_TOGG, CK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_LALT, RGB_MOD, _______
- ),
-
- [_LN] = LAYOUT_split_space_base(
- _______, KC_F1, KC_F2, KC_F3, _______, _______, _______, KC_7, KC_8, KC_9,
- _______, KC_F4, KC_F5, KC_F6, _______, _______, _______, KC_4, KC_5, KC_6,
- _______, KC_F7, KC_F8, KC_F9, _______, _______, _______, KC_1, KC_2, KC_3,
- _______, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, KC_0, _______,
- _______, _______, _______, _______
- )
-};
diff --git a/keyboards/kingly_keys/little_foot/keymaps/yanfali/rules.mk b/keyboards/kingly_keys/little_foot/keymaps/yanfali/rules.mk
deleted file mode 100644
index 9cd1546348..0000000000
--- a/keyboards/kingly_keys/little_foot/keymaps/yanfali/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-CONVERT_TO=proton_c
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-AUDIO_ENABLE = yes
diff --git a/keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c b/keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 670c3e16c7..0000000000
--- a/keyboards/kingly_keys/romac/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-enum romac_layers {
- NUMPAD = 0,
- FN,
- NUMLOCK,
- KARABINER
-};
-
-#define DF_NMPD DF(NUMPAD)
-#define DF_NMLK DF(NUMLOCK)
-#undef DF_KBNR
-#define DF_KBNR DF(KARABINER)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [NUMPAD] = LAYOUT(
- KC_P7, KC_P8, KC_P9,
- KC_P4, KC_P5, KC_P6,
- KC_P1, KC_P2, KC_P3,
- OSL(FN), KC_P0, KC_PDOT
- ),
-
- [FN] = LAYOUT(
- KC_PSLS, KC_PAST, KC_BSPC,
- KC_TRNS, KC_TRNS, KC_PMNS,
- DF_NMLK, DF_KBNR, KC_PPLS,
- KC_TRNS, TG_ADJT, KC_PENT
- ),
-
- [NUMLOCK] = LAYOUT(
- KC_HOME, KC_UP, KC_PGUP,
- KC_LEFT, CMD_TAB, KC_RGHT,
- KC_END, KC_DOWN, KC_PGDN,
- DF_NMPD, KC_INS, KC_DEL
- ),
-
- [KARABINER] = LAYOUT(
- KC_F13, KC_F14, KC_F15,
- KC_F16, KC_F17, KC_F18,
- KC_F19, KC_F20, KC_F21,
- LT(_ADJUST,KC_F22), KC_F23, KC_F24
- ),
-
- [_ADJUST] = LAYOUT(
- QM_MAKE, EE_CLR, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX,
- DF_NMPD, DF_NMLK, DF_KBNR,
- KC_TRNS, XXXXXXX, XXXXXXX
- )
-};
diff --git a/keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk b/keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index 719dbee401..0000000000
--- a/keyboards/kingly_keys/romac/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
-IS_MACROPAD = yes
-
-# Use dfu bootloader for Elite-C
-BOOTLOADER = atmel-dfu
-
-# Build Options
-# TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/kingly_keys/romac/keymaps/jarred/keymap.c b/keyboards/kingly_keys/romac/keymaps/jarred/keymap.c
deleted file mode 100644
index 0ab492fa43..0000000000
--- a/keyboards/kingly_keys/romac/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2019 Jarred Steenvoorden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#define _BASE 0
-#define _FN1 1
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_BASE] = LAYOUT(
- KC_7, KC_8, KC_9,
- KC_4, KC_5, KC_6,
- KC_1, KC_2, KC_3,
- LT(_FN1, KC_0), KC_ENT, KC_DOT
- ),
-
- [_FN1] = LAYOUT(
- KC_HOME, KC_UP , KC_PGUP ,
- KC_LEFT, KC_DOWN, KC_RIGHT,
- KC_END , KC_BSPC, KC_PGDN ,
- KC_TRNS, XXXXXXX, KC_DEL
- )
-};
diff --git a/keyboards/kingly_keys/romac/keymaps/stanrc85/config.h b/keyboards/kingly_keys/romac/keymaps/stanrc85/config.h
deleted file mode 100644
index c2bd34ed27..0000000000
--- a/keyboards/kingly_keys/romac/keymaps/stanrc85/config.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#undef RGBLED_NUM
-#define RGBLED_NUM 16
-
-#define WS2812_DI_PIN F4
- #define RGBLIGHT_HUE_STEP 8
- #define RGBLIGHT_SAT_STEP 8
- #define RGBLIGHT_VAL_STEP 8
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
diff --git a/keyboards/kingly_keys/romac/keymaps/stanrc85/keymap.c b/keyboards/kingly_keys/romac/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 1f19882d48..0000000000
--- a/keyboards/kingly_keys/romac/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/* Copyright 2019 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-enum keys {
- U_LAYR = SAFE_RANGE,
- D_LAYR
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_NUMPAD] = LAYOUT(
- KC_7, KC_8, KC_9,
- KC_4, KC_5, KC_6,
- KC_1, KC_2, KC_3,
- U_LAYR, KC_0, KC_ENT),
-
- [_NAVKEY] = LAYOUT(
- KC_HOME, KC_INS, KC_PGUP,
- KC_END, KC_UP, KC_PGDN,
- KC_LEFT, KC_DOWN, KC_RGHT,
- U_LAYR, TD_TWIN, D_LAYR),
-
- [_MEDIA] = LAYOUT(
- KC_MUTE, KC_VOLD, KC_VOLU,
- CA_QUOT, KC_MPLY, CA_SCLN,
- CA_COPY, CA_PSTE, KC_NO,
- U_LAYR, KC_NO, D_LAYR),
-
- [_RGB] = LAYOUT(
- RGB_SAI, RGB_VAI, RGB_HUI,
- RGB_SAD, RGB_VAD, RGB_HUD,
- RGB_TOG, RGB_MOD, KC_NO,
- U_LAYR, KC_NO, D_LAYR),
-
- [_FN1PAD] = LAYOUT(
- KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, QK_BOOT,
- KC_NO, KC_NO, KC_MAKE,
- KC_NO, KC_LSFT, D_LAYR)
-};
-
-bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
- keypos_t key;
- uint8_t current_layer;
- uint8_t next_layer;
- switch (keycode) {
- case U_LAYR: //cycles up the layers
- if (!record->event.pressed) {
- current_layer = layer_switch_get_layer(key);
- next_layer = current_layer+1;
- layer_move(next_layer);
- }
- break;
- case D_LAYR: //cycles down the layers
- if (!record->event.pressed) {
- current_layer = layer_switch_get_layer(key);
- next_layer = current_layer-1;
- layer_move(next_layer);
- }
- break;
- }
- return true;
-};
diff --git a/keyboards/kingly_keys/romac/keymaps/stanrc85/rules.mk b/keyboards/kingly_keys/romac/keymaps/stanrc85/rules.mk
deleted file mode 100644
index 5e60b284cc..0000000000
--- a/keyboards/kingly_keys/romac/keymaps/stanrc85/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-RGBLIGHT_ENABLE = yes
-VIA_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/kiwikey/wanderland/keymaps/stanrc85/config.h b/keyboards/kiwikey/wanderland/keymaps/stanrc85/config.h
deleted file mode 100644
index 9a29d5b8e4..0000000000
--- a/keyboards/kiwikey/wanderland/keymaps/stanrc85/config.h
+++ /dev/null
@@ -1,18 +0,0 @@
- /* Copyright 2021 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define OLED_FADE_OUT
diff --git a/keyboards/kiwikey/wanderland/keymaps/stanrc85/keymap.c b/keyboards/kiwikey/wanderland/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 5c84cc1e99..0000000000
--- a/keyboards/kiwikey/wanderland/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright 2021 Stanrc85
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_alice(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- _______, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
- KC_LCTL, KC_LALT, LT_BPCF, KC_LGUI, LT_SPCF, TD_TWIN, TD_TCTL
- ),
-
- [_DEFAULT] = LAYOUT_alice(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- _______, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
- KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, KC_RALT, KC_RCTL
- ),
-
- [_FN1_60] = LAYOUT_alice(
- _______, KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- _______, _______, _______, CA_QUOT, _______, CA_SCLN, KC_VOLU, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PSCR, _______, _______, KC_INS,
- _______, KC_CAPS, _______, _______, KC_LCTL, KC_LSFT, KC_VOLD, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
- _______, _______, KC_RDP, _______, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_FN2_60] = LAYOUT_alice(
- BL_TOGG, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, RGB_SAI, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______,
- BL_UP, VK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
- BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE,
- _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, TG(_DEFAULT)
- )
-};
-
-#ifdef OLED_ENABLE
-bool oled_task_user(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4,
- 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00
- };
-
- switch (get_highest_layer(layer_state)) {
- case _QWERTY:
- oled_write_P(qmk_logo, false);
- break;
- case _DEFAULT:
- oled_write_ln_P(PSTR(" Layer: Game\n\n"), false);
- break;
- case _FN1_60:
- oled_write_ln_P(PSTR(" Layer: FN\n\n"), false);
- break;
- case _FN2_60:
- oled_write_ln_P(PSTR(" Layer: RGB\n\n"), false);
- break;
- default:
- // Or use the write_ln shortcut over adding '\n' to the end of your string
- oled_write_ln_P(PSTR("Undefined"), false);
- }
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
-
- return false;
-}
-#endif
diff --git a/keyboards/kiwikey/wanderland/keymaps/stanrc85/rules.mk b/keyboards/kiwikey/wanderland/keymaps/stanrc85/rules.mk
deleted file mode 100644
index dd68e9d3b0..0000000000
--- a/keyboards/kiwikey/wanderland/keymaps/stanrc85/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-OLED_ENABLE = yes
diff --git a/keyboards/knobgoblin/keymaps/moults31/keymap.c b/keyboards/knobgoblin/keymaps/moults31/keymap.c
deleted file mode 100644
index af3ffea8b6..0000000000
--- a/keyboards/knobgoblin/keymaps/moults31/keymap.c
+++ /dev/null
@@ -1,171 +0,0 @@
-/* Copyright 2020 MrT1ddl3s
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "moults31.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [0] = LAYOUT_ortho(
- KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
- KC_P7, KC_P8, KC_P9, KC_PPLS,
- KC_P4, KC_P5, KC_P6, KC_PPLS,
- KC_MPLY, KC_P1, KC_P2, KC_P3, KC_PENT,
- KC_MUTE, MO(10), KC_P0, KC_PDOT, KC_PENT
- ),
-
- [1] = LAYOUT_ortho(
- KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_HOME, KC_TRNS, KC_PGUP, KC_TRNS,
- KC_END , KC_UP, KC_PGDN, KC_TRNS,
- KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_SPC,
- KC_TRNS, MO(10), KC_BSPC, KC_DEL, KC_TRNS
- ),
-
- [2] = LAYOUT_ortho(
- KC_2, KC_TRNS, KC_TRNS, KC_TRNS,
- M_VSC_MVEDTRPRVGRP, M_VSC_MVEDTRNXTGRP, KC_TRNS, KC_TRNS,
- M_VSC_EDGRPPRV, M_VSC_EDGRPNXT, KC_TRNS, KC_TRNS,
- KC_TRNS, M_VSC_SIDEBARFOCUS, M_VSC_SIDEBARCLOSE, M_VSC_TERMFOCUS, KC_TRNS,
- M_VSC_FILECLOSE, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [3] = LAYOUT_ortho(
- KC_3, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, M_GDB_PAUSE,
- M_GDB_RESTART, M_GDB_STOP, KC_TRNS, M_GDB_PAUSE,
- M_VSC_DBGCNSLFOCUS, M_GDB_STEPOVER, M_GDB_STEPIN, M_GDB_STEPOUT, M_GDB_PLAY,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, M_GDB_PLAY
- ),
-
- [4] = LAYOUT_ortho(
- KC_4, KC_TRNS, KC_TRNS, KC_TRNS,
- M_OBS_VOICE_UNMUTE, M_OBS_MOOSIC_MUTE, M_OBS_MOOSIC_UNMUTE, KC_TRNS,
- M_OBS_DSKT_MUTE, M_OBS_DSKT_UNMUTE, M_OBS_VOICE_MUTE, KC_TRNS,
- KC_TRNS, M_OBS_BRB, M_OBS_GAME, M_OBS_JSTCHT, KC_TRNS,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [5] = LAYOUT_ortho(
- KC_5, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [6] = LAYOUT_ortho(
- KC_6, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [7] = LAYOUT_ortho(
- KC_7, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [8] = LAYOUT_ortho(
- KC_8, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [9] = LAYOUT_ortho(
- KC_9, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [10] = LAYOUT_ortho(
- QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS,
- TO(7), TO(8), TO(9), KC_TRNS,
- TO(4), TO(5), TO(6), KC_TRNS,
- KC_TRNS, TO(1), TO(2), TO(3), KC_TRNS,
- KC_TRNS, KC_TRNS, TO(0), KC_TRNS, KC_TRNS
- ),
-
-
-
-};
-
-/* byte map for the goblin logo, knob goblin text, and level text */
-static void render_goblin_logo(void) {
- static const char PROGMEM my_logo[] = {
- 0x00, 0xe0, 0x40, 0x80, 0x80, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x60, 0x20, 0x10, 0x08, 0x08, 0x08,
- 0x08, 0x08, 0x08, 0x10, 0x20, 0x60, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x80, 0x80, 0x40, 0xe0, 0x00,
- 0x00, 0x03, 0x06, 0x3c, 0x49, 0x91, 0x21, 0x00, 0x40, 0x80, 0x80, 0x80, 0x80, 0x00, 0x60, 0x00,
- 0x00, 0x60, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x00, 0x21, 0x91, 0x49, 0x3c, 0x06, 0x03, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x60, 0x40, 0xc0, 0x06, 0x0e, 0x0f, 0x67, 0x50, 0xc0,
- 0xc0, 0x50, 0x67, 0x0f, 0x0e, 0x06, 0xc0, 0x40, 0x60, 0x1f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x7b, 0xc7, 0x8e, 0x1e, 0x3e, 0x3e,
- 0x3e, 0x3e, 0x1e, 0x8e, 0xc7, 0x7b, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x04,
- 0x04, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x03, 0x03, 0x03, 0x03, 0x03, 0x83, 0x03, 0x03, 0x03, 0x83, 0x03, 0x83, 0x03, 0x03, 0x03, 0x83,
- 0x03, 0x03, 0x83, 0x83, 0x83, 0x03, 0x03, 0x83, 0x83, 0x83, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x04, 0x06, 0x09, 0x10, 0x00, 0x1f, 0x03, 0x06, 0x0c, 0x1f,
- 0x00, 0x0f, 0x10, 0x10, 0x10, 0x0f, 0x00, 0x1f, 0x12, 0x12, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x78, 0xfc, 0x84, 0xa4, 0xa4, 0x68, 0x00, 0x78, 0x84, 0x84, 0x84, 0x78, 0x00, 0xfc, 0x94,
- 0x94, 0x68, 0x00, 0xfc, 0x80, 0x80, 0x80, 0x00, 0xfc, 0x00, 0xfc, 0x18, 0x30, 0x60, 0xfc, 0x00,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
- 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x50, 0x50, 0x50, 0x00, 0xf0, 0x00, 0x00,
- 0x00, 0xf0, 0x00, 0xf0, 0x50, 0x50, 0x50, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x02,
- 0x01, 0x00, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00
- };
- oled_write_raw_P(my_logo, sizeof(my_logo));
-}
-
-bool oled_task_user(void) {
-
- render_goblin_logo();
-
- oled_set_cursor(0,11);
-
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_P(PSTR(" NUM\n"), false);
- break;
- case 1:
- oled_write_P(PSTR(" NAV\n"), false);
- break;
- case 2:
- oled_write_P(PSTR(" CODE\n"), false);
- break;
- case 3:
- oled_write_P(PSTR(" GDB\n"), false);
- break;
- case 4:
- oled_write_P(PSTR(" OBS\n"), false);
- break;
- default:
- oled_write_P(PSTR(" NONE\n"), false);
- break;
- }
- return false;
-}
diff --git a/keyboards/knobgoblin/keymaps/moults31/readme.md b/keyboards/knobgoblin/keymaps/moults31/readme.md
deleted file mode 100644
index f137c78c3a..0000000000
--- a/keyboards/knobgoblin/keymaps/moults31/readme.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Ortho Knob Goblin Layout
-
-Via functionality for the Knob Goblin. Ortho layout. \ No newline at end of file
diff --git a/keyboards/knobgoblin/keymaps/moults31/rules.mk b/keyboards/knobgoblin/keymaps/moults31/rules.mk
deleted file mode 100644
index 533af592e5..0000000000
--- a/keyboards/knobgoblin/keymaps/moults31/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-VIA_ENABLE = YES
-LTO_ENABLE = YES
-BOOTLOADER = atmel-dfu
diff --git a/keyboards/knops/mini/keymaps/mverteuil/config.h b/keyboards/knops/mini/keymaps/mverteuil/config.h
deleted file mode 100644
index 584296cfaa..0000000000
--- a/keyboards/knops/mini/keymaps/mverteuil/config.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright 2017 Pawnerd, 2019 Matthew de Verteuil
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#if defined(AUDIO_ENABLE)
- #define AUDIO_CLICKY
- #define AUDIO_PIN_ALT B5
- #define AUDIO_PIN C6
- #define STARTUP_SONG SONG(ZELDA_PUZZLE)
- #define GOODBYE_SONG SONG(COIN_SOUND)
-#endif
diff --git a/keyboards/knops/mini/keymaps/mverteuil/keymap.c b/keyboards/knops/mini/keymaps/mverteuil/keymap.c
deleted file mode 100644
index 2e8d678f26..0000000000
--- a/keyboards/knops/mini/keymaps/mverteuil/keymap.c
+++ /dev/null
@@ -1,306 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define MAXIMIZ A(G(KC_F))
-#define NXTDSPL C(A(G(KC_RIGHT)))
-#define BTMHALF A(G(KC_DOWN))
-#define TOPHALF A(G(KC_UP))
-#define NXTTHRD SS_LCTL(SS_LALT(SS_TAP(X_RIGHT)))
-#define PRVTHRD C(A(KC_LEFT))
-
-#define LT_MSTP LT(_LAYER_SELECT, KC_MSTP)
-#define LT_ESC LT(_LAYER_SELECT, KC_ESC)
-#define LT_NXTH TD(TD_SPEC)
-
-#define writeLayerLedState(layer) writePin(layer)
-#define layer_led_0_off B6, false
-#define layer_led_1_off D5, true
-#define layer_led_2_off B0, false
-#define layer_led_0_on B6, true
-#define layer_led_1_on D5, false
-#define layer_led_2_on B0, true
-
-void led_init_animation(void);
-void led_set_layer(int layer);
-void td_spectacles_finish(tap_dance_state_t *state, void *user_data);
-void td_spectacles_reset(tap_dance_state_t *state, void *user_data);
-
-enum layer_led_mode {
- ALL_LAYERS_OFF = -1,
- LAYER_0,
- LAYER_1,
- LAYER_2,
- LAYER_3,
- LAYER_4,
- LAYER_5,
- ALL_LAYERS_ON,
-};
-
-enum mini_layers {
- _MEDIA,
- _COPYPASTA,
- _SPECTACLES,
- _LAYER_3,
- _LAYER_4,
- _LAYER_5,
- _LAYER_SELECT,
-};
-
-enum { TD_SPEC = 0 };
-
-tap_dance_action_t tap_dance_actions[] = {
- /* Tap once for spectacles macro, hold for layer toggle */
- [TD_SPEC] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_spectacles_finish, td_spectacles_reset),
-};
-
-/*
- * Key Layout
- * _____ _____ _____
- * | | | | | |
- * | 1 | | 2 | | 3 |
- * |_____| |_____| |_____|
- * _____ _____ _____
- * | | | | | |
- * | 4 | | 5 | | 6 |
- * |_____| |_____| |_____|
- *
- * Hold 1 and:
- * - press 4, 5, or 6 to change layers
- * - press 3 to reset, or press and hold 3 to enter DFU programming mode
- *
- * If something prevents you from using the above to reprogram, you can hold 3 while powering on as a fallback.
- */
-
-/* clang-format off */
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- * Layer 0 (Media Keys)
- * _____ _____ _____
- * | | | | | |
- * |Stop | |VolUp| |Play |
- * |_____| |_____| |_____|
- * _____ _____ _____
- * | | | | | |
- * |Prev | |VolDn| |Next |
- * |_____| |_____| |_____|
- *
- */
- [_MEDIA] = LAYOUT(
- LT_MSTP, KC_VOLU, KC_MPLY,
- KC_MPRV, KC_VOLD, KC_MNXT
- ),
-
- /*
- * Layer 1 (Copy and Paste Macros)
- * _____ _____ _____
- * | | | | | |
- * | ESC | |Ctl+Z| |CSf+Z|
- * |_____| |_____| |_____|
- * _____ _____ _____
- * | | | | | |
- * |Ctl+X| |Ctl+C| |Ctl+V|
- * |_____| |_____| |_____|
- *
- */
-
- [_COPYPASTA] = LAYOUT(
- LT_ESC, C(KC_Z), C(S(KC_Z)),
- C(KC_X), C(KC_C), C(KC_V)
- ),
-
- /*
- * Layer 2 (Spectacles Macros)
- * _LT&_ _____ _____
- * | Win | | Win | | Win |
- * | Next| | Top | |Mximze
- * |_1/3_| |_1/2_| |_____|
- * _____ _____ _____
- * | Win | | Win | | Win |
- * | Prev| | Bot | | Next|
- * |_1/3_| |_1/2_| |Displ|
- *
- */
- [_SPECTACLES] = LAYOUT(
- LT_NXTH,TOPHALF,MAXIMIZ,
- PRVTHRD,BTMHALF,NXTDSPL
- ),
-
- /*
- * Layer 6 (Layer Select/Reset)
- * _____ _____ _____
- * | | | | | |
- * |None | |None | |Reset|
- * |_____| |_____| |_____|
- * _____ _____ _____
- * |Layer| |Layer| |Layer|
- * | 0 | | 1 | | 2 |
- * |_____| |_____| |_____|
- *
- * Layers 0, 1, and 2 have the top left button held to activate this layer.
- * Then press the specific layer to switch to it.
- *
- */
- [_LAYER_SELECT] = LAYOUT(
- _______, _______, QK_BOOT,
- TO(_MEDIA),TO(_COPYPASTA),TO(_SPECTACLES)
- )
-};
-/* clang-format on */
-
-/*
- * Knops Mini LED Numbers:
- * _____ _____ _____
- * | | | | | |
- * | 1 | | 2 | | 3 | <---
- * |_____| |_____| |_____| | These LEDs are called 'Switch LEDs'
- * _____ _____ _____ |----- To turn on/off these leds, use:
- * | | | | | | | set_switch_led( [1-6], [true/false]);
- * | 4 | | 5 | | 6 | <---
- * |_____| |_____| |_____|
- *
- * < 0 > < 1 > < 2 > <--- These front-LEDs are called 'Layer LEDs'
- * To turn on/off these leds, use:
- * set_layer_led( [0-2], [true/false] );
- */
-
-void set_switch_led(int ledId, bool state) {
- switch (ledId) {
- case 1:
- writePin(D7, state);
- break;
- case 2:
- writePin(readPin(B7) ? C6 : C7, state);
- break;
- case 3:
- writePin(D4, state);
- break;
- case 4:
- writePin(E6, state);
- break;
- case 5:
- writePin(B4, state);
- break;
- case 6:
- writePin(D6, state);
- break;
- }
-}
-
-void set_layer_led(int layerLedMode) {
- writeLayerLedState(layer_led_0_off);
- writeLayerLedState(layer_led_1_off);
- writeLayerLedState(layer_led_2_off);
-
- switch (layerLedMode) {
- case ALL_LAYERS_OFF:
- break;
- case LAYER_0:
- writeLayerLedState(layer_led_0_on);
- break;
- case LAYER_1:
- writeLayerLedState(layer_led_1_on);
- break;
- case LAYER_2:
- writeLayerLedState(layer_led_2_on);
- break;
- case LAYER_3:
- writeLayerLedState(layer_led_0_on);
- writeLayerLedState(layer_led_1_on);
- break;
- case LAYER_4:
- writeLayerLedState(layer_led_1_on);
- writeLayerLedState(layer_led_2_on);
- break;
- case LAYER_5:
- writeLayerLedState(layer_led_0_on);
- writeLayerLedState(layer_led_2_on);
- break;
- default:
- writeLayerLedState(layer_led_0_on);
- writeLayerLedState(layer_led_1_on);
- writeLayerLedState(layer_led_2_on);
- break;
- }
-}
-
-void led_init_animation(void) {
- for (int i = ALL_LAYERS_OFF; i <= ALL_LAYERS_ON; i++) {
- led_set_layer(i);
- }
-
- led_set_layer(LAYER_0);
-}
-
-/*
- * This function led_set_layer gets called when you switch between layers.
- * It allows you to turn on and off leds for each different layer and do
- * other cool stuff.
- */
-void led_set_layer(int layer) {
- switch (layer) {
- case ALL_LAYERS_OFF:
- set_switch_led(1, false);
- set_switch_led(2, false);
- set_switch_led(3, false);
- set_switch_led(4, false);
- set_switch_led(5, false);
- set_switch_led(6, false);
-
- case _LAYER_SELECT:
- set_switch_led(1, false);
- set_switch_led(2, false);
- set_switch_led(3, false);
- set_switch_led(4, true);
- set_switch_led(5, true);
- set_switch_led(6, true);
- break;
-
- default:
- set_switch_led(1, true);
- set_switch_led(2, true);
- set_switch_led(3, true);
- set_switch_led(4, true);
- set_switch_led(5, true);
- set_switch_led(6, true);
- break;
- }
-
- set_layer_led(layer);
-}
-
-/*
- * Prepare all LED ports for output
- */
-void led_init_ports_user(void) {
- setPinOutput(D7); // Switch 1 LED
- setPinOutput(C6); // Switch 2 LED Pin1
- setPinOutput(C7); // Switch 2 LED Pin2
- setPinOutput(D4); // Switch 3 LED
- setPinOutput(E6); // Switch 4 LED
- setPinOutput(B4); // Switch 5 LED
- setPinOutput(D6); // Switch 6 LED
- setPinOutput(D5); // Layer 0 LED
- setPinOutput(B6); // Layer 1 LED
- setPinOutput(B0); // Layer 2 LED
-}
-
-// Runs on layer change, no matter where the change was initiated
-layer_state_t layer_state_set_user(layer_state_t state) {
- set_layer_led(get_highest_layer(state));
- led_set_layer(get_highest_layer(state));
- return state;
-}
-
-void matrix_init_user(void) {
- led_init_ports_user();
- led_init_animation();
-}
-
-void td_spectacles_finish(tap_dance_state_t *state, void *user_data) {
- if (state->pressed) {
- layer_on(_LAYER_SELECT);
- } else {
- SEND_STRING(NXTTHRD);
- }
-}
-
-void td_spectacles_reset(tap_dance_state_t *state, void *user_data) { layer_off(_LAYER_SELECT); }
diff --git a/keyboards/knops/mini/keymaps/mverteuil/readme.md b/keyboards/knops/mini/keymaps/mverteuil/readme.md
deleted file mode 100644
index 46ea015832..0000000000
--- a/keyboards/knops/mini/keymaps/mverteuil/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# mverteuil does knops mini
diff --git a/keyboards/knops/mini/keymaps/mverteuil/rules.mk b/keyboards/knops/mini/keymaps/mverteuil/rules.mk
deleted file mode 100644
index 91a53d56ac..0000000000
--- a/keyboards/knops/mini/keymaps/mverteuil/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-BACKLIGHT_ENABLE = no
-CONSOLE_ENABLE = no
-TAP_DANCE_ENABLE = yes
-MOUSEKEY_ENABLE = no
-AUDIO_ENABLE = no
-
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/config.h b/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/config.h
deleted file mode 100755
index 418b182c3b..0000000000
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/config.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Copyright 2020 lmlask
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define MOUSEKEY_DELAY 50
-#define MIDI_ADVANCED
-#define TAPPING_TERM 175 //For fast typing
-#define QUICK_TAP_TERM 0 //No autorepeat in tap-hold keys
-#define HOLD_ON_OTHER_KEY_PRESS //For fast typing
-
-// Min 0, max 32
-#define JOYSTICK_BUTTON_COUNT 32
-// Min 0, max 6: X, Y, Z, Rx, Ry, Rz
-#define JOYSTICK_AXIS_COUNT 0
-// Min 8, max 16
-#define JOYSTICK_AXIS_RESOLUTION 8
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
-
-//#undef ENABLE_RGB_MATRIX_ALPHAS_MODS // Enables RGB_MATRIX_ALPHAS_MODS
-#undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Enables RGB_MATRIX_GRADIENT_UP_DOWN
-#undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Enables RGB_MATRIX_GRADIENT_LEFT_RIGHT
-//#undef ENABLE_RGB_MATRIX_BREATHING // Enables RGB_MATRIX_BREATHING
-//#undef ENABLE_RGB_MATRIX_BAND_SAT // Enables RGB_MATRIX_BAND_SAT
-//#undef ENABLE_RGB_MATRIX_BAND_VAL //Enables RGB_MATRIX_BAND_VAL
-#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Enables RGB_MATRIX_BAND_PINWHEEL_SAT
-#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Enables RGB_MATRIX_BAND_PINWHEEL_VAL
-#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // Enables RGB_MATRIX_BAND_SPIRAL_SAT
-#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Enables RGB_MATRIX_BAND_SPIRAL_VAL
-#undef ENABLE_RGB_MATRIX_CYCLE_ALL // Enables RGB_MATRIX_CYCLE_ALL
-#undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // Enables RGB_MATRIX_CYCLE_LEFT_RIGHT
-#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Enables RGB_MATRIX_CYCLE_UP_DOWN
-#undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Enables RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN //Enables RGB_MATRIX_CYCLE_OUT_IN
-#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Enables RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Enables RGB_MATRIX_CYCLE_PINWHEEL
-#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Enables RGB_MATRIX_CYCLE_SPIRAL
-#undef ENABLE_RGB_MATRIX_DUAL_BEACON //Enables RGB_MATRIX_DUAL_BEACON
-#undef ENABLE_RGB_MATRIX_RAINBOW_BEACON// Enables RGB_MATRIX_RAINBOW_BEACON
-#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Enables RGB_MATRIX_RAINBOW_PINWHEELS
-#undef ENABLE_RGB_MATRIX_RAINDROPS //Enables RGB_MATRIX_RAINDROPS
-#undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS// Enables RGB_MATRIX_JELLYBEAN_RAINDROPS
-//#undef ENABLE_RGB_MATRIX_HUE_BREATHING // Enables RGB_MATRIX_HUE_BREATHING
-#undef ENABLE_RGB_MATRIX_HUE_PENDULUM //Enables RGB_MATRIX_HUE_PENDULUM
-#undef ENABLE_RGB_MATRIX_HUE_WAVE //Enables RGB_MATRIX_HUE_WAVE
-#undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL //Enables RGB_MATRIX_PIXEL_FRACTAL
-#undef ENABLE_RGB_MATRIX_PIXEL_FLOW //Enables RGB_MATRIX_PIXEL_FLOW
-#undef ENABLE_RGB_MATRIX_PIXEL_RAIN //Enables RGB_MATRIX_PIXEL_RAIN
-//#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Enables RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-//#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE // Enables RGB_MATRIX_SOLID_REACTIVE
-//#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE //Enables RGB_MATRIX_SOLID_REACTIVE_WIDE
-//#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Enables RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-//#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Enables RGB_MATRIX_SOLID_REACTIVE_CROSS
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Enables RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-//#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS //Enables RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS //Enables RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-//#undef ENABLE_RGB_MATRIX_SPLASH //Enables RGB_MATRIX_SPLASH
-#undef ENABLE_RGB_MATRIX_MULTISPLASH // Enables RGB_MATRIX_MULTISPLASH
-//#undef ENABLE_RGB_MATRIX_SOLID_SPLASH //Enables RGB_MATRIX_SOLID_SPLASH
-#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Enables RGB_MATRIX_SOLID_MULTISPLASH
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/rules.mk b/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/rules.mk
deleted file mode 100755
index c69721fa47..0000000000
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/rules.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-LTO_ENABLE = yes
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-TERMINAL_ENABLE = no
-
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-SPLIT_KEYBOARD = no
-KEY_LOCK_ENABLE = no
-RGB_MATRIX_ENABLE = yes
-LAYOUTS = planck_mit
-
-MIDI_ENABLE = yes
-JOYSTICK_ENABLE = yes
-JOYSTICK_DRIVER = digital
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-SWAP_HANDS_ENABLE = yes
-
-STENO_ENABLE = no # Enabling steno requires disabling all options in the previous block.
diff --git a/keyboards/kprepublic/bm40hsrgb/readme.md b/keyboards/kprepublic/bm40hsrgb/readme.md
index 609b3c4184..fd84dfb81b 100644
--- a/keyboards/kprepublic/bm40hsrgb/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/readme.md
@@ -1,6 +1,6 @@
# bm40hsrgb
-![BM40 RGB](https://rgoulter.com/images/keyboards/bm40rgb/bm40rgb_large.jpg)
+![BM40 RGB](https://i.imgur.com/eOqXMlNh.jpg)
An ortholinear 40% hotswap keyboard with per-key RGB in-switch LEDs and RGB Backlighting, from KP Republic.
@@ -12,10 +12,12 @@ This firmware was originally taken from a kbfirmware.json and manually converted
Make example for this keyboard (after setting up your build environment):
- make kprepublic/bm40hsrgb:default
+ for rev1: make kprepublic/bm40hsrgb/rev1:default
+ for rev2: make kprepublic/bm40hsrgb/rev2:default
Flashing example for this keyboard:
- make kprepublic/bm40hsrgb:default:flash
+ for rev1: make kprepublic/bm40hsrgb/rev1:default:flash
+ for rev2: make kprepublic/bm40hsrgb/rev2:default:flash
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/kprepublic/bm40hsrgb/config.h b/keyboards/kprepublic/bm40hsrgb/rev1/config.h
index ac0261a608..ac0261a608 100755
--- a/keyboards/kprepublic/bm40hsrgb/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/config.h
diff --git a/keyboards/kprepublic/bm40hsrgb/info.json b/keyboards/kprepublic/bm40hsrgb/rev1/info.json
index c0ba89dbab..c0ba89dbab 100644
--- a/keyboards/kprepublic/bm40hsrgb/info.json
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/info.json
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/default/keymap.c
index 838561269a..838561269a 100755
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/default/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/default/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/default/readme.md
index 7fc64a7a05..7fc64a7a05 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/default/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/default/readme.md
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/config.h
index a669c31c24..a669c31c24 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/config.h
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/keymap.c
index a08fd535d3..a08fd535d3 100755
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/readme.md
index 7540bc56bf..7540bc56bf 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/readme.md
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/rules.mk
index 6e27e2f523..6e27e2f523 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/gabustoledo/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/config.h b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/config.h
index 40ba18a293..40ba18a293 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/config.h
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/keymap.c
index eb20a1a25b..eb20a1a25b 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/readme.md
index 97c09be255..97c09be255 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/readme.md
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/rules.mk
index 754f3f1f70..754f3f1f70 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/config.h b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/config.h
index 508f98c053..508f98c053 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/config.h
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/keymap.c
index f53e061843..f53e061843 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/readme.md
index 97c09be255..97c09be255 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/readme.md
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/rules.mk
index 754f3f1f70..754f3f1f70 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_loud/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_loud/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/config.h b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/config.h
index 70f92bafde..70f92bafde 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/config.h
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/keymap.c
index e958071c20..e958071c20 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/readme.md
index 97c09be255..97c09be255 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/readme.md
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/rules.mk
index 754f3f1f70..754f3f1f70 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/signynt_2_quiet/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/signynt_2_quiet/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/keymap.c
index 838561269a..838561269a 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/via/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/readme.md
index bff946f327..bff946f327 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/via/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/readme.md
diff --git a/keyboards/durgod/k320/keymaps/moults31/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/rules.mk
index 36b7ba9cbc..36b7ba9cbc 100644
--- a/keyboards/durgod/k320/keymaps/moults31/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/via/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/wolff_abnt2/keymap.c
index 1583392a48..1583392a48 100755
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/wolff_abnt2/keymap.c
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/wolff_abnt2/readme.md
index 69130dbfec..69130dbfec 100755
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/readme.md
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/keymaps/wolff_abnt2/readme.md
diff --git a/keyboards/kprepublic/bm40hsrgb/rev1/readme.md b/keyboards/kprepublic/bm40hsrgb/rev1/readme.md
new file mode 100644
index 0000000000..00df7b02ad
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/readme.md
@@ -0,0 +1,21 @@
+# bm40hsrgb
+
+![BM40 RGB](https://imgur.com/eOqXMlNh.jpeg)
+
+An ortholinear 40% hotswap keyboard with per-key RGB in-switch LEDs and RGB Backlighting, from KP Republic.
+
+This firmware was originally taken from a kbfirmware.json and manually converted. You may find the original `.json` files [here](https://drive.google.com/drive/folders/1tlTHQIFcluK2mjZ4UbbKCsdRLgSRSPw6).
+
+* Keyboard Maintainer: [rgoulter](https://github.com/rgoulter)
+* Hardware Supported: bm40hsrgb PCB
+* Hardware Availability: [KPRepublic](https://www.aliexpress.com/item/4001147779116.html)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make kprepublic/bm40hsrgb/rev1:default
+
+Flashing example for this keyboard:
+
+ make kprepublic/bm40hsrgb/rev1:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/kprepublic/bm40hsrgb/bm40hsrgb.c b/keyboards/kprepublic/bm40hsrgb/rev1/rev1.c
index 16e515042d..16e515042d 100755
--- a/keyboards/kprepublic/bm40hsrgb/bm40hsrgb.c
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/rev1.c
diff --git a/keyboards/kprepublic/bm40hsrgb/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev1/rules.mk
index 7e0de4a3e8..7e0de4a3e8 100755
--- a/keyboards/kprepublic/bm40hsrgb/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev1/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/config.h b/keyboards/kprepublic/bm40hsrgb/rev2/config.h
new file mode 100755
index 0000000000..1cd3f7a6d3
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/config.h
@@ -0,0 +1,21 @@
+/* Copyright 2020 tominabox1
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#pragma once
+
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define RGB_MATRIX_LED_COUNT 47
+#define RGB_MATRIX_KEYPRESSES
+#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/info.json b/keyboards/kprepublic/bm40hsrgb/rev2/info.json
new file mode 100644
index 0000000000..dac848ed52
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/info.json
@@ -0,0 +1,197 @@
+{
+ "keyboard_name": "BM40 Hotswap RGB",
+ "manufacturer": "KPRepublic",
+ "url": "",
+ "maintainer": "qmk",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "rgblight": true,
+ "rgb_matrix": true,
+ "tri_layer": true,
+ "console": false,
+ "command": false,
+ "nkro": false,
+ "backlight": false,
+ "audio": false
+ },
+ "usb": {
+ "vid": "0x4B50",
+ "pid": "0x3430",
+ "device_version": "0.0.2"
+ },
+ "ws2812": {
+ "pin": "B0"
+ },
+ "rgblight": {
+ "led_count": 6,
+ "max_brightness": 150,
+ "animations": {
+ "knight": true,
+ "rainbow_swirl": true
+ }
+ },
+ "rgb_matrix": {
+ "driver": "is31fl3733",
+ "max_brightness": 150,
+ "animations": {
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "rainbow_moving_chevron": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "rainbow_beacon": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "pixel_rain": true,
+ "pixel_flow": true,
+ "pixel_fractal": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ },
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 20, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 40, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 61, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 81, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 101, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 122, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 142, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 183, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 203, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 224, "y": 0, "flags": 1},
+ {"matrix": [1, 0], "x": 0, "y": 21, "flags": 1},
+ {"matrix": [1, 1], "x": 20, "y": 21, "flags": 4},
+ {"matrix": [1, 2], "x": 40, "y": 21, "flags": 4},
+ {"matrix": [1, 3], "x": 61, "y": 21, "flags": 4},
+ {"matrix": [1, 4], "x": 81, "y": 21, "flags": 4},
+ {"matrix": [1, 5], "x": 101, "y": 21, "flags": 4},
+ {"matrix": [1, 6], "x": 122, "y": 21, "flags": 4},
+ {"matrix": [1, 7], "x": 142, "y": 21, "flags": 4},
+ {"matrix": [1, 8], "x": 162, "y": 21, "flags": 4},
+ {"matrix": [1, 9], "x": 183, "y": 21, "flags": 4},
+ {"matrix": [1, 10], "x": 203, "y": 21, "flags": 4},
+ {"matrix": [1, 11], "x": 224, "y": 21, "flags": 1},
+ {"matrix": [2, 0], "x": 0, "y": 42, "flags": 1},
+ {"matrix": [2, 1], "x": 20, "y": 42, "flags": 4},
+ {"matrix": [2, 2], "x": 40, "y": 42, "flags": 4},
+ {"matrix": [2, 3], "x": 61, "y": 42, "flags": 4},
+ {"matrix": [2, 4], "x": 81, "y": 42, "flags": 4},
+ {"matrix": [2, 5], "x": 101, "y": 42, "flags": 4},
+ {"matrix": [2, 6], "x": 122, "y": 42, "flags": 4},
+ {"matrix": [2, 7], "x": 142, "y": 42, "flags": 4},
+ {"matrix": [2, 8], "x": 162, "y": 42, "flags": 4},
+ {"matrix": [2, 9], "x": 183, "y": 42, "flags": 4},
+ {"matrix": [2, 10], "x": 203, "y": 42, "flags": 4},
+ {"matrix": [2, 11], "x": 224, "y": 42, "flags": 1},
+ {"matrix": [3, 0], "x": 0, "y": 64, "flags": 1},
+ {"matrix": [3, 1], "x": 20, "y": 64, "flags": 1},
+ {"matrix": [3, 2], "x": 40, "y": 64, "flags": 1},
+ {"matrix": [3, 3], "x": 61, "y": 64, "flags": 1},
+ {"matrix": [3, 4], "x": 81, "y": 64, "flags": 1},
+ {"matrix": [3, 5], "x": 111, "y": 64, "flags": 1},
+ {"matrix": [3, 7], "x": 142, "y": 64, "flags": 1},
+ {"matrix": [3, 8], "x": 162, "y": 64, "flags": 1},
+ {"matrix": [3, 9], "x": 183, "y": 64, "flags": 1},
+ {"matrix": [3, 10], "x": 203, "y": 64, "flags": 1},
+ {"matrix": [3, 11], "x": 224, "y": 64, "flags": 1}
+ ]
+ },
+ "matrix_pins": {
+ "cols": ["B2", "B3", "D5", "D3", "D2", "B7", "F0", "B4", "B5", "B6", "C6", "C7"],
+ "rows": ["D7", "F7", "F6", "F5"]
+ },
+ "diode_direction": "ROW2COL",
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "community_layouts": ["planck_mit"],
+ "layout_aliases": {
+ "LAYOUT_planck_mit": "LAYOUT_ortho_4x12_1x2uC"
+ },
+ "layouts": {
+ "LAYOUT_ortho_4x12_1x2uC": {
+ "layout": [
+ {"label":"K00", "matrix": [0, 0], "x":0, "y":0},
+ {"label":"K01", "matrix": [0, 1], "x":1, "y":0},
+ {"label":"K02", "matrix": [0, 2], "x":2, "y":0},
+ {"label":"K03", "matrix": [0, 3], "x":3, "y":0},
+ {"label":"K04", "matrix": [0, 4], "x":4, "y":0},
+ {"label":"K05", "matrix": [0, 5], "x":5, "y":0},
+ {"label":"K06", "matrix": [0, 6], "x":6, "y":0},
+ {"label":"K07", "matrix": [0, 7], "x":7, "y":0},
+ {"label":"K08", "matrix": [0, 8], "x":8, "y":0},
+ {"label":"K09", "matrix": [0, 9], "x":9, "y":0},
+ {"label":"K0A", "matrix": [0, 10], "x":10, "y":0},
+ {"label":"K0B", "matrix": [0, 11], "x":11, "y":0},
+ {"label":"K10", "matrix": [1, 0], "x":0, "y":1},
+ {"label":"K11", "matrix": [1, 1], "x":1, "y":1},
+ {"label":"K12", "matrix": [1, 2], "x":2, "y":1},
+ {"label":"K13", "matrix": [1, 3], "x":3, "y":1},
+ {"label":"K14", "matrix": [1, 4], "x":4, "y":1},
+ {"label":"K15", "matrix": [1, 5], "x":5, "y":1},
+ {"label":"K16", "matrix": [1, 6], "x":6, "y":1},
+ {"label":"K17", "matrix": [1, 7], "x":7, "y":1},
+ {"label":"K18", "matrix": [1, 8], "x":8, "y":1},
+ {"label":"K19", "matrix": [1, 9], "x":9, "y":1},
+ {"label":"K1A", "matrix": [1, 10], "x":10, "y":1},
+ {"label":"K1B", "matrix": [1, 11], "x":11, "y":1},
+ {"label":"K20", "matrix": [2, 0], "x":0, "y":2},
+ {"label":"K21", "matrix": [2, 1], "x":1, "y":2},
+ {"label":"K22", "matrix": [2, 2], "x":2, "y":2},
+ {"label":"K23", "matrix": [2, 3], "x":3, "y":2},
+ {"label":"K24", "matrix": [2, 4], "x":4, "y":2},
+ {"label":"K25", "matrix": [2, 5], "x":5, "y":2},
+ {"label":"K26", "matrix": [2, 6], "x":6, "y":2},
+ {"label":"K27", "matrix": [2, 7], "x":7, "y":2},
+ {"label":"K28", "matrix": [2, 8], "x":8, "y":2},
+ {"label":"K29", "matrix": [2, 9], "x":9, "y":2},
+ {"label":"K2A", "matrix": [2, 10], "x":10, "y":2},
+ {"label":"K2B", "matrix": [2, 11], "x":11, "y":2},
+ {"label":"K30", "matrix": [3, 0], "x":0, "y":3},
+ {"label":"K31", "matrix": [3, 1], "x":1, "y":3},
+ {"label":"K32", "matrix": [3, 2], "x":2, "y":3},
+ {"label":"K33", "matrix": [3, 3], "x":3, "y":3},
+ {"label":"K34", "matrix": [3, 4], "x":4, "y":3},
+ {"label":"K35", "matrix": [3, 5], "x":5, "y":3, "w":2},
+ {"label":"K37", "matrix": [3, 7], "x":7, "y":3},
+ {"label":"K38", "matrix": [3, 8], "x":8, "y":3},
+ {"label":"K39", "matrix": [3, 9], "x":9, "y":3},
+ {"label":"K3A", "matrix": [3, 10], "x":10, "y":3},
+ {"label":"K3B", "matrix": [3, 11], "x":11, "y":3}
+ ]
+ }
+ }
+}
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/keymap.c
new file mode 100755
index 0000000000..5f389e4caf
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/keymap.c
@@ -0,0 +1,101 @@
+/* Copyright 2020 tominabox1
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+enum layers {
+ _QWERTY,
+ _LOWER,
+ _RAISE,
+ _ADJUST
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | BLTog| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_QWERTY] = LAYOUT_ortho_4x12_1x2uC(
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
+ RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, TL_LOWR, KC_SPC, TL_UPPR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+),
+
+/* Lower
+ * ,-----------------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_LOWER] = LAYOUT_ortho_4x12_1x2uC(
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Raise
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_RAISE] = LAYOUT_ortho_4x12_1x2uC(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Adjust (Lower + Raise)
+ * v------------------------RGB CONTROL--------------------v
+ * ,-----------------------------------------------------------------------------------.
+ * | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_ADJUST] = LAYOUT_ortho_4x12_1x2uC(
+ _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL ,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+)
+
+};
+
diff --git a/keyboards/clickety_split/leeloo/keymaps/default/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/rules.mk
index 4da205a168..4da205a168 100644
--- a/keyboards/clickety_split/leeloo/keymaps/default/rules.mk
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/default/rules.mk
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/keymap.c
new file mode 100644
index 0000000000..216d7cb888
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/keymap.c
@@ -0,0 +1,100 @@
+/* Copyright 2020 tominabox1
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+enum layers {
+ _QWERTY,
+ _LOWER,
+ _RAISE,
+ _ADJUST
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ * ,-----------------------------------------------------------------------------------.
+ * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | BLTog| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_QWERTY] = LAYOUT_ortho_4x12_1x2uC(
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
+ RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, TL_LOWR, KC_SPC, TL_UPPR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
+),
+
+/* Lower
+ * ,-----------------------------------------------------------------------------------.
+ * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_LOWER] = LAYOUT_ortho_4x12_1x2uC(
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Raise
+ * ,-----------------------------------------------------------------------------------.
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | Next | Vol- | Vol+ | Play |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_RAISE] = LAYOUT_ortho_4x12_1x2uC(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
+ _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
+),
+
+/* Adjust (Lower + Raise)
+ * v------------------------RGB CONTROL--------------------v
+ * ,-----------------------------------------------------------------------------------.
+ * | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | | | | | | | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[_ADJUST] = LAYOUT_ortho_4x12_1x2uC(
+ _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL ,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+)
+
+};
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/rules.mk
new file mode 100644
index 0000000000..0cea9288cc
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/keymaps/via/rules.mk
@@ -0,0 +1,3 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes
+RGBLIGHT_ENABLE = no
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/readme.md b/keyboards/kprepublic/bm40hsrgb/rev2/readme.md
new file mode 100644
index 0000000000..2c2264e4e8
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/readme.md
@@ -0,0 +1,29 @@
+# bm40hsrgb
+
+![BM40 RGB](https://i.imgur.com/eOqXMlNh.jpg)
+
+An ortholinear 40% hotswap keyboard with per-key RGB in-switch LEDs and RGB Backlighting, from KP Republic.
+
+This firmware was originally taken from a kbfirmware.json and manually converted. You may find the original `.json` files [here](https://drive.google.com/drive/folders/1tlTHQIFcluK2mjZ4UbbKCsdRLgSRSPw6).
+
+* Keyboard Maintainer: [rgoulter](https://github.com/rgoulter)
+* Hardware Supported: bm40hsrgb PCB
+* Hardware Availability: [KPRepublic](https://www.aliexpress.com/item/4001147779116.html)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make kprepublic/bm40hsrgb/rev2:default
+
+Flashing example for this keyboard:
+
+ make kprepublic/bm40hsrgb/rev2:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+There are multiple ways to enter the bootloader so that firmware can be flashed onto the keyboard:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the top left key) and plug in the keyboard.
+* **Physical reset button**: Briefly press the button labeled 'RST' on the back of the PCB.
+* **Keycode in layout**: Press the key mapped to `RESET` if it is available.
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/rev2.c b/keyboards/kprepublic/bm40hsrgb/rev2/rev2.c
new file mode 100755
index 0000000000..4bf9168935
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/rev2.c
@@ -0,0 +1,73 @@
+/* Copyright 2020 tominabox1, Richard Goulter <richard.goulter@gmail.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include "quantum.h"
+
+#if defined(RGB_MATRIX_ENABLE)
+
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
+ { 0, B_1, A_1, C_1 },
+ { 0, B_2, A_2, C_2 },
+ { 0, B_3, A_3, C_3 },
+ { 0, B_4, A_4, C_4 },
+ { 0, B_5, A_5, C_5 },
+ { 0, B_6, A_6, C_6 },
+ { 0, B_7, A_7, C_7 },
+ { 0, B_8, A_8, C_8 },
+ { 0, B_9, A_9, C_9 },
+ { 0, B_10, A_10, C_10 },
+ { 0, B_11, A_11, C_11 },
+ { 0, B_12, A_12, C_12 },
+
+ { 0, E_1, D_1, F_1 },
+ { 0, E_2, D_2, F_2 },
+ { 0, E_3, D_3, F_3 },
+ { 0, E_4, D_4, F_4 },
+ { 0, E_5, D_5, F_5 },
+ { 0, E_6, D_6, F_6 },
+ { 0, E_7, D_7, F_7 },
+ { 0, E_8, D_8, F_8 },
+ { 0, E_9, D_9, F_9 },
+ { 0, E_10, D_10, F_10 },
+ { 0, E_11, D_11, F_11 },
+ { 0, E_12, D_12, F_12 },
+
+ { 0, H_1, G_1, I_1 },
+ { 0, H_2, G_2, I_2 },
+ { 0, H_3, G_3, I_3 },
+ { 0, H_4, G_4, I_4 },
+ { 0, H_5, G_5, I_5 },
+ { 0, H_6, G_6, I_6 },
+ { 0, H_7, G_7, I_7 },
+ { 0, H_8, G_8, I_8 },
+ { 0, H_9, G_9, I_9 },
+ { 0, H_10, G_10, I_10 },
+ { 0, H_11, G_11, I_11 },
+ { 0, H_12, G_12, I_12 },
+
+ { 0, K_1, J_1, L_1 },
+ { 0, K_2, J_2, L_2 },
+ { 0, K_3, J_3, L_3 },
+ { 0, K_4, J_4, L_4 },
+ { 0, K_5, J_5, L_5 },
+ { 0, K_6, J_6, L_6 },
+ { 0, K_8, J_8, L_8 },
+ { 0, K_9, J_9, L_9 },
+ { 0, K_10, J_10, L_10 },
+ { 0, K_11, J_11, L_11 },
+ { 0, K_12, J_12, L_12 }
+};
+
+#endif /* RGB_MATRIX_ENABLE */
diff --git a/keyboards/kprepublic/bm40hsrgb/rev2/rules.mk b/keyboards/kprepublic/bm40hsrgb/rev2/rules.mk
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/keyboards/kprepublic/bm40hsrgb/rev2/rules.mk
diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/config.h b/keyboards/kprepublic/bm60hsrgb/rev2/config.h
index 82a3a14e9e..e4089e9fd5 100644
--- a/keyboards/kprepublic/bm60hsrgb/rev2/config.h
+++ b/keyboards/kprepublic/bm60hsrgb/rev2/config.h
@@ -18,7 +18,7 @@
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
#define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
-#define DRIVER_ADDR_1 0b1010000
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define RGB_MATRIX_KEYPRESSES
// RGB Matrix Animation modes. Explicitly enabled
@@ -64,7 +64,6 @@
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 63
//#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
@@ -74,7 +73,7 @@
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
-#define ISSI_LED_TOTAL DRIVER_1_LED_TOTAL
+#define IS31FL3733_LED_COUNT DRIVER_1_LED_TOTAL
// Underglow LEDs are WS2812, but someone might want to use RGBLIGHT for them;
// don't use those LEDs in RGB Matrix in that case.
@@ -84,7 +83,7 @@
# define WS2812_LED_TOTAL 6
#endif
-#define RGB_MATRIX_LED_COUNT (ISSI_LED_TOTAL + WS2812_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT (IS31FL3733_LED_COUNT + WS2812_LED_TOTAL)
#ifdef RGB_MATRIX_ENABLE
# define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/rev2.c b/keyboards/kprepublic/bm60hsrgb/rev2/rev2.c
index bbc3e8db52..0e9b3d318d 100644
--- a/keyboards/kprepublic/bm60hsrgb/rev2/rev2.c
+++ b/keyboards/kprepublic/bm60hsrgb/rev2/rev2.c
@@ -22,7 +22,7 @@
# include "is31fl3733.h"
# include "ws2812.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
{ 0, B_1, A_1, C_1 },
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
@@ -148,34 +148,34 @@ bool rgb_matrix_indicators_kb(void) {
// ==========================================================================
# if WS2812_LED_TOTAL > 0
-LED_TYPE rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
+rgb_led_t rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
# endif
static void rgb_matrix_driver_init(void) {
i2c_init();
- is31fl3733_init(DRIVER_ADDR_1, 0);
- for (uint8_t index = 0; index < ISSI_LED_TOTAL; index++) {
+ is31fl3733_init(IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE);
+ for (uint8_t index = 0; index < IS31FL3733_LED_COUNT; index++) {
bool enabled = true;
is31fl3733_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3733_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3733_update_led_control_registers(IS31FL3733_I2C_ADDRESS_1, 0);
}
static void rgb_matrix_driver_flush(void) {
- is31fl3733_update_pwm_buffers(DRIVER_ADDR_1, 0);
+ is31fl3733_update_pwm_buffers(IS31FL3733_I2C_ADDRESS_1, 0);
# if WS2812_LED_TOTAL > 0
ws2812_setleds(rgb_matrix_ws2812_array, WS2812_LED_TOTAL);
# endif
}
static void rgb_matrix_driver_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
- if (index < ISSI_LED_TOTAL) {
+ if (index < IS31FL3733_LED_COUNT) {
is31fl3733_set_color(index, red, green, blue);
} else {
# if WS2812_LED_TOTAL > 0
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].r = red;
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].g = green;
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].b = blue;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].r = red;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].g = green;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].b = blue;
# endif
}
}
diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk b/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk
index 534a21dbf3..805593ed5b 100644
--- a/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk
+++ b/keyboards/kprepublic/bm60hsrgb/rev2/rules.mk
@@ -17,4 +17,4 @@ WS2812_DRIVER_REQUIRED = yes
COMMON_VPATH += $(DRIVER_PATH)/led/issi
SRC += is31fl3733.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/kprepublic/bm60hsrgb_ec/rev2/config.h b/keyboards/kprepublic/bm60hsrgb_ec/rev2/config.h
index b7e95393e5..eb1b76382b 100644
--- a/keyboards/kprepublic/bm60hsrgb_ec/rev2/config.h
+++ b/keyboards/kprepublic/bm60hsrgb_ec/rev2/config.h
@@ -18,8 +18,7 @@
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 2
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define DRIVER_1_LED_TOTAL 63
# define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
diff --git a/keyboards/kprepublic/bm60hsrgb_ec/rev2/rev2.c b/keyboards/kprepublic/bm60hsrgb_ec/rev2/rev2.c
index e738b47c40..fc40e0fa9a 100644
--- a/keyboards/kprepublic/bm60hsrgb_ec/rev2/rev2.c
+++ b/keyboards/kprepublic/bm60hsrgb_ec/rev2/rev2.c
@@ -15,7 +15,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, B_1, A_1, C_1 },
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h b/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h
index 8ad699ed9a..00d55f8ee0 100644
--- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h
+++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h
@@ -26,8 +26,7 @@
# define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT
# define DISABLE_RGB_MATRIX_RAINDROPS
# define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define DRIVER_1_LED_TOTAL 64
@@ -82,7 +81,7 @@
// IS31FL3733+WS2812 driver setup used by this board the LED controller drivers
// are compiled unconditionally).
-#define ISSI_LED_TOTAL DRIVER_1_LED_TOTAL
+#define IS31FL3733_LED_COUNT DRIVER_1_LED_TOTAL
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180
@@ -94,7 +93,7 @@
# define WS2812_LED_TOTAL 6
#endif
-#define RGB_MATRIX_LED_COUNT (ISSI_LED_TOTAL + WS2812_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT (IS31FL3733_LED_COUNT + WS2812_LED_TOTAL)
#ifdef RGB_MATRIX_ENABLE
# define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/rev2.c b/keyboards/kprepublic/bm60hsrgb_iso/rev2/rev2.c
index c4ac03e447..2cfe18e08e 100644
--- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/rev2.c
+++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/rev2.c
@@ -24,7 +24,7 @@
# include "ws2812.h"
-const PROGMEM is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const PROGMEM is31fl3733_led_t g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
{ 0, B_1, A_1, C_1 },
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
@@ -148,34 +148,34 @@ bool rgb_matrix_indicators_kb(void) {
// ==========================================================================
# if WS2812_LED_TOTAL > 0
-LED_TYPE rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
+rgb_led_t rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
# endif
static void rgb_matrix_driver_init(void) {
i2c_init();
- is31fl3733_init(DRIVER_ADDR_1, 0);
- for (uint8_t index = 0; index < ISSI_LED_TOTAL; index++) {
+ is31fl3733_init(IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE);
+ for (uint8_t index = 0; index < IS31FL3733_LED_COUNT; index++) {
bool enabled = true;
is31fl3733_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3733_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3733_update_led_control_registers(IS31FL3733_I2C_ADDRESS_1, 0);
}
static void rgb_matrix_driver_flush(void) {
- is31fl3733_update_pwm_buffers(DRIVER_ADDR_1, 0);
+ is31fl3733_update_pwm_buffers(IS31FL3733_I2C_ADDRESS_1, 0);
# if WS2812_LED_TOTAL > 0
ws2812_setleds(rgb_matrix_ws2812_array, WS2812_LED_TOTAL);
# endif
}
static void rgb_matrix_driver_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
- if (index < ISSI_LED_TOTAL) {
+ if (index < IS31FL3733_LED_COUNT) {
is31fl3733_set_color(index, red, green, blue);
} else {
# if WS2812_LED_TOTAL > 0
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].r = red;
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].g = green;
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].b = blue;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].r = red;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].g = green;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].b = blue;
# endif
}
}
diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk b/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk
index b6b9ff1110..d84cbc0bf1 100644
--- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk
+++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/rules.mk
@@ -20,5 +20,5 @@ RGB_MATRIX_ENABLE = yes
# here manually.
COMMON_VPATH += $(DRIVER_PATH)/led/issi
SRC += is31fl3733.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
WS2812_DRIVER_REQUIRED = yes
diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h b/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h
index 2c0710bfe4..a877e182a6 100644
--- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h
+++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h
@@ -77,11 +77,10 @@
// are compiled unconditionally).
// Configure the IS31FL3733 driver for per-key RGB LEDs
-#define DRIVER_COUNT 1
-#define DRIVER_ADDR_1 0b1010000
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define DRIVER_1_LED_TOTAL 61
-#define ISSI_LED_TOTAL DRIVER_1_LED_TOTAL
+#define IS31FL3733_LED_COUNT DRIVER_1_LED_TOTAL
// Underglow LEDs are WS2812, but someone might want to use RGBLIGHT for them;
// don't use those LEDs in RGB Matrix in that case.
@@ -91,7 +90,7 @@
# define WS2812_LED_TOTAL 6
#endif
-#define RGB_MATRIX_LED_COUNT (ISSI_LED_TOTAL + WS2812_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT (IS31FL3733_LED_COUNT + WS2812_LED_TOTAL)
#ifdef RGB_MATRIX_ENABLE
# define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c b/keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c
index bd976f315a..2e66a3096e 100644
--- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c
+++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c
@@ -21,7 +21,7 @@
# include "is31fl3733.h"
# include "ws2812.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
{ 0, B_1, A_1, C_1 },
{ 0, B_2, A_2, C_2 },
{ 0, B_3, A_3, C_3 },
@@ -144,34 +144,34 @@ bool rgb_matrix_indicators_kb(void) {
// ==========================================================================
# if WS2812_LED_TOTAL > 0
-LED_TYPE rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
+rgb_led_t rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
# endif
static void rgb_matrix_driver_init(void) {
i2c_init();
- is31fl3733_init(DRIVER_ADDR_1, 0);
- for (uint8_t index = 0; index < ISSI_LED_TOTAL; index++) {
+ is31fl3733_init(IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE);
+ for (uint8_t index = 0; index < IS31FL3733_LED_COUNT; index++) {
bool enabled = true;
is31fl3733_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3733_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3733_update_led_control_registers(IS31FL3733_I2C_ADDRESS_1, 0);
}
static void rgb_matrix_driver_flush(void) {
- is31fl3733_update_pwm_buffers(DRIVER_ADDR_1, 0);
+ is31fl3733_update_pwm_buffers(IS31FL3733_I2C_ADDRESS_1, 0);
# if WS2812_LED_TOTAL > 0
ws2812_setleds(rgb_matrix_ws2812_array, WS2812_LED_TOTAL);
# endif
}
static void rgb_matrix_driver_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
- if (index < ISSI_LED_TOTAL) {
+ if (index < IS31FL3733_LED_COUNT) {
is31fl3733_set_color(index, red, green, blue);
} else {
# if WS2812_LED_TOTAL > 0
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].r = red;
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].g = green;
- rgb_matrix_ws2812_array[index - ISSI_LED_TOTAL].b = blue;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].r = red;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].g = green;
+ rgb_matrix_ws2812_array[index - IS31FL3733_LED_COUNT].b = blue;
# endif
}
}
diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk b/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk
index 5db18e7cfa..92b33edc1f 100644
--- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk
+++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk
@@ -19,5 +19,5 @@ RGB_MATRIX_ENABLE = yes
# here manually.
COMMON_VPATH += $(DRIVER_PATH)/led/issi
SRC += is31fl3733.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
WS2812_DRIVER_REQUIRED = yes
diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/config.h b/keyboards/kprepublic/bm68hsrgb/rev2/config.h
index 3e74f353f9..078085779b 100644
--- a/keyboards/kprepublic/bm68hsrgb/rev2/config.h
+++ b/keyboards/kprepublic/bm68hsrgb/rev2/config.h
@@ -18,9 +18,8 @@
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
-#define DRIVER_ADDR_1 0b0110000
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define DRIVER_1_LED_TOTAL 68
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
#define DRIVER_INDICATOR_LED_TOTAL 0
diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c b/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c
index 7251a24067..057b4669f5 100644
--- a/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c
+++ b/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c
@@ -17,7 +17,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1},
{0, CS6_SW2, CS5_SW2, CS4_SW2},
{0, CS6_SW3, CS5_SW3, CS4_SW3},
diff --git a/keyboards/kprepublic/bm80v2/bm80v2.c b/keyboards/kprepublic/bm80v2/bm80v2.c
index 7a224c9ad0..13d67cdd56 100644
--- a/keyboards/kprepublic/bm80v2/bm80v2.c
+++ b/keyboards/kprepublic/bm80v2/bm80v2.c
@@ -16,7 +16,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1},
{0, CS6_SW3, CS5_SW3, CS4_SW3},
{0, CS6_SW4, CS5_SW4, CS4_SW4},
diff --git a/keyboards/kprepublic/bm80v2/config.h b/keyboards/kprepublic/bm80v2/config.h
index 98a784d638..91ad6350e0 100644
--- a/keyboards/kprepublic/bm80v2/config.h
+++ b/keyboards/kprepublic/bm80v2/config.h
@@ -53,8 +53,7 @@
#define ENABLE_RGB_MATRIX_MULTISPLASH
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 87
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
diff --git a/keyboards/kprepublic/bm80v2_iso/bm80v2_iso.c b/keyboards/kprepublic/bm80v2_iso/bm80v2_iso.c
index dea1a76d78..3b8daf5fee 100644
--- a/keyboards/kprepublic/bm80v2_iso/bm80v2_iso.c
+++ b/keyboards/kprepublic/bm80v2_iso/bm80v2_iso.c
@@ -16,7 +16,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1},
{0, CS6_SW3, CS5_SW3, CS4_SW3},
{0, CS6_SW4, CS5_SW4, CS4_SW4},
diff --git a/keyboards/kprepublic/bm80v2_iso/config.h b/keyboards/kprepublic/bm80v2_iso/config.h
index 526150acbd..a086185993 100644
--- a/keyboards/kprepublic/bm80v2_iso/config.h
+++ b/keyboards/kprepublic/bm80v2_iso/config.h
@@ -54,8 +54,7 @@
#define ENABLE_RGB_MATRIX_MULTISPLASH
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 88
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
diff --git a/keyboards/kprepublic/cstc40/config.h b/keyboards/kprepublic/cstc40/config.h
index c430986895..75ddd104ae 100644
--- a/keyboards/kprepublic/cstc40/config.h
+++ b/keyboards/kprepublic/cstc40/config.h
@@ -6,7 +6,6 @@
#define I2C1_SDA_PIN B9
#define I2C1_SCL_PIN B8
#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 47
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/kprepublic/jj40/keymaps/ajp10304/readme.md b/keyboards/kprepublic/jj40/keymaps/ajp10304/readme.md
deleted file mode 100644
index 9362c10650..0000000000
--- a/keyboards/kprepublic/jj40/keymaps/ajp10304/readme.md
+++ /dev/null
@@ -1,126 +0,0 @@
-# AJP10304 Custom JJ40 Layout
-# Also available for the Planck, Shark, Quark and Atreus50
-
-**Note:** In the tables below where there are two characters on a key,
-the second is the output when shift is applied.
-
-**Note:** The below tables assume a UK layout.
-
-#### Flashing
-Refer to the README.md of the keyboard you want to flash.
-
-##### Main Qwerty Layer
-
-* Tab: when held, operates as shift.
-* Enter: when held, operates as shift.
-* MENU: perform right-click
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:|
-| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
-| Tab | A | S | D | F | G | H | J | K | L | ;: | Enter|
-| Shft | Z | X | C | V | B | N | M | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
-
-##### Main Colemak-DHm Layer
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:|:---:|:-----:|:----:|:-----:|:-----:|:-----:|:----:|:----:| ----:|
-| Esc | Q | W | F | P | B | J | L | U | Y | ;: | Bksp |
-| Tab | A | R | S | T | G | M | N | E | I | O | Enter|
-| Shft | Z | X | C | D | V | K | H | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI | Lower | Bksp | Space | Raise | Shift | MENU | Ctrl | Fn2 |
-
-##### Function Layer
-Activated when `fn` held in the above `qwerty` layer.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
-| Shift | \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn2 |
-
-##### Lower Layer
-Activated when `Lower` is held in the above `qwerty` layer.
-
-* Numbers are along the top row, their shifted counterparts are on row 2.
-* WrdBks: `backspace` with `ctrl` applied. I.e. delete a word.
-* WrdDel: `delete` with `ctrl` applied. I.e. forward delete a word.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | DEL | Bksp |
-| ! | " | £ | $ | % | ^ | & | * | ( | ) |WrdDel|WrdBks|
-| Shift | \| | `¬ | #~ | '@ | -_ | =+ | #~ | [{ | ]} | '@ |Shift |
-| | | | |Lower | Del |Space | | Next | Vol- | Vol+ | Play |
-
-##### Raise Layer
-Activated when `Raise` is held in the above `qwerty` layer.
-
-* Preferred layer for typing brackets.
-* Allows for cursor navigation to be used solely with the right hand.
-* WRDSEL: Select the word where the cursor is.
-* |< and >|: Apply `ctrl` to `left` and `right` respectively for word jumping.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
-| ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
-| ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
-| | | | { | } | |&#124;<| LEFT | DOWN |RIGHT |>&#124;|ZOOM -|
-| Mouse | | | | | Alt | Enter |Raise | | | | |
-
-##### Lower + Raise
-Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
-
-* Audio controls in the same position as cursor keys from the `Raise` layer.
-* ????: Runs a macro for outputting a text string. Do not use this store passwords.
-* Reset: Enter bootloader for flashing firmware to the keyboard.
-* CAPS: Toggle caps lock.
-* Macro functions: Allows recording of macros. To start recording the macro, press either REC1 or REC2.
-To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
-* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
-MRSE with RAISE, MFNC with FUNC and MFNC2 with FUNC2 respectively.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|:-------:|
-| ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
-| CAPS | | | | | PLAY1|PLAY2 | Mute | Vol+ | Play | | Qwerty |
-| MAC | | | | | STOP1|STOP2 | Prev | Vol- | Next | | Colemak |
-| | | | | | | | | DYN | | | |
-
-##### Function 2 Layer
-Activated when `fn` held in the above `qwerty` layer.
-* WRDSEL: Select the word where the cursor is.
-* LNDEL: Delete the line where the cursor is.
-* LNSEL: Select the line where the cursor is.
-* DUP: Duplicate the selected text.
-* LNJOIN: Join the line where the cursor is with the following line.
-* MODE: Print either `PC` or `OSX` depending on what layer mode is active.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | |WRDSEL| | | | LNDEL| | | | | |
-| | | LNSEL| DUP | | | | |LNJOIN| | | |
-| | UNDO | CUT | COPY | PASTE| | | | | | | MODE |
-| | | | | | | | | | | | |
-
-##### Mouse Layer
-Activated when `fn` and `raise` held together.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| ESC | | | | | | W_L | W_UP | BTN3 | W_DWN| W_R | |
-| ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
-| ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN | RIGHT| | |
-| | | | | | | | | | | | |
-
-##### Number Pad Layout
-Activated when holding `Esc` key.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | | | | | |NMLOCK| 7 | 8 | 9 | / | |
-| | | | | | | | 4 | 5 | 6 | * | |
-| | | | | | | | 1 | 2 | 3 | + | |
-| | | | | | | | 0 | . | , | - | |
diff --git a/keyboards/ktec/ergodone/keymaps/art/.gitignore b/keyboards/ktec/ergodone/keymaps/art/.gitignore
deleted file mode 100644
index 46bb98e431..0000000000
--- a/keyboards/ktec/ergodone/keymaps/art/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-*user_config.c \ No newline at end of file
diff --git a/keyboards/ktec/ergodone/keymaps/art/keymap.c b/keyboards/ktec/ergodone/keymaps/art/keymap.c
deleted file mode 100644
index 9942b7b307..0000000000
--- a/keyboards/ktec/ergodone/keymaps/art/keymap.c
+++ /dev/null
@@ -1,453 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "art.h"
-#include "sendstring_workman_zxcvm.h"
-
-enum custom_keycodes {
- keyboardSpecificKeyCode = NEW_SAFE_RANGE //not used
-};
-
-void num_led_on(void) {
- ergodox_right_led_1_on();
-}
-
-void num_led_off(void) {
- ergodox_right_led_1_off();
-}
-
-void caps_led_on(void) {
- ergodox_right_led_2_on();
-}
-
-void caps_led_off(void) {
- ergodox_right_led_2_off();
-}
-
-void scroll_led_on(void) {
- ergodox_right_led_3_on();
-}
-
-void scroll_led_off(void) {
- ergodox_right_led_3_off();
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- num_led_off();
- scroll_led_off();
- switch (get_highest_layer(state)) {
- case MEDIA:
- case WORKMAN:
- scroll_led_on();
- case NAV:
- case CTRL_NAV:
- case SHIFT_NAV:
- num_led_on();
- break;
- case FKEYS:
- scroll_led_on();
- break;
- }
- return state;
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base qwerty layer
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | ` ~ | 1 | 2 | 3 | 4 | 5 | ESC | | - _ | 6 | 7 | 8 | 9 | 0 | ] |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | Tab | Q | W | E | R | T | \ | | = | Y | U | I | O | P | [ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | Caps | A | S | D | F | G |------| |------| H | J | K | L | ; | ' |
- * |--------+------+------+------+------+------| FKEYS| | FKEYS|------+------+------+------+------+--------|
- * | LShift | Z | X | C | V | B | | | | N | M | , | . | / git| RShift |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | <- | -> | Win |Alt | ctrl | | Home | End |Workmn| | RCtrl|
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,---------------.
- * | Del | Ins | | Left | Right |
- * ,------|------|------| |------+--------+------.
- * | | | PgUp | |SFT_NV| | |
- * | Space|BSpace|------| |------| NAV |Enter |
- * | | | PgDn | |CTR_NV| | |
- * `--------------------' `----------------------'
- */
-[QWERTY] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESCAPE,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_BSLS,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, TT(FKEYS),
- KC_LEFT, KC_RIGHT, KC_LWIN, KC_LALT, KC_LCTL,
-
- KC_INS, KC_PGUP,
- LT(MEDIA,KC_PGDN),
- LT(NAV,KC_SPC), KC_BSPC, LT(COMBOS,KC_DEL),
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- KC_MINS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC,
- KC_EQL, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- TT(FKEYS), KC_N, KC_M, KC_COMM, KC_DOT, LT(GIT,KC_SLSH), KC_RSFT,
- KC_HOME, KC_END, TO(WORKMAN), KC_RALT, KC_RCTL,
-
- KC_LEFT, KC_RIGHT,
- LT(SHIFT_NAV, KC_UP),
- LT(CTRL_NAV, KC_DOWN), TT(NAV), KC_ENT
-),
-/* Workman
- *
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | Q | D | R | W | B | | | | J | F | U | P | ; | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | A | S | H | T | G |------| |------| Y | N | E | O | I | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | Z | X | C | V | M | | | | K | L | , | . | / | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | | |QWERTY| | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,---------------.
- * | | | | | |
- * ,------|------|------| |------+--------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `----------------------'
- */
-[WORKMAN] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_Q, KC_D, KC_R, KC_W, KC_B, _______,
- _______, KC_A, KC_S, KC_H, KC_T, KC_G,
- _______, KC_Z, KC_X, KC_C, KC_V, KC_M, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_J, KC_F, KC_U, KC_P, KC_SCLN, _______,
- KC_Y, KC_N, KC_E, KC_O, KC_I, _______,
- _______, KC_K, KC_L, _______, _______, _______, _______,
- _______, _______, TO(QWERTY), _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-[FKEYS] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______,
- _______, _______, _______, _______, _______, _______, KC_LALT,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- KC_LALT, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_F11,
- _______, _______, _______, KC_PSCR, KC_F12,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-[NAV] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, _______,
- _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN,
- _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), XXXXXXX, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- KC_DEL, _______, _______,
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, XXXXXXX, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN2, _______, _______,
- KC_APP, CTR_ALT, KC_RSFT, CTR_ALT_SHIFT, _______, _______,
- _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-[CTRL_NAV] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, CTL_ALT(KC_HOME), CTL_ALT(KC_UP), CTL_ALT(KC_END), CTL_ALT(KC_PGUP), _______,
- _______, _______, CTL_ALT(KC_LEFT), CTL_ALT(KC_DOWN), CTL_ALT(KC_RIGHT),CTL_ALT(KC_PGDN),
- _______, _______, LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______,
- _______, _______, _______, _______, _______,
-
- CTL_ALT(KC_DEL), _______,
- _______,
- _______, CTL_ALT(KC_BSPC), CTL_ALT(KC_DEL),
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- CTL_ALT(KC_HOME), CTL_ALT(KC_END), _______, _______, _______,
-
- CTL_ALT(KC_LEFT), CTL_ALT(KC_RIGHT),
- KC_RSFT,
- _______, _______, _______
-),
-
-[SHIFT_NAV] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, LSFT(KC_HOME), LSFT(KC_UP), LSFT(KC_END), LSFT(KC_PGUP), _______,
- _______, _______, LSFT(KC_LEFT), LSFT(KC_DOWN), LSFT(KC_RIGHT), LSFT(KC_PGDN),
- _______, _______, LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- LSFT(KC_HOME), LSFT(KC_END), _______, _______, _______,
-
- LSFT(KC_LEFT), LSFT(KC_RIGHT),
- _______,
- CTR_ALT, _______, _______
-),
-
-[COMBOS] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- TILD_BLOCK, _______, QUOTES_RU, K_CUST1, K_CUST2, K_CUST3, _______,
- _______, _______, _______, NEUTRAL_COPY, _______, BEAT_BROWSER, _______,
- _______, ADMINS, SARCASM, ALL_BEST, CTRL_CTV, _______,
- _______, _______, _______, CTRL_CAV, _______, LMB_SPAM, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- DASHES, _______, _______, STARS, PARENTHS, _______, TOG_OS,
- _______, K_SECR1, K_SECR2, K_SECR3, K_SECR4, _______, BRACES,
- AT_EMAIL, _______, _______, _______, _______, QUOTES,
- _______, _______, CTRL_LCTV, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-// [STRINGS] = LAYOUT_ergodox(
-// // -----------------------------------------------------left hand-----------------------------------------------------
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______,
-
-// _______, _______,
-// _______,
-// _______, _______, _______,
-
-// // -----------------------------------------------------right hand-----------------------------------------------------
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______,
-
-// _______, _______,
-// _______,
-// _______, _______, _______
-// ),
-
-[MEDIA] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- XXXXXXX, KC_MPRV, KC_VOLU, KC_MNXT, _______, _______, _______,
- _______, _______, KC_VOLD, _______, _______, _______,
- _______, _______, KC_MUTE, KC_MPLY, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-[GIT] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, G_DIFF, G_R, _______, G_BRCH, _______,
- _______, G_ADD, G_S, _______, _______, _______,
- _______, G_DEV, _______, G_C, _______, G_MERG, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______,
- _______, _______, G_FTCH, G_PULL, G_PUSH, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, G_LOG, _______, XXXXXXX, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______,
- _______,
- _______, _______, _______
-),
-
-[GIT_C] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, G_CHEC, XXXXXXX, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, KC_BSPC, XXXXXXX,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, G_COMM, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-[GIT_R] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, G_RBASE, XXXXXXX,
- XXXXXXX, XXXXXXX, G_RST, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, G_RVERT, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, KC_BSPC, XXXXXXX,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, G_COMM, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-[GIT_S] = LAYOUT_ergodox(
- // -----------------------------------------------------left hand-----------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, G_STSH, G_SHOW, G_STAT, XXXXXXX,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, KC_BSPC, XXXXXXX,
-
- // -----------------------------------------------------right hand-----------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, G_COMM, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
-
- XXXXXXX, XXXXXXX,
- XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-
-/* Numpad
- *
- * ,--------------------------------------------------.
- * | | | | | | / | |
- * |------+------+------+------+------+------+--------|
- * | | | 7 | 8 | 9 | * | |
- * | |------+------+------+------+------+--------|
- * |------| | 4 | 5 | 6 | - | Enter |
- * | |------+------+------+------+------+--------|
- * | | | 1 | 2 | 3 | + | Enter |
- * `-------------+------+------+------+------+--------'
- * | | 0 | . | Calc | Calc |
- * `----------------------------------'
- */
-
-// [] = LAYOUT_ergodox(
-// // -----------------------------------------------------left hand-----------------------------------------------------
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______,
-
-// _______, _______,
-// _______,
-// _______, _______, _______,
-
-// // -----------------------------------------------------right hand-----------------------------------------------------
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______,
-
-// _______, _______,
-// _______,
-// _______, _______, _______
-// ),
-
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
-
- }
- return true;
-}
diff --git a/keyboards/ktec/ergodone/keymaps/art/rules.mk b/keyboards/ktec/ergodone/keymaps/art/rules.mk
deleted file mode 100644
index e1e10174a2..0000000000
--- a/keyboards/ktec/ergodone/keymaps/art/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-SRC += user_config.c
diff --git a/keyboards/ktec/ergodone/keymaps/art/user_config.c.example b/keyboards/ktec/ergodone/keymaps/art/user_config.c.example
deleted file mode 100644
index baa169f9a3..0000000000
--- a/keyboards/ktec/ergodone/keymaps/art/user_config.c.example
+++ /dev/null
@@ -1,6 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-bool is_win = true;
diff --git a/keyboards/ktec/ergodone/rules.mk b/keyboards/ktec/ergodone/rules.mk
index 3ec1a7cf43..d9b0148499 100644
--- a/keyboards/ktec/ergodone/rules.mk
+++ b/keyboards/ktec/ergodone/rules.mk
@@ -3,4 +3,4 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += mcp23018.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/latincompass/latin17rgb/config.h b/keyboards/latincompass/latin17rgb/config.h
index 7908e4ceca..fbeb499c4e 100644
--- a/keyboards/latincompass/latin17rgb/config.h
+++ b/keyboards/latincompass/latin17rgb/config.h
@@ -69,17 +69,9 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
- // This is a 7-bit address, that gets left-shifted and bit 0
- // set to 0 for write, 1 for read (as per I2C protocol)
- // The address will vary depending on your wiring:
- // 0b1110100 AD <-> GND
- // 0b1110111 AD <-> VCC
- // 0b1110101 AD <-> SCL
- // 0b1110110 AD <-> SDA
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110110
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
-# define DRIVER_COUNT 2
# define DRIVER_1_LED_TOTAL 25
# define DRIVER_2_LED_TOTAL 24
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/latincompass/latin17rgb/latin17rgb.c b/keyboards/latincompass/latin17rgb/latin17rgb.c
index c758e8eb35..b75a11d965 100644
--- a/keyboards/latincompass/latin17rgb/latin17rgb.c
+++ b/keyboards/latincompass/latin17rgb/latin17rgb.c
@@ -17,7 +17,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/latincompass/latin60rgb/config.h b/keyboards/latincompass/latin60rgb/config.h
index 96e8b75a8e..a25d3b0696 100644
--- a/keyboards/latincompass/latin60rgb/config.h
+++ b/keyboards/latincompass/latin60rgb/config.h
@@ -67,7 +67,6 @@
// # define ENABLE_RGB_MATRIX_MULTISPLASH
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 60
#endif
diff --git a/keyboards/latincompass/latin60rgb/latin60rgb.c b/keyboards/latincompass/latin60rgb/latin60rgb.c
index 26431fa61b..a915bede80 100644
--- a/keyboards/latincompass/latin60rgb/latin60rgb.c
+++ b/keyboards/latincompass/latin60rgb/latin60rgb.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{ 0, K_13, J_13, L_13 },
{ 0, K_12, J_12, L_12 },
{ 0, K_11, J_11, L_11 },
diff --git a/keyboards/latincompass/latin6rgb/config.h b/keyboards/latincompass/latin6rgb/config.h
index 1a6518c897..584e39a327 100644
--- a/keyboards/latincompass/latin6rgb/config.h
+++ b/keyboards/latincompass/latin6rgb/config.h
@@ -70,16 +70,8 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b1110100
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 6
#endif
diff --git a/keyboards/latincompass/latin6rgb/latin6rgb.c b/keyboards/latincompass/latin6rgb/latin6rgb.c
index b7c05dd4ad..a1eb38b9af 100644
--- a/keyboards/latincompass/latin6rgb/latin6rgb.c
+++ b/keyboards/latincompass/latin6rgb/latin6rgb.c
@@ -17,7 +17,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/lazydesigners/dimple/staggered/keymaps/tominabox1/keymap.c b/keyboards/lazydesigners/dimple/staggered/keymaps/tominabox1/keymap.c
deleted file mode 100644
index d1917e4aa7..0000000000
--- a/keyboards/lazydesigners/dimple/staggered/keymaps/tominabox1/keymap.c
+++ /dev/null
@@ -1,110 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "tominabox1.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Base COLEMAK layer
- * ,---------------------------------------------------------------.
- * |GEsc| Q | W | F | P | G | J | L | U | Y | : | Bspc |
- * |---------------------------------------------------------------|
- * |Tab-Ctl| A | R | S | T | D | H | N | E | I | O |Quote|
- * |---------------------------------------------------------------|
- * |Shft/Cap| Z | X | C | V | B | K | M | , | Up | . |
- * |---------------------------------------------------------------|
- * |Ctrl|Gui |Alt | Spc/Lwr | Spc/Rse |Left|Down|Rght|
- * `-----------------------------------------------------'
- */
-
- [_BASE] = LAYOUT_wrapper(
- __________________DIMPLE1__________________,
- __________________DIMPLE2__________________,
- __________________DIMPLE3L_________________,__________________DIMPLE3R_________________,
- __________________DIMPLE4__________________
- ),
-
-/* Lower Symbol Layer
- * ,---------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
- * |---------------------------------------------------------------|
- * | Del | | | | | | | _ | + | { | } | | |
- * |---------------------------------------------------------------|
- * | | | | | | | | | ; |PgUp| ? |
- * |---------------------------------------------------------------|
- * | | | | | |Home|PgDn|End |
- * `-----------------------------------------------------'
- */
-
- [_LOWER] = LAYOUT_wrapper(
- _________________LOWER_1___________________,
- _________________LOWER_2___________________,
- _________________LOWER_3___________________,
- _________________LOWER_4___________________
- ),
-
-/* Raise Number Layer
- * ,---------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bspc |
- * |---------------------------------------------------------------|
- * | Ins | | | | | | | - | = | [ | ] | \ |
- * |---------------------------------------------------------------|
- * | | | | | | | | | | . | / |
- * |---------------------------------------------------------------|
- * |VolD|Mute|VolU| | | | | |
- * `-----------------------------------------------------'
- */
-
- [_RAISE] = LAYOUT_wrapper(
- ___________________RAISE1__________________,
- ___________________RAISE2__________________,
- ___________________RAISE3__________________,
- ___________________RAISE4__________________
-
- ),
-
-/* Adjust Layer
- * ,---------------------------------------------------------------.
- * |RST |EEP | | | | | | | | | | |
- * |---------------------------------------------------------------|
- * | MP | | | | | | | | | | | |
- * |---------------------------------------------------------------|
- * | MODE | HUI| HUD|M_SN| | | | | | | |
- * |---------------------------------------------------------------|
- * |RGB-|RGB |RGB+| | | | | |
- * `-----------------------------------------------------'
- */
-
- [_ADJUST] = LAYOUT_wrapper(
- ___________________ADJST1__________________,
- ___________________ADJST2__________________,
- ___________________ADJST3__________________,
- ___________________ADJST4__________________
-
- ),
-/* Fkey Layer
-* ,---------------------------------------------------------------.
-* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10| |
-* |---------------------------------------------------------------|
-* | | | | | | | | | | F11| F12| |
-* |---------------------------------------------------------------|
-* | | | | | | | | | | | |
-* |---------------------------------------------------------------|
-* | | | | | |FKEY| | |
-* `-----------------------------------------------------'
-*/
-
- [_FKEY] = LAYOUT_wrapper(
- ___________________FKEY1___________________,
- ___________________FKEY2___________________,
- ___________________FKEY3___________________,
- ___________________FKEY4___________________
- ),
-};
-
-bool led_update_user(led_t led_state) {
-if (led_state.caps_lock) {
- writePinLow(E6);
- } else {
- writePinHigh(E6);
- }
- return false;
-}
diff --git a/keyboards/lets_split/keymaps/hvp/config.h b/keyboards/lets_split/keymaps/hvp/config.h
deleted file mode 100644
index 9f705b0fb7..0000000000
--- a/keyboards/lets_split/keymaps/hvp/config.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
- // place overrides here
-#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-
-/* Select hand configuration */
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 10
diff --git a/keyboards/lets_split/keymaps/hvp/keymap.c b/keyboards/lets_split/keymaps/hvp/keymap.c
deleted file mode 100644
index 6246404231..0000000000
--- a/keyboards/lets_split/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,65 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-#define _QWERTY 0
-#define _LOWER 3
-#define _RAISE 4
-#define _NAVI 5
-#define _ADJUST 6
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE
-};
-
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-#define ADJUST MO(_ADJUST)
-
-#define LT3_ESC LT(5, KC_ESC)
-#define LT4_TAB LT(6, KC_TAB)
-#define F_NAVI LT(5, KC_F)
-
-
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QWERTY] = LAYOUT_ortho_4x12(
- LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LT3_ESC, KC_A, KC_S, KC_D, F_NAVI, LT(6,KC_G), KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT ,
- KC_LCTL, KC_APP, KC_LGUI, KC_LALT, LT(3,KC_SPC), SFT_T(KC_SPC), SC_SENT, LT(4,KC_SPC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-[_RAISE] = LAYOUT_ortho_4x12( /* Right */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-[_LOWER] = LAYOUT_ortho_4x12( /* Left */
- KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_BSPC,
- KC_DEL, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_TILD,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-[_NAVI] = LAYOUT_ortho_4x12( /* Esc */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, D_NAVI, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, _______, _______, _______, _______,KC_MUTE, KC_MPLY, KC_MSTP, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
-),
-
-[_ADJUST] = LAYOUT_ortho_4x12( /* Tab */
- _______, RGB_TOG, RGB_MOD, RGB_RMOD, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______,
- _______, RGB_M_P, RGB_HUD, RGB_HUI, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______,
- KC_PSCR, _______, RGB_SAD, RGB_SAI, _______, _______, KC_0, KC_1, KC_2, KC_3, _______, _______,
- QK_BOOT, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______
-)};
diff --git a/keyboards/lets_split/keymaps/hvp/readme.md b/keyboards/lets_split/keymaps/hvp/readme.md
deleted file mode 100644
index a43b9d52ec..0000000000
--- a/keyboards/lets_split/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: Lets split!
-Keys: 48key ortho 40% keyboard
-Layout: Swedish characters on main layer using tapdance. Built for eurkey keyboard layout.
-Flash instructions: Flash using avrdude, will req the hvp user space to compile.
-
-> make lets_split/rev2:hvp:avrdude
-
-Links:
-Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/lets_split
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/lets_split/keymaps/hvp/rules.mk b/keyboards/lets_split/keymaps/hvp/rules.mk
deleted file mode 100644
index 1c1ed316a0..0000000000
--- a/keyboards/lets_split/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/lets_split/keymaps/pdl/config.h b/keyboards/lets_split/keymaps/pdl/config.h
deleted file mode 100644
index 89fd6ac202..0000000000
--- a/keyboards/lets_split/keymaps/pdl/config.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2018 Daniel Perrett
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-
-#define TAPPING_TERM 200
-
-/* Select hand configuration */
-
-//#define MASTER_LEFT
-#define MASTER_RIGHT
-// #define EE_HANDS
diff --git a/keyboards/lets_split/keymaps/pdl/keymap.c b/keyboards/lets_split/keymaps/pdl/keymap.c
deleted file mode 100644
index b112e2270f..0000000000
--- a/keyboards/lets_split/keymaps/pdl/keymap.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
-This is the keymap for the keyboard
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-Copyright 2018 Daniel Perrett
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "pdl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- MY_SESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO,
- MY_CBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, MY_SQUO,
- KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT
- ),
- [_PROXIM] = LAYOUT_wrapper(
- MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC,
- KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL,
- MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, MY_SENT,
- KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT
- ),
- [_NAVIGN] = LAYOUT_wrapper(
- _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_PUNCTN] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_NUMBRS] = LAYOUT_wrapper(
- _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_CODING] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_FUNCTN] = LAYOUT_wrapper(
- _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD,
- _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR,
- _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/lets_split/keymaps/pdl/rules.mk b/keyboards/lets_split/keymaps/pdl/rules.mk
deleted file mode 100644
index ae71cbf491..0000000000
--- a/keyboards/lets_split/keymaps/pdl/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-USER_NAME = pdl
diff --git a/keyboards/lets_split/keymaps/zer09/config.h b/keyboards/lets_split/keymaps/zer09/config.h
deleted file mode 100644
index 6cdb6dd8b4..0000000000
--- a/keyboards/lets_split/keymaps/zer09/config.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
-
-/* key matrix size */
-/* Rows are doubled-up */
-#undef MATRIX_ROWS
-#undef MATRIX_COLS
-#define MATRIX_ROWS 10
-#define MATRIX_COLS 5
-
-#undef MATRIX_ROW_PINS
-#undef MATRIX_COL_PINS
-#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 }
-#define MATRIX_COL_PINS { F7, B1, B3, B2, B6 }
-
-#define USB_MAX_POWER_CONSUMPTION 50
-
-/* Select hand configuration */
-
-/* #define MASTER_LEFT */
-// #define MASTER_RIGHT
-#define EE_HANDS
-
-/* ws2812 RGB LED */
-#undef RGBLED_NUM
-#define WS2812_DI_PIN D3
-
-#define RGBLED_NUM 50
-#endif
diff --git a/keyboards/lets_split/keymaps/zer09/keymap.c b/keyboards/lets_split/keymaps/zer09/keymap.c
deleted file mode 100644
index e09fa0d318..0000000000
--- a/keyboards/lets_split/keymaps/zer09/keymap.c
+++ /dev/null
@@ -1,76 +0,0 @@
-#include "zer09.h"
-
-#undef LAYOUT
-#define LAYOUT( \
- L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \
- L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \
- L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \
- L30, L31, L32, L33, L34, R30, R31, R32, R33, R34, \
- L40, L41, L42, L43, L44, R40, R41, R42, R43, R44 \
-) { \
- { L00, L01, L02, L03, L04 }, \
- { L10, L11, L12, L13, L14 }, \
- { L20, L21, L22, L23, L24 }, \
- { L30, L31, L32, L33, L34 }, \
- { L40, L41, L42, L43, L44 }, \
- { R00, R01, R02, R03, R04 }, \
- { R10, R11, R12, R13, R14 }, \
- { R20, R21, R22, R23, R24 }, \
- { R30, R31, R32, R33, R34 }, \
- { R40, R41, R42, R43, R44 } \
-}
-
-#define _baseLayer LAYOUT( \
- KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, /**/KC_F, KC_G, KC_C, KC_R, KC_L, \
- CTL_T(KC_A), SFT_T(KC_O), ALT_T(KC_E), KC_U, KC_I, /**/KC_D, KC_H, ALT_T(KC_T), SFT_T(KC_N), CTL_T(KC_S), \
- KC_SCLN, KC_Q, KC_J, KC_K, KC_X, /**/KC_B, KC_M, KC_W, KC_V, KC_Z, \
- TD(DA_UPLY), MO(_VL), KC_TAB, KC_BSPC, KC_ESC, /**/KC_INS, KC_HOME, KC_PGUP, MO(_VL), TD(DA_UPLY), \
- TD(DA_DWLY), TD(DA_LCTL), KC_SPC, TD(DA_LSPR), LSFT_T(KC_CAPS),/**/SFT_T(KC_CAPS), TD(DA_RALT), KC_ENT, TD(DA_RCTL), TD(DA_DWLY))
-
-#define _GMLayer LAYOUT( \
- KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, /**/KC_F, KC_G, KC_C, KC_R, KC_L, \
- KC_A, KC_O, KC_E, KC_U, KC_I, /**/KC_D, KC_H, ALT_T(KC_T), SFT_T(KC_N), CTL_T(KC_S), \
- KC_SCLN, KC_Q, KC_J, KC_K, KC_X, /**/KC_B, KC_M, KC_W, KC_V, KC_Z, \
- TD(DA_UPLY), MO(_VL), KC_TAB, KC_BSPC, KC_ESC, /**/KC_INS, KC_HOME, KC_PGUP, MO(_VL), TD(DA_UPLY), \
- TD(DA_DWLY), TD(DA_LCTL), KC_SPC, TD(DA_LSPR), LSFT_T(KC_CAPS),/**/SFT_T(KC_CAPS), TD(DA_RALT), KC_ENT, TD(DA_RCTL), TD(DA_DWLY))
-
-#define _upLayer LAYOUT( \
- KC_4, KC_5, KC_6, KC_YREG, _______,/**/ _______, KC_RBRC, _______, _______, _______, \
- LCTL_T(KC_1), LSFT_T(KC_2), LALT_T(KC_3), _______, _______,/**/ KC_LBRC, KC_BSLS, _______, _______, _______, \
- KC_7, KC_8, KC_9, KC_0, KC_GRV, /**/ KC_SLSH, _______, _______, _______, _______, \
- _______, _______, _______, _______, _______,/**/ KC_DEL, KC_END, KC_PGDN, _______, _______, \
- _______, _______, _______, _______, _______,/**/ _______, _______, _______, _______, _______)
-
-#define _downLayer LAYOUT( \
- KC_F4, KC_F5, KC_F6, KC_F12, _______,/**/ _______, KC_RPRN, _______, _______, _______, \
- LCTL_T(KC_F1), LSFT_T(KC_F2), LALT_T(KC_F3), KC_F11, _______,/**/ KC_LPRN, KC_EQUAL, KC_LEFT, KC_UP, KC_RIGHT, \
- KC_F7, KC_F8, KC_F9, KC_F10, _______,/**/ KC_MINUS, _______, _______, KC_DOWN, _______, \
- _______, _______, _______, _______, _______,/**/ KC_PSCR, KC_SCRL, KC_PAUSE, _______, _______, \
- _______, _______, _______, _______, _______,/**/ _______, _______, _______, _______, _______)
-
-#define _astdLayer LAYOUT( \
- KC_MPRV, KC_MUTE, _______, _______, _______,/**/KC_PSCR, KC_SCRL, KC_PAUSE, _______, KC_RGUP, \
- KC_MPLY, KC_VOLD, _______, _______, _______,/**/_______, _______, _______, _______, KC_RGDWN, \
- KC_MNXT, KC_VOLU, QK_BOOT, _______, _______,/**/_______, _______, QK_BOOT, _______, _______, \
- _______, _______, _______, _______, _______,/**/_______, _______, _______, _______, _______, \
- _______, _______, _______, _______, _______,/**/_______, _______, _______, _______, _______)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BL] = _baseLayer,
- [_UL] = _upLayer,
- [_DL] = _downLayer,
- [_VL] = _upLayer,
- [_AL] = _astdLayer,
- [_GM] = _GMLayer};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- switch (keycode) {
- case YREG:
- SEND_STRING("\"0p");
- return false;
- }
- }
-
- return true;
-}
diff --git a/keyboards/lets_split/keymaps/zer09/rules.mk b/keyboards/lets_split/keymaps/zer09/rules.mk
deleted file mode 100644
index d2259fe9d5..0000000000
--- a/keyboards/lets_split/keymaps/zer09/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-
diff --git a/keyboards/lfkeyboards/TWIlib.c b/keyboards/lfkeyboards/TWIlib.c
deleted file mode 100644
index 0d52322c64..0000000000
--- a/keyboards/lfkeyboards/TWIlib.c
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
- * TWIlib.c
- *
- * Created: 6/01/2014 10:41:33 PM
- * Author: Chris Herring
- */
-
-#include <avr/io.h>
-#include <avr/interrupt.h>
-#include "TWIlib.h"
-#include <util/delay.h>
-#include "print.h"
-
-// Global transmit buffer
-volatile uint8_t *TWITransmitBuffer;
-// Global receive buffer
-volatile uint8_t TWIReceiveBuffer[RXMAXBUFLEN];
-// Buffer indexes
-volatile int TXBuffIndex; // Index of the transmit buffer. Is volatile, can change at any time.
-int RXBuffIndex; // Current index in the receive buffer
-// Buffer lengths
-int TXBuffLen; // The total length of the transmit buffer
-int RXBuffLen; // The total number of bytes to read (should be less than RXMAXBUFFLEN)
-
-TWIInfoStruct TWIInfo;
-
-void TWIInit(void)
-{
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = 0xFF;
- TWIInfo.repStart = 0;
- // Set pre-scalers (no pre-scaling)
- TWSR = 0;
- // Set bit rate
- TWBR = ((F_CPU / TWI_FREQ) - 16) / 2;
- // Enable TWI and interrupt
- TWCR = (1 << TWIE) | (1 << TWEN);
-}
-
-uint8_t isTWIReady(void)
-{
- if ( (TWIInfo.mode == Ready) | (TWIInfo.mode == RepeatedStartSent) )
- {
- return 1;
- }
- else
- {
- if(TWIInfo.mode == Initializing){
- switch(TWIInfo.errorCode){
- case TWI_SUCCESS:
- case TWI_NO_RELEVANT_INFO:
- break;
- case TWI_LOST_ARBIT:
- case TWI_MT_DATA_NACK:
- // Some kind of I2C error, reset and re-init
- xprintf("I2C init error: %d\n", TWIInfo.errorCode);
- TWCR = (1 << TWINT)|(1 << TWSTO);
- TWIInit();
- break;
- default:
- xprintf("Other i2c init error: %d\n", TWIInfo.errorCode);
- }
- }
- return 0;
- }
-}
-
-
-void TWITransmitData(void *const TXdata, uint8_t dataLen, uint8_t repStart, uint8_t blocking)
-{
- // Wait until ready
- while (!isTWIReady()) {_delay_us(1);}
- // Reset the I2C stuff
- TWCR = (1 << TWINT)|(1 << TWSTO);
- TWIInit();
- // Set repeated start mode
- TWIInfo.repStart = repStart;
- // Copy transmit info to global variables
- TWITransmitBuffer = (uint8_t *)TXdata;
- TXBuffLen = dataLen;
- TXBuffIndex = 0;
-
- // If a repeated start has been sent, then devices are already listening for an address
- // and another start does not need to be sent.
- if (TWIInfo.mode == RepeatedStartSent)
- {
- TWIInfo.mode = Initializing;
- TWDR = TWITransmitBuffer[TXBuffIndex++]; // Load data to transmit buffer
- TWISendTransmit(); // Send the data
- }
- else // Otherwise, just send the normal start signal to begin transmission.
- {
- TWIInfo.mode = Initializing;
- TWISendStart();
- }
- if(blocking){
- // Wait until ready
- while (!isTWIReady()){_delay_us(1);}
- }
-}
-
-
-// uint8_t TWITransmitData(void *const TXdata, uint8_t dataLen, uint8_t repStart)
-// {
-// if (dataLen <= TXMAXBUFLEN)
-// {
-// // Wait until ready
-// while (!isTWIReady()) {_delay_us(1);}
-// // Set repeated start mode
-// TWIInfo.repStart = repStart;
-// // Copy data into the transmit buffer
-// uint8_t *data = (uint8_t *)TXdata;
-// for (int i = 0; i < dataLen; i++)
-// {
-// TWITransmitBuffer[i] = data[i];
-// }
-// // Copy transmit info to global variables
-// TXBuffLen = dataLen;
-// TXBuffIndex = 0;
-
-// // If a repeated start has been sent, then devices are already listening for an address
-// // and another start does not need to be sent.
-// if (TWIInfo.mode == RepeatedStartSent)
-// {
-// TWIInfo.mode = Initializing;
-// TWDR = TWITransmitBuffer[TXBuffIndex++]; // Load data to transmit buffer
-// TWISendTransmit(); // Send the data
-// }
-// else // Otherwise, just send the normal start signal to begin transmission.
-// {
-// TWIInfo.mode = Initializing;
-// TWISendStart();
-// }
-
-// }
-// else
-// {
-// return 1; // return an error if data length is longer than buffer
-// }
-// return 0;
-// }
-
-uint8_t TWIReadData(uint8_t TWIaddr, uint8_t bytesToRead, uint8_t repStart)
-{
- // Check if number of bytes to read can fit in the RXbuffer
- if (bytesToRead < RXMAXBUFLEN)
- {
- // Reset buffer index and set RXBuffLen to the number of bytes to read
- RXBuffIndex = 0;
- RXBuffLen = bytesToRead;
- // Create the one value array for the address to be transmitted
- uint8_t TXdata[1];
- // Shift the address and AND a 1 into the read write bit (set to write mode)
- TXdata[0] = (TWIaddr << 1) | 0x01;
- // Use the TWITransmitData function to initialize the transfer and address the slave
- TWITransmitData(TXdata, 1, repStart, 0);
- }
- else
- {
- return 0;
- }
- return 1;
-}
-
-ISR (TWI_vect)
-{
- switch (TWI_STATUS)
- {
- // ----\/ ---- MASTER TRANSMITTER OR WRITING ADDRESS ----\/ ---- //
- case TWI_MT_SLAW_ACK: // SLA+W transmitted and ACK received
- // Set mode to Master Transmitter
- TWIInfo.mode = MasterTransmitter;
- case TWI_START_SENT: // Start condition has been transmitted
- case TWI_MT_DATA_ACK: // Data byte has been transmitted, ACK received
- if (TXBuffIndex < TXBuffLen) // If there is more data to send
- {
- TWDR = TWITransmitBuffer[TXBuffIndex++]; // Load data to transmit buffer
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendTransmit(); // Send the data
- }
- // This transmission is complete however do not release bus yet
- else if (TWIInfo.repStart)
- {
- TWIInfo.errorCode = 0xFF;
- TWISendStart();
- }
- // All transmissions are complete, exit
- else
- {
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = 0xFF;
- TWISendStop();
- }
- break;
-
- // ----\/ ---- MASTER RECEIVER ----\/ ---- //
-
- case TWI_MR_SLAR_ACK: // SLA+R has been transmitted, ACK has been received
- // Switch to Master Receiver mode
- TWIInfo.mode = MasterReceiver;
- // If there is more than one byte to be read, receive data byte and return an ACK
- if (RXBuffIndex < RXBuffLen-1)
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendACK();
- }
- // Otherwise when a data byte (the only data byte) is received, return NACK
- else
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendNACK();
- }
- break;
-
- case TWI_MR_DATA_ACK: // Data has been received, ACK has been transmitted.
-
- /// -- HANDLE DATA BYTE --- ///
- TWIReceiveBuffer[RXBuffIndex++] = TWDR;
- // If there is more than one byte to be read, receive data byte and return an ACK
- if (RXBuffIndex < RXBuffLen-1)
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendACK();
- }
- // Otherwise when a data byte (the only data byte) is received, return NACK
- else
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendNACK();
- }
- break;
-
- case TWI_MR_DATA_NACK: // Data byte has been received, NACK has been transmitted. End of transmission.
-
- /// -- HANDLE DATA BYTE --- ///
- TWIReceiveBuffer[RXBuffIndex++] = TWDR;
- // This transmission is complete however do not release bus yet
- if (TWIInfo.repStart)
- {
- TWIInfo.errorCode = 0xFF;
- TWISendStart();
- }
- // All transmissions are complete, exit
- else
- {
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = 0xFF;
- TWISendStop();
- }
- break;
-
- // ----\/ ---- MT and MR common ----\/ ---- //
-
- case TWI_MR_SLAR_NACK: // SLA+R transmitted, NACK received
- case TWI_MT_SLAW_NACK: // SLA+W transmitted, NACK received
- case TWI_MT_DATA_NACK: // Data byte has been transmitted, NACK received
- case TWI_LOST_ARBIT: // Arbitration has been lost
- // Return error and send stop and set mode to ready
- if (TWIInfo.repStart)
- {
- TWIInfo.errorCode = TWI_STATUS;
- TWISendStart();
- }
- // All transmissions are complete, exit
- else
- {
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = TWI_STATUS;
- TWISendStop();
- }
- break;
- case TWI_REP_START_SENT: // Repeated start has been transmitted
- // Set the mode but DO NOT clear TWINT as the next data is not yet ready
- TWIInfo.mode = RepeatedStartSent;
- break;
-
- // ----\/ ---- SLAVE RECEIVER ----\/ ---- //
-
- // TODO IMPLEMENT SLAVE RECEIVER FUNCTIONALITY
-
- // ----\/ ---- SLAVE TRANSMITTER ----\/ ---- //
-
- // TODO IMPLEMENT SLAVE TRANSMITTER FUNCTIONALITY
-
- // ----\/ ---- MISCELLANEOUS STATES ----\/ ---- //
- case TWI_NO_RELEVANT_INFO: // It is not really possible to get into this ISR on this condition
- // Rather, it is there to be manually set between operations
- break;
- case TWI_ILLEGAL_START_STOP: // Illegal START/STOP, abort and return error
- TWIInfo.errorCode = TWI_ILLEGAL_START_STOP;
- TWIInfo.mode = Ready;
- TWISendStop();
- break;
- }
-
-}
diff --git a/keyboards/lfkeyboards/TWIlib.h b/keyboards/lfkeyboards/TWIlib.h
deleted file mode 100644
index 8ba261c6e5..0000000000
--- a/keyboards/lfkeyboards/TWIlib.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * TWIlib.h
- *
- * Created: 6/01/2014 10:38:42 PM
- * Author: Chris Herring
- */
-
-
-#ifndef TWILIB_H_
-#define TWILIB_H_
-// TWI bit rate
-#define TWI_FREQ 400000
-// Get TWI status
-#define TWI_STATUS (TWSR & 0xF8)
-// Transmit buffer length
-#define TXMAXBUFLEN 20
-// Receive buffer length
-#define RXMAXBUFLEN 20
-
-typedef enum {
- Ready,
- Initializing,
- RepeatedStartSent,
- MasterTransmitter,
- MasterReceiver,
- SlaceTransmitter,
- SlaveReciever
- } TWIMode;
-
- typedef struct TWIInfoStruct{
- TWIMode mode;
- uint8_t errorCode;
- uint8_t repStart;
- }TWIInfoStruct;
-
-extern TWIInfoStruct TWIInfo;
-
-// TWI Status Codes
-#define TWI_START_SENT 0x08 // Start sent
-#define TWI_REP_START_SENT 0x10 // Repeated Start sent
-// Master Transmitter Mode
-#define TWI_MT_SLAW_ACK 0x18 // SLA+W sent and ACK received
-#define TWI_MT_SLAW_NACK 0x20 // SLA+W sent and NACK received
-#define TWI_MT_DATA_ACK 0x28 // DATA sent and ACK received
-#define TWI_MT_DATA_NACK 0x30 // DATA sent and NACK received
-// Master Receiver Mode
-#define TWI_MR_SLAR_ACK 0x40 // SLA+R sent, ACK received
-#define TWI_MR_SLAR_NACK 0x48 // SLA+R sent, NACK received
-#define TWI_MR_DATA_ACK 0x50 // Data received, ACK returned
-#define TWI_MR_DATA_NACK 0x58 // Data received, NACK returned
-
-// Miscellaneous States
-#define TWI_LOST_ARBIT 0x38 // Arbitration has been lost
-#define TWI_NO_RELEVANT_INFO 0xF8 // No relevant information available
-#define TWI_ILLEGAL_START_STOP 0x00 // Illegal START or STOP condition has been detected
-#define TWI_SUCCESS 0xFF // Successful transfer, this state is impossible from TWSR as bit2 is 0 and read only
-
-
-#define TWISendStart() (TWCR = (1<<TWINT)|(1<<TWSTA)|(1<<TWEN)|(1<<TWIE)) // Send the START signal, enable interrupts and TWI, clear TWINT flag to resume transfer.
-#define TWISendStop() (TWCR = (1<<TWINT)|(1<<TWSTO)|(1<<TWEN)|(1<<TWIE)) // Send the STOP signal, enable interrupts and TWI, clear TWINT flag.
-#define TWISendTransmit() (TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWIE)) // Used to resume a transfer, clear TWINT and ensure that TWI and interrupts are enabled.
-#define TWISendACK() (TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWIE)|(1<<TWEA)) // FOR MR mode. Resume a transfer, ensure that TWI and interrupts are enabled and respond with an ACK if the device is addressed as a slave or after it receives a byte.
-#define TWISendNACK() (TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWIE)) // FOR MR mode. Resume a transfer, ensure that TWI and interrupts are enabled but DO NOT respond with an ACK if the device is addressed as a slave or after it receives a byte.
-
-// Function declarations
-void TWITransmitData(void *const TXdata, uint8_t dataLen, uint8_t repStart, uint8_t blocking);
-void TWIInit(void);
-uint8_t TWIReadData(uint8_t TWIaddr, uint8_t bytesToRead, uint8_t repStart);
-uint8_t isTWIReady(void);
-
-#endif // TWICOMMS_H_ \ No newline at end of file
diff --git a/keyboards/lfkeyboards/issi.c b/keyboards/lfkeyboards/issi.c
deleted file mode 100644
index e675a59868..0000000000
--- a/keyboards/lfkeyboards/issi.c
+++ /dev/null
@@ -1,244 +0,0 @@
-#ifdef ISSI_ENABLE
-
-#include <stdlib.h>
-#include <stdint.h>
-#include <util/delay.h>
-#include <avr/sfr_defs.h>
-#include <avr/io.h>
-#include <util/twi.h>
-#include "issi.h"
-#include "print.h"
-#include "TWIlib.h"
-
-#define ISSI_ADDR_DEFAULT 0xE8
-
-#define ISSI_REG_CONFIG 0x00
-#define ISSI_REG_CONFIG_PICTUREMODE 0x00
-#define ISSI_REG_CONFIG_AUTOPLAYMODE 0x08
-
-#define ISSI_CONF_PICTUREMODE 0x00
-#define ISSI_CONF_AUTOFRAMEMODE 0x04
-#define ISSI_CONF_AUDIOMODE 0x08
-
-#define ISSI_REG_PICTUREFRAME 0x01
-
-#define ISSI_REG_SHUTDOWN 0x0A
-#define ISSI_REG_AUDIOSYNC 0x06
-
-#define ISSI_COMMANDREGISTER 0xFD
-#define ISSI_BANK_FUNCTIONREG 0x0B // helpfully called 'page nine'
-uint8_t control[8][9] = {
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
-};
-ISSIDeviceStruct *issi_devices[4] = {0, 0, 0, 0};
-
-#ifndef cbi
-#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
-#endif
-
-#ifndef sbi
-#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
-#endif
-
-#define I2C_WRITE 0
-#define F_SCL 400000UL // SCL frequency
-#define Prescaler 1
-#define TWBR_val ((((F_CPU / F_SCL) / Prescaler) - 16 ) / 2)
-
-uint8_t i2c_start(uint8_t address)
-{
- // reset TWI control register
- TWCR = 0;
- // transmit START condition
- TWCR = (1<<TWINT) | (1<<TWSTA) | (1<<TWEN);
- // wait for end of transmission
- while( !(TWCR & (1<<TWINT)) );
-
- // check if the start condition was successfully transmitted
- if((TWSR & 0xF8) != TW_START){ return 1; }
-
- // load slave address into data register
- TWDR = address;
- // start transmission of address
- TWCR = (1<<TWINT) | (1<<TWEN);
- // wait for end of transmission
- while( !(TWCR & (1<<TWINT)) );
-
- // check if the device has acknowledged the READ / WRITE mode
- uint8_t twst = TW_STATUS & 0xF8;
- if ( (twst != TW_MT_SLA_ACK) && (twst != TW_MR_SLA_ACK) ) return 1;
-
- return 0;
-}
-
-uint8_t i2c_write(uint8_t data)
-{
- // load data into data register
- TWDR = data;
- // start transmission of data
- TWCR = (1 << TWINT) | (1 << TWEN);
- // wait for end of transmission
- while (!(TWCR & (1 << TWINT)))
- ;
-
- if ((TWSR & 0xF8) != TW_MT_DATA_ACK) {
- return 1;
- }
- return 0;
-}
-
-uint8_t i2c_transmit(uint8_t address, uint8_t* data, uint16_t length)
-{
- TWBR = (uint8_t)TWBR_val;
- if (i2c_start(address | I2C_WRITE))
- return 1;
- for (uint16_t i = 0; i < length; i++) {
- if (i2c_write(data[i]))
- return 1;
- }
- // transmit STOP condition
- TWCR = (1 << TWINT) | (1 << TWEN) | (1 << TWSTO);
- return 0;
-}
-
-void setFrame(uint8_t device, uint8_t frame)
-{
- static uint8_t current_frame = -1;
- if(current_frame != frame){
- uint8_t payload[] = {
- ISSI_ADDR_DEFAULT | device << 1,
- ISSI_COMMANDREGISTER,
- frame
- };
- TWITransmitData(payload, sizeof(payload), 0, 1);
- }
- // static uint8_t current_frame = 0xFF;
- // if(current_frame == frame){
- // // return;
- // }
- // uint8_t payload[2] = { ISSI_COMMANDREGISTER, frame };
- // i2c_transmit(ISSI_ADDR_DEFAULT | device << 1, payload, 2);
- // current_frame = frame;
-}
-
-void writeRegister8(uint8_t device, uint8_t frame, uint8_t reg, uint8_t data)
-{
- // Set the frame
- setFrame(device, frame);
-
- // Write to the register
- uint8_t payload[] = {
- ISSI_ADDR_DEFAULT | device << 1,
- reg,
- data
- };
- TWITransmitData(payload, sizeof(payload), 0, 1);
-}
-
-void activateLED(uint8_t matrix, uint8_t cx, uint8_t cy, uint8_t pwm)
-{
- uint8_t device_addr = (matrix & 0x06) >> 1;
- ISSIDeviceStruct *device = issi_devices[device_addr];
- if(device == 0){
- return;
- }
- // xprintf("activeLED: %02X %02X %02X %02X\n", matrix, cy, cx, pwm);
- uint8_t x = cx - 1; // funciton takes 1 based counts, but we need 0...
- uint8_t y = cy - 1; // creating them once for less confusion
- uint8_t control_reg = (y << 1) | (matrix & 0x01);
- if(pwm == 0){
- cbi(device->led_ctrl[control_reg], x);
- cbi(device->led_blink_ctrl[control_reg], x);
- }else{
- sbi(device->led_ctrl[control_reg], x);
- sbi(device->led_blink_ctrl[control_reg], x);
- }
- uint8_t pwm_reg = 0;
- switch(matrix & 0x01){
- case 0:
- pwm_reg = 0x00;
- break;
- case 1:
- pwm_reg = 0x08;
- break;
- }
- pwm_reg += (y << 4) + x;
- device->led_pwm[pwm_reg] = pwm;
- device->led_dirty = 1;
-}
-
-void update_issi(uint8_t device_addr, uint8_t blocking)
-{
- // This seems to take about 6ms
- ISSIDeviceStruct *device = issi_devices[device_addr];
- if(device != 0){
- if(device->fn_dirty){
- device->fn_dirty = 0;
- setFrame(device_addr, ISSI_BANK_FUNCTIONREG);
- TWITransmitData(&device->fn_device_addr, sizeof(device->fn_registers) + 2, 0, 1);
- }
- if(device->led_dirty){
- device->led_dirty = 0;
- setFrame(device_addr, 0);
- TWITransmitData(&device->led_device_addr, 0xB6, 0, blocking);
- }
- }
-}
-
-void issi_init(void)
-{
- TWIInit();
- for(uint8_t device_addr = 0; device_addr < 4; device_addr++){
- // If this device has been previously allocated, free it
- if(issi_devices[device_addr] != 0){
- free(issi_devices[device_addr]);
- }
- // Try to shutdown the device, if this fails skip this device
- writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00);
- while (!isTWIReady()){_delay_us(1);}
- if(TWIInfo.errorCode != 0xFF){
- xprintf("ISSI init failed %d %02X %02X\n", device_addr, TWIInfo.mode, TWIInfo.errorCode);
- continue;
- }
- // Allocate the device structure - calloc zeros it for us
- ISSIDeviceStruct *device = (ISSIDeviceStruct *)calloc(sizeof(ISSIDeviceStruct) * 2, 1);
- issi_devices[device_addr] = device;
- device->fn_device_addr = ISSI_ADDR_DEFAULT | device_addr << 1;
- device->fn_register_addr = 0;
- device->led_device_addr = ISSI_ADDR_DEFAULT | device_addr << 1;
- device->led_register_addr = 0;
- // set dirty bits so that all of the buffered data is written out
- device->fn_dirty = 1;
- device->led_dirty = 1;
- update_issi(device_addr, 1);
- // Set the function register to picture mode
- // device->fn_reg[ISSI_REG_CONFIG] = ISSI_REG_CONFIG_PICTUREMODE;
- writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01);
- }
-
- // Shutdown and set all registers to 0
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00);
- // for(uint8_t bank = 0; bank <= 7; bank++){
- // for (uint8_t reg = 0x00; reg <= 0xB3; reg++) {
- // writeRegister8(device_addr, bank, reg, 0x00);
- // }
- // }
- // for (uint8_t reg = 0; reg <= 0x0C; reg++) {
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, reg, 0x00);
- // }
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_CONFIG, ISSI_REG_CONFIG_PICTUREMODE);
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01);
- // picture mode
- // writeRegister8(ISSI_BANK_FUNCTIONREG, 0x01, 0x01);
-
- //Enable blink
- // writeRegister8(ISSI_BANK_FUNCTIONREG, 0x05, 0x48B);
-
- //Enable Breath
-
-}
-
-#endif \ No newline at end of file
diff --git a/keyboards/lfkeyboards/issi.h b/keyboards/lfkeyboards/issi.h
deleted file mode 100644
index 74379ddbc8..0000000000
--- a/keyboards/lfkeyboards/issi.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#pragma once
-
-#ifdef ISSI_ENABLE
-
-typedef struct ISSIDeviceStruct{
- uint8_t fn_dirty; // function registers need to be resent
- uint8_t fn_device_addr;
- uint8_t fn_register_addr;
- uint8_t fn_registers[13];
- uint8_t led_dirty; // LED data has changed and needs to be resent
- uint8_t led_device_addr;
- uint8_t led_register_addr;
- uint8_t led_ctrl[18];
- uint8_t led_blink_ctrl[18];
- uint8_t led_pwm[144];
-}ISSIDeviceStruct;
-
-extern ISSIDeviceStruct *issi_devices[];
-
-// Low level commands- 'device' is the 2-bit i2c id.
-void issi_init(void);
-void set_shutdown(uint8_t device, uint8_t shutdown);
-void writeRegister8(uint8_t device, uint8_t frame, uint8_t reg, uint8_t data);
-
-// Higher level, no device is given, but it is calculated from 'matrix'
-// Each device has 2 blocks, max of 4 devices:
-// Device | Block = Matrix
-// 0 A 0
-// 0 B 1
-// 1 A 2
-// 1 B 3
-// 2 A 4
-// 2 B 5
-// 3 A 6
-// 3 B 7
-void activateLED(uint8_t matrix, uint8_t cx, uint8_t cy, uint8_t pwm);
-void update_issi(uint8_t device_addr, uint8_t blocking);
-
-#endif
diff --git a/keyboards/lfkeyboards/lfk65_hs/config.h b/keyboards/lfkeyboards/lfk65_hs/config.h
index 221eee1bd4..7bc78f68d6 100644
--- a/keyboards/lfkeyboards/lfk65_hs/config.h
+++ b/keyboards/lfkeyboards/lfk65_hs/config.h
@@ -1,7 +1,5 @@
#pragma once
-#define BACKLIGHT_PWM_MAP {8, 16, 40, 55, 70, 128, 200, 255}
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/lfkeyboards/lfk65_hs/info.json b/keyboards/lfkeyboards/lfk65_hs/info.json
index ca2e2c695b..0034fced4a 100644
--- a/keyboards/lfkeyboards/lfk65_hs/info.json
+++ b/keyboards/lfkeyboards/lfk65_hs/info.json
@@ -13,28 +13,6 @@
"rows": ["B0", "B3", "B2", "B1", "F5"]
},
"diode_direction": "COL2ROW",
- "backlight": {
- "levels": 8
- },
- "rgblight": {
- "hue_steps": 10,
- "led_count": 20,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c b/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c
index 47ad655ddc..ee8d8b2e73 100644
--- a/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c
+++ b/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.c
@@ -1,13 +1,10 @@
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
#include "lfk65_hs.h"
+#include <avr/wdt.h>
bool process_record_kb(uint16_t keycode, keyrecord_t* record)
{
if (keycode == QK_BOOT) {
reset_keyboard_kb();
- } else {
}
return process_record_user(keycode, record);
}
diff --git a/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.h b/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.h
index 2be617b404..90031022d3 100644
--- a/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.h
+++ b/keyboards/lfkeyboards/lfk65_hs/lfk65_hs.h
@@ -1,8 +1,5 @@
#pragma once
#include "quantum.h"
-#include "matrix.h"
-#include <avr/sfr_defs.h>
-#include <stdint.h>
void reset_keyboard_kb(void);
diff --git a/keyboards/lfkeyboards/lfk65_hs/rules.mk b/keyboards/lfkeyboards/lfk65_hs/rules.mk
index 5589209fdd..e69de29bb2 100644
--- a/keyboards/lfkeyboards/lfk65_hs/rules.mk
+++ b/keyboards/lfkeyboards/lfk65_hs/rules.mk
@@ -1,2 +0,0 @@
-# Extra source files for IS3731 lighting
-SRC = TWIlib.c issi.c lighting.c
diff --git a/keyboards/lfkeyboards/lfk78/config.h b/keyboards/lfkeyboards/lfk78/config.h
index 89d9c4b243..99c3904213 100644
--- a/keyboards/lfkeyboards/lfk78/config.h
+++ b/keyboards/lfkeyboards/lfk78/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define BACKLIGHT_PWM_MAP { 8, 16, 40, 55, 70, 128, 200, 255 }
-
#define AUDIO_PIN C6
#define AUDIO_VOICES
diff --git a/keyboards/lfkeyboards/lfk78/keymaps/ca178858/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/ca178858/keymap.c
index f4d1e010ee..80e267e458 100644
--- a/keyboards/lfkeyboards/lfk78/keymaps/ca178858/keymap.c
+++ b/keyboards/lfkeyboards/lfk78/keymaps/ca178858/keymap.c
@@ -15,23 +15,6 @@ enum {
bool spam_space = false;
-// {0x00000000, 0xFFFFFFFF, {0x0000, 0x0FFF, 0x0000}}, // base layer - green
-// {0x00000008, 0xFFFFFFF8, {0x07FF, 0x07FF, 0x0000}}, // CSGO layer - orange
-// {0x00000010, 0xFFFFFFF0, {0x0000, 0x0000, 0x0FFF}}, // function layer - blue
-// {0x00000020, 0xFFFFFFE0, {0x0FFF, 0x0000, 0x0FFF}}, // settings layer - magenta
-// {0xFFFFFFFF, 0xFFFFFFFF, {0x0FFF, 0x0FFF, 0x0FFF}}, // unknown layer - REQUIRED - white
-
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x0000, 0x0FFF, 0x0000}}, // base layer - green
- {0x00000002, 0xFFFFFFFE, {0x07FF, 0x07FF, 0x0000}}, // CSGO layer - orange
- {0x00000004, 0xFFFFFFFC, {0x0000, 0x0000, 0x0FFF}}, // function layer - blue
- {0x00000008, 0xFFFFFFE8, {0x0FFF, 0x0000, 0x0FFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0x0FFF, 0x0FFF, 0x0FFF}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap BASE: (Base Layer) Default Layer
* ,---------. ,------------------------------------------------------------. ,---------.
@@ -55,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
[CS_GO] = LAYOUT_split_rshift(
- _______, _______, QK_GESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, F(0), _______,
+ _______, _______, QK_GESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/lfkeyboards/lfk78/keymaps/ca178858/rules.mk b/keyboards/lfkeyboards/lfk78/keymaps/ca178858/rules.mk
index 481ff1407b..732bfcfa8f 100644
--- a/keyboards/lfkeyboards/lfk78/keymaps/ca178858/rules.mk
+++ b/keyboards/lfkeyboards/lfk78/keymaps/ca178858/rules.mk
@@ -1,34 +1,3 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Disable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable RGB underlight
-SLEEP_LED_ENABLE = yes
+AUDIO_ENABLE = no
TAP_DANCE_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = yes # Resets keyboard if matrix_scan isn't run every 250ms
-
-
-# # Set the LFK78 hardware version. This is defined in rules.mk, but can be overidden here if desired
-# #
-# # RevB - first public release, uses atmega32u4, has audio, ISSI matrix split between RGB and backlight
-# # RevC/D - at90usb1286, no audio, ISSI device 0 is backlight, 4 is RGB
-# #
-# # Set to B, C or D
-# LFK_REV = D
-
-# ifeq ($(LFK_REV), B)
-# MCU = atmega32u4
-# else
-# MCU = at90usb1286
-# endif
-# OPT_DEFS += -DLFK_REV_$(LFK_REV)
-# OPT_DEFS += -DUSB_PRODUCT=\"LFK_Rev$(LFK_REV)\"
diff --git a/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c
index 4b0a7e2196..d81ed91814 100644
--- a/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c
+++ b/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- { 0x00000000, 0xFFFFFFFF, { 0x0000, 0x0FFF, 0x0000 } }, // base layer - green
- { 0x00000002, 0xFFFFFFFE, { 0x0000, 0x0000, 0x0FFF } }, // function layer - blue
- { 0x00000004, 0xFFFFFFFC, { 0x0FFF, 0x0000, 0x0FFF } }, // settings layer - magenta
- { 0xFFFFFFFF, 0xFFFFFFFF, { 0x0FFF, 0x0FFF, 0x0FFF } } // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,---------. ,------------------------------------------------------------. ,---------.
diff --git a/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c
index 7db914604d..1f3ef6fc8e 100644
--- a/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c
+++ b/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- { 0x00000000, 0xFFFFFFFF, { 0x0000, 0x0FFF, 0x0000 } }, // base layer - green
- { 0x00000002, 0xFFFFFFFE, { 0x0000, 0x0000, 0x0FFF } }, // function layer - blue
- { 0x00000004, 0xFFFFFFFC, { 0x0FFF, 0x0000, 0x0FFF } }, // settings layer - magenta
- { 0xFFFFFFFF, 0xFFFFFFFF, { 0x0FFF, 0x0FFF, 0x0FFF } } // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,---------. ,------------------------------------------------------------. ,---------.
diff --git a/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/keymap.c
index 00e292d61f..041c3cdfd0 100644
--- a/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/keymap.c
+++ b/keyboards/lfkeyboards/lfk78/keymaps/split_bs_osx/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- { 0x00000000, 0xFFFFFFFF, { 0x0000, 0x0FFF, 0x0000 } }, // base layer - green
- { 0x00000002, 0xFFFFFFFE, { 0x0000, 0x0000, 0x0FFF } }, // function layer - blue
- { 0x00000004, 0xFFFFFFFC, { 0x0FFF, 0x0000, 0x0FFF } }, // settings layer - magenta
- { 0xFFFFFFFF, 0xFFFFFFFF, { 0x0FFF, 0x0FFF, 0x0FFF } } // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,---------. ,------------------------------------------------------------. ,---------.
diff --git a/keyboards/lfkeyboards/lfk78/lfk78.c b/keyboards/lfkeyboards/lfk78/lfk78.c
index 3a10f51cb6..50f1505050 100644
--- a/keyboards/lfkeyboards/lfk78/lfk78.c
+++ b/keyboards/lfkeyboards/lfk78/lfk78.c
@@ -1,55 +1,19 @@
#include "lfk78.h"
-
-#include <avr/timer_avr.h>
#include <avr/wdt.h>
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
-
-#ifdef AUDIO_ENABLE
-# include "audio.h"
-#endif
uint16_t click_hz = CLICK_HZ;
uint16_t click_time = CLICK_MS;
uint8_t click_toggle = CLICK_ENABLED;
-__attribute__((weak))
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- { 0x00000000, 0xFFFFFFFF, { 0x0000, 0x0FFF, 0x0000 } }, // base layer - green
- { 0x00000002, 0xFFFFFFFE, { 0x0000, 0x0000, 0x0FFF } }, // function layer - blue
- { 0x00000004, 0xFFFFFFFC, { 0x0FFF, 0x0000, 0x0FFF } }, // settings layer - magenta
- { 0xFFFFFFFF, 0xFFFFFFFF, { 0x0FFF, 0x0FFF, 0x0FFF } } // unknown layer - REQUIRED - white
-};
-
void matrix_init_kb(void) {
matrix_init_user();
- // Configure the Layer LED
- // Set up 16 bit PWM: Fast PWM, mode 14, inverted
- TCCR1A = _BV(COM1A1) | _BV(COM1A0) | _BV(COM1B1) | _BV(COM1B0) | _BV(COM1C1) | _BV(COM1C0) | _BV(WGM11);
- TCCR1B = _BV(WGM13) | _BV(WGM12) | _BV(CS10);
- ICR1 = 0xFFFF;
- // PWM values - 0xFFFF = off, 0x0000 = max
- OCR1A = 0x0FFF; // B5 - Red
- OCR1B = 0x0000; // B6 - Green
- OCR1C = 0x0000; // B7 - Blue
- // Set as output
- setPinOutput(B5);
- setPinOutput(B6);
- setPinOutput(B7);
-
#ifndef AUDIO_ENABLE
// If we're not using the audio pin, drive it low
setPinOutput(C6);
writePinLow(C6);
#endif
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
-
#ifdef WATCHDOG_ENABLE
// This is done after turning the layer LED red, if we're caught in a loop
// we should get a flashing red light
@@ -62,54 +26,6 @@ void matrix_scan_kb(void) {
wdt_reset();
#endif
-#ifdef ISSI_ENABLE
- // switch/underglow lighting update
- static uint32_t issi_device = 0;
- static uint32_t twi_last_ready = 0;
-
- if (twi_last_ready > 1000) {
- // It's been way too long since the last ISSI update, reset the I2C bus and start again
- dprintf("TWI failed to recover, TWI re-init\n");
- twi_last_ready = 0;
- TWIInit();
- force_issi_refresh();
- }
-
- if (isTWIReady()) {
- twi_last_ready = 0;
- // If the i2c bus is available, kick off the issi update, alternate between devices
- update_issi(issi_device, issi_device);
-
- if (issi_device) {
- issi_device = 0;
- } else {
- issi_device = 3;
- }
- } else {
- twi_last_ready++;
- }
-#endif
-
- // Update layer indicator LED
- //
- // Not sure how else to reliably do this... TMK has the 'hook_layer_change'
- // but can't find QMK equiv
- static uint32_t layer_indicator = -1;
-
- if (layer_indicator != layer_state) {
- for (uint32_t i = 0; ; i++) {
- // the layer_info list should end with layer 0xFFFFFFFF
- // it will break this out of the loop and define the unknown layer color
- if ((layer_info[i].layer == (layer_state & layer_info[i].mask)) || (layer_info[i].layer == 0xFFFFFFFF)) {
- OCR1A = layer_info[i].color.red;
- OCR1B = layer_info[i].color.green;
- OCR1C = layer_info[i].color.blue;
- layer_indicator = layer_state;
- break;
- }
- }
- }
-
matrix_scan_user();
}
@@ -144,34 +60,5 @@ void reset_keyboard_kb(void) {
wdt_reset();
#endif
- OCR1A = 0x0000; // B5 - Red
- OCR1B = 0x0FFF; // B6 - Green
- OCR1C = 0x0FFF; // B7 - Blue
-
reset_keyboard();
}
-
-bool led_update_kb(led_t led_state) {
- bool res = led_update_user(led_state);
- if(res) {
-#ifdef ISSI_ENABLE
-# ifdef CAPSLOCK_LED
- if (led_state.caps_lock) {
- activateLED(0, 3, 7, 255);
- } else {
- activateLED(0, 3, 7, 0);
- }
-# endif // CAPSLOCK_LED
-#endif // ISS_ENABLE
-
- }
- return res;
-}
-
-// LFK lighting info
-const uint8_t switch_matrices[] = { 0, 1 };
-const uint8_t rgb_matrices[] = { 6, 7 };
-const uint8_t rgb_sequence[] = {
- 12, 11, 10, 9, 16, 32, 31, 30, 28, 25, 24, 22, 21,
- 20, 19, 18, 17, 1, 2, 3, 4, 5, 6, 7, 8, 14, 13
-};
diff --git a/keyboards/lfkeyboards/lfk78/lfk78.h b/keyboards/lfkeyboards/lfk78/lfk78.h
index 1be53181cd..ee6f8d47e0 100644
--- a/keyboards/lfkeyboards/lfk78/lfk78.h
+++ b/keyboards/lfkeyboards/lfk78/lfk78.h
@@ -2,21 +2,6 @@
#include "quantum.h"
-typedef struct RGB_Color {
- uint16_t red;
- uint16_t green;
- uint16_t blue;
-} RGB_Color;
-
-typedef struct Layer_Info {
- uint32_t layer;
- uint32_t mask;
- RGB_Color color;
-} Layer_Info;
-
-extern const uint32_t layer_count;
-extern const Layer_Info layer_info[];
-
#define CLICK_HZ 500
#define CLICK_MS 2
#define CLICK_ENABLED 0
diff --git a/keyboards/lfkeyboards/lfk78/post_rules.mk b/keyboards/lfkeyboards/lfk78/post_rules.mk
index 817a085f5e..1b087d7e1e 100644
--- a/keyboards/lfkeyboards/lfk78/post_rules.mk
+++ b/keyboards/lfkeyboards/lfk78/post_rules.mk
@@ -1,14 +1,3 @@
-# Extra source files for IS3731 lighting
-SRC += TWIlib.c issi.c lighting.c
-
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
-
-ifeq ($(strip $(CAPSLOCK_LED)), yes)
- OPT_DEFS += -DCAPSLOCK_LED
-endif
diff --git a/keyboards/lfkeyboards/lfk78/revb/info.json b/keyboards/lfkeyboards/lfk78/revb/info.json
index 1431ce1cc6..ac98455afa 100644
--- a/keyboards/lfkeyboards/lfk78/revb/info.json
+++ b/keyboards/lfkeyboards/lfk78/revb/info.json
@@ -13,30 +13,6 @@
"rows": ["B0", "B1", "B2", "B3", "B4", "F0", "F1", "F4", "F5", "F6"]
},
"diode_direction": "COL2ROW",
- "backlight": {
- "driver": "custom",
- "levels": 8
- },
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 31,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/lfkeyboards/lfk78/revb/revb.c b/keyboards/lfkeyboards/lfk78/revb/revb.c
deleted file mode 100644
index d5b6b47b03..0000000000
--- a/keyboards/lfkeyboards/lfk78/revb/revb.c
+++ /dev/null
@@ -1,19 +0,0 @@
-#include "quantum.h"
-
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// / \ ISSI Col | ISSI Row |
-// matrix idx
-const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] = {
- {0x19, 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12},
- {0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22},
- {0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32},
- {0x49, 0x48, 0x47, 0x45, 0x44, 0x43, 0x42, 0x41},
- {0x59, 0x58, 0x57, 0x56, 0x55, 0x51, 0xD6, 0xE5},
- {0x11, 0x99, 0x98, 0x97, 0x96, 0x95, 0x94, 0x93},
- {0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xA4, 0xA3},
- {0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5, 0xB3, 0x00},
- {0xC9, 0xC8, 0xC7, 0xC6, 0xC5, 0xC4, 0xC2, 0x00},
- {0xE4, 0xE3, 0xE2, 0xE1, 0x92, 0x91, 0xA2, 0xA1}
-};
diff --git a/keyboards/lfkeyboards/lfk78/revc/info.json b/keyboards/lfkeyboards/lfk78/revc/info.json
index 980ffafc63..7bfaf8cac6 100644
--- a/keyboards/lfkeyboards/lfk78/revc/info.json
+++ b/keyboards/lfkeyboards/lfk78/revc/info.json
@@ -13,30 +13,6 @@
"rows": ["D2", "D3", "D4", "D5", "D6"]
},
"diode_direction": "COL2ROW",
- "backlight": {
- "driver": "custom",
- "levels": 8
- },
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 27,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"processor": "at90usb1286",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/lfkeyboards/lfk78/revc/revc.c b/keyboards/lfkeyboards/lfk78/revc/revc.c
deleted file mode 100644
index a31aea365b..0000000000
--- a/keyboards/lfkeyboards/lfk78/revc/revc.c
+++ /dev/null
@@ -1,14 +0,0 @@
-#include "quantum.h"
-
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// / \ ISSI Col | ISSI Row |
-// matrix idx
-const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] = {
- {0x19, 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x95, 0x94, 0x93, 0x92, 0x91},
- {0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xA4, 0xA3, 0xA2, 0xA1},
- {0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5, 0xB3, 0x00, 0x00, 0x00},
- {0x49, 0x48, 0x47, 0x00, 0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0xC5, 0xC4, 0x00, 0xC2, 0x00},
- {0x59, 0x58, 0x57, 0x56, 0x55, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0xD6, 0xE5, 0xE4, 0xE3, 0xE2, 0xE1}
-};
diff --git a/keyboards/lfkeyboards/lfk78/revj/info.json b/keyboards/lfkeyboards/lfk78/revj/info.json
index 5ff7bcbbfd..f99df02ed9 100644
--- a/keyboards/lfkeyboards/lfk78/revj/info.json
+++ b/keyboards/lfkeyboards/lfk78/revj/info.json
@@ -13,30 +13,6 @@
"rows": ["D2", "D3", "D4", "D5", "D6"]
},
"diode_direction": "COL2ROW",
- "backlight": {
- "driver": "custom",
- "levels": 8
- },
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 27,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"processor": "at90usb646",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/lfkeyboards/lfk78/revj/revj.c b/keyboards/lfkeyboards/lfk78/revj/revj.c
deleted file mode 100644
index a31aea365b..0000000000
--- a/keyboards/lfkeyboards/lfk78/revj/revj.c
+++ /dev/null
@@ -1,14 +0,0 @@
-#include "quantum.h"
-
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// / \ ISSI Col | ISSI Row |
-// matrix idx
-const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] = {
- {0x19, 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x95, 0x94, 0x93, 0x92, 0x91},
- {0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xA4, 0xA3, 0xA2, 0xA1},
- {0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5, 0xB3, 0x00, 0x00, 0x00},
- {0x49, 0x48, 0x47, 0x00, 0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0xC5, 0xC4, 0x00, 0xC2, 0x00},
- {0x59, 0x58, 0x57, 0x56, 0x55, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0xD6, 0xE5, 0xE4, 0xE3, 0xE2, 0xE1}
-};
diff --git a/keyboards/lfkeyboards/lfk78/rules.mk b/keyboards/lfkeyboards/lfk78/rules.mk
index 4e3f7b9256..82ffed96f5 100644
--- a/keyboards/lfkeyboards/lfk78/rules.mk
+++ b/keyboards/lfkeyboards/lfk78/rules.mk
@@ -7,13 +7,7 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
-CAPSLOCK_LED = no # Toggle back light LED of Caps Lock
DEFAULT_FOLDER = lfkeyboards/lfk78/revj
diff --git a/keyboards/lfkeyboards/lfk87/config.h b/keyboards/lfkeyboards/lfk87/config.h
index 20aba2ad6b..84c2fd11dc 100644
--- a/keyboards/lfkeyboards/lfk87/config.h
+++ b/keyboards/lfkeyboards/lfk87/config.h
@@ -20,8 +20,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define AUDIO_VOICES
#define AUDIO_PIN C6
-#define BACKLIGHT_PWM_MAP {2, 4, 8, 16, 40, 55, 70, 128, 200, 255}
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/lfkeyboards/lfk87/info.json b/keyboards/lfkeyboards/lfk87/info.json
index 6a2d5eb796..0b53928421 100644
--- a/keyboards/lfkeyboards/lfk87/info.json
+++ b/keyboards/lfkeyboards/lfk87/info.json
@@ -8,15 +8,5 @@
"pid": "0x6060",
"device_version": "0.0.1"
},
- "backlight": {
- "driver": "custom",
- "levels": 10
- },
- "rgblight": {
- "driver": "custom"
- },
- "ws2812": {
- "pin": "F4"
- },
"community_layouts": ["tkl_ansi", "tkl_iso"]
}
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/ca178858/keymap.c b/keyboards/lfkeyboards/lfk87/keymaps/ca178858/keymap.c
index 0dfba1afac..3be46837c1 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/ca178858/keymap.c
+++ b/keyboards/lfkeyboards/lfk87/keymaps/ca178858/keymap.c
@@ -13,17 +13,6 @@ enum {
TD_ESC_FUNC = 0,
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFF8, {0x00, 0xFF, 0x00}}, // base layers (VANILLA, DEFAULT_WKL, DEFAULT_OSX) - green
- {0x00000008, 0xFFFFFFF8, {0x07FF, 0x07FF, 0x0000}}, // CSGO layer - orange
- {0x00000010, 0xFFFFFFF0, {0x0000, 0x0000, 0x0FFF}}, // function layer - blue
- {0x00000020, 0xFFFFFFE0, {0x0FFF, 0x0000, 0x0FFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0x0FFF, 0x0FFF, 0x0FFF}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,-----------------------------------------------------------------------------.
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/ca178858/rules.mk b/keyboards/lfkeyboards/lfk87/keymaps/ca178858/rules.mk
index 8d2c18f6dd..eb12c33f4a 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/ca178858/rules.mk
+++ b/keyboards/lfkeyboards/lfk87/keymaps/ca178858/rules.mk
@@ -1,17 +1,2 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = yes # Console for debug(+400)
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = yes # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Disable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable RGB underlight
-SLEEP_LED_ENABLE = yes
TAP_DANCE_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = yes # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c b/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c
index 2b1860fab3..b9057e9047 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c
+++ b/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS, // 0x10
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0xFF, 0x00}}, // base layers - green
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0xFF}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0xFF, 0x00, 0xFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0xFF, 0xFF, 0xFF}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,-----------------------------------------------------------------------------.
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/default/rules.mk b/keyboards/lfkeyboards/lfk87/keymaps/default/rules.mk
index ec4ce1afba..bcd6b23d23 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/default/rules.mk
+++ b/keyboards/lfkeyboards/lfk87/keymaps/default/rules.mk
@@ -1,13 +1 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-AUDIO_ENABLE = yes # Audio output
-RGBLIGHT_ENABLE = yes # Enable RGB underlight
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/gbchk/keymap.c b/keyboards/lfkeyboards/lfk87/keymaps/gbchk/keymap.c
index 48726503ab..0191b3570f 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/gbchk/keymap.c
+++ b/keyboards/lfkeyboards/lfk87/keymaps/gbchk/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS, // 0x10
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0x00, 0x00}}, // base layers - off
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0xFF}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0xFF, 0x00, 0xFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0xFF, 0xFF, 0xFF}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,-----------------------------------------------------------------------------.
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/gbchk/rules.mk b/keyboards/lfkeyboards/lfk87/keymaps/gbchk/rules.mk
index 01b8506d3a..bcd6b23d23 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/gbchk/rules.mk
+++ b/keyboards/lfkeyboards/lfk87/keymaps/gbchk/rules.mk
@@ -1,16 +1 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = yes # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable RGB underlight
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c b/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c
index 56ca013b0d..510aa6730f 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c
+++ b/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS, // 0x04
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0x00, 0x00}}, // base layer - off
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0x7F}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0x7F, 0x00, 0x00}}, // settings layer - red
- {0xFFFFFFFF, 0xFFFFFFFF, {0x0F, 0x0F, 0x0F}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,-----------------------------------------------------------------------------.
diff --git a/keyboards/lfkeyboards/lfk87/keymaps/iso/rules.mk b/keyboards/lfkeyboards/lfk87/keymaps/iso/rules.mk
index 7baa40317a..a5f96a8317 100644
--- a/keyboards/lfkeyboards/lfk87/keymaps/iso/rules.mk
+++ b/keyboards/lfkeyboards/lfk87/keymaps/iso/rules.mk
@@ -1,13 +1,2 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-AUDIO_ENABLE = yes # Audio output
-RGBLIGHT_ENABLE = yes # Enable RGB underlight
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
+AUDIO_ENABLE = yes
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/lfkeyboards/lfk87/lfk87.c b/keyboards/lfkeyboards/lfk87/lfk87.c
index 3e95361a33..849f0ebcc5 100644
--- a/keyboards/lfkeyboards/lfk87/lfk87.c
+++ b/keyboards/lfkeyboards/lfk87/lfk87.c
@@ -1,42 +1,20 @@
-
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
#include "lfk87.h"
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
-#include "debug.h"
-#include "quantum.h"
+#include <avr/wdt.h>
uint16_t click_hz = CLICK_HZ;
uint16_t click_time = CLICK_MS;
uint8_t click_toggle = CLICK_ENABLED;
-__attribute__((weak))
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0xFF, 0x00}}, // base layers - green
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0xFF}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0xFF, 0x00, 0xFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0xFF, 0xFF, 0xFF}}, // unknown layer - REQUIRED - white
-};
-
void matrix_init_kb(void)
{
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
- set_rgb(31, 0x00, 0x00, 0x00); // Caps lock
- set_rgb(32, 0xFF, 0x00, 0x00); // Layer indicator, start red
#ifndef AUDIO_ENABLE
// If we're not using the audio pin, drive it low
setPinOutput(C6);
writePinLow(C6);
#endif
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
#ifdef WATCHDOG_ENABLE
// This is done after turning the layer LED red, if we're caught in a loop
// we should get a flashing red light
@@ -49,49 +27,10 @@ void matrix_scan_kb(void)
#ifdef WATCHDOG_ENABLE
wdt_reset();
#endif
-#ifdef ISSI_ENABLE
- // switch/underglow lighting update
- static uint32_t issi_device = 0;
- static uint32_t twi_last_ready = 0;
- if(twi_last_ready > 1000){
- // Its been way too long since the last ISSI update, reset the I2C bus and start again
- twi_last_ready = 0;
- TWIInit();
- force_issi_refresh();
- }
- if(isTWIReady()){
- twi_last_ready = 0;
- // If the i2c bus is available, kick off the issi update, alternate between devices
- update_issi(issi_device, issi_device);
- if(issi_device){
- issi_device = 0;
- }else{
- issi_device = 3;
- }
- }else{
- twi_last_ready++;
- }
-#endif
- // Update layer indicator LED
- //
- // Not sure how else to reliably do this... TMK has the 'hook_layer_change'
- // but can't find QMK equiv
- static uint32_t layer_indicator = -1;
- if(layer_indicator != layer_state){
- for(uint32_t i=0;; i++){
- // the layer_info list should end with layer 0xFFFF
- // it will break this out of the loop and define the unknown layer color
- if((layer_info[i].layer == (layer_state & layer_info[i].mask)) || (layer_info[i].layer == 0xFFFFFFFF)){
- set_rgb(32, layer_info[i].color.red, layer_info[i].color.green, layer_info[i].color.blue);
- layer_indicator = layer_state;
- break;
- }
- }
- }
matrix_scan_user();
}
-void click(uint16_t freq, uint16_t duration){
+void clicking_notes(uint16_t freq, uint16_t duration){
#ifdef AUDIO_ENABLE
if(freq >= 100 && freq <= 20000 && duration < 100){
play_note(freq, 10);
@@ -106,11 +45,10 @@ void click(uint16_t freq, uint16_t duration){
bool process_record_kb(uint16_t keycode, keyrecord_t* record)
{
if (click_toggle && record->event.pressed){
- click(click_hz, click_time);
+ clicking_notes(click_hz, click_time);
}
if (keycode == QK_BOOT) {
reset_keyboard_kb();
- } else {
}
return process_record_user(keycode, record);
}
@@ -121,35 +59,5 @@ void reset_keyboard_kb(void){
wdt_disable();
wdt_reset();
#endif
- set_rgb(31, 0x00, 0xFF, 0xFF);
- set_rgb(32, 0x00, 0xFF, 0xFF);
- force_issi_refresh();
reset_keyboard();
}
-
-bool led_update_kb(led_t led_state) {
- bool res = led_update_user(led_state);
- if(res) {
- // Set capslock LED to Blue
- if (led_state.caps_lock) {
- set_rgb(31, 0x00, 0x00, 0x7F);
- } else{
- set_rgb(31, 0x00, 0x00, 0x00);
- }
- }
- return res;
-}
-
-// Lighting info, see lighting.h for details
-const uint8_t switch_matrices[] = {0, 1};
-const uint8_t rgb_matrices[] = {6, 7};
-
-// RGB Map:
-// 27 29 10 9 8 7 6
-// 26 5
-// 25 4
-// 24 3
-// 23 22 21 20 14 15 11 1 2
-const uint8_t rgb_sequence[] = {
- 27, 29, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 11, 15, 14, 20, 21, 22, 23, 24, 25, 26
-};
diff --git a/keyboards/lfkeyboards/lfk87/lfk87.h b/keyboards/lfkeyboards/lfk87/lfk87.h
index d17c1da26f..ee6f8d47e0 100644
--- a/keyboards/lfkeyboards/lfk87/lfk87.h
+++ b/keyboards/lfkeyboards/lfk87/lfk87.h
@@ -1,27 +1,10 @@
#pragma once
#include "quantum.h"
-#include "matrix.h"
-#include <avr/sfr_defs.h>
-
-typedef struct RGB_Color {
- uint16_t red;
- uint16_t green;
- uint16_t blue;
-} RGB_Color;
-
-typedef struct Layer_Info {
- uint32_t layer;
- uint32_t mask;
- RGB_Color color;
-} Layer_Info;
-
-extern const uint32_t layer_count;
-extern const Layer_Info layer_info[];
#define CLICK_HZ 500
#define CLICK_MS 2
#define CLICK_ENABLED 0
void reset_keyboard_kb(void);
-void click(uint16_t freq, uint16_t duration);
+void clicking_notes(uint16_t freq, uint16_t duration);
diff --git a/keyboards/lfkeyboards/lfk87/post_rules.mk b/keyboards/lfkeyboards/lfk87/post_rules.mk
index 044d9754f1..1b087d7e1e 100644
--- a/keyboards/lfkeyboards/lfk87/post_rules.mk
+++ b/keyboards/lfkeyboards/lfk87/post_rules.mk
@@ -1,7 +1,3 @@
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
diff --git a/keyboards/lfkeyboards/lfk87/reva/info.json b/keyboards/lfkeyboards/lfk87/reva/info.json
index ad3ad7f877..95b5ff81b7 100644
--- a/keyboards/lfkeyboards/lfk87/reva/info.json
+++ b/keyboards/lfkeyboards/lfk87/reva/info.json
@@ -6,22 +6,6 @@
"rows": ["D2", "D3", "D4", "D5", "D6", "D7"]
},
"diode_direction": "COL2ROW",
- "rgblight": {
- "hue_steps": 10,
- "led_count": 25,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
"layouts": {
"LAYOUT_tkl_ansi": {
"layout": [
diff --git a/keyboards/lfkeyboards/lfk87/reva/reva.c b/keyboards/lfkeyboards/lfk87/reva/reva.c
deleted file mode 100644
index 86289c7a01..0000000000
--- a/keyboards/lfkeyboards/lfk87/reva/reva.c
+++ /dev/null
@@ -1,16 +0,0 @@
-#include "quantum.h"
-
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// | | ISSI Col | ISSI Row |
-// / |
-// Device
-const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] = {
- {0x19, 0x00, 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x95, 0x94, 0x93},
- {0x92, 0x91, 0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xA4},
- {0xA3, 0xA2, 0xA1, 0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5},
- {0xB3, 0x49, 0x48, 0x47, 0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0x00, 0x00, 0x00, 0x00},
- {0xC5, 0x00, 0xC4, 0xC2, 0x59, 0x58, 0x57, 0x56, 0x55, 0x51, 0xD6, 0xE5, 0xE4, 0x00, 0x00, 0xE3, 0x00},
- {0xE2, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
-};
diff --git a/keyboards/lfkeyboards/lfk87/revc/info.json b/keyboards/lfkeyboards/lfk87/revc/info.json
index cf627facdf..cf8c74397f 100644
--- a/keyboards/lfkeyboards/lfk87/revc/info.json
+++ b/keyboards/lfkeyboards/lfk87/revc/info.json
@@ -6,22 +6,6 @@
"rows": ["F2", "D7", "D6", "D5", "D4", "D3", "F3"]
},
"diode_direction": "COL2ROW",
- "rgblight": {
- "hue_steps": 10,
- "led_count": 24,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
"layouts": {
"LAYOUT_tkl_ansi": {
"layout": [
diff --git a/keyboards/lfkeyboards/lfk87/revc/revc.c b/keyboards/lfkeyboards/lfk87/revc/revc.c
deleted file mode 100644
index f14a1f38e5..0000000000
--- a/keyboards/lfkeyboards/lfk87/revc/revc.c
+++ /dev/null
@@ -1,17 +0,0 @@
-#include "quantum.h"
-
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// | | ISSI Col | ISSI Row |
-// / |
-// Device
-const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] = {
- {0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x00, 0x95, 0x94, 0x93},
- {0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0x00, 0xA6, 0xA5, 0xA4},
- {0xA2, 0xA1, 0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5},
- {0x49, 0x48, 0x47, 0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0x00, 0x00, 0x00, 0x00},
- {0x00, 0xC4, 0xC2, 0x59, 0x58, 0x57, 0x56, 0x55, 0x51, 0xD6, 0xE5, 0xE4, 0x00, 0x00, 0xE3, 0x00},
- {0xB3, 0xC5, 0xE2, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- {0x19, 0x92, 0x91, 0xA3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
-};
diff --git a/keyboards/lfkeyboards/lfk87/rules.mk b/keyboards/lfkeyboards/lfk87/rules.mk
index 154e03fe77..3a1399d693 100644
--- a/keyboards/lfkeyboards/lfk87/rules.mk
+++ b/keyboards/lfkeyboards/lfk87/rules.mk
@@ -8,15 +8,7 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
AUDIO_ENABLE = yes # Audio output
-RGBLIGHT_ENABLE = yes # Enable RGB underlight
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
-# Extra source files for IS3731 lighting
-SRC += TWIlib.c issi.c lighting.c
-
DEFAULT_FOLDER = lfkeyboards/lfk78/revc
diff --git a/keyboards/lfkeyboards/lfkpad/info.json b/keyboards/lfkeyboards/lfkpad/info.json
index a3910b0df5..0a41696cdc 100644
--- a/keyboards/lfkeyboards/lfkpad/info.json
+++ b/keyboards/lfkeyboards/lfkpad/info.json
@@ -8,26 +8,6 @@
"pid": "0x3231",
"device_version": "0.0.1"
},
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 28,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"matrix_pins": {
"cols": ["F1", "F0", "D4", "D6"],
"rows": ["D5", "F4", "F6", "F7", "C7", "C6"]
diff --git a/keyboards/lfkeyboards/lfkpad/keymaps/pascalpfeil/keymap.c b/keyboards/lfkeyboards/lfkpad/keymaps/pascalpfeil/keymap.c
index 94f66e78b2..466adfea47 100644
--- a/keyboards/lfkeyboards/lfkpad/keymaps/pascalpfeil/keymap.c
+++ b/keyboards/lfkeyboards/lfkpad/keymaps/pascalpfeil/keymap.c
@@ -56,18 +56,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______
),
};
-
-const uint8_t number_leds[] = {8, 9, 10, 11, 12, 13, 15, 16, 17};
-const uint8_t number_leds_size = ARRAY_SIZE(number_leds);
-
-bool led_update_user(led_t led_state) {
- for (uint8_t i = 0; i < number_leds_size; i++)
- if (led_state.num_lock)
- // set to whatever the other leds are doing
- // this is needed so that upon disabling num lock, the leds don't stay red
- rgblight_sethsv_at(rgblight_get_hue(), rgblight_get_sat(), rgblight_get_val(), numer_leds[i]);
- else
- rgblight_setrgb_at(RGB_RED, numer_leds[i]); // set to red
-
- return true;
-}
diff --git a/keyboards/lfkeyboards/lfkpad/lfkpad.c b/keyboards/lfkeyboards/lfkpad/lfkpad.c
index 7d8dd865fb..8769c2c531 100644
--- a/keyboards/lfkeyboards/lfkpad/lfkpad.c
+++ b/keyboards/lfkeyboards/lfkpad/lfkpad.c
@@ -1,18 +1,9 @@
#include "quantum.h"
-
-#include <avr/timer_avr.h>
#include <avr/wdt.h>
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
void matrix_init_kb(void) {
matrix_init_user();
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
-
#ifdef WATCHDOG_ENABLE
// This is done after turning the layer LED red, if we're caught in a loop
// we should get a flashing red light
@@ -25,48 +16,5 @@ void matrix_scan_kb(void) {
wdt_reset();
#endif
-#ifdef ISSI_ENABLE
- // switch/underglow lighting update
- static uint32_t issi_device = 0;
- static uint32_t twi_last_ready = 0;
-
- if (twi_last_ready > 1000) {
- // It's been way too long since the last ISSI update, reset the I2C bus and start again
- dprintf("TWI failed to recover, TWI re-init\n");
- twi_last_ready = 0;
- TWIInit();
- force_issi_refresh();
- }
-
- if (isTWIReady()) {
- twi_last_ready = 0;
- // If the i2c bus is available, kick off the issi update, alternate between devices
- update_issi(issi_device, issi_device);
-
- if (issi_device) {
- issi_device = 0;
- } else {
- issi_device = 3;
- }
- } else {
- twi_last_ready++;
- }
-#endif
-
matrix_scan_user();
}
-
-// LFK lighting info
-const uint8_t rgb_matrices[] = { 0, 1 };
-const uint8_t rgb_sequence[] = {
- 32, 1, 2, 3,
- 31, 30, 5, 6,
- 28, 27, 7,
- 17, 18, 9, 8,
- 19, 21, 11,
- 22, 14, 12,
- 16, 26,
- 4, 25,
- 13, 24,
- 20
-};
diff --git a/keyboards/lfkeyboards/lfkpad/post_rules.mk b/keyboards/lfkeyboards/lfkpad/post_rules.mk
index 044d9754f1..1b087d7e1e 100644
--- a/keyboards/lfkeyboards/lfkpad/post_rules.mk
+++ b/keyboards/lfkeyboards/lfkpad/post_rules.mk
@@ -1,7 +1,3 @@
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
diff --git a/keyboards/lfkeyboards/lfkpad/rules.mk b/keyboards/lfkeyboards/lfkpad/rules.mk
index ec8efa88bf..996d454d74 100644
--- a/keyboards/lfkeyboards/lfkpad/rules.mk
+++ b/keyboards/lfkeyboards/lfkpad/rules.mk
@@ -7,12 +7,5 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't installed this must be disabled
WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan() isn't run every 250ms
-
-SRC = TWIlib.c issi.c lighting.c
diff --git a/keyboards/lfkeyboards/lighting.c b/keyboards/lfkeyboards/lighting.c
deleted file mode 100644
index 5f3ab46e46..0000000000
--- a/keyboards/lfkeyboards/lighting.c
+++ /dev/null
@@ -1,158 +0,0 @@
-#ifdef ISSI_ENABLE
-
-
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
-#include "quantum.h"
-// #include "lfk87.h"
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
-#include "debug.h"
-#include "rgblight.h"
-
-
-extern rgblight_config_t rgblight_config; // Declared in rgblight.c
-
-#ifdef BACKLIGHT_ENABLE
- const uint8_t backlight_pwm_map[BACKLIGHT_LEVELS] = BACKLIGHT_PWM_MAP;
-#endif
-
-// RGB# to ISSI matrix, this is the same across all revisions
-const uint8_t rgb_leds[][3][2] = {
- {{0, 0}, {0, 0}, {0, 0}},
- {{1, 1}, {2, 3}, {2, 4}}, // RGB1/RGB17
- {{2, 1}, {2, 2}, {3, 4}}, // RGB2/RGB18
- {{3, 1}, {3, 2}, {3, 3}}, // RGB3/RGB19
- {{4, 1}, {4, 2}, {4, 3}}, // RGB4/RGB20
- {{5, 1}, {5, 2}, {5, 3}}, // RGB5/RGB21
- {{6, 1}, {6, 2}, {6, 3}}, // RGB6/RGB22
- {{7, 1}, {7, 2}, {7, 3}}, // RGB6/RGB23
- {{8, 1}, {8, 2}, {8, 3}}, // RGB8/RGB24
- {{1, 9}, {1, 8}, {1, 7}}, // RGB9/RGB25
- {{2, 9}, {2, 8}, {2, 7}}, // RGB10/RGB26
- {{3, 9}, {3, 8}, {3, 7}}, // RGB11/RGB27
- {{4, 9}, {4, 8}, {4, 7}}, // RGB12/RGB28
- {{5, 9}, {5, 8}, {5, 7}}, // RGB13/RGB29
- {{6, 9}, {6, 8}, {6, 7}}, // RGB14/RGB30
- {{7, 9}, {7, 8}, {6, 6}}, // RGB15/RGB31
- {{8, 9}, {7, 7}, {7, 6}} // RGB16/RGB32
- };
-
-void set_rgb(uint8_t rgb_led, uint8_t red, uint8_t green, uint8_t blue){
-#ifdef RGBLIGHT_ENABLE
- uint8_t matrix = rgb_matrices[0];
- if(rgb_led >= 17){
- matrix = rgb_matrices[1];
- rgb_led -= 16;
- }
- if(rgb_leds[rgb_led][0][1] != 0){
- activateLED(matrix, rgb_leds[rgb_led][0][0], rgb_leds[rgb_led][0][1], red);
- }
- if(rgb_leds[rgb_led][1][1] != 0){
- activateLED(matrix, rgb_leds[rgb_led][1][0], rgb_leds[rgb_led][1][1], green);
- }
- if(rgb_leds[rgb_led][2][1] != 0){
- activateLED(matrix, rgb_leds[rgb_led][2][0], rgb_leds[rgb_led][2][1], blue);
- }
-#endif
-}
-
-void backlight_set(uint8_t level){
-#ifdef BACKLIGHT_ENABLE
- uint8_t pwm_value = 0;
- if(level >= BACKLIGHT_LEVELS){
- level = BACKLIGHT_LEVELS;
- }
- if(level > 0){
- pwm_value = backlight_pwm_map[level-1];
- }
- for(int x = 1; x <= 9; x++){
- for(int y = 1; y <= 9; y++){
- activateLED(switch_matrices[0], x, y, pwm_value);
- activateLED(switch_matrices[1], x, y, pwm_value);
- }
- }
-#endif
-}
-
-void set_underglow(uint8_t red, uint8_t green, uint8_t blue){
-#ifdef RGBLIGHT_ENABLE
- for(uint8_t x = 1; x <= 32; x++){
- set_rgb(x, red, green, blue);
- }
-#endif
-}
-
-
-void rgblight_set(void) {
-#ifdef RGBLIGHT_ENABLE
- for(uint8_t i = 0; (i < sizeof(rgb_sequence)) && (i < RGBLED_NUM); i++){
- if(rgblight_config.enable){
- set_rgb(rgb_sequence[i], led[i].r, led[i].g, led[i].b);
- }else{
- set_rgb(rgb_sequence[i], 0, 0, 0);
- }
- }
-#endif
-}
-
-void set_backlight_by_keymap(uint8_t col, uint8_t row){
-#ifdef RGBLIGHT_ENABLE
- uint8_t lookup_value = switch_leds[row][col];
- uint8_t matrix = switch_matrices[0];
- if(lookup_value & 0x80){
- matrix = switch_matrices[1];
- }
- issi_devices[0]->led_dirty = 1;
- uint8_t led_col = (lookup_value & 0x70) >> 4;
- uint8_t led_row = lookup_value & 0x0F;
- activateLED(matrix, led_col, led_row, 255);
-#endif
-}
-
-void force_issi_refresh(void){
-#ifdef ISSI_ENABLE
- issi_devices[0]->led_dirty = true;
- update_issi(0, true);
- issi_devices[3]->led_dirty = true;
- update_issi(3, true);
-#endif
-}
-
-void led_test(void){
-#ifdef ISSI_ENABLE
-#ifdef WATCHDOG_ENABLE
- // This test take a long time to run, disable the WTD until its complete
- wdt_disable();
-#endif
- backlight_set(0);
- set_underglow(0, 0, 0);
- force_issi_refresh();
- set_underglow(0, 0, 0);
- for(uint8_t x = 0; x < sizeof(rgb_sequence); x++){
- set_rgb(rgb_sequence[x], 255, 0, 0);
- force_issi_refresh();
- _delay_ms(250);
- set_rgb(rgb_sequence[x], 0, 255, 0);
- force_issi_refresh();
- _delay_ms(250);
- set_rgb(rgb_sequence[x], 0, 0, 255);
- force_issi_refresh();
- _delay_ms(250);
- set_rgb(rgb_sequence[x], 0, 0, 0);
- force_issi_refresh();
- }
-#ifdef WATCHDOG_ENABLE
- wdt_enable(WDTO_250MS);
-#endif
-#endif
-}
-
-void backlight_init_ports(void){
- issi_init();
-}
-
-#endif
-
diff --git a/keyboards/lfkeyboards/lighting.h b/keyboards/lfkeyboards/lighting.h
deleted file mode 100644
index cb07755c53..0000000000
--- a/keyboards/lfkeyboards/lighting.h
+++ /dev/null
@@ -1,49 +0,0 @@
-#pragma once
-
-// rgb_sequence[RGBLED_NUM]
-//
-// Array used for sequential lighting effects.
-//
-// Example LFK78 RevC+ RGB Map:
-// 27 29 10 9 8 7 6
-// 26 5
-// 25 4
-// 24 3
-// 23 22 21 20 14 15 11 1 2
-//
-// const uint8_t rgb_sequence[] = {
-// 27, 29, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,
-// 11, 15, 14, 20, 21, 22, 23, 24, 25, 26
-// };
-extern const uint8_t rgb_sequence[RGBLED_NUM];
-
-// switch_matrices[]
-//
-// The ISSI matrices for switch backlighting
-//
-// Example LFK78 RevC+ - ISSI Device 0, banks 0 and 1:
-// switch_matrices[] = {0, 1};
-extern const uint8_t switch_matrices[];
-
-// rgb_matrices[]
-// The ISSI matrices for RGB Underglow
-//
-// Example LFK78 RevC+ - ISSI Device 3, banks 0 and 1:
-// rgb_matrices[] = {6, 7};
-extern const uint8_t rgb_matrices[];
-
-// switch_leds[MATRIX_ROWS][MATRIX_COLS]
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// | | ISSI Col | ISSI Row |
-// | |
-// Device
-extern const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS];
-
-void led_test(void);
-void force_issi_refresh(void);
-void set_backlight(uint8_t level);
-void set_underglow(uint8_t red, uint8_t green, uint8_t blue);
-void set_rgb(uint8_t rgb_led, uint8_t red, uint8_t green, uint8_t blue);
-void set_backlight_by_keymap(uint8_t col, uint8_t row);
diff --git a/keyboards/lfkeyboards/mini1800/config.h b/keyboards/lfkeyboards/mini1800/config.h
index 20aba2ad6b..84c2fd11dc 100644
--- a/keyboards/lfkeyboards/mini1800/config.h
+++ b/keyboards/lfkeyboards/mini1800/config.h
@@ -20,8 +20,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define AUDIO_VOICES
#define AUDIO_PIN C6
-#define BACKLIGHT_PWM_MAP {2, 4, 8, 16, 40, 55, 70, 128, 200, 255}
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/lfkeyboards/mini1800/info.json b/keyboards/lfkeyboards/mini1800/info.json
index 6737c1baca..35bb1c15a8 100644
--- a/keyboards/lfkeyboards/mini1800/info.json
+++ b/keyboards/lfkeyboards/mini1800/info.json
@@ -13,30 +13,6 @@
"rows": ["D7", "E1", "F2", "F0", "F1"]
},
"diode_direction": "COL2ROW",
- "backlight": {
- "driver": "custom",
- "levels": 10
- },
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 26,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "F4"
- },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/lfkeyboards/mini1800/keymaps/ca178858/keymap.c b/keyboards/lfkeyboards/mini1800/keymaps/ca178858/keymap.c
index 75abdc258c..9e3927f545 100644
--- a/keyboards/lfkeyboards/mini1800/keymaps/ca178858/keymap.c
+++ b/keyboards/lfkeyboards/mini1800/keymaps/ca178858/keymap.c
@@ -12,16 +12,6 @@ enum {
TD_SPC_SPAM
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0xFF, 0x00}}, // base layers - green
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0xFF}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0xFF, 0x00, 0xFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0xFF, 0xFF, 0xFF}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,-----------------------------------------------------------------------------.
diff --git a/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c b/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c
index 7341bdc053..c2abd12843 100644
--- a/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c
+++ b/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c
@@ -6,16 +6,6 @@ enum keymap_layout {
SETTINGS, // 0x10
};
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0xFF, 0x00}}, // base layers - green
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0xFF}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0xFF, 0x00, 0xFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0xFF, 0xFF, 0xFF}}, // unknown layer - REQUIRED - white
-};
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap VANILLA: (Base Layer) Default Layer
* ,-----------------------------------------------------------------------------.
diff --git a/keyboards/lfkeyboards/mini1800/mini1800.c b/keyboards/lfkeyboards/mini1800/mini1800.c
index e1fa3a988d..2ca87cfdb6 100644
--- a/keyboards/lfkeyboards/mini1800/mini1800.c
+++ b/keyboards/lfkeyboards/mini1800/mini1800.c
@@ -1,47 +1,22 @@
-
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
#include "mini1800.h"
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
-#include "debug.h"
-
-#include "quantum.h"
+#include <avr/wdt.h>
uint16_t click_hz = CLICK_HZ;
uint16_t click_time = CLICK_MS;
uint8_t click_toggle = CLICK_ENABLED;
float my_song[][2] = SONG(ZELDA_PUZZLE);
-// Colors of the layer indicator LED
-// This list needs to define layer 0xFFFFFFFF, it is the end of the list, and the unknown layer
-__attribute__((weak))
-const Layer_Info layer_info[] = {
- // Layer Mask Red Green Blue
- {0x00000000, 0xFFFFFFFF, {0x00, 0xFF, 0x00}}, // base layers - green
- {0x00000002, 0xFFFFFFFE, {0x00, 0x00, 0xFF}}, // function layer - blue
- {0x00000004, 0xFFFFFFFC, {0xFF, 0x00, 0xFF}}, // settings layer - magenta
- {0xFFFFFFFF, 0xFFFFFFFF, {0xFF, 0xFF, 0xFF}}, // unknown layer - REQUIRED - white
-};
-
void matrix_init_kb(void)
{
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
- set_rgb(31, 0x00, 0x00, 0x00); // Caps lock
- set_rgb(32, 0xFF, 0x00, 0x00); // Layer indicator, start red
#ifndef AUDIO_ENABLE
// If we're not using the audio pin, drive it low
setPinOutput(C6);
writePinLow(C6);
#endif
_delay_ms(500);
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
#ifdef WATCHDOG_ENABLE
// This is done after turning the layer LED red, if we're caught in a loop
// we should get a flashing red light
@@ -54,45 +29,6 @@ void matrix_scan_kb(void)
#ifdef WATCHDOG_ENABLE
wdt_reset();
#endif
-#ifdef ISSI_ENABLE
- // switch/underglow lighting update
- static uint32_t issi_device = 0;
- static uint32_t twi_last_ready = 0;
- if(twi_last_ready > 1000){
- // Its been way too long since the last ISSI update, reset the I2C bus and start again
- twi_last_ready = 0;
- TWIInit();
- force_issi_refresh();
- }
- if(isTWIReady()){
- twi_last_ready = 0;
- // If the i2c bus is available, kick off the issi update, alternate between devices
- update_issi(issi_device, issi_device);
- if(issi_device){
- issi_device = 0;
- }else{
- issi_device = 3;
- }
- }else{
- twi_last_ready++;
- }
-#endif
- // Update layer indicator LED
- //
- // Not sure how else to reliably do this... TMK has the 'hook_layer_change'
- // but can't find QMK equiv
- static uint32_t layer_indicator = -1;
- if(layer_indicator != layer_state){
- for(uint32_t i=0;; i++){
- // the layer_info list should end with layer 0xFFFF
- // it will break this out of the loop and define the unknown layer color
- if((layer_info[i].layer == (layer_state & layer_info[i].mask)) || (layer_info[i].layer == 0xFFFFFFFF)){
- set_rgb(32, layer_info[i].color.red, layer_info[i].color.green, layer_info[i].color.blue);
- layer_indicator = layer_state;
- break;
- }
- }
- }
matrix_scan_user();
}
@@ -115,7 +51,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
}
if (keycode == QK_BOOT) {
reset_keyboard_kb();
- } else {
}
return process_record_user(keycode, record);
}
@@ -126,49 +61,5 @@ void reset_keyboard_kb(void){
wdt_disable();
wdt_reset();
#endif
- set_rgb(31, 0x00, 0xFF, 0xFF);
- set_rgb(32, 0x00, 0xFF, 0xFF);
- force_issi_refresh();
reset_keyboard();
}
-
-bool led_update_kb(led_t led_state) {
- bool res = led_update_user(led_state);
- if(res) {
- // Set capslock LED to Blue
- if (led_state.caps_lock) {
- set_rgb(31, 0x00, 0x00, 0x7F);
- } else{
- set_rgb(31, 0x00, 0x00, 0x00);
- }
- }
- return res;
-}
-
-// Lighting info, see lighting.h for details
-const uint8_t switch_matrices[] = {0, 1};
-const uint8_t rgb_matrices[] = {6, 7};
-
-// RGB Map:
-// 27 29 10 9 8 7 6
-// 26 5
-// 25 4
-// 24 3
-// 23 22 21 20 14 15 11 1 2
-const uint8_t rgb_sequence[] = {
- 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 1, 2, 3, 4, 5, 6, 7, 8, 13, 14, 15, 16
-};
-
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// | | ISSI Col | ISSI Row |
-// / |
-// Device
-const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] = {
- {0x19, 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x00, 0x95, 0x94, 0x93, 0x92, 0x91},
- {0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xB6, 0xA4, 0xA3, 0xA2, 0xA1},
- {0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0x00, 0x00, 0x00, 0xB5, 0xB3, 0x49, 0x48},
- {0x47, 0x00, 0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0xC5, 0xC4, 0x00, 0xC2, 0x59, 0x58, 0x57, 0x56},
- {0x55, 0x51, 0xD6, 0x00, 0x00, 0xE5, 0x00, 0x00, 0x00, 0x00, 0xE4, 0xE3, 0xE2, 0x00, 0xE1, 0x00, 0x00, 0x00, 0x00}
-};
diff --git a/keyboards/lfkeyboards/mini1800/mini1800.h b/keyboards/lfkeyboards/mini1800/mini1800.h
index c412058096..36797efd8f 100644
--- a/keyboards/lfkeyboards/mini1800/mini1800.h
+++ b/keyboards/lfkeyboards/mini1800/mini1800.h
@@ -1,22 +1,6 @@
#pragma once
-#include "matrix.h"
-#include <avr/sfr_defs.h>
-
-typedef struct RGB_Color {
- uint16_t red;
- uint16_t green;
- uint16_t blue;
-} RGB_Color;
-
-typedef struct Layer_Info {
- uint32_t layer;
- uint32_t mask;
- RGB_Color color;
-} Layer_Info;
-
-extern const uint32_t layer_count;
-extern const Layer_Info layer_info[];
+#include "quantum.h"
#define CLICK_HZ 500
#define CLICK_MS 2
diff --git a/keyboards/lfkeyboards/mini1800/reva/post_rules.mk b/keyboards/lfkeyboards/mini1800/reva/post_rules.mk
index 044d9754f1..1b087d7e1e 100644
--- a/keyboards/lfkeyboards/mini1800/reva/post_rules.mk
+++ b/keyboards/lfkeyboards/mini1800/reva/post_rules.mk
@@ -1,7 +1,3 @@
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
diff --git a/keyboards/lfkeyboards/mini1800/reva/rules.mk b/keyboards/lfkeyboards/mini1800/reva/rules.mk
index 473bcb10ae..fa0a6ab5b7 100644
--- a/keyboards/lfkeyboards/mini1800/reva/rules.mk
+++ b/keyboards/lfkeyboards/mini1800/reva/rules.mk
@@ -7,13 +7,5 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = yes # Audio output
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = yes # Resets keyboard if matrix_scan isn't run every 250ms
-
-# Extra source files for IS3731 lighting
-SRC = TWIlib.c issi.c lighting.c
diff --git a/keyboards/lfkeyboards/mini1800/revc/post_rules.mk b/keyboards/lfkeyboards/mini1800/revc/post_rules.mk
index 044d9754f1..1b087d7e1e 100644
--- a/keyboards/lfkeyboards/mini1800/revc/post_rules.mk
+++ b/keyboards/lfkeyboards/mini1800/revc/post_rules.mk
@@ -1,7 +1,3 @@
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
diff --git a/keyboards/lfkeyboards/mini1800/revc/rules.mk b/keyboards/lfkeyboards/mini1800/revc/rules.mk
index 473bcb10ae..fa0a6ab5b7 100644
--- a/keyboards/lfkeyboards/mini1800/revc/rules.mk
+++ b/keyboards/lfkeyboards/mini1800/revc/rules.mk
@@ -7,13 +7,5 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = yes # Audio output
-SLEEP_LED_ENABLE = yes
-
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
WATCHDOG_ENABLE = yes # Resets keyboard if matrix_scan isn't run every 250ms
-
-# Extra source files for IS3731 lighting
-SRC = TWIlib.c issi.c lighting.c
diff --git a/keyboards/lfkeyboards/smk65/keymaps/default/rules.mk b/keyboards/lfkeyboards/smk65/keymaps/default/rules.mk
deleted file mode 100644
index 1f0147bd38..0000000000
--- a/keyboards/lfkeyboards/smk65/keymaps/default/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-
-ISSI_ENABLE = no # If the I2C pullup resistors aren't install this must be disabled
-WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/lfkeyboards/smk65/keymaps/iso/rules.mk b/keyboards/lfkeyboards/smk65/keymaps/iso/rules.mk
deleted file mode 100644
index 1f0147bd38..0000000000
--- a/keyboards/lfkeyboards/smk65/keymaps/iso/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-
-ISSI_ENABLE = no # If the I2C pullup resistors aren't install this must be disabled
-WATCHDOG_ENABLE = no # Resets keyboard if matrix_scan isn't run every 250ms
diff --git a/keyboards/lfkeyboards/smk65/post_rules.mk b/keyboards/lfkeyboards/smk65/post_rules.mk
index 044d9754f1..1b087d7e1e 100644
--- a/keyboards/lfkeyboards/smk65/post_rules.mk
+++ b/keyboards/lfkeyboards/smk65/post_rules.mk
@@ -1,7 +1,3 @@
-ifeq ($(strip $(ISSI_ENABLE)), yes)
- OPT_DEFS += -DISSI_ENABLE
-endif
-
ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
OPT_DEFS += -DWATCHDOG_ENABLE
endif
diff --git a/keyboards/lfkeyboards/smk65/revb/config.h b/keyboards/lfkeyboards/smk65/revb/config.h
index c758caa92c..38b0529178 100644
--- a/keyboards/lfkeyboards/smk65/revb/config.h
+++ b/keyboards/lfkeyboards/smk65/revb/config.h
@@ -30,8 +30,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define AUDIO_VOICES
#define AUDIO_PIN C6
-#define BACKLIGHT_PWM_MAP {8, 16, 40, 55, 70, 128, 200, 255}
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/lfkeyboards/smk65/revb/info.json b/keyboards/lfkeyboards/smk65/revb/info.json
index 39df87cc23..148465d27d 100644
--- a/keyboards/lfkeyboards/smk65/revb/info.json
+++ b/keyboards/lfkeyboards/smk65/revb/info.json
@@ -2,29 +2,6 @@
"usb": {
"pid": "0x565B"
},
- "backlight": {
- "levels": 8
- },
- "rgblight": {
- "driver": "custom",
- "hue_steps": 10,
- "led_count": 20,
- "animations": {
- "breathing": true,
- "rainbow_mood": true,
- "rainbow_swirl": true,
- "snake": true,
- "knight": true,
- "christmas": true,
- "static_gradient": true,
- "rgb_test": true,
- "alternating": true,
- "twinkle": true
- }
- },
- "ws2812": {
- "pin": "C7"
- },
"processor": "at90usb646",
"bootloader": "atmel-dfu",
"layout_aliases": {
diff --git a/keyboards/lfkeyboards/smk65/revb/revb.c b/keyboards/lfkeyboards/smk65/revb/revb.c
index 32dbce8fd5..8eb9b9afe2 100644
--- a/keyboards/lfkeyboards/smk65/revb/revb.c
+++ b/keyboards/lfkeyboards/smk65/revb/revb.c
@@ -12,14 +12,8 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
#include "revb.h"
-#include "debug.h"
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
+#include <avr/wdt.h>
uint16_t click_hz = CLICK_HZ;
uint16_t click_time = CLICK_MS;
@@ -40,10 +34,6 @@ void matrix_init_kb(void)
setPinOutput(C6);
writePinLow(C6);
#endif
-
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
}
void matrix_scan_kb(void)
@@ -75,7 +65,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record)
}
if (keycode == QK_BOOT) {
reset_keyboard_kb();
- } else {
}
return process_record_user(keycode, record);
}
@@ -88,27 +77,3 @@ void reset_keyboard_kb(void){
#endif
reset_keyboard();
}
-
-// LFK lighting info
-const uint8_t switch_matrices[] = {0, 1};
-const uint8_t rgb_matrices[] = {6, 7};
-// const uint8_t rgb_sequence[] = {
-// 14, 24, 23, 22, 21, 20, 19, 18, 26, 25, 28, 29,
-// 30, 31, 32, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
-// };
-const uint8_t rgb_sequence[] = {
- 25, 28, 29,
- 30, 31, 32, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
-};
-// Maps switch LEDs from Row/Col to ISSI matrix.
-// Value breakdown:
-// Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
-// / \ ISSI Col | ISSI Row |
-// matrix idx
-// const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] =
-// KEYMAP(
-// 0x19, 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x95, 0x94, 0x93, 0x92, 0x91,
-// 0x29, 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xA4, 0xA3, 0xA2, 0xA1,
-// 0x39, 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5, 0xB3,
-// 0x49, 0x48, 0x47, 0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0xC5, 0xC4, 0xC2,
-// 0x59, 0x58, 0x57, 0x56, 0x55, 0x51, 0xD6, 0xE5, 0xE4, 0xE3, 0xE2, 0xE1);
diff --git a/keyboards/lfkeyboards/smk65/revb/revb.h b/keyboards/lfkeyboards/smk65/revb/revb.h
index 6b63eb7944..61973b0b9d 100644
--- a/keyboards/lfkeyboards/smk65/revb/revb.h
+++ b/keyboards/lfkeyboards/smk65/revb/revb.h
@@ -15,23 +15,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#include "quantum.h"
-#include "matrix.h"
-#include <avr/sfr_defs.h>
-
-typedef struct RGB_Color {
- uint16_t red;
- uint16_t green;
- uint16_t blue;
-} RGB_Color;
-
-typedef struct Layer_Info {
- uint32_t layer;
- uint32_t mask;
- RGB_Color color;
-} Layer_Info;
-
-extern const uint32_t layer_count;
-extern const Layer_Info layer_info[];
#define CLICK_HZ 500
#define CLICK_MS 2
diff --git a/keyboards/lfkeyboards/smk65/revb/rules.mk b/keyboards/lfkeyboards/smk65/revb/rules.mk
index 1bd6ebc6a6..e69de29bb2 100644
--- a/keyboards/lfkeyboards/smk65/revb/rules.mk
+++ b/keyboards/lfkeyboards/smk65/revb/rules.mk
@@ -1,9 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-# Extra source files for IS3731 lighting
-SRC += TWIlib.c issi.c lighting.c
diff --git a/keyboards/lfkeyboards/smk65/revf/info.json b/keyboards/lfkeyboards/smk65/revf/info.json
index 50c039b76c..63e9d0abc7 100644
--- a/keyboards/lfkeyboards/smk65/revf/info.json
+++ b/keyboards/lfkeyboards/smk65/revf/info.json
@@ -4,10 +4,6 @@
},
"processor": "atmega32u4",
"bootloader": "halfkay",
- "rgblight": {
- "driver": "custom",
- "led_count": 28
- },
"layouts": {
"LAYOUT_65_ansi": {
"layout": [
diff --git a/keyboards/lfkeyboards/smk65/revf/rules.mk b/keyboards/lfkeyboards/smk65/revf/rules.mk
index e372473a50..e69de29bb2 100644
--- a/keyboards/lfkeyboards/smk65/revf/rules.mk
+++ b/keyboards/lfkeyboards/smk65/revf/rules.mk
@@ -1,4 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-RGBLIGHT_ENABLE = no # TODO: Enable keyboard RGB underglow
diff --git a/keyboards/lily58/keymaps/bcat/config.h b/keyboards/lily58/keymaps/bcat/config.h
deleted file mode 100644
index 2ee0071bda..0000000000
--- a/keyboards/lily58/keymaps/bcat/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define BCAT_ORTHO_LAYERS
-
-#define EE_HANDS
diff --git a/keyboards/lily58/keymaps/bcat/keymap.c b/keyboards/lily58/keymaps/bcat/keymap.c
deleted file mode 100644
index 09b6a3969b..0000000000
--- a/keyboards/lily58/keymaps/bcat/keymap.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Copyright 2020 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "bcat.h"
-
-#if defined(OLED_ENABLE)
-# include "bcat_oled.h"
-#endif
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- /* Default layer: http://www.keyboard-layout-editor.com/#/gists/e0eb3af65961e9fd612dcff3ddd88e4f */
- [LAYER_DEFAULT] = LAYOUT(
- KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_WBAK, KC_WFWD, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LALT, KC_LCTL, LY_LWR, KC_SPC, KC_ENT, LY_RSE, KC_RALT, KC_RGUI
- ),
- /* Lower layer: http://www.keyboard-layout-editor.com/#/gists/19ad0d3b5d745fbb2818db09740f5a11 */
- [LAYER_LOWER] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- MC_ALTT, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KY_CSPC, KY_ZMRST, KY_ZMOUT, KY_ZMIN, KC_WBAK, KC_WFWD, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_TILD,
- _______, KC_APP, KC_PSCR, KC_SCRL, KC_PAUS, KC_LGUI, _______, _______, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_GRV,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /* Raise layer: http://www.keyboard-layout-editor.com/#/gists/912be7955f781cdaf692cc4d4c0b5823 */
- [LAYER_RAISE] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_CAPS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_F11, KC_DEL,
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_F12, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/8f6a3f08350a9bbe1d414b22bca4e6c7 */
- [LAYER_ADJUST] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______,
- _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
- // clang-format on
-};
-
-#if defined(OLED_ENABLE)
-oled_rotation_t oled_init_user(oled_rotation_t rotation) { return is_keyboard_master() ? OLED_ROTATION_270 : OLED_ROTATION_180; }
-
-void oled_task_keymap(const oled_keyboard_state_t *keyboard_state) {
- render_oled_layers();
- oled_advance_page(/*clearPageRemainder=*/false);
- render_oled_indicators(keyboard_state->leds);
- oled_advance_page(/*clearPageRemainder=*/false);
- oled_advance_page(/*clearPageRemainder=*/false);
- render_oled_wpm(keyboard_state->wpm);
- render_oled_pet(/*col=*/0, /*line=*/12, keyboard_state);
-}
-#endif
diff --git a/keyboards/lily58/keymaps/bcat/readme.md b/keyboards/lily58/keymaps/bcat/readme.md
deleted file mode 100644
index 8b0e77e1b7..0000000000
--- a/keyboards/lily58/keymaps/bcat/readme.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# bcat's Lily58 layout
-
-This split ergo layout follows my preferred [split 3x6 + 3 thumb
-keys](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/split_3x6_3/bcat)
-(Crkbd) layout with a few changes:
-
-* There's an optional number row at the top of the keyboard. I am quite used to
-using layers for numbers and symbols, so in practice this goes unused.
-
-* The dedicated Hyphen/Underscore and Equals/Plus keys on the number row are
-placed in the same positions as on the ErgoDox EZ. (There's no real reason for
-this; I just had to do _something_ with those keys.)
-
-* The extra thumb keys on the bottom row are used for a Left Alt key (for easier
-Alt+Tab, Alt+F4, etc.) and a dedicated Super key.
-
-* The harder-to-reach thumb keys below the controllers are bound to browser
-back/forward navigation keys.
-
-## Default layer
-
-![Default layer layout](https://i.imgur.com/0stG2GT.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/e0eb3af65961e9fd612dcff3ddd88e4f))
-
-## Lower layer
-
-![Lower layer layout](https://i.imgur.com/sNKWpUC.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/19ad0d3b5d745fbb2818db09740f5a11))
-
-## Raise layer
-
-![Raise layer layout](https://i.imgur.com/NaWTavA.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/912be7955f781cdaf692cc4d4c0b5823))
-
-## Adjust layer
-
-![Adjust layer layout](https://i.imgur.com/XC2eR2M.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/8f6a3f08350a9bbe1d414b22bca4e6c7))
diff --git a/keyboards/lily58/keymaps/bcat/rules.mk b/keyboards/lily58/keymaps/bcat/rules.mk
deleted file mode 100644
index 62d1007a54..0000000000
--- a/keyboards/lily58/keymaps/bcat/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-BCAT_OLED_PET = luna
-
-BOOTLOADER = atmel-dfu # Elite-C
diff --git a/keyboards/lily58/keymaps/curry/config.h b/keyboards/lily58/keymaps/curry/config.h
deleted file mode 100644
index f724d23167..0000000000
--- a/keyboards/lily58/keymaps/curry/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-#pragma once
-
-#define EE_HANDS
-
-#define OLED_DISABLE_TIMEOUT
-#define TAPPING_TERM_PER_KEY
-
-#if defined(RGBLIGHT_ENABLE)
-# undef RGBLED_NUM
-# define RGBLED_NUM 27
-
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 5
-# define RGBLIGHT_LIMIT_VAL 120
-#endif
-
-// comment out unnecessary layouts
-#define ENABLE_QWERTY
-#define ENABLE_COLEMAK
-#define ENABLE_DVORAK
diff --git a/keyboards/lily58/keymaps/curry/keymap.c b/keyboards/lily58/keymaps/curry/keymap.c
deleted file mode 100644
index 0456a6b99a..0000000000
--- a/keyboards/lily58/keymaps/curry/keymap.c
+++ /dev/null
@@ -1,77 +0,0 @@
-#include "curry.h"
-
-#define LAYOUT_lily58_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
- K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A \
- ) \
- LAYOUT_wrapper( \
- KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_GRV, \
- KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_BSLS, \
- KC_LCTL, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_QUOT, \
- OS_LSFT, K31, K32, K33, K34, K35, KC_LBRC, KC_RBRC, K36, K37, K38, K39, K3A, OS_RSFT, \
- QK_LEAD, OS_LALT, LOWER, KC_SPC, KC_ENT, RAISE, KC_BSPC, OS_RGUI \
- )
-#define LAYOUT_lily58_base_wrapper(...) LAYOUT_lily58_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-#if defined(ENABLE_QWERTY)
- [_QWERTY] = LAYOUT_lily58_base_wrapper(
- ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-#endif
-
-#if defined(ENABLE_COLEMAK)
- [_COLEMAK] = LAYOUT_lily58_base_wrapper(
- ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-#endif
-
-#if defined(ENABLE_DVORAK)
- [_DVORAK] = LAYOUT_lily58_base_wrapper(
- ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-#endif
-
- [_MODS] = LAYOUT_wrapper(
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- KC_LSFT, ___________________BLANK___________________, _______, _______, ___________________BLANK___________________, KC_RSFT,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- KC_F11, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F12,
- _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, _______,
- _______, _________________LOWER_L3__________________, _______, _______, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- _______, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, _______,
- _______, _________________RAISE_L3__________________, _______, _______, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
- KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RST,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- MG_NKRO, _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________, RGB_IDL,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
diff --git a/keyboards/lily58/keymaps/curry/rules.mk b/keyboards/lily58/keymaps/curry/rules.mk
deleted file mode 100644
index 1ff1fad968..0000000000
--- a/keyboards/lily58/keymaps/curry/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = no
-
-OLED_ENABLE = yes
-
-BOOTLOADER = atmel-dfu
-SPLIT_TRANSPORT = mirror
diff --git a/keyboards/lily58/keymaps/hvp/config.h b/keyboards/lily58/keymaps/hvp/config.h
deleted file mode 100644
index 35c0f25f2c..0000000000
--- a/keyboards/lily58/keymaps/hvp/config.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define TAPPING_TERM 100
-#undef TAPPING_TERM
-#define TAPPING_TERM 150
-
-#define PERMISSIVE_HOLD
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 27
-#define RGBLIGHT_LIMIT_VAL 120
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 17
-#define RGBLIGHT_VAL_STEP 17
-
-// Underglow
-/*
-#undef RGBLED_NUM
-#define RGBLED_NUM 14 // Number of LEDs
-#define RGBLIGHT_SLEEP
-*/
diff --git a/keyboards/lily58/keymaps/hvp/keymap.c b/keyboards/lily58/keymaps/hvp/keymap.c
deleted file mode 100644
index b94ea9397c..0000000000
--- a/keyboards/lily58/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,124 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-#ifdef PROTOCOL_LUFA
- #include "lufa.h"
- #include "split_util.h"
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-//Following line allows macro to read current RGB settings
-extern rgblight_config_t rgblight_config;
-#endif
-
-extern uint8_t is_master;
-
-#define _QWERTY 0
-#define _LOWER 1
-#define _RAISE 2
-#define _ADJUST 3
-#define _NAVI 4
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- LOWER,
- RAISE,
- NAVI,
- ADJUST
-};
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT(
- LT(3,KC_ESC), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- LT(_NAVI,KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS,
- KC_LSFT, KC_A, KC_S, KC_D, LT(4,KC_F), LT(3,KC_G), KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2),
- KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, MT(MOD_LSFT,KC_BSPC), MT(MOD_LSFT,KC_ENTER), KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), MT(MOD_RSFT,KC_ENT),
- KC_LALT, KC_LGUI, LOWER,LT(1,KC_SPC), LT(2,KC_SPC), RAISE, KC_RALT, KC_RGUI
-),
-[_RAISE] = LAYOUT( /* Right */
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, _______, _______, _______, _______, _______, MT(MOD_LCTL,KC_LBRC), MT(MOD_LALT,KC_RBRC), _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_LOWER] = LAYOUT( /* Left */
- _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______,
- KC_TILD,KC_EXLM,KC_AT,KC_HASH,KC_DLR,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_BSPC,
- KC_DEL, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
- _______, _______, _______, _______, _______, _______, MT(MOD_LCTL,KC_LCBR), MT(MOD_LALT,KC_RCBR), _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_TILD,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-
- [_NAVI] = LAYOUT( /* Tab */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, D_NAVI, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, KC_VOLD, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_VOLU, _______
- ),
-
- [_ADJUST] = LAYOUT( /* Esc */
- _______, RGB_TOG, RGB_MOD, RGB_RMOD, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______,
- _______, RGB_M_P, RGB_HUD, RGB_HUI, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______,
- KC_PSCR, _______, RGB_SAD, RGB_SAI, _______, _______, KC_0, KC_1, KC_2, KC_3, _______, _______,
- QK_BOOT, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_VOLD, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_VOLU, _______
- )
-};
-
-int RGB_current_mode;
-
-// Setting ADJUST layer RGB back to default
-void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
-
-}
-
-void matrix_init_user(void) {
- #ifdef RGBLIGHT_ENABLE
- RGB_current_mode = rgblight_config.mode;
- #endif
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case ADJUST:
- if (record->event.pressed) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- return false;
- break;
- }
- return true;
-} \ No newline at end of file
diff --git a/keyboards/lily58/keymaps/hvp/readme.md b/keyboards/lily58/keymaps/hvp/readme.md
deleted file mode 100644
index 971bd2800e..0000000000
--- a/keyboards/lily58/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: Lily58
-Keys: Lily58 is 6×4+5keys column-staggered split keyboard.
-Layout: Swedish characters on main layer using tap dance. Built for Eurkey keyboard layout.
-Flash instructions: Flash using dfu, will req the hvp user space to compile.
-
-> make lily58:hvp:dfu
-
-Links:
-Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/lily58/keymaps/hvp/rules.mk b/keyboards/lily58/keymaps/hvp/rules.mk
deleted file mode 100644
index b1ee4e8318..0000000000
--- a/keyboards/lily58/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-EXTRAKEY_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-
-# If you want to change the display of OLED, you need to change here
-SRC += ./lib/glcdfont.c \
- ./lib/rgb_state_reader.c \
- ./lib/layer_state_reader.c \
- ./lib/logo_reader.c \
- ./lib/keylogger.c \
- # ./lib/mode_icon_reader.c \
- # ./lib/host_led_state_reader.c \
- # ./lib/timelogger.c \ \ No newline at end of file
diff --git a/keyboards/lily58/keymaps/manna-harbour_miryoku/config.h b/keyboards/lily58/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index b4249396da..0000000000
--- a/keyboards/lily58/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
- XXX, K32, K33, K34, K35, K36, K37, XXX\
-)
diff --git a/keyboards/lily58/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/lily58/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/lily58/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/lily58/keymaps/muppetjones/README.md b/keyboards/lily58/keymaps/muppetjones/README.md
deleted file mode 100644
index 38cea9cfc2..0000000000
--- a/keyboards/lily58/keymaps/muppetjones/README.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# Lily58
-
-```shell
-qmk compile -kb lily58/rev1 -km muppetjones
-```
-
-```
-qmk flash -kb lily58/rev1 -km muppetjones -bl avrdude-split-left
-```
-
-```
-qmk flash -kb lily58/rev1 -km muppetjones -bl avrdude-split-right
-```
diff --git a/keyboards/lily58/keymaps/muppetjones/config.h b/keyboards/lily58/keymaps/muppetjones/config.h
deleted file mode 100644
index 81bc728d5a..0000000000
--- a/keyboards/lily58/keymaps/muppetjones/config.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-// 1 minute
-#ifdef OLED_ENABLE
-# define OLED_TIMEOUT 60000
-#endif
-
-
-// Change "hold" time (default is 200 ms)
-#define TAPPING_TERM 200
-
-// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define QUICK_TAP_TERM 0
-
-#undef RGBLED_NUM
-
-// Allows to use either side as the master. Look at the documentation for info:
-// https://docs.qmk.fm/#/config_options?id=setting-handedness
-#define EE_HANDS
diff --git a/keyboards/lily58/keymaps/muppetjones/features/bongo_cat.c b/keyboards/lily58/keymaps/muppetjones/features/bongo_cat.c
deleted file mode 100644
index 23f6493efc..0000000000
--- a/keyboards/lily58/keymaps/muppetjones/features/bongo_cat.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/**
- * BONGO CAT!
-
-WPM-responsive animation of bongo cat!
-
-Source:
- https://github.com/qmk/qmk_firmware/blob/master/keyboards/kyria/keymaps/j-inc/keymap.c
-*/
-
-#include QMK_KEYBOARD_H
-
-#ifdef OLED_ENABLE
-
-# define IDLE_FRAMES 5
-# define IDLE_SPEED 30 // below this wpm value your animation will idle
-
-// #define PREP_FRAMES 1 // uncomment if >1
-
-# define TAP_FRAMES 2
-# define TAP_SPEED 40 // above this wpm value typing animation to triggere
-
-# define ANIM_FRAME_DURATION 200 // how long each frame lasts in ms
-// #define SLEEP_TIMER 60000 // should sleep after this period of 0 wpm, needs fixing
-# define ANIM_SIZE 636 // number of bytes in array, minimize for adequate firmware size, max is 1024
-
-uint32_t anim_timer = 0;
-uint32_t anim_sleep = 0;
-uint8_t current_idle_frame = 0;
-// uint8_t current_prep_frame = 0; // uncomment if PREP_FRAMES >1
-uint8_t current_tap_frame = 0;
-
-/* Animation */
-
-static const char PROGMEM ANIM_IDLE[IDLE_FRAMES][ANIM_SIZE] = {
- // clang-format off
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,16,8,8,4,4,4,8,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,100,130,2,2,2,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64,
- 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,56,4,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,7,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- },
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,16,8,8,4,4,4,8,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,100,130,2,2,2,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64,
- 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,56,4,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,
- 7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- },
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,64,64,64,64,32,32,32,32,16,8,4,2,2,4,24,96,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,194,1,1,2,2,4,4,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,96,0,129,130,130,132,8,16,32,64,128,0,0,0,0,128,128,128,128,64,64,64,64,32,
- 32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,25,6,0,0,0,0,0,0,0,24,24,24,27,3,0,64,160,34,36,20,18,18,18,11,8,8,8,8,5,5,9,9,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,7,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- },
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64,
- 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,
- 7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- },
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,8,4,2,2,2,4,56,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,226,1,1,2,2,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64,64,64,
- 32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,7,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- }
- // clang-format on
-};
-
-// Prep animation
-static const char PROGMEM ANIM_PREP[][ANIM_SIZE] = {
- // clang-format off
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,129,128,128,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,0,1,225,26,6,9,49,53,1,138,124,0,0,128,128,128,128,64,64,
- 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,24,6,5,152,153,132,195,124,65,65,64,64,32,33,34,18,17,17,17,9,8,8,8,8,4,4,4,4,4,4,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- }
- // clang-format on
-};
-
-// Typing animation
-static const char PROGMEM ANIM_TAP[TAP_FRAMES][ANIM_SIZE] = {
- // clang-format off
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,248,248,248,248,0,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,129,128,128,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,0,1,1,2,4,8,16,32,67,135,7,1,0,184,188,190,159,
- 95,95,79,76,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,24,6,5,152,153,132,67,124,65,65,64,64,32,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,61,124,252,252,252,252,252,60,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,
- 1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- },
- {
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,0,1,225,26,6,9,49,53,1,138,124,0,0,128,128,128,128,64,64,64,64,32,
- 32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,0,0,0,0,0,0,0,0,1,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,4,4,4,4,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,122,122,121,121,121,121,57,49,2,2,4,4,8,8,8,136,136,135,128,
- 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- }
- // clang-format on
-};
-
-/* Functions */
-
-
-void animation_phase(uint8_t wpm) {
- // NOTE: Optimized the conditional. We don't need to recheck each.
- // NOTE: Move this and the animation outside of the function.
-
- if (IDLE_SPEED >= wpm) {
- current_idle_frame = (current_idle_frame + 1) % IDLE_FRAMES;
- oled_write_raw_P(ANIM_IDLE[abs((IDLE_FRAMES - 1) - current_idle_frame)], ANIM_SIZE);
- } else if (TAP_SPEED > wpm) {
- oled_write_raw_P(ANIM_PREP[0], ANIM_SIZE);
- } else {
- current_tap_frame = (current_tap_frame + 1) % TAP_FRAMES;
- oled_write_raw_P(ANIM_TAP[abs((TAP_FRAMES - 1) - current_tap_frame)], ANIM_SIZE);
- }
-}
-
-// Images credit j-inc(/James Incandenza) and pixelbenny. Credit to obosob for initial animation approach.
-void render_bongo_cat(void) {
- const uint8_t curr_wpm = get_current_wpm();
-
- if (curr_wpm > 000) {
- oled_on();
- anim_sleep = timer_read32();
- } else if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) {
- oled_off();
- return;
- }
-
- if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) {
- anim_timer = timer_read32();
- animation_phase(curr_wpm);
- }
-}
-
-#endif
diff --git a/keyboards/lily58/keymaps/muppetjones/features/bongo_cat.h b/keyboards/lily58/keymaps/muppetjones/features/bongo_cat.h
deleted file mode 100644
index 1025ccfa1b..0000000000
--- a/keyboards/lily58/keymaps/muppetjones/features/bongo_cat.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * BONGO CAT!
-
-WPM-responsive animation of bongo cat!
-
-Source:
- https://github.com/qmk/qmk_firmware/blob/master/keyboards/kyria/keymaps/j-inc/keymap.c
-*/
-
-#pragma once
-
-const char *wpm_state(void);
-void animation_phase(uint8_t wpm);
-void render_bongo_cat(void);
diff --git a/keyboards/lily58/keymaps/muppetjones/keymap.c b/keyboards/lily58/keymaps/muppetjones/keymap.c
deleted file mode 100644
index 1eea90fce1..0000000000
--- a/keyboards/lily58/keymaps/muppetjones/keymap.c
+++ /dev/null
@@ -1,240 +0,0 @@
-/* Copyright 2020 Stephen J. Bush
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "muppetjones.h"
-#include "features/bongo_cat.h"
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-/*
- * qmk compile -kb lily58/rev1 -km muppetjones
- */
-
-// GACS (Lower)
-#define HR_LBRC LCTL_T(KC_LBRC)
-#define HR_RBRC LSFT_T(KC_RBRC)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
-
-/* Colemak DH
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BADJ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | F | P | B | | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Esc | A | R | S | T | G |-------. ,-------| M | N | E | I | O | ' |
- * |------+------+------+------+------+------| Raise | | Lower |------+------+------+------+------+------|
- * |LShift| Z | X | C | D | V |-------| |-------| K | H | , | . | / |Enter |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | LGUI |LOWER | /Space / \Space \ |RAISE | Ctrl | RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_CLMK_DH] = LAYOUT_wrapper(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_CAPS, __BLANK____________________________________, KC_BSPC,
- KC_CAPS, __COLEMAK_MOD_DH_L1________________________, __COLEMAK_MOD_DH_R1_W_QUOT_________________, KC_BSPC,
- HY_ESC, __COLEMAK_MOD_DH_L2_W_GACS_________________, __COLEMAK_MOD_DH_R2_W_SCAG_________________, KC_QUOT,
- TD_LAYR, __COLEMAK_MOD_DH_L3_W_SFTV_________________, KC_CAPS, KC_TAB, __COLEMAK_MOD_DH_R3________________________, SC_SENT,
- XXXXXXX, XXXXXXX, HY_ESC, LOW_ENT, NAV_SPC, HY_BSPC, XXXXXXX, XXXXXXX
-),
-
-/* QWERTY
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |LCTRL | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| Z | X | C | V | B |-------| |-------| N | M | , | . | / |RShift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_QWERTY] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __QWERTY_L1________________________________, __QWERTY_R1________________________________, _______,
- _______, __QWERTY_L2________________________________, __QWERTY_R2________________________________, _______,
- _______, __QWERTY_L3________________________________, _______, _______, __QWERTY_R3________________________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-[_MOUSE] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __BLANK____________________________________, _______, _______, __BLANK____________________________________, _______,
- KC_BTN1, __BLANK____________________________________, _______, KC_BTN2
-),
-
-/* LOWER
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | | Mute | Vol- | Vol+ | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ~ | | | ` | | ( | | ) | 7 | 8 | 9 | \ | Bksp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | GUI | ALT | _ | - | { |-------. ,-------| } | 4 | 5 | 6 | * | ` |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | + | = | [ |-------| |-------| ] | 1 | 2 | 3 | | |Enter |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | |LOWER | / / \ \ | 0 | . | = |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_LOWER] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __SYMBOLS_L1_______________________________, __NUMPAD_R1________________________________, _______,
- _______, __SYMBOLS_L2_______________________________, __NUMPAD_R2________________________________, KC_COMM,
- _______, __SYMBOLS_L3_______________________________, _______, _______, __NUMPAD_R3________________________________, KC_DOT,
- _______, _______, _______, _______, KC_SPC, KC_0, KC_DOT, _______
-),
-/* RAISE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | |MS_A_0|MS_A_1|MS_A_2| | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | |MS_W_U| | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | GUI | ALT | CTL | SFT |MS_W_D|-------. ,-------| | Left | Down | Up |Right | |
- * |------+------+------+------+------+------|MS_W_L | |MS_W_R |------+------+------+------+------+------|
- * | | MS_L | MS_D | MS_U | MS_R | |-------| |-------| |MS_W_L|MS_W_D|MS_W_U|MS_W_R| |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | MS_2 | / MS_1 / \ \ |RAISE | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- // */
-
-[_RAISE] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __SYMBOLS_L1_______________________________, __NAV_R1___________________________________, _______,
- _______, __SYMBOLS_L2_______________________________, __NAV_R2___________________________________, _______,
- _______, __SYMBOLS_L3_______________________________, _______, _______, __NAV_R3___________________________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-[_NAV] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __VIM_L1___________________________________, __NAV_R1___________________________________, _______,
- _______, __BLANK_W_GACS_____________________________, __NAV_R2___________________________________, _______,
- _______, __BLANK____________________________________, _______, _______, __NAV_R3___________________________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* ADJUST
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | Reset| | | | | | Reset| | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | |RGB ON| HUE+ | SAT+ | VAL+ |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | MODE | HUE- | SAT- | VAL- |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_ADJUST] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, _______, CLMK_DH, QWERTY, _______, _______, _______,
- QK_BOOT, __ADJUST_L1________________________________, __MEDIA_R1_________________________________, _______,
- _______, __ADJUST_L2________________________________, __MEDIA_R2_________________________________, _______,
- _______, __ADJUST_L3________________________________, _______, _______, __MEDIA_R3_________________________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-)
-
- // clang-format on
-};
-
-// SSD1306 OLED update loop, make sure to enable OLED_DRIVER_ENABLE=yes in rules.mk
-#ifdef OLED_ENABLE
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master()) return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- return rotation;
-}
-
-// When you add source files to SRC in rules.mk, you can use functions.
-const char *read_layer_state_user(void);
-void set_keylog(uint16_t keycode, keyrecord_t *record);
-const char *read_keylog(void);
-const char *read_keylogs(void);
-
-char layer_state_str[24];
-
-const char *read_layer_state_user(void) {
- // NOTE;
- switch (get_highest_layer(layer_state)) {
- case _CLMK_DH:
- return "Layer: Colemak";
- break;
- case _QWERTY:
- return "Layer: QWERTY ";
- break;
- case _MOUSE:
- return "Layer: Mouse ";
- break;
- case _LOWER:
- return "Layer: Lower ";
- break;
- case _RAISE:
- return "Layer: Raise ";
- break;
- case _NAV:
- return "Layer: Nav ";
- break;
- case _ADJUST:
- return "Layer: Adjust ";
- break;
- default:
- break;
- }
-
- char *layer_state_str = "Layer: Und- ";
- layer_state_str[10] = '0' + layer_state % 10;
- return layer_state_str;
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- // If you want to change the display of OLED, you need to change here
- oled_write_ln(read_layer_state_user(), false);
- oled_write_ln(read_keylog(), false);
- oled_write_ln(read_keylogs(), false);
- } else {
- render_bongo_cat();
- oled_set_cursor(0, 6);
- oled_write_P(PSTR("WPM: "), false);
- oled_write(get_u8_str(get_current_wpm(), ' '), false);
- }
- return false;
-}
-#endif // OLED_DRIVER_ENABLE
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
-#ifdef OLED_ENABLE
- set_keylog(keycode, record);
-#endif
- // set_timelog();
- }
-
- // Regular user keycode case statement
- switch (keycode) {
- default:
- return true;
- }
-
- return true;
-}
diff --git a/keyboards/lily58/keymaps/muppetjones/rules.mk b/keyboards/lily58/keymaps/muppetjones/rules.mk
deleted file mode 100644
index 1323bea893..0000000000
--- a/keyboards/lily58/keymaps/muppetjones/rules.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-OLED_ENABLE= yes # OLED display
-WPM_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-COMBO_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-
-# If you want to change the display of OLED, you need to change here
-# SRC += ./lib/rgb_state_reader.c
-SRC += ./lib/layer_state_reader.c
-SRC += ./lib/logo_reader.c
-SRC += ./lib/keylogger.c
-SRC += ./features/bongo_cat.c
-
-# Reduce firmware size
-# https://thomasbaart.nl/2018/12/01/reducing-firmware-size-in-qmk/
-# also requires in config.h
-LTO_ENABLE = yes
diff --git a/keyboards/lily58/keymaps/narze/config.h b/keyboards/lily58/keymaps/narze/config.h
deleted file mode 100644
index 300321b3db..0000000000
--- a/keyboards/lily58/keymaps/narze/config.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-// #define MASTER_LEFT
-#define MASTER_RIGHT
-// #define EE_HANDS
-
-#define COMBO_TERM 20
-
-#define PERMISSIVE_HOLD
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 100
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 27
-#define RGBLIGHT_LIMIT_VAL 120
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 17
-#define RGBLIGHT_VAL_STEP 17
-
-#define FORCE_NKRO
-
-// Underglow
-/*
-#undef RGBLED_NUM
-#define RGBLED_NUM 14 // Number of LEDs
-#define RGBLIGHT_SLEEP
-*/
diff --git a/keyboards/lily58/keymaps/narze/keymap.c b/keyboards/lily58/keymaps/narze/keymap.c
deleted file mode 100644
index 7438e72751..0000000000
--- a/keyboards/lily58/keymaps/narze/keymap.c
+++ /dev/null
@@ -1,468 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "narze.h"
-#include "keymap_colemak.h"
-#include "keymap_steno.h"
-
-
-#ifdef RGBLIGHT_ENABLE
-//Following line allows macro to read current RGB settings
-extern rgblight_config_t rgblight_config;
-#endif
-
-enum layers {
- _QWERTY,
- _COLEMAK,
- _QWOC,
- _LOWER,
- _RAISE,
- _PLOVER,
- _SUPERDUPER,
- _DEV,
- _ADJUST
-};
-
-enum custom_keycodes {
- QWERTY = SAFE_RANGE,
- PLOVER,
- LOWER,
- RAISE,
- ADJUST,
- SUPERDUPER,
- DEV,
- SDTOGG, // Toggle SuperDuper
- GUI_UNDS,
- LSFT_LPRN,
- RSFT_RPRN,
- EXT_PLV,
-};
-
-// Narze : Custom Macros
-#define HPR_ESC ALL_T(KC_ESC)
-#define SFT_ENT SFT_T(KC_ENT)
-
-enum process_combo_event {
- CB_SUPERDUPER,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* QWERTY
- * ,-----------------------------------------. ,-----------------------------------------.
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | F19 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |Hp/Esc| A | S | D | F | G | | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |Sft/( | Z | X | C | V | B |-------. ,-------| N | M | , | . | / |Sft/) |
- * |------+------+------+------+------+------| Swap | | Swap |------+------+------+------+------+------|
- * |Rse/[ | Ctrl | Alt | GUI/_|Lower | Space|-------| |-------| Space| Raise| Bksp | Alt | Ctrl | Low/]|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | /Space / \Enter \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-
- [_QWERTY] = LAYOUT(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_F19,
- HPR_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- LSFT_LPRN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_RPRN,
- LT(_RAISE, KC_LBRC), KC_LCTL, KC_LALT, GUI_UNDS,LOWER, KC_SPC, SH_TT, SH_TT, KC_SPC, RAISE, KC_BSPC, KC_RALT, KC_RCTL, LT(_LOWER, KC_RBRC),
- _______, _______, _______, KC_SPC, KC_ENT, _______, _______, _______
-),
-/* LOWER
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | ! | @ | # | $ | % | | ^ | & | * | ( | ) | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | F1 | F2 | F3 | F4 | F5 | F6 | | | _ | + | { | } | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | F7 | F8 | F9 | F10 | F11 | F12 |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | _ | + | { | } | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_LOWER] = LAYOUT(
- KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TILD,
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______,_______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-/* RAISE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ~ | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | F1 | F2 | F3 | F4 | F5 | F6 | | | - | = | [ | ] | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | F7 | F8 | F9 | F10 | F11 | F12 |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-
-[_RAISE] = LAYOUT(
- S(KC_GRV),KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-/* ADJUST
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | |RGB ON| HUE+ | SAT+ | VAL+ |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | MODE | HUE- | SAT- | VAL- |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_ADJUST] = LAYOUT(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI,
- PLOVER, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-/* Plover layer (http://opensteno.org)
- * ,-----------------------------------------------------------------------------------.
- * | # | # | # | # | # | # | # | # | # | # | # | # |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | FN | S | T | P | H | * | * | F | P | L | T | D |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | S | K | W | R | * | * | R | B | G | S | Z |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Exit | | | A | O | | E | U | PWR | RES1 | RES2 |
- * `-----------------------------------------------------------------------------------'
- */
-
-// [_PLOVER] = {
-// {STN_N1, STN_N2, STN_N3, STN_N4, STN_N5, STN_N6, STN_N7, STN_N8, STN_N9, STN_NA, STN_NB, STN_NC },
-// {STN_FN, STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR },
-// {XXXXXXX, STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR },
-// {EXT_PLV, XXXXXXX, XXXXXXX, STN_A, STN_O, XXXXXXX, XXXXXXX, STN_E, STN_U, STN_PWR, STN_RE1, STN_RE2}
-// },
-/* Plover
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | T← | T→ | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Alt | [SuperDuper]| Bksp | Gui | | ← | ↓ | ↑ | → | Del | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_PLOVER] = LAYOUT(
- STN_N1, STN_N2, STN_N3, STN_N4, STN_N5, STN_N6, STN_N7, STN_N8, STN_N9, STN_NA, STN_NB, STN_NC,
- STN_FN, STN_S1, STN_TL, STN_PL, STN_HL, STN_ST1, STN_ST3, STN_FR, STN_PR, STN_LR, STN_TR, STN_DR,
- XXXXXXX, STN_S2, STN_KL, STN_WL, STN_RL, STN_ST2, STN_ST4, STN_RR, STN_BR, STN_GR, STN_SR, STN_ZR,
- EXT_PLV, XXXXXXX, XXXXXXX, STN_A, STN_O, XXXXXXX, KC_LSFT, KC_LSFT, XXXXXXX, STN_E, STN_U, STN_PWR, STN_RE1, STN_RE2,
- QK_STENO_GEMINI, QK_STENO_BOLT, _______, KC_LSFT, KC_LSFT, _______, _______, _______
-),
-/* SuperDuper : https://gist.github.com/narze/861e2167784842d38771
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | T← | T→ | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | Alt | [SuperDuper]| Bksp | Gui | | ← | ↓ | ↑ | → | Del | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_SUPERDUPER] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, S(LGUI(KC_LBRC)), S(LGUI(KC_RBRC)), _______, _______,
- _______, KC_LALT, _______, _______, KC_BSPC, KC_LGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_LSFT, KC_LSFT, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_LSFT, KC_LSFT, _______, _______, _______
-),
-/* Dev Layer
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_DEV] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-/* Colemak
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_COLEMAK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-/* QWOC
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_QWOC] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
-),
-};
-
-int RGB_current_mode;
-
-// Setting ADJUST layer RGB back to default
-void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
- if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) {
- layer_on(layer3);
- } else {
- layer_off(layer3);
- }
-}
-
-void matrix_init_user(void) {
- set_superduper_key_combos();
- steno_set_mode(STENO_MODE_GEMINI);
-
- #ifdef RGBLIGHT_ENABLE
- RGB_current_mode = rgblight_config.mode;
- #endif
-}
-
-#ifdef OLED_ENABLE
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (!is_keyboard_master())
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- return rotation;
-}
-
-// When add source files to SRC in rules.mk, you can use functions.
-const char *read_layer_state(void);
-const char *read_logo(void);
-void set_keylog(uint16_t keycode, keyrecord_t *record);
-const char *read_keylog(void);
-const char *read_keylogs(void);
-
-const char *read_mode_icon(bool swap);
-const char *read_host_led_state(void);
-void set_timelog(void);
-const char *read_timelog(void);
-
-char encoder_debug[24];
-
-bool oled_task_user(void) {
- // Host Keyboard Layer Status
- if (is_keyboard_master()) {
- // If you want to change the display of OLED, you need to change here
- oled_write_ln(read_layer_state(), false);
- oled_write_ln(read_keylog(), false);
- oled_write_ln(read_keylogs(), false);
- // oled_write_ln(read_mode_icon(keymap_config.swap_lalt_lgui), false);
- oled_write_ln(read_host_led_state(), false);
- // oled_write_ln(read_timelog(), false);
- } else {
- oled_write(read_logo(), false);
- // oled_write_ln(encoder_debug, false);
- }
- return false;
-}
-
-#endif //OLED_ENABLE
-
-#ifdef SWAP_HANDS_ENABLE
-__attribute__ ((weak))
-const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
- // Left
- {{5,5},{4,5},{3,5},{2,5},{1,5},{0,5}},
- {{5,6},{4,6},{3,6},{2,6},{1,6},{0,6}},
- {{5,7},{4,7},{3,7},{2,7},{1,7},{0,7}},
- {{5,8},{4,8},{3,8},{2,8},{1,8},{0,8}},
- {{5,9},{4,9},{3,9},{2,9},{1,9},{0,9}},
- // Right
- {{0,0},{1,0},{2,0},{3,0},{4,0},{5,0}},
- {{0,1},{1,1},{2,1},{3,1},{4,1},{5,1}},
- {{0,2},{1,2},{2,2},{3,2},{4,2},{5,2}},
- {{0,3},{1,3},{2,3},{3,3},{4,3},{5,3}},
- {{0,4},{1,4},{2,4},{3,4},{4,4},{5,4}},
-};
-#endif
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
-#ifdef OLED_ENABLE
- set_keylog(keycode, record);
-#endif
- // set_timelog();
- }
-
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- set_superduper_key_combo_layer(_QWERTY);
- }
- return false;
- break;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case ADJUST:
- if (record->event.pressed) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- return false;
- break;
- case PLOVER:
- if (!record->event.pressed) {
- layer_on(_PLOVER);
- }
- return false;
- break;
- case EXT_PLV:
- if (record->event.pressed) {
- layer_off(_PLOVER);
- }
- return false;
- break;
-
- // Macros
-
- // 1. Hold for LGUI, tap for Underscore
- case GUI_UNDS:
- perform_space_cadet(record, keycode, KC_LGUI, KC_LSFT, KC_MINS);
- return false;
-
- // 2. Hold for LSHIFT, tap for Parens open
- case LSFT_LPRN:
- perform_space_cadet(record, keycode, KC_LSFT, KC_LSFT, KC_9);
- return false;
-
- // 3. Hold for RSHIFT, tap for Parens close
- case RSFT_RPRN:
- perform_space_cadet(record, keycode, KC_RSFT, KC_RSFT, KC_0);
- return false;
- }
- return true;
-}
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- if (pressed) {
- switch(combo_index) {
- case CB_SUPERDUPER:
- layer_on(_SUPERDUPER);
- break;
- }
- } else {
- layer_off(_SUPERDUPER);
- unregister_mods(MOD_BIT(KC_LGUI) | MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT)); // Sometimes mods are held, unregister them
- }
-}
-
-// matrix_setup is already used
-void keyboard_pre_init_user(void) {
- set_superduper_key_combos();
-}
-
-char layer_state_str[24];
-
-const char *read_layer(void) {
- switch (layer_state)
- {
- case _QWERTY:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Default");
- break;
- case 1 << _COLEMAK:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Colemak");
- break;
- case 1 << _QWOC:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Qwerty2Colemak");
- break;
- case 1 << _LOWER:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Lower");
- break;
- case 1 << _RAISE:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Raise");
- break;
- case 1 << _SUPERDUPER:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: SuperDuper");
- break;
- case 1 << _DEV:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Dev");
- break;
- case 1 << _ADJUST:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Adjust");
- break;
- default:
- snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state);
- }
-
- return layer_state_str;
-}
diff --git a/keyboards/lily58/keymaps/narze/readme.md b/keyboards/lily58/keymaps/narze/readme.md
deleted file mode 100644
index 9d522f5cae..0000000000
--- a/keyboards/lily58/keymaps/narze/readme.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# narze's layout
-
-## Key features
-
-- Qwerty + [Colemak](https://colemak.com) layouts, and you can type Qwerty on software-level Colemak as well. Very useful for gaming or when your friend wanna type something but don't use Colemak.
-- [(S)uper (D)uper Mode](/users/narze/readme.md)
-
-## Build instructions
-
-- `cd /path/to/qmk_firmware`
-- Ensure latest libraries are loaded `make git-submodule`
-- Flash to right hand side (Elite C) with `make lily58:narze:dfu` or `qmk flash -kb lily58 -km narze -b dfu`
-- Flash to left hand side (Pro Micro) with `make lily58:narze:avrdude` or `qmk flash -kb lily58 -km narze -b avrdude`
diff --git a/keyboards/lily58/keymaps/narze/rules.mk b/keyboards/lily58/keymaps/narze/rules.mk
deleted file mode 100644
index 0fe1d92356..0000000000
--- a/keyboards/lily58/keymaps/narze/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-NKRO_ENABLE = yes
-SWAP_HANDS_ENABLE = yes
-STENO_ENABLE = yes
-FORCE_NKRO = yes
-COMBO_ENABLE = yes
-
-SRC += ./lib/rgb_state_reader.c \
- ./lib/layer_state_reader.c \
- ./lib/logo_reader.c \
- ./lib/mode_icon_reader.c \
- ./lib/host_led_state_reader.c \
- ./lib/timelogger.c \
- ./lib/keylogger.c \
diff --git a/keyboards/lily58/keymaps/ninjonas/README.md b/keyboards/lily58/keymaps/ninjonas/README.md
deleted file mode 100644
index 8a51b17862..0000000000
--- a/keyboards/lily58/keymaps/ninjonas/README.md
+++ /dev/null
@@ -1,134 +0,0 @@
-# ninjonas Keymap for [Lily58 Pro](https://github.com/kata0510/Lily58)
-
-## Keymap
-This keymap is designed based off my typing habits and is subject to change. Information about custom user macros and tap dances can be found [here](../../../../users/ninjonas).
-
-More information about the Lily58 pro keyboard can be found [here](https://yuchi-kbd.hatenablog.com/entry/2018/12/23/214342)
-
-### QWERTY
-```c
-/* QWERTY
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ESC | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| Z | X | C | V | B |-------| |-------| N | M | , | . | / | = |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | Cmd | Ctrl | /Space / \Enter \ |BackSP| Del |LOWER |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
-
-### DVORAK
-```c
-/* DVORAK
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | ' | , | . | P | Y | | F | G | C | R | L | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ESC | A | O | E | U | I |-------. ,-------| D | H | T | N | S | / |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| ; | Q | J | K | X |-------| |-------| B | M | W | V | Z | = |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | Cmd | Ctrl | /Space / \Enter \ |BackSP| Del |LOWER |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
-
-### COLEMAK
-```c
-/* COLEMAK
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ESC | A | R | S | T | D |-------. ,-------| H | N | E | I | O | ' |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| Z | X | C | V | B |-------| |-------| K | M | , | . | / | = |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | Cmd | Ctrl | /Space / \Enter \ |BackSP| Del |LOWER |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
-
-### LOWER
-```c
-/* LOWER
- * ,------------------------------------------. ,------------------------------------------.
- * | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
- * |------+------+------+-------+------+------| |------+------+------+------+-------+------|
- * | | |KC_BRIU| Play | Mute | | | PgUp | Home | Up | End | |K_MDSH|
- * |------+------+------+-------+------+------| |------+------+------+------+-------+------|
- * | | |KC_BRID| Next |VolUp | |-------. ,-------| PgDn | Left | Down |Right |K_LOCK | |
- * |------+------+------+-------+------+------| | | |------+------+------+------+-------+------|
- * |M_SHFT| | | Prev |VolDn | |-------| |-------| | | | | |M_PYNV|
- * `------------------------------------------/ / \ \------------------------------------------'
- * | | | | / / \ \ | |M_CODE| |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
-
-### RAISE
-```c
-/* RAISE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | |K_CSCN| | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | MS_1 | MS_U | MS_2 | WH_U | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | MS_L | MS_D | MS_R | WH_D |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
-
-### ADJUST
-```c
-/* ADJUST
- * ,------------------------------------------. ,-----------------------------------------.
- * |EE_CLR | | | | | | | | | |COLMAK|DVORAK|QWERTY|
- * |-------+------+------+------+------+------| |------+------+------+------+------+------|
- * |M_MAKE | | | | | | | | | | | | |
- * |-------+------+------+------+------+------| |------+------+------+------+------+------|
- * |M_VRSN | | | | | |-------. ,-------| | | | | | |
- * |-------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * |M_FLSH | | | | | |-------| |-------| | | | | | |
- * `------------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
-
-<!--
-### TEMPLATE
-```c
-/* TEMPLATE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-```
---> \ No newline at end of file
diff --git a/keyboards/lily58/keymaps/ninjonas/config.h b/keyboards/lily58/keymaps/ninjonas/config.h
deleted file mode 100644
index 9c97dc9e3f..0000000000
--- a/keyboards/lily58/keymaps/ninjonas/config.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define QUICK_TAP_TERM 0
-
-#define OLED_FONT_H "keyboards/lily58/lib/glcdfont.c"
-#define OLED_DISABLE_TIMEOUT
diff --git a/keyboards/lily58/keymaps/ninjonas/keymap.c b/keyboards/lily58/keymaps/ninjonas/keymap.c
deleted file mode 100644
index 6c9c0da07d..0000000000
--- a/keyboards/lily58/keymaps/ninjonas/keymap.c
+++ /dev/null
@@ -1,196 +0,0 @@
-/* Copyright 2019 @ninjonas
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "ninjonas.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* QWERTY
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ESC | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| Z | X | C | V | B |-------| |-------| N | M | , | . | / | = |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | Cmd | Ctrl | /Space / \Enter \ |BackSP| Del |LOWER |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
- [_QWERTY] = LAYOUT_wrapper(
- _____________________NUM_LEFT_______________________, _____________________NUM_RIGHT______________________,
- _____________________QWERTY_L1______________________, _____________________QWERTY_R1______________________,
- _____________________QWERTY_L2______________________, _____________________QWERTY_R2______________________,
- _____________________QWERTY_L3______________________, T_LBRC, T_RBRC, _____________________QWERTY_R3______________________,
- _____________MOD_LEFT_____________, _____________MOD_RIGHT____________
- ),
-
-/* DVORAK
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | ' | , | . | P | Y | | F | G | C | R | L | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ESC | A | O | E | U | I |-------. ,-------| D | H | T | N | S | / |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| ; | Q | J | K | X |-------| |-------| B | M | W | V | Z | = |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | Cmd | Ctrl | /Space / \Enter \ |BackSP| Del |LOWER |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
- [_DVORAK] = LAYOUT_wrapper(
- _____________________NUM_LEFT_______________________, _____________________NUM_RIGHT______________________,
- _____________________DVORAK_L1______________________, _____________________DVORAK_R1______________________,
- _____________________DVORAK_L2______________________, _____________________DVORAK_R2______________________,
- _____________________DVORAK_L3______________________, T_LBRC, T_RBRC, _____________________DVORAK_R3______________________,
- _____________MOD_LEFT_____________, _____________MOD_RIGHT____________
- ),
-
-/* COLEMAK
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ESC | A | R | S | T | D |-------. ,-------| H | N | E | I | O | ' |
- * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
- * |LShift| Z | X | C | V | B |-------| |-------| K | M | , | . | / | = |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Alt | Cmd | Ctrl | /Space / \Enter \ |BackSP| Del |LOWER |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
- [_COLEMAK] = LAYOUT_wrapper(
- _____________________NUM_LEFT_______________________, _____________________NUM_RIGHT______________________,
- _____________________COLEMAK_L1_____________________, _____________________COLEMAK_R1_____________________,
- _____________________COLEMAK_L2_____________________, _____________________COLEMAK_R2_____________________,
- _____________________COLEMAK_L3_____________________, T_LBRC, T_RBRC, _____________________COLEMAK_R3_____________________,
- _____________MOD_LEFT_____________, _____________MOD_RIGHT____________
- ),
-
-/* LOWER
- * ,------------------------------------------. ,------------------------------------------.
- * | F11 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F12 |
- * |------+------+------+-------+------+------| |------+------+------+------+-------+------|
- * | | |KC_BRIU| Play | Mute | | | PgUp | Home | Up | End | |K_MDSH|
- * |------+------+------+-------+------+------| |------+------+------+------+-------+------|
- * | | |KC_BRID| Next |VolUp | |-------. ,-------| PgDn | Left | Down |Right |K_LOCK | |
- * |------+------+------+-------+------+------| | | |------+------+------+------+-------+------|
- * | |M_SHFT| | Prev |VolDn | |-------| |-------| | M | | | |M_PYNV|
- * `------------------------------------------/ / \ \------------------------------------------'
- * | | | | / / \ \ | |M_CODE| |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_LOWER] = LAYOUT_wrapper(
- _____________________FUNC_LEFT______________________, _____________________FUNC_RIGHT_____________________,
- _____________________LOWER_L1_______________________, _____________________LOWER_R1_______________________,
- _____________________LOWER_L2_______________________, _____________________LOWER_R2_______________________,
- _____________________LOWER_L3_______________________, _______, _______, _____________________LOWER_R3_______________________,
- __________________________________, _______, _______, M_CODE, _______
- ),
-
-/* RAISE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | |K_CSCN| | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | MS_1 | MS_U | MS_2 | WH_U | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | MS_L | MS_D | MS_R | WH_D |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_RAISE] = LAYOUT_wrapper(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, _____________MOUSE_1______________, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, _____________MOUSE_2______________, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- __________________________________, _______, _______, _______, K_CPRF
- ),
-
-/* ADJUST
- * ,------------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |-------+------+------+------+------+------| |------+------+------+------+------+------|
- * |M_MAKE |EEPRST| | | | | | | | |COLMAK|DVORAK|QWERTY|
- * |-------+------+------+------+------+------| |------+------+------+------+------+------|
- * |M_VRSN |M_MALL| | | | |-------. ,-------| | | | | | |
- * |-------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * |M_FLSH | | | | | |-------| |-------| | | | | | |
- * `------------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_ADJUST] = LAYOUT_wrapper(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- _____________________ADJUST_L1______________________, _____________________ADJUST_R1______________________,
- _____________________ADJUST_L2______________________, _____________________ADJUST_R2______________________,
- _____________________ADJUST_L3______________________, XXXXXXX, XXXXXXX, _____________________ADJUST_R3______________________,
- __________________________________, __________________________________
- ),
- /* TEMPLATE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- */
-[_NUMPAD] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _____________________NUMPAD_1_______________________,
- _______, _______, _______, _______, _______, _______, _____________________NUMPAD_2_______________________,
- _______, _______, _______, _______, _______, _______, _______, _______, _____________________NUMPAD_3_______________________,
- __________________________________, __________________________________
- ),
-};
-
-/* TEMPLATE
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | |-------. ,-------| | | | | | |
- * |------+------+------+------+------+------| | | |------+------+------+------+------+------|
- * | | | | | | |-------| |-------| | | | | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | | | | / / \ \ | | | |
- * | | | |/ / \ \ | | | |
- * `----------------------------' '------''--------------------'
- *
-[_TEMPLATE] = LAYOUT_wrapper(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- __________________________________, __________________________________
- ),
-*/ \ No newline at end of file
diff --git a/keyboards/lily58/keymaps/ninjonas/rules.mk b/keyboards/lily58/keymaps/ninjonas/rules.mk
deleted file mode 100644
index 9f00574d5d..0000000000
--- a/keyboards/lily58/keymaps/ninjonas/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-OLED_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/lime/keymaps/default/rules.mk b/keyboards/lime/keymaps/default/rules.mk
index b4572ce79a..dd69af3a2e 100644
--- a/keyboards/lime/keymaps/default/rules.mk
+++ b/keyboards/lime/keymaps/default/rules.mk
@@ -5,5 +5,3 @@ JOYSTICK_DRIVER = analog
EXTRAKEY_ENABLE = yes
WPM_ENABLE = yes
LTO_ENABLE = yes
-
-SRC += analog.c
diff --git a/keyboards/lime/rev1/config.h b/keyboards/lime/rev1/config.h
index ef4f99076d..ec2c061372 100644
--- a/keyboards/lime/rev1/config.h
+++ b/keyboards/lime/rev1/config.h
@@ -24,8 +24,3 @@
#endif
#define SPLIT_USB_DETECT
-
-#ifdef WPM_ENABLE
-# define SPLIT_WPM_ENABLE
-#endif
-
diff --git a/keyboards/lime/rev1/info.json b/keyboards/lime/rev1/info.json
index 13caf33841..19ac7dfda2 100644
--- a/keyboards/lime/rev1/info.json
+++ b/keyboards/lime/rev1/info.json
@@ -26,6 +26,11 @@
{"pin_a": "F4", "pin_b": "F5", "resolution": 2}
]
}
+ },
+ "transport": {
+ "sync": {
+ "wpm": true
+ }
}
},
"tapping": {
diff --git a/keyboards/soda/mango/config.h b/keyboards/magic_force/mf17/config.h
index 6e9f18cd5d..6e9f18cd5d 100644
--- a/keyboards/soda/mango/config.h
+++ b/keyboards/magic_force/mf17/config.h
diff --git a/keyboards/magic_force/mf17/info.json b/keyboards/magic_force/mf17/info.json
new file mode 100644
index 0000000000..397a5c879a
--- /dev/null
+++ b/keyboards/magic_force/mf17/info.json
@@ -0,0 +1,124 @@
+{
+ "manufacturer": "MagicForce",
+ "keyboard_name": "MF17",
+ "url": "https://github.com/gezhaoyou",
+ "maintainer": "MagicForce",
+ "diode_direction": "ROW2COL",
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
+ "matrix_pins": {
+ "cols": ["A6", "A5", "A4", "A3"],
+ "rows": ["B10", "B2", "B1", "B0", "A7"]
+ },
+ "usb": {
+ "device_version": "1.0.0",
+ "force_nkro": true,
+ "vid": "0x3A54",
+ "pid": "0x4F5D"
+ },
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "ws2812": {
+ "pin": "A2"
+ },
+ "rgb_matrix": {
+ "animations": {
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "rainbow_moving_chevron": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "rainbow_beacon": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "pixel_fractal": true,
+ "pixel_flow": true,
+ "pixel_rain": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ },
+ "driver": "ws2812",
+ "layout": [
+ {"flags": 1, "matrix": [0, 0], "x": 0, "y": 0},
+ {"flags": 1, "matrix": [0, 1], "x": 75, "y": 0},
+ {"flags": 1, "matrix": [0, 2], "x": 150, "y": 0},
+ {"flags": 1, "matrix": [0, 3], "x": 224, "y": 0},
+ {"flags": 1, "matrix": [1, 0], "x": 0, "y": 16},
+ {"flags": 1, "matrix": [1, 1], "x": 75, "y": 16},
+ {"flags": 1, "matrix": [1, 2], "x": 150, "y": 16},
+ {"flags": 1, "matrix": [2, 0], "x": 0, "y": 32},
+ {"flags": 1, "matrix": [2, 1], "x": 75, "y": 32},
+ {"flags": 1, "matrix": [2, 2], "x": 150, "y": 32},
+ {"flags": 1, "matrix": [2, 3], "x": 224, "y": 24},
+ {"flags": 1, "matrix": [3, 0], "x": 0, "y": 48},
+ {"flags": 1, "matrix": [3, 1], "x": 75, "y": 48},
+ {"flags": 1, "matrix": [3, 2], "x": 150, "y": 48},
+ {"flags": 1, "matrix": [4, 0], "x": 32, "y": 64},
+ {"flags": 1, "matrix": [4, 1], "x": 150, "y": 64},
+ {"flags": 1, "matrix": [4, 2], "x": 224, "y": 64}
+ ]
+ },
+ "indicators": {
+ "caps_lock": "B15",
+ "on_state": 0
+ },
+ "community_layouts": ["numpad_5x4"],
+ "layouts": {
+ "LAYOUT_numpad_5x4": {
+ "layout": [
+ {"label": "Num Lock", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "/", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "*", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "-", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "7", "matrix": [1, 0], "x": 0, "y": 1},
+ {"label": "8", "matrix": [1, 1], "x": 1, "y": 1},
+ {"label": "9", "matrix": [1, 2], "x": 2, "y": 1},
+ {"label": "4", "matrix": [2, 0], "x": 0, "y": 2},
+ {"label": "5", "matrix": [2, 1], "x": 1, "y": 2},
+ {"label": "6", "matrix": [2, 2], "x": 2, "y": 2},
+ {"h": 2, "label": "+", "matrix": [1, 3], "x": 3, "y": 1},
+ {"label": "1", "matrix": [3, 0], "x": 0, "y": 3},
+ {"label": "2", "matrix": [3, 1], "x": 1, "y": 3},
+ {"label": "3", "matrix": [3, 2], "x": 2, "y": 3},
+ {"label": "0", "matrix": [4, 0], "w": 2, "x": 0, "y": 4},
+ {"label": ".", "matrix": [4, 2], "x": 2, "y": 4},
+ {"h": 2, "label": "Enter", "matrix": [3, 3], "x": 3, "y": 3}
+ ]
+ }
+ }
+}
diff --git a/keyboards/soda/mango/keymaps/default/keymap.c b/keyboards/magic_force/mf17/keymaps/default/keymap.c
index 7497c87514..7497c87514 100755
--- a/keyboards/soda/mango/keymaps/default/keymap.c
+++ b/keyboards/magic_force/mf17/keymaps/default/keymap.c
diff --git a/keyboards/soda/mango/keymaps/via/keymap.c b/keyboards/magic_force/mf17/keymaps/via/keymap.c
index 059598a680..059598a680 100755
--- a/keyboards/soda/mango/keymaps/via/keymap.c
+++ b/keyboards/magic_force/mf17/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q1/ansi/keymaps/via/rules.mk b/keyboards/magic_force/mf17/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/keychron/q1/ansi/keymaps/via/rules.mk
+++ b/keyboards/magic_force/mf17/keymaps/via/rules.mk
diff --git a/keyboards/magic_force/mf17/readme.md b/keyboards/magic_force/mf17/readme.md
new file mode 100644
index 0000000000..bb75cadfe9
--- /dev/null
+++ b/keyboards/magic_force/mf17/readme.md
@@ -0,0 +1,22 @@
+# MF-17
+
+A customizable 17 keyboard, support both HOTSWAP and SOLDER.
+
+* Keyboard Maintainer: [gezhaoyou](https://github.com/gezhaoyou)
+* Hardware Supported: [gezhaoyou](https://github.com/gezhaoyou)
+Make example for this keyboard (after setting up your build environment):
+
+ make magic_force/mf17:default
+
+Flashing example for this keyboard:
+
+ make magic_force/mf17:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 2 ways:
+
+* **Physical reset button**: Briefly press the button: [boot] first, then press button: [reset] on the back of the PCB
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/magic_force/mf17/rules.mk b/keyboards/magic_force/mf17/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/magic_force/mf17/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/soda/pocket/chconf.h b/keyboards/magic_force/mf34/chconf.h
index 61b37ebf37..61b37ebf37 100644
--- a/keyboards/soda/pocket/chconf.h
+++ b/keyboards/magic_force/mf34/chconf.h
diff --git a/keyboards/soda/pocket/config.h b/keyboards/magic_force/mf34/config.h
index ce02ad5d68..ce02ad5d68 100644
--- a/keyboards/soda/pocket/config.h
+++ b/keyboards/magic_force/mf34/config.h
diff --git a/keyboards/magic_force/mf34/info.json b/keyboards/magic_force/mf34/info.json
new file mode 100644
index 0000000000..86b08087cb
--- /dev/null
+++ b/keyboards/magic_force/mf34/info.json
@@ -0,0 +1,78 @@
+{
+ "keyboard_name": "MagicForce",
+ "url": "",
+ "maintainer": "MagicForce",
+ "manufacturer": "MagicForce",
+ "usb": {
+ "vid": "0x1A53",
+ "pid": "0x4F51",
+ "device_version": "1.0.2",
+ "force_nkro": true
+ },
+ "indicators": {
+ "num_lock": "B15"
+ },
+ "ws2812": {
+ "pin": "C15"
+ },
+ "rgb_matrix": {
+ "driver": "ws2812"
+ },
+ "matrix_pins": {
+ "cols": ["A2", "A1", "B14", "B4", "B5", "B6", "B7"],
+ "rows": ["A7", "B0", "B1", "B2", "B10", "B11"]
+ },
+ "diode_direction": "ROW2COL",
+ "processor": "STM32F072",
+ "bootloader": "stm32-dfu",
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+
+ {"matrix": [0, 3], "x": 3.25, "y": 0},
+ {"matrix": [0, 4], "x": 4.25, "y": 0},
+ {"matrix": [0, 5], "x": 5.25, "y": 0},
+ {"matrix": [0, 6], "x": 6.25, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1.25},
+ {"matrix": [1, 1], "x": 1, "y": 1.25},
+ {"matrix": [1, 2], "x": 2, "y": 1.25},
+
+ {"matrix": [1, 3], "x": 3.25, "y": 1.25},
+ {"matrix": [1, 4], "x": 4.25, "y": 1.25},
+ {"matrix": [1, 5], "x": 5.25, "y": 1.25},
+ {"matrix": [1, 6], "x": 6.25, "y": 1.25},
+
+ {"matrix": [2, 0], "x": 0, "y": 2.25},
+ {"matrix": [2, 1], "x": 1, "y": 2.25},
+ {"matrix": [2, 2], "x": 2, "y": 2.25},
+
+ {"matrix": [2, 3], "x": 3.25, "y": 2.25},
+ {"matrix": [2, 4], "x": 4.25, "y": 2.25},
+ {"matrix": [2, 5], "x": 5.25, "y": 2.25},
+
+ {"matrix": [3, 3], "x": 3.25, "y": 3.25},
+ {"matrix": [3, 4], "x": 4.25, "y": 3.25},
+ {"matrix": [3, 5], "x": 5.25, "y": 3.25},
+ {"matrix": [3, 6], "x": 6.25, "y": 2.25, "h": 2},
+
+ {"matrix": [4, 1], "x": 1, "y": 4.25},
+
+ {"matrix": [4, 3], "x": 3.25, "y": 4.25},
+ {"matrix": [4, 4], "x": 4.25, "y": 4.25},
+ {"matrix": [4, 5], "x": 5.25, "y": 4.25},
+
+ {"matrix": [5, 0], "x": 0, "y": 5.25},
+ {"matrix": [5, 1], "x": 1, "y": 5.25},
+ {"matrix": [5, 2], "x": 2, "y": 5.25},
+
+ {"matrix": [5, 4], "x": 3.25, "y": 5.25, "w": 2},
+ {"matrix": [5, 5], "x": 5.25, "y": 5.25},
+ {"matrix": [5, 6], "x": 6.25, "y": 4.25, "h": 2}
+ ]
+ }
+ }
+}
diff --git a/keyboards/soda/pocket/keymaps/default/keymap.c b/keyboards/magic_force/mf34/keymaps/default/keymap.c
index 4d65df2d73..4d65df2d73 100755
--- a/keyboards/soda/pocket/keymaps/default/keymap.c
+++ b/keyboards/magic_force/mf34/keymaps/default/keymap.c
diff --git a/keyboards/soda/pocket/keymaps/via/keymap.c b/keyboards/magic_force/mf34/keymaps/via/keymap.c
index 4d65df2d73..4d65df2d73 100755
--- a/keyboards/soda/pocket/keymaps/via/keymap.c
+++ b/keyboards/magic_force/mf34/keymaps/via/keymap.c
diff --git a/keyboards/keychron/q1/iso/keymaps/via/rules.mk b/keyboards/magic_force/mf34/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/keychron/q1/iso/keymaps/via/rules.mk
+++ b/keyboards/magic_force/mf34/keymaps/via/rules.mk
diff --git a/keyboards/soda/pocket/mcuconf.h b/keyboards/magic_force/mf34/mcuconf.h
index e139ee3683..e139ee3683 100644
--- a/keyboards/soda/pocket/mcuconf.h
+++ b/keyboards/magic_force/mf34/mcuconf.h
diff --git a/keyboards/soda/pocket/pocket.c b/keyboards/magic_force/mf34/mf34.c
index 8cced36866..8cced36866 100644
--- a/keyboards/soda/pocket/pocket.c
+++ b/keyboards/magic_force/mf34/mf34.c
diff --git a/keyboards/magic_force/mf34/readme.md b/keyboards/magic_force/mf34/readme.md
new file mode 100644
index 0000000000..25a72d644f
--- /dev/null
+++ b/keyboards/magic_force/mf34/readme.md
@@ -0,0 +1,23 @@
+# MF-34
+
+A customizable 34 keyboard, support both HOTSWAP and SOLDER.
+
+* Keyboard Maintainer: [gezhaoyou](https://github.com/gezhaoyou)
+* Hardware Supported: [gezhaoyou](https://github.com/gezhaoyou)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make magic_force/mf34:default
+
+Flashing example for this keyboard:
+
+ make magic_force/mf34:default:flash
+
+## Bootloader
+
+Enter the bootloader in 2 ways:
+
+* **Physical reset button**: Briefly press the button: [boot] first, then press button: [reset] on the back of the PCB
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/soda/pocket/rules.mk b/keyboards/magic_force/mf34/rules.mk
index 24a8c52e48..24a8c52e48 100644
--- a/keyboards/soda/pocket/rules.mk
+++ b/keyboards/magic_force/mf34/rules.mk
diff --git a/keyboards/manyboard/macro/keymaps/default/keymap.c b/keyboards/manyboard/macro/keymaps/default/keymap.c
index 0b9d2ac927..d068fa8d3d 100644
--- a/keyboards/manyboard/macro/keymaps/default/keymap.c
+++ b/keyboards/manyboard/macro/keymaps/default/keymap.c
@@ -41,15 +41,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
switch (get_highest_layer(state)) {
case 0:
- sethsv(HSV_WHITE, (LED_TYPE *)&led[0]);
+ sethsv(HSV_WHITE, (rgb_led_t *)&led[0]);
rgblight_set();
break;
case 1:
- sethsv(HSV_GREEN, (LED_TYPE *)&led[0]);
+ sethsv(HSV_GREEN, (rgb_led_t *)&led[0]);
rgblight_set();
break;
case 2:
- sethsv(HSV_BLUE, (LED_TYPE *)&led[0]);
+ sethsv(HSV_BLUE, (rgb_led_t *)&led[0]);
rgblight_set();
break;
}
diff --git a/keyboards/manyboard/macro/keymaps/via/keymap.c b/keyboards/manyboard/macro/keymaps/via/keymap.c
index 0b9d2ac927..d068fa8d3d 100644
--- a/keyboards/manyboard/macro/keymaps/via/keymap.c
+++ b/keyboards/manyboard/macro/keymaps/via/keymap.c
@@ -41,15 +41,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
switch (get_highest_layer(state)) {
case 0:
- sethsv(HSV_WHITE, (LED_TYPE *)&led[0]);
+ sethsv(HSV_WHITE, (rgb_led_t *)&led[0]);
rgblight_set();
break;
case 1:
- sethsv(HSV_GREEN, (LED_TYPE *)&led[0]);
+ sethsv(HSV_GREEN, (rgb_led_t *)&led[0]);
rgblight_set();
break;
case 2:
- sethsv(HSV_BLUE, (LED_TYPE *)&led[0]);
+ sethsv(HSV_BLUE, (rgb_led_t *)&led[0]);
rgblight_set();
break;
}
diff --git a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/config.h b/keyboards/maple_computing/c39/keymaps/kuchosauronad0/config.h
deleted file mode 100644
index bc77f77e49..0000000000
--- a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
-
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* key combination for magic key command */
-#undef IS_COMMAND
-#define IS_COMMAND() ( \
- get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_LALT)) \
-)
-
-#ifdef RGBLIGHT_ENABLE
-# define WS2812_DI_PIN D0
-# define RGBLED_NUM 4
-#endif // !RGBLIGHT_ENABLE
diff --git a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/keymap.c b/keyboards/maple_computing/c39/keymaps/kuchosauronad0/keymap.c
deleted file mode 100644
index 3ce476e46d..0000000000
--- a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/keymap.c
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
-This is the keymap for the keyboard
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "kuchosauronad0.h"
-
-#ifdef RGBLIGHT_ENABLE
- extern rgblight_config_t rgblight_config;
-#endif
-
-#ifdef INDICATOR_LIGHTS
- extern userspace_config_t userspace_config;
- uint8_t last_mod;
- uint8_t last_led;
- uint8_t last_osm;
-#endif
-
-
-#define LAYOUT_collide39_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- MT(MOD_LALT,KC_TAB), K01, K02, K03, K04, K05, LT(RAISE,KC_PGUP), K06, K07, K08, K09, K0A, KC_BSPC, \
- SFT_T(KC_ESC), K11, K12, K13, K14, K15, LT(LOWER,KC_PGDN), K16, K17, K18, K19, K1A, SFT_T(KC_ENT), \
- MT(MOD_LCTL,KC_DEL), K21, K22, K23, K24, K25, KC_SPACE, K26, K27, K28, K29, K2A, QK_LEAD \
- )
-
-/*
- * ,------. ,----------------------------------------------------------------------------. ,------.
- * |ALTTAB| | Q | W | E | R | T |RSE/PU| Y | U | I | O | P | | BSPC |
- * |------| |------+------+------+------+------+------+------+------+------+------+------+ |------|
- * |SF/ESC| | A | S | D | F | G |LWR/PD| H | J | K | L | ; | | ENTER|
- * |------| |------+------+------+------+------+------+------+------+------+------+------+ |------|
- * |CTLDEL| | Z | X | C | V | B |SPACE | N | M | , | . | / | |LEADER|
- * `------' `----------------------------------------------------------------------------' `------'
- */
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_collide39_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_COLEMAK] = LAYOUT_collide39_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DVORAK] = LAYOUT_collide39_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
-#ifdef UNICODEMAP_ENABLE
- [_UNICODE] = LAYOUT_collide39_base_wrapper(
- _______________UNICODE_L1__________________, _______________UNICODE_R1__________________,
- _______________UNICODE_L2__________________, _______________UNICODE_R2__________________,
- _______________UNICODE_L3__________________, _______________UNICODE_R3__________________
- ),
-#endif
- [_WORKMAN] = LAYOUT_collide39_base_wrapper(
- _________________RGB_UP____________________, _________________RGB_UP____________________,
- _________________RGB_CENTER________________, _________________RGB_CENTER________________,
- _________________RGB_DOWN__________________, _________________RGB_DOWN__________________
- ),
-
- [_PLOVER] = LAYOUT_wrapper(
- KC_1, _________________PLOVER_L1_________________, _______, _________________PLOVER_R1_________________, KC_1,
- KC_NO, _________________PLOVER_L2_________________, _______, _________________PLOVER_R2_________________, KC_NO,
- KC_NO, _________________PLOVER_L3_________________, _______, _________________PLOVER_R3_________________, _______
- ),
-
- [_MODS] = LAYOUT_wrapper(
- KC_LALT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RALT,
- KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RCTL,
- KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- KC_TILD, _________________LOWER_L1__________________, _______, _________________LOWER_R1__________________, KC_BSPC,
- KC_F11, _________________LOWER_L2__________________, _______, _________________LOWER_R2__________________, KC_PIPE,
- KC_F12, _________________LOWER_L3__________________, _______, _________________LOWER_R3__________________, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- KC_GRV, _________________RAISE_L1__________________, _______, _________________RAISE_R1__________________, KC_BSPC,
- _______, _________________RAISE_L2__________________, _______, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _______, _________________RAISE_R3__________________, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- KC_MAKE, _________________ADJUST_L1_________________, _______, _________________ADJUST_R1_________________, KC_RESET,
- VRSN, _________________ADJUST_L2_________________, _______, _________________ADJUST_R2_________________, EE_CLR,
- DB_TOGG, _________________ADJUST_L3_________________, _______, _________________ADJUST_R3_________________, _______
- )
-
-};
-
-void matrix_init_keymap(void) {
- #ifndef CONVERT_TO_PROTON_C
- setPinOutput(D5);
- writePinHigh(D5);
- setPinOutput(B0);
- writePinHigh(B0);
- #endif
-}
-
diff --git a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/readme.md b/keyboards/maple_computing/c39/keymaps/kuchosauronad0/readme.md
deleted file mode 100644
index ff01fb5ffa..0000000000
--- a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Personal keymap for the collide39
-
-## Features:
-
-- leader key
-- combos
-- tap dance
-- rgb backlight for the space key using a chameleon 4x WS28xx leds
-
-#
diff --git a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/rules.mk b/keyboards/maple_computing/c39/keymaps/kuchosauronad0/rules.mk
deleted file mode 100644
index a6304cdf4a..0000000000
--- a/keyboards/maple_computing/c39/keymaps/kuchosauronad0/rules.mk
+++ /dev/null
@@ -1,20 +0,0 @@
-BOOTLOADER = caterina
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-LEADER_ENABLE = yes # default is yes
-TAP_DANCE_ENABLE = no #(+1254)
-COMBO_ENABLE = yes
-UNICODE_ENABLE = no #(+1134)
-UNICODEMAP_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-AUDIO_ENABLE = no
-NKRO_ENABLE = yes
-
-INDICATOR_LIGHTS = yes
-MACROS_ENABLED = no
-RGBLIGHT_STARTUP_ANIMATION = yes
-
-NO_SECRETS = no
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h
deleted file mode 100644
index 6b65e2dcc3..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-/* Underlight Configuration */
- #undef WS2812_DI_PIN
- #define WS2812_DI_PIN F4
- #undef RGBLED_NUM
- #define RGBLED_NUM 2 // Number of LEDs
-#define RGBLIGHT_EFFECT_BREATHING // Only have Breathing Animation
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 17
-#define RGBLIGHT_VAL_STEP 17
-
-/* Mouse Keys Configuration */
-#define MK_3_SPEED
-#define MK_W_INTERVAL_UNMOD 20
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 4f47777fa2..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,213 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-/**
- * Layer Names
- */
-#define _REEDER _BASE
-enum bdn9_layers {
- _MEDIA = KEYMAP_LAYERS,
- _NAVI,
- _KARABINER
-};
-
-/**
- * Keycodes & Macros
- */
-#define DF_REDR DF(_REEDER) // Set Default Layer to Reeder shortcuts
-#define DF_MEDA DF(_MEDIA) // Set Default Layer to Media controls
-#define DF_NAVI DF(_NAVI) // Set Default Layer to Navigation shortcuts
-#define DF_KBNR DF(_KARABINER) // Set Default Layer to Basic Macro keys
-
-// Tap Dances
-enum launchpad_dances {
- TD_SHLD_LGHT = 0,
- TD_SHLD_ADJT,
- TD_REDR_H
-};
-//Tap Dance Definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_SHLD_LGHT] = ACTION_TAP_DANCE_TRIGGER_LAYER(SINGLE_HOLD, _LIGHT),
- [TD_SHLD_ADJT] = ACTION_TAP_DANCE_TRIGGER_LAYER(SINGLE_HOLD, _ADJUST),
- [TD_REDR_H] = ACTION_TAP_DANCE_DOUBLE(KC_H, KC_R)
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Reeder
- * ┌──────┬──────┐
- * │CmdTab│ View │
- * ├──────┼──────┤
- * │PrvSub│PrvItm│
- * ├──────┼──────┤
- * │NxtSub│NxtItm│
- * ├──────┼──────┤
- * │ Clr │ Sync │
- * └──────┴──────┘
- */
-[_REEDER] = LAYOUT(
- CMD_TAB, TD(TD_REDR_H),
- KC_P, KC_K,
- KC_N, KC_J,
- TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT)
-),
-
-/* Media
- * ┌──────┬──────┐
- * │ Mute │ Play │
- * ├──────┼──────┤
- * │ Vol+ │PrvTrk│
- * ├──────┼──────┤
- * │ Vol- │NxtTrk│
- * ├──────┼──────┤
- * │ Spce │ Plyr │
- * └──────┴──────┘
- */
-[_MEDIA] = LAYOUT(
- KC_MUTE, KC_MPLY,
- KC_VOLU, KC_MNXT,
- KC_VOLD, KC_MPRV,
- TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT)
-),
-
-/* Navigation
- * ┌──────┬──────┐
- * │ PTab │ NTab │
- * ├──────┼──────┤
- * │ SclL │ SclU │
- * ├──────┼──────┤
- * │ SclR │ SclD │
- * ├──────┼──────┤
- * │LstTab│ClsTab│
- * └──────┴──────┘
- */
-[_NAVI] = LAYOUT(
- PRV_TAB, NXT_TAB,
- MC_WH_L, MC_WH_U,
- MC_WH_R, MC_WH_D,
- TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT)
-),
-
-/* Macro
- * ┌──────┬──────┐
- * │ 1 │ 2 │
- * ├──────┼──────┤
- * │ 3 │ 4 │
- * ├──────┼──────┤
- * │ 5 │ 6 │
- * ├──────┼──────┤
- * │ 7 │ 8 │
- * └──────┴──────┘
- */
-[_KARABINER] = LAYOUT(
- KC_P1, KC_P2,
- KC_P3, KC_P4,
- KC_P5, KC_P6,
- TD(TD_SHLD_LGHT), TD(TD_SHLD_ADJT)
-),
-
-/* Lights
- * ┌──────┬──────┐
- * │ THM+ │ HUE+ │
- * ├──────┼──────┤
- * │ SAT- │ SAT+ │
- * ├──────┼──────┤
- * │ VAL- │ VAL+ │
- * ├──────┼──────┤
- * │ XXXX │ Mde+ │
- * └──────┴──────┘
- */
-[_LIGHT] = LAYOUT(
- RGB_THM, RGB_HUI,
- RGB_SAD, RGB_SAI,
- RGB_VAD, RGB_VAI,
- XXXXXXX, RGB_MOD
-),
-
-/* Adjust
- * ┌──────┬──────┐
- * │ Make │ Rset │
- * ├──────┼──────┤
- * │ Redr │ Meda │
- * ├──────┼──────┤
- * │ Navi │ Mcro │
- * ├──────┼──────┤
- * │ Lght │ XXXX │
- * └──────┴──────┘
- */
-[_ADJUST] = LAYOUT(
- QM_MAKE, QK_BOOT,
- DF_REDR, DF_MEDA,
- DF_NAVI, DF_KBNR,
- TG_LGHT, XXXXXXX
-)
-
-};
-
-void matrix_init_keymap(void) {
-}
-
-// Runs once after keyboard initializes
-void keyboard_post_init_keymap(void) {
-};
-
-/**
- * Tap Dances
- */
-void process_tap_dance_keycode (bool reset, uint8_t toggle_layer) {
- uint16_t keycode = 0;
- switch (toggle_layer) {
- case _LIGHT:
- switch (get_highest_layer(layer_state)) {
- case _REEDER:
- keycode = KC_L;
- break;
- case _MEDIA:
- keycode = KC_SPC;
- break;
- case _NAVI:
- keycode = REO_TAB;
- break;
- case _KARABINER:
- keycode = KC_P7;
- break;
- }
- break;
- case _ADJUST:
- switch (get_highest_layer(layer_state)) {
- case _REEDER:
- keycode = KC_R;
- break;
- case _MEDIA:
- keycode = MC_PLYR;
- break;
- case _NAVI:
- keycode = CLS_TAB;
- break;
- case _KARABINER:
- keycode = KC_P8;
- break;
- }
- break;
- }
- if (!reset) {
- register_code16(keycode);
- } else {
- unregister_code16(keycode);
- }
-}
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md
deleted file mode 100644
index a91a1b80ac..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/readme.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# brandonschlack's layout for Launchpad
-Fun little macropad build, with an awesome case from [StrataKB](https://stratakb.com/store/cases/launchpad-v2-full-case).
-
-## Media Layer
-This layer is used for media controls. Player button is a hotkey to focus the current media player with [BeardedSpice](https://beardedspice.github.io/)
-| | |
-|:-:|:-:|
-| Mute | Play/Pause |
-| Vol + | Next Track |
-| Vol - | Prev Track |
-| | Current Player |
----
-
-## Keypad Layer
-This layer is used to send keypad keys, meant to be remapped based on current app with [Karabiner](https://pqrs.org/osx/karabiner/)
-| | |
-|:-:|:-:|
-| 1 | 2 |
-| 3 | 4 |
-| 5 | 6 |
-| 7 | 8 |
----
-
-## Magic Layer
-This layer is used as a meta layer for the pad. This layer is accessed by holding key in Row 3, Col 0
-| | |
-|:-:|:-:|
-| MAKE | RESET |
-| **Media** Layer | **Keypad** Layer|
-| XXX | XXX |
-| ___ | XXX |
diff --git a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk b/keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index 31c8f7b39d..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Use macropad-specific defines, layers, functions. Flash bootloader with QM_MAKE
-IS_MACROPAD = yes
-
-# Use dfu bootloader for Elite-C
-BOOTLOADER = atmel-dfu
-
-# Build Options
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-CONSOLE_ENABLE = yes # Console for debug(+400)
-MOUSEKEY_ENABLE = yes # Use mouse keys for scrolling.
-COMMAND_ENABLE = no # Disable Command, breaks with Mouse Keys set to constant.
-TAP_DANCE_ENABLE = yes # Use tap dance
diff --git a/keyboards/maple_computing/launchpad/keymaps/drashna/config.h b/keyboards/maple_computing/launchpad/keymaps/drashna/config.h
deleted file mode 100644
index fb64366e6f..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/drashna/config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* Underlight Configuration */
-#undef WS2812_DI_PIN
-#define WS2812_DI_PIN F5
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#undef RGBLED_NUM
-#define RGBLED_NUM 8 // Number of LEDs
-#define RGBLIGHT_HUE_STEP 10
-#define RGBLIGHT_SAT_STEP 17
-#define RGBLIGHT_VAL_STEP 17
-
-#define RGB_MATRIX_LED_COUNT RGBLED_NUM
-#define AUDIO_PIN B7
-#define AUDIO_CLICKY
diff --git a/keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c b/keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c
deleted file mode 100644
index da9161831b..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,107 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-enum local_layers {
- _QWERTY,
- _RGB,
- _FUNC,
-};
-
-// Defines for task manager and such
-#define CALTDEL LCTL(LALT(KC_DEL))
-#define TSKMGR LCTL(LSFT(KC_ESC))
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty
- * ,-------------.
- * | 1 | 2 |
- * |------+------|
- * | 3 | 4 |
- * |------+------|
- * | 5 | 6 |
- * |------+------|
- * | FUNC | RGB |
- * `-------------'
- */
- [_QWERTY] = LAYOUT(
- KC_1, KC_2,
- KC_3, KC_4,
- KC_5, KC_6,
- MO(_FUNC), TG(_RGB)
- ),
-
- /* RGB
- * ,-------------.
- * | Mode-| Mode+|
- * |------+------|
- * | HUE- | HUE+ |
- * |------+------|
- * | SAT- | SAT+ |
- * |------+------|
- * |RGBTOG| |
- * `-------------'
- */
- [_RGB] = LAYOUT(
- RGB_RMOD, RGB_MOD,
- RGB_HUD, RGB_HUI,
- RGB_SAD, RGB_SAI,
- RGB_TOG, KC_TRNS
- ),
-
- /* Function
- * ,-------------.
- * | Q |CALDEL|
- * |------+------|
- * | A |TSKMGR|
- * |------+------|
- * | Z | X |
- * |------+------|
- * | | C |
- * `-------------'
- */
- [_FUNC] = LAYOUT(
- KC_Q, CALTDEL,
- KC_A, TSKMGR,
- KC_Z, KC_X,
- _______, QK_BOOT
- )
-
-};
-
-
-
-
-#ifdef RGB_MATRIX_ENABLE
- led_config_t g_led_config = {
- {
- { 7, 0 },
- { 6, 1 },
- { 5, 2 },
- { 4, 3 },
- },{
- { 121, 2 }, { 121, 23 },
- { 121, 41 }, { 121, 60 },
- { 103, 2 }, { 103, 23 },
- { 103, 41 }, { 103, 60 },
- },{
- 1, 1, 1, 1,
- 1, 1, 1, 1,
- }
- };
-#endif
diff --git a/keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk b/keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk
deleted file mode 100644
index 9fa73f2406..0000000000
--- a/keyboards/maple_computing/launchpad/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-BOOTLOADER = atmel-dfu
-
-RGBLIGHT_ENABLE = no
-AUDIO_ENABLE = no
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-RGB_MATRIX_ENABLE = yes
-RGB_MATRIX_DRIVER = ws2812
diff --git a/keyboards/maple_computing/lets_split_eh/keymaps/romus/README.md b/keyboards/maple_computing/lets_split_eh/keymaps/romus/README.md
deleted file mode 100644
index d54ed6856f..0000000000
--- a/keyboards/maple_computing/lets_split_eh/keymaps/romus/README.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Lets Split Eh Layout
-
-Check out [user readme](../../../../users/romus/README.md) for more info.
-
-# Usage
-
-Fill in after flashing
diff --git a/keyboards/maple_computing/lets_split_eh/keymaps/romus/keymap.c b/keyboards/maple_computing/lets_split_eh/keymaps/romus/keymap.c
deleted file mode 100644
index 398a324a0f..0000000000
--- a/keyboards/maple_computing/lets_split_eh/keymaps/romus/keymap.c
+++ /dev/null
@@ -1,28 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "romus.h"
-
-
-void matrix_init_keymap (void) {
-}
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
-
- return state;
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // Main Dvorak layer
- [_DV] = LAYOUT_letssplit_wrapper(DVORAK),
- // Turkish and special character overlay
- [_AL] = LAYOUT_letssplit_wrapper(ALTCHAR),
- // Gaming layer
- [_GA] = LAYOUT_letssplit_wrapper(GAME),
- // Numbers layer
- [_NU] = LAYOUT_letssplit_wrapper(NUMBERS),
- // Settings layer
- [_SE] = LAYOUT_letssplit_wrapper(SETTINGS),
- // Mouse emulation layer
- [_MO] = LAYOUT_letssplit_wrapper(MOUSE),
- // Music layer
- [_MU] = LAYOUT_letssplit_wrapper(MUSIC),
-};
diff --git a/keyboards/maple_computing/lets_split_eh/keymaps/romus/rules.mk b/keyboards/maple_computing/lets_split_eh/keymaps/romus/rules.mk
deleted file mode 100644
index ad7dd4c474..0000000000
--- a/keyboards/maple_computing/lets_split_eh/keymaps/romus/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-# Build options
-
-BACKLIGHT_ENABLE = no # Switch LEDs
-MOUSEKEY_ENABLE = yes # Emulates mouse key using keypresses
-RGBLIGHT_ENABLE = yes # LED strips
-TAP_DANCE_ENABLE = yes # Use multi-tap features
-AUDIO_ENABLE = no # Audio stuff
diff --git a/keyboards/massdrop/alt/keymaps/charlesrocket/config.h b/keyboards/massdrop/alt/keymaps/charlesrocket/config.h
deleted file mode 100644
index 119477f80d..0000000000
--- a/keyboards/massdrop/alt/keymaps/charlesrocket/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2022 charlesrocket
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define UNICODE_SELECTED_MODES UNICODE_MODE_BSD, UNICODE_MODE_MACOS, UNICODE_MODE_LINUX
diff --git a/keyboards/massdrop/alt/keymaps/charlesrocket/keymap.c b/keyboards/massdrop/alt/keymaps/charlesrocket/keymap.c
deleted file mode 100644
index 8df4376806..0000000000
--- a/keyboards/massdrop/alt/keymaps/charlesrocket/keymap.c
+++ /dev/null
@@ -1,279 +0,0 @@
-/* Copyright 2022 charlesrocket
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-enum alt_keycodes {
- L_BRI = SAFE_RANGE, //LED Brightness Increase //Working
- L_BRD, //LED Brightness Decrease //Working
- L_EDG_I, //LED Edge Brightness Increase
- L_EDG_D, //LED Edge Brightness Decrease
- L_EDG_M, //LED Edge lighting mode
- L_PTN, //LED Pattern Select Next //Working
- L_PTP, //LED Pattern Select Previous //Working
- L_PSI, //LED Pattern Speed Increase //Working
- L_PSD, //LED Pattern Speed Decrease //Working
- L_RATIOD,
- L_RATIOI,
- L_T_MD, //LED Toggle Mode //Working
- L_T_ONF, //LED Toggle On / Off //Broken
- L_ON, //LED On //Broken
- L_OFF, //LED Off //Broken
- L_T_BR, //LED Toggle Breath Effect //Working
- L_T_PTD, //LED Toggle Scrolling Pattern Direction //Working
- U_T_AGCR, //USB Toggle Automatic GCR control //Working
- DBG_TOG, //DEBUG Toggle On / Off //
- DBG_MTRX, //DEBUG Toggle Matrix Prints //
- DBG_KBD, //DEBUG Toggle Keyboard Prints //
- DBG_MOU, //DEBUG Toggle Mouse Prints //
- DBG_FAC, //DEBUG Factory light testing (All on white)
- MD_BOOT //Restart into bootloader after hold timeout //Working
-};
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [1] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_MUTE,
- L_T_BR, L_PSD, L_BRI, L_PSI, L_EDG_I, _______, _______, _______, U_T_AGCR,_______, KC_PSCR, KC_SCRL, KC_PAUS, _______, KC_END,
- L_T_PTD, L_PTP, L_BRD, L_PTN, L_EDG_D, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU,
- _______, L_T_MD, L_T_ONF, _______, L_EDG_M, MD_BOOT, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, KC_VOLD,
- MO(2), _______, _______, DBG_FAC, KC_APP, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [2] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, EE_CLR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, UC_PREV, UC_NEXT, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, LAG_SWP, LAG_NRM, _______, _______, TG(3), _______, _______, _______
- ),
- [3] = LAYOUT(
- UP(0,1), UP(2,3), UP(4,5), UP(6,7), UP(8,9), UP(10,11), UP(12,13), UP(14,15), UP(16,17), UP(18,19), UP(20,21), UP(22,23), UP(24,25), _______, _______,
- _______, KC_QUES, UP(27,28), UP(29,31), UM(32), UP(33,34), UM(35), UM(36), UP(37,38), UP(39,40), UP(41,42), UP(43,44), UP(45,46), _______, _______,
- _______, UP(47,48), UM(49), UM(50), KC_UNDS, UP(52,5), UP(53,54), UP(55,56), KC_QUOT, UP(59,60), UP(61,62), UP(63,64), _______, _______,
- _______, UP(65,66), UM(67), UP(68,69), UM(70), UM(71), UM(72), UM(73), KC_PIPE, UP(75,76), UM(77), UP(78,79), _______, _______,
- _______, _______, _______, _______, _______, TG(3), _______, _______, _______
- ),
-};
-#define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSFT) || get_mods() & MOD_BIT(KC_RSFT))
-#define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTL))
-#define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- static uint32_t key_timer;
- static uint8_t scroll_effect = 0;
- switch (keycode) {
- case L_BRI ... U_T_AGCR:
- if (record->event.pressed) {
- md_led_changed();
- }
- break;
- }
- switch (keycode) {
- case L_BRI:
- if (record->event.pressed) {
- if (LED_GCR_STEP > LED_GCR_MAX - gcr_desired) gcr_desired = LED_GCR_MAX;
- else gcr_desired += LED_GCR_STEP;
- if (led_animation_breathing) gcr_breathe = gcr_desired;
- }
- return false;
- case L_BRD:
- if (record->event.pressed) {
- if (LED_GCR_STEP > gcr_desired) gcr_desired = 0;
- else gcr_desired -= LED_GCR_STEP;
- if (led_animation_breathing) gcr_breathe = gcr_desired;
- }
- return false;
- case L_EDG_M:
- if (record->event.pressed) {
- led_edge_mode++;
- if (led_edge_mode > LED_EDGE_MODE_MAX) {
- led_edge_mode = LED_EDGE_MODE_ALL;
- }
- }
- return false;
- case L_EDG_I:
- if (record->event.pressed) {
- led_edge_brightness += 0.1;
- if (led_edge_brightness > 1) { led_edge_brightness = 1; }
- }
- return false;
- case L_EDG_D:
- if (record->event.pressed) {
- led_edge_brightness -= 0.1;
- if (led_edge_brightness < 0) { led_edge_brightness = 0; }
- }
- return false;
- case L_RATIOI:
- if (record->event.pressed) {
- led_ratio_brightness += 0.2;
- if (led_ratio_brightness > 2.0) { led_ratio_brightness = 2.0; }
- }
- return false;
- case L_RATIOD:
- if (record->event.pressed) {
- led_ratio_brightness -= 0.2;
- if (led_ratio_brightness < 0.0) { led_ratio_brightness = 0.0; }
- }
- return false;
- case L_PTN:
- if (record->event.pressed) {
- if (led_animation_id == led_setups_count - 1) led_animation_id = 0;
- else led_animation_id++;
- }
- return false;
- case L_PTP:
- if (record->event.pressed) {
- if (led_animation_id == 0) led_animation_id = led_setups_count - 1;
- else led_animation_id--;
- }
- return false;
- case L_PSI:
- if (record->event.pressed) {
- led_animation_speed += ANIMATION_SPEED_STEP;
- }
- return false;
- case L_PSD:
- if (record->event.pressed) {
- led_animation_speed -= ANIMATION_SPEED_STEP;
- if (led_animation_speed < 0) led_animation_speed = 0;
- }
- return false;
- case L_T_MD:
- if (record->event.pressed) {
- led_lighting_mode++;
- if (led_lighting_mode > LED_MODE_MAX_INDEX) led_lighting_mode = LED_MODE_NORMAL;
- }
- return false;
- case L_T_ONF:
- if (record->event.pressed) {
- led_enabled = !led_enabled;
- I2C3733_Control_Set(led_enabled);
- }
- return false;
- case L_ON:
- if (record->event.pressed) {
- led_enabled = 1;
- I2C3733_Control_Set(led_enabled);
- }
- return false;
- case L_OFF:
- if (record->event.pressed) {
- led_enabled = 0;
- I2C3733_Control_Set(led_enabled);
- }
- return false;
- case L_T_BR:
- if (record->event.pressed) {
- led_animation_breathing = !led_animation_breathing;
- if (led_animation_breathing) {
- gcr_breathe = gcr_desired;
- led_animation_breathe_cur = BREATHE_MIN_STEP;
- breathe_dir = 1;
- }
- }
- return false;
- case L_T_PTD:
- if (record->event.pressed) {
- scroll_effect++;
- if (scroll_effect == 1) { //Patterns with scroll move horizontal (Right to left)
- led_animation_direction = 1;
- led_animation_orientation = 0;
- led_animation_circular = 0;
- } else if (scroll_effect == 2) { //Patterns with scroll move vertical (Top to bottom)
- led_animation_direction = 1;
- led_animation_orientation = 1;
- led_animation_circular = 0;
- } else if (scroll_effect == 3) { //Patterns with scroll move vertical (Bottom to top)
- led_animation_direction = 0;
- led_animation_orientation = 1;
- led_animation_circular = 0;
- } else if (scroll_effect == 4) { //Patterns with scroll explode from center
- led_animation_direction = 0;
- led_animation_orientation = 0;
- led_animation_circular = 1;
- } else if (scroll_effect == 5) { //Patterns with scroll implode on center
- led_animation_direction = 1;
- led_animation_orientation = 0;
- led_animation_circular = 1;
- } else { //Patterns with scroll move horizontal (Left to right)
- scroll_effect = 0;
- led_animation_direction = 0;
- led_animation_orientation = 0;
- led_animation_circular = 0;
- }
- }
- return false;
- case U_T_AGCR:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL) {
- TOGGLE_FLAG_AND_PRINT(usb_gcr_auto, "USB GCR auto mode");
- }
- return false;
- case DBG_FAC:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL) {
- led_lighting_mode = LED_MODE_NORMAL;
- led_edge_brightness = 1;
- led_edge_mode = LED_EDGE_MODE_ALL;
- led_animation_breathing = 0;
- led_animation_id = 7; //led_programs.c led_setups leds_white index
- gcr_desired = LED_GCR_MAX;
- led_enabled = 1;
- I2C3733_Control_Set(led_enabled);
- }
- return false;
- case DBG_TOG:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_enable, "Debug mode");
- }
- return false;
- case DBG_MTRX:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_matrix, "Debug matrix");
- }
- return false;
- case DBG_KBD:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_keyboard, "Debug keyboard");
- }
- return false;
- case DBG_MOU:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_mouse, "Debug mouse");
- }
- return false;
- case MD_BOOT:
- if (record->event.pressed) {
- key_timer = timer_read32();
- } else {
- if (timer_elapsed32(key_timer) >= 500) {
- reset_keyboard();
- }
- }
- return false;
- default:
- return true;
- }
-}
- led_instruction_t led_instructions[] = {
- { .flags = LED_FLAG_USE_ROTATE_PATTERN },
- { .flags = LED_FLAG_MATCH_ID | LED_FLAG_MATCH_LAYER | LED_FLAG_USE_RGB, .id0 = 0x1, .b = 253, .layer = 1 },
- { .flags = LED_FLAG_MATCH_ID | LED_FLAG_MATCH_LAYER | LED_FLAG_USE_RGB, .id0 = 0x1, .r = 253, .b = 253, .layer = 2 },
- { .flags = LED_FLAG_MATCH_LAYER | LED_FLAG_USE_PATTERN, .pattern_id = 8, .layer = 3 },
- { .end = 1 }
- };
diff --git a/keyboards/massdrop/alt/keymaps/charlesrocket/rules.mk b/keyboards/massdrop/alt/keymaps/charlesrocket/rules.mk
deleted file mode 100644
index d684e3a615..0000000000
--- a/keyboards/massdrop/alt/keymaps/charlesrocket/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-OPT_DEFS += -DUSE_MASSDROP_CONFIGURATOR
-UNICODEMAP_ENABLE = yes
-APL_ENABLE = yes
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins/config.h b/keyboards/massdrop/alt/keymaps/jdelkins/config.h
deleted file mode 100644
index 6efa3dbaee..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define RGB_MATRIX_DEFAULT_SPD 20
-#define AUTO_SHIFT_TIMEOUT 160
-#define LEADER_TIMEOUT 400
-#define LEADER_PER_KEY_TIMING
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins/keymap.c b/keyboards/massdrop/alt/keymaps/jdelkins/keymap.c
deleted file mode 100644
index 64a9f6f598..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins/keymap.c
+++ /dev/null
@@ -1,500 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "jdelkins.h"
-#include "print.h"
-
-// Idle handling
-
-#define IDLE_TIMEOUT 360
-#define _LAYERS _RPT
-
-uint16_t rgb_idle_seconds = 0;
-uint16_t rgb_timer;
-uint8_t save_layer;
-
-// Macro keycodes
-
-enum alt_keycodes {
- U_T_AUTO = USER_SAFE_RANGE, //USB Extra Port Toggle Auto Detect / Always Active
- U_T_AGCR, //USB Toggle Automatic GCR control
- DBG_TOG, //DEBUG Toggle On / Off
- DBG_MTRX, //DEBUG Toggle Matrix Prints
- DBG_KBD, //DEBUG Toggle Keyboard Prints
- DBG_MOU, //DEBUG Toggle Mouse Prints
-};
-
-// Tap Dance
-
-int ctl_state = 0;
-
-void ctl_finished(tap_dance_state_t *state, void *user_data) {
- ctl_state = cur_dance(state);
- switch(ctl_state) {
- case SINGLE_TAP: leader_start(); break;
- case SINGLE_HOLD: register_code(KC_LCTL); break;
- case DOUBLE_TAP: tap_code(KC_RCTL); break;
- case DOUBLE_HOLD: register_code(KC_RCTL); break;
- case TRIPLE_TAP: tap_code(KC_RCTL); tap_code(KC_RCTL); break;
- case TRIPLE_HOLD: tap_code(KC_RCTL); register_code(KC_RCTL); break;
- }
-}
-
-void ctl_reset(tap_dance_state_t *state, void *user_data) {
- switch(ctl_state) {
- case SINGLE_HOLD: unregister_code(KC_LCTL); break;
- case DOUBLE_HOLD:
- case TRIPLE_HOLD: unregister_code(KC_RCTL); break;
- }
- ctl_state = 0;
-}
-
-void g_finished(tap_dance_state_t *state, void *user_data) {
- switch (cur_dance(state)) {
- case SINGLE_TAP:
- tap_code16(C(KC_END));
- break;
- case DOUBLE_TAP:
- tap_code16(C(KC_HOME));
- break;
- }
-}
-
-enum {
- TD_LDCTL,
- TD_GUI,
- TD_G,
-};
-
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LDCTL] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ctl_finished, ctl_reset),
- [TD_GUI] = ACTION_TAP_DANCE_DOUBLE(KC_LGUI, KC_RGUI),
- [TD_G] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, g_finished, NULL),
-};
-
-// Layers
-
-const uint16_t PROGMEM keymaps[_LAYER_MAX][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- MY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- TD(TD_LDCTL), TD(TD_GUI), KC_LALT, MY_SPC, KC_RALT, MO(_ADJUST),KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_GAME] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_NO, _______, KC_SPC, _______, _______, _______, _______, _______
- ),
- [_FUNC] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_INS,
- _______, _______, FW_WRD, KC_END, _______, _______, C(KC_INS),KC_PGUP, _______, _______, S(KC_INS),KC_SCRL, KC_PAUS, KC_CALC, KC_END,
- _______, KC_HOME, _______, KC_PGDN, _______, TD(TD_G), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______,
- _______, _______, KC_DEL, _______, _______, BK_WRD, _______, _______, _______, _______, _______, _______, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_LAYERS] = LAYOUT(
- KC_NO, TO(_QWERTY),TO(_GAME), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, _______, KC_NO, KC_NO, KC_NO
- ),
- [_KP] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_ASTERISK, _______, _______, _______, _______, _______, _______,
- KC_NUM, KC_KP_7, KC_KP_8, KC_KP_9, _______, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_MINUS, _______, _______, _______, _______,
- _______, KC_KP_4, KC_KP_5, KC_KP_6, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_PLUS, _______, _______, _______,
- _______, KC_KP_1, KC_KP_2, KC_KP_3, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_SLASH, _______, _______, _______,
- _______, _______, _______, KC_KP_0, KC_KP_DOT, TG(_KP), _______, _______, _______
- ),
- [_SECRETS] = LAYOUT(
- KC_NO, KC_SEC1, KC_SEC2, KC_SEC3, KC_SEC4, KC_SEC5, KC_SEC6, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, _______, KC_NO, KC_NO, KC_NO
- ),
- [_ADJUST] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_INS,
- _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, U_T_AUTO,U_T_AGCR,_______, KC_PSCR, KC_SCRL, KC_PAUS, KC_CALC, KC_END,
- _______, RGB_RMOD,RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, TG(_KP), OSL(_LAYERS), OSL(_SECRETS), _______, _______, KC_MPLY,
- _______, RGB_TOG, KB_MAKE, KB_FLSH, KB_VRSN, KB_BOOT, NK_TOGG, DBG_TOG, _______, _______, _______, _______, KC_VOLU, KC_MUTE,
- _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
- ),
- /*
- [X] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- */
-};
-
-#ifdef _______
-#undef _______
-#endif
-
-#define RGB_NULL 254, 254, 254
-#define RGB_IS_NULL(rgb) ((rgb).r == 254 && (rgb).g == 254 && (rgb).b == 254)
-
-#define DEFAULT_HSV 255, 255, 128
-#define R(COL) { RGB_ ## COL }
-#define _______ R(NULL)
-#define xxxxxxx R(BLACK)
-
-struct layer_rgb PROGMEM rgbs[_LAYER_MAX] = {
- [_QWERTY] = LAYOUT_hsv(LED_FLAG_ALL, RGB_MATRIX_CYCLE_ALL, DEFAULT_HSV),
- [_GAME] = LAYOUT_hsv(LED_FLAG_KEYLIGHT, RGB_MATRIX_SOLID_COLOR, DEFAULT_HSV),
- [_FUNC] = LAYOUT_rgb(LED_FLAG_KEYLIGHT, RGB_LINK_TO_LAYER(_QWERTY),
- R(BLUE), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(BLUE),
- R(BLUE), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, R(BLUE),
- R(BLUE), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, R(BLUE),
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- R(BLUE), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, R(BLUE),
- R(BLUE), _______, _______, _______, _______, _______, _______, _______, _______, _______, R(BLUE),
- R(BLUE), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(RED), R(BLUE)
- ),
- [_LAYERS] = LAYOUT_rgb(LED_FLAG_NONE, RGB_MATRIX_SOLID_COLOR,
- R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN),
- R(CYAN), xxxxxxx, R(RED), R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(CYAN),
- R(CYAN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(CYAN),
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- R(CYAN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(CYAN),
- R(CYAN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(CYAN),
- R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN), R(CYAN)
- ),
- [_KP] = LAYOUT_rgb(LED_FLAG_NONE, RGB_MATRIX_SOLID_COLOR,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(YELLOW),xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, R(WHITE), R(WHITE), R(WHITE), xxxxxxx, xxxxxxx, xxxxxxx, R(WHITE), R(WHITE), R(WHITE), R(YELLOW), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, R(WHITE), R(WHITE), R(WHITE), xxxxxxx, xxxxxxx, xxxxxxx, R(WHITE), R(WHITE), R(WHITE), R(YELLOW), xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, R(WHITE), R(WHITE), R(WHITE), xxxxxxx, xxxxxxx, xxxxxxx, R(WHITE), R(WHITE), R(WHITE), R(YELLOW), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(WHITE), R(YELLOW), R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx
- ),
- [_SECRETS] = LAYOUT_rgb(LED_FLAG_NONE, RGB_MATRIX_SOLID_COLOR,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx,
- xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx
- ),
- [_ADJUST] = LAYOUT_rgb(LED_FLAG_NONE, RGB_MATRIX_SOLID_COLOR,
- R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN),
- R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(GREEN),
- R(GREEN), xxxxxxx, R(BLUE), R(YELLOW), R(BLUE), R(GREEN), R(ORANGE),xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(GREEN),
- xxxxxxx, R(MAGENTA),R(YELLOW), R(MAGENTA),R(GREEN),R(ORANGE),xxxxxxx, xxxxxxx, R(CORAL), R(CORAL), R(CORAL), xxxxxxx, xxxxxxx, xxxxxxx,
- R(GREEN), xxxxxxx, R(WHITE), R(CYAN), R(CYAN), R(CYAN), R(CYAN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(GREEN),
- R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(GREEN),
- R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN)
- ),
- /*
- [X] = LAYOUT_rgb(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- */
-};
-
-#undef _______
-#define _______ KC_TRANS
-
-static void set_rgb_layer(int layer) {
- const struct layer_rgb *cur = &rgbs[layer];
-
- switch (cur->type) {
- case type_hsv:
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT ; i++) {
- if (!(g_led_config.flags[i] & cur->flags))
- rgb_matrix_set_color(i, 0, 0, 0);
- }
- rgb_matrix_set_flags(cur->flags);
- if (cur->mode >= RGB_MATRIX_EFFECT_MAX)
- rgb_matrix_mode_noeeprom(rgbs[cur->mode - RGB_MATRIX_EFFECT_MAX].mode);
- else
- rgb_matrix_mode_noeeprom(cur->mode);
- rgb_matrix_sethsv_noeeprom(cur->hsv.h, cur->hsv.s, cur->hsv.v);
- break;
- case type_rgb:
- rgb_matrix_set_flags(cur->flags);
- if (cur->mode >= RGB_MATRIX_EFFECT_MAX)
- rgb_matrix_mode_noeeprom(rgbs[cur->mode - RGB_MATRIX_EFFECT_MAX].mode);
- else
- rgb_matrix_mode_noeeprom(cur->mode);
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
- const RGB *m = &cur->rgb[i];
- if (!RGB_IS_NULL(*m))
- rgb_matrix_set_color(i, m->r, m->g, m->b);
- }
- break;
- }
-}
-
-void leader_end_user(void) {
- if (leader_sequence_one_key(KC_K)) {
- layer_invert(_KP);
- }
- if (leader_sequence_one_key(KC_G)) {
- layer_invert(_GAME);
- }
- if (leader_sequence_one_key(KC_KP_5)) {
- layer_invert(_KP);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_1)) {
- send_secret_string(0);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_2)) {
- send_secret_string(1);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_3)) {
- send_secret_string(2);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_4)) {
- send_secret_string(3);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_5)) {
- send_secret_string(4);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_6)) {
- send_secret_string(5);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_M)) {
- send_secret_string(0);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_COMM)) {
- send_secret_string(1);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_DOT)) {
- send_secret_string(2);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_J)) {
- send_secret_string(3);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_K)) {
- send_secret_string(4);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_L)) {
- send_secret_string(5);
- }
-}
-
-// Runs just one time when the keyboard initializes.
-void matrix_init_keymap(void) {
- // force numlock on upon startup
- if (!NUMLOCK_ON) {
- tap_code(KC_NUM_LOCK);
- }
-};
-
-// Runs constantly in the background, in a loop.
-void matrix_scan_keymap(void) {
- if (rgb_matrix_get_flags() != LED_FLAG_NONE && timer_elapsed(rgb_timer) > 1000) {
- rgb_idle_seconds++;
- rgb_timer = timer_read();
- }
- if (rgb_idle_seconds > IDLE_TIMEOUT) {
- rgb_matrix_disable_noeeprom();
- rgb_idle_seconds = 0;
- }
- if (IS_LAYER_ON(_KP)) {
- if (NUMLOCK_ON)
- rgb_matrix_set_color(15, RGB_GOLD);
- else
- rgb_matrix_set_color(15, 0, 0, 0);
- }
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- dprintf("layer: %d\n", get_highest_layer(state));
- set_rgb_layer(get_highest_layer(state));
-#ifdef AUTO_SHIFT_ENABLE
- autoshift_enable();
-#endif
- if (layer_state_cmp(state, _GAME)) {
- save_layer = _GAME;
-#ifdef AUTO_SHIFT_ENABLE
- autoshift_disable();
-#endif
- }
- else if (layer_state_cmp(state, _QWERTY))
- save_layer = _QWERTY;
- return state;
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- struct layer_rgb *rgb_base_layer = &rgbs[save_layer];
-
- rgb_idle_seconds = 0;
- rgb_matrix_enable_noeeprom();
-
- switch (keycode) {
- // custom handle QK_GESC to emulate auto shift on it
- case QK_GRAVE_ESCAPE:
-#ifdef AUTO_SHIFT_ENABLE
- if (get_autoshift_state()) {
- static uint16_t gesc_timer;
- if (record->event.pressed)
- gesc_timer = timer_read();
- else {
- if (timer_elapsed(gesc_timer) > AUTO_SHIFT_TIMEOUT || MODS_SHIFT) {
- tap_code16(S(KC_GRV));
- } else if (MODS_GUI)
- tap_code(KC_GRV);
- else
- tap_code(KC_ESC);
- }
- return false;
- }
-#else // AUTO_SHIFT_ENABLE
- return true;
-#endif // AUTO_SHIFT_ENABLE
- break;
-
- case U_T_AUTO:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL) {
- TOGGLE_FLAG_AND_PRINT(usb_extra_manual, "USB extra port manual mode");
- }
- return false;
- case U_T_AGCR:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL) {
- TOGGLE_FLAG_AND_PRINT(usb_gcr_auto, "USB GCR auto mode");
- }
- return false;
- case DBG_TOG:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_enable, "Debug mode");
- }
- return false;
- case DBG_MTRX:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_matrix, "Debug matrix");
- }
- return false;
- case DBG_KBD:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_keyboard, "Debug keyboard");
- }
- return false;
- case DBG_MOU:
- if (record->event.pressed) {
- TOGGLE_FLAG_AND_PRINT(debug_mouse, "Debug mouse");
- }
- return false;
- case RGB_MOD:
- if (record->event.pressed) {
- if (++rgb_base_layer->mode >= RGB_MATRIX_EFFECT_MAX)
- rgb_base_layer->mode = RGB_MATRIX_NONE;
- set_rgb_layer(save_layer);
- }
- return false;
- case RGB_RMOD:
- if (record->event.pressed) {
- if (--rgb_base_layer->mode <= RGB_MATRIX_NONE)
- rgb_base_layer->mode = RGB_MATRIX_EFFECT_MAX - 1;
- set_rgb_layer(save_layer);
- }
- return false;
- case RGB_HUI:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.h > 235)
- rgb_base_layer->hsv.h = 255;
- else
- rgb_base_layer->hsv.h += 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_HUD:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.h < 20)
- rgb_base_layer->hsv.h = 0;
- else
- rgb_base_layer->hsv.h -= 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_SAI:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.s > 235)
- rgb_base_layer->hsv.s = 255;
- else
- rgb_base_layer->hsv.s += 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_SAD:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.s < 20)
- rgb_base_layer->hsv.s = 0;
- else
- rgb_base_layer->hsv.s -= 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_VAI:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.v > 235)
- rgb_base_layer->hsv.v = 255;
- else
- rgb_base_layer->hsv.v += 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_VAD:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.v < 20)
- rgb_base_layer->hsv.v = 0;
- else
- rgb_base_layer->hsv.v -= 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_TOG:
- if (record->event.pressed) {
- switch (rgb_base_layer->flags) {
- case LED_FLAG_ALL:
- rgb_base_layer->flags = LED_FLAG_KEYLIGHT;
- break;
- case LED_FLAG_KEYLIGHT:
- rgb_base_layer->flags = LED_FLAG_UNDERGLOW;
- break;
- case LED_FLAG_UNDERGLOW:
- rgb_base_layer->flags = LED_FLAG_NONE;
- break;
- default:
- rgb_base_layer->flags = LED_FLAG_ALL;
- break;
- }
- }
- set_rgb_layer(save_layer);
- return false;
- default:
- return true; //Process all other keycodes normally
- }
- return true;
-}
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins/rgb_matrix.h b/keyboards/massdrop/alt/keymaps/jdelkins/rgb_matrix.h
deleted file mode 100644
index 146de00447..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins/rgb_matrix.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* RGB LED Layout on the Massdrop ALT
- *
- * ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
- * │ │
- * │ 100 99 98 97 96 95 94 93 92 91 90 89 88 │
- * │ 101 87 |
- * │ ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬────────────┬───────┐ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ BackSpace │ Home │ │
- * │ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 10 │ 11 │ 12 │ 13 │ 14 │ 15 │ │
- * │ 102 ├───────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬─────────┼───────┤ 86 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ Del │ │
- * │ │ 16 │ 17 │ 18 │ 19 │ 20 │ 21 │ 22 │ 23 │ 24 │ 25 │ 26 │ 27 │ 28 │ 29 │ 30 │ │
- * │ 103 ├──────────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─────────┼───────┤ 85 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ Ctrl/Esc │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Return │ PgUp │ │
- * │ │ 31 │ 32 │ 33 │ 34 │ 35 │ 36 │ 37 │ 38 │ 39 │ 40 │ 41 │ 42 │ 43 │ 44 │ │
- * │ 104 ├────────────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴───────┬───────┼───────┤ 84 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift │ Up │ PgDn │ │
- * │ │ 45 │ 46 │ 47 │ 48 │ 49 │ 50 │ 51 │ 52 │ 53 │ 54 │ 55 │ 56 │ 57 │ 58 │ │
- * │ 105 ├─────────┬─────┴───┬───┴─────┬─┴───────┴───────┴───────┴───────┴───────┴─────┬─┴───────┼───────┴─┬──┬───────┼───────┼───────┤ 83 │
- * │ │ │ │ │ │ │ │▒▒│ │ │ │ │
- * │ │ Ctrl │ GUI │ Alt │ Space │ Alt │ Func │▒▒│ Left │ Down │ Right │ │
- * │ │ 59 │ 60 │ 61 │ 62 │ 63 │ 64 │▒▒│ 65 │ 66 │ 67 │ │
- * │ └─────────┴─────────┴─────────┴───────────────────────────────────────────────┴─────────┴─────────┴──┴───────┴───────┴───────┘ │
- * │ 68 82 │
- * │ 69 70 71 72 73 74 75 76 77 78 79 80 81 │
- * │ │
- * └────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
- */
-
-enum layer_rgb_type {
- type_hsv,
- type_rgb,
-};
-
-#define RGB_LINK_TO_LAYER(layer) (layer + RGB_MATRIX_EFFECT_MAX)
-
-struct layer_rgb {
- uint8_t type;
- led_flags_t flags;
- uint8_t mode;
- union {
- HSV hsv;
- RGB rgb[RGB_MATRIX_LED_COUNT];
- };
-};
-
-#define LAYOUT_rgb(_flags, _mode, \
- R101, R100, R99, R98, R97, R96, R95, R94, R93, R92, R91, R90, R89, R88, R87, \
- R102, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R86, \
- R103, R16, R17, R18, R19, R20, R21, R22, R23, R24, R25, R26, R27, R28, R29, R30, R85, \
- R31, R32, R33, R34, R35, R36, R37, R38, R39, R40, R41, R42, R43, R44, \
- R104, R45, R46, R47, R48, R49, R50, R51, R52, R53, R54, R55, R56, R57, R58, R84, \
- R105, R59, R60, R61, R62, R63, R64, R65, R66, R67, R83, \
- R68, R69, R70, R71, R72, R73, R74, R75, R76, R77, R78, R79, R80, R81, R82 \
- ) (struct layer_rgb) { .type = type_rgb, .flags = _flags, .mode = _mode, .rgb = { \
- R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, \
- R22, R23, R24, R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40, \
- R41, R42, R43, R44, R45, R46, R47, R48, R49, R50, R51, R52, R53, R54, R55, R56, R57, R58, R59, \
- R60, R61, R62, R63, R64, R65, R66, R67, R68, R69, R70, R71, R72, R73, R74, R75, R76, R77, R78, \
- R79, R80, R81, R82, R83, R84, R85, R86, R87, R88, R89, R90, R91, R92, R93, R94, R95, R96, R97, \
- R98, R99, R100, R101, R102, R103, R104, R105 \
- }}
-
-#define LAYOUT_hsv(_flags, _mode, _hsv) \
- (struct layer_rgb) { \
- .type = type_hsv, \
- .flags = _flags, \
- .mode = _mode, \
- .hsv = {_hsv} \
- }
-
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins/rules.mk b/keyboards/massdrop/alt/keymaps/jdelkins/rules.mk
deleted file mode 100644
index 17d80b8ca2..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins/rules.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-ifeq ($(OS),Windows_NT)
- PROGRAM_CMD = bin/mdloader_windows --first --download $(TARGET).hex --restart
-else
- UNAME_S := $(shell uname -s)
- ifeq ($(UNAME_S),Darwin)
- PROGRAM_CMD = bin/mdloader_mac --first --download $(TARGET).hex --restart
- else
- PROGRAM_CMD = sudo bin/mdloader_linux --first --download $(TARGET).hex --restart
- endif
-endif
-
-LEADER_ENABLE = yes
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-NKRO_ENABLE = no
-TAP_DANCE_ENABLE = yes
-AUTO_SHIFT_ENABLE = no
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins_ss/config.h b/keyboards/massdrop/alt/keymaps/jdelkins_ss/config.h
deleted file mode 100644
index 20efebec16..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins_ss/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define RGB_MATRIX_DEFAULT_SPD 20
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins_ss/keymap.c b/keyboards/massdrop/alt/keymaps/jdelkins_ss/keymap.c
deleted file mode 100644
index c974fb9e2b..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins_ss/keymap.c
+++ /dev/null
@@ -1,279 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include "print.h"
-
-// Idle handling
-
-#define IDLE_TIMEOUT 360
-uint16_t rgb_idle_seconds = 0;
-uint16_t rgb_timer;
-uint8_t save_layer;
-
-#define MODS_SHIFT (get_mods() & MOD_MASK_SHIFT)
-#define MODS_CTRL (get_mods() & MOD_MASK_CTRL)
-
-// Macro keycodes
-
-enum alt_keycodes {
- KB_BOOT = SAFE_RANGE,
-};
-
-enum layers {
- _QWERTY,
- _ADJUST,
-};
-
-// Layers
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(_ADJUST),KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_ADJUST] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_INS,
- _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, KC_CALC, KC_END,
- _______, RGB_RMOD,RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
- _______, RGB_TOG, _______, _______, _______, KB_BOOT, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE,
- _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
- ),
- /*
- [X] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- */
-};
-
-#ifdef _______
-#undef _______
-#endif
-
-#define RGB_NULL 254, 254, 254
-#define RGB_IS_NULL(rgb) ((rgb).r == 254 && (rgb).g == 254 && (rgb).b == 254)
-
-#define DEFAULT_HSV 255, 255, 128
-#define R(COL) { RGB_ ## COL }
-#define _______ R(NULL)
-#define xxxxxxx R(BLACK)
-
-struct layer_rgb PROGMEM rgbs[] = {
- [_QWERTY] = LAYOUT_hsv(LED_FLAG_ALL, RGB_MATRIX_CYCLE_ALL, DEFAULT_HSV),
- [_ADJUST] = LAYOUT_rgb(LED_FLAG_NONE, RGB_MATRIX_SOLID_COLOR,
- R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN),
- R(GREEN), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(WHITE), R(GREEN),
- R(GREEN), xxxxxxx, R(BLUE), R(YELLOW), R(BLUE), R(GREEN), R(ORANGE),xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(GREEN),
- xxxxxxx, R(MAGENTA),R(YELLOW), R(MAGENTA),R(GREEN),R(ORANGE),xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(BLUE),
- R(GREEN), xxxxxxx, R(WHITE), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(YELLOW),R(ORANGE), R(GREEN),
- R(GREEN), xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, xxxxxxx, R(RED), R(YELLOW),R(RED), R(GREEN),
- R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN), R(GREEN)
- ),
- /*
- [X] = LAYOUT_rgb(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- */
-};
-
-#undef _______
-#define _______ KC_TRANS
-
-static void set_rgb_layer(int layer) {
- const struct layer_rgb *cur = &rgbs[layer];
-
- switch (cur->type) {
- case type_hsv:
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT ; i++) {
- if (!(g_led_config.flags[i] & cur->flags))
- rgb_matrix_set_color(i, 0, 0, 0);
- }
- rgb_matrix_set_flags(cur->flags);
- if (cur->mode >= RGB_MATRIX_EFFECT_MAX)
- rgb_matrix_mode_noeeprom(rgbs[cur->mode - RGB_MATRIX_EFFECT_MAX].mode);
- else
- rgb_matrix_mode_noeeprom(cur->mode);
- rgb_matrix_sethsv_noeeprom(cur->hsv.h, cur->hsv.s, cur->hsv.v);
- break;
- case type_rgb:
- rgb_matrix_set_flags(cur->flags);
- if (cur->mode >= RGB_MATRIX_EFFECT_MAX)
- rgb_matrix_mode_noeeprom(rgbs[cur->mode - RGB_MATRIX_EFFECT_MAX].mode);
- else
- rgb_matrix_mode_noeeprom(cur->mode);
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
- const RGB *m = &cur->rgb[i];
- if (!RGB_IS_NULL(*m))
- rgb_matrix_set_color(i, m->r, m->g, m->b);
- }
- break;
- }
-}
-
-// Runs just one time when the keyboard initializes.
-void matrix_init_keymap(void) {
- set_rgb_layer(_QWERTY);
- // force numlock on upon startup
- if (!host_keyboard_led_state().num_lock) {
- tap_code(KC_NUM_LOCK);
- }
-};
-
-// Runs constantly in the background, in a loop.
-void matrix_scan_keymap(void) {
- if (rgb_matrix_get_flags() != LED_FLAG_NONE && timer_elapsed(rgb_timer) > 1000) {
- rgb_idle_seconds++;
- rgb_timer = timer_read();
- }
- if (rgb_idle_seconds > IDLE_TIMEOUT) {
- rgb_matrix_disable_noeeprom();
- rgb_idle_seconds = 0;
- }
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- set_rgb_layer(get_highest_layer(state));
- if (layer_state_cmp(state, _QWERTY))
- save_layer = _QWERTY;
- return state;
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- static uint32_t boot_timer;
- struct layer_rgb *rgb_base_layer = &rgbs[save_layer];
- rgb_idle_seconds = 0;
- rgb_matrix_enable_noeeprom();
-
- switch (keycode) {
- case KB_BOOT:
- if (!get_mods()) {
- if (record->event.pressed) {
- boot_timer = timer_read32();
- } else {
- if (timer_elapsed32(boot_timer) >= 750) {
- reset_keyboard();
- }
- }
- return false;
- }
- break;
- case RGB_MOD:
- if (record->event.pressed) {
- if (++rgb_base_layer->mode >= RGB_MATRIX_EFFECT_MAX)
- rgb_base_layer->mode = RGB_MATRIX_NONE;
- set_rgb_layer(save_layer);
- }
- return false;
- case RGB_RMOD:
- if (record->event.pressed) {
- if (--rgb_base_layer->mode <= RGB_MATRIX_NONE)
- rgb_base_layer->mode = RGB_MATRIX_EFFECT_MAX - 1;
- set_rgb_layer(save_layer);
- }
- return false;
- case RGB_HUI:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.h > 235)
- rgb_base_layer->hsv.h = 255;
- else
- rgb_base_layer->hsv.h += 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_HUD:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.h < 20)
- rgb_base_layer->hsv.h = 0;
- else
- rgb_base_layer->hsv.h -= 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_SAI:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.s > 235)
- rgb_base_layer->hsv.s = 255;
- else
- rgb_base_layer->hsv.s += 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_SAD:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.s < 20)
- rgb_base_layer->hsv.s = 0;
- else
- rgb_base_layer->hsv.s -= 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_VAI:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.v > 235)
- rgb_base_layer->hsv.v = 255;
- else
- rgb_base_layer->hsv.v += 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_VAD:
- if (rgb_base_layer->type == type_hsv && record->event.pressed) {
- if (rgb_base_layer->hsv.v < 20)
- rgb_base_layer->hsv.v = 0;
- else
- rgb_base_layer->hsv.v -= 20;
- }
- set_rgb_layer(save_layer);
- return false;
- case RGB_TOG:
- if (record->event.pressed) {
- switch (rgb_base_layer->flags) {
- case LED_FLAG_ALL:
- rgb_base_layer->flags = LED_FLAG_KEYLIGHT;
- break;
- case LED_FLAG_KEYLIGHT:
- rgb_base_layer->flags = LED_FLAG_UNDERGLOW;
- break;
- case LED_FLAG_UNDERGLOW:
- rgb_base_layer->flags = LED_FLAG_NONE;
- break;
- default:
- rgb_base_layer->flags = LED_FLAG_ALL;
- break;
- }
- }
- set_rgb_layer(save_layer);
- return false;
- default:
- return true; //Process all other keycodes normally
- }
- return true;
-}
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins_ss/rgb_matrix.h b/keyboards/massdrop/alt/keymaps/jdelkins_ss/rgb_matrix.h
deleted file mode 100644
index 146de00447..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins_ss/rgb_matrix.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- Copyright 2020 Joel Elkins <joel@elkins.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* RGB LED Layout on the Massdrop ALT
- *
- * ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
- * │ │
- * │ 100 99 98 97 96 95 94 93 92 91 90 89 88 │
- * │ 101 87 |
- * │ ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬────────────┬───────┐ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ BackSpace │ Home │ │
- * │ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 10 │ 11 │ 12 │ 13 │ 14 │ 15 │ │
- * │ 102 ├───────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬─────────┼───────┤ 86 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ Del │ │
- * │ │ 16 │ 17 │ 18 │ 19 │ 20 │ 21 │ 22 │ 23 │ 24 │ 25 │ 26 │ 27 │ 28 │ 29 │ 30 │ │
- * │ 103 ├──────────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─────────┼───────┤ 85 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ Ctrl/Esc │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Return │ PgUp │ │
- * │ │ 31 │ 32 │ 33 │ 34 │ 35 │ 36 │ 37 │ 38 │ 39 │ 40 │ 41 │ 42 │ 43 │ 44 │ │
- * │ 104 ├────────────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴──┬────┴───────┬───────┼───────┤ 84 │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * │ │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift │ Up │ PgDn │ │
- * │ │ 45 │ 46 │ 47 │ 48 │ 49 │ 50 │ 51 │ 52 │ 53 │ 54 │ 55 │ 56 │ 57 │ 58 │ │
- * │ 105 ├─────────┬─────┴───┬───┴─────┬─┴───────┴───────┴───────┴───────┴───────┴─────┬─┴───────┼───────┴─┬──┬───────┼───────┼───────┤ 83 │
- * │ │ │ │ │ │ │ │▒▒│ │ │ │ │
- * │ │ Ctrl │ GUI │ Alt │ Space │ Alt │ Func │▒▒│ Left │ Down │ Right │ │
- * │ │ 59 │ 60 │ 61 │ 62 │ 63 │ 64 │▒▒│ 65 │ 66 │ 67 │ │
- * │ └─────────┴─────────┴─────────┴───────────────────────────────────────────────┴─────────┴─────────┴──┴───────┴───────┴───────┘ │
- * │ 68 82 │
- * │ 69 70 71 72 73 74 75 76 77 78 79 80 81 │
- * │ │
- * └────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
- */
-
-enum layer_rgb_type {
- type_hsv,
- type_rgb,
-};
-
-#define RGB_LINK_TO_LAYER(layer) (layer + RGB_MATRIX_EFFECT_MAX)
-
-struct layer_rgb {
- uint8_t type;
- led_flags_t flags;
- uint8_t mode;
- union {
- HSV hsv;
- RGB rgb[RGB_MATRIX_LED_COUNT];
- };
-};
-
-#define LAYOUT_rgb(_flags, _mode, \
- R101, R100, R99, R98, R97, R96, R95, R94, R93, R92, R91, R90, R89, R88, R87, \
- R102, R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R86, \
- R103, R16, R17, R18, R19, R20, R21, R22, R23, R24, R25, R26, R27, R28, R29, R30, R85, \
- R31, R32, R33, R34, R35, R36, R37, R38, R39, R40, R41, R42, R43, R44, \
- R104, R45, R46, R47, R48, R49, R50, R51, R52, R53, R54, R55, R56, R57, R58, R84, \
- R105, R59, R60, R61, R62, R63, R64, R65, R66, R67, R83, \
- R68, R69, R70, R71, R72, R73, R74, R75, R76, R77, R78, R79, R80, R81, R82 \
- ) (struct layer_rgb) { .type = type_rgb, .flags = _flags, .mode = _mode, .rgb = { \
- R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, \
- R22, R23, R24, R25, R26, R27, R28, R29, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, R40, \
- R41, R42, R43, R44, R45, R46, R47, R48, R49, R50, R51, R52, R53, R54, R55, R56, R57, R58, R59, \
- R60, R61, R62, R63, R64, R65, R66, R67, R68, R69, R70, R71, R72, R73, R74, R75, R76, R77, R78, \
- R79, R80, R81, R82, R83, R84, R85, R86, R87, R88, R89, R90, R91, R92, R93, R94, R95, R96, R97, \
- R98, R99, R100, R101, R102, R103, R104, R105 \
- }}
-
-#define LAYOUT_hsv(_flags, _mode, _hsv) \
- (struct layer_rgb) { \
- .type = type_hsv, \
- .flags = _flags, \
- .mode = _mode, \
- .hsv = {_hsv} \
- }
-
diff --git a/keyboards/massdrop/alt/keymaps/jdelkins_ss/rules.mk b/keyboards/massdrop/alt/keymaps/jdelkins_ss/rules.mk
deleted file mode 100644
index e7fb783e61..0000000000
--- a/keyboards/massdrop/alt/keymaps/jdelkins_ss/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-ifeq ($(OS),Windows_NT)
- PROGRAM_CMD = bin/mdloader_windows --first --download $(TARGET).hex --restart
-else
- UNAME_S := $(shell uname -s)
- ifeq ($(UNAME_S),Darwin)
- PROGRAM_CMD = bin/mdloader_mac --first --download $(TARGET).hex --restart
- else
- PROGRAM_CMD = sudo bin/mdloader_linux --first --download $(TARGET).hex --restart
- endif
-endif
-
-USER_NAME := jdelkins
diff --git a/keyboards/massdrop/alt/keymaps/xulkal/config.h b/keyboards/massdrop/alt/keymaps/xulkal/config.h
deleted file mode 100644
index a078fece0f..0000000000
--- a/keyboards/massdrop/alt/keymaps/xulkal/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define RGB_MATRIX_TOG_LAYERS
diff --git a/keyboards/massdrop/alt/keymaps/xulkal/keymap.c b/keyboards/massdrop/alt/keymaps/xulkal/keymap.c
deleted file mode 100644
index 17fc65cbfc..0000000000
--- a/keyboards/massdrop/alt/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,79 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-enum ctrl_keycodes {
- U_T_AUTO = SAFE_RANGE, //USB Extra Port Toggle Auto Detect / Always Active
- U_T_AGCR, //USB Toggle Automatic GCR control
- DBG_TOG, //DEBUG Toggle On / Off
- DBG_MTRX, //DEBUG Toggle Matrix Prints
- DBG_KBD, //DEBUG Toggle Keyboard Prints
- DBG_MOU, //DEBUG Toggle Mouse Prints
-};
-
-#define TG_NKRO MAGIC_TOGGLE_NKRO //Toggle 6KRO / NKRO mode
-
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, TD_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, TD_COMM, KC_DOT, KC_SLSH, SC_RSPC, KC_UP, KC_PGDN,
- SC_LCPO, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LOWER, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LOWER, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-#endif
-
- [_LOWER] = LAYOUT(
- _______, RGB_RMOD,RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- RGB_SPI, RGB_SAI, RGB_VAI, RGB_HUI, QK_BOOT, QWERTY, _______, U_T_AUTO,U_T_AGCR,_______, _______, _______, _______, _______, _______,
- RGB_SPD, RGB_SAD, RGB_VAD, RGB_HUD, RGBRST, GAME, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, TG_NKRO, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
-
-#define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSFT) || get_mods() & MOD_BIT(KC_RSFT))
-#define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTL))
-#define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record)
-{
- switch (keycode) {
- case U_T_AUTO:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL)
- TOGGLE_FLAG_AND_PRINT(usb_extra_manual, "USB extra port manual mode");
- return false;
- case U_T_AGCR:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL)
- TOGGLE_FLAG_AND_PRINT(usb_gcr_auto, "USB GCR auto mode");
- return false;
- case DBG_TOG:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_enable, "Debug mode");
- return false;
- case DBG_MTRX:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_matrix, "Debug matrix");
- return false;
- case DBG_KBD:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_keyboard, "Debug keyboard");
- return false;
- case DBG_MOU:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_mouse, "Debug mouse");
- return false;
- }
-
- return true;
-}
diff --git a/keyboards/massdrop/alt/keymaps/xulkal/rules.mk b/keyboards/massdrop/alt/keymaps/xulkal/rules.mk
deleted file mode 100644
index f78fb3237b..0000000000
--- a/keyboards/massdrop/alt/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-DISABLE_LTO = yes
diff --git a/keyboards/massdrop/ctrl/keymaps/xulkal/config.h b/keyboards/massdrop/ctrl/keymaps/xulkal/config.h
deleted file mode 100644
index a078fece0f..0000000000
--- a/keyboards/massdrop/ctrl/keymaps/xulkal/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define RGB_MATRIX_TOG_LAYERS
diff --git a/keyboards/massdrop/ctrl/keymaps/xulkal/keymap.c b/keyboards/massdrop/ctrl/keymaps/xulkal/keymap.c
deleted file mode 100644
index 660b76e2a8..0000000000
--- a/keyboards/massdrop/ctrl/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,92 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-enum ctrl_keycodes {
- U_T_AUTO = SAFE_RANGE, //USB Extra Port Toggle Auto Detect / Always Active
- U_T_AGCR, //USB Toggle Automatic GCR control
- DBG_TOG, //DEBUG Toggle On / Off
- DBG_MTRX, //DEBUG Toggle Matrix Prints
- DBG_KBD, //DEBUG Toggle Keyboard Prints
- DBG_MOU, //DEBUG Toggle Mouse Prints
-};
-
-#define TG_NKRO MAGIC_TOGGLE_NKRO //Toggle 6KRO / NKRO mode
-
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
- QK_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, TD_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, TD_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, TD_COMM, KC_DOT, KC_SLSH, SC_RSPC, KC_UP,
- SC_LCPO, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LOWER, KC_APP, SC_RCPC, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LOWER, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-#endif
-
- [_LOWER] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______,
- _______, RGB_RMOD,RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU,
- RGB_SPI, RGB_SAI, RGB_VAI, RGB_HUI, QK_BOOT, QWERTY, _______, U_T_AUTO,U_T_AGCR,_______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD,
- RGB_SPD, RGB_SAD, RGB_VAD, RGB_HUD, RGBRST, GAME, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, TG_NKRO, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /*
- [X] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, TG_NKRO, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- */
-};
-
-#define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSFT) || get_mods() & MOD_BIT(KC_RSFT))
-#define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTL))
-#define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record)
-{
- switch (keycode) {
- case U_T_AUTO:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL)
- TOGGLE_FLAG_AND_PRINT(usb_extra_manual, "USB extra port manual mode");
- return false;
- case U_T_AGCR:
- if (record->event.pressed && MODS_SHIFT && MODS_CTRL)
- TOGGLE_FLAG_AND_PRINT(usb_gcr_auto, "USB GCR auto mode");
- return false;
- case DBG_TOG:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_enable, "Debug mode");
- return false;
- case DBG_MTRX:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_matrix, "Debug matrix");
- return false;
- case DBG_KBD:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_keyboard, "Debug keyboard");
- return false;
- case DBG_MOU:
- if (record->event.pressed)
- TOGGLE_FLAG_AND_PRINT(debug_mouse, "Debug mouse");
- return false;
- }
-
- return true;
-}
diff --git a/keyboards/massdrop/ctrl/keymaps/xulkal/rules.mk b/keyboards/massdrop/ctrl/keymaps/xulkal/rules.mk
deleted file mode 100644
index f78fb3237b..0000000000
--- a/keyboards/massdrop/ctrl/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-DISABLE_LTO = yes
diff --git a/keyboards/matchstickworks/southpad/info.json b/keyboards/matchstickworks/southpad/info.json
index 887c0484cb..dcf34cac3c 100644
--- a/keyboards/matchstickworks/southpad/info.json
+++ b/keyboards/matchstickworks/southpad/info.json
@@ -1,50 +1,4 @@
{
- "keyboard_name": "SouthPad",
"manufacturer": "MatchstickWorks",
- "url": "",
"maintainer": "MatchstickWorks",
- "usb": {
- "vid": "0xFEED",
- "pid": "0x6060",
- "device_version": "0.0.1"
- },
- "matrix_pins": {
- "cols": ["B0", "B1", "B2", "B4"],
- "rows": ["B3", "B5", "B6", "B7", "C7", "C6"]
- },
- "diode_direction": "COL2ROW",
- "processor": "atmega32u2",
- "bootloader": "atmel-dfu",
- "layouts": {
- "LAYOUT_numpad_6x4_southpaw": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
-
- {"matrix": [2, 1], "x": 1, "y": 2},
- {"matrix": [2, 2], "x": 2, "y": 2},
- {"matrix": [2, 3], "x": 3, "y": 2},
- {"matrix": [2, 0], "x": 0, "y": 2, "h": 2},
-
- {"matrix": [3, 1], "x": 1, "y": 3},
- {"matrix": [3, 2], "x": 2, "y": 3},
- {"matrix": [3, 3], "x": 3, "y": 3},
-
- {"matrix": [4, 1], "x": 1, "y": 4},
- {"matrix": [4, 2], "x": 2, "y": 4},
- {"matrix": [4, 3], "x": 3, "y": 4},
- {"matrix": [4, 0], "x": 0, "y": 4, "h": 2},
-
- {"matrix": [5, 1], "x": 1, "y": 5},
- {"matrix": [5, 3], "x": 2, "y": 5, "w": 2}
- ]
- }
- }
-}
+} \ No newline at end of file
diff --git a/keyboards/matchstickworks/southpad/keymaps/default/keymap.c b/keyboards/matchstickworks/southpad/keymaps/default/keymap.c
deleted file mode 100644
index 6d0f1252d4..0000000000
--- a/keyboards/matchstickworks/southpad/keymaps/default/keymap.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2021 Logan Butler
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_numpad_6x4_southpaw( /* Base */
- KC_BSPC, KC_EQL, KC_LPRN, KC_RPRN,
- KC_PMNS, KC_PAST, KC_PSLS, KC_NUM,
- KC_P9, KC_P8, KC_P7,
- KC_PPLS, KC_P6, KC_P5, KC_P4,
- KC_P3, KC_P2, KC_P1,
- KC_PENT, KC_PDOT, KC_P0
- ),
-};
diff --git a/keyboards/matchstickworks/southpad/readme.md b/keyboards/matchstickworks/southpad/readme.md
deleted file mode 100644
index 8c8007c2e7..0000000000
--- a/keyboards/matchstickworks/southpad/readme.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# SouthPad
-
-![Southpad](https://i.imgur.com/Wl71thnh.jpg)
-
-This is a left-handed (or mirrored) numberpad with USB-C connections.
-
-Default layout is such:
-
-![SouthPad Layout](https://i.imgur.com/jc7T2jl.jpg)
-
-* Keyboard Maintainer: [Logan Butler](https://github.com/MatchstickWorks)
-* Hardware Supported: SouthPad PCB
-* Hardware Availability: Either via [my Etsy Store](https://www.etsy.com/shop/MatchstickWorksShop) or by messaging directly
-
-Getting the board into bootloader mode:
-
-In order to flash the firmware to this board, simply press the Reset button on the back of the PCB. You should head a USB disconnect and reconnect sound shortly following.
-
-Make example for this keyboard (after setting up your build environment):
-
- make matchstickworks/southpad:default
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/matchstickworks/southpad/rev1/info.json b/keyboards/matchstickworks/southpad/rev1/info.json
new file mode 100644
index 0000000000..15db9823b1
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev1/info.json
@@ -0,0 +1,55 @@
+{
+ "keyboard_name": "SouthPad",
+ "processor": "atmega32u2",
+ "bootloader": "atmel-dfu",
+ "usb": {
+ "vid": "0xFEED",
+ "pid": "0x6060",
+ "device_version": "0.0.1"
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "cols": ["B0", "B1", "B2", "B4"],
+ "rows": ["B3", "B5", "B6", "B7", "C7", "C6"]
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1, "y": 1},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+
+ {"matrix": [2, 1], "x": 1, "y": 2},
+ {"matrix": [2, 2], "x": 2, "y": 2},
+ {"matrix": [2, 3], "x": 3, "y": 2},
+ {"matrix": [2, 0], "x": 0, "y": 2, "h": 2},
+
+ {"matrix": [3, 1], "x": 1, "y": 3},
+ {"matrix": [3, 2], "x": 2, "y": 3},
+ {"matrix": [3, 3], "x": 3, "y": 3},
+
+ {"matrix": [4, 1], "x": 1, "y": 4},
+ {"matrix": [4, 2], "x": 2, "y": 4},
+ {"matrix": [4, 3], "x": 3, "y": 4},
+ {"matrix": [4, 0], "x": 0, "y": 4, "h": 2},
+
+ {"matrix": [5, 1], "x": 1, "y": 5},
+ {"matrix": [5, 3], "x": 2, "y": 5, "w": 2}
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/keyboards/matchstickworks/southpad/rev1/keymaps/default/keymap.c b/keyboards/matchstickworks/southpad/rev1/keymaps/default/keymap.c
new file mode 100644
index 0000000000..7d5d5cf2b3
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev1/keymaps/default/keymap.c
@@ -0,0 +1,27 @@
+/* Copyright 2021 Logan Butler
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT( /* Base */
+ KC_BSPC, KC_EQL, KC_LPRN, KC_RPRN,
+ KC_PMNS, KC_PAST, KC_PSLS, KC_NUM,
+ KC_P9, KC_P8, KC_P7,
+ KC_PPLS, KC_P6, KC_P5, KC_P4,
+ KC_P3, KC_P2, KC_P1,
+ KC_PENT, KC_PDOT, KC_P0
+ ),
+}; \ No newline at end of file
diff --git a/keyboards/matchstickworks/southpad/rev1/readme.md b/keyboards/matchstickworks/southpad/rev1/readme.md
new file mode 100644
index 0000000000..20b5a58085
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev1/readme.md
@@ -0,0 +1,23 @@
+# SouthPad
+
+![Southpad](https://i.imgur.com/Wl71thnh.jpg)
+
+This is a left-handed (or mirrored) numberpad with USB-C connections.
+
+Default layout is such:
+
+![SouthPad Layout](https://i.imgur.com/jc7T2jl.jpg)
+
+* Keyboard Maintainer: [Logan Butler](https://github.com/MatchstickWorks)
+* Hardware Supported: SouthPad v1 PCB
+* Hardware Availability: Either via [my storefront](https://matchstick.works), [my Etsy Store](https://www.etsy.com/shop/MatchstickWorksShop), or by messaging directly
+
+Getting the board into bootloader mode:
+
+In order to flash the firmware to this board, simply press the Reset button on the back of the PCB. You should head a USB disconnect and reconnect sound shortly following.
+
+Make example for this keyboard (after setting up your build environment):
+
+ make matchstickworks/southpad/rev1:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/matchstickworks/southpad/rev1/rules.mk b/keyboards/matchstickworks/southpad/rev1/rules.mk
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev1/rules.mk
diff --git a/keyboards/matchstickworks/southpad/rev2/info.json b/keyboards/matchstickworks/southpad/rev2/info.json
new file mode 100644
index 0000000000..717b56ef63
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev2/info.json
@@ -0,0 +1,55 @@
+{
+ "keyboard_name": "SouthPad v2",
+ "processor": "RP2040",
+ "bootloader": "rp2040",
+ "usb": {
+ "vid": "0x4D57",
+ "pid": "0x0002",
+ "device_version": "0.0.1"
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
+ "diode_direction": "COL2ROW",
+ "matrix_pins": {
+ "rows": ["GP13", "GP29", "GP28", "GP20", "GP19", "GP18"],
+ "cols": ["GP2", "GP4", "GP11", "GP12"]
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ { "label": "Bksp", "matrix": [0, 0], "x": 0, "y": 0 },
+ { "label": "=", "matrix": [0, 1], "x": 1, "y": 0 },
+ { "label": "(", "matrix": [0, 2], "x": 2, "y": 0 },
+ { "label": ")", "matrix": [0, 3], "x": 3, "y": 0 },
+
+ { "label": "-", "matrix": [1, 0], "x": 0, "y": 1 },
+ { "label": "*", "matrix": [1, 1], "x": 1, "y": 1 },
+ { "label": "/", "matrix": [1, 2], "x": 2, "y": 1 },
+ { "label": "Num Lock", "matrix": [1, 3], "x": 3, "y": 1 },
+
+ { "label": "+", "matrix": [2, 0], "x": 0, "y": 2, "h": 2 },
+ { "label": "9", "matrix": [2, 1], "x": 1, "y": 2 },
+ { "label": "8", "matrix": [2, 2], "x": 2, "y": 2 },
+ { "label": "7", "matrix": [2, 3], "x": 3, "y": 2 },
+
+ { "label": "6", "matrix": [3, 1], "x": 1, "y": 3 },
+ { "label": "5", "matrix": [3, 2], "x": 2, "y": 3 },
+ { "label": "4", "matrix": [3, 3], "x": 3, "y": 3 },
+
+ { "label": "Enter", "matrix": [4, 0], "x": 0, "y": 4, "h": 2 },
+ { "label": "3", "matrix": [4, 1], "x": 1, "y": 4 },
+ { "label": "2", "matrix": [4, 2], "x": 2, "y": 4 },
+ { "label": "1", "matrix": [4, 3], "x": 3, "y": 4 },
+
+ { "label": ".", "matrix": [5, 1], "x": 1, "y": 5 },
+ { "label": "0", "matrix": [5, 3], "x": 2, "y": 5, "w": 2 }
+ ]
+ }
+ }
+}
diff --git a/keyboards/matchstickworks/southpad/rev2/keymaps/default/keymap.c b/keyboards/matchstickworks/southpad/rev2/keymaps/default/keymap.c
new file mode 100644
index 0000000000..2dd332fdf5
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev2/keymaps/default/keymap.c
@@ -0,0 +1,25 @@
+/* Copyright 2023 Logan Butler*/
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT(
+ KC_BSPC, KC_EQL, LSFT(KC_9),LSFT(KC_0),
+ KC_PMNS, KC_PAST, KC_PSLS, TG(1),
+ KC_PPLS, KC_P9, KC_P8, KC_P7,
+ KC_P6, KC_P5, KC_P4,
+ KC_PENT, KC_P3, KC_P2, KC_P1,
+ KC_PDOT, KC_P0
+ ),
+
+ [1] = LAYOUT(
+ _______, _______, _______, _______,
+ _______, _______, _______, _______,
+ _______, KC_PGUP, KC_UP, KC_HOME,
+ KC_LEFT, _______, KC_RGHT,
+ _______, KC_PGDN, KC_DOWN, KC_END,
+ KC_DEL, KC_INS
+ ),
+}; \ No newline at end of file
diff --git a/keyboards/matchstickworks/southpad/rev2/keymaps/via/keymap.c b/keyboards/matchstickworks/southpad/rev2/keymaps/via/keymap.c
new file mode 100644
index 0000000000..eabe8dd5d5
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev2/keymaps/via/keymap.c
@@ -0,0 +1,26 @@
+/* Copyright 2023 Logan Butler*/
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT(
+ KC_BSPC, KC_EQL, LSFT(KC_9),LSFT(KC_0),
+ KC_PMNS, KC_PAST, KC_PSLS, TG(1),
+ KC_PPLS, KC_P9, KC_P8, KC_P7,
+ KC_P6, KC_P5, KC_P4,
+ KC_PENT, KC_P3, KC_P2, KC_P1,
+ KC_PDOT, KC_P0
+ ),
+
+ [1] = LAYOUT(
+ _______, _______, _______, _______,
+ _______, _______, _______, _______,
+ _______, KC_PGUP, KC_UP, KC_HOME,
+ KC_LEFT, _______, KC_RGHT,
+ _______, KC_PGDN, KC_DOWN, KC_END,
+ KC_DEL, KC_INS
+ ),
+
+}; \ No newline at end of file
diff --git a/keyboards/keychron/v1/ansi/keymaps/vnmm/rules.mk b/keyboards/matchstickworks/southpad/rev2/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/keychron/v1/ansi/keymaps/vnmm/rules.mk
+++ b/keyboards/matchstickworks/southpad/rev2/keymaps/via/rules.mk
diff --git a/keyboards/matchstickworks/southpad/rev2/readme.md b/keyboards/matchstickworks/southpad/rev2/readme.md
new file mode 100644
index 0000000000..b249265f29
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev2/readme.md
@@ -0,0 +1,23 @@
+# SouthPad
+
+![Southpad](https://i.imgur.com/oXi69cuh.png)
+
+This is a left-handed, mirrored numberpad with USB-C connection and Kailh hotswap sockets, built on the RP2040 MCU.
+
+Default layout is such:
+
+![SouthPad Layout](https://i.imgur.com/Zwxpa7ah.png)
+
+* Keyboard Maintainer: [Logan Butler](https://github.com/MatchstickWorks)
+* Hardware Supported: SouthPad v2 PCB
+* Hardware Availability: Either via [my storefront](https://matchstick.works), [my Etsy Store](https://www.etsy.com/shop/MatchstickWorksShop), or by messaging directly
+
+Getting the board into bootloader mode:
+
+In order to flash the firmware to this board, simply press both the RESET and BOOT buttons on the back of the PCB. You will hear a reconnect sound on your computer and a file explorer window should open where you can drag and drop the compiled UF2 into.
+
+Make example for this keyboard (after setting up your build environment):
+
+ make matchstickworks/southpad/rev2:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/matchstickworks/southpad/rev2/rules.mk b/keyboards/matchstickworks/southpad/rev2/rules.mk
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/keyboards/matchstickworks/southpad/rev2/rules.mk
diff --git a/keyboards/matchstickworks/southpad/rules.mk b/keyboards/matchstickworks/southpad/rules.mk
deleted file mode 100644
index 59c896dbff..0000000000
--- a/keyboards/matchstickworks/southpad/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/matrix/abelx/abelx.c b/keyboards/matrix/abelx/abelx.c
index 9585948e0c..a05934238a 100644
--- a/keyboards/matrix/abelx/abelx.c
+++ b/keyboards/matrix/abelx/abelx.c
@@ -66,7 +66,7 @@ const aw9523b_led g_aw9523b_leds[AW9523B_RGB_NUM] = {
{AW9523B_P07_PWM, AW9523B_P06_PWM, AW9523B_P05_PWM},
};
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
uint8_t num = num_leds < AW9523B_RGB_NUM ? num_leds : AW9523B_RGB_NUM;
@@ -92,13 +92,8 @@ bool led_update_kb(led_t led_state) {
}
#define REBOOT_MAGIC 0x41544B42
-void shutdown_user(void)
-{
- // set the magic number for resetting to the bootloader
- *(uint32_t *)(&(RTCD1.rtc->BKP0R)) = REBOOT_MAGIC;
-}
void bootloader_jump(void) {
- shutdown_user();
+ *(uint32_t *)(&(RTCD1.rtc->BKP0R)) = REBOOT_MAGIC;
NVIC_SystemReset();
}
diff --git a/keyboards/matrix/abelx/rules.mk b/keyboards/matrix/abelx/rules.mk
index 7a5d01e5cb..1c2fc05ffe 100644
--- a/keyboards/matrix/abelx/rules.mk
+++ b/keyboards/matrix/abelx/rules.mk
@@ -45,4 +45,4 @@ NO_USB_STARTUP_CHECK = yes # Disable initialization only when usb is plugged in
CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c tca6424.c aw9523b.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/matrix/m20add/config.h b/keyboards/matrix/m20add/config.h
index 8d4c69bb9c..f79cbb123b 100644
--- a/keyboards/matrix/m20add/config.h
+++ b/keyboards/matrix/m20add/config.h
@@ -78,6 +78,5 @@
#define I2C1_CLOCK_SPEED 400000
#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_COUNT 1
-#define RGB_MATRIX_LED_COUNT 20
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_LED_COUNT 20
diff --git a/keyboards/matrix/m20add/m20add.c b/keyboards/matrix/m20add/m20add.c
index cdcafb9779..ac483e8aab 100644
--- a/keyboards/matrix/m20add/m20add.c
+++ b/keyboards/matrix/m20add/m20add.c
@@ -54,13 +54,9 @@ bool led_update_kb(led_t led_state) {
}
#define REBOOT_MAGIC 0x41544B42
-void shutdown_user(void)
-{
- // set the magic number for resetting to the bootloader
- *(uint32_t *)(&(RTCD1.rtc->BKP0R)) = REBOOT_MAGIC;
-}
void bootloader_jump(void) {
- shutdown_user();
+ // set the magic number for resetting to the bootloader
+ *(uint32_t *)(&(RTCD1.rtc->BKP0R)) = REBOOT_MAGIC;
NVIC_SystemReset();
}
diff --git a/keyboards/matrix/m20add/rgb_ring.c b/keyboards/matrix/m20add/rgb_ring.c
index 4567f0348d..f3fbe83d72 100644
--- a/keyboards/matrix/m20add/rgb_ring.c
+++ b/keyboards/matrix/m20add/rgb_ring.c
@@ -30,7 +30,7 @@
#endif
// rgb ring leds setting
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -357,7 +357,7 @@ static void custom_effects(void)
effect_funcs[rgb_ring.effect]();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
if (rgb_ring.state != RING_STATE_QMK) {
return;
@@ -371,13 +371,7 @@ void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
void rgb_ring_init(void)
{
- i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
- for (int index = 0; index < RGB_MATRIX_LED_COUNT; index++) {
- bool enabled = true;
- is31fl3731_set_led_control_register(index, enabled, enabled, enabled);
- }
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3731_init_drivers();
}
void rgb_ring_task(void)
@@ -396,7 +390,7 @@ void rgb_ring_task(void)
break;
};
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
+ is31fl3731_flush();
}
bool process_record_kb(uint16_t keycode, keyrecord_t *record)
diff --git a/keyboards/matrix/m20add/rules.mk b/keyboards/matrix/m20add/rules.mk
index 86bd6b9371..1b005b8c17 100644
--- a/keyboards/matrix/m20add/rules.mk
+++ b/keyboards/matrix/m20add/rules.mk
@@ -29,4 +29,4 @@ RGBLIGHT_ENABLE = yes
CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c tca6424.c rgb_ring.c drivers/led/issi/is31fl3731.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/matrix/noah/config.h b/keyboards/matrix/noah/config.h
index 452fef4cee..a4d4c5a36a 100644
--- a/keyboards/matrix/noah/config.h
+++ b/keyboards/matrix/noah/config.h
@@ -19,9 +19,8 @@
#define PAL_MODE_STM32_ALTERNATE_OPENDRAIN (PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN)
// rgb matrix setting
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110110
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
#define DRIVER_1_LED_TOTAL 36
#define DRIVER_2_LED_TOTAL 36
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/matrix/noah/noah.c b/keyboards/matrix/noah/noah.c
index 0969998fa9..8246da809c 100644
--- a/keyboards/matrix/noah/noah.c
+++ b/keyboards/matrix/noah/noah.c
@@ -20,7 +20,7 @@ extern rgblight_config_t rgblight_config;
#if RGBLED_NUM < 7
#error "MUST set the RGBLED_NUM bigger than 7"
#endif
-LED_TYPE noah_leds[RGBLED_NUM];
+rgb_led_t noah_leds[RGBLED_NUM];
static bool noah_led_mode = false;
void rgblight_set(void) {
memset(&noah_leds[0], 0, sizeof(noah_leds));
@@ -63,7 +63,7 @@ void matrix_scan_kb(void) {
}
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/mechkeys/alu84/keymaps/turbomech/config.h b/keyboards/mechkeys/alu84/keymaps/turbomech/config.h
deleted file mode 100644
index 2a60c1f381..0000000000
--- a/keyboards/mechkeys/alu84/keymaps/turbomech/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Copyright 2017 @TurboMech /u/TurboMech <discord> @A9entOran9e#6134
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// place overrides here
-#define TAPPING_TOGGLE 2
diff --git a/keyboards/mechkeys/alu84/keymaps/turbomech/keymap.c b/keyboards/mechkeys/alu84/keymaps/turbomech/keymap.c
deleted file mode 100644
index 64ea7c139b..0000000000
--- a/keyboards/mechkeys/alu84/keymaps/turbomech/keymap.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright 2017 @TurboMech /u/TurboMech <discord> @A9entOran9e#6134
- * 2021 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "turbomech.h"
-
-#define _QWERTY 0 //BASE layer
-#define _FUNCTION 1 //Function layer
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* BL
- * ,- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -.
- * | Esc | Scrn | Scrn | Expose |Launchpad| Show |Dock Hide| Screen | Shortcut| Shortcut| Shortcut| Shortcut| Play | Mute | Vol Up | Vol Down|
- * | |Brght Up | Brght Dn| | | Desktop | Toggle | Capture | | | | | Pause | | | |
- * |- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - -+- - - - -|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | + | Backspace | POWER |
- * | | | | | | | | | | | | | | | |
- * |- - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - +- - - - -|
- * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | Shortcut|
- * | | | | | | | | | | | | | | | |
- * |- - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - - -+- - - - -|
- * | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | Enter | Page |
- * | | | | | | | | | | | | | | Up |
- * |- - - - - - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - +- - - - -+- - - - -+
- * | Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Up | Page |
- * | | | | | | | | | | | | | | Down |
- * |- - - - - +- - - - - - +- - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -|
- * | Control | Option | Gui | Space | Gui | Opt | Fn | Left | Down | Right |
- * | | /Alt | | | | Alt | | | | |
- * `- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
- */
-
- [_QWERTY] = LAYOUT_75_ansi(
- KC_ESC, KC_F14, KC_F15, C(KC_UP), C(KC_L), KC_F11, A(G(KC_D)), C(KC_S), C(S(KC_O)), C(G(KC_1)), C(G(KC_2)), C(G(KC_3)), KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_PWR,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, C(G(KC_N)),
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SC_RSPC, KC_UP, KC_PGDN,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
-/* FN1 - SEE readme.md
- * ,- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -.
- * | Quit | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Trns | Trns | DFU |
- * | All | | | | | | | | | | | | | | | Reset |
- * |- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - -+- - - - -|
- * | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Delete | Lock |
- * | | | | | | | | | | | | | | |Shortcut |
- * |- - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - +- - - - -|
- * | Trns | RGB | RGB | RGB | RGB | RGB Hue | RGB Hue | RGB Sat | RGB Sat | Trns | Trns | Trns | Trns | Trns | Trns |
- * | | Toggle | Mode | Increase| Decrease| Increase| Decrease| Increase| Decrease| | | | | | |
- * |- - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - - -+- - - - -|
- * | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns |
- * | | | | | | | | | | | | | | |
- * |- - - - - - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - +- - - - -+- - - - -+
- * | Trns |Backlight|Backlight|Backlight|Backlight| Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns |
- * | | Toggle | Increase| Decrease| Step | | | | | | | | | |
- * |- - - - - +- - - - - - +- - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -|
- * | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns |
- * | | | | | | | | | | |
- * `- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
- */
-
- [_FUNCTION] = LAYOUT_75_ansi(
- A(G(KC_Q)), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, KC_RESET,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, C(A(G(KC_S))),
- _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, BL_TOGG, BL_UP, BL_DOWN, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-};
diff --git a/keyboards/mechkeys/alu84/keymaps/turbomech/readme.md b/keyboards/mechkeys/alu84/keymaps/turbomech/readme.md
deleted file mode 100644
index b78d7a5e7e..0000000000
--- a/keyboards/mechkeys/alu84/keymaps/turbomech/readme.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# This is u/TurboMech's keyboard layout for ALU84.
-
-## It is designed for Mac OS, due to the specific functions I created.
-
-### Here is the layout found in the keymap.c file.
-##### I use shortcuts for the Function row (above number row) listed below
- - Scrn Bright Up: F14
- - Scrn Bright Down: F15
- - Expose: LCTRL + Up
- - Launchpad: LCTRL + L
- - Show Desktop: F11
- - Show/Hide Dock: LALT + LGUI + D
- - Screen Capture: LCTRL + S
- - Custom Shortcut (setup for an application I use frequently): LCTRL + LSHFT + O
- - Custom Shortcut 1: LCTRL + LGUI + 1
- - Custom Shortcut 2: LCTRL + LGUI + 2
- - Custom Shortcut 3: LCTRL + LGUI + 3
- - use the custom shortcuts for whatever you want: launch an application, a macro, etc.
- - Play/Pause: exactly that
- - Mute / Volume Up / Volume Down: exactly what it says
-
- ##### Going down the right side from Vol Down:
- - POWER: this serves as the power button on Mac's only. Press and hold the button as you would on your Macbook or iMac keyboard.
- - Menu: this slides the notification bar on the right side (its the same as on iPhones/ iPads)
-
-### See below keymaps for how to setup shortcuts on Mac
-
-#### Base Layer
-```
-.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -.
-| Esc | Scrn | Scrn | Expose |Launchpad| Show |Dock Hide| Screen | Shortcut| Shortcut| Shortcut| Shortcut| Play | Mute | Vol Up | Vol Down|
-| |Brght Up | Brght Dn| | | Desktop | Toggle | Capture | | | | | Pause | | | |
-|- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - -+- - - - -|
-| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | + | Backspace | POWER |
-| | | | | | | | | | | | | | | |
-|- - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - +- - - - -|
-| TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | Shortcut|
-| | | | | | | | | | | | | | | |
-|- - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - - -+- - - - -|
-| CAPS | A | S | D | F | G | H | J | K | L | ; | ' | Enter | Page |
-| | | | | | | | | | | | | | Up |
-|- - - - - - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - +- - - - -+- - - - -+
-| Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Up | Page |
-| | | | | | | | | | | | | | Down |
-|- - - - - +- - - - - - +- - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -|
-| Control | Option | Gui | Space | Gui | Opt | Fn | Left | Down | Right |
-| | /Alt | | | | Alt | | | | |
-'- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
-```
-#### Function Layer 1 - See above for shortcuts
-```
-.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -.
-| Quit | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Trns | Trns | DFU |
-| All | | | | | | | | | | | | | | | Reset |
-|- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - -+- - - - -|
-| Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Delete | Lock |
-| | | | | | | | | | | | | | |Shortcut |
-|- - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - +- - - - -|
-| Trns | RGB | RGB | RGB | RGB | RGB Hue | RGB Hue | RGB Sat | RGB Sat | Trns | Trns | Trns | Trns | Trns | Trns |
-| | Toggle | Mode | Increase| Decrease| Increase| Decrease| Increase| Decrease| | | | | | |
-|- - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - - - -+- - - - -|
-| Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns |
-| | | | | | | | | | | | | | |
-|- - - - - - - - - - - +- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - - - - - +- - - - -+- - - - -+
-| Trns |Backlight|Backlight|Backlight|Backlight| Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns |
-| | Toggle | Increase| Decrease| Step | | | | | | | | | |
-|- - - - - +- - - - - - +- - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -+- - - - -|
-| Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns | Trns |
-| | | | | | | | | | |
-'- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
-```
-
-#### How to use/ setup shortcuts on Mac
-- First navigate to System Preferences > Keyboard > Shortcuts
- - You can use any of them in here
- - Just set them to the shortcut keys listed above
-
-#### How to make your own (to launch applications, quit all, etc.)
-- Navigate to Automator > New Document > click Service > Choose
-- Now we have to setup our shortcut
- - Here's how to setup the Quit All Shortcut
- - In the right window select the Service recieves dropdown > select No Input
- - At the top left click the Name (Search) > type quit > click and hold Quit All Applications > drag to the right hand box (under the Service Recieves)
- - **IMPORTANT** You have to click the Run button at the upper right hand corner in order for these to actually work.
- - Now click File > Save > save it as Quit All Apps (or whatever you want) / you can also just exit out and it'll ask you if you want to save
-- Navigate back to System Preferences > Keyboard > Shortcuts
- - The new shortcut can be found under services, set it to one of the shortcuts I listed above and done
-- The same applies for applications in the Name (search) just type the application you want to have as shortcut. Don't forget to run it, then do the same steps
- to set it up as a shortcut.
-
-
-
-
diff --git a/keyboards/mechkeys/alu84/keymaps/turbomech/rules.mk b/keyboards/mechkeys/alu84/keymaps/turbomech/rules.mk
deleted file mode 100644
index 6c0a79b110..0000000000
--- a/keyboards/mechkeys/alu84/keymaps/turbomech/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-SLEEP_LED_ENABLE = no
-UNICODE_ENABLE = yes
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/arkag/config.h b/keyboards/mechkeys/mechmini/v2/keymaps/arkag/config.h
deleted file mode 100644
index 966289459b..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/arkag/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2021 Alex Kagno
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// save me space!
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
-// #define DISABLE_LEADER
-#define NO_MUSIC_MODE
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/arkag/keymap.c b/keyboards/mechkeys/mechmini/v2/keymaps/arkag/keymap.c
deleted file mode 100644
index 09c0e901cd..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/arkag/keymap.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Copyright 2021 Alex Kagno
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "arkag.h"
-
-/*
- Userspace:
- https://github.com/arkag/qmk_firmware/blob/master/users/arkag/arkag.c
-*/
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_2u_space_ortho(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- M_PMOD, M_SMOD, KC_LALT, MEDIA, SYMBOL, KC_SPC, ARROW, FUNCT, XXXXXXX, KC_RALT, QK_LEAD),
-
-
- [_SYMBOL] = LAYOUT_2u_space_ortho(
- KC_GRV, KC_LPRN, KC_RPRN, KC_PLUS, KC_UNDS, KC_CIRC, KC_AMPR, KC_7, KC_8, KC_9, _______, _______,
- KC_LCBR, KC_LBRC, KC_RBRC, KC_EQL, KC_MINS, KC_ASTR, KC_PIPE, KC_4, KC_5, KC_6, _______, KC_NUM,
- KC_RCBR, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_PDOT, KC_1, KC_2, KC_3, KC_BSLS, KC_PENT,
- M_DASH, KC_TILD, _______, KEEB, _______, _______, KC_0, KC_PSLS, KC_PMNS, KC_PPLS, KC_PAST),
-
- [_MEDIA] = LAYOUT_2u_space_ortho(
- _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______,
- KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_ARROW] = LAYOUT_2u_space_ortho(
- _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_FUNCT] = LAYOUT_2u_space_ortho(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, M_OS ),
-
- [_KEEB] = LAYOUT_2u_space_ortho(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, BL_TOGG, BL_STEP, BL_UP, BL_DOWN, BL_BRTG, _______, _______, _______, _______, _______, _______,
- RGB_M_P, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
-};
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/arkag/rules.mk b/keyboards/mechkeys/mechmini/v2/keymaps/arkag/rules.mk
deleted file mode 100644
index 735d573d73..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/arkag/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no
-STENO_ENABLE = no
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-SLEEP_LED_ENABLE = no
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = no
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = no
-UNICODE_ENABLE = yes
-LEADER_ENABLE = yes
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/config.h b/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/config.h
deleted file mode 100644
index 45dcbb04b5..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/keymap.c b/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/keymap.c
deleted file mode 100644
index 13179a5f1a..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/keymap.c
+++ /dev/null
@@ -1,139 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "spacebarracecar.h"
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-enum layers {
- _BASE,
- _RAISE,
- _LOWER,
- _MUSICMODE
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Base
-,-----------------------------------------------------------------------------------------------------------------------.
-|Tab |Q |W |E |R |T |Z |U |I |O |P |Backspace|
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|Esc/Nav |A |S |D |F |G |H |J |K |L |; |' |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|Shift |Y |X |C |V |B |N |M |, |. |/ |Shift |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|LCtrl | |Win |Alt |Lower |Space |Enter |Raise |AltGr |Win |Menu |RCtrl |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_BASE] = LAYOUT_ortho(
- KC_TAB, DE_Q, DE_W, DE_E, DE_R, DE_T, CU_Z, DE_U, DE_I, DE_O, DE_P, KC_BSPC,
- CU_NAV, DE_A, DE_S, DE_D, DE_F, DE_G, DE_H, DE_J, DE_K, DE_L, CU_SCLN, CU_QUOT,
- CU_LSFT, CU_Y, DE_X, DE_C, DE_V, DE_B, DE_N, DE_M, CU_COMM, CU_DOT, CU_SLSH, CU_RSFT,
- KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, LOWER, KC_SPC, CTLENT, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
-),
-
-/* Lower
-,-----------------------------------------------------------------------------------------------------------------------.
-|~ |! |" |# |$ |% |^ |& |* |( |) | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |@ |Strg+X |Strg+C |Strg+V | | |_ |+ |{ |} || |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |? | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-[_LOWER] = LAYOUT_ortho(
- DE_TILD, DE_EXLM, DE_DQUO, DE_HASH, DE_DLR, DE_PERC, CU_CIRC, DE_AMPR, DE_ASTR, DE_LPRN, DE_RPRN, _______,
- _______, DE_AT, CTRLX, CTRLC, CTRLV, XXXXXXX, XXXXXXX, DE_UNDS, DE_PLUS, DE_LCBR, DE_RCBR, DE_PIPE,
- _______, DE_EURO, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DE_MINS, CU_EQL, CU_LBRC, CU_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Raise
-,-----------------------------------------------------------------------------------------------------------------------.
-|` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |F1 |F2 |F3 |F4 |F5 |F6 |- |= |[ |] |\ |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |F7 |F8 |F9 |F10 |F11 |F12 | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_RAISE] = LAYOUT_ortho(
- CU_GRV, DE_1, DE_2, CU_3, DE_4, DE_5, CU_6, CU_7, CU_8, CU_9, CU_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, DE_MINS, CU_EQL, CU_LBRC, CU_RBRC, CU_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Deadkey
-,-----------------------------------------------------------------------------------------------------------------------.
-| | | | | | | |Ü | |Ö | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |Ä |ß | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | |" |" | | | | | |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_DEADKEY] = LAYOUT_ortho(
- KC_TAB, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_UE, CU_ED, CU_OE, CU_ED, KC_BSPC,
- CU_NAV, CU_AE, CU_SS, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_DDQ,
- CU_LSFT, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_RSFT,
- KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, LOWER, CU_DDQ, CU_DDQ, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
-),
-
-/* Navigation
-,-----------------------------------------------------------------------------------------------------------------------.
-|ALT F4 |PageDown |Up |PageUp |Home | | | |Win+Up | | |Del |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |Left |Down |Right |End | | |Win+Left |Win+Down |Win+Right| |Enter |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |Prev |Pause |Next |LowerVol |RaiseVol |Mute | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|QK_BOOT |ESCT | | | | | | | | | |Game |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_NAV] = LAYOUT_ortho(
- _______, KC_PGDN, KC_UP, KC_PGUP, KC_HOME, XXXXXXX, XXXXXXX, XXXXXXX, GUIU, XXXXXXX, XXXXXXX, KC_DEL,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, XXXXXXX, XXXXXXX, GUIL, GUID, GUIR, EMOJI, KC_ENT,
- _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_MUTE, RGB_TOG, RGB_MOD, RGB_HUI, CU_RGBV, _______,
- QK_BOOT, CU_ESCT, ALTF4, _______, _______, KC_SPC, CTLENT, RGB_M_P, _______, _______, _______, CU_GAME
-)
-
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
-switch (keycode) {
- case MO(_LOWER):
- if (game){
- if(record->event.pressed) {
- register_code(KC_SPC);
- } else {
- unregister_code(KC_SPC);
- }
- return false;
- } else {
- return true;
- }
- case KC_LALT:
- if (game) {
- if (record->event.pressed){
- layer_on(_RAISE);
- } else {
- layer_off(_RAISE);
- }
- return false;
- } else {
- return true;
- }
- default:
- return true;
- }
-}
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/readme.md b/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/readme.md
deleted file mode 100644
index d4039713a5..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# SpacebarRacecar US-International Mechmini 2 Keymap for German PCs
-
-This keymap emulates most keys of the US-International layout on PCs that have German set as input language.
-This allows the use of the keyboard on any PC in Germany without the need to change any settings.
-The keymap is mostly based on the Planck default layout but adds essential features for german input, like access to Ä, Ö, Ü, ß.
diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/rules.mk b/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/rules.mk
deleted file mode 100644
index 82f1f96f64..0000000000
--- a/keyboards/mechkeys/mechmini/v2/keymaps/spacebarracecar/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-# Userspace defines
-GERMAN_ENABLE = yes # Enable Custom US Ansi Keycodes for PC with German set as input language
diff --git a/keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h b/keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h
deleted file mode 100644
index f277bcfa3e..0000000000
--- a/keyboards/mechlovin/adelais/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define USE_LEDS_FOR_LAYERS
-#define STOPLIGHT_LED
-
-// LEDs
-#define TOP_LED B2
-#define MIDDLE_LED C15
-#define BOTTOM_LED B9
-// #define LED_PIN_FLIP
-#ifdef LED_PIN_FLIP
- #define LED_ON(flag) !flag
-#else
- #define LED_ON(flag) flag
-#endif
diff --git a/keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c b/keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 740148e0e7..0000000000
--- a/keyboards/mechlovin/adelais/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,271 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-/**
- * Layer Names
- *
- * Layers mostly used for macro keys
- */
-#define _REEDER _M1
-#define _MAIL _M2
-#define _REEDER_FN _M1_FN1
-#define _MAIL_FN _M2_FN1
-
-/**
- * Keycodes & Macros
- */
-#define TG_BASE TO(_BASE)
-#define TG_REDR TO(_REEDER)
-#define TG_MAIL TO(_MAIL)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Ply│ │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│         │& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │VlU│ │Tab  │ Q │ W │ E │ R │ T │         │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │VlD│ │HyCaps│ A │ S │ D │ F │ G │         │ H │ J │ K │ L │: ;│" '│   Enter│
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │LShift  │ Z │ X │ C │ V │ B │     │ B │ N │ M │< ,│> .│? /│  Shft│Fn │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │Opt  │     │Cmd  │Spc/Lwr│Ctrl│   │   Spc/Rai│  Cmd│           │  Opt│
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_BASE] = LAYOUT_all(
- KC_MPLY, KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_VOLU, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_VOLD, HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LOWER, KC_RSFT, KC_SLSH,
- KC_LOPT, KC_LCMD, SPC_LWR, KC_LCTL, SPC_RAI, KC_RCMD, KC_ROPT
-),
-/* Reeder
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │ H │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ K │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ J │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_REEDER] = LAYOUT_all(
- KC_H, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_J, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Mail
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_MAIL] = LAYOUT_all(
- G(KC_BSPC), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Lower
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Mut│ │Mke│ F1│ F2│ F3│ F4│ F5│ F6│         │ F7│ F8│ F9│F10│F11│F12│LHP│SLP│
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │Nxt│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │PgU│Hom│End│  Del│
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │Prv│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │Prv│Nxt│PgD│ ↑ │   Play │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │LYR│Thm│   │   │   │     │   │   │   │   │ ← │ ↓ │→ Shft│   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_LOWER] = LAYOUT_all(
- KC_MUTE, QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_SLPD,
- KC_MNXT, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_END, KC_DEL,
- KC_MPRV, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, KC_MPRV, KC_MNXT, KC_PGDN, KC_UP, KC_MPLY,
- _______, RGB_LYR, RGB_THM, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, _______, RGT_SFT, KC_DOWN,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Reeder Function
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │ L │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ P │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ N │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_REEDER_FN] = LAYOUT_all(
- KC_L, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_N, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Mail
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_MAIL_FN] = LAYOUT_all(
- KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- A(G(KC_LBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- A(G(KC_RBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Raise
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_RAISE] = LAYOUT_all(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Adjust
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Bse│ │Mke│   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │Rdr│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │Mai│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │LYR│Thm│   │EEP│Rst│     │Rst│   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_ADJUST] = LAYOUT_all(
- TG_BASE, QM_MAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_REDR, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_MAIL, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_LYR, RGB_THM, _______, EE_CLR, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-)
-/* Layout
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-/*
-[_BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-)
-*/
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
- state = update_tri_layer_state(state, _REEDER, _LOWER, _REEDER_FN);
- state = update_tri_layer_state(state, _MAIL, _LOWER, _MAIL_FN);
- return state;
-}
-
-#ifdef USE_LEDS_FOR_LAYERS
-bool led_update_keymap(led_t led_state) {
- writePin(TOP_LED, LED_ON(IS_LAYER_ON(_REEDER) || IS_LAYER_ON(_MAIL))); // Use for Macro Layer
- writePin(MIDDLE_LED, LED_ON(IS_LAYER_ON(_FN1))); // Use for Layer 2
- writePin(BOTTOM_LED, LED_ON(led_state.caps_lock)); // Use for Caps Lock
- return false; // Override default set by KB
-}
-#endif
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- else if (index == 1) {
- if (clockwise) {
- tap_code(KC_LEFT);
- } else {
- tap_code(KC_RGHT);
- }
- }
- else if (index == 2) {
- if (clockwise) {
- tap_code(KC_UP);
- } else {
- tap_code(KC_DOWN);
- }
- }
- return true;
-}
-
- #endif
diff --git a/keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md b/keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md
deleted file mode 100644
index 54d78d873b..0000000000
--- a/keyboards/mechlovin/adelais/keymaps/brandonschlack/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default keymap for adelais
diff --git a/keyboards/mechlovin/adelais/rgb_led/rev2/config.h b/keyboards/mechlovin/adelais/rgb_led/rev2/config.h
index d4b34ff48e..6bdd06aba8 100644
--- a/keyboards/mechlovin/adelais/rgb_led/rev2/config.h
+++ b/keyboards/mechlovin/adelais/rgb_led/rev2/config.h
@@ -1,16 +1,8 @@
#pragma once
//rgb matrix setting
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110110
-#define DRIVER_COUNT 2
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 36
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c b/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c
index e51e92ed6f..9e5fe11895 100644
--- a/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c
+++ b/keyboards/mechlovin/adelais/rgb_led/rev2/rev2.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C2_1, C3_1, C4_1}, //D102-A0-0
{0, C5_1, C6_1, C7_1}, //D108-A1-1
diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/config.h b/keyboards/mechlovin/adelais/rgb_led/rev3/config.h
index c4961c6492..ba93133857 100644
--- a/keyboards/mechlovin/adelais/rgb_led/rev3/config.h
+++ b/keyboards/mechlovin/adelais/rgb_led/rev3/config.h
@@ -17,20 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID1 // default: SPID1
+#define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#ifdef RGB_MATRIX_ENABLE
//rgb matrix setting
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b0110010
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_SDA
#define RGB_MATRIX_LED_COUNT 66
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/rev3.c b/keyboards/mechlovin/adelais/rgb_led/rev3/rev3.c
index b7e03d0f1e..b13f223a1c 100644
--- a/keyboards/mechlovin/adelais/rgb_led/rev3/rev3.c
+++ b/keyboards/mechlovin/adelais/rgb_led/rev3/rev3.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS3_SW5, CS2_SW5, CS1_SW5}, /* D9-K31-00 */
{0, CS6_SW5, CS5_SW5, CS4_SW5}, /* D46-K00-01 */
{0, CS6_SW9, CS5_SW9, CS4_SW9}, /* D59-K01-02 */
diff --git a/keyboards/mechlovin/delphine/rgb_led/config.h b/keyboards/mechlovin/delphine/rgb_led/config.h
index 9498e8914f..60dc290bfb 100644
--- a/keyboards/mechlovin/delphine/rgb_led/config.h
+++ b/keyboards/mechlovin/delphine/rgb_led/config.h
@@ -1,14 +1,7 @@
#pragma once
-//rgb matrix setting// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b1110110
-#define DRIVER_COUNT 1
+//rgb matrix setting
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_SDA
#define RGB_MATRIX_LED_COUNT 25
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
#define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
diff --git a/keyboards/mechlovin/delphine/rgb_led/rgb_led.c b/keyboards/mechlovin/delphine/rgb_led/rgb_led.c
index 02a011ba4b..a55143f2e1 100644
--- a/keyboards/mechlovin/delphine/rgb_led/rgb_led.c
+++ b/keyboards/mechlovin/delphine/rgb_led/rgb_led.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
// left CA
{0, C5_2, C6_2, C7_2}, //D2-0
{0, C1_1, C3_2, C4_2}, //D20-1
diff --git a/keyboards/mechlovin/hannah60rgb/rev2/config.h b/keyboards/mechlovin/hannah60rgb/rev2/config.h
index 7e9a918493..4a4f4c7556 100644
--- a/keyboards/mechlovin/hannah60rgb/rev2/config.h
+++ b/keyboards/mechlovin/hannah60rgb/rev2/config.h
@@ -1,15 +1,8 @@
#pragma once
-//rgb matrix setting// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110110
-#define DRIVER_COUNT 2
+//rgb matrix setting
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
#define DRIVER_1_LED_TOTAL 44
#define DRIVER_2_LED_TOTAL 34
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/mechlovin/hannah60rgb/rev2/rev2.c b/keyboards/mechlovin/hannah60rgb/rev2/rev2.c
index 246caa2963..2e3c8d0090 100644
--- a/keyboards/mechlovin/hannah60rgb/rev2/rev2.c
+++ b/keyboards/mechlovin/hannah60rgb/rev2/rev2.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/mechlovin/hex6c/config.h b/keyboards/mechlovin/hex6c/config.h
index 4cfcaebcde..e74e7939c4 100644
--- a/keyboards/mechlovin/hex6c/config.h
+++ b/keyboards/mechlovin/hex6c/config.h
@@ -18,6 +18,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#define BACKLIGHT_PWM_DRIVER PWMD3
-
-#define WEAR_LEVELING_BACKING_SIZE 4096
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
diff --git a/keyboards/mechlovin/hex6c/info.json b/keyboards/mechlovin/hex6c/info.json
index dfeb91e0ba..483566e7f4 100644
--- a/keyboards/mechlovin/hex6c/info.json
+++ b/keyboards/mechlovin/hex6c/info.json
@@ -13,6 +13,11 @@
"rows": ["A10", "B13", "B12", "B11", "C14", "C15"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "A15", "pin_b": "A2"}
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/config.h b/keyboards/mechlovin/infinity87/rgb_rev1/config.h
index 10fc42f830..6e73aba5d9 100644
--- a/keyboards/mechlovin/infinity87/rgb_rev1/config.h
+++ b/keyboards/mechlovin/infinity87/rgb_rev1/config.h
@@ -17,13 +17,6 @@
#pragma once
//rgb matrix setting
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b0110000 AD <-> GND
-// 0b0110011 AD <-> VCC
-// 0b0110001 AD <-> SCL
-// 0b0110010 AD <-> SDA
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
#define RGB_MATRIX_KEYPRESSES
#undef ENABLE_RGB_MATRIX_SPLASH
@@ -80,7 +73,6 @@
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-#define DRIVER_ADDR_1 0b0110010
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_SDA
#define RGB_MATRIX_LED_COUNT 91
#define DRIVER_INDICATOR_LED_TOTAL 0
diff --git a/keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c b/keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c
index c10d47d191..5649f80712 100644
--- a/keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c
+++ b/keyboards/mechlovin/infinity87/rgb_rev1/rgb_rev1.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS34_SW1, CS35_SW1, CS36_SW1}, //D92-K00-0
{0, CS37_SW1, CS38_SW1, CS39_SW1}, //D94-K01-1
{0, CS31_SW1, CS32_SW1, CS33_SW1}, //D96-K02-2
diff --git a/keyboards/mechlovin/kanu/keymaps/dhertz/keymap.c b/keyboards/mechlovin/kanu/keymaps/dhertz/keymap.c
deleted file mode 100644
index d3b9987bd8..0000000000
--- a/keyboards/mechlovin/kanu/keymaps/dhertz/keymap.c
+++ /dev/null
@@ -1,62 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "dhertz.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0: Default Layer
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|Del|
- * |---------------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter|Hom|
- * |------------------------------------------------------` |---|
- * |SrCtl | A| S| D| F| G| H| J| K| L| ;| '| \| |End|
- * |---------------------------------------------------------------|
- * |Shif| #| Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |NcCtl| Alt| CTab| LyrSpc | CGv| Alt|Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [0] = LAYOUT_65_iso_blocker(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_HOME,
- SRCH_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_END,
- KC_LSFT, HSH_TLD, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- NC_CTL, KC_LALT, CMD_TAB_CMD, LYR_SPC, CMD_GRV_CMD, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- /* Layer 1: Special
- * ,---------------------------------------------------------------.
- * | §| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| |Iso|
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | | | | | |
- * |------------------------------------------------------` |---|
- * | | | | | | | | | |CSL| | | `| | |
- * |---------------------------------------------------------------|
- * | | `| | |CAC| | | | | | | | |PgU| |
- * |---------------------------------------------------------------|
- * | | | | | | |Hom|PgD|End|
- * `---------------------------------------------------------------'
- */
- [1] = LAYOUT_65_iso_blocker(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, ISO_COUNTRY_CODE,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, CMD_SFT_L, KC_TRNS, KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS, CMD_ALT_C, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END
- ),
-};
-
-void keyboard_post_init_user(void) {
- rgblight_enable_noeeprom();
- rgblight_sethsv(HSV_TEAL);
-}
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case 1:
- rgblight_sethsv_noeeprom(HSV_MAGENTA);
- break;
- default: // for any other layers, or the default layer
- rgblight_sethsv_noeeprom(HSV_TEAL);
- break;
- }
- return state;
-}
diff --git a/keyboards/mechlovin/olly/octagon/config.h b/keyboards/mechlovin/olly/octagon/config.h
index 4e502b6154..88918506eb 100644
--- a/keyboards/mechlovin/olly/octagon/config.h
+++ b/keyboards/mechlovin/olly/octagon/config.h
@@ -18,18 +18,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#ifdef LED_MATRIX_ENABLE
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define LED_DRIVER_ADDR_1 0b1110110
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_SDA
#define I2C_DRIVER I2CD2
#define I2C1_SCL_PIN B10
#define I2C1_SDA_PIN B11
-#define LED_DRIVER_COUNT 1
#define LED_MATRIX_LED_COUNT 94
#define LED_MATRIX_KEYPRESSES // reacts to keypresses
#define LED_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
diff --git a/keyboards/mechlovin/olly/octagon/octagon.c b/keyboards/mechlovin/olly/octagon/octagon.c
index 41f9dbb438..b5eb828bc8 100644
--- a/keyboards/mechlovin/olly/octagon/octagon.c
+++ b/keyboards/mechlovin/olly/octagon/octagon.c
@@ -16,7 +16,7 @@
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | LED address
diff --git a/keyboards/mechlovin/zed60/config.h b/keyboards/mechlovin/zed60/config.h
index cdbbd6dd0e..13e17a7bb6 100644
--- a/keyboards/mechlovin/zed60/config.h
+++ b/keyboards/mechlovin/zed60/config.h
@@ -17,5 +17,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID1 // default: SPID1
+#define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
diff --git a/keyboards/mechlovin/zed65/910/config.h b/keyboards/mechlovin/zed65/910/config.h
index a5902fa9c1..f21653f5af 100644
--- a/keyboards/mechlovin/zed65/910/config.h
+++ b/keyboards/mechlovin/zed65/910/config.h
@@ -17,5 +17,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID1 // default: SPID1
+#define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
diff --git a/keyboards/mechlovin/zed65/mono_led/config.h b/keyboards/mechlovin/zed65/mono_led/config.h
index 1ec1746456..811841d7fe 100644
--- a/keyboards/mechlovin/zed65/mono_led/config.h
+++ b/keyboards/mechlovin/zed65/mono_led/config.h
@@ -18,18 +18,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#ifdef LED_MATRIX_ENABLE
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define LED_DRIVER_ADDR_1 0b1110110
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_SDA
#define I2C_DRIVER I2CD2
#define I2C1_SCL_PIN B10
#define I2C1_SDA_PIN B11
-#define LED_DRIVER_COUNT 1
#define LED_MATRIX_LED_COUNT 70
#define LED_MATRIX_KEYPRESSES // reacts to keypresses
#define LED_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
diff --git a/keyboards/mechlovin/zed65/mono_led/mono_led.c b/keyboards/mechlovin/zed65/mono_led/mono_led.c
index e618d41489..f66c4b1359 100644
--- a/keyboards/mechlovin/zed65/mono_led/mono_led.c
+++ b/keyboards/mechlovin/zed65/mono_led/mono_led.c
@@ -19,7 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | LED address
diff --git a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h
index 5cb2a00b88..3bec308941 100644
--- a/keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h
+++ b/keyboards/mechlovin/zed65/no_backlight/wearhaus66/config.h
@@ -17,5 +17,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID2 // default: SPID1
+#define WS2812_SPI_DRIVER SPID2 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
diff --git a/keyboards/mechlovin/zed65/rev1/config.h b/keyboards/mechlovin/zed65/rev1/config.h
index 24efedfffb..4ed1992992 100644
--- a/keyboards/mechlovin/zed65/rev1/config.h
+++ b/keyboards/mechlovin/zed65/rev1/config.h
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#ifdef RGBLIGHT_ENABLE
-#define WS2812_SPI SPID1 // default: SPID1
+#define WS2812_SPI_DRIVER SPID1 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 6 // MOSI pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#define WS2812_SPI_USE_CIRCULAR_BUFFER
#endif
diff --git a/keyboards/mechwild/bbs/config.h b/keyboards/mechwild/bbs/config.h
index d19f39dd13..b626e5590d 100644
--- a/keyboards/mechwild/bbs/config.h
+++ b/keyboards/mechwild/bbs/config.h
@@ -3,10 +3,6 @@
#pragma once
-
-/* allows the "key" button on the blackpill to toggle caps lock for user testing before soldering */
-#define DIP_SWITCH_PINS { A0 }
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/mechwild/bbs/info.json b/keyboards/mechwild/bbs/info.json
index 39c23e2fff..c0ba888d9a 100644
--- a/keyboards/mechwild/bbs/info.json
+++ b/keyboards/mechwild/bbs/info.json
@@ -14,6 +14,9 @@
"rows": ["B12", "B10", "B13", "B1", "B14"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["A0"]
+ },
"indicators": {
"caps_lock": "C13",
"on_state": 0
diff --git a/keyboards/mechwild/bbs/keymaps/default/keymap.c b/keyboards/mechwild/bbs/keymaps/default/keymap.c
index 1eabdcd540..146099fba7 100644
--- a/keyboards/mechwild/bbs/keymaps/default/keymap.c
+++ b/keyboards/mechwild/bbs/keymaps/default/keymap.c
@@ -2,7 +2,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
// Defines names for use in layer keycodes and the keymap
enum layer_names {
diff --git a/keyboards/mechwild/bde/rev2/keymaps/miketronic/config.h b/keyboards/mechwild/bde/rev2/keymaps/miketronic/config.h
deleted file mode 100644
index 658c829f04..0000000000
--- a/keyboards/mechwild/bde/rev2/keymaps/miketronic/config.h
+++ /dev/null
@@ -1,10 +0,0 @@
-// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
-// SPDX-License-Identifier: GPL-2.0+
-
-#pragma once
-
-# define TAPPING_TERM 160
-# define TAPPING_TERM_PER_KEY
-# define HOLD_ON_OTHER_KEY_PRESS
-# define QUICK_TAP_TERM TAPPING_TERM / 2
-# define QUICK_TAP_TERM_PER_KEY
diff --git a/keyboards/mechwild/bde/rev2/keymaps/miketronic/keymap.c b/keyboards/mechwild/bde/rev2/keymaps/miketronic/keymap.c
deleted file mode 100644
index e8a26fd28a..0000000000
--- a/keyboards/mechwild/bde/rev2/keymaps/miketronic/keymap.c
+++ /dev/null
@@ -1,221 +0,0 @@
-// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
-// SPDX-License-Identifier: GPL-2.0+
-
-#include "miketronic.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* WORKMAN
- * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
- * │ Q │ D │ R │ W │ B │ 7 │ 8 │ 9 │ J │ F │ U │ P │ BSPC│BSPC │
- * │ ESC │ │ │ │ SYM │ │ │ │ SYM │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │ A │ S │ H ┃ T ┃ G │ 4 │ 5 │ 6 │ Y ┃ N ┃ E │ O │ I │UP │
- * │SHIFT│ │ ┃ EX ┃ │ │ │ │ ┃ ┃ │ │ │RIGHT│
- * ├─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │ Z │ X │ M │ C │ V │ 1 │ 2 │ 3 │ K │ L │ SPC │ SPC │ENTER│DOWN │
- * │ FN │ CTRL│ OS │ ALT │LOWER│ │ 0 │ │RAISE│RAISE│ │ │ │LEFT │
- * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
- *
- */
-
- [_WM] = LAYOUT_3x14_wrapper (
- _____________WORKMAN_310_001_L_____________, _________NUMBER_01__________, _____________WORKMAN_310_001_R_____________, KC_BSPC,
- _____________WORKMAN_310_002_L_____________, _________NUMBER_02__________, _____________WORKMAN_310_002_R_____________, TD_UR,
- _____________WORKMAN_310_003_L_____________, _________NUMBER_03__________, _____________WORKMAN_310_003_R_____________, TD_DL
- ),
-
- [_QW] = LAYOUT_3x14_wrapper (
- _________________QWERTY_L1_________________, _________NUMBER_01__________, _________________QWERTY_R1_________________, KC_MUTE,
- _________________QWERTY_L2_________________, _________NUMBER_02__________, _________________QWERTY_R2_________________, TD_UR,
- _________________QWERTY_L3_________________, _________NUMBER_03__________, _________________QWERTY_R3_________________, TD_DL
- ),
-
-
- /* LOWER
- * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
- * │ () │ [] │ /\ │ │ │ │ 7 │ 8 │ 9 │ 0 │ │ │ │LEAD │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────┼─────┼─────┤
- * │ @ # │ & % │ ┃ ┃ │ ┃ 4 ┃ 5 │ 6 │ │ │ │ │ │
- * │ │ │ ┃ ┃ │ ┃ ┃ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ 0 │ 1 │ 2 │ 3 │ . │ │ │ │ │
- * │ │ │ │ │LOWER│ │ │ 0 │ │ ENT │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
- *
- */
-
- [_LOWER] = LAYOUT_3x14_wrapper (
- _______________LOWER_310_L1________________, _________NUMBER_01__________, _______________LOWER_310_R1________________, QK_LEAD,
- _______________LOWER_310_L2________________, _________NUMBER_02__________, _______________LOWER_310_R2________________, TD_UR,
- _______________LOWER_310_L3________________, _________NUMBER_03__________, _______________LOWER_310_R3________________, TD_DL
- ),
-
-
- /* RAISE
- * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
- * │ BOOT│DEBUG│ │ │ MAKE│ │ F7 │ F8 │ F9 │ F10 │ │ │ │LEAD │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ RGB │ RGB ┃ RGB ┃ RGB │ _ ┃ F4 ┃ F5 │ F6 │ F11 │ │ │ │ │
- * │ │ TOG │ MOD ┃ HUI ┃ HUD │ - ┃ ┃ _ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ RGB │ RGB │ RGB │ RGB │RAISE│ F1 │ F2 │ F3 │ F12 │ │ │ │ │
- * │ │ SAI │ SAD │ VAI │ VAD │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
- *
- */
-
- [_RAISE] = LAYOUT_3x14_wrapper (
- _______________RAISE_310_L1________________, _________NUMBER_01__________, _______________RAISE_310_R1________________, QK_LEAD,
- _______________RAISE_310_L2________________, _________NUMBER_02__________, _______________RAISE_310_R2________________, TD_UR,
- _______________RAISE_310_L3________________, _________NUMBER_03__________, _______________RAISE_310_R3________________, TD_DL
- ),
-
-
- /* EXTRAS
- * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
- * │ ! │ │ │ │ │ │ /\ | () | [] | ; │ │ │ │LEAD │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ ┃EXTRA┃ │ ┃ @ # ┃ & % | | ' | │ │ │ │
- * │ │ │ ┃ ┃ │ ┃ ┃ _ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────┼─────┼─────┤
- * │ │ │ │ │ │ │ │ , | . | ? │ │ │ │ │
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
- */
-
- [_EX] = LAYOUT_3x14_wrapper (
- ______________EXTRAS_310_L1________________, _________NUMBER_01__________, ______________EXTRAS_310_R1________________, QK_LEAD,
- ______________EXTRAS_310_L2________________, _________NUMBER_02__________, ______________EXTRAS_310_R2________________, TD_UR,
- ______________EXTRAS_310_L3________________, _________NUMBER_03__________, ______________EXTRAS_310_R3________________, TD_DL
-),
-
-
- /* FUNCTION
- * ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
- * │COPY │CLIP │ SS │ │ │ │ │ │ | /\ │ UP │ │ DEL │LEAD │
- * │PASTE│ │ │ │ │ │ │ │ │ │ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┼─────╆━━━━━╅─────┼─────┼─────┼─────┤
- * │SHIFT│ M05 │ M06 ┃ M07 ┃ M08 │ │ │ │ ┃ LEFT┃ DOWN│RIGHT│ │ UP │
- * │ │ │ ┃ ┃ │ │ │ │ ┃ ┃ │ │ │RIGHT│
- * ├─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┼─────╄━━━━━╃─────┼─────┼─────┼─────┤
- * │ │ M01 │ M02 │ M03 │ M04 │ │ │ | | │ , │ . │ │DOWN │
- * │ FN │ │ │ │ │ │ │ │ │ │ │ │ │LEFT │
- * └─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
- */
-
- [_FN] = LAYOUT_3x14_wrapper (
- _____________FUNCTION_310_L1_______________, _________NUMBER_01__________, _____________FUNCTION_310_R1_______________, QK_LEAD,
- _____________FUNCTION_310_L2_______________, _________NUMBER_02__________, _____________FUNCTION_310_R2_______________, TD_UR,
- _____________FUNCTION_310_L3_______________, _________NUMBER_03__________, _____________FUNCTION_310_R3_______________, TD_DL
- ),
-
-
-
- /* SYMBOLS
- * ┌─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┐
- * │ $ │ ^ │ < │ > │ │ │ │ | │ [ │ ] │ - │
- * │ │ │ │ │ SYMB│ │ SYMB│ │ │ │ │
- * ├─────┼─────┼─────╆━━━━━╅─────┤ ├─────╆━━━━━╅─────┼─────┼─────┤
- * │ % │ : │ ; ┃ + ┃ = │ │ ┃ ┃ ( │ ) │ _ │
- * │ │ │ ┃ ┃ │ │ ┃ ┃ │ │ │
- * ├─────┼─────┼─────╄━━━━━╃─────┤ ├─────╄━━━━━╃─────┼─────┼─────┤
- * │ & │ ' │ " │ * │ # │ │ ! │ ? │ / │ \ │ @ │
- * │ │ │ │ │ │ │ │ │ │ │ │
- * └─────┴─────┴─────┴─────┴─────┘ └─────┴─────┴─────┴─────┴─────┘
- */
-
- [_SYMB] = LAYOUT_3x14_wrapper (
- _____________SYMBOLS_310_L1________________, _________NUMBER_01__________, _____________SYMBOLS_310_R1________________, QK_LEAD,
- _____________SYMBOLS_310_L2________________, _________NUMBER_02__________, _____________SYMBOLS_310_R2________________, TD_UR,
- _____________SYMBOLS_310_L3________________, _________NUMBER_03__________, _____________SYMBOLS_310_R3________________, TD_DL
- ),
-
-
-
-};
-
-
-#ifndef NUM_DIRECTIONS
-# define NUM_DIRECTIONS 2
-#endif
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [_WM] = { ENCODER_CCW_CW(LCTL(KC_V), LCTL(KC_C)) },
- [_QW] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
- [_LOWER] = { ENCODER_CCW_CW(____, ____) },
- [_RAISE] = { ENCODER_CCW_CW(____, ____) },
- [_EX] = { ENCODER_CCW_CW(____, ____) },
- [_FN] = { ENCODER_CCW_CW(RGB_MOD, RGB_RMOD) },
- [_SYMB] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
-};
-#endif
-
-bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case SFT_T(KC_A):
- // Do not force the mod-tap key press to be handled as a modifier
- // if any other key was pressed while the mod-tap key is held down.
- return false;
- case TEX:
- return false;
- case CTRLX:
- return false;
- case FNZ:
- return false;
- case MGUI:
- return false;
- case VLOWER:
- return false;
- case KRAISE:
- return false;
- default:
- // Force the dual-role key press to be handled as a modifier if any
- // other key was pressed while the mod-tap key is held down.
- return true;
- }
-}
-
-#ifdef AUDIO_ENABLE
-float leader_start_song[][2] = SONG(ONE_UP_SOUND);
-float leader_succeed_song[][2] = SONG(ALL_STAR);
-float leader_fail_song[][2] = SONG(RICK_ROLL);
-#endif
-
-void matrix_scan_user(void);
-
-void leader_start_user(void) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(leader_start_song);
-#endif
-}
-
-bool did_leader_succeed;
-
-void leader_end_user(void) {
- did_leader_succeed = false;
-
- if (leader_sequence_one_key(KC_E)) {
- SEND_STRING(SS_LCTL(SS_LSFT("t")));
- did_leader_succeed = true;
- } else if (leader_sequence_two_keys(KC_E, KC_D)) {
- SEND_STRING(SS_LGUI("r") "cmd\n" SS_LCTL("c"));
- did_leader_succeed = true;
- } else if (leader_sequence_two_keys(KC_A, KC_T)) {
- SEND_STRING("@guidehouse.com");
- did_leader_succeed = true;
- }
-
-
-#ifdef AUDIO_ENABLE
- if (did_leader_succeed) {
- PLAY_SONG(leader_succeed_song);
- } else {
- PLAY_SONG(leader_fail_song);
- }
-#endif
-} \ No newline at end of file
diff --git a/keyboards/mechwild/bde/rev2/keymaps/miketronic/rules.mk b/keyboards/mechwild/bde/rev2/keymaps/miketronic/rules.mk
deleted file mode 100644
index 6cdd598124..0000000000
--- a/keyboards/mechwild/bde/rev2/keymaps/miketronic/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-EXTRAKEY_ENABLE = yes # Audio control and System control
-TAP_DANCE_ENABLE = yes # Tap Dance keys
-NKRO_ENABLE = yes # Enable N-Key Rollover
-MACROS_ENABLED = yes
-LEADER_ENABLE = yes
-
-ENCODER_ENABLE = yes
-ENCODER_MAP_ENABLE = yes
-OLED_ENABLE = yes # Enable OLED Screen
-
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
diff --git a/keyboards/mechwild/clunker/config.h b/keyboards/mechwild/clunker/config.h
index 62caa25bb3..ee32fde520 100644
--- a/keyboards/mechwild/clunker/config.h
+++ b/keyboards/mechwild/clunker/config.h
@@ -3,20 +3,4 @@
#pragma once
-/*
- * Feature disable options
- * These options are also useful to firmware size reduction.
- */
-
-/* disable debug print */
-//#define NO_DEBUG
-
-/* disable print */
-//#define NO_PRINT
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
-
#define SOLENOID_PIN F4
diff --git a/keyboards/mechwild/clunker/info.json b/keyboards/mechwild/clunker/info.json
index 530f0fe972..1a4114f8f2 100644
--- a/keyboards/mechwild/clunker/info.json
+++ b/keyboards/mechwild/clunker/info.json
@@ -2,88 +2,612 @@
"manufacturer": "MechWild",
"keyboard_name": "Clunker",
"maintainer": "kylemccreery",
- "bootloader": "caterina",
+ "development_board": "promicro",
"diode_direction": "COL2ROW",
+ "encoder": {
+ "rotary": [
+ {"pin_a": "D2", "pin_b": "D3"}
+ ]
+ },
"features": {
"bootmagic": true,
- "command": false,
- "console": false,
+ "encoder": true,
"extrakey": true,
+ "haptic": true,
"mousekey": true,
- "nkro": true,
- "encoder": true,
- "haptic": true
+ "nkro": true
},
"matrix_pins": {
- "rows": ["F5", "F6", "B3", "F7", "B2", "B1", "B6"],
- "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"]
+ "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"],
+ "rows": ["F5", "F6", "B3", "F7", "B2", "B1", "B6"]
},
- "processor": "atmega32u4",
"url": "https://mechwild.com/product/clunker/",
"usb": {
"device_version": "1.3.0",
"pid": "0x1711",
"vid": "0x6D77"
},
- "encoder": {
- "rotary": [
- {"pin_a": "D2", "pin_b": "D3"}
- ]
+ "layout_aliases": {
+ "LAYOUT": "LAYOUT_all"
},
"layouts": {
- "LAYOUT": {
+ "LAYOUT_625u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3, "w": 2.25},
+ {"matrix": [4, 0], "x": 0, "y": 4},
+ {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4},
+ {"matrix": [4, 3], "x": 3.25, "y": 4, "w": 6.25},
+ {"matrix": [4, 5], "x": 9.5, "y": 4},
+ {"matrix": [4, 6], "x": 10.5, "y": 4},
+ {"matrix": [4, 7], "x": 11.5, "y": 4}
+ ]
+ },
+ "LAYOUT_7u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3, "w": 2.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
+ {"matrix": [4, 3], "x": 2.75, "y": 4, "w": 7},
+ {"matrix": [4, 6], "x": 9.75, "y": 4, "w": 1.5},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_split_lshift_625u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3, "w": 2.25},
+ {"matrix": [4, 0], "x": 0, "y": 4},
+ {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4},
+ {"matrix": [4, 3], "x": 3.25, "y": 4, "w": 6.25},
+ {"matrix": [4, 5], "x": 9.5, "y": 4},
+ {"matrix": [4, 6], "x": 10.5, "y": 4},
+ {"matrix": [4, 7], "x": 11.5, "y": 4}
+ ]
+ },
+ "LAYOUT_split_lshift_7u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3, "w": 2.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
+ {"matrix": [4, 3], "x": 2.75, "y": 4, "w": 7},
+ {"matrix": [4, 6], "x": 9.75, "y": 4, "w": 1.5},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_split_lshift_split_rshift_625u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3},
+ {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 4},
+ {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4},
+ {"matrix": [4, 3], "x": 3.25, "y": 4, "w": 6.25},
+ {"matrix": [4, 5], "x": 9.5, "y": 4},
+ {"matrix": [4, 6], "x": 10.5, "y": 4},
+ {"matrix": [4, 7], "x": 11.5, "y": 4}
+ ]
+ },
+ "LAYOUT_split_lshift_split_rshift_7u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3},
+ {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
+ {"matrix": [4, 3], "x": 2.75, "y": 4, "w": 7},
+ {"matrix": [4, 6], "x": 9.75, "y": 4, "w": 1.5},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_split_rshift_625u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3},
+ {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 4},
+ {"matrix": [4, 1], "x": 1, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 4},
+ {"matrix": [4, 3], "x": 3.25, "y": 4, "w": 6.25},
+ {"matrix": [4, 5], "x": 9.5, "y": 4},
+ {"matrix": [4, 6], "x": 10.5, "y": 4},
+ {"matrix": [4, 7], "x": 11.5, "y": 4}
+ ]
+ },
+ "LAYOUT_split_rshift_7u": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3},
+ {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.5},
+ {"matrix": [4, 3], "x": 2.75, "y": 4, "w": 7},
+ {"matrix": [4, 6], "x": 9.75, "y": 4, "w": 1.5},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_split_lshift_split_space": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3, "w": 2.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 2.75},
+ {"matrix": [4, 4], "x": 6.5, "y": 4, "w": 2.25},
+ {"matrix": [4, 5], "x": 8.75, "y": 4, "w": 1.25},
+ {"matrix": [4, 6], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_split_rshift_split_space": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3},
+ {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 2.75},
+ {"matrix": [4, 4], "x": 6.5, "y": 4, "w": 2.25},
+ {"matrix": [4, 5], "x": 8.75, "y": 4, "w": 1.25},
+ {"matrix": [4, 6], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_all": {
"layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0},
- {"matrix": [0, 5], "x": 5, "y": 0},
- {"matrix": [0, 6], "x": 6, "y": 0},
- {"matrix": [0, 7], "x": 7, "y": 0},
- {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
- {"matrix": [1, 1], "x": 1.5, "y": 1},
- {"matrix": [1, 2], "x": 2.5, "y": 1},
- {"matrix": [1, 3], "x": 3.5, "y": 1},
- {"matrix": [1, 4], "x": 4.5, "y": 1},
- {"matrix": [1, 5], "x": 5.5, "y": 1},
- {"matrix": [1, 6], "x": 6.5, "y": 1},
- {"matrix": [1, 7], "x": 7.5, "y": 1},
- {"matrix": [5, 7], "x": 8.5, "y": 1},
- {"matrix": [5, 6], "x": 9.5, "y": 1},
- {"matrix": [5, 5], "x": 10.5, "y": 1},
- {"matrix": [5, 4], "x": 11.5, "y": 1},
- {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
- {"matrix": [2, 1], "x": 1.75, "y": 2},
- {"matrix": [2, 2], "x": 2.75, "y": 2},
- {"matrix": [2, 3], "x": 3.75, "y": 2},
- {"matrix": [2, 4], "x": 4.75, "y": 2},
- {"matrix": [2, 5], "x": 5.75, "y": 2},
- {"matrix": [2, 6], "x": 6.75, "y": 2},
- {"matrix": [2, 7], "x": 7.75, "y": 2},
- {"matrix": [5, 1], "x": 8.75, "y": 2},
- {"matrix": [5, 2], "x": 9.75, "y": 2},
- {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
- {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
- {"matrix": [3, 1], "x": 1.25, "y": 3},
- {"matrix": [3, 2], "x": 2.25, "y": 3},
- {"matrix": [3, 3], "x": 3.25, "y": 3},
- {"matrix": [3, 4], "x": 4.25, "y": 3},
- {"matrix": [3, 5], "x": 5.25, "y": 3},
- {"matrix": [3, 6], "x": 6.25, "y": 3},
- {"matrix": [3, 7], "x": 7.25, "y": 3},
- {"matrix": [6, 7], "x": 8.25, "y": 3},
- {"matrix": [6, 6], "x": 9.25, "y": 3},
- {"matrix": [6, 5], "x": 10.25, "y": 3},
- {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
- {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
- {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
- {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
- {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 2.75},
- {"matrix": [4, 4], "x": 6.5, "y": 4, "w": 2.25},
- {"matrix": [4, 5], "x": 8.75, "y": 4, "w": 1.25},
- {"matrix": [4, 6], "x": 10, "y": 4, "w": 1.25},
- {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [5, 7], "x": 8.5, "y": 1},
+ {"matrix": [5, 6], "x": 9.5, "y": 1},
+ {"matrix": [5, 5], "x": 10.5, "y": 1},
+ {"matrix": [5, 4], "x": 11.5, "y": 1},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [5, 1], "x": 8.75, "y": 2},
+ {"matrix": [5, 2], "x": 9.75, "y": 2},
+ {"matrix": [5, 3], "x": 10.75, "y": 2, "w": 1.75},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
+ {"matrix": [3, 1], "x": 1.25, "y": 3},
+ {"matrix": [3, 2], "x": 2.25, "y": 3},
+ {"matrix": [3, 3], "x": 3.25, "y": 3},
+ {"matrix": [3, 4], "x": 4.25, "y": 3},
+ {"matrix": [3, 5], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [3, 7], "x": 7.25, "y": 3},
+ {"matrix": [6, 7], "x": 8.25, "y": 3},
+ {"matrix": [6, 6], "x": 9.25, "y": 3},
+ {"matrix": [6, 5], "x": 10.25, "y": 3},
+ {"matrix": [6, 4], "x": 11.25, "y": 3, "w": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 3], "x": 3.75, "y": 4, "w": 2.75},
+ {"matrix": [4, 4], "x": 6.5, "y": 4, "w": 2.25},
+ {"matrix": [4, 5], "x": 8.75, "y": 4, "w": 1.25},
+ {"matrix": [4, 6], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 7], "x": 11.25, "y": 4, "w": 1.25}
]
}
}
diff --git a/keyboards/mechwild/clunker/keymaps/default/keymap.c b/keyboards/mechwild/clunker/keymaps/default/keymap.c
index fd9c93fe87..28322a737e 100644
--- a/keyboards/mechwild/clunker/keymaps/default/keymap.c
+++ b/keyboards/mechwild/clunker/keymaps/default/keymap.c
@@ -15,28 +15,28 @@ enum layer_names {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Base */
- [_BASE] = LAYOUT(
+ [_BASE] = LAYOUT_all(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MUTE,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
MO(_FN1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
KC_LSFT, KC_SLSH, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, MO(_FN2), KC_RCTL
),
- [_FN1] = LAYOUT(
+ [_FN1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, HF_TOGG,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
_______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_SCLN, KC_QUOT,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_UP, KC_SLSH,
_______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT
),
- [_FN2] = LAYOUT(
+ [_FN2] = LAYOUT_all(
QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
),
- [_FN3] = LAYOUT(
+ [_FN3] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/mechwild/clunker/keymaps/via/keymap.c b/keyboards/mechwild/clunker/keymaps/via/keymap.c
index fd9c93fe87..28322a737e 100644
--- a/keyboards/mechwild/clunker/keymaps/via/keymap.c
+++ b/keyboards/mechwild/clunker/keymaps/via/keymap.c
@@ -15,28 +15,28 @@ enum layer_names {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Base */
- [_BASE] = LAYOUT(
+ [_BASE] = LAYOUT_all(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MUTE,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
MO(_FN1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
KC_LSFT, KC_SLSH, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, MO(_FN2), KC_RCTL
),
- [_FN1] = LAYOUT(
+ [_FN1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, HF_TOGG,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
_______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_SCLN, KC_QUOT,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_UP, KC_SLSH,
_______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT
),
- [_FN2] = LAYOUT(
+ [_FN2] = LAYOUT_all(
QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
),
- [_FN3] = LAYOUT(
+ [_FN3] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/mechwild/mercutio/keymaps/jonavin/config.h b/keyboards/mechwild/mercutio/keymaps/jonavin/config.h
deleted file mode 100644
index 1722a2c25c..0000000000
--- a/keyboards/mechwild/mercutio/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2021 Kyle McCreery
- * Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
diff --git a/keyboards/mechwild/mercutio/keymaps/jonavin/keymap.c b/keyboards/mechwild/mercutio/keymaps/jonavin/keymap.c
deleted file mode 100755
index b352a0d6ad..0000000000
--- a/keyboards/mechwild/mercutio/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,268 +0,0 @@
-/* Copyright 2021 Kyle McCreery
- * Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include QMK_KEYBOARD_H
-#include "jonavin.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_BASE] = LAYOUT_all(
- KC_MUTE,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- TT(_RAISE), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFTCAPS, KC_SLSH, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SC_SENT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, LT(_LOWER,KC_SPC), KC_SPC, KC_RALT, MO(_FN1), KC_RCTL ),
-
- [_FN1] = LAYOUT_all(
- ENCFUNC,
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL,
- KC_CAPS, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SCRL, KC_PAUS, KC_NO, KC_NO,
- KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NUM, KC_NO, KC_NO, KC_NO, SC_SENT,
- KC_TRNS, KC_WINLCK, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ),
-
- [_LOWER] = LAYOUT_all(
- KC_TRNS,
- KC_GRAVE, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- KC_TRNS, KC_MINS, KC_EQL, KC_NO, KC_NO, KC_NO, KC_NO, KC_QUES, KC_SLSH, KC_PIPE, KC_BSLS, KC_TILD,
- KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_NO, KC_NO, KC_NO, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ),
-
- [_RAISE] = LAYOUT_all(
- KC_TRNS,
- KC_TAB, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PMNS, KC_PPLS, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,
- TT(_RAISE), KC_LEFT, KC_DOWN, KC_RIGHT,KC_PGDN, KC_PSLS, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PDOT, KC_PEQL,
- KC_TRNS, KC_TRNS, KC_NO, KC_DEL, KC_INS, KC_NO, KC_PAST, KC_P0, KC_P1, KC_P2, KC_P3, KC_PENT,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS )
-};
-
-/* These are needed whether encoder function is enabled or not when ENCFUNC keycode is pressed.?
- Defaults never changes if no encoder present to change it
-*/
-typedef struct {
- char keydesc[6]; // this will be displayed on OLED
- uint16_t keycode; // this is the keycode that will be sent when activted
-} keycodedescType;
-
-static const keycodedescType PROGMEM keyselection[] = {
- // list of key codes that will be scrollled through by encoder and description
- {"TASK", KC_TASK},
- {"INS", KC_INS},
- {"DEL", KC_DEL},
- {"PrtSc", KC_PSCR},
- {"ScrLk", KC_SCLN},
- {"Break", KC_PAUS},
- {"C-A-D", KC_CAD}, // Ctrl-Alt-Del
- {"AltF4", KC_AF4},
- {"PLAY", KC_MEDIA_PLAY_PAUSE},
- {"FLASH", QK_BOOT}, // firmware flash mode
-};
-
-#define MAX_KEYSELECTION ARRAY_SIZE(keyselection)
-
-static uint8_t selectedkey_idx = 0;
-static keycodedescType selectedkey_rec;
-
-static void set_selectedkey(uint8_t idx) {
- // make a copy from PROGMEM
- memcpy_P (&selectedkey_rec, &keyselection[idx], sizeof selectedkey_rec);
-
- //selectedkey_rec = keyselection[idx];
-
-}
-
-void keyboard_post_init_keymap(void) {
- // Call the keyboard post init code.
- set_selectedkey(selectedkey_idx);
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case ENCFUNC:
- if (record->event.pressed) {
- selectedkey_rec.keycode == QK_BOOT ? reset_keyboard() : tap_code16(selectedkey_rec.keycode); // handle QK_BOOT code
- } else {
- // when keycode is released
- }
- break;
- }
- return true;
-};
-
-
-
-#ifdef ENCODER_ENABLE // Encoder Functionality
- void encoder_action_selectkey(bool clockwise) {
- if ( clockwise ) {
- if ( selectedkey_idx < MAX_KEYSELECTION-1) {
- selectedkey_idx ++;
- } else {
- // do nothing
- }
- } else if ( !clockwise ) {
- if ( selectedkey_idx > 0){
- selectedkey_idx --;
- } else {
- // do nothing
- }
- }
- set_selectedkey(selectedkey_idx);
- }
-
- bool encoder_update_user(uint8_t index, bool clockwise) {
- #ifdef OLED_ENABLE
- oled_clear();
- oled_render();
- #endif
- uint8_t mods_state = get_mods();
- switch (index) {
- case 0: // This is the only encoder right now, keeping for consistency
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- if (!mods_state) {
- encoder_action_selectkey(clockwise);
- break;
- } else {
- // continue to default
- }
- default: // all other layers
- if (mods_state & MOD_BIT(KC_LSFT) ) { // If you are holding L shift, encoder changes layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- }
- break;
- }
- break;
- }
- return false;
- }
-#endif
-
-#ifdef OLED_ENABLE // OLED Functionality
- oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_180; // flips the display 180 degrees if offhand
- }
-
- bool clear_screen = false; // used to manage singular screen clears to prevent display glitch
- static void render_name(void) { // Render Mercutio Script Text
- static const char PROGMEM mercutio_name[] = {
- 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0xB6, 0x95, 0xB5, 0x96, 0xD5, 0xB6, 0xB6,
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4,
- 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00
- };
- oled_write_P(mercutio_name, false);
- }
-
- static void render_logo(void) { // Render MechWild "MW" Logo
- static const char PROGMEM logo_1[] = {0x97, 0x98, 0x99, 0x9A,0x00};
- static const char PROGMEM logo_2[] = {0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0x00};
- static const char PROGMEM logo_3[] = {0xD7, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xB6, 0x00};
- static const char PROGMEM logo_4[] = {0xB6, 0xB6, 0xB6, 0x9B, 0x9C, 0x9D, 0x9E, 0x00};
- oled_set_cursor(0,0);
- oled_write_P(logo_1, false);
- oled_set_cursor(0,1);
- oled_write_P(logo_2, false);
- oled_set_cursor(0,2);
- oled_write_P(logo_3, false);
- oled_set_cursor(0,3);
- oled_write_P(logo_4, false);
- }
-
- bool oled_task_user(void) {
- led_t led_state = host_keyboard_led_state();
- if ( !led_state.num_lock && !led_state.caps_lock && get_selected_layer() == 0 && get_highest_layer(layer_state) == 0 ) {
- render_name();
- clear_screen = true;
- } else {
- if (clear_screen == true) {
- oled_clear();
- oled_render();
- clear_screen = false;
- }
- render_logo();
- oled_set_cursor(8,2);
- switch(get_selected_layer()){
- case 0:
- oled_write_P(PSTR("BASE"), false);
- break;
- case 1:
- oled_write_P(PSTR("FN "), false);
- oled_write(selectedkey_rec.keydesc, false);
- break;
- case 2:
- oled_write_P(PSTR("LOWER"), false);
- break;
- case 3:
- oled_write_P(PSTR("RAISE"), false);
- break;
- default:
- oled_write_P(PSTR("Layer ?"), false); // Should never display, here as a catchall
- }
- oled_write_P(keymap_config.no_gui ? PSTR(" WL") : PSTR(" "), false);
- oled_set_cursor(8,3);
- if (get_highest_layer(layer_state) == get_selected_layer()) {
- oled_write_P(PSTR(" "), false);
- } else {
- switch (get_highest_layer(layer_state)) {
- case 0:
- oled_write_P(PSTR("Temp BASE"), false);
- break;
- case 1:
- oled_write_P(PSTR("Temp FN "), false);
- oled_write(selectedkey_rec.keydesc, false);
- break;
- case 2:
- oled_write_P(PSTR("Temp LOWER"), false);
- break;
- case 3:
- oled_write_P(PSTR("Temp RAISE"), false);
- break;
- default:
- oled_write_P(PSTR("Temp Layer ?"), false); // Should never display, here as a catchall
- }
- }
- led_t led_state = host_keyboard_led_state();
- oled_set_cursor(8,0);
- uint8_t wpm_count;
- wpm_count=get_current_wpm();
-
- if (wpm_count > 020) { // how wpm when > 20
- oled_write_P(PSTR(" WPM: "), false);
- oled_write(get_u8_str(wpm_count, ' '), false);
- } else {
- oled_write_P(PSTR(" JONAVIN "), false); // otherwise display keymap name
- }
-
- oled_set_cursor(8,1);
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAPS ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR") : PSTR(" "), false);
-
- }
-
- return false;
- }
-
- void suspend_power_down_user(void) { // shutdown oled when powered down to prevent OLED from showing Mercutio all the time
- oled_off();
- }
-#endif
diff --git a/keyboards/mechwild/mercutio/keymaps/jonavin/readme.md b/keyboards/mechwild/mercutio/keymaps/jonavin/readme.md
deleted file mode 100644
index ed1395ede6..0000000000
--- a/keyboards/mechwild/mercutio/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,62 +0,0 @@
-Jonavin's Custom Mercutio Layout
- - Based on Fancy keymap
-
-Features
- - Split Enter, shftEnter, Split Backspace
- - standard shorten home row keys
- - numpad and nav keys in RAISE LAYER
- - symbols in LOWER layer
- - CAPS LOCK 2 taps for RAISE layer toggle
- - RAISE layer left spacebar Backspace
- - Shift+Encoder for layer changes (from mercutio/fancy keymap)
- - MOUSEKEYS is disbled
- - shutdown oled when powered down to prevent OLED from showing Mercutio all the time
- - add WPM indicator when wpm is > 20 wpm
- - add double tap of Left Shift to toggle Caps Lock
- - add WinLock feature with FN + Win; display WL on OLED when enabled
-
- - FN layer has encoder selectable key codes and displayed on OLED
-
- Change these in keymap.c to assign your desired key selection
-
- static const keycodedescType PROGMEM keyselection[] = {
- // list of key codes that will be scrollled through by encoder and description
- {"TASK", KC_TASK},
- {"INS", KC_INS},
- {"DEL", KC_DEL},
- {"PrtSc", KC_PSCR},
- {"ScrLk", KC_SCLN},
- {"Break", KC_PAUS},
- {"C-A-D", KC_CAD}, // Ctrl-Alt-Del
- {"AltF4", KC_AF4},
- {"PLAY", KC_MEDIA_PLAY_PAUSE},
- {"RESET", QK_BOOT}, // firmware flash mode
- };
-
- - Additional encoder functionality
- While holding Left Ctrl, navigates next or previous word
- While holding Left Alt, media next track or previous track
-
-
-rules.mk OPTIONS - Active features from userspace
-STARTUP_NUMLOCK_ON = yes
- - turns on NUMLOCK by default
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
- - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS
-
-Default Layers
-![image](https://user-images.githubusercontent.com/71780717/127014682-3aa05136-6dc7-4a40-9be1-89a5b584848a.png)
-
-MO(1) / FN Layer
-![image](https://user-images.githubusercontent.com/71780717/127014620-a3a36dc6-6e22-4a9b-ad9a-6c6a5d18cbc5.png)
-
-MO(2) / Lower layer
-![image](https://user-images.githubusercontent.com/71780717/127014816-09598d62-2d23-42e5-a625-504a79a54ca9.png)
-
-MO(3) / Raise layer
-![image](https://user-images.githubusercontent.com/71780717/127014881-a181c198-a7e8-4f48-9789-a7a85eabcbd1.png)
-
-
-
-
diff --git a/keyboards/mechwild/mercutio/keymaps/jonavin/rules.mk b/keyboards/mechwild/mercutio/keymaps/jonavin/rules.mk
deleted file mode 100644
index 0b76c6e57c..0000000000
--- a/keyboards/mechwild/mercutio/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-VIA_ENABLE = yes
-
-MOUSEKEY_ENABLE = yes
-WPM_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
diff --git a/keyboards/mechwild/mokulua/mirrored/config.h b/keyboards/mechwild/mokulua/mirrored/config.h
index 219a4ec7b0..d62d7b49f0 100644
--- a/keyboards/mechwild/mokulua/mirrored/config.h
+++ b/keyboards/mechwild/mokulua/mirrored/config.h
@@ -7,10 +7,6 @@
#define MASTER_LEFT
//#define MASTER_RIGHT
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-#define SPLIT_OLED_ENABLE
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/mechwild/mokulua/mirrored/info.json b/keyboards/mechwild/mokulua/mirrored/info.json
index 5221238784..7289147e6b 100644
--- a/keyboards/mechwild/mokulua/mirrored/info.json
+++ b/keyboards/mechwild/mokulua/mirrored/info.json
@@ -22,7 +22,15 @@
"tap_keycode_delay": 10
},
"split": {
- "soft_serial_pin": "D3"
+ "soft_serial_pin": "D3",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "modifiers": true,
+ "oled": true
+ }
+ }
},
"rgblight": {
"saturation_steps": 8,
diff --git a/keyboards/mechwild/mokulua/standard/config.h b/keyboards/mechwild/mokulua/standard/config.h
index f13e1e582a..953e53c236 100644
--- a/keyboards/mechwild/mokulua/standard/config.h
+++ b/keyboards/mechwild/mokulua/standard/config.h
@@ -7,10 +7,6 @@
#define MASTER_LEFT
//#define MASTER_RIGHT
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-#define SPLIT_OLED_ENABLE
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/mechwild/mokulua/standard/info.json b/keyboards/mechwild/mokulua/standard/info.json
index 05ca6775df..da82447980 100644
--- a/keyboards/mechwild/mokulua/standard/info.json
+++ b/keyboards/mechwild/mokulua/standard/info.json
@@ -22,7 +22,15 @@
"tap_keycode_delay": 10
},
"split": {
- "soft_serial_pin": "D3"
+ "soft_serial_pin": "D3",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "modifiers": true,
+ "oled": true
+ }
+ }
},
"rgblight": {
"saturation_steps": 8,
diff --git a/keyboards/mechwild/murphpad/keymaps/jonavin/config.h b/keyboards/mechwild/murphpad/keymaps/jonavin/config.h
deleted file mode 100644
index 2636ea4051..0000000000
--- a/keyboards/mechwild/murphpad/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-// Standard encoder position. Set to 1 for top right optional position
-#define ENCODER_DEFAULTACTIONS_INDEX 0
-
-// Increase layers to 6 for VIA
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
-// Remove line below for vertical layout
-#define LANDSCAPE_MODE
diff --git a/keyboards/mechwild/murphpad/keymaps/jonavin/keymap.c b/keyboards/mechwild/murphpad/keymaps/jonavin/keymap.c
deleted file mode 100644
index 070b572507..0000000000
--- a/keyboards/mechwild/murphpad/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,424 +0,0 @@
-/* Copyright 2021 Kyle McCreery
- * Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "jonavin.h"
-#include "layout_landscape.h"
-
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _FN2 = 2,
- _FN3,
- _FN4,
- _RGB
-};
-
-#ifdef LANDSCAPE_MODE
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_BASE] = LAYOUT_landscape(
- TT(_FN1), TT(_FN2), KC_MUTE,
-
- KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_BSPC,
- KC_TAB, KC_P7, KC_P8, KC_P9, KC_PDOT, KC_RGUI,
- KC_RSFT, KC_P4, KC_P5, KC_P6, KC_COMMA, KC_RCTL,
- KC_P0, KC_P1, KC_P2, KC_P3, KC_PENT, KC_RALT,
-
- TT(_FN3), TT(_FN4), TT(_RGB)
- ),
- [_FN1] = LAYOUT_landscape(
- _______, _______, ENCFUNC,
-
- _______, KC_F10, KC_F11, KC_F12, KC_PSCR, _______,
- _______, KC_F7, KC_F8, KC_F9, KC_SCRL, _______,
- _______, KC_F4, KC_F5, KC_F6, KC_PAUS, _______,
- _______, KC_F1, KC_F2, KC_F3, _______, _______,
-
- _______, _______, _______
- ),
- [_FN2] = LAYOUT_landscape(
- _______, _______, QK_BOOT,
-
- _______, _______, KC_MPLY, KC_MPRV, KC_MNXT, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
-
- _______, _______, _______
- ),
- [_FN3] = LAYOUT_landscape(
- _______, _______, _______,
-
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
-
- _______, _______, _______
- ),
- [_FN4] = LAYOUT_landscape(
- _______, _______, _______,
-
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______,
-
- _______, _______, _______
- ),
- [_RGB] = LAYOUT_landscape(
- _______, _______, _______,
-
- _______, _______, _______, _______, _______, _______,
- _______, RGB_HUD, RGB_SPI, RGB_HUI, RGB_SAI, _______,
- _______, RGB_RMOD, RGB_TOG, RGB_MOD, RGB_SAD, _______,
- _______, RGB_VAD, RGB_SPD, RGB_VAI, KC_NO, _______,
-
- _______, _______, _______
- ),
-};
-#endif // LANDSCAPE_MODE
-
-#ifndef LANDSCAPE_MODE
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base */
- [_BASE] = LAYOUT(
- TT(_FN2),TT(_FN3),TT(_FN4),LT(_RGB,KC_PSCR),
- KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
- KC_P7, KC_P8, KC_P9, KC_PPLS,
- KC_MUTE, KC_P4, KC_P5, KC_P6, _______,
- TT(_FN1), KC_P1, KC_P2, KC_P3, KC_PENT,
- KC_RALT, KC_P0, _______, KC_PDOT, _______,
-
- TT(_FN3), TT(_FN4), TT(_RGB)
- ),
- [_FN1] = LAYOUT(
- _______, _______, _______, QK_BOOT,
- KC_CALC, _______, _______, _______,
- _______, _______, _______, _______,
- ENCFUNC, KC_TAB, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, KC_BSPC, _______, KC_DEL, _______,
-
- _______, _______, _______
- ),
- [_FN2] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, KC_MPLY, KC_MPRV,
- _______, _______, _______, KC_MNXT,
- QK_BOOT, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______, _______
- ),
- [_FN3] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______, _______
- ),
- [_FN4] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______,
-
- _______, _______, _______
- ),
- [_RGB] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- RGB_HUD, RGB_SPI, RGB_HUI, _______,
- _______, RGB_RMOD, RGB_TOG, RGB_MOD, _______,
- _______, RGB_VAD, RGB_SPD, RGB_VAI, _______,
- _______, RGB_SAD, _______, RGB_SAI, _______,
-
- _______, _______, _______
- ),
-};
-#endif // !LANDSCAPE_MODE
-
-typedef struct {
- char keydesc[6]; // this will be displayed on OLED
- uint16_t keycode; // this is the keycode that will be sent when activted
-} keycodedescType;
-
-static const keycodedescType PROGMEM keyselection[] = {
- // list of key codes that will be scrolled through by encoder and description
- {"TASK ", KC_TASK},
- {"PREV ", KC_MEDIA_PREV_TRACK},
- {"NEXT ", KC_MEDIA_NEXT_TRACK},
- {"PLAY ", KC_MEDIA_PLAY_PAUSE},
- {"PrtScm", KC_PSCR},
- {"ScrLk", KC_SCLN},
- {"Break", KC_PAUS},
- {"C-A-D", KC_CAD}, // Ctrl-Alt-Del
- {"AltF4", KC_AF4},
- {"RESET", QK_BOOT}, // firmware flash mode
-};
-
-#define MAX_KEYSELECTION ARRAY_SIZE(keyselection)
-
-static uint8_t selectedkey_idx = 0;
-static keycodedescType selectedkey_rec;
-
-static void set_selectedkey(uint8_t idx) {
- // make a copy from PROGMEM
- memcpy_P (&selectedkey_rec, &keyselection[idx], sizeof selectedkey_rec);
-
- //selectedkey_rec = keyselection[idx];
-
-}
-
-void keyboard_post_init_keymap(void) {
- // Call the keyboard post init code.
- set_selectedkey(selectedkey_idx);
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case ENCFUNC:
- if (record->event.pressed) {
- selectedkey_rec.keycode == QK_BOOT ? reset_keyboard() : tap_code16(selectedkey_rec.keycode); // handle QK_BOOT code
- } else {
- // when keycode is released
- }
- break;
- }
- return true;
-};
-
-
-#ifdef ENCODER_ENABLE // Encoder Functionality
- void encoder_action_selectkey(bool clockwise) {
- if ( clockwise ) {
- if ( selectedkey_idx < MAX_KEYSELECTION-1) {
- selectedkey_idx ++;
- } else {
- // do nothing
- }
- } else if ( !clockwise ) {
- if ( selectedkey_idx > 0){
- selectedkey_idx --;
- } else {
- // do nothing
- }
- }
- set_selectedkey(selectedkey_idx);
- }
-
- bool encoder_update_user(uint8_t index, bool clockwise) {
- #ifdef OLED_ENABLE
- oled_clear();
- oled_render();
- #endif
- uint8_t mods_state = get_mods();
- switch (index) {
- case 0: // main primary encoder
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case _FN1: // on Fn layer select what the encoder does when pressed
- if (!mods_state) {
- encoder_action_selectkey(clockwise);
- break;
- } else {
- // continue to default
- }
- case _RGB:
- if (!mods_state) {
- encoder_action_rgb_hue(clockwise);
- break;
- }
- default: // all other layers
- if (mods_state & MOD_BIT(KC_RSFT) ) { // If you are holding R shift, encoder changes layers
- encoder_action_layerchange(clockwise);
- } else if (mods_state & MOD_BIT(KC_RCTL)) { // if holding Right Ctrl, navigate next/prev word
- encoder_action_navword(clockwise);
- } else if (mods_state & MOD_BIT(KC_RALT)) { // if holding Right Alt, change media next/prev track
- encoder_action_mediatrack(clockwise);
- } else {
- encoder_action_volume(clockwise); // Otherwise it just changes volume
- }
- break;
- }
- break;
- case 1: // optional secondary encoder
- switch(get_highest_layer(layer_state)){ // special handling per layer
- case _RGB:
- if (!mods_state) {
- encoder_action_rgb_mode(clockwise);
- break;
- }
- default: // all other layers
- encoder_action_mediatrack(clockwise); // Otherwise prev/next track
- break;
- }
- }
- return false;
- }
-#endif
-
-
-#ifdef OLED_ENABLE
- static void render_logo(void) { // Render MechWild "MW" Logo
- static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00};
- static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00};
- static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00};
- static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00};
- oled_set_cursor(0,0);
- oled_write_P(logo_1, false);
- oled_set_cursor(0,1);
- oled_write_P(logo_2, false);
- oled_set_cursor(0,2);
- oled_write_P(logo_3, false);
- oled_set_cursor(0,3);
- oled_write_P(logo_4, false);
- }
-
- #ifdef LANDSCAPE_MODE
- oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_0; // do not flip the display
- }
-
- bool oled_task_user(void) {
-
- render_logo();
- oled_set_cursor(8,2);
- switch(get_selected_layer()){
- case _BASE:
- oled_write_P(PSTR("BASE"), false);
- break;
- case _FN1:
- oled_write_P(PSTR("FN "), false);
- oled_write(selectedkey_rec.keydesc, false);
- break;
- case _FN2:
- oled_write_P(PSTR("FN2 "), false);
- break;
- case _FN3:
- oled_write_P(PSTR("FN3 "), false);
- break;
- case _FN4:
- oled_write_P(PSTR("FN4 "), false);
- break;
- case _RGB:
- oled_write_P(PSTR("RGB "), false);
- break;
- default:
- oled_write_P(PSTR(" ?? "), false); // Should never display, here as a catchall
- }
- oled_write_P(keymap_config.no_gui ? PSTR(" WL") : PSTR(" "), false);
- oled_set_cursor(8,3);
- if (get_highest_layer(layer_state) == get_selected_layer()) {
- oled_write_P(PSTR(" "), false);
- } else {
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- oled_write_P(PSTR("Temp BASE"), false);
- break;
- case _FN1:
- oled_write_P(PSTR("Temp FN "), false);
- oled_write(selectedkey_rec.keydesc, false);
- break;
- case _FN2:
- oled_write_P(PSTR("Temp FN2 "), false);
- break;
- case _FN3:
- oled_write_P(PSTR("Temp FN3 "), false);
- break;
- case _FN4:
- oled_write_P(PSTR("Temp FN4 "), false);
- break;
- case _RGB:
- oled_write_P(PSTR("Temp RGB "), false);
- break;
- default:
- oled_write_P(PSTR("Temp ????"), false); // Should never display, here as a catchall
- }
- }
- led_t led_state = host_keyboard_led_state();
- oled_set_cursor(8,0);
- oled_write_P(PSTR(" JONAVIN "), false);
- oled_set_cursor(8,1);
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAPS ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR") : PSTR(" "), false);
- return false;
- }
- #endif // LANDSCAPE_MODE
-
- // regular mode
- #ifndef LANDSCAPE_MODE
- bool oled_task_user(void) {
- render_logo();
- oled_set_cursor(0,5);
-
- oled_write_ln_P(PSTR("-JV-"), false);
- oled_write_ln_P(PSTR(" "), false);
-
- bool showSelectedKey = false;
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- oled_write_ln_P(PSTR("BASE"), false);
- break;
- case _FN1:
- oled_write_ln_P(PSTR("FN 1"), false);
- showSelectedKey = true;
- break;
- case _FN2:
- oled_write_ln_P(PSTR("FN 2"), false);
- break;
- case _FN3:
- oled_write_ln_P(PSTR("FN 3"), false);
- break;
- case _FN4:
- oled_write_ln_P(PSTR("FN 4"), false);
- break;
- case _RGB:
- oled_write_ln_P(PSTR("RGB "), false);
- break;
- default:
- oled_write_ln_P(PSTR(" ?? "), false);
- }
- if (showSelectedKey) oled_write_ln(selectedkey_rec.keydesc, false);
- else oled_write_ln_P(PSTR(" "), false);
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_set_cursor(0,11);
- oled_write_ln_P(led_state.num_lock ? PSTR(" NUM") : PSTR(" "), false);
- oled_write_ln_P(led_state.caps_lock ? PSTR(" CAP") : PSTR(" "), false);
- oled_write_ln_P(led_state.scroll_lock ? PSTR(" SCR") : PSTR(" "), false);
- return false;
- }
- #endif // !LANDSCAPE_MODE
-
- void suspend_power_down_user(void) { // shutdown oled when powered down to prevent OLED from showing Mercutio all the time
- oled_off();
- rgblight_disable_noeeprom();
- }
-
- void suspend_wakeup_init_user(void) {
- rgblight_enable_noeeprom();
- }
-#endif
diff --git a/keyboards/mechwild/murphpad/keymaps/jonavin/layout_landscape.h b/keyboards/mechwild/murphpad/keymaps/jonavin/layout_landscape.h
deleted file mode 100644
index 2a3dce21d4..0000000000
--- a/keyboards/mechwild/murphpad/keymaps/jonavin/layout_landscape.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include "quantum.h"
-
-/* First section contains the physical layout of the board and position of keys.
- *
- * Second is a two-dimensional array which represents the switch matrix.
- */
-
-#define LAYOUT_landscape( \
- k50, k40, k30, \
- k51, k41, k31, k20, k10, k00, \
- k52, k42, k32, k21, k11, k01, \
- k53, k43, k33, k22, k12, k02, \
- k54, k44, k34, k23, k13, k03, \
- \
- BACK00, BACK01, BACK02 \
-\
-) { \
- { BACK00, k00, k01, k02, k03 }, \
- { BACK01, k10, k11, k12, k13 }, \
- { BACK02, k20, k21, k22, k23 }, \
- { k30, k31, k32, k33, k34 }, \
- { k40, k41, k42, k43, k44 }, \
- { k50, k51, k52, k53, k54 } \
-}
-
diff --git a/keyboards/mechwild/murphpad/keymaps/jonavin/readme.md b/keyboards/mechwild/murphpad/keymaps/jonavin/readme.md
deleted file mode 100644
index 95835343e1..0000000000
--- a/keyboards/mechwild/murphpad/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,76 +0,0 @@
-Jonavin's Custom MurphPad Landscape Layout
-
-This allows you to use Murphpad in a horizontal/landscape orientation with extra layers
-
- - OLED has been rotated for landscape mode
- - Keymap positions have been updated so it's easier to visualize the keymap in landscape
-
- [_BASE] = LAYOUT_landscape(
- TT(_FN1), TT(_FN2), KC_MUTE,
-
- KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_BSPC,
- KC_TAB, KC_P7, KC_P8, KC_P9, KC_PDOT, KC_RGUI,
- KC_RSFT, KC_P4, KC_P5, KC_P6, KC_COMMA, KC_RCTL,
- KC_P0, KC_P1, KC_P2, KC_P3, KC_PENT, KC_RALT,
-
- _______, _______, _______
- ),
-
-NOTE: VIA is enabled, but it will show it in the normal orientation until I build a landscape layout version
-
-Special Features
- - FN1 layer has encoder selectable key codes and displayed on OLED
-
- Change these in keymap.c to assign your desired key selection
-
- static const keycodedescType PROGMEM keyselection[] = {
- // list of key codes that will be scrollled through by encoder and description
- {"TASK ", KC_TASK},
- {"PREV ", KC_MEDIA_PREV_TRACK},
- {"NEXT ", KC_MEDIA_NEXT_TRACK},
- {"PLAY ", KC_MEDIA_PLAY_PAUSE},
- {"PrtScm", KC_PSCR},
- {"ScrLk", KC_SCLN},
- {"Break", KC_PAUS},
- {"C-A-D", KC_CAD}, // Ctrl-Alt-Del
- {"AltF4", KC_AF4},
- {"RESET", QK_BOOT}, // firmware flash mode
- };
-
- - Additional encoder functionality
- - While holding R Shift, changes layers
- - While holding R Ctrl, navigates next or previous word
- - While holding R Alt, media next track or previous track
- - Otherwise change volume up/dn
-
-
-rules.mk OPTIONS - Active features from userspace
-
- - STARTUP_NUMLOCK_ON = yes
- - turns on NUMLOCK by default
-
-DEFAULT LANDSCAPE MAPPING
-
-![image](https://user-images.githubusercontent.com/71780717/131718965-b20afef6-3bc5-49e4-952f-5755a9d6d539.png)
-
-
-FN1 Layer 1
-
-![image](https://user-images.githubusercontent.com/71780717/131719025-d41cbcd9-80b1-4a0a-abb5-55d878752dc6.png)
-
-
-FN2 Layer 2
-
-![image](https://user-images.githubusercontent.com/71780717/132967003-63268514-2ac3-4069-bca1-6d92992ca403.png)
-
-
-RGB Layer 5 - Use Shift+Encoder to get to RGB layer 5
-
-![image](https://user-images.githubusercontent.com/71780717/131719492-e2d05a75-3a7a-48ca-94a3-faa3ff891914.png)
-
---------------
-
-NORMAL / TRADITIONAL NON-LANDSCAPE NUMPAD LAYOUT
-
-![image](https://user-images.githubusercontent.com/71780717/132966975-3b463fb4-059f-42c5-b8b3-a3d35f4a0d6b.png)
-
diff --git a/keyboards/mechwild/murphpad/keymaps/jonavin/rules.mk b/keyboards/mechwild/murphpad/keymaps/jonavin/rules.mk
deleted file mode 100644
index 4887fb1bdc..0000000000
--- a/keyboards/mechwild/murphpad/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-VIA_ENABLE = yes
-LTO_ENABLE = yes
-
-STARTUP_NUMLOCK_ON = yes
-ENCODER_DEFAULTACTIONS_ENABLE = no
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/config.h b/keyboards/mechwild/obe/keymaps/jonavin/config.h
deleted file mode 100644
index 8a812f1550..0000000000
--- a/keyboards/mechwild/obe/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2021 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
-
-#ifdef RGBLIGHT_ENABLE
- // Redefine number of LED
- #ifdef RGBLED_NUM
- #undef RGBLED_NUM
- #endif // DEBUG
- #define RGBLED_NUM 20
-
- #define RGBLIGHT_LAYERS
- #define RGBLIGHT_SLEEP
-#endif // RGBLIGHT_ENABLE
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/keymap.c b/keyboards/mechwild/obe/keymaps/jonavin/keymap.c
deleted file mode 100644
index 1fa3378c16..0000000000
--- a/keyboards/mechwild/obe/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Copyright 2021 Kyle McCreery
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "jonavin.h"
-
-#ifdef RGBLIGHT_ENABLE
- // Custom RGB Colours
- #define HSV_OBE_BOW 180, 100, 100 // colour for matching keycaps
-#endif // RGBLIGHT_ENABLE
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base */
- [_BASE] = LAYOUT(
- KC_TSTOG,QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_PGDN, TT(_RAISE), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFTCAPSWIN,KC_Z, KC_X, KC_C, KC_V, KC_B, LT(_LOWER,KC_B), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_SFTUP,KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN1), KC_RAISESPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
- [_FN1] = LAYOUT(
- KC_MUTE, KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_INS,
- KC_HOME, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SCRL, KC_PAUS, KC_NO, KC_NO, KC_NO, QK_BOOT,
- KC_END, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NUM, KC_NO, KC_NO, KC_NO, KC_NO, KC_PGUP, KC_TRNS,
- KC_TRNS,KC_WINLCK,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_END
- ),
- [_LOWER] = LAYOUT(
- EE_CLR, KC_TILD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_TRNS, KC_DEL,
- RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, EMO_TEARS, EMO_SAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_TOG,
- RGB_HUD, KC_NO, KC_NO, EMO_SHRUG,KC_NO, KC_NO, KC_NO, KC_NO, EMO_JOY, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
- KC_NO, KC_NO, KC_NO, EMO_CONFUSE,KC_NO,KC_NO,KC_TRNS,EMO_NERVOUS, KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD, KC_TRNS,
- KC_TRNS, KC_APP, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SPD, RGB_RMOD,RGB_SPI
- ),
- [_RAISE] = LAYOUT(
- KC_NO, KC_GRV, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_PSLS, KC_DEL,
- KC_VOLU, KC_NO, KC_HOME,KC_UP, KC_END, KC_PGUP, KC_NO, KC_TAB, KC_P4, KC_P5, KC_P6, KC_NO, KC_NO, KC_NO, KC_PEQL,
- KC_VOLD,TT(_RAISE),KC_LEFT,KC_DOWN,KC_RGHT, KC_PGDN, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_NO, KC_PAST, KC_PENT,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_P0, KC_00, KC_NO, KC_PDOT, KC_PSLS, CT_PGUP, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, CT_HOME, CT_PGDN, CT_END
- )
-};
-
-#ifdef RGBLIGHT_ENABLE
-
- enum custom_rgblight_layers
- {
- _rgbWINLOCK, _rgbFN,
- _rgbLOWER,
- _rgbRAISE
- };
-
- // Optional RGB Light Mapping Zones {LED Posiiton, Number of LEDs, Colour}
- const rgblight_segment_t PROGMEM _rgb_winlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {1, 3, HSV_RED},
- {15, 3, HSV_RED}
- );
- const rgblight_segment_t PROGMEM _rgb_fn_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {6, 6, HSV_PURPLE}
- );
- // Light LEDs 9 & 10 in cyan when keyboard layer 1 is active
- const rgblight_segment_t PROGMEM _rgb_lower_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 10, HSV_YELLOW}
- );
-
- const rgblight_segment_t PROGMEM _rgb_raise_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {3, 5, HSV_GREEN},
- {10, 5, HSV_GREEN}
- );
-
- const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- _rgb_winlock_layer,
- _rgb_fn_layer,
- _rgb_lower_layer,
- _rgb_raise_layer
- );
-
- bool led_update_user(led_t led_state) {
- rgblight_set_layer_state(_rgbWINLOCK, keymap_config.no_gui);
- writePin(LED_CAPS_LOCK_PIN, led_state.caps_lock);
- #ifdef INVERT_NUMLOCK_INDICATOR
- writePin(LED_NUM_LOCK_PIN, !led_state.num_lock); // inverse numlock indicator override
- #else
- writePin(LED_NUM_LOCK_PIN, led_state.num_lock); // normal, light LED when numlock on
- #endif // INVERT_NUMLOCK_INDICATOR
- return false;
- }
-
- layer_state_t layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(_rgbFN, layer_state_cmp(state, _FN1));
- rgblight_set_layer_state(_rgbLOWER, layer_state_cmp(state, _LOWER));
- rgblight_set_layer_state(_rgbRAISE, layer_state_cmp(state, _RAISE));
- return state;
- }
-#endif // RGBLIGHT_ENABLE
-
-void keyboard_post_init_keymap(void) {
- // keyboard_post_init_user() moved to userspace
- #ifdef RGBLIGHT_ENABLE
- rgblight_enable_noeeprom();
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_sethsv_noeeprom(HSV_OBE_BOW); // Default startup colour
- rgblight_layers = _rgb_layers;
- #endif
-}
-
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/readme.md b/keyboards/mechwild/obe/keymaps/jonavin/readme.md
deleted file mode 100644
index ec17981caf..0000000000
--- a/keyboards/mechwild/obe/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,54 +0,0 @@
-# Jonavin's MechWild Orange Boy Ergo keymap
-
---> This keymap makes use of user/jonavin userspace
-
-Features
- - Split spacebars, Split Backspace
- - Inverted Num Lock indicator (LED on when num lock if off)
- - RGB Winlock indicator (requires LED stripto be installed)
- - RGB Layer indicators: FN/MO1 - Purple; LOWER/MO2 - Yellow; RAISE/MO3/NumPad - Green
- - quick demo https://youtu.be/gR1awbsouLk
-
-- Add PrtScr, Scroll Lock, Break, NumLock to Fn layer
-- Implement Win key lock using Fn+Win
-- Layer 2 (LOWER) when right B is held -- for emoticons
-- Layer 2 RGB functions, and EEPROM Reset
-- Layer 3 (RAISE) mod on Caps Lock with double-tap to switch to this layer, double tap to switch back
- - provides arrows on WASD and additional nav keys + right hand numpad with 00; an be used for Alt Code entry
- - left spacebar Backspace
-- add double tap of Left Shift to toggle Caps Lock
-- Up arrow is also Shift when held
-- Pushing the encoder switches the default encoder scroll between volume control and Alt-Tab
-
-
-rules.mk OPTIONS - Active features from userspace
---------------------------------------------------
-
-STARTUP_NUMLOCK_ON = yes
-- turns on NUMLOCK by default
-
-ENCODER_DEFAULTACTIONS_ENABLE = yes
-- Enables default encoder funtions
- - holding Left shift, change layers
- - holding right shift, Navigate page up/down
- - holding Left Ctrl, navigate prev/next word
- - holding Left Alt, change media prev/next track
- - default is change volume
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
- - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS
-
-IDLE_TIMEOUT_ENABLE = yes
- - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically
-
-EMOTICON_ENABLE
- - adds EMO_ keycodes for text emojis
-
-INVERT_NUMLOCK_INDICATOR
- - inverts the Num lock indicator, LED is on when num lokc is off
-
-ALTTAB_SCROLL_ENABLE
- - bind KS_TSTOG to a different key to change how this toggle happens
-
-## All layers diagram
-![image](https://user-images.githubusercontent.com/71780717/137356366-6b23c71b-9499-473e-a1e3-c65644135fc6.png)
diff --git a/keyboards/mechwild/obe/keymaps/jonavin/rules.mk b/keyboards/mechwild/obe/keymaps/jonavin/rules.mk
deleted file mode 100644
index 6a9acf5d07..0000000000
--- a/keyboards/mechwild/obe/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-VIA_ENABLE = yes
-LTO_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-
-MOUSEKEY_ENABLE = no
-TAP_DANCE_ENABLE = yes
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-ENCODER_DEFAULTACTIONS_ENABLE = yes
-EMOTICON_ENABLE = yes
-INVERT_NUMLOCK_INDICATOR = yes
-
-ALTTAB_SCROLL_ENABLE = yes
diff --git a/keyboards/mechwild/puckbuddy/config.h b/keyboards/mechwild/puckbuddy/config.h
index 53263d764e..ad4823c741 100644
--- a/keyboards/mechwild/puckbuddy/config.h
+++ b/keyboards/mechwild/puckbuddy/config.h
@@ -7,9 +7,6 @@
/* Define custom font */
#define OLED_FONT_H "keyboards/mechwild/puckbuddy/glcdfont.c"
-/* allows the "key" button on the blackpill to toggle caps lock for user testing before soldering */
-#define DIP_SWITCH_PINS { A0 }
-
/* set the tapping term for glidepoint pad to register a tap click */
//#define CIRQUE_PINNACLE_TAPPING_TERM 0 // This is set to 0 to disable it
diff --git a/keyboards/mechwild/puckbuddy/info.json b/keyboards/mechwild/puckbuddy/info.json
index 503d9b4429..56bac432b8 100644
--- a/keyboards/mechwild/puckbuddy/info.json
+++ b/keyboards/mechwild/puckbuddy/info.json
@@ -13,6 +13,9 @@
"rows": ["B12", "B13", "B14", "B15"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["A0"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B1", "pin_b": "B0"},
diff --git a/keyboards/mechwild/sugarglider/config.h b/keyboards/mechwild/sugarglider/config.h
index 75aa26956c..b092db627b 100644
--- a/keyboards/mechwild/sugarglider/config.h
+++ b/keyboards/mechwild/sugarglider/config.h
@@ -3,8 +3,6 @@
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
-
/* Matrix COL and ROW definitions */
#define MATRIX_ROWS 9
#define MATRIX_COLS 6
@@ -16,9 +14,6 @@
/* Define custom font */
#define OLED_FONT_H "keyboards/mechwild/sugarglider/glcdfont.c"
-/* allows the "key" button on the blackpill to toggle caps lock for user testing before soldering */
-#define DIP_SWITCH_PINS { A0 }
-
#define CIRQUE_PINNACLE_TAP_ENABLE
#define POINTING_DEVICE_GESTURES_SCROLL_ENABLE
diff --git a/keyboards/mechwild/sugarglider/info.json b/keyboards/mechwild/sugarglider/info.json
index f8439dde11..c9095b3db4 100644
--- a/keyboards/mechwild/sugarglider/info.json
+++ b/keyboards/mechwild/sugarglider/info.json
@@ -23,6 +23,9 @@
"force_nkro": true
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
"rgblight": {
"led_count": 10,
"max_brightness": 255,
@@ -51,6 +54,9 @@
"build": {
"debounce_type": "sym_eager_pk"
},
+ "dip_switch": {
+ "pins": ["A0"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B0", "pin_b": "A2", "resolution": 4},
diff --git a/keyboards/mechwild/sugarglider/keymaps/default/keymap.c b/keyboards/mechwild/sugarglider/keymaps/default/keymap.c
index ad0470a139..344dabfd2d 100644
--- a/keyboards/mechwild/sugarglider/keymaps/default/keymap.c
+++ b/keyboards/mechwild/sugarglider/keymaps/default/keymap.c
@@ -2,7 +2,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
// Defines names for use in layer keycodes and the keymap
enum layer_names {
diff --git a/keyboards/mechwild/sugarglider/rules.mk b/keyboards/mechwild/sugarglider/rules.mk
index 9cfa6b7797..6fd0836a73 100644
--- a/keyboards/mechwild/sugarglider/rules.mk
+++ b/keyboards/mechwild/sugarglider/rules.mk
@@ -13,7 +13,7 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += mcp23018.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
DEFAULT_FOLDER = mechwild/sugarglider/wide_oled
diff --git a/keyboards/melgeek/mach80/config.h b/keyboards/melgeek/mach80/config.h
index f73ab7345c..cc4d7bc6bf 100755
--- a/keyboards/melgeek/mach80/config.h
+++ b/keyboards/melgeek/mach80/config.h
@@ -25,8 +25,7 @@
#define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
diff --git a/keyboards/melgeek/mach80/rev1/rev1.c b/keyboards/melgeek/mach80/rev1/rev1.c
index da4c6b73d8..9e5c2d8b81 100755
--- a/keyboards/melgeek/mach80/rev1/rev1.c
+++ b/keyboards/melgeek/mach80/rev1/rev1.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
@@ -144,7 +144,7 @@ led_config_t g_led_config = {
}
};
-const is31_led g_is31_indicator_leds[3] = {
+const is31fl3741_led_t g_is31_indicator_leds[3] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB107 */
{0, CS6_SW2, CS5_SW2, CS4_SW2}, /* RGB108 */
{0, CS6_SW3, CS5_SW3, CS4_SW3}, /* RGB109 */
@@ -175,11 +175,11 @@ bool led_update_kb(led_t led_state) {
void matrix_init_kb(void) {
for (int i = 0; i < DRIVER_INDICATOR_LED_TOTAL; ++i) {
- is31_led led = g_is31_indicator_leds[i];
+ is31fl3741_led_t led = g_is31_indicator_leds[i];
is31fl3741_set_scaling_registers(&led, 0xFF, 0xFF, 0xFF);
}
- is31fl3741_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3741_update_led_control_registers(IS31FL3741_I2C_ADDRESS_1, 0);
matrix_init_user();
}
diff --git a/keyboards/melgeek/mach80/rev2/rev2.c b/keyboards/melgeek/mach80/rev2/rev2.c
index 632466376d..e9fdc2517f 100755
--- a/keyboards/melgeek/mach80/rev2/rev2.c
+++ b/keyboards/melgeek/mach80/rev2/rev2.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
@@ -142,7 +142,7 @@ led_config_t g_led_config = {
}
};
-const is31_led g_is31_indicator_leds[3] = {
+const is31fl3741_led_t g_is31_indicator_leds[3] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB107 */
{0, CS6_SW2, CS5_SW2, CS4_SW2}, /* RGB108 */
{0, CS6_SW3, CS5_SW3, CS4_SW3}, /* RGB109 */
@@ -173,11 +173,11 @@ bool led_update_kb(led_t led_state) {
void matrix_init_kb(void) {
for (int i = 0; i < DRIVER_INDICATOR_LED_TOTAL; ++i) {
- is31_led led = g_is31_indicator_leds[i];
+ is31fl3741_led_t led = g_is31_indicator_leds[i];
is31fl3741_set_scaling_registers(&led, 0xFF, 0xFF, 0xFF);
}
- is31fl3741_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3741_update_led_control_registers(IS31FL3741_I2C_ADDRESS_1, 0);
matrix_init_user();
}
diff --git a/keyboards/melgeek/mj61/config.h b/keyboards/melgeek/mj61/config.h
index af2393e5ec..704699ece9 100644
--- a/keyboards/melgeek/mj61/config.h
+++ b/keyboards/melgeek/mj61/config.h
@@ -70,5 +70,4 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
diff --git a/keyboards/melgeek/mj61/rev1/rev1.c b/keyboards/melgeek/mj61/rev1/rev1.c
index 8f8b48b017..76fcb64c37 100644
--- a/keyboards/melgeek/mj61/rev1/rev1.c
+++ b/keyboards/melgeek/mj61/rev1/rev1.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS12_SW1, CS11_SW1, CS10_SW1}, /* RGB1 */
{0, CS12_SW2, CS11_SW2, CS10_SW2}, /* RGB2 */
{0, CS12_SW3, CS11_SW3, CS10_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/mj61/rev2/rev2.c b/keyboards/melgeek/mj61/rev2/rev2.c
index 448fa0bb18..9d13d52ebc 100644
--- a/keyboards/melgeek/mj61/rev2/rev2.c
+++ b/keyboards/melgeek/mj61/rev2/rev2.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB3 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB4 */
diff --git a/keyboards/melgeek/mj63/config.h b/keyboards/melgeek/mj63/config.h
index af2393e5ec..704699ece9 100644
--- a/keyboards/melgeek/mj63/config.h
+++ b/keyboards/melgeek/mj63/config.h
@@ -70,5 +70,4 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
diff --git a/keyboards/melgeek/mj63/rev1/rev1.c b/keyboards/melgeek/mj63/rev1/rev1.c
index a0a9ac13cd..69e7ab5da6 100644
--- a/keyboards/melgeek/mj63/rev1/rev1.c
+++ b/keyboards/melgeek/mj63/rev1/rev1.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/mj63/rev2/rev2.c b/keyboards/melgeek/mj63/rev2/rev2.c
index 2d6768e2aa..5ab9cdb65a 100644
--- a/keyboards/melgeek/mj63/rev2/rev2.c
+++ b/keyboards/melgeek/mj63/rev2/rev2.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB3 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB4 */
diff --git a/keyboards/melgeek/mj64/config.h b/keyboards/melgeek/mj64/config.h
index af2393e5ec..704699ece9 100644
--- a/keyboards/melgeek/mj64/config.h
+++ b/keyboards/melgeek/mj64/config.h
@@ -70,5 +70,4 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
diff --git a/keyboards/melgeek/mj64/rev1/rev1.c b/keyboards/melgeek/mj64/rev1/rev1.c
index 0369d6b0da..fff946b20a 100644
--- a/keyboards/melgeek/mj64/rev1/rev1.c
+++ b/keyboards/melgeek/mj64/rev1/rev1.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/mj64/rev2/rev2.c b/keyboards/melgeek/mj64/rev2/rev2.c
index bf3dc4cf86..35da35b2e4 100644
--- a/keyboards/melgeek/mj64/rev2/rev2.c
+++ b/keyboards/melgeek/mj64/rev2/rev2.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/mj64/rev3/rev3.c b/keyboards/melgeek/mj64/rev3/rev3.c
index 4b28bb8b44..942bda1487 100644
--- a/keyboards/melgeek/mj64/rev3/rev3.c
+++ b/keyboards/melgeek/mj64/rev3/rev3.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB3 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB4 */
diff --git a/keyboards/melgeek/mj65/config.h b/keyboards/melgeek/mj65/config.h
index af2393e5ec..704699ece9 100644
--- a/keyboards/melgeek/mj65/config.h
+++ b/keyboards/melgeek/mj65/config.h
@@ -70,5 +70,4 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
diff --git a/keyboards/melgeek/mj65/rev3/rev3.c b/keyboards/melgeek/mj65/rev3/rev3.c
index f44c412659..6d851aa847 100644
--- a/keyboards/melgeek/mj65/rev3/rev3.c
+++ b/keyboards/melgeek/mj65/rev3/rev3.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/mojo68/config.h b/keyboards/melgeek/mojo68/config.h
index b5f846ae78..e661efb2a9 100755
--- a/keyboards/melgeek/mojo68/config.h
+++ b/keyboards/melgeek/mojo68/config.h
@@ -69,5 +69,4 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
diff --git a/keyboards/melgeek/mojo68/rev1/rev1.c b/keyboards/melgeek/mojo68/rev1/rev1.c
index bea523c84e..cd6d4ec413 100755
--- a/keyboards/melgeek/mojo68/rev1/rev1.c
+++ b/keyboards/melgeek/mojo68/rev1/rev1.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
@@ -112,7 +112,7 @@ led_config_t g_led_config = {
}
};
-const is31_led g_is31_indicator_leds[3] = {
+const is31fl3741_led_t g_is31_indicator_leds[3] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB124 */
{0, CS6_SW2, CS5_SW2, CS4_SW2}, /* RGB125 */
{0, CS6_SW3, CS5_SW3, CS4_SW3}, /* RGB126 */
@@ -143,11 +143,11 @@ bool led_update_kb(led_t led_state) {
void matrix_init_kb(void) {
for (int i = 0; i < DRIVER_INDICATOR_LED_TOTAL; ++i) {
- is31_led led = g_is31_indicator_leds[i];
+ is31fl3741_led_t led = g_is31_indicator_leds[i];
is31fl3741_set_scaling_registers(&led, 0xFF, 0xFF, 0xFF);
}
- is31fl3741_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3741_update_led_control_registers(IS31FL3741_I2C_ADDRESS_1, 0);
matrix_init_user();
}
diff --git a/keyboards/melgeek/mojo75/config.h b/keyboards/melgeek/mojo75/config.h
index bdee36b66b..a4e89e5a90 100644
--- a/keyboards/melgeek/mojo75/config.h
+++ b/keyboards/melgeek/mojo75/config.h
@@ -71,5 +71,4 @@
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
diff --git a/keyboards/melgeek/mojo75/rev1/rev1.c b/keyboards/melgeek/mojo75/rev1/rev1.c
index a313a25cfe..e64c163c78 100644
--- a/keyboards/melgeek/mojo75/rev1/rev1.c
+++ b/keyboards/melgeek/mojo75/rev1/rev1.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB1 */
{0, CS6_SW2, CS5_SW2, CS4_SW2}, /* RGB2 */
{0, CS6_SW3, CS5_SW3, CS4_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/tegic/config.h b/keyboards/melgeek/tegic/config.h
index e371af9552..723706d610 100755
--- a/keyboards/melgeek/tegic/config.h
+++ b/keyboards/melgeek/tegic/config.h
@@ -22,8 +22,7 @@
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
diff --git a/keyboards/melgeek/tegic/rev1/rev1.c b/keyboards/melgeek/tegic/rev1/rev1.c
index 24c7fd6cb7..6dc2e8d180 100755
--- a/keyboards/melgeek/tegic/rev1/rev1.c
+++ b/keyboards/melgeek/tegic/rev1/rev1.c
@@ -19,7 +19,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB1 */
{0, CS9_SW2, CS8_SW2, CS7_SW2}, /* RGB2 */
{0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB3 */
diff --git a/keyboards/melgeek/z70ultra/config.h b/keyboards/melgeek/z70ultra/config.h
index 3c19a6f93c..d78cbab672 100644
--- a/keyboards/melgeek/z70ultra/config.h
+++ b/keyboards/melgeek/z70ultra/config.h
@@ -70,7 +70,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
//#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT 69
#define DRIVER_INDICATOR_LED_TOTAL 6
diff --git a/keyboards/melgeek/z70ultra/z70ultra.c b/keyboards/melgeek/z70ultra/z70ultra.c
index d0b23c3bf8..f978edea92 100644
--- a/keyboards/melgeek/z70ultra/z70ultra.c
+++ b/keyboards/melgeek/z70ultra/z70ultra.c
@@ -18,7 +18,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS28_SW1, CS30_SW1, CS29_SW1}, /* RGB10 */
{0, CS28_SW2, CS30_SW2, CS29_SW2}, /* RGB11 */
{0, CS28_SW3, CS30_SW3, CS29_SW3}, /* RGB12 */
@@ -117,7 +117,7 @@ led_config_t g_led_config = {
}
};
-const is31_led g_is31_indicator_leds[6] = {
+const is31fl3741_led_t g_is31_indicator_leds[6] = {
{0, CS5_SW1, CS3_SW1, CS4_SW1}, /* RGB71 */
{0, CS5_SW2, CS3_SW2, CS4_SW2}, /* RGB72 */
{0, CS5_SW3, CS3_SW3, CS4_SW3}, /* RGB73 */
@@ -157,11 +157,11 @@ bool led_update_kb(led_t led_state) {
void matrix_init_kb(void) {
for (int i = 0; i < DRIVER_INDICATOR_LED_TOTAL; ++i) {
- is31_led led = g_is31_indicator_leds[i];
+ is31fl3741_led_t led = g_is31_indicator_leds[i];
is31fl3741_set_scaling_registers(&led, 0xFF, 0xFF, 0xFF);
}
- is31fl3741_update_led_control_registers(DRIVER_ADDR_1, 0);
+ is31fl3741_update_led_control_registers(IS31FL3741_I2C_ADDRESS_1, 0);
matrix_init_user();
}
diff --git a/keyboards/miiiw/blackio83/blackio83.c b/keyboards/miiiw/blackio83/blackio83.c
index 0d8412624e..8c80ebd73c 100644
--- a/keyboards/miiiw/blackio83/blackio83.c
+++ b/keyboards/miiiw/blackio83/blackio83.c
@@ -97,34 +97,37 @@ void keyboard_post_init_kb(void) {
loop10hz_token = defer_exec(LOOP_10HZ_PERIOD, loop_10Hz, NULL);
}
-__attribute__((weak)) void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (shutdown_user(jump_to_bootloader)) {
#ifdef RGB_MATRIX_ENABLE
- rgb_matrix_set_suspend_state(true);
-#endif // RGB_MATRIX_ENABLE
- wait_ms(10);
+ rgb_matrix_set_suspend_state(true);
+#endif // RGB_MATRIX_ENABLE
+ wait_ms(10);
+ }
ws2812_poweroff();
+ return true;
}
#ifdef DIP_SWITCH_ENABLE
bool dip_switch_update_mask_kb(uint32_t state) {
if (!dip_switch_update_mask_user(state)) { return false; }
-
+
if(state & 0x01) {
led_suspend();
usbDisconnectBus(&USB_DRIVER);
usbStop(&USB_DRIVER);
- shutdown_user();
+ shutdown_user(true);
setPinInputHigh(POWER_SWITCH_PIN);
palEnableLineEvent(POWER_SWITCH_PIN, PAL_EVENT_MODE_RISING_EDGE);
POWER_EnterSleep();
}
-
+
return true;
}
#endif
uint32_t loop_10Hz(uint32_t trigger_time, void *cb_arg) {
-
+
if(last_input_activity_elapsed() > 1000) {
static uint32_t pmu_timer = 0;
if(timer_elapsed32(pmu_timer) > 3000) {
@@ -144,7 +147,7 @@ uint32_t loop_10Hz(uint32_t trigger_time, void *cb_arg) {
extern matrix_row_t matrix[MATRIX_ROWS];
static uint32_t restore_tick = 0;
- if(matrix[0] == 0x4000 && matrix[1] == 0 &&
+ if(matrix[0] == 0x4000 && matrix[1] == 0 &&
matrix[2] == 0 && matrix[3] == 0 && matrix[4] == 0 && matrix[5] == 0x201) {
if(restore_tick++ > 50) {
restore_tick = 0;
diff --git a/keyboards/miiiw/blackio83/info.json b/keyboards/miiiw/blackio83/info.json
index 40fc6b7d89..107e288099 100644
--- a/keyboards/miiiw/blackio83/info.json
+++ b/keyboards/miiiw/blackio83/info.json
@@ -26,6 +26,9 @@
"cols": ["H0", "H1", "H2", "H3", "H4", "H5", "H6", "H7", "H8", "H9", "H10", "H11", "H12", "H13", "H14", "H15"],
"rows": ["A7", "A6", "A5", "A4", "A3", "A2"]
},
+ "dip_switch": {
+ "pins": ["B0", "B1", "B8", "B12"]
+ },
"processor": "STM32F072",
"rgb_matrix": {
"driver": "ws2812",
diff --git a/keyboards/miiiw/blackio83/rev_0100/config.h b/keyboards/miiiw/blackio83/rev_0100/config.h
index 803c8a8a3b..e68a9d0b16 100644
--- a/keyboards/miiiw/blackio83/rev_0100/config.h
+++ b/keyboards/miiiw/blackio83/rev_0100/config.h
@@ -16,20 +16,7 @@
#pragma once
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-/* Dip Switch */
#define POWER_SWITCH_PIN B0
-#define DIP_SWITCH_PINS { B0, B1, B8, B12 }
/* 16 with dummy columns for shift registers */
#define SHR_SERIES_NUM 2
diff --git a/keyboards/miller/gm862/config.h b/keyboards/miller/gm862/config.h
index 4bd9748ab5..2bda7f75bb 100644
--- a/keyboards/miller/gm862/config.h
+++ b/keyboards/miller/gm862/config.h
@@ -53,7 +53,6 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1010000
-# define DRIVER_COUNT 1
+# define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
# define RGB_MATRIX_LED_COUNT 62
#endif
diff --git a/keyboards/miller/gm862/gm862.c b/keyboards/miller/gm862/gm862.c
index 73d1323cfb..b677ae3be4 100644
--- a/keyboards/miller/gm862/gm862.c
+++ b/keyboards/miller/gm862/gm862.c
@@ -1,7 +1,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{0, B_1, A_1, C_1},
{0, B_2, A_2, C_2},
{0, B_3, A_3, C_3},
diff --git a/keyboards/miniaxe/keymaps/wanleg/config.h b/keyboards/miniaxe/keymaps/wanleg/config.h
deleted file mode 100644
index 0f20ea455f..0000000000
--- a/keyboards/miniaxe/keymaps/wanleg/config.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#pragma once
-
-/* Select hand configuration */
-
-// #define MASTER_LEFT
-// #define MASTER_RIGHT
-#define EE_HANDS
-
-//#define QMK_ESC_OUTPUT F1 // usually COL
-//#define QMK_ESC_INPUT D6 // usually ROW // connected to nothing on the miniaxe
-//#define QMK_LED D7 //connected to nothing on the miniaxe
diff --git a/keyboards/miniaxe/keymaps/wanleg/keymap.c b/keyboards/miniaxe/keymaps/wanleg/keymap.c
deleted file mode 100644
index 69233741ba..0000000000
--- a/keyboards/miniaxe/keymaps/wanleg/keymap.c
+++ /dev/null
@@ -1,49 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "wanleg.h"
-
-#define LAYOUT_miniaxe_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
- _______, NUMBER, ETCETERA, KC_SPC, DIRECTION, KC_RGUI \
- )
-#define LAYOUT_miniaxe_base_wrapper(...) LAYOUT_miniaxe_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_GK] = LAYOUT_miniaxe_base_wrapper(
- _______________Gherkin_Row_0_______________,
- _______________Gherkin_Row_1_______________,
- SFT_T(KC_Z), KC_X, KC_C, LT(NUM,KC_V), LT(ETC,KC_B), LT(_FN,KC_N), LT(DIR,KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC)
-),
-
-[NUM] = LAYOUT_wrapper(
- _______________Gherkin_NUM_0_______________,
- _______________Gherkin_NUM_1_______________,
- _______________Gherkin_NUM_2_______________,
- _______, _______, _______, KC_ENT, KC_RSFT, _______
-),
-
-[DIR] = LAYOUT_miniaxe_base_wrapper(
- _______________Gherkin_DIR_0_______________,
- _______________Gherkin_DIR_1_______________,
- _______________Gherkin_DIR_2_______________
-),
-
-[ETC] = LAYOUT_wrapper(
- _______________Gherkin_ETC_0_______________,
- _______________Gherkin_ETC_1_______________,
- _______________Gherkin_ETC_2_______________,
- _______, NUMBER, ETCETERA, LALT(LCTL(KC_DEL)), DIRECTION, KC_RGUI
-),
-
-[_FN] = LAYOUT_miniaxe_base_wrapper(
- _______________Gherkin_FN_0________________,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-}; \ No newline at end of file
diff --git a/keyboards/miniaxe/keymaps/wanleg/rules.mk b/keyboards/miniaxe/keymaps/wanleg/rules.mk
deleted file mode 100644
index ae5ae549cc..0000000000
--- a/keyboards/miniaxe/keymaps/wanleg/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Bootloader selection
-# Teensy halfkay
-# Pro Micro caterina
-# Atmel DFU atmel-dfu
-# LUFA DFU lufa-dfu
-# QMK DFU qmk-dfu
-# atmega32a bootloadHID
-#BOOTLOADER = qmk-dfu
-
-
-# If you don't know the bootloader type, then you can specify the
-# Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line
-# Teensy halfKay 512
-# Teensy++ halfKay 1024
-# Atmel DFU loader 4096
-# LUFA bootloader 4096
-# USBaspLoader 2048
-# OPT_DEFS += -DBOOTLOADER_SIZE=4096 \ No newline at end of file
diff --git a/keyboards/minimacro5/keymaps/devdev/keymap.c b/keyboards/minimacro5/keymaps/devdev/keymap.c
deleted file mode 100644
index cb183a91b7..0000000000
--- a/keyboards/minimacro5/keymaps/devdev/keymap.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* Copyright 2020 Dane Evans
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-// MINI MACRO 5
-
-#include QMK_KEYBOARD_H
-
-enum layers {
- _MAIN,
- _MEDIA,
- _DISCORD,
- _PHOTOSHOP
-};
-
-// Tap Dance declarations
-enum tap_dances{
- TD_TO_DISCORD,
- TD_TO_PHOTOSHOP,
- TD_TO_MEDIA,
- TD_TO_MAIN,
- TD_RESET_SLIDER
-
-};
-
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) { /* First encoder*/
- switch(get_highest_layer(layer_state)){
- case _MAIN:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- case _MEDIA:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- case _DISCORD:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- case _PHOTOSHOP:
- if (clockwise) {
- tap_code(KC_UP);
- } else {
- tap_code(KC_DOWN);
- }
- break;
- default:
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- break;
- }
- }
- return true;
-}
-
-//
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //buttion closest to usb is first
- [_MAIN] = LAYOUT_ortho_1x5(
- TD(TD_TO_DISCORD), TO(_DISCORD), KC_C, RGB_TOG, TD(TD_TO_PHOTOSHOP)
- ),
- [_MEDIA] = LAYOUT_ortho_1x5(
- TD(TD_TO_MAIN), KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_STOP
- ),
- [_DISCORD] = LAYOUT_ortho_1x5(
- TD(TD_TO_MAIN), TD(TD_TO_MEDIA), KC_Q, KC_R, MEH(KC_UP)
- )
- ,
- [_PHOTOSHOP] = LAYOUT_ortho_1x5(
- TD(TD_RESET_SLIDER) , C(KC_Z), C(KC_Y), KC_P, KC_G
- )
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-
- if (layer_state_cmp(state, _MAIN)) // this one not working
- rgblight_sethsv_at(HSV_GREEN, 0);
- if (layer_state_cmp(state, _MEDIA))
- rgblight_sethsv_at(HSV_RED, 0);
- if (layer_state_cmp(state, _DISCORD))
- rgblight_sethsv_at(HSV_BLUE, 0);
- if (layer_state_cmp(state, _PHOTOSHOP))
- rgblight_sethsv_at(HSV_PURPLE, 0);
- return state;
-}
-
-void keyboard_post_init_user(void) {
- //rgblight_mode(1);
- rgblight_sethsv_at(HSV_GREEN, 0);
-}
-
-// Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- // Tap once for Escape, twice for Caps Lock
- [TD_TO_DISCORD] = ACTION_TAP_DANCE_LAYER_MOVE(KC_MUTE, _DISCORD),
- [TD_TO_PHOTOSHOP] = ACTION_TAP_DANCE_LAYER_MOVE(KC_E, _PHOTOSHOP),
- [TD_TO_MEDIA] = ACTION_TAP_DANCE_LAYER_MOVE(KC_E, _MEDIA),
- [TD_TO_MAIN] = ACTION_TAP_DANCE_LAYER_MOVE(KC_MUTE, _MAIN),
- [TD_RESET_SLIDER] = ACTION_TAP_DANCE_LAYER_MOVE(KC_0, _MAIN)
-};
diff --git a/keyboards/minimacro5/keymaps/devdev/rules.mk b/keyboards/minimacro5/keymaps/devdev/rules.mk
deleted file mode 100644
index 1c1ed316a0..0000000000
--- a/keyboards/minimacro5/keymaps/devdev/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/misterknife/knife66/keymaps/zyber/keymap.c b/keyboards/misterknife/knife66/keymaps/zyber/keymap.c
deleted file mode 100644
index aad3aeaf1c..0000000000
--- a/keyboards/misterknife/knife66/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
-Copyright 2012,2013 Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include QMK_KEYBOARD_H
-#include "zyber.h"
-
-// Defines names for use in layer keycodes and the keymap
-enum layer_names {
- _BASE,
- _FN
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT_split_space_split_bs(
- QK_GESC, KC_1, KC_2, KC_3, TD(SSHT), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NO, TD(END_HOME),
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_DEL,
- CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_NO, KC_LALT, KC_LGUI, KC_LGUI, LT(1, KC_SPC), KC_LGUI, KC_LALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ),
-
- [_FN] = LAYOUT_split_space_split_bs(
- QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, RGB_TOG,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, RGB_MOD,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT,KC_TRNS, KC_TRNS, KC_INS, RGB_SPI,
- KC_CAPS, KC_TRNS, KC_TRNS, C(KC_C), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, C(KC_UP), RGB_SPD,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, C(KC_LEFT), C(KC_DOWN), C(KC_RGHT) ),
-}; \ No newline at end of file
diff --git a/keyboards/mitosis/keymaps/datagrok/config.h b/keyboards/mitosis/keymaps/datagrok/config.h
deleted file mode 100644
index 5f37d27e69..0000000000
--- a/keyboards/mitosis/keymaps/datagrok/config.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#ifdef MITOSIS_DATAGROK_SLOWUART
-// This is the highest possible baud rate that a pro micro clocked at 8Mhz can
-// support without errors. I don't notice any difference in behavior at this
-// slower speed. (So I think it should maybe be the default, to allow a single
-// codebase to support both available flavors of pro micro.) This requires a
-// corresponding change to the wireless module firmware; see
-// https://github.com/reversebias/mitosis/pull/10
-#undef SERIAL_UART_BAUD // avoids redefinition warning
-#define SERIAL_UART_BAUD 250000
-#endif
-
-// I want to place an underscore as tap behavior on the right shift key. But
-// RSFT_T(KC_UNDS) doesn't work; mod-tap doesn't work with pre-shifted keys. So
-// instead I take advantage of Space Cadet Shift that does something similar
-// and just tweak it to use the -/_ key instead of 0/). See
-// https://github.com/qmk/qmk_firmware/pull/2055
-#define RSPC_KEY KC_MINS
-
-// TODO: figure out which of these I can safely enable to reduce firmware size.
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT // can't; errors
-//#define NO_ACTION_MACRO
-//#define NO_ACTION_FUNCTION
-
-#ifdef AUDIO_ENABLE
-#define STARTUP_SONG SONG(STARTUP_SOUND)
-#define DEFAULT_LAYER_SONGS { \
- SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND), \
- SONG(WORKMAN_SOUND), \
- }
-#define AUDIO_VOICES
-#define AUDIO_CLICKY
-#define AUDIO_PIN C6
-#endif
-
-#endif
-
-#define LAYOUT_bottomspace( \
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \
- k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \
- k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \
- k31, k32, k33, k34, k35, k36, k37, k38, \
- k41, k42, k43, k44, k45, k46, k47, k48 \
- ) \
- { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09 }, \
- { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \
- { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \
- { KC_NO, k31, k32, k43, k44, k45, k46, k37, k38, KC_NO }, \
- { KC_NO, k41, k42, k33, k34, k35, k36, k47, k48, KC_NO } \
- }
diff --git a/keyboards/mitosis/keymaps/datagrok/keymap.c b/keyboards/mitosis/keymaps/datagrok/keymap.c
deleted file mode 100644
index 9a177a7b8d..0000000000
--- a/keyboards/mitosis/keymaps/datagrok/keymap.c
+++ /dev/null
@@ -1,237 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#ifdef AUDIO_ENABLE
-#include "audio.h"
-#ifdef DEFAULT_LAYER_SONGS
-extern float default_layer_songs[][16][2];
-#endif
-#endif
-
-enum mitosis_layers
- {
- _xQ, // qwerty
- _xC, // colemak
- _xD, // dvorak
- _xW, // workman
- _xS, // symbols
- _xN, // numbers
- _xF // functions
- };
-
-enum mitosis_keycodes
- {
- KC_LAYO = SAFE_RANGE
- };
-
-// Setting MITOSIS_DATAGROK_BOTTOMSPACE in rules.mk will swap the upper and
-// lower center four thumb-keys. See keymaps/datagrok/rules.mk.
-#ifdef MITOSIS_DATAGROK_BOTTOMSPACE
-#undef LAYOUT
-#define LAYOUT LAYOUT_bottomspace
-#endif
-
-// I don't use Japanese myself, but I've placed henkan 変換 and muhenkan 無変換
-// in my layout to act as left and right HYPER
-
-// Momentary tri-state layers. Mitosis default keymap does this too but employs
-// new keymappings and a bunch of conditional code. This simpler keymap
-// accomplishes it but with a small quirk: triggering both layers then releasing
-// one out-of-order will leave the tri-state triggered until the other is
-// released. Which doesn't bother me.
-
-// The weird /*,*/ comments are a hack to get slightly better automatic
-// tabulation in my editor.
-
-// We use Space Cadet SC_RSPC to get _ on right shift. See config.h for details.
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_xQ] = LAYOUT(
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
- KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_QUOT,
- /*, */ KC_LGUI, KC_LCTL, MO(_xS), KC_BSPC, KC_SPC, MO(_xS), KC_RCTL, KC_RGUI,
- /*, */ KC_INT4, KC_LALT, MO(_xN), LSFT_T(KC_TAB), SC_RSPC, MO(_xN), KC_RALT, KC_INT5),
- [_xC] = LAYOUT(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_QUOT,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______),
- [_xD] = LAYOUT(
- KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L,
- KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S,
- KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______),
- [_xW] = LAYOUT(
- KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN,
- KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I,
- KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_QUOT,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______),
- [_xS] = LAYOUT(
- KC_ESC, KC_GRV , KC_UP, KC_EQL , KC_TILD, KC_PLUS, KC_CIRC, KC_AMPR, KC_PERC, KC_MINS,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_PIPE, KC_AT, KC_DLR, KC_HASH, KC_ENT,
- KC_BSLS, KC_LABK, KC_LCBR, KC_LPRN, KC_LBRC, KC_RBRC, KC_RPRN, KC_RCBR, KC_RABK, KC_SLSH,
- /*, */ _______, _______, _______, KC_DEL, _______, _______, _______, _______,
- /*, */ _______, _______, TT(_xF), _______, _______, TT(_xF), _______, _______),
- [_xN] = LAYOUT(
- KC_PSCR, KC_F7, KC_F8, KC_F9, KC_F10, KC_PPLS, KC_7, KC_8, KC_9, KC_PMNS,
- KC_SCRL, KC_F4, KC_F5, KC_F6, KC_F11, KC_NUM, KC_4, KC_5, KC_6, KC_PENT,
- KC_PAUS, KC_F1, KC_F2, KC_F3, KC_F12, KC_PAST, KC_1, KC_2, KC_3, KC_PSLS,
- /*, */ _______, _______, TT(_xF), _______, _______, TT(_xF), KC_0, KC_DOT,
- /*, */ _______, _______, _______, _______, _______, _______, _______, _______),
- [_xF] = LAYOUT(
- QK_BOOT, KC_INS, KC_PGUP, DB_TOGG, KC_VOLU, KC_PPLS, KC_P7, KC_P8, KC_P9, KC_PMNS,
- CK_TOGG, KC_HOME, KC_PGDN, KC_END, KC_VOLD, KC_NUM, KC_P4, KC_P5, KC_P6, KC_PENT,
- KC_LAYO, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_PAST, KC_P1, KC_P2, KC_P3, KC_PSLS,
- /*, */ CK_UP, MU_TOGG, _______, _______, _______, _______, KC_P0, KC_PDOT,
- /*, */ CK_DOWN, MU_NEXT, _______, _______, _______, _______, _______, _______),
-};
-const bool defaultlayers[] = {
- [_xQ] = true,
- [_xC] = true,
- [_xD] = true,
- [_xW] = true,
- [_xS] = false,
- [_xN] = false,
- [_xF] = false,
-};
-const size_t defaultlayers_n = ARRAY_SIZE(defaultlayers);
-
-// New keycode KC_LAYO rotates between available default layers (for e.g.,
-// selecting a base layout). Shift+KC_LAYO makes the current one persistent.
-bool process_record_layout(uint16_t keycode, keyrecord_t *record) {
- uint8_t default_layer;
- uint8_t i;
- #if defined(AUDIO_ENABLE)
- float saved_song[][2] = SONG(COIN_SOUND);
- #endif
-
- if (keycode != KC_LAYO || !record->event.pressed) {
- return true;
- }
-
- if (get_mods() & (MOD_BIT(KC_LSFT)|MOD_BIT(KC_RSFT))) { // shift pressed
- // save default layer. whatever the current default layer is, store that
- eeconfig_update_default_layer(default_layer_state);
- #if defined(AUDIO_ENABLE)
- PLAY_SONG(saved_song);
- #endif
- } else {
- // rotate default layer.
- // find the current default layer
- default_layer = get_highest_layer(default_layer_state);
- // find next valid default layer
- for (i = 1; i < defaultlayers_n; i++) {
- if (defaultlayers[(default_layer + i) % defaultlayers_n]) {
- break;
- }
- }
- if (i == defaultlayers_n) {
- // we fell out of the loop without finding another default layer to switch
- // to.
- return false;
- }
- default_layer = (default_layer + i) % defaultlayers_n;
- default_layer_set(1U<<default_layer);
- led_set(host_keyboard_leds());
- #if defined(AUDIO_ENABLE) && defined(DEFAULT_LAYER_SONGS)
- PLAY_SONG(default_layer_songs[default_layer]);
- #endif
- }
- return false;
-}
-
-// This is a hack to place <question mark> on <shift-comma> and <exclamation
-// mark> on <shift-period>, when using an operating system configured for a
-// US/qwerty layout.
-// cdeq = "comma dot exclamation question"
-bool comm_shifted = false;
-bool ques_shifted = false;
-bool process_record_cdeq(uint16_t keycode, keyrecord_t *record) {
- uint8_t shifted;
- uint16_t s_keycode;
- bool *k_shifted;
-
- switch (keycode) {
- case KC_COMM:
- s_keycode = KC_SLSH;
- k_shifted = &comm_shifted;
- break;
- case KC_DOT:
- s_keycode = KC_1;
- k_shifted = &ques_shifted;
- break;
- default:
- return true;
- }
-
- shifted = get_mods() & (MOD_BIT(KC_LSFT)|MOD_BIT(KC_RSFT));
-
- // Keydown. If shift is currently pressed, register its alternate keycode.
- if (record->event.pressed && shifted) {
- *k_shifted = true;
- register_code(s_keycode);
- return false;
- // Keyup. If shift was pressed back when the key was pressed, unregister
- // its alternate keycode.
- } else if (!(record->event.pressed) && *k_shifted) {
- *k_shifted = false;
- unregister_code(s_keycode);
- return false;
- // Otherwise, behave as normal.
- } else {
- return true;
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- return \
- process_record_cdeq(keycode, record) && \
- process_record_layout(keycode, record);
-}
-
-// Set the bits of A selected by MASK to the corresponding bits of B
-#define setbits(A, B, MASK) A = (A & (B | ~MASK)) | (B & MASK)
-
-void led_set_user(uint8_t usb_leds) {
- // A simple (but technically inaccurate) model of the momentary layer state:
- // Red layer active -> indicator = red
- // Blue layer active -> indicator = blue
- // Purple layer active -> indicator = purple
- // the Pro Micro tx LED displays Num Lock status.
- //
- // Workman layout active -> indicator = green
- // Workman red layer -> indicator = yellow (red + green)
- // Workman blue layer -> indicator = cyan (blue + green)
- // Workman purple layer -> indicator = white (red + blue + green)
-
- // Bit # 7 6 5 4 3 2 1 0
- // layer_state: [ | _xF | _xN | _xS | _xW | _xD | _xC | _xQ ]
- // usb_led [ | | |kana |cmps |scrl |caps | num ]
- // PORTB: [ NC | 10 | 9 | 8 | 14 | 16 | 15 |rxled]
- // PORTC: [ NC | 5 | | | | | | ]
- // PORTD: [ 6 | NC |txled| 4 | tx* | rx* | grn | p29 ]
- // PORTE: [ | 7 | | | | | | ]
- // PORTF: [ a0 | a1 | red | blu | | | NC | NC ]
- //
- // PD0 is connected to the pairing switch and p29 on the wireless module.
- // PF0,PF1,PB7,PC7,PD6 are not broken out by the pro micro board. I don't understand why.
- // PB1-PB6,PD4,PD5,PD6,PF6,PF7 are not connected to the Mitosis receiver
- // board. Each may be connected to an LED by way of a resistor (4.7k to
- // match the others) for a total of 14 additional indicators.
-
- uint32_t portf_bits = \
- ((layer_state|default_layer_state)&0b01100000)>>1 | \
- ((layer_state|default_layer_state)&0b00010000)<<1 | \
- ((layer_state|default_layer_state)&0b01000000)>>2;
- uint32_t portd_bits = \
- (usb_leds&0b1)<<5 | \
- ((layer_state|default_layer_state)&0b1000)>>2;
- // negated because for ports 0=LED on.
- setbits(PORTF, ~portf_bits, 0b00110000);
- setbits(PORTD, ~portd_bits, 0b00100010);
-}
-
-// vim: set sw=2 et:
diff --git a/keyboards/mitosis/keymaps/datagrok/readme.md b/keyboards/mitosis/keymaps/datagrok/readme.md
deleted file mode 100644
index 22d7f4d2fc..0000000000
--- a/keyboards/mitosis/keymaps/datagrok/readme.md
+++ /dev/null
@@ -1,274 +0,0 @@
-# a layout for the Mitosis
-
-- Emphasis on momentary modifiers, all usable from either hand, arranged symmetrically, but left/right distinguishable by the OS.
- I place left- and right-versions of Shift, GUI ("Super"), and Alt ("Meta"), and Henkan/Muhenkan (which I plan to overload for "Hyper").
-
- I'm going for a [Space Cadet](https://en.wikipedia.org/wiki/Space-cadet_keyboard) aesthetic;
- I want a keyboard that can (even just in theory) make use of all the bucky bits my operating system can support.
-
-- Red key and Blue key momentary-enable (like a shift key) one of three layers:
-
- - Red: Symbols layer
- - Blue: Numbers layer
- - "Purple" (both Red and Blue): Functions layer
-
- This tri-state layer mechanism is a bit similar to Planck and Preonic's "Raise," "Lower," and "Adjust."
-
-- The base layer is QWERTY.
- [Colemak][], [Dvorak][], and [Workman][] may be toggled using `Red`+`Blue`+`Z`.
- When you find the one you like, save it with `Shift`+`Red`+`Blue`+`Z`.
-
-- Minimize hand travel, so as not to lose orientation with home row.
-
-- `?` and `!` are moved to take the place of `<` and `>`.
- Rationale: unmodded and shifted keys should be for prose, while symbols useful for programming should be colocated on their own layer.
-
-- Key positions chosen for mnemonics.
- For example, you can distinguish between alphanumeric numerals and keypad numerals, but they occupy the same key positions.
-
-## Layout Images
-
-![mitosis:datagrok layout base layer](https://i.imgur.com/tap5Pjf.png)
-
-Base layer. Notes:
-- customized comma and period, which have exclamation point and question mark on their shift layer.
-- tap right-shift for underscore, tap left-shift for tab.
-
-![mitosis:datagrok layout red layer](https://i.imgur.com/sMGr34T.png)
-
-Red layer. Intended for common navigation and programming symbols. Notes:
-- symmetric layout of paired braces/brackets/slashes for easier memorization
-- arrows placed directly on home position
-
-![mitosis:datagrok layout blue layer](https://i.imgur.com/dDb2563.png)
-
-Blue layer. Intended for "number pad." Notes:
-- Keycodes generated for numbers, enter key, and mathematical symbols are from the alphanumeric keys, not keypad.
- This way they are not influenced by the state of Num Lock.
- If you want to send the keypad equivalents, just press Blue as well to access keypad numbers in the same positions in the Purple layer.
-
-![mitosis:datagrok layout purple layer](https://i.imgur.com/pESzy2u.png)
-
-Purple (Red+Blue) layer. Intended for "true keypad" and various functions. Notes:
-- Numbers on this layer send Keypad codes, so the result will be affected by the state of Num Lock.
-- "Switch Layout" toggles the alphabet keys between QWERTY, Colemak, Dvorak, and Workman.
- Shift + "Switch Layout" stores the currently selected alphabet layout in eeprom, so the selection persists across reboots and computers.
-- Page Up / Page Down / Home / End are placed on corresponding arrow keys.
-
-Keyboard layout editor sources:
-[base](http://www.keyboard-layout-editor.com/#/gists/bc2d06a3203d1bc3a14ed2245cf39643)
-[red](http://www.keyboard-layout-editor.com/#/gists/dbbf65f726a5522824b75117a62a321e)
-[blue](http://www.keyboard-layout-editor.com/#/gists/240e807f3d7e1d3ddabe1b69ee675048)
-[purple](http://www.keyboard-layout-editor.com/#/gists/9559f0f8bb1ee47677c8f2b4d766829d)
-
-[Imgur album](https://imgur.com/a/hm4bbdM)
-
-## Indicators
-
-- When Red layer is active, the RGB indicator turns red.
-- When Blue layer is active, the RGB indicator turns blue.
-- When Purple layer is active, the RGB indicator turns purple.
-- When the Workman layer is active, the RGB indicator turns green.
- Currently, this means that activating the Red layer while using the Workman layout will make the indicator show yellow. (red + green.)
-- The Num Lock status is shown on the Pro Micro tx LED.
-- If you attach a speaker to PC6 (pin 5) and compile with AUDIO_ENABLE=yes, music will be played at startup, when switching default layers, and when saving the default layer.
-
-## Variants
-
-Some additional compile-time options for this layout are available by editing rules.mk or compiling like so:
-
-Normal compilation:
-
-```make mitosis:datagrok```
-
-Swap Space onto bottom thumb row: swaps Red/Backspace/Space/Red with Blue/Shift/Shift/Blue:
-
-```make mitosis:datagrok MITOSIS_DATAGROK_BOTTOMSPACE=yes```
-
-Lower baud UART. Useful when using an 8Mhz pro micro; corresponding changes required in wireless firmware. See rules.mk for details.
-
-```make mitosis:datagrok MITOSIS_DATAGROK_SLOWUART=yes```
-
-## Design notes
-
-### Workman layout
-
-- I'm learning a new physical key placement, so I might as well go all-out and use an optimal non-QWERTY layout.
- Bonus: it's easy to switch back to QWERTY on a traditional row-staggered keyboard.
- The designer of the Mitosis had [a similar experience](https://www.reddit.com/r/MechanicalKeyboards/comments/66588f/wireless_split_qmk_mitosis/dgfr22q/).
-
-- I like the way Workman feels and some of its advantages over Colemak.
- Unfortunately, it was designed using a weighting system based on a standard
- row-staggered keyboard so is probably not as optimal as one could achieve
- on an ergonomic board like the Mitosis. Maybe run an optimizer routine after I
- determine good values for key difficulty on the Mitosis.
-
-### 8Mhz Pro Micro
-
-- I (used to) use a 3.3v Pro Micro clocked at 8Mhz rather than the 5v 16Mhz specified in the Mitosis design.
- That can't communicate with the connected wireless module at the default speed of 1M baud.
- The next fastest baudrate that works without errors is 250k baud.
- So if you want to do the same:
-
- - Set the Pro Micro clock and baud rate correctly in `rules.mk`:
- ```
- F_CPU = 800000
- MITOSIS_DATAGROK_SLOWUART = yes
- ```
- - Configure the receiver's wireless module to communicate at 250k baud in `main.c`. See https://github.com/reversebias/mitosis/pull/10
- ```
- - UART_BAUDRATE_BAUDRATE_Baud1M
- + UART_BAUDRATE_BAUDRATE_Baud250000
- ```
-
-### Layout mnemonics
-
-- Paired programming symbols (braces, brackets, parentheses) are arranged symmetrically in the Red layer.
-
-- Arrow keys are in the home position on the Red layer.
-
- - Blue+Arrows = PgUp/PgDn/Home/End, which is intuitive for me and similar to what is done on Apple and some Dell keyboards.
-
-- The number pad: I placed the ten-key number pad on the Blue layer.
- However, this would do the wrong thing when Num Lock was not enabled.
- Rather than attempt to manage the state of Num Lock, I arranged the normal number keys in a ten-key layout on the Blue layer instead.
- If you explicitly want the keypad keys, they're in the same position on the Red+Blue layer.
-
-- Number-pad add, subtract, multiply, and divide are located on the same keys as alphanumeric plus, dash, asterisk, and slash, respectively.
-
-- The Function-keys are arranged to mimic the order of the ten-key pad.
-
-- Enter is now in a more qwerty-familiar location, and may be activated with one hand.
- Numpad Enter is in the same position for mnemonics.
-
-- Why do I dislike [snake\_case](https://en.wikipedia.org/wiki/Snake_case) (`__variable_names_that_use_underscores_`)?
- Maybe because it's hard to type all those underscores requiring the shift key?
- Hypothesis: I'll be less annoyed by snake case by placing `_` at an unmodded position, right near the `space` key.
-
-
-## Changelog
-
-### Current
-
-- Discard "intentionally difficult backspace" idea.
- Tab returns to left-shift.
- Del returns to Red+Backspace
-- "High Profile mode:" Swap Red/Backspace/Space/Red with Blue/Shift/Shift/Blue (placing space on lower thumb keys) using `MITOSIS_DATAGROK_BOTTOMSPACE=yes` when compiling.
-- Move Print Screen / Scroll Lock / Pause to pinky column on Blue layer.
-- Let's try using TT instead of MO so we can e.g. lock-on the keypad.
- - We still use MO for first modifier, so e.g. Red + tapping Blue will lock purple.
- So far it feels a bit janky, we'll see.
-- One key `KC_LAYO` to cycle through available base layers instead of a dedicated key for each;
- Shift + `KC_LAYO` stores current base layer selection in eeprom so it comes back after disconnecting or a reset.
-- Added Colemak and Dvorak as default layers that may be selected.
-- Set UART to 250kbaud with make argument `MITOSIS_DATAGROK_SLOWUART=yes`, for use with 8Mhz Pro Micros.
-- Display Num Lock status on tx LED
-
-### 0.6.60
-
-- Experiment: no-modifier underscore on right shift key.
-- New combined numbers + keypad arrangement.
- No more worrying about Num Lock key.
-- Move F-keys to left board to make room.
- Calling them "the Numbers layer" and "the Functions layer" is now less accurate but the arrangement feels better.
-- Audio working!
-- Move Tab and Space to upper thumb row.
- I discarded the high-profile acrylic case from my Mitosis.
- With a low-profile case, it's easier to hit the upper row of thumb keys.
-- Discard all my `#defines` for "Meta", "Super", and "Hyper".
- I can call them that without making the code confusing to others.
-- Move Backspace to Red+A. I shouldn't be using it much anyway.
- This means Tab and Shift might as well be separate keys again.
-- Distribute paired symbols symmetrically across boards like `\<{([ ])}>/`.
- Opening-symbols on the right hand was a failed experiment.
-- Change default back to target a 16Mhz/5v Pro Micro.
- I damaged the 8Mhz Pro Micro I was using so now I'm back to using a 16mhz Pro Micro again.
-
-### 0.6.1
-
-- Place Tab on Shift without a modifier. We use it frequently for autocomplete.
-- Make QWERTY the default layout. So more people can try it out. My customized Workman is easily toggled-on.
-- Don't use redundant `#define` for `KC_TRNS`
-- Place Num Lock somewhere. Otherwise (if it gets turned off) we can't type any numbers!
-- Add some media keys
-
-### 0.5.155
-
-- Enable use with my 3.3v Pro Micro
-- Add a toggle-able QWERTY layer
-- Golf down the LED-setting code
-- Place `!` and `?` on `Shift`+`,` and `Shift`+`.`.
-- Distribute paired symbols symmetrically across boards like `\)}]> <[{(/`
-
-### 0.5.129
-
-- A modified Workman variant for Mitosis
-- Arrows in home position, modifier + Arrow = PgUp/PgDn/Home/End
-- Load all paired symbols onto angle-bracket keys.
-
-### Abandoned ideas
-
-- Abandoned: intentionally-difficult backspace.
- "Backspace is one of the keys I most dislike on a QWERTY keyboard because it moves me away from homerow and I need to use it so often.
- Rather than make it easier to strike, I want to discourage myself from using it and train myself to type more accurately."
-
- - Many other people like an easy-to-reach backspace.
- - Many other split-spacebar ergo boards place backspace at the thumbs.
- - I can still train myself to type well with it in an easy location.
- - I couldn't think of anything really better to put opposite space.
-
-- Abandoned: pile all brackets onto one pair of keys.
- "Since QWERTY and Workman keep angle brackets together, place other enclosing symbols on the same keys."
-
- - I didn't like having to pick the right modifier to get the right flavor of bracket.
- Instead, now, one modifier activates a symbols layer where all brackets are easily accessible.
-
-- Abandoned: chorded Enter without proper chording detection
-
- - I tried to make Red+Space = Enter with the intention that I could hit both with my thumb.
- That didn't work well; I always trigger space first when mashing the keys
- simultaneously. ~~This might not continue to be true if I change the angle
- at which I strike the keys e.g. with a neoprene base or a wrist support.~~
- Even with a wrist rest or low-profile, this is hard to do with one hand.
- Need to adjust the firmware to understand chorded thumb keys.
-
-## To do
-
-- Ctrl+'+' doesn't seem to work; fix.
-- **Shared Layouts.**
- Figure out how to make use of QMK's common `layouts/`
-- **Chorded Combos.**
- Since the thumb keys are arranged such that it's easy to smash pairs of keys with just one thumb, figure out how to enable chording.
- For example, a single-finger Shift+Space or Red+Space that doesn't do the wrong thing if Space happens to trigger first.
-- Improve **LED indications** (may require modding bluetooth firmware):
- - Num Lock status
- - Is any board nonresponsive (which one?)
- - Does either board have a low battery?
-- **Num Lock management.**
- Num lock currently occupies prime real estate, but I never use it except to fix it when it's wrong.
- Do any of my applications use it?
- Should I have the firmware ensure it is set how I want it?
- Maybe cause it to be momentary active with Blue?
- See [@drashna's comment](https://github.com/qmk/qmk_firmware/pull/2366#issuecomment-404951953) for code to force it always-on, which I don't know if I want.
-- ~~Store default layer in eeprom?~~
-- Allow "!? on ,." to be easily toggled-off.
-- Modularize "!? on ,." so it can be easily used on any QMK keyboard. (about half done)
-- See if the henkan/muhenkan placement is at all useful for Japanese speakers,
- or abuse different keysyms for Left/Right Hyper. (Original space cadet used
- scancodes 145/175. 145 is LANG2, 175 is "reserved" in USB HID spec.)
-- Implement "layer lock" key
-- Feature parity with popular boards e.g. Planck?
- - Layers for ~~Dvorak, Coleman,~~ Plover
- - More music and midi stuff
- - Macros?
-- Improve tri-layer behavior
-- Find out what `update_tri_layer_state` offers that my simple layers arrangement lacks.
-- ~~Find a better location for Caps Lock, PrintScr/SysRq, Scroll Lock, Pause/Break,~~.
- Placed on Blue layer. Caps will be Shift+"Layer Lock," once I get that working.
-- ~~Figure out where to place non-numpad numbers so we don't need num lock turned on to type them?~~
-- ~~Add Insert, PrintScr, Pause/Break~~
-- ~~Make QWERTY base layer for people who customize layout in software?~~
- I default to QWERTY now.
-- ~~Mod a buzzer onto my receiver and enable tones~~ Easy and works!
-
-[Workman]: https://viralintrospection.wordpress.com/2010/09/06/a-different-philosophy-in-designing-keyboard-layouts/
diff --git a/keyboards/mitosis/keymaps/datagrok/rules.mk b/keyboards/mitosis/keymaps/datagrok/rules.mk
deleted file mode 100644
index 7ee0852d79..0000000000
--- a/keyboards/mitosis/keymaps/datagrok/rules.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-# Space and "Red" modifier are keys I want in the easiest-to-reach position in
-# the thumb row. Depending on the angle and height of the Mitosis and the type
-# of keycaps you use, the upper row or the lower row of thumb keys might be more
-# comfortable for you. I put red/space on the upper row and blue/shift on the
-# lower, but to swap that, set MITOSIS_DATAGROK_BOTTOMSPACE = yes. This has the
-# effect of swapping only the four center keys on the upper row of thumb keys with that
-# of the lower row of thumb keys.
-MITOSIS_DATAGROK_BOTTOMSPACE = no
-
-# I used to use a pro micro clocked at 8Mhz. It can't reach the same baud rate
-# that the standard 16Mhz-clocked pro micro can, so the baud rate needs to be
-# lowered. Set this to "yes" to do that. See also
-# https://github.com/reversebias/mitosis/pull/10
-MITOSIS_DATAGROK_SLOWUART = no
-
-AUDIO_ENABLE = no # audio output
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-UNICODE_ENABLE = no # Unicode
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-MIDI_ENABLE = no # MIDI controls
-
-ifeq ($(strip $(MITOSIS_DATAGROK_BOTTOMSPACE)), yes)
- OPT_DEFS += -DMITOSIS_DATAGROK_BOTTOMSPACE
-endif
-ifeq ($(strip $(MITOSIS_DATAGROK_SLOWUART)), yes)
- OPT_DEFS += -DMITOSIS_DATAGROK_SLOWUART
-endif
-
-# vim: set ts=8 noet:
diff --git a/keyboards/mitosis/rules.mk b/keyboards/mitosis/rules.mk
index 6b1876f87c..539a2d1004 100644
--- a/keyboards/mitosis/rules.mk
+++ b/keyboards/mitosis/rules.mk
@@ -15,4 +15,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/mlego/m60_split/rev1/config.h b/keyboards/mlego/m60_split/rev1/config.h
index b351e66d2c..90ea0bd56c 100644
--- a/keyboards/mlego/m60_split/rev1/config.h
+++ b/keyboards/mlego/m60_split/rev1/config.h
@@ -15,10 +15,6 @@
*/
#pragma once
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-
-
#define SPLIT_HAND_PIN B9
#define SERIAL_USART_TX_PIN B6
#define SERIAL_USART_SPEED 921600
diff --git a/keyboards/mlego/m60_split/rev1/info.json b/keyboards/mlego/m60_split/rev1/info.json
index 3d66633ac9..89744c8b86 100644
--- a/keyboards/mlego/m60_split/rev1/info.json
+++ b/keyboards/mlego/m60_split/rev1/info.json
@@ -47,6 +47,12 @@
"cols": ["B0", "A3", "A2", "A1", "B7", "B5"],
"rows": ["B1", "A4", "A5", "A6", "A7"]
}
+ },
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true
+ }
}
},
"processor": "STM32F401",
diff --git a/keyboards/mlego/m60_split/rev2/config.h b/keyboards/mlego/m60_split/rev2/config.h
index bf60a6966c..82ea1b37e3 100644
--- a/keyboards/mlego/m60_split/rev2/config.h
+++ b/keyboards/mlego/m60_split/rev2/config.h
@@ -15,10 +15,6 @@
*/
#pragma once
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-
-
#define SPLIT_HAND_PIN B9
#define SERIAL_USART_TX_PIN B6
diff --git a/keyboards/mlego/m60_split/rev2/info.json b/keyboards/mlego/m60_split/rev2/info.json
index 1ba28e0a52..4ba6442443 100644
--- a/keyboards/mlego/m60_split/rev2/info.json
+++ b/keyboards/mlego/m60_split/rev2/info.json
@@ -46,6 +46,12 @@
"cols": ["B0", "A3", "A2", "A1", "B7", "B5"],
"rows": ["B1", "A4", "A5", "A6", "A7"]
}
+ },
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true
+ }
}
},
"processor": "STM32F411",
diff --git a/keyboards/mlego/m65/config.h b/keyboards/mlego/m65/config.h
deleted file mode 100644
index bdb0c16621..0000000000
--- a/keyboards/mlego/m65/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define LOCKING_SUPPORT_ENABLE
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/mlego/m65/info.json b/keyboards/mlego/m65/info.json
deleted file mode 100644
index c032cda3fe..0000000000
--- a/keyboards/mlego/m65/info.json
+++ /dev/null
@@ -1,84 +0,0 @@
-{
- "keyboard_name": "m65",
- "manufacturer": "Alin Elena",
- "url": "https://gitlab.com/m-lego/m65",
- "maintainer": "alin elena",
- "usb": {
- "vid": "0xBABA"
- },
- "layouts": {
- "LAYOUT_ortho_5x13": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
- {"matrix": [0, 3], "x": 3, "y": 0},
- {"matrix": [0, 4], "x": 4, "y": 0},
- {"matrix": [0, 5], "x": 5, "y": 0},
- {"matrix": [0, 6], "x": 6, "y": 0},
- {"matrix": [0, 7], "x": 7, "y": 0},
- {"matrix": [0, 8], "x": 8, "y": 0},
- {"matrix": [0, 9], "x": 9, "y": 0},
- {"matrix": [0, 10], "x": 10, "y": 0},
- {"matrix": [0, 11], "x": 11, "y": 0},
- {"matrix": [0, 12], "x": 12, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1},
- {"matrix": [1, 1], "x": 1, "y": 1},
- {"matrix": [1, 2], "x": 2, "y": 1},
- {"matrix": [1, 3], "x": 3, "y": 1},
- {"matrix": [1, 4], "x": 4, "y": 1},
- {"matrix": [1, 5], "x": 5, "y": 1},
- {"matrix": [1, 6], "x": 6, "y": 1},
- {"matrix": [1, 7], "x": 7, "y": 1},
- {"matrix": [1, 8], "x": 8, "y": 1},
- {"matrix": [1, 9], "x": 9, "y": 1},
- {"matrix": [1, 10], "x": 10, "y": 1},
- {"matrix": [1, 11], "x": 11, "y": 1},
- {"matrix": [1, 12], "x": 12, "y": 1},
-
- {"matrix": [2, 0], "x": 0, "y": 2},
- {"matrix": [2, 1], "x": 1, "y": 2},
- {"matrix": [2, 2], "x": 2, "y": 2},
- {"matrix": [2, 3], "x": 3, "y": 2},
- {"matrix": [2, 4], "x": 4, "y": 2},
- {"matrix": [2, 5], "x": 5, "y": 2},
- {"matrix": [2, 6], "x": 6, "y": 2},
- {"matrix": [2, 7], "x": 7, "y": 2},
- {"matrix": [2, 8], "x": 8, "y": 2},
- {"matrix": [2, 9], "x": 9, "y": 2},
- {"matrix": [2, 10], "x": 10, "y": 2},
- {"matrix": [2, 11], "x": 11, "y": 2},
- {"matrix": [2, 12], "x": 12, "y": 2},
-
- {"matrix": [3, 0], "x": 0, "y": 3},
- {"matrix": [3, 1], "x": 1, "y": 3},
- {"matrix": [3, 2], "x": 2, "y": 3},
- {"matrix": [3, 3], "x": 3, "y": 3},
- {"matrix": [3, 4], "x": 4, "y": 3},
- {"matrix": [3, 5], "x": 5, "y": 3},
- {"matrix": [3, 6], "x": 6, "y": 3},
- {"matrix": [3, 7], "x": 7, "y": 3},
- {"matrix": [3, 8], "x": 8, "y": 3},
- {"matrix": [3, 9], "x": 9, "y": 3},
- {"matrix": [3, 10], "x": 10, "y": 3},
- {"matrix": [3, 11], "x": 11, "y": 3},
- {"matrix": [3, 12], "x": 12, "y": 3},
-
- {"matrix": [4, 0], "x": 0, "y": 4},
- {"matrix": [4, 1], "x": 1, "y": 4},
- {"matrix": [4, 2], "x": 2, "y": 4},
- {"matrix": [4, 3], "x": 3, "y": 4},
- {"matrix": [4, 4], "x": 4, "y": 4},
- {"matrix": [4, 5], "x": 5, "y": 4},
- {"matrix": [4, 6], "x": 6, "y": 4},
- {"matrix": [4, 7], "x": 7, "y": 4},
- {"matrix": [4, 8], "x": 8, "y": 4},
- {"matrix": [4, 9], "x": 9, "y": 4},
- {"matrix": [4, 10], "x": 10, "y": 4},
- {"matrix": [4, 11], "x": 11, "y": 4},
- {"matrix": [4, 12], "x": 12, "y": 4}
- ]
- }
- }
-}
diff --git a/keyboards/mlego/m65/keymaps/default/config.h b/keyboards/mlego/m65/keymaps/default/config.h
index 637c0a8faf..dba9c658ae 100644
--- a/keyboards/mlego/m65/keymaps/default/config.h
+++ b/keyboards/mlego/m65/keymaps/default/config.h
@@ -1,19 +1,5 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/keymaps/default/keymap.c b/keyboards/mlego/m65/keymaps/default/keymap.c
index 00e144e221..d7421f659c 100644
--- a/keyboards/mlego/m65/keymaps/default/keymap.c
+++ b/keyboards/mlego/m65/keymaps/default/keymap.c
@@ -1,19 +1,5 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
@@ -51,69 +37,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
// clang-format on
-bool led_update_user(led_t led_state) {
- // Disable the default LED update code, so that lock LEDs could be reused to show layer status.
- return false;
-}
-
-void matrix_scan_user(void) {
-
- toggle_leds();
-
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
- switch (keycode) {
- case (TT(_LWR)):
- if (!record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- // This runs before the TT() handler toggles the layer state, so the current layer state is the opposite of the final one after toggle.
- set_led_toggle(_LWR, !layer_state_is(_LWR));
- }
- return true;
- break;
- case (TT(_RSE)):
- if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- set_led_toggle(_RSE, !layer_state_is(_RSE));
- }
- return true;
- break;
- default:
- return true;
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-
-#ifdef RGBLIGHT_ENABLE
-
- set_rgb_layers(state);
-
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [_QW] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
+#if defined(RGBLIGHT_ENABLE)
+ [_LWR] = {ENCODER_CCW_CW(RGB_HUD, RGB_HUI)},
+ [_RSE] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
+ [_ADJ] = {ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)},
+# else
+ [_LWR] = {ENCODER_CCW_CW(KC_MNXT, KC_MPRV)},
+ [_RSE] = {ENCODER_CCW_CW(KC_MFFD, KC_MRWD)},
+ [_ADJ] = {ENCODER_CCW_CW(KC_PGDN, KC_PGUP)},
#endif
-
- return update_tri_layer_state(state, _LWR, _RSE, _ADJ);
-}
-
-#ifdef RGBLIGHT_ENABLE
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
- set_default_rgb_layers(state);
- return state;
-}
-
-#endif
-
-void keyboard_post_init_user(void) {
-
-#ifdef RGBLIGHT_ENABLE
-
- // Enable the LED layers
- rgblight_layers = my_rgb();
-
-#endif
-
-#ifdef OLED_ENABLE
-
- init_timer();
-
+};
#endif
-}
diff --git a/keyboards/mlego/m65/keymaps/default/rules.mk b/keyboards/mlego/m65/keymaps/default/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/mlego/m65/keymaps/default/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/mlego/m65/keymaps/dk/config.h b/keyboards/mlego/m65/keymaps/dk/config.h
deleted file mode 100644
index 637c0a8faf..0000000000
--- a/keyboards/mlego/m65/keymaps/dk/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
diff --git a/keyboards/mlego/m65/keymaps/dk/keymap.c b/keyboards/mlego/m65/keymaps/dk/keymap.c
deleted file mode 100644
index 2bf20bf2f6..0000000000
--- a/keyboards/mlego/m65/keymaps/dk/keymap.c
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "keymap_danish.h"
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QW] = LAYOUT_ortho_5x13(
- KC_ESC, DK_1 , DK_2 , DK_3 , DK_4 , DK_5 , DK_6 , DK_7 , DK_8 , DK_9 , DK_0 , DK_PLUS, KC_BSPC ,
- KC_TAB, DK_Q , DK_W , DK_E , DK_R , DK_T , DK_Y , DK_U , DK_I , DK_O , DK_P , DK_ARNG, DK_DIAE ,
- DK_QUOT, DK_A , DK_S , DK_D , DK_F , DK_G , DK_H , DK_J , DK_K , DK_L , DK_AE , DK_OSTR, KC_ENT ,
- SC_LSPO, DK_LABK, DK_Z , DK_X , DK_C , DK_V , DK_B , DK_N , DK_M , DK_COMM, DK_DOT , KC_UP , DK_MINS ,
- KC_LCTL, KC_LGUI, TT(_LWR), KC_LALT, TT(_RSE), KC_SPC, KC_SPC, KC_SPC, KC_RALT, SC_RSPC, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [_LWR] = LAYOUT_ortho_5x13(
- DK_HALF, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, G(KC_P), KC_SLEP, KC_WAKE, KC_PSCR, KC_DEL , DK_ACUT ,
- KC_BTN3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- KC_BTN2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, KC_BTN1, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_U, _______ ,
- _______, KC_BTN4, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R),
-
- [_RSE] = LAYOUT_ortho_5x13(
- KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_L, KC_WH_D, KC_WH_R),
-
- [_ADJ] = LAYOUT_ortho_5x13(
- RGB_MOD,RGB_RMOD, A(KC_F2), _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_T, RGB_M_SW ,
- RGB_HUI, RGB_HUD, RGB_M_P , _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_M_SN ,
- RGB_SAI, RGB_SAD, RGB_M_B , _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_K ,
- RGB_VAI, RGB_VAD, RGB_M_R , _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_X ,
- RGB_TOG, _______, _______ , _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_TW, RGB_M_G),
-
-};
-// clang-format on
-
-bool led_update_user(led_t led_state) {
- // Disable the default LED update code, so that lock LEDs could be reused to show layer status.
- return false;
-}
-
-void matrix_scan_user(void) {
-
- toggle_leds();
-
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
- switch (keycode) {
- case (TT(_LWR)):
- if (!record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- // This runs before the TT() handler toggles the layer state, so the current layer state is the opposite of the final one after toggle.
- set_led_toggle(_LWR, !layer_state_is(_LWR));
- }
- return true;
- break;
- case (TT(_RSE)):
- if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- set_led_toggle(_RSE, !layer_state_is(_RSE));
- }
- return true;
- break;
- default:
- return true;
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-
-#ifdef RGBLIGHT_ENABLE
-
- set_rgb_layers(state);
-
-#endif
-
- return update_tri_layer_state(state, _LWR, _RSE, _ADJ);
-}
-
-#ifdef RGBLIGHT_ENABLE
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
- set_default_rgb_layers(state);
- return state;
-}
-
-#endif
-
-void keyboard_post_init_user(void) {
-
-#ifdef RGBLIGHT_ENABLE
-
- // Enable the LED layers
- rgblight_layers = my_rgb();
-
-#endif
-
-#ifdef OLED_ENABLE
-
- init_timer();
-
-#endif
-
-}
diff --git a/keyboards/mlego/m65/keymaps/dk/readme.md b/keyboards/mlego/m65/keymaps/dk/readme.md
deleted file mode 100644
index 76ecd8c139..0000000000
--- a/keyboards/mlego/m65/keymaps/dk/readme.md
+++ /dev/null
@@ -1,13 +0,0 @@
-![M65 Layout Image](https://i.imgur.com/RQqsM4gh.png)
-
-# Default M65 Layout
-
-This is the Danish keymap for M65. For the most part it's a straightforward and easy to follow layout inspired by ISO with a DK
-turn. The only unusual key is the key in the upper left, which sends Escape normally, but Grave when in layer 1 aka LWR. Similarly
-number row in layer 1 give the usual audio KC_GRV, KC_AUDIO_MUTE, KC_AUDIO_VOL_UP, KC_AUDIO_VOL_DOWN, KC_MEDIA_PREV_TRACK,
-KC_MEDIA_PLAY_PAUSE, KC_MEDIA_NEXT_TRACK, M_EXTDISP, KC_SYSTEM_SLEEP, KC_SYSTEM_WAKE, KC_PRINT_SCREEN, KC_DEL, DK_ACUT in layer 2 aka
-RSE one gets F1-F12 mouse emulation can be used in layer 1 and 2.
-
-flashing is done by LWR+RSE+r
-
-full layout below see in keymap.c
diff --git a/keyboards/mlego/m65/keymaps/uk/config.h b/keyboards/mlego/m65/keymaps/uk/config.h
index b0c6cfd639..c1f9816c99 100644
--- a/keyboards/mlego/m65/keymaps/uk/config.h
+++ b/keyboards/mlego/m65/keymaps/uk/config.h
@@ -1,29 +1,14 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define TAPPING_TOGGLE 2
-#define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX
-//#define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX, UNICODE_MODE_MACOS, UNICODE_MODE_WINCOMPOSE
+#define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX, UNICODE_MODE_MACOS, UNICODE_MODE_WINDOWS, UNICODE_MODE_WINCOMPOSE
#ifdef WPM_ENABLE
-#define WPM_SAMPLE_SECONDS 10
-#define WPM_SAMPLE_PERIODS 100
-#define WPM_ALLOW_COUNT_REGRESSION
+# define WPM_SAMPLE_SECONDS 10
+# define WPM_SAMPLE_PERIODS 100
+# define WPM_ALLOW_COUNT_REGRESSION
#endif
diff --git a/keyboards/mlego/m65/keymaps/uk/keymap.c b/keyboards/mlego/m65/keymaps/uk/keymap.c
index ee48872433..e021756cdd 100644
--- a/keyboards/mlego/m65/keymaps/uk/keymap.c
+++ b/keyboards/mlego/m65/keymaps/uk/keymap.c
@@ -1,106 +1,101 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
#include "keymap_uk.h"
-#ifdef CONSOLE_ENABLE
-
-#include "print.h"
-
-#endif
-
const uint32_t unicode_map[] PROGMEM = {
- [la] = 0x03B1 , // α
- [lA] = 0x0391 , // Α
- [lb] = 0x03B2 , // β
- [lB] = 0x0392 , // Β
- [lc] = 0x03C7 , // χ
- [lC] = 0x0307 , //
- [ld] = 0x03B4 , // δ
- [lD] = 0x2202 , // ∂
- [le] = 0x03B5 , // ε
- [lE] = 0x2107 , // ℇ
- [lf] = 0x03C6 , // φ
- [lF] = 0x03C8 , // ψ
- [lg] = 0x03B3 , // γ
- [lG] = 0x0393 , // Γ
- [lh] = 0x210F , // ℏ
- [lH] = 0x1D4D7, // 𝓗
- [li] = 0x222B , // ∫
- [lI] = 0x222E , // ∮
- [lj] = 0x2208 , // ∈
- [lJ] = 0x2209 , // ∉
- [lk] = 0x03F0 , // ϰ
- [lK] = 0x2206 , // ∆
- [ll] = 0x03BB , // λ
- [lL] = 0x039B , // Λ
- [lm] = 0x03BC , // μ
- [lM] = 0x2218 , // ∘
- [ln] = 0x03B7 , // η
- [lN] = 0x222A , // ∪
- [lo] = 0x221E , // ∞
- [lO] = 0x2297 , // ⊗
- [lp] = 0x03C0 , // π
- [lP] = 0x220F , // ∏
- [lq] = 0x03C3 , // σ
- [lQ] = 0x03D5 , // ϕ
- [lr] = 0x03C1 , // ρ
- [lR] = 0x2207 , // ∇
- [ls] = 0x2211 , // ∑
- [lS] = 0x2A0B , // ⨋
- [lt] = 0x03D1 , // ϑ
- [lT] = 0x03B8 , // θ
- [lu] = 0x03C4 , // τ
- [lU] = 0x2102 , // ℂ
- [lv] = 0x03BD , // χ
- [lV] = 0x039D , // Ν
- [lw] = 0x03C9 , // ω
- [lW] = 0x03A9 , // Ω
- [lx] = 0x03BE , // ξ
- [lX] = 0x039E , // Ξ
- [ly] = 0x211d , // ℝ
- [lY] = 0x2124 , // ℤ
- [lz] = 0x03B6 , // ζ
- [lZ] = 0x2221 , // ∡
- [lc1] = 0x224A , // ≊
- [lC1] = 0x2248 , // ≈
- [lp1] = 0x00B1 , // ±
- [lP1] = 0x2213 , // ∓
- [lq1] = 0x00D7 , // ×
- [lQ1] = 0x22C5 , // ⋅
- [ll1] = 0x1D53C, // 𝔼
- [lL1] = 0x212b , // Å
- [lk1] = 0x221D , // ∝
- [lK1] = 0x2112 , // ℒ
- [ra] = 0x0103 , // ă
- [rA] = 0x0102 , // Ă
- [ra1] = 0x00E2 , // â
- [rA1] = 0x00C2 , // Â
- [rc] = 0x00E7 , // ç
- [rC] = 0x00C7 , // Ç
- [ri] = 0x00EE , // î
- [rI] = 0x00CE , // Î
- [rs] = 0x0219 , // ș
- [rS] = 0x0218 , // Ș
- [rt] = 0x021B , // ț
- [rT] = 0x021A , // Ț
+ [la] = 0x03B1, // α
+ [lA] = 0x0307, //
+ [lb] = 0x03B2, // β
+ [lB] = 0x2229, // ∩
+ [lc] = 0x03C7, // χ
+ [lC] = 0x2282, // ⊂
+ [ld] = 0x03B4, // δ
+ [lD] = 0x2202, // ∂
+ [le] = 0x03B5, // ε
+ [lE] = 0x2107, // ℇ
+ [lf] = 0x03C6, // φ
+ [lF] = 0x03C8, // ψ
+ [lg] = 0x03B3, // γ
+ [lG] = 0x0393, // Γ
+ [lh] = 0x210F, // ℏ
+ [lH] = 0x1D4D7, // 𝓗
+ [li] = 0x222B, // ∫
+ [lI] = 0x222E, // ∮
+ [lj] = 0x2208, // ∈
+ [lJ] = 0x2209, // ∉
+ [lk] = 0x03F0, // ϰ
+ [lK] = 0x2206, // ∆
+ [ll] = 0x03BB, // λ
+ [lL] = 0x039B, // Λ
+ [lm] = 0x03BC, // μ
+ [lM] = 0x2218, // ∘
+ [ln] = 0x03B7, // η
+ [lN] = 0x222A, // ∪
+ [lo] = 0x221E, // ∞
+ [lO] = 0x2297, // ⊗
+ [lp] = 0x03C0, // π
+ [lP] = 0x220F, // ∏
+ [lq] = 0x03C3, // σ
+ [lQ] = 0x03D5, // ϕ
+ [lr] = 0x03C1, // ρ
+ [lR] = 0x2207, // ∇
+ [ls] = 0x2211, // ∑
+ [lS] = 0x2A0B, // ⨋
+ [lt] = 0x03D1, // ϑ
+ [lT] = 0x03B8, // θ
+ [lu] = 0x03C4, // τ
+ [lU] = 0x2102, // ℂ
+ [lv] = 0x03BD, // χ
+ [lV] = 0x2283, // ⊃
+ [lw] = 0x03C9, // ω
+ [lW] = 0x03A9, // Ω
+ [lx] = 0x03BE, // ξ
+ [lX] = 0x039E, // Ξ
+ [ly] = 0x211d, // ℝ
+ [lY] = 0x2124, // ℤ
+ [lz] = 0x03B6, // ζ
+ [lZ] = 0x2221, // ∡
+ [lc1] = 0x2248, // ≈
+ [lC1] = 0x2249, // ≉
+ [lp1] = 0x00B1, // ±
+ [lP1] = 0x2213, // ∓
+ [lq1] = 0x00D7, // ×
+ [lQ1] = 0x22C5, // ⋅
+ [ll1] = 0x1D53C, // 𝔼
+ [lL1] = 0x212b, // Å
+ [lk1] = 0x221D, // ∝
+ [lK1] = 0x2112, // ℒ
+ [lbo1] = 0x22DC, // ⋜
+ [lbo2] = 0x2260, // ≠
+ [lbc1] = 0x22DD, // ⋝
+ [lbc2] = 0x2245, // ≅
+ [ls1] = 0x2261, // ≡
+ [ls2] = 0x2262, // ≢
+ [ra] = 0x0103, // ă
+ [rA] = 0x0102, // Ă
+ [ra1] = 0x00E2, // â
+ [rA1] = 0x00C2, // Â
+ [rx] = 0x00E7, // ç
+ [rX] = 0x00C7, // Ç
+ [ri] = 0x00EE, // î
+ [rI] = 0x00CE, // Î
+ [rs] = 0x0219, // ș⊄
+ [rS] = 0x0218, // Ș
+ [rt] = 0x021B, // ț
+ [rT] = 0x021A, // Ț
+ [rc] = 0x2284, // ⊄
+ [rC] = 0x2286, // ⊆
+ [rv] = 0x2285, // ⊅
+ [rV] = 0x2287, // ⊇
+ [rb] = 0x2227, // ∧
+ [rB] = 0x22BC, // ⊼
+ [rn] = 0x2228, // ∨
+ [rN] = 0x22BB, // ⊻
};
+
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
@@ -161,29 +156,29 @@ altgr shift symbols
KC_LCTL, KC_LGUI, TT(_LWR), KC_LALT, TT(_RSE), KC_SPC, KC_SPC, KC_SPC, KC_RALT, SC_RSPC, KC_LEFT, KC_DOWN, KC_RGHT),
/*
-lower layer
+raise layer
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
* │ ` │MUT│Vup│Vdn│prv│ply│nxt│EXT│SLP│WAK│PSC│ ⌫ │ = │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ σ │ ω │ ε │ ρ │ ϑ │ ℝ │ τ │ ∫ │ ∞ │ π │ [ │ ] │
+ * │ │ σ │ ω │ ε │ ρ │ ϑ │ ℝ │ τ │ ∫ │ ∞ │ π │ ⋜ │ ⋝ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
* │ │ α │ ∑ │ δ │ φ │ γ │ ℏ │ ∈ │ ϰ │ λ │ 𝔼 │ ∝ │ ⏎ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ ⇧(│ │ ζ │ ξ │ χ │ ν │ β │ η │ μ │ ≊ │ ± │ │ × │
+ * │ ⇧(│ ≡ │ ζ │ ξ │ χ │ ν │ β │ η │ μ │ ≈ │ ± │ │ × │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ ⎈ │ │lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│ │ │ │
+ * │ │ │lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│ │ │ │
* └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
-lower layer shifted
+raise layer shifted
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ ¬ │ │ │ │ │ │ │ │ │ │ │ ⌫ │ = │
+ * │ ¬ │ │ │ │ │ │ │ │ │ │ │ ⌫ │ + │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │MB3│ ϕ │ Ω │ ℇ │ ∇ │ θ │ ℤ │ ℂ │ ∮ │ ⊗ │ ∏ │ { │ } │
+ * │MB3│ ϕ │ Ω │ ℇ │ ∇ │ θ │ ℤ │ ℂ │ ∮ │ ⊗ │ ∏ │ ≠ │ ≅ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │MB2│ Α │ ⨋ │ ∂ │ ψ │ Γ │ 𝓗 │ ∉ │ ∆ │ Λ │ Å │ ℒ │ ⏎ │
+ * │MB2│ ̇ │ ⨋ │ ∂ │ ψ │ Γ │ 𝓗 │ ∉ │ ∆ │ Λ │ Å │ ℒ │ ⏎ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ ⇧(│MB1│ ∡ │ Ξ │ ̇ │ Ν │ Β │ ∪ │ ∘ │ ≈ │ ∓ │MSU│ ⋅ │
+ * │ ⇧(│ ≢ │ ∡ │ Ξ │ ⊂ │ ⊃ │ ∩ │ ∪ │ ∘ │ ≉ │ ∓ │MSU│ ⋅ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ ⎈ │MB4│lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│MSL│MSD│MSR│
+ * │MB1│MB4│lwr│⎇ │rse│ │ │ │⎇ │ ⇧)│MSL│MSD│MSR│
* └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
MB - mouse buttons
MS - mouse directions
@@ -196,7 +191,7 @@ MS - mouse directions
_______, KC_BTN4, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R),
/*
-raise layer
+lower layer
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
* │ ⎋ │ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
@@ -204,7 +199,7 @@ raise layer
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
* │ ⇪ │ ă │ ș │ │ │ │ │ │ │ │ │ │ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │ │ ç │ │ │ │ │ │ │MWU│ │
+ * │ │ │ │ ç │ ⊄ │ ⊅ │ ∧ │ ∨ │ │ │ │MWU│ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
* │ │ │ │ │ │ │ │ │ │ │MWL│MWD│MWR│
* └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
@@ -217,7 +212,7 @@ raise layer shifted
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
* │ │ Ă │ Ș │ │ │ │ │ │ │ │ │ │ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │ │ Ç │ │ │ │ │ │ │ │ │
+ * │ │ │ │ Ç │ ⊆ │ ⊇ │ ⊼ │ ⊻ │ │ │ │ │ │
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
* │ │ │ │ │ │ │ │ │ │ │ │ │ │
* └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
@@ -245,90 +240,23 @@ adj layer
[_ADJ] = LAYOUT_ortho_5x13(
RGB_MOD, RGB_RMOD, A(KC_F2), _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_T , RGB_M_SW,
RGB_HUI, RGB_HUD , RGB_M_P , _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN,
- RGB_SAI, RGB_SAD , RGB_M_B , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_K ,
- RGB_VAI, RGB_VAD , RGB_M_R , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_X ,
+ RGB_SAI, RGB_SAD , RGB_M_B , _______, UC_NEXT, _______, _______, _______, _______, _______, _______, _______ , RGB_M_K ,
+ RGB_VAI, RGB_VAD , RGB_M_R , _______, UC_PREV, UC_LINX, UC_WIN, UC_WINC, UC_MAC, UC_EMAC, _______, _______ , RGB_M_X ,
RGB_TOG, _______ , _______ , _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_TW, RGB_M_G),
};
// clang-format on
-bool led_update_user(led_t led_state) {
- // Disable the default LED update code, so that lock LEDs could be reused to show layer status.
- return false;
-}
-
-void matrix_scan_user(void) {
-
- toggle_leds();
-
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
-
-#ifdef CONSOLE_ENABLE
-
- uprintf("KL: kc: 0x%04X, col: %u, row: %u, pressed: %b, time: %u, interrupt: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count);
-
-#endif
-
- switch (keycode) {
- case (TT(_LWR)):
- if (!record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- // This runs before the TT() handler toggles the layer state, so the current layer state is the opposite of the final one after toggle.
- set_led_toggle(_LWR, !layer_state_is(_LWR));
- }
- return true;
- break;
- case (TT(_RSE)):
- if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- set_led_toggle(_RSE, !layer_state_is(_RSE));
- }
- return true;
- break;
- default:
- return true;
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-
-#ifdef RGBLIGHT_ENABLE
-
- set_rgb_layers(state);
-
-#endif
-
- return update_tri_layer_state(state, _LWR, _RSE, _ADJ);
-}
-
-#ifdef RGBLIGHT_ENABLE
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
-
- set_default_rgb_layers(state);
- return state;
-}
-
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [_QW] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
+#if defined(RGBLIGHT_ENABLE)
+ [_LWR] = {ENCODER_CCW_CW(RGB_HUD, RGB_HUI)},
+ [_RSE] = {ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
+ [_ADJ] = {ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)},
+#else
+ [_LWR] = {ENCODER_CCW_CW(KC_MNXT, KC_MPRV)},
+ [_RSE] = {ENCODER_CCW_CW(KC_MFFD, KC_MRWD)},
+ [_ADJ] = {ENCODER_CCW_CW(KC_PGDN, KC_PGUP)},
#endif
-
-void keyboard_post_init_user(void) {
-#ifdef RGBLIGHT_ENABLE
-
- // Enable the LED layers
- rgblight_layers = my_rgb();
-
-#endif
-
-#ifdef OLED_ENABLE
-
- init_timer();
-
-#endif
-
-#ifdef CONSOLE_ENABLE
-
- debug_enable = true;
- debug_matrix = true;
- debug_keyboard = true;
-
+};
#endif
-}
diff --git a/keyboards/mlego/m65/keymaps/uk/rules.mk b/keyboards/mlego/m65/keymaps/uk/rules.mk
index 502b2def76..846f3443f6 100644
--- a/keyboards/mlego/m65/keymaps/uk/rules.mk
+++ b/keyboards/mlego/m65/keymaps/uk/rules.mk
@@ -1 +1,2 @@
UNICODEMAP_ENABLE = yes
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/mlego/m65/keymaps/via/config.h b/keyboards/mlego/m65/keymaps/via/config.h
deleted file mode 100644
index 637c0a8faf..0000000000
--- a/keyboards/mlego/m65/keymaps/via/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
diff --git a/keyboards/mlego/m65/keymaps/via/keymap.c b/keyboards/mlego/m65/keymaps/via/keymap.c
deleted file mode 100644
index bfdcacc039..0000000000
--- a/keyboards/mlego/m65/keymaps/via/keymap.c
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QW] = LAYOUT_ortho_5x13(
- KC_ESC, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_BSPC ,
- KC_TAB, KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC ,
- KC_NUHS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT ,
- SC_LSPO, KC_NUBS, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_UP , KC_SLSH ,
- KC_LCTL, KC_LGUI, TT(_LWR), KC_LALT, TT(_RSE), KC_SPC, KC_SPC, KC_SPC, KC_RALT, SC_RSPC, KC_LEFT, KC_DOWN, KC_RGHT),
-
- [_LWR] = LAYOUT_ortho_5x13(
- KC_GRV , KC_MUTE, KC_VOLU, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, G(KC_P), KC_SLEP, KC_WAKE, KC_PSCR, KC_DEL , KC_EQL ,
- KC_BTN3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- KC_BTN2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, KC_BTN1, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_U, _______ ,
- _______, KC_BTN4, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R),
-
- [_RSE] = LAYOUT_ortho_5x13(
- KC_ESC , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, _______ ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_L, KC_WH_D, KC_WH_R),
-
- [_ADJ] = LAYOUT_ortho_5x13(
- RGB_MOD, RGB_RMOD, A(KC_F2), _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_T , RGB_M_SW,
- RGB_HUI, RGB_HUD , RGB_M_P , _______, QK_BOOT , _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN,
- RGB_SAI, RGB_SAD , RGB_M_B , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_K ,
- RGB_VAI, RGB_VAD , RGB_M_R , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_X ,
- RGB_TOG, _______ , _______ , _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_TW, RGB_M_G),
-};
-// clang-format on
-
-bool led_update_user(led_t led_state) {
- // Disable the default LED update code, so that lock LEDs could be reused to show layer status.
- return false;
-}
-
-void matrix_scan_user(void) {
-
- toggle_leds();
-
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
- switch (keycode) {
- case (TT(_LWR)):
- if (!record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- // This runs before the TT() handler toggles the layer state, so the current layer state is the opposite of the final one after toggle.
- set_led_toggle(_LWR, !layer_state_is(_LWR));
- }
- return true;
- break;
- case (TT(_RSE)):
- if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
- set_led_toggle(_RSE, !layer_state_is(_RSE));
- }
- return true;
- break;
- default:
- return true;
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-
-#ifdef RGBLIGHT_ENABLE
-
- set_rgb_layers(state);
-
-#endif
-
- return update_tri_layer_state(state, _LWR, _RSE, _ADJ);
-}
-
-#ifdef RGBLIGHT_ENABLE
-
-layer_state_t default_layer_state_set_user(layer_state_t state) {
- set_default_rgb_layers(state);
- return state;
-}
-
-#endif
-
-void keyboard_post_init_user(void) {
-
-#ifdef RGBLIGHT_ENABLE
-
- // Enable the LED layers
- rgblight_layers = my_rgb();
-
-#endif
-
-#ifdef OLED_ENABLE
-
- init_timer();
-
-#endif
-}
diff --git a/keyboards/mlego/m65/lib/glcdfont.c b/keyboards/mlego/m65/lib/glcdfont.c
index 4b354756b6..3f64f032cf 100644
--- a/keyboards/mlego/m65/lib/glcdfont.c
+++ b/keyboards/mlego/m65/lib/glcdfont.c
@@ -4,228 +4,13 @@
#include "progmem.h"
static const unsigned char PROGMEM font[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
- 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
- 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
- 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
- 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
- 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
- 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
- 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
- 0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
- 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
- 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
- 0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
- 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
- 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
- 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
- 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
- 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
- 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
- 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
- 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
- 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
- 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
- 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
- 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
- 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
- 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
- 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
- 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
- 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
- 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
- 0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
- 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
- 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
- 0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
- 0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
- 0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
- 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
- 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
- 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
- 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
- 0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
- 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
- 0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
- 0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
- 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
- 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
- 0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
- 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
- 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
- 0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
- 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
- 0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
- 0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
- 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
- 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
- 0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
- 0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
- 0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
- 0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
- 0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
- 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
- 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
- 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
- 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
- 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
- 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
- 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
- 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
- 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
- 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
- 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
- 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
- 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
- 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
- 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
- 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
- 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
- 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
- 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
- 0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
- 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
- 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
- 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
- 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
- 0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
- 0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
- 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
- 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
- 0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
- 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
- 0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
- 0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
- 0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
- 0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
- 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
- 0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
- 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
- 0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
- 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
- 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
- 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
- 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
- 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
- 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
- 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
- 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
- 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
- 0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
- 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
- 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
- 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
- 0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
- 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
- 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
- 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
- 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
- 0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
- 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
- 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
- 0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
- 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
- 0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
- 0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
- 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xE0, 0x18, 0x02,
- 0x00, 0x3C, 0x1E, 0x06, 0x0E, 0x0A,
- 0x1A, 0x0E, 0x26, 0xFF, 0xBF, 0x0D,
- 0x00, 0x80, 0x80, 0x81, 0xFF, 0xFE,
- 0xF8, 0x01, 0x01, 0x03, 0x03, 0x03,
- 0x03, 0x05, 0x05, 0x02, 0x02, 0x0A,
- 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A,
- 0x0C, 0x04, 0x10, 0x18, 0x20, 0xC0,
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xD0, 0x58, 0x78,
- 0x68, 0x2C, 0x24, 0x34, 0xF4, 0xF4,
- 0x3C, 0x3C, 0xFC, 0xF8, 0xF8, 0x70,
- 0xF0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0xC0, 0x7C, 0x07, 0x80, 0xE0,
- 0x60, 0x64, 0xE2, 0x60, 0x10, 0x10,
- 0x20, 0x22, 0x12, 0x17, 0x3F, 0x0B,
- 0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
- 0x6F, 0xFC, 0xE0, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
- 0x60, 0x60, 0x70, 0x70, 0xF0, 0xF0,
- 0xD0, 0xD0, 0xD0, 0xD0, 0x50, 0x50,
- 0x50, 0x70, 0x78, 0x78, 0x78, 0x7C,
- 0x7F, 0x7D, 0x7C, 0x5E, 0x4F, 0x44,
- 0x40, 0x40, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x38, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x58, 0x46, 0x47, 0x41,
- 0x41, 0x01, 0x01, 0x03, 0x03, 0x42,
- 0x42, 0x42, 0x46, 0x46, 0x46, 0x46,
- 0x42, 0x43, 0x43, 0x73, 0x77, 0x72,
- 0x70, 0x60, 0x60, 0x60, 0x60, 0x60,
- 0x60, 0x61, 0x67, 0x6F, 0x7E, 0x78,
- 0x78, 0x70, 0x70, 0x70, 0x70, 0x70,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
- 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
- 0x40, 0x40, 0x40, 0x48, 0x58, 0x58,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
+ 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
+ 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
+ 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, 0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
+ 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
+ 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x18, 0x02, 0x00, 0x3C, 0x1E, 0x06, 0x0E, 0x0A, 0x1A, 0x0E, 0x26, 0xFF, 0xBF, 0x0D, 0x00, 0x80, 0x80, 0x81, 0xFF, 0xFE, 0xF8, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x05, 0x05, 0x02, 0x02, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0C, 0x04, 0x10, 0x18, 0x20, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0, 0x58, 0x78, 0x68, 0x2C, 0x24, 0x34, 0xF4, 0xF4, 0x3C, 0x3C, 0xFC, 0xF8, 0xF8, 0x70, 0xF0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7C, 0x07, 0x80, 0xE0, 0x60, 0x64, 0xE2, 0x60, 0x10, 0x10, 0x20, 0x22, 0x12, 0x17, 0x3F, 0x0B, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x6F, 0xFC, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x60, 0x70, 0x70, 0xF0, 0xF0, 0xD0, 0xD0, 0xD0, 0xD0, 0x50, 0x50, 0x50, 0x70, 0x78, 0x78, 0x78, 0x7C, 0x7F, 0x7D, 0x7C, 0x5E, 0x4F, 0x44, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x30, 0x30, 0x30, 0x30,
+ 0x30, 0x30, 0x58, 0x46, 0x47, 0x41, 0x41, 0x01, 0x01, 0x03, 0x03, 0x42, 0x42, 0x42, 0x46, 0x46, 0x46, 0x46, 0x42, 0x43, 0x43, 0x73, 0x77, 0x72, 0x70, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x61, 0x67, 0x6F, 0x7E, 0x78, 0x78, 0x70, 0x70, 0x70, 0x70, 0x70, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x40, 0x40, 0x40, 0x48, 0x58, 0x58, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
diff --git a/keyboards/mlego/m65/m65.c b/keyboards/mlego/m65/m65.c
index 3f71a27790..12ea866f1e 100644
--- a/keyboards/mlego/m65/m65.c
+++ b/keyboards/mlego/m65/m65.c
@@ -1,139 +1,74 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "m65.h"
+#include QMK_KEYBOARD_H
// let us assume we start with both layers off
static bool toggle_lwr = false;
static bool toggle_rse = false;
-#ifdef RGBLIGHT_ENABLE
+#if defined(RGBLIGHT_ENABLE)
-const rgblight_segment_t PROGMEM my_qwerty_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_PURPLE});
-const rgblight_segment_t PROGMEM my_lwr_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_CYAN});
-const rgblight_segment_t PROGMEM my_rse_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_RED});
-const rgblight_segment_t PROGMEM my_adj_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_GREEN});
+const rgblight_segment_t PROGMEM my_qwerty_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_OFF});
+const rgblight_segment_t PROGMEM my_lwr_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_AZURE});
+const rgblight_segment_t PROGMEM my_rse_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_CORAL});
+const rgblight_segment_t PROGMEM my_adj_layer[] = RGBLIGHT_LAYER_SEGMENTS({0, RGBLED_NUM, HSV_RED});
const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(my_qwerty_layer, my_lwr_layer, my_rse_layer, my_adj_layer);
#endif
-#ifdef OLED_ENABLE
-
-static uint32_t oled_logo_timer = 0;
-static bool clear_logo = true;
-static const char PROGMEM m65_logo[] = {
- 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5,
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4,
- 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4,
- 0};
-
+#if defined(OLED_ENABLE)
+static uint32_t oled_logo_timer = 0;
+static bool clear_logo = true;
+static const char PROGMEM m65_logo[] = {0x92, 0x92, 0x93, 0x94, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x92, 0x92, 0x93, 0x94, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB2, 0x92, 0xB3, 0xB4, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0};
#endif
-#ifdef RGBLIGHT_ENABLE
-
-void set_rgb_layers(layer_state_t state){
+#if defined(RGBLIGHT_ENABLE)
+void set_rgb_layers(layer_state_t state) {
rgblight_set_layer_state(0, layer_state_cmp(state, _QW));
rgblight_set_layer_state(1, layer_state_cmp(state, _LWR));
rgblight_set_layer_state(2, layer_state_cmp(state, _RSE));
rgblight_set_layer_state(3, layer_state_cmp(state, _ADJ));
-
}
-void set_default_rgb_layers(layer_state_t state){
+void set_default_rgb_layers(layer_state_t state) {
rgblight_set_layer_state(0, layer_state_cmp(state, _QW));
}
-const rgblight_segment_t * const* my_rgb(void){
+const rgblight_segment_t* const* my_rgb(void) {
return my_rgb_layers;
}
#endif
-void set_led_toggle(const uint8_t layer, const bool state){
-
+void set_led_toggle(const uint8_t layer, const bool state) {
switch (layer) {
case _LWR:
- toggle_lwr = state;
- break;
+ toggle_lwr = state;
+ break;
case _RSE:
- toggle_rse = state;
- break;
+ toggle_rse = state;
+ break;
default:
- break;
+ break;
}
}
-void toggle_leds(void){
-
+void toggle_leds(const bool toggle_lwr, const bool toggle_rse) {
led_lwr(toggle_lwr);
led_rse(toggle_rse);
- led_t led_state = host_keyboard_led_state();
- led_caps(led_state.caps_lock);
if (layer_state_is(_ADJ)) {
led_lwr(true);
led_rse(true);
}
-
}
-#ifdef ENCODER_ENABLE
-
-# define MEDIA_KEY_DELAY 10
+#if defined(OLED_ENABLE)
-void my_encoders(const uint8_t index, const bool clockwise) {
- if (index == 0) { /* First encoder */
- if (IS_LAYER_ON(_LWR)) {
- if (clockwise) {
- rgblight_decrease_val_noeeprom();
- } else {
- rgblight_increase_val_noeeprom();
- }
- } else if (IS_LAYER_ON(_RSE)) {
- if (clockwise) {
- rgblight_decrease_hue_noeeprom();
- } else {
- rgblight_increase_hue_noeeprom();
- }
-
- } else {
- if (clockwise) {
- tap_code_delay(KC_VOLD, MEDIA_KEY_DELAY);
- } else {
- tap_code_delay(KC_VOLU, MEDIA_KEY_DELAY);
- }
- }
- }
-}
-
-bool encoder_update_kb(uint8_t index, bool clockwise) {
- if (!encoder_update_user(index, clockwise)) { return false; }
- my_encoders(index, clockwise);
- return false;
-}
-
-#endif
-
-#ifdef OLED_ENABLE
-
-void init_timer(void){
- oled_logo_timer = timer_read32();
+void init_timer(void) {
+ oled_logo_timer = timer_read32();
};
void user_oled_magic(void) {
@@ -163,11 +98,38 @@ void user_oled_magic(void) {
oled_write_P(led_state.num_lock ? PSTR("Lower ") : PSTR(" "), false);
oled_write_P(led_state.scroll_lock ? PSTR("Raise ") : PSTR(" "), false);
oled_write_P(led_state.caps_lock ? PSTR("CapsLock ") : PSTR(" "), false);
-#ifdef WPM_ENABLE
+
+# if defined(UNICODE_COMMON_ENABLE)
+ oled_write_P(PSTR("\nunicode: "), false);
+ switch (get_unicode_input_mode()) {
+ case UNICODE_MODE_LINUX:
+ oled_write_P(PSTR("Linux"), false);
+ break;
+ case UNICODE_MODE_MACOS:
+ oled_write_P(PSTR("apple"), false);
+ break;
+ case UNICODE_MODE_WINDOWS:
+ oled_write_P(PSTR("windows"), false);
+ break;
+ case UNICODE_MODE_WINCOMPOSE:
+ oled_write_P(PSTR("windows c"), false);
+ break;
+ case UNICODE_MODE_BSD:
+ oled_write_P(PSTR("bsd"), false);
+ break;
+ case UNICODE_MODE_EMACS:
+ oled_write_P(PSTR("emacs"), false);
+ break;
+ default:
+ oled_write_ln_P(PSTR("not supported"), false);
+ }
+# endif
+
+# if defined(WPM_ENABLE)
oled_write_P(PSTR("\nwpm: "), false);
uint8_t wpm = get_current_wpm();
- oled_write_P(wpm != 0 ? get_u8_str(wpm,' ') : PSTR(" "), false);
-#endif
+ oled_write_P(wpm != 0 ? get_u8_str(wpm, ' ') : PSTR(" "), false);
+# endif
}
void render_logo(void) {
@@ -175,13 +137,13 @@ void render_logo(void) {
}
void clear_screen(void) {
- if (clear_logo){
- for (uint8_t i = 0; i < OLED_DISPLAY_HEIGHT; ++i) {
- for (uint8_t j = 0; j < OLED_DISPLAY_WIDTH; ++j) {
- oled_write_raw_byte(0x0, i*OLED_DISPLAY_WIDTH + j);
+ if (clear_logo) {
+ for (uint8_t i = 0; i < OLED_DISPLAY_HEIGHT; ++i) {
+ for (uint8_t j = 0; j < OLED_DISPLAY_WIDTH; ++j) {
+ oled_write_raw_byte(0x0, i * OLED_DISPLAY_WIDTH + j);
+ }
}
- }
- clear_logo = false;
+ clear_logo = false;
}
}
@@ -191,14 +153,91 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) {
# define SHOW_LOGO 5000
bool oled_task_kb(void) {
- if (!oled_task_user()) { return false; }
- if ((timer_elapsed32(oled_logo_timer) < SHOW_LOGO)){
+ if (!oled_task_user()) {
+ return false;
+ }
+ if ((timer_elapsed32(oled_logo_timer) < SHOW_LOGO)) {
render_logo();
- }else{
- clear_screen();
- user_oled_magic();
+ } else {
+ clear_screen();
+ user_oled_magic();
}
return false;
}
#endif
+
+void matrix_scan_kb(void) {
+ matrix_scan_user();
+ toggle_leds(toggle_lwr, toggle_rse);
+}
+
+bool process_record_kb(uint16_t keycode, keyrecord_t* record) {
+#if defined(CONSOLE_ENABLE)
+ uprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %u, time: %5u, int: %u, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count);
+#endif
+
+ switch (keycode) {
+ case (TT(_LWR)):
+ if (!record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
+ // This runs before the TT() handler toggles the layer state, so the current layer state is the opposite of the final one after toggle.
+ set_led_toggle(_LWR, !layer_state_is(_LWR));
+ }
+ return true;
+ break;
+ case (TT(_RSE)):
+ if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
+ set_led_toggle(_RSE, !layer_state_is(_RSE));
+ }
+ return true;
+ break;
+ default:
+ return true;
+ }
+ return process_record_user(keycode, record);
+}
+
+layer_state_t layer_state_set_kb(layer_state_t state) {
+ state = layer_state_set_user(state);
+
+#if defined(RGBLIGHT_ENABLE)
+
+ set_rgb_layers(state);
+
+#endif
+
+ return update_tri_layer_state(state, _LWR, _RSE, _ADJ);
+}
+
+#if defined(RGBLIGHT_ENABLE)
+
+layer_state_t default_layer_state_set_kb(layer_state_t state) {
+ state = default_layer_state_set_user(state);
+
+ set_default_rgb_layers(state);
+
+ return state;
+}
+
+#endif
+
+void keyboard_post_init_kb(void) {
+ init_lwr_rse_led();
+
+#if defined(RGBLIGHT_ENABLE)
+ // Enable the LED layers
+ rgblight_layers = my_rgb();
+#endif
+
+#if defined(OLED_ENABLE)
+ init_timer();
+#endif
+
+#if defined(CONSOLE_ENABLE)
+ debug_enable = true;
+ debug_matrix = true;
+ debug_keyboard = true;
+#endif
+
+ keyboard_post_init_user();
+}
diff --git a/keyboards/mlego/m65/m65.h b/keyboards/mlego/m65/m65.h
index 0c3f3b5ba6..1c5589c111 100644
--- a/keyboards/mlego/m65/m65.h
+++ b/keyboards/mlego/m65/m65.h
@@ -1,154 +1,65 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "quantum.h"
-enum unicode_names {
- la = 0,
- lA,
- lb,
- lB,
- lc,
- lC,
- ld,
- lD,
- le,
- lE,
- lf,
- lF,
- lg,
- lG,
- lh,
- lH,
- li,
- lI,
- lj,
- lJ,
- lk,
- lK,
- ll,
- lL,
- lm,
- lM,
- ln,
- lN,
- lo,
- lO,
- lp,
- lP,
- lq,
- lQ,
- lr,
- lR,
- ls,
- lS,
- lt,
- lT,
- lu,
- lU,
- lv,
- lV,
- lw,
- lW,
- lx,
- lX,
- ly,
- lY,
- lz,
- lZ,
- lc1,
- lC1,
- lp1,
- lP1,
- lq1,
- lQ1,
- ll1,
- lL1,
- lk1,
- lK1,
- ra,
- rA,
- ra1,
- rA1,
- rc,
- rC,
- ri,
- rI,
- rs,
- rS,
- rt,
- rT,
- ro,
- rO,
- ra2,
- rA2,
- ra3,
- rA3
-};
+#if defined(UNICODEMAP_ENABLE)
+enum unicode_names { la = 0, lA, lb, lB, lc, lC, ld, lD, le, lE, lf, lF, lg, lG, lh, lH, li, lI, lj, lJ, lk, lK, ll, lL, lm, lM, ln, lN, lo, lO, lp, lP, lq, lQ, lr, lR, ls, lS, lt, lT, lu, lU, lv, lV, lw, lW, lx, lX, ly, lY, lz, lZ, lc1, lC1, lp1, lP1, lq1, lQ1, ll1, lL1, lk1, lK1, lbo1, lbo2, lbc1, lbc2, ls1, ls2, ra, rA, ra1, rA1, rc, rC, ri, rI, rs, rS, rt, rT, ro, rO, ra2, rA2, ra3, rA3, rx, rX, rv, rV, rb, rB, rn, rN };
+#endif
+enum layer_names { _QW = 0, _LWR, _RSE, _ADJ };
-enum layer_names {
- _QW = 0,
- _LWR,
- _RSE,
- _ADJ
-};
-#ifdef OLED_ENABLE
+#if defined(OLED_ENABLE)
void user_oled_magic(void);
void render_logo(void);
void clear_screen(void);
void init_timer(void);
#endif
-#ifdef ENCODER_ENABLE
-void my_encoders(const uint8_t, const bool);
-bool encoder_update_user(uint8_t, bool);
+#if defined(RGBLIGHT_ENABLE)
+void set_rgb_layers(layer_state_t);
+const rgblight_segment_t* const* my_rgb(void);
+void set_default_rgb_layers(layer_state_t);
#endif
-#ifdef RGBLIGHT_ENABLE
-void set_rgb_layers(layer_state_t);
-const rgblight_segment_t * const* my_rgb(void);
-void set_default_rgb_layers(layer_state_t);
-#endif
+void toggle_leds(const bool, const bool);
+void set_led_toggle(const uint8_t, const bool);
+static inline void init_lwr_rse_led(void) {
+#if defined(LED_LWR_PIN)
+ setPinOutput(LED_LWR_PIN);
+ writePin(LED_LWR_PIN, false);
+ wait_ms(30);
+#endif
-void toggle_leds(void);
-void set_led_toggle(const uint8_t, const bool);
+#if defined(LED_RSE_PIN)
+ setPinOutput(LED_RSE_PIN);
+ writePin(LED_RSE_PIN, false);
+ wait_ms(30);
+#endif
+}
static inline void led_lwr(const bool on) {
-#ifdef LED_NUM_LOCK_PIN
- writePin(LED_NUM_LOCK_PIN, on);
+#if defined(LED_LWR_PIN)
+ if ((PRODUCT_ID == 0x6064) || (PRODUCT_ID == 0x6065) ||
+ (PRODUCT_ID == 0x6066) || (PRODUCT_ID == 0x6067)) {
+ writePin(LED_LWR_PIN, !on);
+ }else{
+ writePin(LED_LWR_PIN, on);
+ }
#endif
}
static inline void led_rse(const bool on) {
-#ifdef LED_SCROLL_LOCK_PIN
- writePin(LED_SCROLL_LOCK_PIN, on);
-#endif
-}
-static inline void led_caps(const bool on) {
-#ifdef LED_CAPS_LOCK_PIN
- if ((PRODUCT_ID == 0x6061) && (DEVICE_VER == 0x0002)) {
- writePin(LED_CAPS_LOCK_PIN, on);
- } else {
- writePin(LED_CAPS_LOCK_PIN, !on);
+#if defined(LED_RSE_PIN)
+ if ((PRODUCT_ID == 0x6064) || (PRODUCT_ID == 0x6065) ||
+ (PRODUCT_ID == 0x6066) || (PRODUCT_ID == 0x6067)) {
+ writePin(LED_RSE_PIN, !on);
+ }else{
+ writePin(LED_RSE_PIN, on);
}
#endif
}
diff --git a/keyboards/mlego/m65/readme.md b/keyboards/mlego/m65/readme.md
index 8076697a2b..d53475fd57 100644
--- a/keyboards/mlego/m65/readme.md
+++ b/keyboards/mlego/m65/readme.md
@@ -7,7 +7,7 @@ A (13x5) ortholinear keyboard that can be hand wired or using a pcb.
* Keyboard Maintainer: [Alin Elena](https://github.com/alinelena) ([@drFaustroll on GitLab](https://gitlab.com/drFaustroll))
* Hardware Supported: custom pcb [see](https://gitlab.com/m-lego/m65) STM/APM32F103C8T6, aka Black Pill (rev1),
GD32F303CCT6 from we act aka Blue Pill Plus (rev2), STM32F401 from we act (rev3,rev4) STM32F411 can also be used just ask
-* Hardware Availability: [custom how to](https://alin.elena.space/blog/keeblego/)
+* Hardware Availability: [custom how to](https://mlego.elena.space/m65)
Make example for this keyboard (after setting up your build environment):
diff --git a/keyboards/mlego/m65/rev1/config.h b/keyboards/mlego/m65/rev1/config.h
index 847dd11823..e832af8fee 100644
--- a/keyboards/mlego/m65/rev1/config.h
+++ b/keyboards/mlego/m65/rev1/config.h
@@ -1,20 +1,7 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define RGBLIGHT_LAYERS
+#define LED_RSE_PIN B13
+#define LED_LWR_PIN B12
diff --git a/keyboards/mlego/m65/rev1/info.json b/keyboards/mlego/m65/rev1/info.json
index 960b9325c8..d8bb91de30 100644
--- a/keyboards/mlego/m65/rev1/info.json
+++ b/keyboards/mlego/m65/rev1/info.json
@@ -1,42 +1,134 @@
{
- "usb": {
- "pid": "0x6061",
- "device_version": "0.0.1"
- },
- "matrix_pins": {
- "cols": ["A10", "A15", "B3", "B4", "B5", "B9", "B8", "B7", "B6", "C15", "A0", "A7", "B10"],
- "rows": ["B11", "B0", "B1", "A2", "A3"]
- },
+ "manufacturer": "Alin Elena",
+ "keyboard_name": "mlego/m65 rev1",
+ "maintainer": "alin elena",
+ "bootloader": "stm32duino",
+ "debounce": 5,
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{"pin_a": "A8", "pin_b": "A9"}
]
},
+ "features": {
+ "audio": false,
+ "backlight": false,
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
"indicators": {
"caps_lock": "C13",
- "num_lock": "B12",
- "scroll_lock": "B13"
+ "on_state": 0
},
+ "matrix_pins": {
+ "cols": ["A10", "A15", "B3", "B4", "B5", "B9", "B8", "B7", "B6", "C15", "A0", "A7", "B10"],
+ "rows": ["B11", "B0", "B1", "A2", "A3"]
+ },
+ "processor": "STM32F103",
"rgblight": {
- "saturation_steps": 8,
- "led_count": 20,
"animations": {
+ "alternating": true,
"breathing": true,
+ "christmas": true,
+ "knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
+ "rgb_test": true,
"snake": true,
- "knight": true,
- "christmas": true,
"static_gradient": true,
- "rgb_test": true,
- "alternating": true,
"twinkle": true
- }
+ },
+ "hue_steps": 8,
+ "layers": {
+ "enabled": true
+ },
+ "led_count": 20,
+ "saturation_steps": 8
+ },
+ "url": "https://gitlab.com/m-lego/m65",
+ "usb": {
+ "device_version": "0.0.1",
+ "pid": "0x6061",
+ "vid": "0xBABA"
},
"ws2812": {
"pin": "B15"
},
- "processor": "STM32F103",
- "bootloader": "stm32duino"
+ "layouts": {
+ "LAYOUT_ortho_5x13": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "Backspace", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1},
+ {"label": "q", "matrix": [1, 1], "x": 1, "y": 1},
+ {"label": "w", "matrix": [1, 2], "x": 2, "y": 1},
+ {"label": "e", "matrix": [1, 3], "x": 3, "y": 1},
+ {"label": "r", "matrix": [1, 4], "x": 4, "y": 1},
+ {"label": "t", "matrix": [1, 5], "x": 5, "y": 1},
+ {"label": "y", "matrix": [1, 6], "x": 6, "y": 1},
+ {"label": "u", "matrix": [1, 7], "x": 7, "y": 1},
+ {"label": "i", "matrix": [1, 8], "x": 8, "y": 1},
+ {"label": "o", "matrix": [1, 9], "x": 9, "y": 1},
+ {"label": "p", "matrix": [1, 10], "x": 10, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12, "y": 1},
+ {"label": "#", "matrix": [2, 0], "x": 0, "y": 2},
+ {"label": "a", "matrix": [2, 1], "x": 1, "y": 2},
+ {"label": "s", "matrix": [2, 2], "x": 2, "y": 2},
+ {"label": "d", "matrix": [2, 3], "x": 3, "y": 2},
+ {"label": "f", "matrix": [2, 4], "x": 4, "y": 2},
+ {"label": "g", "matrix": [2, 5], "x": 5, "y": 2},
+ {"label": "h", "matrix": [2, 6], "x": 6, "y": 2},
+ {"label": "j", "matrix": [2, 7], "x": 7, "y": 2},
+ {"label": "k", "matrix": [2, 8], "x": 8, "y": 2},
+ {"label": "l", "matrix": [2, 9], "x": 9, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11, "y": 2},
+ {"label": "Enter", "matrix": [2, 12], "x": 12, "y": 2},
+ {"label": "Left Shift", "matrix": [3, 0], "x": 0, "y": 3},
+ {"label": "\\", "matrix": [3, 1], "x": 1, "y": 3},
+ {"label": "z", "matrix": [3, 2], "x": 2, "y": 3},
+ {"label": "x", "matrix": [3, 3], "x": 3, "y": 3},
+ {"label": "c", "matrix": [3, 4], "x": 4, "y": 3},
+ {"label": "v", "matrix": [3, 5], "x": 5, "y": 3},
+ {"label": "b", "matrix": [3, 6], "x": 6, "y": 3},
+ {"label": "n", "matrix": [3, 7], "x": 7, "y": 3},
+ {"label": "m", "matrix": [3, 8], "x": 8, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10, "y": 3},
+ {"label": "Up", "matrix": [3, 11], "x": 11, "y": 3},
+ {"label": "/", "matrix": [3, 12], "x": 12, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4},
+ {"label": "Menu", "matrix": [4, 1], "x": 1, "y": 4},
+ {"label": "Lower", "matrix": [4, 2], "x": 2, "y": 4},
+ {"label": "Alt", "matrix": [4, 3], "x": 3, "y": 4},
+ {"label": "Raise", "matrix": [4, 4], "x": 4, "y": 4},
+ {"label": "Space", "matrix": [4, 5], "x": 5, "y": 4},
+ {"label": "Space", "matrix": [4, 6], "x": 6, "y": 4},
+ {"label": "Space", "matrix": [4, 7], "x": 7, "y": 4},
+ {"label": "Alt Gr", "matrix": [4, 8], "x": 8, "y": 4},
+ {"label": "Right Shift", "matrix": [4, 9], "x": 9, "y": 4},
+ {"label": "Left", "matrix": [4, 10], "x": 10, "y": 4},
+ {"label": "Down", "matrix": [4, 11], "x": 11, "y": 4},
+ {"label": "Right", "matrix": [4, 12], "x": 12, "y": 4}
+ ]
+ }
+ }
}
diff --git a/keyboards/mlego/m65/rev1/mcuconf.h b/keyboards/mlego/m65/rev1/mcuconf.h
index 6ba4f72b40..a8e4fbb319 100644
--- a/keyboards/mlego/m65/rev1/mcuconf.h
+++ b/keyboards/mlego/m65/rev1/mcuconf.h
@@ -1,23 +1,5 @@
-/* Copyright 2021-2022 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/m65/rev1/mcuconf.h -r platforms/chibios/STM32_F103_STM32DUINO/configs/mcuconf.h`
- */
+// Copyright 2020-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/rev1/rules.mk b/keyboards/mlego/m65/rev1/rules.mk
index fa351eadba..48c755b14e 100644
--- a/keyboards/mlego/m65/rev1/rules.mk
+++ b/keyboards/mlego/m65/rev1/rules.mk
@@ -1,13 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable encoder
+#intentionally blanck
diff --git a/keyboards/mlego/m65/rev2/board.h b/keyboards/mlego/m65/rev2/board.h
index e0d0865776..15ec270599 100644
--- a/keyboards/mlego/m65/rev2/board.h
+++ b/keyboards/mlego/m65/rev2/board.h
@@ -1,18 +1,5 @@
-/* Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include_next <board.h>
diff --git a/keyboards/mlego/m65/rev2/config.h b/keyboards/mlego/m65/rev2/config.h
index 666d296ede..32f7b4eca3 100644
--- a/keyboards/mlego/m65/rev2/config.h
+++ b/keyboards/mlego/m65/rev2/config.h
@@ -1,23 +1,10 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2020-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define RGBLIGHT_LAYERS
+#define LED_RSE_PIN B13
+#define LED_LWR_PIN B12
#define EEPROM_PAGE_SIZE
#define FEE_PAGE_SIZE 0x800
diff --git a/keyboards/mlego/m65/rev2/info.json b/keyboards/mlego/m65/rev2/info.json
index 8d822ae4e7..e8575e23e8 100644
--- a/keyboards/mlego/m65/rev2/info.json
+++ b/keyboards/mlego/m65/rev2/info.json
@@ -1,42 +1,133 @@
{
- "usb": {
- "pid": "0x6061",
- "device_version": "0.0.2"
- },
- "matrix_pins": {
- "cols": ["A10", "A15", "B3", "B4", "B5", "B9", "B8", "B7", "B6", "C15", "A0", "A7", "B10"],
- "rows": ["B11", "B0", "B1", "A2", "A3"]
- },
+ "manufacturer": "Alin Elena",
+ "keyboard_name": "mlego/m65 rev2",
+ "maintainer": "alin elena",
+ "bootloader": "stm32duino",
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{"pin_a": "A8", "pin_b": "A9"}
]
},
+ "features": {
+ "audio": false,
+ "backlight": false,
+ "bootmagic": true,
+ "command": true,
+ "console": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
"indicators": {
"caps_lock": "B2",
- "num_lock": "B12",
- "scroll_lock": "B13"
+ "on_state": 0
},
+ "matrix_pins": {
+ "cols": ["A10", "A15", "B3", "B4", "B5", "B9", "B8", "B7", "B6", "C15", "A0", "A7", "B10"],
+ "rows": ["B11", "B0", "B1", "A2", "A3"]
+ },
+ "processor": "STM32F103",
"rgblight": {
- "saturation_steps": 8,
- "led_count": 20,
"animations": {
+ "alternating": true,
"breathing": true,
+ "christmas": true,
+ "knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
+ "rgb_test": true,
"snake": true,
- "knight": true,
- "christmas": true,
"static_gradient": true,
- "rgb_test": true,
- "alternating": true,
"twinkle": true
- }
+ },
+ "hue_steps": 8,
+ "layers": {
+ "enabled": true
+ },
+ "led_count": 20,
+ "saturation_steps": 8
+ },
+ "url": "https://gitlab.com/m-lego/m65",
+ "usb": {
+ "device_version": "0.0.2",
+ "pid": "0x6061",
+ "vid": "0xBABA"
},
"ws2812": {
"pin": "B15"
},
- "processor": "STM32F103", // GD32F303CCT6
- "bootloader": "stm32duino"
+ "layouts": {
+ "LAYOUT_ortho_5x13": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "Backspace", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1},
+ {"label": "q", "matrix": [1, 1], "x": 1, "y": 1},
+ {"label": "w", "matrix": [1, 2], "x": 2, "y": 1},
+ {"label": "e", "matrix": [1, 3], "x": 3, "y": 1},
+ {"label": "r", "matrix": [1, 4], "x": 4, "y": 1},
+ {"label": "t", "matrix": [1, 5], "x": 5, "y": 1},
+ {"label": "y", "matrix": [1, 6], "x": 6, "y": 1},
+ {"label": "u", "matrix": [1, 7], "x": 7, "y": 1},
+ {"label": "i", "matrix": [1, 8], "x": 8, "y": 1},
+ {"label": "o", "matrix": [1, 9], "x": 9, "y": 1},
+ {"label": "p", "matrix": [1, 10], "x": 10, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12, "y": 1},
+ {"label": "#", "matrix": [2, 0], "x": 0, "y": 2},
+ {"label": "a", "matrix": [2, 1], "x": 1, "y": 2},
+ {"label": "s", "matrix": [2, 2], "x": 2, "y": 2},
+ {"label": "d", "matrix": [2, 3], "x": 3, "y": 2},
+ {"label": "f", "matrix": [2, 4], "x": 4, "y": 2},
+ {"label": "g", "matrix": [2, 5], "x": 5, "y": 2},
+ {"label": "h", "matrix": [2, 6], "x": 6, "y": 2},
+ {"label": "j", "matrix": [2, 7], "x": 7, "y": 2},
+ {"label": "k", "matrix": [2, 8], "x": 8, "y": 2},
+ {"label": "l", "matrix": [2, 9], "x": 9, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11, "y": 2},
+ {"label": "Enter", "matrix": [2, 12], "x": 12, "y": 2},
+ {"label": "Left Shift", "matrix": [3, 0], "x": 0, "y": 3},
+ {"label": "\\", "matrix": [3, 1], "x": 1, "y": 3},
+ {"label": "z", "matrix": [3, 2], "x": 2, "y": 3},
+ {"label": "x", "matrix": [3, 3], "x": 3, "y": 3},
+ {"label": "c", "matrix": [3, 4], "x": 4, "y": 3},
+ {"label": "v", "matrix": [3, 5], "x": 5, "y": 3},
+ {"label": "b", "matrix": [3, 6], "x": 6, "y": 3},
+ {"label": "n", "matrix": [3, 7], "x": 7, "y": 3},
+ {"label": "m", "matrix": [3, 8], "x": 8, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10, "y": 3},
+ {"label": "Up", "matrix": [3, 11], "x": 11, "y": 3},
+ {"label": "/", "matrix": [3, 12], "x": 12, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4},
+ {"label": "Menu", "matrix": [4, 1], "x": 1, "y": 4},
+ {"label": "Lower", "matrix": [4, 2], "x": 2, "y": 4},
+ {"label": "Alt", "matrix": [4, 3], "x": 3, "y": 4},
+ {"label": "Raise", "matrix": [4, 4], "x": 4, "y": 4},
+ {"label": "Space", "matrix": [4, 5], "x": 5, "y": 4},
+ {"label": "Space", "matrix": [4, 6], "x": 6, "y": 4},
+ {"label": "Space", "matrix": [4, 7], "x": 7, "y": 4},
+ {"label": "Alt Gr", "matrix": [4, 8], "x": 8, "y": 4},
+ {"label": "Right Shift", "matrix": [4, 9], "x": 9, "y": 4},
+ {"label": "Left", "matrix": [4, 10], "x": 10, "y": 4},
+ {"label": "Down", "matrix": [4, 11], "x": 11, "y": 4},
+ {"label": "Right", "matrix": [4, 12], "x": 12, "y": 4}
+ ]
+ }
+ }
}
diff --git a/keyboards/mlego/m65/rev2/mcuconf.h b/keyboards/mlego/m65/rev2/mcuconf.h
index 6ba4f72b40..a8e4fbb319 100644
--- a/keyboards/mlego/m65/rev2/mcuconf.h
+++ b/keyboards/mlego/m65/rev2/mcuconf.h
@@ -1,23 +1,5 @@
-/* Copyright 2021-2022 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/m65/rev1/mcuconf.h -r platforms/chibios/STM32_F103_STM32DUINO/configs/mcuconf.h`
- */
+// Copyright 2020-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/rev2/rules.mk b/keyboards/mlego/m65/rev2/rules.mk
index 51070f9718..9a795b953e 100644
--- a/keyboards/mlego/m65/rev2/rules.mk
+++ b/keyboards/mlego/m65/rev2/rules.mk
@@ -1,13 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable encoder
+#blank purpose
diff --git a/keyboards/mlego/m65/rev3/config.h b/keyboards/mlego/m65/rev3/config.h
index 847dd11823..1b351c540a 100644
--- a/keyboards/mlego/m65/rev3/config.h
+++ b/keyboards/mlego/m65/rev3/config.h
@@ -1,20 +1,7 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2021-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define RGBLIGHT_LAYERS
+#define LED_RSE_PIN B13
+#define LED_LWR_PIN B12
diff --git a/keyboards/mlego/m65/rev3/halconf.h b/keyboards/mlego/m65/rev3/halconf.h
index 89815e23b7..decadcb011 100644
--- a/keyboards/mlego/m65/rev3/halconf.h
+++ b/keyboards/mlego/m65/rev3/halconf.h
@@ -1,23 +1,5 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/halconf.h -r platforms/chibios/common/configs/halconf.h`
- */
+// Copyright 2020-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/rev3/info.json b/keyboards/mlego/m65/rev3/info.json
index 4f9b866565..d48d52d9d9 100644
--- a/keyboards/mlego/m65/rev3/info.json
+++ b/keyboards/mlego/m65/rev3/info.json
@@ -1,43 +1,134 @@
{
- "usb": {
- "pid": "0x6062",
- "device_version": "0.0.1"
- },
- "matrix_pins": {
- "cols": ["A10", "A15", "B3", "B4", "B5", "B9", "B8", "B7", "A1", "A2", "A3", "A4", "B1"],
- "rows": ["B10", "A5", "A6", "A7", "B0"]
- },
+ "manufacturer": "Alin Elena",
+ "keyboard_name": "mlego/m65 rev3",
+ "maintainer": "alin elena",
+ "board": "BLACKPILL_STM32_F401",
+ "bootloader": "tinyuf2",
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{"pin_a": "A0", "pin_b": "B6"}
]
},
+ "features": {
+ "audio": false,
+ "backlight": false,
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
"indicators": {
"caps_lock": "C13",
- "num_lock": "B12",
- "scroll_lock": "B13"
+ "on_state": 0
+ },
+ "matrix_pins": {
+ "cols": ["A10", "A15", "B3", "B4", "B5", "B9", "B8", "B7", "A1", "A2", "A3", "A4", "B1"],
+ "rows": ["B10", "A5", "A6", "A7", "B0"]
},
+ "processor": "STM32F401",
"rgblight": {
- "saturation_steps": 8,
- "led_count": 20,
"animations": {
+ "alternating": true,
"breathing": true,
+ "christmas": true,
+ "knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
+ "rgb_test": true,
"snake": true,
- "knight": true,
- "christmas": true,
"static_gradient": true,
- "rgb_test": true,
- "alternating": true,
"twinkle": true
- }
+ },
+ "hue_steps": 8,
+ "layers": {
+ "enabled": true
+ },
+ "led_count": 20,
+ "saturation_steps": 8
+ },
+ "url": "https://gitlab.com/m-lego/m65",
+ "usb": {
+ "device_version": "0.0.1",
+ "pid": "0x6062",
+ "vid": "0xBABA"
},
"ws2812": {
"pin": "B15"
},
- "processor": "STM32F401",
- "bootloader": "tinyuf2",
- "board": "BLACKPILL_STM32_F401"
+ "layouts": {
+ "LAYOUT_ortho_5x13": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "Backspace", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1},
+ {"label": "q", "matrix": [1, 1], "x": 1, "y": 1},
+ {"label": "w", "matrix": [1, 2], "x": 2, "y": 1},
+ {"label": "e", "matrix": [1, 3], "x": 3, "y": 1},
+ {"label": "r", "matrix": [1, 4], "x": 4, "y": 1},
+ {"label": "t", "matrix": [1, 5], "x": 5, "y": 1},
+ {"label": "y", "matrix": [1, 6], "x": 6, "y": 1},
+ {"label": "u", "matrix": [1, 7], "x": 7, "y": 1},
+ {"label": "i", "matrix": [1, 8], "x": 8, "y": 1},
+ {"label": "o", "matrix": [1, 9], "x": 9, "y": 1},
+ {"label": "p", "matrix": [1, 10], "x": 10, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12, "y": 1},
+ {"label": "#", "matrix": [2, 0], "x": 0, "y": 2},
+ {"label": "a", "matrix": [2, 1], "x": 1, "y": 2},
+ {"label": "s", "matrix": [2, 2], "x": 2, "y": 2},
+ {"label": "d", "matrix": [2, 3], "x": 3, "y": 2},
+ {"label": "f", "matrix": [2, 4], "x": 4, "y": 2},
+ {"label": "g", "matrix": [2, 5], "x": 5, "y": 2},
+ {"label": "h", "matrix": [2, 6], "x": 6, "y": 2},
+ {"label": "j", "matrix": [2, 7], "x": 7, "y": 2},
+ {"label": "k", "matrix": [2, 8], "x": 8, "y": 2},
+ {"label": "l", "matrix": [2, 9], "x": 9, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11, "y": 2},
+ {"label": "Enter", "matrix": [2, 12], "x": 12, "y": 2},
+ {"label": "Left Shift", "matrix": [3, 0], "x": 0, "y": 3},
+ {"label": "\\", "matrix": [3, 1], "x": 1, "y": 3},
+ {"label": "z", "matrix": [3, 2], "x": 2, "y": 3},
+ {"label": "x", "matrix": [3, 3], "x": 3, "y": 3},
+ {"label": "c", "matrix": [3, 4], "x": 4, "y": 3},
+ {"label": "v", "matrix": [3, 5], "x": 5, "y": 3},
+ {"label": "b", "matrix": [3, 6], "x": 6, "y": 3},
+ {"label": "n", "matrix": [3, 7], "x": 7, "y": 3},
+ {"label": "m", "matrix": [3, 8], "x": 8, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10, "y": 3},
+ {"label": "Up", "matrix": [3, 11], "x": 11, "y": 3},
+ {"label": "/", "matrix": [3, 12], "x": 12, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4},
+ {"label": "Menu", "matrix": [4, 1], "x": 1, "y": 4},
+ {"label": "Lower", "matrix": [4, 2], "x": 2, "y": 4},
+ {"label": "Alt", "matrix": [4, 3], "x": 3, "y": 4},
+ {"label": "Raise", "matrix": [4, 4], "x": 4, "y": 4},
+ {"label": "Space", "matrix": [4, 5], "x": 5, "y": 4},
+ {"label": "Space", "matrix": [4, 6], "x": 6, "y": 4},
+ {"label": "Space", "matrix": [4, 7], "x": 7, "y": 4},
+ {"label": "Alt Gr", "matrix": [4, 8], "x": 8, "y": 4},
+ {"label": "Right Shift", "matrix": [4, 9], "x": 9, "y": 4},
+ {"label": "Left", "matrix": [4, 10], "x": 10, "y": 4},
+ {"label": "Down", "matrix": [4, 11], "x": 11, "y": 4},
+ {"label": "Right", "matrix": [4, 12], "x": 12, "y": 4}
+ ]
+ }
+ }
}
diff --git a/keyboards/mlego/m65/rev3/mcuconf.h b/keyboards/mlego/m65/rev3/mcuconf.h
index 4d90ec07ea..05c6656170 100644
--- a/keyboards/mlego/m65/rev3/mcuconf.h
+++ b/keyboards/mlego/m65/rev3/mcuconf.h
@@ -1,23 +1,5 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/mcuconf.h -r platforms/chibios/BLACKPILL_STM32_F401/configs/mcuconf.h`
- */
+// Copyright 2020-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/rev3/rules.mk b/keyboards/mlego/m65/rev3/rules.mk
index fa351eadba..8b4c953989 100644
--- a/keyboards/mlego/m65/rev3/rules.mk
+++ b/keyboards/mlego/m65/rev3/rules.mk
@@ -1,13 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable encoder
+#blank on purpose
diff --git a/keyboards/mlego/m65/rev4/config.h b/keyboards/mlego/m65/rev4/config.h
index d0475aabaf..181ebc565a 100644
--- a/keyboards/mlego/m65/rev4/config.h
+++ b/keyboards/mlego/m65/rev4/config.h
@@ -1,28 +1,14 @@
-/*
-Copyright 2021-2022 Alin M Elena <alinm.elena@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+// Copyright 2021-2023 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define RGBLIGHT_LAYERS
+#define LED_RSE_PIN B13
+#define LED_LWR_PIN B12
#ifdef OLED_ENABLE
-# define OLED_DISPLAY_128X32
-#define I2C1_SCL_PIN B9
-#define I2C1_SDA_PIN B8
-#define OLED_BRIGHTNESS 128
-#define OLED_FONT_H "keyboards/mlego/m65/lib/glcdfont.c"
+# define I2C1_SCL_PIN B9
+# define I2C1_SDA_PIN B8
+# define OLED_BRIGHTNESS 128
+# define OLED_FONT_H "keyboards/mlego/m65/lib/glcdfont.c"
#endif
diff --git a/keyboards/mlego/m65/rev4/halconf.h b/keyboards/mlego/m65/rev4/halconf.h
index c1a060ad71..99f8ae4bf1 100644
--- a/keyboards/mlego/m65/rev4/halconf.h
+++ b/keyboards/mlego/m65/rev4/halconf.h
@@ -1,23 +1,5 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/halconf.h -r platforms/chibios/common/configs/halconf.h`
- */
+// Copyright 2021-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/rev4/info.json b/keyboards/mlego/m65/rev4/info.json
index a97c734ff8..56fed15317 100644
--- a/keyboards/mlego/m65/rev4/info.json
+++ b/keyboards/mlego/m65/rev4/info.json
@@ -1,43 +1,136 @@
{
- "usb": {
- "pid": "0x6062",
- "device_version": "0.0.2"
- },
- "matrix_pins": {
- "cols": ["B14", "A8", "A10", "A15", "B3", "B4", "B5", "B7", "A1", "A2", "A3", "A4", "B1"],
- "rows": ["B10", "A5", "A6", "A7", "B0"]
- },
+ "manufacturer": "Alin Elena",
+ "keyboard_name": "mlego/m65 rev4",
+ "maintainer": "alin elena",
+ "board": "BLACKPILL_STM32_F401",
+ "bootloader": "tinyuf2",
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{"pin_a": "A0", "pin_b": "B6"}
]
},
+ "features": {
+ "audio": false,
+ "backlight": false,
+ "bootmagic": true,
+ "command": false,
+ "console": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "oled": true,
+ "rgblight": true,
+ "wpm": true
+ },
"indicators": {
"caps_lock": "C13",
- "num_lock": "B12",
- "scroll_lock": "B13"
+ "on_state": 0
+ },
+ "matrix_pins": {
+ "cols": ["B14", "A8", "A10", "A15", "B3", "B4", "B5", "B7", "A1", "A2", "A3", "A4", "B1"],
+ "rows": ["B10", "A5", "A6", "A7", "B0"]
},
+ "processor": "STM32F401",
"rgblight": {
- "saturation_steps": 8,
- "led_count": 20,
"animations": {
+ "alternating": true,
"breathing": true,
+ "christmas": true,
+ "knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
+ "rgb_test": true,
"snake": true,
- "knight": true,
- "christmas": true,
"static_gradient": true,
- "rgb_test": true,
- "alternating": true,
"twinkle": true
- }
+ },
+ "hue_steps": 8,
+ "layers": {
+ "enabled": true
+ },
+ "led_count": 20,
+ "saturation_steps": 8
+ },
+ "url": "https://gitlab.com/m-lego/m65",
+ "usb": {
+ "device_version": "0.0.2",
+ "pid": "0x6062",
+ "vid": "0xBABA"
},
"ws2812": {
"pin": "B15"
},
- "processor": "STM32F401",
- "bootloader": "tinyuf2",
- "board": "BLACKPILL_STM32_F401"
+ "layouts": {
+ "LAYOUT_ortho_5x13": {
+ "layout": [
+ {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+ {"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
+ {"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
+ {"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
+ {"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
+ {"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
+ {"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
+ {"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
+ {"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
+ {"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
+ {"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
+ {"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
+ {"label": "Backspace", "matrix": [0, 12], "x": 12, "y": 0},
+ {"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1},
+ {"label": "q", "matrix": [1, 1], "x": 1, "y": 1},
+ {"label": "w", "matrix": [1, 2], "x": 2, "y": 1},
+ {"label": "e", "matrix": [1, 3], "x": 3, "y": 1},
+ {"label": "r", "matrix": [1, 4], "x": 4, "y": 1},
+ {"label": "t", "matrix": [1, 5], "x": 5, "y": 1},
+ {"label": "y", "matrix": [1, 6], "x": 6, "y": 1},
+ {"label": "u", "matrix": [1, 7], "x": 7, "y": 1},
+ {"label": "i", "matrix": [1, 8], "x": 8, "y": 1},
+ {"label": "o", "matrix": [1, 9], "x": 9, "y": 1},
+ {"label": "p", "matrix": [1, 10], "x": 10, "y": 1},
+ {"label": "[", "matrix": [1, 11], "x": 11, "y": 1},
+ {"label": "]", "matrix": [1, 12], "x": 12, "y": 1},
+ {"label": "#", "matrix": [2, 0], "x": 0, "y": 2},
+ {"label": "a", "matrix": [2, 1], "x": 1, "y": 2},
+ {"label": "s", "matrix": [2, 2], "x": 2, "y": 2},
+ {"label": "d", "matrix": [2, 3], "x": 3, "y": 2},
+ {"label": "f", "matrix": [2, 4], "x": 4, "y": 2},
+ {"label": "g", "matrix": [2, 5], "x": 5, "y": 2},
+ {"label": "h", "matrix": [2, 6], "x": 6, "y": 2},
+ {"label": "j", "matrix": [2, 7], "x": 7, "y": 2},
+ {"label": "k", "matrix": [2, 8], "x": 8, "y": 2},
+ {"label": "l", "matrix": [2, 9], "x": 9, "y": 2},
+ {"label": ";", "matrix": [2, 10], "x": 10, "y": 2},
+ {"label": "'", "matrix": [2, 11], "x": 11, "y": 2},
+ {"label": "Enter", "matrix": [2, 12], "x": 12, "y": 2},
+ {"label": "Left Shift", "matrix": [3, 0], "x": 0, "y": 3},
+ {"label": "\\", "matrix": [3, 1], "x": 1, "y": 3},
+ {"label": "z", "matrix": [3, 2], "x": 2, "y": 3},
+ {"label": "x", "matrix": [3, 3], "x": 3, "y": 3},
+ {"label": "c", "matrix": [3, 4], "x": 4, "y": 3},
+ {"label": "v", "matrix": [3, 5], "x": 5, "y": 3},
+ {"label": "b", "matrix": [3, 6], "x": 6, "y": 3},
+ {"label": "n", "matrix": [3, 7], "x": 7, "y": 3},
+ {"label": "m", "matrix": [3, 8], "x": 8, "y": 3},
+ {"label": ",", "matrix": [3, 9], "x": 9, "y": 3},
+ {"label": ".", "matrix": [3, 10], "x": 10, "y": 3},
+ {"label": "Up", "matrix": [3, 11], "x": 11, "y": 3},
+ {"label": "/", "matrix": [3, 12], "x": 12, "y": 3},
+ {"label": "Ctrl", "matrix": [4, 0], "x": 0, "y": 4},
+ {"label": "Menu", "matrix": [4, 1], "x": 1, "y": 4},
+ {"label": "Lower", "matrix": [4, 2], "x": 2, "y": 4},
+ {"label": "Alt", "matrix": [4, 3], "x": 3, "y": 4},
+ {"label": "Raise", "matrix": [4, 4], "x": 4, "y": 4},
+ {"label": "Space", "matrix": [4, 5], "x": 5, "y": 4},
+ {"label": "Space", "matrix": [4, 6], "x": 6, "y": 4},
+ {"label": "Space", "matrix": [4, 7], "x": 7, "y": 4},
+ {"label": "Alt Gr", "matrix": [4, 8], "x": 8, "y": 4},
+ {"label": "Right Shift", "matrix": [4, 9], "x": 9, "y": 4},
+ {"label": "Left", "matrix": [4, 10], "x": 10, "y": 4},
+ {"label": "Down", "matrix": [4, 11], "x": 11, "y": 4},
+ {"label": "Right", "matrix": [4, 12], "x": 12, "y": 4}
+ ]
+ }
+ }
}
diff --git a/keyboards/mlego/m65/rev4/mcuconf.h b/keyboards/mlego/m65/rev4/mcuconf.h
index ba1cd32fd3..abae5f94bd 100644
--- a/keyboards/mlego/m65/rev4/mcuconf.h
+++ b/keyboards/mlego/m65/rev4/mcuconf.h
@@ -1,23 +1,5 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * This file was auto-generated by:
- * `qmk chibios-confmigrate -i keyboards/zvecr/zv48/f401/mcuconf.h -r platforms/chibios/BLACKPILL_STM32_F401/configs/mcuconf.h`
- */
+// Copyright 2021-2022 alin m elena (@alinelena)
+// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/mlego/m65/rev4/rules.mk b/keyboards/mlego/m65/rev4/rules.mk
index 3e44c80fe0..e69de29bb2 100644
--- a/keyboards/mlego/m65/rev4/rules.mk
+++ b/keyboards/mlego/m65/rev4/rules.mk
@@ -1,15 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Enable encoder
-OLED_ENABLE = yes # Enable OLED
-WPM_ENABLE = yes # Enable WPM Counter
diff --git a/keyboards/mode/m65ha_alpha/info.json b/keyboards/mode/m65ha_alpha/info.json
index a7afd10663..3332182127 100644
--- a/keyboards/mode/m65ha_alpha/info.json
+++ b/keyboards/mode/m65ha_alpha/info.json
@@ -13,6 +13,9 @@
"rows": ["A7", "A10", "D2", "C12", "B1", "C11"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"indicators": {
"caps_lock": "A6"
},
diff --git a/keyboards/mode/m65ha_alpha/rules.mk b/keyboards/mode/m65ha_alpha/rules.mk
index da4b493847..942e6c1061 100644
--- a/keyboards/mode/m65ha_alpha/rules.mk
+++ b/keyboards/mode/m65ha_alpha/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = no # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/mode/m65hi_alpha/info.json b/keyboards/mode/m65hi_alpha/info.json
index 1899284f8c..a2a4416efe 100644
--- a/keyboards/mode/m65hi_alpha/info.json
+++ b/keyboards/mode/m65hi_alpha/info.json
@@ -13,6 +13,9 @@
"rows": ["A7", "A10", "D2", "C12", "B1", "C11"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"indicators": {
"caps_lock": "A6"
},
diff --git a/keyboards/mode/m65hi_alpha/rules.mk b/keyboards/mode/m65hi_alpha/rules.mk
index da4b493847..942e6c1061 100644
--- a/keyboards/mode/m65hi_alpha/rules.mk
+++ b/keyboards/mode/m65hi_alpha/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = no # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/mode/m65s/info.json b/keyboards/mode/m65s/info.json
index 0a0c93f3f8..b187502736 100644
--- a/keyboards/mode/m65s/info.json
+++ b/keyboards/mode/m65s/info.json
@@ -16,6 +16,9 @@
"rows": ["A3", "B14", "B15", "C9", "C6", "C11"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"indicators": {
"caps_lock": "C8"
},
diff --git a/keyboards/mode/m65s/rules.mk b/keyboards/mode/m65s/rules.mk
index 5dd8d547ab..4d827a4254 100644
--- a/keyboards/mode/m65s/rules.mk
+++ b/keyboards/mode/m65s/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = no # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/mode/m75h/config.h b/keyboards/mode/m75h/config.h
deleted file mode 100644
index c6d7d037ec..0000000000
--- a/keyboards/mode/m75h/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- Copyright 2020 Álvaro "Gondolindrim" Volpato <alvaro.volpato@usp.br>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE 4096
diff --git a/keyboards/mode/m75h/info.json b/keyboards/mode/m75h/info.json
index f57aac383e..8314dbf99d 100644
--- a/keyboards/mode/m75h/info.json
+++ b/keyboards/mode/m75h/info.json
@@ -13,6 +13,11 @@
"rows": ["C5", "B0", "B14", "B15", "A8", "C9", "A15"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"processor": "STM32F401",
"bootloader": "stm32-dfu",
"layout_aliases": {
diff --git a/keyboards/mode/m75s/config.h b/keyboards/mode/m75s/config.h
index 7fdb18d26a..4d3a7d5ca4 100644
--- a/keyboards/mode/m75s/config.h
+++ b/keyboards/mode/m75s/config.h
@@ -20,6 +20,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_DEFAULT_LEVEL 20
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
-
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE 4096
diff --git a/keyboards/mode/m75s/info.json b/keyboards/mode/m75s/info.json
index bf60aebd56..df4d1ab451 100644
--- a/keyboards/mode/m75s/info.json
+++ b/keyboards/mode/m75s/info.json
@@ -13,6 +13,11 @@
"rows": ["C5", "B0", "B14", "B15", "C7", "C9", "A15"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"backlight": {
"pin": "C6",
"levels": 20,
diff --git a/keyboards/molecule/rules.mk b/keyboards/molecule/rules.mk
index 35280e22e3..06a8f490ee 100755
--- a/keyboards/molecule/rules.mk
+++ b/keyboards/molecule/rules.mk
@@ -15,4 +15,4 @@ AUDIO_ENABLE = no # Audio output
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = custom
SRC += adns.c
-QUANTUM_LIB_SRC += spi_master.c
+SPI_DRIVER_REQUIRED = yes
diff --git a/keyboards/monsgeek/m1/config.h b/keyboards/monsgeek/m1/config.h
index 3e44e815fa..3963f1fbae 100644
--- a/keyboards/monsgeek/m1/config.h
+++ b/keyboards/monsgeek/m1/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 6 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
@@ -34,12 +31,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
diff --git a/keyboards/monsgeek/m1/info.json b/keyboards/monsgeek/m1/info.json
index 4de1803818..23d3d714c6 100644
--- a/keyboards/monsgeek/m1/info.json
+++ b/keyboards/monsgeek/m1/info.json
@@ -26,13 +26,23 @@
"rows": ["B15", "C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "B14", "pin_b": "B13"}
]
},
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 200,
"val_steps": 20,
"animations": {
diff --git a/keyboards/monsgeek/m1/m1.c b/keyboards/monsgeek/m1/m1.c
index ac00bb4e2b..b85adbc0bf 100644
--- a/keyboards/monsgeek/m1/m1.c
+++ b/keyboards/monsgeek/m1/m1.c
@@ -17,8 +17,8 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/monsgeek/m1/rules.mk b/keyboards/monsgeek/m1/rules.mk
index b753f0682e..6e7633bfe0 100644
--- a/keyboards/monsgeek/m1/rules.mk
+++ b/keyboards/monsgeek/m1/rules.mk
@@ -1,6 +1 @@
-# Build Options
-# change yes to no to disable
-#
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
-
+# This file intentionally left blank
diff --git a/keyboards/monsgeek/m3/config.h b/keyboards/monsgeek/m3/config.h
index 85eb5b8e99..02c0fc6abc 100644
--- a/keyboards/monsgeek/m3/config.h
+++ b/keyboards/monsgeek/m3/config.h
@@ -33,12 +33,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
diff --git a/keyboards/monsgeek/m3/info.json b/keyboards/monsgeek/m3/info.json
index db646103f1..df99a6a22c 100644
--- a/keyboards/monsgeek/m3/info.json
+++ b/keyboards/monsgeek/m3/info.json
@@ -11,6 +11,13 @@
},
"processor": "WB32FQ95",
"bootloader": "wb32-dfu",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"features": {
"bootmagic": true,
"extrakey": true,
@@ -31,7 +38,7 @@
"caps_lock": "A15"
},
"rgb_matrix": {
- "driver": "ckled2001",
+ "driver": "snled27351",
"max_brightness": 160,
"animations": {
"breathing": true,
diff --git a/keyboards/monsgeek/m3/m3.c b/keyboards/monsgeek/m3/m3.c
index 95bfb34789..b7e197e6ac 100644
--- a/keyboards/monsgeek/m3/m3.c
+++ b/keyboards/monsgeek/m3/m3.c
@@ -17,7 +17,7 @@
#include "quantum.h"
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const ckled2001_led PROGMEM g_ckled2001_leds[RGB_MATRIX_LED_COUNT] = {
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/monsgeek/m3/rules.mk b/keyboards/monsgeek/m3/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/monsgeek/m3/rules.mk
+++ b/keyboards/monsgeek/m3/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/monsgeek/m5/config.h b/keyboards/monsgeek/m5/config.h
index 6d43bd4f26..20c69b34f1 100644
--- a/keyboards/monsgeek/m5/config.h
+++ b/keyboards/monsgeek/m5/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 5 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
/* LED Indicators */
#define LED_WIN_LOCK_PIN C11
@@ -35,12 +32,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
#define I2C1_SCL_PAL_MODE 4
diff --git a/keyboards/monsgeek/m5/info.json b/keyboards/monsgeek/m5/info.json
index 4e504b8663..e4ecba91ce 100644
--- a/keyboards/monsgeek/m5/info.json
+++ b/keyboards/monsgeek/m5/info.json
@@ -25,12 +25,22 @@
"rows": ["B15", "C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"indicators": {
"num_lock":"A15",
"caps_lock": "C10"
},
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 180,
"animations": {
"breathing": true,
diff --git a/keyboards/monsgeek/m5/m5.c b/keyboards/monsgeek/m5/m5.c
index 7dbc3111bf..83dd4b6b79 100644
--- a/keyboards/monsgeek/m5/m5.c
+++ b/keyboards/monsgeek/m5/m5.c
@@ -17,8 +17,8 @@
#include "quantum.h"
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/monsgeek/m5/rules.mk b/keyboards/monsgeek/m5/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/monsgeek/m5/rules.mk
+++ b/keyboards/monsgeek/m5/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/monsgeek/m6/config.h b/keyboards/monsgeek/m6/config.h
index 5fcd897429..f01b8abb68 100644
--- a/keyboards/monsgeek/m6/config.h
+++ b/keyboards/monsgeek/m6/config.h
@@ -16,9 +16,6 @@
#pragma once
-/* Use 6 dynamic keymap layers */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
@@ -32,12 +29,10 @@
#define SPI_MOSI_PAL_MODE 5
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (8 * 1024)
/* I2C Config for LED Driver */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_VDDIO
#define I2C1_SCL_PAL_MODE 4
#define I2C1_OPMODE OPMODE_I2C
#define I2C1_CLOCK_SPEED 400000 /* 400000 */
diff --git a/keyboards/monsgeek/m6/info.json b/keyboards/monsgeek/m6/info.json
index d23d2f8322..3ec89cc497 100644
--- a/keyboards/monsgeek/m6/info.json
+++ b/keyboards/monsgeek/m6/info.json
@@ -25,8 +25,18 @@
"rows": ["C6", "C7", "C8", "C9", "A8"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 8192
+ }
+ },
"rgb_matrix": {
- "driver": "is31fl3733",
+ "driver": "snled27351",
"max_brightness": 200,
"val_steps": 20,
"animations": {
diff --git a/keyboards/monsgeek/m6/m6.c b/keyboards/monsgeek/m6/m6.c
index 1823d865cc..dc20a9916f 100644
--- a/keyboards/monsgeek/m6/m6.c
+++ b/keyboards/monsgeek/m6/m6.c
@@ -17,8 +17,8 @@
#include "quantum.h"
// clang-format off
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/monsgeek/m6/rules.mk b/keyboards/monsgeek/m6/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/monsgeek/m6/rules.mk
+++ b/keyboards/monsgeek/m6/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/montsinger/rebound/rev1/keymaps/curry/config.h b/keyboards/montsinger/rebound/rev1/keymaps/curry/config.h
deleted file mode 100644
index 2c9f97d587..0000000000
--- a/keyboards/montsinger/rebound/rev1/keymaps/curry/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#pragma once
-
-// comment out unnecessary layouts
-#define ENABLE_QWERTY
-#define ENABLE_COLEMAK
-#define ENABLE_DVORAK
-#define ENABLE_WORKMAN
diff --git a/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c b/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c
deleted file mode 100644
index c1068a4d2b..0000000000
--- a/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "curry.h"
-
-#define LAYOUT_rebound_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_ortho_4x12_wrapper( \
- KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \
- KC_ESC, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \
- KC_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_ENT, \
- ADJUST, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
- )
-#define LAYOUT_rebound_base_wrapper(...) LAYOUT_rebound_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-#if defined(ENABLE_QWERTY)
- [_QWERTY] = LAYOUT_rebound_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-#endif
-
-#if defined(ENABLE_COLEMAK)
- [_COLEMAK] = LAYOUT_rebound_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-#endif
-
-#if defined(ENABLE_DVORAK)
- [_DVORAK] = LAYOUT_rebound_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-#endif
-
-#if defined(ENABLE_WORKMAN)
- [_WORKMAN] = LAYOUT_rebound_base_wrapper(
- _________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
- _________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
- _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
- ),
-#endif
-
- [_LOWER] = LAYOUT_ortho_4x12_wrapper(
- KC_F11, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F12,
- KC_GRV, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______
- ),
-
- [_RAISE] = LAYOUT_ortho_4x12_wrapper(
- _______, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_DEL,
- KC_TILD, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______
- ),
-
- [_ADJUST] = LAYOUT_ortho_4x12_wrapper(
- KC_MAKE, ___________________BLANK___________________, _________________ADJUST_R1_________________, KC_RST,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- MG_NKRO, ___________________BLANK___________________, _________________ADJUST_R3_________________, _______,
- _______, ___________________BLANK___________________, ___________________BLANK___________________, _______
- )
-
-
-};
diff --git a/keyboards/montsinger/rebound/rev1/keymaps/curry/rules.mk b/keyboards/montsinger/rebound/rev1/keymaps/curry/rules.mk
deleted file mode 100644
index 7300873397..0000000000
--- a/keyboards/montsinger/rebound/rev1/keymaps/curry/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-CONVERT_TO=proton_c
diff --git a/keyboards/montsinger/rebound/rev2/keymaps/rossman360/keymap.c b/keyboards/montsinger/rebound/rev2/keymaps/rossman360/keymap.c
deleted file mode 100644
index eeb20b5c76..0000000000
--- a/keyboards/montsinger/rebound/rev2/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,57 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rossman360.h"
-
-#define PGMOD LT(_NUM, KC_PGDN)
-#define TABMOD LT(_FN1, KC_TAB)
-#define SPCMOD LT(_FN1, KC_SPACE)
-#define ENTMOD LT(_FN2, KC_ENTER)
-#define ESCMOD LT(_NUM, KC_ESC)
-#define RSMOD LT(_FN1, KC_RSFT)
-
-enum layer_names {
- _BASE,
- _DEL,
- _FN1,
- _FN2,
- _NUM,
-};
-
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_BASE] = LAYOUT_all(
- KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , NTAB ,
- JUMPBACK, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS,
- CMDBSP , ALTDEL , KC_NO , CTRLSP , TABMOD , PGMOD , KC_Y , ENTMOD , SPCMOD , MO(_DEL),KC_NO , KC_BSPC, KC_DEL
- ),
-
-[_FN1] = LAYOUT_all(
- _______, TAB1 , TAB2 , TAB3 , TAB4 , _______, _______, UNDO , _______, _______, _______, CTAB ,
- KC_CAPS, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP , KC_RIGHT,KC_END , KC_NO ,
- _______, _______, XPANDR , _______, _______, _______, _______, PMERGE , KC_DOWN, _______, _______, _______,
- WREFRESH,_______, _______, _______, LWORD , RWORD , KC_Y , RVOLD , RVOLU , _______, _______, _______, _______
- ),
-
-[_FN2] = LAYOUT_all(
- _______, SPEAK1 , SPEAK2 , SPEAK3 , SPEAK4 , _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, PARADOWN, CSPEAK, KC_Y , _______, _______, _______, _______, _______, _______
- ),
-
-[_DEL] = LAYOUT_all(
- _______, _______, _______, _______, _______, _______, _______, UNDO , _______, _______, _______, CTAB ,
- REMCAPS, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_UP ,KC_RIGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______,
- _______, _______, _______, KC_DEL , KC_BSPC, BWORD , KC_Y , _______, _______, _______, _______, _______, _______
- ),
-
-[_NUM] = LAYOUT_all(
- _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_MINS, KC_EQL,
- KC_CAPS, _______, _______, _______, _______, _______, KC_MINS, KC_4 , KC_5 , KC_6 , KC_COLN, _______,
- _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_1 , KC_2 , KC_3 , KC_BSLS, _______,
- _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_Y , _______, _______, KC_0 , _______, _______, _______
- )
-};
diff --git a/keyboards/montsinger/rebound/rev3/keymaps/rossman360/keymap.c b/keyboards/montsinger/rebound/rev3/keymaps/rossman360/keymap.c
deleted file mode 100644
index f82aa822d1..0000000000
--- a/keyboards/montsinger/rebound/rev3/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,113 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rossman360.h"
-
-#define PGMOD LT(_NUM, KC_PGDN)
-#define TABMOD LT(_FN1, KC_TAB)
-#define SPCMOD LT(_FN1, KC_SPACE)
-#define ENTMOD LT(_FN2, KC_ENTER)
-#define ESCMOD LT(_NUM, KC_ESC)
-#define RSMOD LT(_FN1, KC_RSFT)
-
-enum layer_names {
- _BASE,
- _DEL,
- _FN1,
- _FN2,
- _NUM,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_BASE] = LAYOUT_all(
- KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , NTAB ,
- JUMPBACK, KC_A , KC_S , KC_D , KC_F , KC_G ,MO(_DEL), KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , LM(_FN1, MOD_LALT), KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS,
- CMDBSP , ALTDEL , KC_NO , CTRLSP , KC_TAB , PGMOD , QUIT , ENTMOD , SPCMOD , MO(_DEL),KC_NO , KC_BSPC, KC_DEL
- ),
-
-[_FN1] = LAYOUT_all(
- _______, TAB1 , TAB2 , TAB3 , TAB4 , _______, _______, UNDO , _______, _______, _______, CTAB ,
- KC_CAPS, _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP , KC_RIGHT,KC_END , KC_NO ,
- _______, _______, XPANDR , _______, _______, _______, _______, _______, PMERGE , KC_DOWN, _______, _______, EMDASH ,
- WREFRESH,_______, _______, _______, LWORD , RWORD , _______, KC_NO , _______, KC_NO , _______, _______, _______
- ),
-
-[_FN2] = LAYOUT_all(
- _______, SPEAK1 , SPEAK2 , SPEAK3 , SPEAK4 , _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, PARADOWN, CSPEAK, _______, _______, KC_NO , KC_NO , _______, _______, _______
- ),
-
-[_DEL] = LAYOUT_all(
- QK_BOOT, _______, _______, _______, _______, _______, _______, UNDO , _______, _______, _______, CTAB ,
- REMCAPS, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_UP ,KC_RIGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______,
- _______, _______, _______, KC_DEL , KC_BSPC, BWORD , _______, KC_NO , KC_NO , _______, _______, _______, _______
- ),
-
-[_NUM] = LAYOUT_all(
- KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_MINS, KC_EQL,
- KC_CAPS, _______, _______, _______, _______, _______, _______, KC_MINS, KC_4 , KC_5 , KC_6 , KC_COLN, _______,
- _______, _______, _______, _______, _______, KC_LBRC, _______, KC_RBRC, KC_1 , KC_2 , KC_3 , KC_BSLS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_NO , KC_NO , KC_0 , _______, _______, _______
- )
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- switch(get_highest_layer(layer_state)){
-case _BASE:
- if (clockwise) {
- tap_code16(KC_VOLD);
- } else {
- tap_code16(KC_VOLU);
- }
- break;
- case _FN1:
- if (clockwise) {
- tap_code16(S(KC_TAB));
- } else {
- tap_code16(KC_TAB);
- }
- break;
-}
- return true;
-}
-
-#ifdef OLED_ENABLE
-bool oled_task_user(void) {
- // Host Keyboard Layer Status
- oled_write_P(PSTR(""), false);
-
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- oled_write_P(PSTR("Rebound\n"), false);
- oled_write_P(PSTR("Rev3.1\n"), false);
- break;
- case _FN1:
- oled_write_P(PSTR("Fn\n"), false);
- break;
- case _FN2:
- oled_write_P(PSTR("Para\n"), false);
- break;
- case _NUM:
- oled_write_P(PSTR("Num\n"), false);
- break;
- case _DEL:
- oled_write_P(PSTR("Del\n"), false);
- break;
- default:
- // Or use the write_ln shortcut over adding '\n' to the end of your string
- oled_write_ln_P(PSTR("Undefined"), false);
-}
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
-
- return false;
-}
-
-#endif
diff --git a/keyboards/montsinger/rebound/rev3/keymaps/rossman360/rules.mk b/keyboards/montsinger/rebound/rev3/keymaps/rossman360/rules.mk
deleted file mode 100644
index 59f78f834d..0000000000
--- a/keyboards/montsinger/rebound/rev3/keymaps/rossman360/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-MOUSEKEY_ENABLE = no # Mouse keys
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-OLED_ENABLE = no
diff --git a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/readme.md b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/readme.md
deleted file mode 100644
index 3a47968596..0000000000
--- a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-Overview
-========
-
-These are my keymaps. There isn't much here. Go take a look at my Userspace readme.
-That's where all the code is.
diff --git a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk b/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk
deleted file mode 100644
index 28b8714100..0000000000
--- a/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-TAP_DANCE_ENABLE = yes # Enable the tap dance feature.
diff --git a/keyboards/montsinger/rebound/rev4/keymaps/rossman360/keymap.c b/keyboards/montsinger/rebound/rev4/keymaps/rossman360/keymap.c
deleted file mode 100644
index 16cc4393d0..0000000000
--- a/keyboards/montsinger/rebound/rev4/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,122 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rossman360.h"
-
-#define PGMOD LT(_NUM, KC_PGDN)
-#define TABMOD LT(_FN1, KC_TAB)
-#define SPCMOD LT(_FN1, KC_SPACE)
-#define ENTMOD LT(_FN2, KC_ENTER)
-#define ESCMOD LT(_NUM, KC_ESC)
-#define RSMOD LT(_FN1, KC_RSFT)
-#
-
-enum layer_names {
- _BASE,
- _DEL,
- _FN1,
- _FN2,
- _NUM,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_BASE] = LAYOUT_all(
- KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , NTAB ,
- JUMPBACK, KC_A , KC_S , KC_D , KC_F , KC_G ,MO(_DEL), KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , LM(_FN1, MOD_LALT), KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS,
- CMDBSP , ALTDEL , KC_NO , CTRLSP , TABMOD , PGMOD , QUIT , ENTMOD , SPCMOD , MO(_DEL),KC_NO , KC_BSPC, KC_DEL
- ),
-
-[_FN1] = LAYOUT_all(
- _______, TAB1 , TAB2 , TAB3 , TAB4 , _______, _______, UNDO , _______, _______, _______, CTAB ,
- KC_CAPS, _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP , KC_RIGHT,KC_END , KC_NO ,
- _______, _______, XPANDR , _______, PMERGE , _______, _______, _______, PMERGE , KC_DOWN, _______, _______, EMDASH ,
- WREFRESH,_______, _______, _______, LWORD , RWORD , _______, KC_NO , _______, KC_NO , _______, _______, _______
- ),
-
-[_FN2] = LAYOUT_all(
- _______, SPEAK1 , SPEAK2 , SPEAK3 , SPEAK4 , _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, PARADOWN, CSPEAK, _______, _______, KC_NO , KC_NO , _______, _______, _______
- ),
-
-[_DEL] = LAYOUT_all(
- QK_BOOT, _______, _______, _______, _______, _______, _______, UNDO , _______, _______, _______, CTAB ,
- REMCAPS, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_UP ,KC_RIGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______,
- _______, _______, _______, BLINE , KC_BSPC, BWORD , _______, KC_NO , KC_NO , _______, _______, _______, _______
- ),
-
-[_NUM] = LAYOUT_all(
- KC_GRV , KC_1 , KC_7 , KC_8 , KC_9 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_MINS, KC_EQL,
- KC_CAPS, _______, KC_4 , KC_5 , KC_6 , KC_BSPC, KC_LBRC, KC_MINS, KC_4 , KC_5 , KC_6 , KC_COLN, _______,
- KC_COMM, KC_DOT , KC_1 , KC_2 , KC_3 ,KC_ENTER, KC_RBRC, KC_RBRC, KC_1 , KC_2 , KC_3 , KC_BSLS, _______,
- _______, _______, _______, _______, KC_0 , _______, _______, KC_NO , KC_NO , KC_0 , _______, _______, _______
- )
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- switch(get_highest_layer(layer_state)){
-case _BASE:
- if (clockwise) {
- tap_code16(KC_VOLD);
- } else {
- tap_code16(KC_VOLU);
- }
- break;
-case _DEL:
- if (clockwise) {
- tap_code16(KC_F11);
- } else {
- tap_code16(KC_F3);
- }
- break;
-
- case _FN1:
- if (clockwise) {
- tap_code16(S(KC_TAB));
- } else {
- tap_code16(KC_TAB);
- }
- break;
-}
- return true;
-}
-
-#ifdef OLED_ENABLE
-bool oled_task_user(void) {
- // Host Keyboard Layer Status
- oled_write_P(PSTR(""), false);
-
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- oled_write_P(PSTR("Rebound\n"), false);
- oled_write_P(PSTR("Rev3.1\n"), false);
- break;
- case _FN1:
- oled_write_P(PSTR("Fn\n"), false);
- break;
- case _FN2:
- oled_write_P(PSTR("Para\n"), false);
- break;
- case _NUM:
- oled_write_P(PSTR("Num\n"), false);
- break;
- case _DEL:
- oled_write_P(PSTR("Del\n"), false);
- break;
- default:
- // Or use the write_ln shortcut over adding '\n' to the end of your string
- oled_write_ln_P(PSTR("Undefined"), false);
-}
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
-
- return false;
-}
-
-#endif
diff --git a/keyboards/montsinger/rebound/rev4/keymaps/rossman360/rules.mk b/keyboards/montsinger/rebound/rev4/keymaps/rossman360/rules.mk
deleted file mode 100644
index f1fb91cc36..0000000000
--- a/keyboards/montsinger/rebound/rev4/keymaps/rossman360/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-OLED_ENABLE = no
diff --git a/keyboards/montsinger/rewind/keymaps/rossman360/keymap.c b/keyboards/montsinger/rewind/keymaps/rossman360/keymap.c
deleted file mode 100644
index 106443b739..0000000000
--- a/keyboards/montsinger/rewind/keymaps/rossman360/keymap.c
+++ /dev/null
@@ -1,56 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "rossman360.h"
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-
-enum layer_names {
- _BASE,
- _DEL,
- _FN1,
- _FN2,
- _NUM,
-};
-
-#define PGMOD LT(_NUM, KC_PGDN)
-#define SPCMOD LT(_FN1, KC_SPACE)
-#define ZSHIFT MT(MOD_LSFT, KC_Z)
-#define TABMOD LT(_FN1, KC_TAB)
-#define ESCMOD LT(_FN1, KC_1)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_BASE] = LAYOUT_ortho_5x10(
- ESCMOD, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT,
- ZSHIFT, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
- KC_BSPC, ALTDEL, KC_LCTL, TABMOD, PGMOD , KC_ENTER,SPCMOD, MO(_DEL), KC_BSPC, KC_DEL
-),
-
-[_FN1] = LAYOUT_ortho_5x10(
- XXXXXXX, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- JUMPBACK,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_LEFT, KC_UP, KC_RIGHT,KC_END,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, PMERGE, KC_DOWN, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, LWORD, RWORD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-[_DEL] = LAYOUT_ortho_5x10(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- REMCAPS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, BLINE , KC_BSPC, BWORD , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-[_NUM] = LAYOUT_ortho_5x10(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NTAB,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_7, KC_8, KC_9, CTAB,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_4, KC_5, KC_6, KC_SCLN,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_1, KC_2, KC_3, KC_MINS,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_0, XXXXXXX, XXXXXXX
-),
-};
diff --git a/keyboards/moon/rules.mk b/keyboards/moon/rules.mk
index 804580d1f9..676f0971a2 100644
--- a/keyboards/moon/rules.mk
+++ b/keyboards/moon/rules.mk
@@ -16,4 +16,4 @@ CUSTOM_MATRIX = yes
VPATH += drivers/gpio
SRC += pca9555.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/moonlander/config.h b/keyboards/moonlander/config.h
index 389f97d696..3ceb45f54d 100644
--- a/keyboards/moonlander/config.h
+++ b/keyboards/moonlander/config.h
@@ -65,10 +65,9 @@
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 36
#define DRIVER_2_LED_TOTAL 36
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
@@ -142,10 +141,6 @@
#define FIRMWARE_VERSION_SIZE 17
#define DYNAMIC_KEYMAP_EEPROM_ADDR (EECONFIG_SIZE + FIRMWARE_VERSION_SIZE)
-#ifdef EEPROM_I2C
-# define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 16383
-# define DYNAMIC_KEYMAP_LAYER_COUNT 8
-#endif
#define AUDIO_PIN A5
#define AUDIO_PIN_ALT A4
diff --git a/keyboards/moonlander/info.json b/keyboards/moonlander/info.json
index acbb278a33..1a7982ed57 100644
--- a/keyboards/moonlander/info.json
+++ b/keyboards/moonlander/info.json
@@ -8,13 +8,22 @@
"pid": "0x1969",
"device_version": "0.0.1"
},
+ "dynamic_keymap": {
+ "layer_count": 8
+ },
+ "eeprom": {
+ "driver": "i2c"
+ },
"rgb_matrix": {
"driver": "is31fl3731"
},
"processor": "STM32F303",
"bootloader": "stm32-dfu",
+ "layout_aliases": {
+ "LAYOUT_moonlander": "LAYOUT"
+ },
"layouts": {
- "LAYOUT_moonlander": {
+ "LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0.375},
{"matrix": [0, 1], "x": 1, "y": 0.375},
diff --git a/keyboards/moonlander/keymaps/default/keymap.c b/keyboards/moonlander/keymaps/default/keymap.c
index 754227262f..ad7705eff8 100644
--- a/keyboards/moonlander/keymaps/default/keymap.c
+++ b/keyboards/moonlander/keymaps/default/keymap.c
@@ -33,7 +33,7 @@ enum custom_keycodes {
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_moonlander(
+ [BASE] = LAYOUT(
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HYPR, KC_MEH, KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), LGUI_T(KC_QUOT),
@@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_SPC, KC_BSPC, KC_LGUI, KC_LALT, KC_TAB, KC_ENT
),
- [SYMB] = LAYOUT_moonlander(
+ [SYMB] = LAYOUT(
VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, _______, _______, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12,
_______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, _______, _______, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, _______,
@@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
RGB_HUD, RGB_VAD, RGB_HUI, TOGGLE_LAYER_COLOR,_______, _______
),
- [MDIA] = LAYOUT_moonlander(
+ [MDIA] = LAYOUT(
LED_LEVEL,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
_______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
diff --git a/keyboards/moonlander/keymaps/drashna/config.h b/keyboards/moonlander/keymaps/drashna/config.h
deleted file mode 100644
index 153007eb09..0000000000
--- a/keyboards/moonlander/keymaps/drashna/config.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#pragma once
-
-#define TAPPING_TERM_PER_KEY
-// #define WAIT_FOR_USB
-// #define NO_USB_STARTUP_CHECK
-
-#define SECURE_UNLOCK_SEQUENCE \
- { \
- { 2, 1 }, { 2, 2 }, { 2, 3 }, { 2, 4 } \
- }
diff --git a/keyboards/moonlander/keymaps/drashna/keymap.c b/keyboards/moonlander/keymaps/drashna/keymap.c
deleted file mode 100644
index 491283c37a..0000000000
--- a/keyboards/moonlander/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,198 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-enum more_custom_keycodes {
- KC_SWAP_NUM = USER_SAFE_RANGE,
-};
-
-// clang-format off
-#define LAYOUT_moonlander_wrapper(...) LAYOUT_moonlander(__VA_ARGS__)
-
-#define LAYOUT_moonlander_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_moonlander_wrapper( \
- KC_ESC, ________________NUMBER_LEFT________________, UC_FLIP, UC_TABL, ________________NUMBER_RIGHT_______________, KC_MINS, \
- KC_TAB, K01, K02, K03, K04, K05, TG_DBLO, TG_DBLO, K06, K07, K08, K09, K0A, KC_BSLS, \
- KC_C1R3, K11, K12, K13, K14, K15, TG_GAME, TG_GAME, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- KC_MLSF, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A),KC_MRSF, \
- KC_GRV, OS_MEH, OS_HYPR, KC_LBRC, KC_RBRC, UC_CLUE, KC_DEL, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, UC_IRNY, \
- KC_SPC, BK_LWER, OS_LALT, OS_RGUI, DL_RAIS, KC_ENT \
- )
-
-#define LAYOUT_base_wrapper(...) LAYOUT_moonlander_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
-
- [_GAMEPAD] = LAYOUT_moonlander_wrapper(
- KC_ESC, XXXXXXX, KC_1, KC_2, KC_3, KC_4, HYPR(KC_Q), _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_NO,
- KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, KC_T, UC_SHRG, UC_DISA, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, TG_GAME, KC_I, KC_O, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_GRV, KC_U, KC_I, KC_Y, KC_T, KC_PSCR, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO,
- KC_V, KC_SPC, KC_H, KC_NO, XXXXXXX,KC_SWAP_NUM
- ),
- [_DIABLO] = LAYOUT_moonlander_wrapper(
- KC_ESC, KC_V, KC_D, KC_LALT, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_NO,
- KC_TAB, KC_S, KC_I, KC_F, KC_M, KC_T, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- XXXXXXX, KC_1, KC_2, KC_3, KC_4, KC_G, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- XXXXXXX, XXXXXXX, KC_L, KC_J, KC_F, KC_PSCR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_DIABLO_CLEAR, SFT_T(KC_SPACE), ALT_T(KC_Q), KC_PGDN, KC_DEL, KC_ENT
- ),
- [_DIABLOII] = LAYOUT_moonlander_wrapper(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_GRV, XXXXXXX, _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_NO,
- KC_TAB, KC_A, KC_T, KC_Q, KC_I, KC_M, TG(_DIABLOII), _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_S, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_LCTL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- XXXXXXX, XXXXXXX, KC_G, KC_F, KC_L, KC_V, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NO,
- KC_G, KC_LSFT, KC_LCTL, KC_PGDN, KC_DEL, KC_ENT
- ),
-
- [_LOWER] = LAYOUT_moonlander_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _______, _______, _________________FUNC_RIGHT________________, KC_F11,
- _______, _________________LOWER_L1__________________, _______, _______, _________________LOWER_R1__________________, KC_PIPE,
- _______, _________________LOWER_L2__________________, _______, _______, _________________LOWER_R2__________________, KC_DQUO,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, KC_PSCR,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUS,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_moonlander_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, _______, _______, _________________FUNC_RIGHT________________, KC_F11,
- _______, _________________RAISE_L1__________________, _______, _______, _________________RAISE_R1__________________, KC_BSLS,
- _______, _________________RAISE_L2__________________, _______, _______, _________________RAISE_R2__________________, KC_QUOT,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, KC_PSCR,
- _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_PAUS,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_moonlander_wrapper(
- QK_MAKE, KC_WIDE,KC_AUSSIE,KC_SCRIPT,KC_ZALGO,KC_NOMODE,_______, KC_NUKE,KC_NOMODE,KC_BLOCKS,KC_REGIONAL,_______,_______, QK_BOOT,
- VRSN, _________________ADJUST_L1_________________, TG(_DIABLOII), _______, _________________ADJUST_R1_________________, EE_CLR,
- KEYLOCK, _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________, RGB_IDL,
- UC_NEXT, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, AUTO_CTN,
- QK_RBT, _______, _______, _______, _______, _______
- ),
-};
-
-/* Blank
-
- [_LAYER] = LAYOUT_moonlander_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
-*/
-
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case KC_1:
- if (layer_state_is(_GAMEPAD) && userspace_config.swapped_numbers) {
- if (record->event.pressed) {
- register_code(KC_2);
- } else {
- unregister_code(KC_2);
- }
- return false;
- }
- break;
- case KC_2:
- if (layer_state_is(_GAMEPAD) && userspace_config.swapped_numbers) {
- if (record->event.pressed) {
- register_code(KC_1);
- } else {
- unregister_code(KC_1);
- }
- return false;
- }
- break;
- case KC_SWAP_NUM:
- if (record->event.pressed) {
- userspace_config.swapped_numbers ^= 1;
- eeconfig_update_user_config(&userspace_config.raw);
- unregister_code(KC_1);
- unregister_code(KC_2);
- }
- break;
- }
- return true;
-}
-
-#ifdef RGB_MATRIX_ENABLE
-bool rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max) {
- if (layer_state_is(_GAMEPAD)) {
- RGB_MATRIX_INDICATOR_SET_COLOR(11, 0x00, 0xFF, 0x00); // Q
- RGB_MATRIX_INDICATOR_SET_COLOR(16, 0x00, 0xFF, 0xFF); // W
- RGB_MATRIX_INDICATOR_SET_COLOR(21, 0xFF, 0x00, 0x00); // E
- RGB_MATRIX_INDICATOR_SET_COLOR(26, 0xFF, 0x80, 0x00); // R
- RGB_MATRIX_INDICATOR_SET_COLOR(12, 0x00, 0xFF, 0xFF); // A
- RGB_MATRIX_INDICATOR_SET_COLOR(17, 0x00, 0xFF, 0xFF); // S
- RGB_MATRIX_INDICATOR_SET_COLOR(22, 0x00, 0xFF, 0xFF); // D
- RGB_MATRIX_INDICATOR_SET_COLOR(27, 0x7A, 0x00, 0xFF); // F
-
- RGB_MATRIX_INDICATOR_SET_COLOR((userspace_config.swapped_numbers ? 15 : 10), 0xFF, 0xFF, 0xFF); // 1
- RGB_MATRIX_INDICATOR_SET_COLOR((userspace_config.swapped_numbers ? 10 : 15), 0x00, 0xFF, 0x00); // 2
- RGB_MATRIX_INDICATOR_SET_COLOR(20, 0x7A, 0x00, 0xFF); // 3
- }
-
- return true;
-}
-#endif
-
-#ifdef TAPPING_TERM_PER_KEY
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- if (keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) {
- if (mod_config(keycode & 0xf) & MOD_MASK_ALT) {
- return (2 * TAPPING_TERM);
- }
- }
- return TAPPING_TERM;
-}
-#endif
diff --git a/keyboards/moonlander/keymaps/drashna/rules.mk b/keyboards/moonlander/keymaps/drashna/rules.mk
deleted file mode 100644
index 45113afc71..0000000000
--- a/keyboards/moonlander/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-TAP_DANCE_ENABLE = yes
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-UNICODE_ENABLE = yes
-UNICODEMAP_ENABLE = no
-AUTOCORRECT_ENABLE = yes
-CAPS_WORD_ENABLE = yes
-
-BOOTLOADER = tinyuf2
diff --git a/keyboards/moonlander/keymaps/jjerrell/config.h b/keyboards/moonlander/keymaps/jjerrell/config.h
deleted file mode 100644
index e39340c80a..0000000000
--- a/keyboards/moonlander/keymaps/jjerrell/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
- * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
- * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
- * Copyright 2021 Jacob Jerrell <@jjerrell>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define ORYX_CONFIGURATOR
-
-#undef PRODUCT
-#define PRODUCT "Moonlander Mark I - Modified by <@jjerrell>"
-
diff --git a/keyboards/moonlander/keymaps/jjerrell/keymap.c b/keyboards/moonlander/keymaps/jjerrell/keymap.c
deleted file mode 100644
index ee6226177f..0000000000
--- a/keyboards/moonlander/keymaps/jjerrell/keymap.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * Copyright (C) 2021 Jerrell, Jacob <@jjerrell>
- *
- * This file is part of qmk_firmware.
- *
- * qmk_firmware is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * qmk_firmware is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with qmk_firmware. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "jjerrell.h"
-
-enum moonlander_layers {
- _GAME_LOWER = LAYER_SAFE_RANGE,
- // _GAME_RAISE,
-};
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_WORKMAN] = LAYOUT_moonlander_mods(
- __________________WORKMN_L1__________________, __________________WORKMN_R1__________________,
- __________________WORKMN_L2__________________, __________________WORKMN_R2__________________,
- __________________WORKMN_L3__________________, __________________WORKMN_R3__________________,
- XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, KC_RSFT, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [_LOWER] = LAYOUT_moonlander_mods(
- __________________LOWER_L1___________________, __________________LOWER_R1___________________,
- __________________LOWER_L2___________________, __________________LOWER_R2___________________,
- __________________LOWER_L3___________________, __________________LOWER_R3___________________,
- XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, KC_0, KC_DOT, KC_COMM, KC_PLUS
- ),
-
- [_RAISE] = LAYOUT_moonlander_common(
- __________________RAISE_L1___________________, __________________RAISE_R1___________________,
- __________________RAISE_L2___________________, __________________RAISE_R2___________________,
- __________________RAISE_L3___________________, __________________RAISE_R3___________________,
- XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, KC_RSFT, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [_ADJUST] = LAYOUT_moonlander_common(
- __________________ADJUST_L1__________________, __________________ADJUST_R1__________________,
- __________________ADJUST_L2__________________, __________________ADJUST_R2__________________,
- __________________ADJUST_L3__________________, __________________ADJUST_R3__________________,
- XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, KC_RSFT, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [_SPECIAL] = LAYOUT_moonlander_common(
- XXXXXXX, XXXXXXX, KC_WH_D, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, KC_WH_L, KC_WH_U, KC_WH_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, KC_LALT, KC_RALT, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [_GAME] = LAYOUT_moonlander_gamepad(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6,
- KC_TAB, __________________QWERTY_L1__________________, KC_SLSH,
- KC_LALT, __________________QWERTY_L2__________________, KC_BSLS,
- KC_LSFT, __________________QWERTY_L3__________________,
- KC_LGUI, MACRO_1, MACRO_2, MACRO_3, MACRO_4, QK_LOCK,
- KC_SPC, KC_BTN2, MO(_LOWER)
- ),
- [_GAME_LOWER] = LAYOUT_moonlander_gamepad(
- KC_GRV, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
- KC_TAB, __________________QWERTY_L1__________________, KC_SLSH,
- KC_LALT, __________________QWERTY_L2__________________, KC_BSLS,
- KC_LSFT, __________________QWERTY_L3__________________,
- KC_LGUI, MACRO_5, MACRO_6, MACRO_7, MACRO_8, QK_LOCK,
- KC_SPC, KC_BTN2, MO(_LOWER)
- )
-};
-// clang-format on
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- ML_LED_1(0);
- ML_LED_2(0);
- ML_LED_3(0);
- ML_LED_4(0);
- ML_LED_5(0);
- ML_LED_6(0);
- state = update_tri_layer_state(state, _GAME, _LOWER, _GAME_LOWER);
- switch (get_highest_layer(state)) {
- case 1:
- ML_LED_1(1);
- ML_LED_4(1);
- break;
- case 2:
- ML_LED_2(1);
- ML_LED_5(1);
- break;
- case 3:
- ML_LED_3(1);
- break;
- case 4:
- ML_LED_4(1);
- break;
- case 5:
- ML_LED_5(1);
- break;
- case 6:
- ML_LED_6(1);
- break;
- default:
- break;
- }
-
- return state;
-}
diff --git a/keyboards/moonlander/keymaps/jjerrell/readme.md b/keyboards/moonlander/keymaps/jjerrell/readme.md
deleted file mode 100644
index 51476f8ab9..0000000000
--- a/keyboards/moonlander/keymaps/jjerrell/readme.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Jacob Jerrell's Moonlander Keymap
-
-Concrete proof and acceptance of a problem. There is some not so custom Moonlander LED control in here but everything else is implemented in [my userspace](../../../../users/jjerrell/).
diff --git a/keyboards/moonlander/keymaps/jjerrell/rules.mk b/keyboards/moonlander/keymaps/jjerrell/rules.mk
deleted file mode 100644
index ef72559a0c..0000000000
--- a/keyboards/moonlander/keymaps/jjerrell/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-AUDIO_ENABLE = yes
diff --git a/keyboards/moonlander/keymaps/manna-harbour_miryoku/config.h b/keyboards/moonlander/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 44679baf74..0000000000
--- a/keyboards/moonlander/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT_moonlander(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, XXX, XXX, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, XXX, XXX, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, XXX,\
-XXX, XXX, XXX, XXX, K32, XXX, XXX, K37, XXX, XXX, XXX, XXX,\
- K33, K34, XXX, XXX, K35, K36\
-)
diff --git a/keyboards/moonlander/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/moonlander/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/moonlander/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/moonlander/keymaps/via/keymap.c b/keyboards/moonlander/keymaps/via/keymap.c
index 91ad0d1bf7..4b1e4c83e7 100644
--- a/keyboards/moonlander/keymaps/via/keymap.c
+++ b/keyboards/moonlander/keymaps/via/keymap.c
@@ -29,7 +29,7 @@ enum layers {
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_moonlander(
+ [BASE] = LAYOUT(
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HYPR, KC_MEH, KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), LGUI_T(KC_QUOT),
@@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_SPC, KC_BSPC, KC_LGUI, KC_LALT, KC_TAB, KC_ENT
),
- [SYMB] = LAYOUT_moonlander(
+ [SYMB] = LAYOUT(
QK_KB_0, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, _______, _______, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12,
_______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, _______, _______, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, _______,
@@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______
),
- [MDIA] = LAYOUT_moonlander(
+ [MDIA] = LAYOUT(
QK_KB_1, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
_______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, EE_CLR,
_______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
@@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, KC_BTN1, KC_BTN2, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
_______, _______, _______, _______, _______, _______
),
- [3] = LAYOUT_moonlander(
+ [3] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______
),
- [4] = LAYOUT_moonlander(
+ [4] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______
),
- [5] = LAYOUT_moonlander(
+ [5] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______
),
- [6] = LAYOUT_moonlander(
+ [6] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@@ -87,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______
),
- [7] = LAYOUT_moonlander(
+ [7] = LAYOUT(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/moonlander/moonlander.c b/keyboards/moonlander/moonlander.c
index 4146fc7afb..5b52ba7031 100644
--- a/keyboards/moonlander/moonlander.c
+++ b/keyboards/moonlander/moonlander.c
@@ -172,7 +172,7 @@ layer_state_t layer_state_set_kb(layer_state_t state) {
#ifdef RGB_MATRIX_ENABLE
// clang-format off
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/moonlander/rules.mk b/keyboards/moonlander/rules.mk
index 12987afdac..204c5940e4 100644
--- a/keyboards/moonlander/rules.mk
+++ b/keyboards/moonlander/rules.mk
@@ -14,10 +14,9 @@ AUDIO_DRIVER = dac_additive
CUSTOM_MATRIX = lite
SWAP_HANDS_ENABLE = yes
RGB_MATRIX_ENABLE = yes
-EEPROM_DRIVER = i2c
#project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
MOUSE_SHARED_EP = no
diff --git a/keyboards/mt/mt64rgb/config.h b/keyboards/mt/mt64rgb/config.h
index 0d877306e3..eff38f91cc 100644
--- a/keyboards/mt/mt64rgb/config.h
+++ b/keyboards/mt/mt64rgb/config.h
@@ -22,9 +22,8 @@
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 160
#define RGB_MATRIX_LED_PROCESS_LIMIT 20
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
-#define DRIVER_ADDR_1 0b1010000
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 64
diff --git a/keyboards/mt/mt64rgb/mt64rgb.c b/keyboards/mt/mt64rgb/mt64rgb.c
index 9fb25fb168..7a6831f6d0 100644
--- a/keyboards/mt/mt64rgb/mt64rgb.c
+++ b/keyboards/mt/mt64rgb/mt64rgb.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/mt/mt84/config.h b/keyboards/mt/mt84/config.h
index 67aae9a1fd..34ec1be86a 100644
--- a/keyboards/mt/mt84/config.h
+++ b/keyboards/mt/mt84/config.h
@@ -22,12 +22,9 @@
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_ALL
#define RGB_MATRIX_LED_PROCESS_LIMIT 20
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
- #define DRIVER_ADDR_1 0b1010000
- #define DRIVER_ADDR_2 0b1011111
+ #define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND
+ #define IS31FL3737_I2C_ADDRESS_2 IS31FL3737_I2C_ADDRESS_VCC
-
-
- #define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 44
#define DRIVER_2_LED_TOTAL 40
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/mt/mt84/mt84.c b/keyboards/mt/mt84/mt84.c
index fcbf65cf46..fd4811e63a 100644
--- a/keyboards/mt/mt84/mt84.c
+++ b/keyboards/mt/mt84/mt84.c
@@ -16,7 +16,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/mt/split75/keymaps/art/.gitignore b/keyboards/mt/split75/keymaps/art/.gitignore
deleted file mode 100644
index 46bb98e431..0000000000
--- a/keyboards/mt/split75/keymaps/art/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-*user_config.c \ No newline at end of file
diff --git a/keyboards/mt/split75/keymaps/art/config.h b/keyboards/mt/split75/keymaps/art/config.h
deleted file mode 100644
index 2f937491c7..0000000000
--- a/keyboards/mt/split75/keymaps/art/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-
-
-#undef RGBLIGHT_EFFECT_BREATHING
-#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
-#undef RGBLIGHT_EFFECT_SNAKE
-#undef RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_CHRISTMAS
-#undef RGBLIGHT_EFFECT_RGB_TEST
-#undef RGBLIGHT_EFFECT_ALTERNATING
-#undef RGBLIGHT_EFFECT_TWINKLE
-
-// #define DYNAMIC_MACRO_SIZE 48
diff --git a/keyboards/mt/split75/keymaps/art/keymap.c b/keyboards/mt/split75/keymaps/art/keymap.c
deleted file mode 100644
index 1658c8ba38..0000000000
--- a/keyboards/mt/split75/keymaps/art/keymap.c
+++ /dev/null
@@ -1,263 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "art.h"
-#include "sendstring_workman_zxcvm.h"
-
-enum custom_keycodes {
- keyboardSpecificKeyCode = NEW_SAFE_RANGE //not used atm
-};
-
-void num_led_on(void) {
- writePinHigh(LED_NUM_LOCK_PIN);
-}
-
-void num_led_off(void) {
- writePinLow(LED_NUM_LOCK_PIN);
-}
-
-void caps_led_on(void) {
- writePinHigh(LED_CAPS_LOCK_PIN);
-}
-
-void caps_led_off(void) {
- writePinLow(LED_CAPS_LOCK_PIN);
-}
-
-void scroll_led_on(void) {
- writePinHigh(LED_SCROLL_LOCK_PIN);
-}
-
-void scroll_led_off(void) {
- writePinLow(LED_SCROLL_LOCK_PIN);
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- num_led_off();
- scroll_led_off();
- switch (get_highest_layer(state)) {
- case MEDIA:
- case WORKMAN:
- scroll_led_on();
- case BASE:
- case NAV:
- num_led_on();
- break;
- case NUMPAD:
- scroll_led_on();
- break;
- }
- return state;
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* QWERTY ,-----------------------------------------. ,-----------------------------------------------------.
- * | ESC | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |Print| Ins | Home|
- * ,-----------. |-----+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+-----------+-----|
- * | 8 | 9 | | ~ | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 8 | 9 | 0 | - | = | Backspac | Del |
- * |-----+-----| |-----------------------------------------' ,--------------------------------------------------+-----|
- * | 6 | 7 | | Tab | Q | W | E | R | T | | Y | U | I | O | P | [ | ] | \ | End |
- * |-----+-----| |---------------------------------------. `--------------------------------------------------+-----|
- * | 4 | 5 | | Caps | A | S | D | F | G | | H | J | K | L | ; | ' | Enter | PgUp|
- * |-----+-----| |-----------------------------------------. `-------------------------------------------------+-----|
- * | 2 | 3 | | Shift | Z | X | C | V | B | | N | M | , | . | / | Shift | Up | PgDn|
- * |-----+-----| |-----------------------------------------' ,-------------------------------------------+-----+-----|
- * | 0 | 1 | | Ctrl | GUI | Alt |Spac/MEDIA | BSPC| | NAV | Alt | NAV | Ctrl | Left| Down|Right|
- * `-----------' `---------------------------------------' `-------------------------------------------------------'
- */
- [QWERTY] = LAYOUT(
-//--------------------------------Left Hand------------------------------------| |--------------------------------Right Hand------------------------------------------------
- KC_ESC, KC_MPLY, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, LT(CONFIG, KC_PSCR), KC_INS, KC_HOME,
-KC_VOLD,KC_VOLU, KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_EQUAL, KC_BSPC, KC_DEL,
-KC_MPRV,KC_MNXT, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
-KC_HOME,KC_END, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_ENTER, KC_PGUP,
-DM_PLY1,KC_MUTE,KC_LSFT,KC_Z,KC_X,KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LT(GIT,KC_SLSH), KC_RSFT, KC_UP, KC_PGDN,
-DM_RSTP,DM_REC1,KC_LCTL, KC_LGUI, KC_LALT, LT(MEDIA,KC_SPC), LT(COMBOS,KC_BSPC), LT(NAV,KC_APP), LT(LAYOUT_CHG, KC_ENTER),KC_RALT,KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
- /* Base ,-----------------------------------------. ,-----------------------------------------------------.
- * | ESC | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |Print| Ins | Home|
- * ,-----------. |-----+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+-----------+-----|
- * | 8 | 9 | | ~ | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 8 | 9 | 0 | - | = | Backspac | Del |
- * |-----+-----| |-----------------------------------------' ,--------------------------------------------------+-----|
- * | 6 | 7 | | Tab | Q | W | E | R | T | | Y | U | I | O | P | [ | ] | \ | End |
- * |-----+-----| |---------------------------------------. `--------------------------------------------------+-----|
- * | 4 | 5 | | Caps | A | S | D | F | G | | H | J | K | L | ; | ' | Enter | PgUp|
- * |-----+-----| |-----------------------------------------. `-------------------------------------------------+-----|
- * | 2 | 3 | | Shift | Z | X | C | V | B | | N | M | , | . | / | Shift | Up | PgDn|
- * |-----+-----| |-----------------------------------------' ,-------------------------------------------+-----+-----|
- * | 0 | 1 | | Ctrl | GUI | Alt | Space |Space| | Space | Alt |QW_ON| Ctrl | Left| Down|Right|
- * `-----------' `---------------------------------------' `-------------------------------------------------------'
- */
- [BASE] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------| |--------------------------------Right Hand------------------------------------------------
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, LT(CONFIG, KC_PSCR), KC_INS, KC_HOME,
-KC_8, KC_9, KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_EQUAL, KC_BSPC, KC_DEL,
-KC_6, KC_7, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
-KC_4, KC_5, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENTER, KC_PGUP,
-KC_2, KC_3, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
-KC_0, KC_1, OS_CTRL, OS_WIN, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(QWERTY_MOD), KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
- [WORKMAN] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN, _______, _______, _______, _______,
-_______, _______, _______, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, _______, _______, _______,
-_______, _______, _______, KC_Z, KC_X, KC_C, KC_V, KC_M, KC_K, KC_L, KC_COMM, KC_DOT, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, LT(COMBOS,KC_BSPC), LT(NAV,KC_APP), LT(LAYOUT_CHG, KC_ENTER), TO(QWERTY), _______, _______, _______, _______
- ),
-
- [NAV] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_8, KC_9, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_6, KC_7, _______, KC_ESC, KC_HOME, KC_UP, KC_END, KC_PGUP, XXXXXXX, KC_MS_BTN1, KC_MS_BTN3, KC_MS_BTN2, XXXXXXX, _______, _______, _______, _______,
-KC_4, KC_5, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN, KC_APP, CTR_ALT, KC_RSFT, CTR_ALT_SHIFT, _______, _______, _______, _______,
-KC_2, KC_3, _______, XXXXXXX, LCTL(KC_X),LCTL(KC_C),LCTL(KC_V), XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______,
-KC_0, KC_1, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [MEDIA] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, KC_MPRV, KC_VOLU, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, KC_MUTE, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [COMBOS] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, TILD_BLOCK, _______, QUOTES_RU, K_CUST1, K_CUST2, K_CUST3, _______, _______, STARS, PARENTHS, _______, DASHES, _______, _______, _______,
-_______, _______, _______, _______, _______, NEUTRAL_COPY, _______, BEAT_BROWSER, K_SECR1, K_SECR2, K_SECR3, K_SECR4, _______, BRACES, TOG_OS, _______, _______,
-_______, _______, _______, ADMINS, SARCASM, ALL_BEST,CTRL_CTV, _______, AT_EMAIL, _______, _______, _______, _______, QUOTES, _______, _______,
-_______, _______, _______, _______, _______, CTRL_CAV, _______, XXXXXXX, _______, CTRL_LCTV, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-// [STRINGS] = LAYOUT(
-// //--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, TILD_BLOCK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, ADMINS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-// ),
-
- [QWERTY_MOD] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, KC_MPRV, KC_VOLU, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, KC_MUTE, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, TO(QWERTY),_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [LAYOUT_CHG] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, KC_F1, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, CTL_ALT(KC_HOME), CTL_ALT(KC_UP), CTL_ALT(KC_END), CTL_ALT(KC_PGUP), _______, _______,_______, _______,_______,_______,_______, _______, _______,
-_______, _______, _______, _______, CTL_ALT(KC_LEFT), CTL_ALT(KC_DOWN), CTL_ALT(KC_RIGHT), CTL_ALT(KC_PGDN), _______,_______,_______,_______,_______, _______, _______, _______,
-_______, _______, TO(WORKMAN), LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, _______, _______, _______, _______, _______, _______, _______,
-TO(NUMPAD), TO(NUMPAD), TO(BASE), _______, _______, _______, CTL_ALT(KC_BSPC), KC_LSFT, _______, _______, _______, _______, _______, _______
- ),
-
- [CONFIG] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-RGB_VAD, RGB_VAI, RGB_MODE_PLAIN, RGB_MODE_BREATHE, RGB_MODE_RAINBOW, RGB_MODE_SWIRL, RGB_MODE_SNAKE, RGB_MODE_KNIGHT, RGB_MODE_XMAS, RGB_MODE_GRADIENT, RGB_MODE_RGBTEST, XXXXXXX, XXXXXXX, _______, _______, _______, _______,
-RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______,
-RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-RGB_RMOD, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-RGB_TOG, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [NUMPAD] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_8, KC_9, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_6, KC_7, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_4, KC_5, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_2, KC_3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-KC_0, KC_1, _______, _______, _______, _______, _______, _______, _______, TO(QWERTY),_______, _______, _______, _______
- ),
-
- [GIT] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, _______, G_DIFF, G_R, _______, G_BRCH, _______, G_FTCH, G_PULL, G_PUSH, _______, _______, _______, _______, _______,
-_______, _______, _______, G_ADD, G_S, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-_______, _______, _______, G_DEV, _______, G_C, _______, G_MERG, _______, G_LOG, _______, XXXXXXX, _______, _______, _______, _______,
-_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [GIT_C] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, G_CHEC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, G_COMM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [GIT_R] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, G_RBASE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, G_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, G_RVERT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- [GIT_S] = LAYOUT(
-//--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, G_STSH, G_SHOW, G_STAT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX,
-XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSPC, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX
- ),
-
- /* ,-----------------------------------------. ,-----------------------------------------------------.
- * | | | | | | | | | | | | | | | | | |
- * ,-----------. |-----+-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----+-----------+-----|
- * | | | | | | | | | | | | | | | | | | | |
- * |-----+-----| |-----------------------------------------' ,--------------------------------------------------+-----|
- * | | | | | | | | | | | | | | | | | | | |
- * |-----+-----| |---------------------------------------. `--------------------------------------------------+-----|
- * | | | | | | | | | | | | | | | | | | |
- * |-----+-----| |-----------------------------------------. `-------------------------------------------------+-----|
- * | | | | | | | | | | | | | | | | | | |
- * |-----+-----| |-----------------------------------------' ,-------------------------------------------+-----+-----|
- * | | | | | | | | | | | | | | | | |
- * `-----------' `---------------------------------------' `-------------------------------------------------------'
- */
- // [] = LAYOUT(
-// //--------------------------------Left Hand-----------------------------------------------| |--------------------------------Right Hand------------------------------------------------
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- // ),
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
-
- }
- return true;
-}
diff --git a/keyboards/mt/split75/keymaps/art/rules.mk b/keyboards/mt/split75/keymaps/art/rules.mk
deleted file mode 100644
index cca8f0a79e..0000000000
--- a/keyboards/mt/split75/keymaps/art/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC += user_config.c
-
-# DYNAMIC_MACRO_ENABLE = yes # doesn't work atm
diff --git a/keyboards/mt/split75/keymaps/art/user_config.c.example b/keyboards/mt/split75/keymaps/art/user_config.c.example
deleted file mode 100644
index baa169f9a3..0000000000
--- a/keyboards/mt/split75/keymaps/art/user_config.c.example
+++ /dev/null
@@ -1,6 +0,0 @@
-// Copyright 2022 Artjoms Rizihs (@artjomsR)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-
-bool is_win = true;
diff --git a/keyboards/mt/split75/rules.mk b/keyboards/mt/split75/rules.mk
index f616b9400e..b0c02543b1 100644
--- a/keyboards/mt/split75/rules.mk
+++ b/keyboards/mt/split75/rules.mk
@@ -12,4 +12,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
# custom matrix setup
CUSTOM_MATRIX = lite
SRC = matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/config.h b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/config.h
deleted file mode 100644
index 0d2051ffd5..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
-
-/* Forcing to use NKRO instead 6KRO */
-#define FORCE_NKRO
-
-#ifdef RGB_MATRIX_ENABLE
- /* RGB Matrix config */
- #undef ENABLE_RGB_MATRIX_BAND_SAT
- #undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
- #undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
- #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
- #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
- #undef ENABLE_RGB_MATRIX_SPLASH
- #undef ENABLE_RGB_MATRIX_SOLID_SPLASH
-#endif
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap.c
deleted file mode 100644
index 6179d4cdc1..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap.c
+++ /dev/null
@@ -1,103 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "keymap_stuff.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/*
- VolD ◯ VolU
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bckspc│Hom│
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │End│
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter │PgU│
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- │ LShift │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RSft │ ↑ │PgD│
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- │LCrl│GUI │LAlt│ Space │RAlt│ Fn │ │ ← │ ↓ │ → │
- └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
- ◯
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ │
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │ │
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- │ LShift │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RSht │ │ │
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- │ │ │ │ │ │ │ │ │ │ │
- └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */
- [_BASE] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_END,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
-
-/*
- ◯
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- │ ` │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ Home │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │Pause│Ins│
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ PrtSc │Del│
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- │ │ │ │ │ Fn │ │ │ │ │ │
- └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */
- [_FN] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUSE, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_DEL,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, MO(_RN), _______, _______, _______
- ),
-
-/*
- ◯
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
- │Rst│ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
- │ │1Hd│1Hi│1Sd│1Si│1Vd│1Vi│ │Hud│Hui│ │C_E│ │ │Tog│
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
- │ │2Hd│2Hi│2Sd│2Si│2Vd│2Vi│ │Sad│Sai│ │ │ │ │
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
- │ │Pre│Ref│Flp│ │ │ │Spd│Spi│ │ │ │Vai│ │
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
- │ │ │ │ │ │ Rn │ │Rod│Vad│Mod│
- └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */
- [_RN] = LAYOUT(
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, G1_HUD, G1_HUI, G1_SAD, G1_SAI, G1_VAD, G1_VAI, _______, RGB_HUD, RGB_HUI, _______, RGB_C_E, _______, _______, RGB_TOG,
- _______, G2_HUD, G2_HUI, G2_SAD, G2_SAI, G2_VAD, G2_VAI, _______, RGB_SAD, RGB_SAI, _______, _______, _______, _______,
- _______, G_PRE, REF_G, G_FLIP, _______, _______, _______, RGB_SPD, RGB_SPI, _______, _______, _______, RGB_VAI, _______,
- _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_MOD
- ),
-};
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap_stuff.h b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap_stuff.h
deleted file mode 100644
index bd979e9c81..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/keymap_stuff.h
+++ /dev/null
@@ -1,323 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <string.h>
-#include <math.h>
-
-#include <lib/lib8tion/lib8tion.h>
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-
-enum layer_names {
- _BASE = 0,
- _FN = 1,
- _RN = 2
-};
-
-// For CUSTOM_GRADIENT
-HSV gradient_0 = {205, 250, 255};
-HSV gradient_100 = {140, 215, 125};
-bool reflected_gradient = false;
-uint8_t gp_i = 0;
-
-typedef struct {
- HSV gradient_0;
- HSV gradient_1;
- bool reflected;
-} CUSTOM_PRESETS;
-
-enum user_rgb_mode {
- RGB_MODE_ALL,
- RGB_MODE_KEYLIGHT,
- RGB_MODE_UNDERGLOW,
- RGB_MODE_NONE,
-};
-
-typedef union {
- uint32_t raw;
- struct {
- uint8_t rgb_mode :8;
- };
-} user_config_t;
-
-user_config_t user_config;
-
-enum layer_keycodes {
- //Custom Gradient control keycode
- G1_HUI = SAFE_RANGE, //Custom gradient color 1 hue increase
- G1_HUD, //Custom gradient color 1 hue decrease
- G1_SAI, //Custom gradient color 1 saturation increase
- G1_SAD, //Custom gradient color 1 saturation decrease
- G1_VAI, //Custom gradient color 1 value increase
- G1_VAD, //Custom gradient color 1 value decrease
- G2_HUI, //Custom gradient color 2 hue increase
- G2_HUD, //Custom gradient color 2 hue decrease
- G2_SAI, //Custom gradient color 2 saturation increase
- G2_SAD, //Custom gradient color 2 saturation decrease
- G2_VAI, //Custom gradient color 2 value increase
- G2_VAD, //Custom gradient color 2 value decrease
- G_PRE, //Gradient presets
- REF_G, //Toggle between linear and reflected gradient
- G_FLIP, //Flip the gradient colors
-
- //Custom led effect keycode
- RGB_C_E, //Cycle user effect
-};
-
-void keyboard_post_init_kb(void) {
- user_config.raw = eeconfig_read_user();
- switch (user_config.rgb_mode) {
- case RGB_MODE_ALL:
- rgb_matrix_set_flags(LED_FLAG_ALL);
- rgb_matrix_enable_noeeprom();
- break;
- case RGB_MODE_KEYLIGHT:
- rgb_matrix_set_flags(LED_FLAG_KEYLIGHT);
- rgb_matrix_set_color_all(0, 0, 0);
- break;
- case RGB_MODE_UNDERGLOW:
- rgb_matrix_set_flags(LED_FLAG_UNDERGLOW);
- rgb_matrix_set_color_all(0, 0, 0);
- break;
- case RGB_MODE_NONE:
- rgb_matrix_set_flags(LED_FLAG_NONE);
- rgb_matrix_set_color_all(0, 0, 0);
- break;
- }
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- uint8_t color_adj_step = 5;
-
- CUSTOM_PRESETS gradient_presets[] = {
- {{41 , 255, 255}, {233, 245, 255}, false },
- {{45 , 245, 155}, {160, 255, 80}, false },
- {{173, 245, 40}, {41 , 255, 205}, true },
- {{32 , 255, 165}, {217, 185, 70}, false },
- {{240, 255, 145}, {115, 255, 245}, true },
- {{118, 255, 255}, {242, 255, 255}, false },
- {{212, 0 , 0}, {223, 235, 165}, true },
- {{205, 250, 255}, {140, 215, 125}, false },
- };
-
- uint8_t gp_length = ARRAY_SIZE(gradient_presets);
-
- switch (keycode) {
- case G1_HUI:
- if (record->event.pressed) {
- gradient_0.h += color_adj_step;
- dprintf("Gradient 0 HSV: %d, %d, %d\n", gradient_0.h, gradient_0.s, gradient_0.v);
- }
- return false;
- case G1_HUD:
- if (record->event.pressed) {
- gradient_0.h -= color_adj_step;
- dprintf("Gradient 0 HSV: %d, %d, %d\n", gradient_0.h, gradient_0.s, gradient_0.v);
- }
- return false;
- case G1_SAI:
- if (record->event.pressed) {
- gradient_0.s = (gradient_0.s + color_adj_step * 2 <= 255) ? gradient_0.s + color_adj_step * 2 : 255;
- dprintf("Gradient 0 HSV: %d, %d, %d\n", gradient_0.h, gradient_0.s, gradient_0.v);
- }
- return false;
- case G1_SAD:
- if (record->event.pressed) {
- gradient_0.s = (gradient_0.s - color_adj_step * 2 >= 0) ? gradient_0.s - color_adj_step * 2 : 0;
- dprintf("Gradient 0 HSV: %d, %d, %d\n", gradient_0.h, gradient_0.s, gradient_0.v);
- }
- return false;
- case G1_VAI:
- if (record->event.pressed) {
- gradient_0.v = (gradient_0.v + color_adj_step * 2 <= 255) ? gradient_0.v + color_adj_step * 2 : 255;
- dprintf("Gradient 0 HSV: %d, %d, %d\n", gradient_0.h, gradient_0.s, gradient_0.v);
- }
- return false;
- case G1_VAD:
- if (record->event.pressed) {
- gradient_0.v = (gradient_0.v - color_adj_step * 2 >= 0) ? gradient_0.v - color_adj_step * 2 : 0;
- dprintf("Gradient 0 HSV: %d, %d, %d\n", gradient_0.h, gradient_0.s, gradient_0.v);
- }
- return false;
- case G2_HUI:
- if (record->event.pressed) {
- gradient_100.h += color_adj_step;
- dprintf("Gradient 100 HSV: %d, %d, %d\n", gradient_100.h, gradient_100.s, gradient_100.v);
- }
- return false;
- case G2_HUD:
- if (record->event.pressed) {
- gradient_100.h -= color_adj_step;
- dprintf("Gradient 100 HSV: %d, %d, %d\n", gradient_100.h, gradient_100.s, gradient_100.v);
- }
- return false;
- case G2_SAI:
- if (record->event.pressed) {
- gradient_100.s = (gradient_100.s + color_adj_step * 2 <= 255) ? gradient_100.s + color_adj_step * 2 : 255;
- dprintf("Gradient 100 HSV: %d, %d, %d\n", gradient_100.h, gradient_100.s, gradient_100.v);
- }
- return false;
- case G2_SAD:
- if (record->event.pressed) {
- gradient_100.s = (gradient_100.s - color_adj_step * 2 >= 0) ? gradient_100.s - color_adj_step * 2 : 0;
- dprintf("Gradient 100 HSV: %d, %d, %d\n", gradient_100.h, gradient_100.s, gradient_100.v);
- }
- return false;
- case G2_VAI:
- if (record->event.pressed) {
- gradient_100.v = (gradient_100.v + color_adj_step * 2 <= 255) ? gradient_100.v + color_adj_step * 2 : 255;
- dprintf("Gradient 100 HSV: %d, %d, %d\n", gradient_100.h, gradient_100.s, gradient_100.v);
- }
- return false;
- case G2_VAD:
- if (record->event.pressed) {
- gradient_100.v = (gradient_100.v - color_adj_step * 2 >= 0) ? gradient_100.v - color_adj_step * 2 : 0;
- dprintf("Gradient 100 HSV: %d, %d, %d\n", gradient_100.h, gradient_100.s, gradient_100.v);
- }
- return false;
- case G_PRE:
- if (record->event.pressed) {
- gp_i = (gp_i + gp_length ) % gp_length;
-
- gradient_0 = gradient_presets[gp_i].gradient_0;
- gradient_100 = gradient_presets[gp_i].gradient_1;
- reflected_gradient = gradient_presets[gp_i].reflected;
-
- gp_i += 1;
- }
- return false;
- case REF_G:
- if (record->event.pressed) {
- reflected_gradient = !reflected_gradient;
- }
- return false;
- case G_FLIP:
- if (record->event.pressed) {
- HSV temp_color = gradient_0;
- gradient_0 = gradient_100;
- gradient_100 = temp_color;
- }
- return false;
- case RGB_C_E:
- if (record->event.pressed) {
- switch (rgb_matrix_get_mode()) {
- case RGB_MATRIX_CUSTOM_CUSTOM_GRADIENT:
- rgb_matrix_mode(RGB_MATRIX_CUSTOM_DIAGONAL);
- return false;
- case RGB_MATRIX_CUSTOM_DIAGONAL:
- rgb_matrix_mode(RGB_MATRIX_CUSTOM_COOL_DIAGONAL);
- return false;
- case RGB_MATRIX_CUSTOM_COOL_DIAGONAL:
- rgb_matrix_mode(RGB_MATRIX_CUSTOM_RAINBOW_REACTIVE_SIMPLE);
- return false;
- case RGB_MATRIX_CUSTOM_RAINBOW_REACTIVE_SIMPLE:
- rgb_matrix_mode(RGB_MATRIX_CUSTOM_KITT);
- return false;
- case RGB_MATRIX_CUSTOM_KITT:
- rgb_matrix_mode(RGB_MATRIX_CUSTOM_RANDOM_BREATH_RAINBOW);
- return false;
- default:
- rgb_matrix_mode(RGB_MATRIX_CUSTOM_CUSTOM_GRADIENT);
- return false;
- }
- }
- return false;
- case RGB_TOG:
- if (record->event.pressed) {
- switch (rgb_matrix_get_flags()) {
- case LED_FLAG_ALL: {
- rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR);
- rgb_matrix_set_color_all(0, 0, 0);
- user_config.rgb_mode = RGB_MODE_KEYLIGHT;
- }
- break;
- case (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR): {
- rgb_matrix_set_flags(LED_FLAG_UNDERGLOW);
- rgb_matrix_set_color_all(0, 0, 0);
- user_config.rgb_mode = RGB_MODE_UNDERGLOW;
- }
- break;
- case (LED_FLAG_UNDERGLOW): {
- rgb_matrix_set_flags(LED_FLAG_NONE);
- rgb_matrix_set_color_all(0, 0, 0);
- user_config.rgb_mode = RGB_MODE_NONE;
- }
- break;
- default: {
- rgb_matrix_set_flags(LED_FLAG_ALL);
- rgb_matrix_enable_noeeprom();
- user_config.rgb_mode = RGB_MODE_ALL;
- }
- break;
- }
- eeconfig_update_user(user_config.raw);
- }
- return false;
- }
- return true;
-}
-
-bool rgb_matrix_indicators_user(void) {
- switch (biton32(layer_state)) {
- case _FN:
- rgb_matrix_set_color(16, 0, 0, 0); rgb_matrix_set_color(17, 0, 0, 0); rgb_matrix_set_color(18, 0, 0, 0); rgb_matrix_set_color(21, 0, 0, 0);
- rgb_matrix_set_color(22, 0, 0, 0); rgb_matrix_set_color(23, 0, 0, 0); rgb_matrix_set_color(24, 0, 0, 0); rgb_matrix_set_color(25, 0, 0, 0);
- rgb_matrix_set_color(26, 0, 0, 0); rgb_matrix_set_color(27, 0, 0, 0); rgb_matrix_set_color(28, 0, 0, 0); rgb_matrix_set_color(29, 0, 0, 0);
- rgb_matrix_set_color(30, 0, 0, 0); rgb_matrix_set_color(31, 0, 0, 0); rgb_matrix_set_color(32, 0, 0, 0); rgb_matrix_set_color(33, 0, 0, 0);
- rgb_matrix_set_color(34, 0, 0, 0); rgb_matrix_set_color(35, 0, 0, 0); rgb_matrix_set_color(36, 0, 0, 0); rgb_matrix_set_color(37, 0, 0, 0);
- rgb_matrix_set_color(38, 0, 0, 0); rgb_matrix_set_color(41, 0, 0, 0); rgb_matrix_set_color(42, 0, 0, 0); rgb_matrix_set_color(43, 0, 0, 0);
- rgb_matrix_set_color(44, 0, 0, 0); rgb_matrix_set_color(45, 0, 0, 0); rgb_matrix_set_color(46, 0, 0, 0); rgb_matrix_set_color(47, 0, 0, 0);
- rgb_matrix_set_color(48, 0, 0, 0); rgb_matrix_set_color(49, 0, 0, 0); rgb_matrix_set_color(50, 0, 0, 0); rgb_matrix_set_color(51, 0, 0, 0);
- rgb_matrix_set_color(52, 0, 0, 0); rgb_matrix_set_color(53, 0, 0, 0); rgb_matrix_set_color(54, 0, 0, 0); rgb_matrix_set_color(55, 0, 0, 0);
- rgb_matrix_set_color(56, 0, 0, 0); rgb_matrix_set_color(57, 0, 0, 0); rgb_matrix_set_color(58, 0, 0, 0); rgb_matrix_set_color(59, 0, 0, 0);
- rgb_matrix_set_color(60, 0, 0, 0); rgb_matrix_set_color(61, 0, 0, 0); rgb_matrix_set_color(62, 0, 0, 0); rgb_matrix_set_color(63, 0, 0, 0);
- rgb_matrix_set_color(64, 0, 0, 0); rgb_matrix_set_color(65, 0, 0, 0); rgb_matrix_set_color(68, 0, 0, 0);
- break;
- case _RN:
- rgb_matrix_set_color(20, 0, 0, 0); rgb_matrix_set_color(21, 0, 0, 0); rgb_matrix_set_color(22, 0, 0, 0); rgb_matrix_set_color(23, 0, 0, 0);
- rgb_matrix_set_color(24, 0, 0, 0); rgb_matrix_set_color(25, 0, 0, 0); rgb_matrix_set_color(29, 0, 0, 0); rgb_matrix_set_color(30, 0, 0, 0);
- rgb_matrix_set_color(31, 0, 0, 0); rgb_matrix_set_color(34, 0, 0, 0); rgb_matrix_set_color(35, 0, 0, 0); rgb_matrix_set_color(36, 0, 0, 0);
- rgb_matrix_set_color(38, 0, 0, 0); rgb_matrix_set_color(39, 0, 0, 0); rgb_matrix_set_color(40, 0, 0, 0); rgb_matrix_set_color(41, 0, 0, 0);
- rgb_matrix_set_color(42, 0, 0, 0); rgb_matrix_set_color(45, 0, 0, 0); rgb_matrix_set_color(52, 0, 0, 0); rgb_matrix_set_color(53, 0, 0, 0);
- rgb_matrix_set_color(60, 0, 0, 0); rgb_matrix_set_color(63, 0, 0, 0); rgb_matrix_set_color(65, 0, 0, 0); rgb_matrix_set_color(66, 0, 0, 0);
- rgb_matrix_set_color(68, 0, 0, 0); rgb_matrix_set_color(69, 0, 0, 0); rgb_matrix_set_color(70, 0, 0, 0); rgb_matrix_set_color(71, 0, 0, 0);
- rgb_matrix_set_color(72, 0, 0, 0); rgb_matrix_set_color(73, 0, 0, 0); rgb_matrix_set_color(74, 0, 0, 0); rgb_matrix_set_color(75, 0, 0, 0);
- rgb_matrix_set_color(76, 0, 0, 0); rgb_matrix_set_color(77, 0, 0, 0); rgb_matrix_set_color(78, 0, 0, 0); rgb_matrix_set_color(79, 0, 0, 0);
- rgb_matrix_set_color(80, 0, 0, 0); rgb_matrix_set_color(81, 0, 0, 0);
- break;
- }
-
- HSV hsv = rgb_matrix_config.hsv;
- uint8_t time = scale16by8(g_rgb_timer, qadd8(32, 1));
- hsv.h = time;
- RGB rgb = hsv_to_rgb(hsv);
-
- if ((rgb_matrix_get_flags() & LED_FLAG_KEYLIGHT)) {
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(52, rgb.r, rgb.g, rgb.b);
- }
- } else {
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(52, rgb.r, rgb.g, rgb.b);
- } else {
- rgb_matrix_set_color(52, 0, 0, 0);
- }
- }
- return false;
-}
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/cool_diagonal.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/cool_diagonal.c
deleted file mode 100644
index 367b3d5720..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/cool_diagonal.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-static HSV COOL_DIAGONAL_math(HSV hsv, uint8_t i, uint8_t time) {
- hsv.h = (g_led_config.point[i].x / 4) - g_led_config.point[i].y - time;
- return hsv;
-}
-
-bool COOL_DIAGONAL(effect_params_t* params) { return effect_runner_i(params, &COOL_DIAGONAL_math); }
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/custom_gradient.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/custom_gradient.c
deleted file mode 100644
index 0d7acd7e8b..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/custom_gradient.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-extern HSV gradient_0;
-extern HSV gradient_100;
-extern bool reflected_gradient;
-
-static HSV INTERPOLATE_HSV(float step, HSV gradient_0, HSV gradient_100) {
- uint8_t cw, ccw;
- HSV color;
-
- cw = (gradient_0.h >= gradient_100.h) ? 255 + gradient_100.h - gradient_0.h : gradient_100.h - gradient_0.h; // Hue range is 0 to 255.
- ccw = (gradient_0.h >= gradient_100.h) ? gradient_0.h - gradient_100.h : 255 + gradient_0.h - gradient_100.h;
-
- if( cw < ccw ) { // going clockwise
- color.h = gradient_0.h + (uint8_t)(step * cw);
- } else { // Going counter clockwise
- color.h = gradient_0.h - (uint8_t)(step * ccw);
- }
-
- color.s = gradient_0.s + step * (gradient_100.s - gradient_0.s);
-
- // Scale V with global RGB Matrix's V, so users can still control overall brightness with RGB_VAI & RGB_VAD0
- color.v = round((gradient_0.v + step * (gradient_100.v - gradient_0.v)) * ((float)rgb_matrix_config.hsv.v / 255));
-
- return color;
-}
-
-static HSV CUSTOM_GRADIENT_math(uint8_t led_x, uint8_t min_x, uint8_t max_x) {
- float step = (float)led_x / (max_x - min_x);
- float mid_gradient_pos = 0.5;
-
- if( reflected_gradient ) {
- if( step <= mid_gradient_pos ) {
- return INTERPOLATE_HSV(step * (1/mid_gradient_pos), gradient_0, gradient_100);
- } else {
- return INTERPOLATE_HSV((step - mid_gradient_pos) * (1/(1-mid_gradient_pos)), gradient_100, gradient_0);
- }
-
- } else {
- return INTERPOLATE_HSV(step, gradient_0, gradient_100);
- }
-}
-
-static bool CUSTOM_GRADIENT(effect_params_t* params) {
- RGB_MATRIX_USE_LIMITS(led_min, led_max);
-
- uint8_t min_x = 0; // X coordinate of the left-most LED
- uint8_t max_x = 224; // X coordinate of the right-most LED
-
- for (uint8_t i = led_min; i < led_max; i++) {
- RGB_MATRIX_TEST_LED_FLAGS();
-
- HSV hsv_orig = CUSTOM_GRADIENT_math(g_led_config.point[i].x, min_x, max_x);
- RGB rgb = hsv_to_rgb(hsv_orig);
-
- rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b);
- }
-
- return led_max < RGB_MATRIX_LED_COUNT;
-}
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/diagonal.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/diagonal.c
deleted file mode 100644
index 19e3791bd6..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/diagonal.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-static HSV DIAGONAL_math(HSV hsv, uint8_t i, uint8_t time) {
- hsv.h = g_led_config.point[i].x - g_led_config.point[i].y - time;
- return hsv;
-}
-
-bool DIAGONAL(effect_params_t* params) { return effect_runner_i(params, &DIAGONAL_math); }
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/kitt.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/kitt.c
deleted file mode 100644
index 7f45cc23e2..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/kitt.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// variable for startup animation
-bool BASE_EFFECT_NOT_STARTED_YET = true;
-uint8_t base_effect_startup_counter = 255;
-
-uint8_t led_count = 10;
-uint8_t led_first = 41;
-
-static uint8_t time_to_led(uint8_t time, uint8_t led_behind) {
- uint16_t led_time = led_count * time;
- uint16_t step = ((2 * led_count + (led_time / 128)) - led_behind) % (2 * led_count);
- uint8_t led;
-
- if (step < led_count) {
- led = step;
- } else {
- led = led_count - 1 - (step - led_count);
- }
-
- return led;
-}
-
-static HSV KITT_math(HSV hsv, uint8_t i, uint8_t time) {
-
- // reset base effect startup
- if (i == 0) {
- BASE_EFFECT_NOT_STARTED_YET = true;
- }
-
- hsv.h = 0;
- hsv.s = 255;
-
- if (i >= led_first && i < led_first + led_count) {
- uint8_t j = i - led_first;
- if (j == time_to_led(time, 0)) {
- hsv.v = hsv.v;
- } else if (j == time_to_led(time, 1)) {
- hsv.v = hsv.v/2;
- } else if (j == time_to_led(time, 2)) {
- hsv.v = hsv.v/4;
- } else if (j == time_to_led(time, 3)) {
- hsv.v = hsv.v/8;
- } else {
- hsv.v = 0;
- }
- } else {
- hsv.v = 0;
- }
-
- return hsv;
-}
-
-bool KITT(effect_params_t* params) { return effect_runner_i(params, &KITT_math); }
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.c
deleted file mode 100644
index ae33988721..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "led/rainbow_reactive_simple/rainbow_reactive_simple.h"
-
-static HSV RAINBOW_REACTIVE_SIMPLE_math(HSV hsv, uint8_t i, uint8_t time, uint16_t offset) {
- hsv.h = g_led_config.point[i].x - time;
- hsv.v = scale8(255 - offset, hsv.v);
- return hsv;
-}
-
-bool RAINBOW_REACTIVE_SIMPLE(effect_params_t* params) { return effect_rainbow_reactive(params, &RAINBOW_REACTIVE_SIMPLE_math); }
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.h b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.h
deleted file mode 100644
index 986cbfeb9d..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/rainbow_reactive_simple/rainbow_reactive_simple.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-typedef HSV (*rainbow_reactive_f)(HSV hsv, uint8_t i, uint8_t time, uint16_t offset);
-
-bool effect_rainbow_reactive(effect_params_t* params, rainbow_reactive_f effect_func) {
- RGB_MATRIX_USE_LIMITS(led_min, led_max);
-
- uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4);
- uint16_t max_tick = 65535 / rgb_matrix_config.speed;
-
- for (uint8_t i = led_min; i < led_max; i++) {
- RGB_MATRIX_TEST_LED_FLAGS();
- uint16_t tick = max_tick;
-
- // Reverse search to find most recent key hit
- for (int8_t j = g_last_hit_tracker.count - 1; j >= 0; j--) {
- if (g_last_hit_tracker.index[j] == i && g_last_hit_tracker.tick[j] < tick) {
- tick = g_last_hit_tracker.tick[j];
- break;
- }
- }
-
- uint16_t offset = scale16by8(tick, rgb_matrix_config.speed);
- RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time, offset));
- rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b);
- }
-
- return led_max < RGB_MATRIX_LED_COUNT;
-}
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/random_breath_rainbow.c b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/random_breath_rainbow.c
deleted file mode 100644
index 29c447c61a..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/led/random_breath_rainbow.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Copyright 2021 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-static uint8_t offset[RGB_MATRIX_LED_COUNT];
-
-static void doRandom_breath_rainbow(int i, effect_params_t* params) {
- if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return;
- uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 6);
-
- if (rand() * 50 == 1) {
- if (rand() * 2 == 1) {
- offset[i]++;
- }
- else {
- offset[i]--;
- }
- }
-
- //float val = (((float)sin8(time + offset[i]) / 256)/2.1) + .05;
- HSV hsv = {0, 255, 255};
- hsv.h = scale16by8(g_rgb_timer + offset[i], rgb_matrix_config.speed / 4) + (offset[i]*2);
- hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v);
- RGB rgb = rgb_matrix_hsv_to_rgb(hsv);
- rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b);
-}
-
-bool RANDOM_BREATH_RAINBOW(effect_params_t* params) {
-
- if (!params->init) {
- // Change one LED every tick, make sure speed is not 0
- doRandom_breath_rainbow(rand() % RGB_MATRIX_LED_COUNT, params);
- return false;
- }
-
- RGB_MATRIX_USE_LIMITS(led_min, led_max);
-
- for (uint8_t i = led_min; i < led_max; i++) {
- doRandom_breath_rainbow(i, params);
- }
-
- return led_max < RGB_MATRIX_LED_COUNT;
-}
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/readme.md b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/readme.md
deleted file mode 100644
index 2341d818ec..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/readme.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# My personal keymap with VIA and custom LED effect
-
-Keymap is default 67 qwerty, 65 ansi blocker layout
-
-It have new LED effect:
-
-- Custom gradient (ported from SirTimmyTimbit code [https://github.com/SirTimmyTimbit/customizable-gradient-effect-for-drop-alt])
-- Diagonal (ported from pleasuretek code [https://github.com/pleasuretek/qmk_firmware])
-- Rainbow reactive simple
-- Knight Rider (ported from jumper149 code [https://github.com/jumper149/qmk_firmware/blob/jumper149/keyboards/dztech/dz65rgb/keymaps/jumper149/])
-- Random breath rainbow (based from daed code [https://github.com/daed/qmk_firmware/blob/master/keyboards/massdrop/alt/keymaps/daed] and modify by me)
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rgb_matrix_user.inc b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rgb_matrix_user.inc
deleted file mode 100644
index ea742af2d4..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rgb_matrix_user.inc
+++ /dev/null
@@ -1,17 +0,0 @@
-RGB_MATRIX_EFFECT(CUSTOM_GRADIENT)
-RGB_MATRIX_EFFECT(DIAGONAL)
-RGB_MATRIX_EFFECT(COOL_DIAGONAL)
-RGB_MATRIX_EFFECT(RAINBOW_REACTIVE_SIMPLE)
-RGB_MATRIX_EFFECT(KITT)
-RGB_MATRIX_EFFECT(RANDOM_BREATH_RAINBOW)
-
-#ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS
-
-#include "led/custom_gradient.c"
-#include "led/diagonal.c"
-#include "led/cool_diagonal.c"
-#include "led/rainbow_reactive_simple/rainbow_reactive_simple.c"
-#include "led/kitt.c"
-#include "led/random_breath_rainbow.c"
-
-#endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS
diff --git a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rules.mk b/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rules.mk
deleted file mode 100644
index c1f6494e2c..0000000000
--- a/keyboards/mwstudio/mw65_rgb/keymaps/horrortroll/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-MOUSEKEY_ENABLE = no # Mouse keys
-VIA_ENABLE = yes
-LTO_ENABLE = yes
-
-# can this go just in the keymap?
-RGB_MATRIX_CUSTOM_USER = yes
diff --git a/keyboards/mxss/config.h b/keyboards/mxss/config.h
index bfa2338678..704da3911a 100644
--- a/keyboards/mxss/config.h
+++ b/keyboards/mxss/config.h
@@ -21,6 +21,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-
-// FLED config takes up 1 byte, stored color count takes 1, stored colors take up to 8
-#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 10
diff --git a/keyboards/mxss/info.json b/keyboards/mxss/info.json
index 7b24c46717..0846157457 100644
--- a/keyboards/mxss/info.json
+++ b/keyboards/mxss/info.json
@@ -8,6 +8,15 @@
"pid": "0x5353",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false,
+ "rgblight": true
+ },
"rgblight": {
"saturation_steps": 8,
"brightness_steps": 8,
diff --git a/keyboards/mxss/keymaps/default/keymap.c b/keyboards/mxss/keymaps/default/keymap.c
index 06e73f4688..8f7c2bd2a5 100644
--- a/keyboards/mxss/keymaps/default/keymap.c
+++ b/keyboards/mxss/keymaps/default/keymap.c
@@ -14,21 +14,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "mxss_frontled.h"
-
-hs_set caps_color = { .hue = 0, .sat = 255 };
-
-// Colors for layers
-// Format: {hue, saturation}
-// {0, 0} to turn off the LED
-// Add additional rows to handle more layers
-hs_set layer_colors[4] = {
- [0] = {.hue = 0, .sat = 0}, // Color for Layer 0
- [1] = {.hue = 86, .sat = 255}, // Color for Layer 1
- [2] = {.hue = 36, .sat = 255}, // Color for Layer 2
- [3] = {.hue = 185, .sat = 255}, // Color for Layer 3
-};
-size_t lc_size = ARRAY_SIZE(layer_colors);
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT( /* Base */
@@ -41,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT( /* L1 */
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
- KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, FLED_VAD, FLED_VAI, FLED_MOD, RGB_VAI,
+ KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI,
QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI
diff --git a/keyboards/mxss/keymaps/via/keymap.c b/keyboards/mxss/keymaps/via/keymap.c
index 3591f4d3f9..a9ce5f5bd1 100644
--- a/keyboards/mxss/keymaps/via/keymap.c
+++ b/keyboards/mxss/keymaps/via/keymap.c
@@ -14,7 +14,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "mxss_frontled.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT_all( /* L0 */
@@ -26,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
LAYOUT_all( /* L1 */
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, FLED_VAD, FLED_VAI, FLED_MOD, RGB_VAI,
+ KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI,
QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI
diff --git a/keyboards/mxss/mxss.c b/keyboards/mxss/mxss.c
deleted file mode 100644
index 021eb1de4e..0000000000
--- a/keyboards/mxss/mxss.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/* Copyright 2020 Jumail Mundekkat / MxBlue
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * EEPROM management code from ../cannonkeys/stm32f072/keyboard.c
- */
-
-#include "quantum.h"
-#include "eeprom.h"
-#include "mxss_frontled.h"
-#include "version.h" // for QMK_BUILDDATE used in EEPROM magic
-
-void via_init_kb(void) {
- fled_init();
-}
-
-void matrix_init_kb(void) {
- // If VIA is disabled, we still need to load settings
- // Call via_init_kb() the same way as via_init(), with setting
- // EEPROM valid afterwards.
-#ifndef VIA_ENABLE
- fled_init();
- via_eeprom_set_valid(true);
-#endif // VIA_ENABLE
-
- matrix_init_user();
-}
-
-bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
- // Handle custom keycodes for front LED operation
- process_record_fled(keycode, record);
- return process_record_user(keycode, record);
-}
-
-bool led_update_kb(led_t led_state) {
- fled_lock_update(led_state);
- return led_update_user(led_state);
-}
-
-layer_state_t layer_state_set_kb(layer_state_t state) {
- fled_layer_update(state);
- return layer_state_set_user(state);
-}
-
-// Fallback eeprom functions if VIA is not enabled
-#ifndef VIA_ENABLE
-
-// Sets VIA/keyboard level usage of EEPROM to valid/invalid
-// Keyboard level code (eg. via_init_kb()) should not call this
-void via_eeprom_set_valid(bool valid)
-{
- char *p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54"
- uint8_t magic0 = ( ( p[2] & 0x0F ) << 4 ) | ( p[3] & 0x0F );
- uint8_t magic1 = ( ( p[5] & 0x0F ) << 4 ) | ( p[6] & 0x0F );
- uint8_t magic2 = ( ( p[8] & 0x0F ) << 4 ) | ( p[9] & 0x0F );
-
- eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+0, valid ? magic0 : 0xFF);
- eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+1, valid ? magic1 : 0xFF);
- eeprom_update_byte( (void*)VIA_EEPROM_MAGIC_ADDR+2, valid ? magic2 : 0xFF);
-}
-
-#endif
diff --git a/keyboards/mxss/mxss_frontled.c b/keyboards/mxss/mxss_frontled.c
deleted file mode 100644
index 2ab9a27bea..0000000000
--- a/keyboards/mxss/mxss_frontled.c
+++ /dev/null
@@ -1,278 +0,0 @@
-/* Copyright 2020 Jumail Mundekkat / MxBlue
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * Extended from the work done by fcoury: https://github.com/qmk/qmk_firmware/pull/4915
- */
-
-#include "mxss_frontled.h"
-#include "eeprom.h"
-#include "rgblight.h"
-#include "via.h"
-#include "version.h" // for QMK_BUILDDATE used in EEPROM magic
-
-// Variables for controlling front LED application
-uint8_t fled_mode; // Mode for front LEDs
-uint8_t fled_val; // Brightness for front leds (0 - 255)
-LED_TYPE fleds[2]; // Front LED rgb values for indicator mode use
-
-// Layer indicator colors
-__attribute__ ((weak))
-hs_set layer_colors[FRONTLED_COLOR_MAXCNT];
-
-// Caps lock indicator color
-__attribute__ ((weak))
-hs_set caps_color;
-
-__attribute__ ((weak))
-size_t lc_size = ARRAY_SIZE(layer_colors);
-
-void fled_init(void) {
- // This checks both an EEPROM reset (from bootmagic lite, keycodes)
- // and also firmware build date (from via_eeprom_is_valid())
- if (eeconfig_is_enabled()) {
- fled_load_conf();
- // Else, default config
- } else {
- // Default mode/brightness
- fled_mode = FLED_RGB;
- fled_val = 10 * FLED_VAL_STEP;
-
- // Default colors
- caps_color.hue = 0;
- caps_color.sat = 255;
- layer_colors[0].hue = 0;
- layer_colors[0].sat = 0;
- layer_colors[1].hue = 86;
- layer_colors[1].sat = 255;
- layer_colors[2].hue = 36;
- layer_colors[2].sat = 255;
- layer_colors[3].hue = 185;
- layer_colors[3].sat = 255;
-
- fled_update_conf(); // Store default config to EEPROM
- }
-
- // Set default values for leds
- setrgb(0, 0, 0, &fleds[0]);
- setrgb(0, 0, 0, &fleds[1]);
-
- // Handle lighting for indicator mode
- if (fled_mode == FLED_INDI) {
- fled_lock_update(host_keyboard_led_state());
- fled_layer_update(layer_state);
- }
-}
-
-void process_record_fled(uint16_t keycode, keyrecord_t *record) {
- // Handle custom keycodes for front LED operation
- switch (keycode) {
- case FLED_MOD: // Change between front LED operation modes (off, indicator, RGB)
- if (record->event.pressed)
- fled_mode_cycle();
- break;
-
- case FLED_VAI: // Increase the brightness of the front LEDs by FLED_VAL_STEP
- if (record->event.pressed)
- fled_val_increase();
- break;
-
- case FLED_VAD: // Decrease the brightness of the front LEDs by FLED_VAL_STEP
- if (record->event.pressed)
- fled_val_decrease();
- break;
-
- default:
- break; // Process all other keycodes normally
- }
-
- return;
-}
-
-void fled_load_conf(void) {
- // Load config
- fled_config fled_conf;
- fled_conf.raw = eeprom_read_byte(FRONTLED_CONF_ADDR);
- fled_mode = fled_conf.mode;
- fled_val = fled_conf.val * FLED_VAL_STEP;
-
- // Load color data
- uint8_t stored_cnt = eeprom_read_byte(FRONTLED_COLOR_CNT_ADDR);
- uint16_t *color_ptr = FRONTLED_COLOR_ADDR;
- caps_color.raw = eeprom_read_word(color_ptr); // Should always store at least 1 color
- for (uint8_t i = 1; i < stored_cnt; i++) {
- if (i == lc_size) // Can't load more layers than we have available
- break;
- layer_colors[i].raw = eeprom_read_word(&color_ptr[i]);
- }
- layer_colors[0].raw = 0; // hue = sat = 0 for layer 0
-}
-
-// Store current front led config in EEPROM
-void fled_update_conf(void)
-{
- // Create storage struct and set values
- fled_config conf;
- conf.mode = fled_mode;
-
- // Small hack to ensure max value is stored correctly
- if (fled_val == 255)
- conf.val = 256 / FLED_VAL_STEP;
- else
- conf.val = fled_val / FLED_VAL_STEP;
-
- // Store config
- eeprom_update_byte(FRONTLED_CONF_ADDR, conf.raw);
-
- // Store color data
- uint16_t *color_ptr = FRONTLED_COLOR_ADDR;
- eeprom_update_word(color_ptr, caps_color.raw);
- // Start from 1, layer 0 is not modifiable and therefore not persisted
- uint8_t i = 1;
- for (; i < lc_size; i++) {
- if (i == FRONTLED_COLOR_MAXCNT) // Can't store more than the EEPROM we have available
- break;
- eeprom_update_word(&color_ptr[i], layer_colors[i].raw);
- }
- eeprom_update_byte(FRONTLED_COLOR_CNT_ADDR, i); // For safety, store the count of colors stored
-}
-
-// Custom keycode functions
-
-void fled_mode_cycle(void)
-{
- // FLED -> FLED_RGB -> FLED_INDI
- switch (fled_mode) {
- case FLED_OFF:
- fled_mode = FLED_RGB;
- rgblight_timer_enable();
- break;
-
- case FLED_RGB:
- fled_mode = FLED_INDI;
- break;
-
- case FLED_INDI:
- fled_mode = FLED_OFF;
- break;
- }
-
- // Update stored config
- fled_update_conf();
- rgblight_set();
-}
-
-void fled_val_increase(void)
-{
- // Increase val by FLED_VAL_STEP, handling the upper edge case
- if (fled_val + FLED_VAL_STEP > 255)
- fled_val = 255;
- else
- fled_val += FLED_VAL_STEP;
-
- // Update stored config
- fled_update_conf();
-
- // Update and set LED state
- if (fled_mode == FLED_INDI) {
- fled_layer_update(layer_state);
- fled_lock_update(host_keyboard_led_state());
- } else {
- rgblight_set();
- }
-}
-
-void fled_val_decrease(void)
-{
- // Decrease val by FLED_VAL_STEP, handling the lower edge case
- if (fled_val - FLED_VAL_STEP > 255)
- fled_val = 255;
- else
- fled_val -= FLED_VAL_STEP;
-
- // Update stored config
- fled_update_conf();
-
- // Update and set LED state
- if (fled_mode == FLED_INDI) {
- fled_layer_update(layer_state);
- fled_lock_update(host_keyboard_led_state());
- } else {
- rgblight_set();
- }
-}
-
-void fled_layer_update(layer_state_t state) {
- // Determine and set colour of layer LED according to current layer
- // if hue = sat = 0, leave LED off
- uint8_t layer = get_highest_layer(state);
-
- if (layer < lc_size && !(layer_colors[layer].hue == 0 && layer_colors[layer].sat == 0)) {
- sethsv(layer_colors[layer].hue, layer_colors[layer].sat, fled_val, &fleds[1]);
- } else {
- setrgb(0, 0, 0, &fleds[1]);
- }
-}
-
-void fled_lock_update(led_t led_state) {
- // Set indicator LED appropriately, whether it is used or not
- if (led_state.caps_lock) {
- sethsv(caps_color.hue, caps_color.sat, fled_val, &fleds[0]);
- } else {
- setrgb(0, 0, 0, &fleds[0]);
- }
-
- rgblight_set();
-}
-
-void set_fled_layer_color(uint8_t layer, hs_set hs) {
- // Update layer colors and refresh LEDs
- layer_colors[layer] = hs;
- fled_layer_update(layer_state);
- fled_update_conf();
-}
-
-hs_set get_fled_layer_color(uint8_t layer) {
- return layer_colors[layer];
-}
-
-void set_fled_caps_color(hs_set hs) {
- // Update caplock color and refresh LEDs
- caps_color = hs;
- fled_lock_update(host_keyboard_led_state());
- fled_update_conf();
-}
-
-hs_set get_fled_caps_color(void) {
- return caps_color;
-}
-
-// Fallback eeprom functions if VIA is not enabled
-#ifndef VIA_ENABLE
-
-// Can be called in an overriding via_init_kb() to test if keyboard level code usage of
-// EEPROM is invalid and use/save defaults.
-bool via_eeprom_is_valid(void)
-{
- char *p = QMK_BUILDDATE; // e.g. "2019-11-05-11:29:54"
- uint8_t magic0 = ( ( p[2] & 0x0F ) << 4 ) | ( p[3] & 0x0F );
- uint8_t magic1 = ( ( p[5] & 0x0F ) << 4 ) | ( p[6] & 0x0F );
- uint8_t magic2 = ( ( p[8] & 0x0F ) << 4 ) | ( p[9] & 0x0F );
-
- return (eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+0 ) == magic0 &&
- eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+1 ) == magic1 &&
- eeprom_read_byte( (void*)VIA_EEPROM_MAGIC_ADDR+2 ) == magic2 );
-}
-
-#endif
diff --git a/keyboards/mxss/mxss_frontled.h b/keyboards/mxss/mxss_frontled.h
deleted file mode 100644
index c8d4199d47..0000000000
--- a/keyboards/mxss/mxss_frontled.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright 2020 Jumail Mundekkat / MxBlue
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-// EEPROM management code taken from Wilba6582
-// https://github.com/Wilba6582/qmk_firmware/blob/zeal60/keyboards/zeal60/zeal_eeprom.h
-
-#pragma once
-
-#include "quantum.h"
-#include "quantum_keycodes.h"
-#include "via.h"
-
-// RGBLED index for front LEDs
-#define RGBLIGHT_FLED1 14
-#define RGBLIGHT_FLED2 15
-
-// Brightness increase step for front LEDs
-#define FLED_VAL_STEP 8
-
-// Front LED settings
-#define FRONTLED_CONF_ADDR ((uint8_t*) VIA_EEPROM_CUSTOM_CONFIG_ADDR)
-#define FRONTLED_COLOR_CNT_ADDR (FRONTLED_CONF_ADDR + 1)
-#define FRONTLED_COLOR_ADDR ((uint16_t*)(FRONTLED_COLOR_CNT_ADDR + 1))
-
-// No point persisting more 4, VIA only allows editing of 3 + 1 for caps
-#define FRONTLED_COLOR_MAXCNT 4
-
-// Modes for front LEDs
-#define FLED_OFF 0b00
-#define FLED_INDI 0b01
-#define FLED_RGB 0b10
-#define FLED_UNDEF 0b11
-
-// Config storage format for EEPROM
-typedef union {
- uint8_t raw;
- struct {
- uint8_t mode :2;
- uint8_t val :6;
- };
-} fled_config;
-
-// Structure to store hue and saturation values
-typedef union {
- uint16_t raw;
- struct {
- uint8_t hue;
- uint8_t sat;
- };
-} hs_set;
-
-// Custom keycodes for front LED control
-enum fled_keycodes {
- FLED_MOD = QK_KB_0, // QK_KB_0 = VIA custom keycode start
- FLED_VAI,
- FLED_VAD,
-};
-
-void fled_init(void); // Run init functions for front LEDs
-void process_record_fled(uint16_t keycode, keyrecord_t* record); // Process keycodes for front LEDs
-void fled_load_conf(void); // Load front LED config from EEPROM
-void fled_update_conf(void); // Store current front LED config to EEPROM
-
-void fled_mode_cycle(void); // Cycle between the 3 modes for the front LEDs
-void fled_val_increase(void); // Increase the brightness of the front LEDs
-void fled_val_decrease(void); // Decrease the brightness of the front LEDs
-
-void fled_layer_update(layer_state_t state); // Process layer update for front LEDs
-void fled_lock_update(led_t led_state); // Process lock update for front LEDs
-
-void set_fled_layer_color(uint8_t layer, hs_set hs); // Set color for a given layer
-void set_fled_caps_color(hs_set hs); // Set color for the capslock indicator
-hs_set get_fled_caps_color(void); // Get color for the capslock indicator
-hs_set get_fled_layer_color(uint8_t layer); // Get color for a given layer
diff --git a/keyboards/mxss/readme.md b/keyboards/mxss/readme.md
index 17343be526..e22fe256ed 100644
--- a/keyboards/mxss/readme.md
+++ b/keyboards/mxss/readme.md
@@ -2,11 +2,6 @@
![MxSS - Polycarb 65% Kit for MX/SMK](https://i.imgur.com/WDTWcmU.jpg)
-### Important Note:
-**This PCB supports the VIA configurator, and this is the recommended way to configure the keymap on this keyboard. Building the firmware should only be necessary if you would like to change the colours of the front LEDs in indicator mode.**
-
-**For more information about the VIA configurator, [see here](https://caniusevia.com/).**
-
### Information:
- Case: Frosted Polycarbonate, CNC milled
@@ -24,32 +19,23 @@
- RGB underglow
- 1.5kg with plate and weight
-Keyboard Maintainer: [MxBlue](https://github.com/mxblu)
-
-Hardware Supported: Custom PCB, ATMega32u4
-
-Hardware Availability: https://geekhack.org/index.php?topic=94986.0
+* Keyboard Maintainer: [MxBlue](https://github.com/mxblu)
+* Hardware Supported: Custom PCB, ATMega32u4
+* Hardware Availability: https://geekhack.org/index.php?topic=94986.0
Make example for this keyboard (after setting up your build environment):
make mxss:default
-See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
-
-# Front LED Operation
+Flashing example for this keyboard:
-The MxSS PCB has 2 front RGB LEDs which has a separate brightness and mode of operation to the rest of the RGB LEDs. These are controlled through the supplied custom keycodes.
+ make mxss:default:flash
-There are 3 modes of operation:
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
- - FLED_OFF - Front LEDs stay off
- - FLED_RGB - Front LEDs are part of the standard RGB LED modes, only works correctly with rainbow modes (will fix on request)
- - FLED_INDI - Top front LED represents Caps Lock status, bottom LED represents current layer
-
-Colors for FLED_INDI mode are hardcoded as hue/saturation values, the caps lock color can be found in mxss_frontled.h, the layer colors are defined in keymap.c (see default/keymap.c for example).
+## Bootloader
-## Custom Keycodes
+Enter the bootloader in 2 ways:
- - FLED_MOD - Cycle between the 3 modes (FLED_OFF -> FLED_RGB -> FLED_INDI)
- - FLED_VAI - Increase front LED brightness
- - FLED_VAD - Decrease front LED brightness
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/mxss/rgblight.c b/keyboards/mxss/rgblight.c
deleted file mode 100644
index 94f6b1dfe8..0000000000
--- a/keyboards/mxss/rgblight.c
+++ /dev/null
@@ -1,1392 +0,0 @@
-/* Copyright 2016-2017 Yang Liu
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include <math.h>
-#include <string.h>
-#include <stdlib.h>
-#ifdef __AVR__
-# include <avr/eeprom.h>
-# include <avr/interrupt.h>
-#endif
-#ifdef EEPROM_ENABLE
-# include "eeprom.h"
-#endif
-#include "wait.h"
-#include "progmem.h"
-#include "timer.h"
-#include "rgblight.h"
-#include "color.h"
-#include "debug.h"
-#include "led_tables.h"
-#include <lib/lib8tion/lib8tion.h>
-#ifdef VELOCIKEY_ENABLE
-# include "velocikey.h"
-#endif
-// MxSS custom
-#include "mxss_frontled.h"
-
-#ifndef MIN
-# define MIN(a, b) (((a) < (b)) ? (a) : (b))
-#endif
-
-#ifdef RGBLIGHT_SPLIT
-/* for split keyboard */
-# define RGBLIGHT_SPLIT_SET_CHANGE_MODE rgblight_status.change_flags |= RGBLIGHT_STATUS_CHANGE_MODE
-# define RGBLIGHT_SPLIT_SET_CHANGE_HSVS rgblight_status.change_flags |= RGBLIGHT_STATUS_CHANGE_HSVS
-# define RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS rgblight_status.change_flags |= (RGBLIGHT_STATUS_CHANGE_MODE | RGBLIGHT_STATUS_CHANGE_HSVS)
-# define RGBLIGHT_SPLIT_SET_CHANGE_LAYERS rgblight_status.change_flags |= RGBLIGHT_STATUS_CHANGE_LAYERS
-# define RGBLIGHT_SPLIT_SET_CHANGE_TIMER_ENABLE rgblight_status.change_flags |= RGBLIGHT_STATUS_CHANGE_TIMER
-# define RGBLIGHT_SPLIT_ANIMATION_TICK rgblight_status.change_flags |= RGBLIGHT_STATUS_ANIMATION_TICK
-#else
-# define RGBLIGHT_SPLIT_SET_CHANGE_MODE
-# define RGBLIGHT_SPLIT_SET_CHANGE_HSVS
-# define RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS
-# define RGBLIGHT_SPLIT_SET_CHANGE_LAYERS
-# define RGBLIGHT_SPLIT_SET_CHANGE_TIMER_ENABLE
-# define RGBLIGHT_SPLIT_ANIMATION_TICK
-#endif
-
-#define _RGBM_SINGLE_STATIC(sym) RGBLIGHT_MODE_##sym,
-#define _RGBM_SINGLE_DYNAMIC(sym)
-#define _RGBM_MULTI_STATIC(sym) RGBLIGHT_MODE_##sym,
-#define _RGBM_MULTI_DYNAMIC(sym)
-#define _RGBM_TMP_STATIC(sym, msym) RGBLIGHT_MODE_##sym,
-#define _RGBM_TMP_DYNAMIC(sym, msym)
-static uint8_t static_effect_table[] = {
-#include "rgblight_modes.h"
-};
-
-#define _RGBM_SINGLE_STATIC(sym) RGBLIGHT_MODE_##sym,
-#define _RGBM_SINGLE_DYNAMIC(sym) RGBLIGHT_MODE_##sym,
-#define _RGBM_MULTI_STATIC(sym) RGBLIGHT_MODE_##sym,
-#define _RGBM_MULTI_DYNAMIC(sym) RGBLIGHT_MODE_##sym,
-#define _RGBM_TMP_STATIC(sym, msym) RGBLIGHT_MODE_##msym,
-#define _RGBM_TMP_DYNAMIC(sym, msym) RGBLIGHT_MODE_##msym,
-static uint8_t mode_base_table[] = {
- 0, // RGBLIGHT_MODE_zero
-#include "rgblight_modes.h"
-};
-
-static inline int is_static_effect(uint8_t mode) { return memchr(static_effect_table, mode, sizeof(static_effect_table)) != NULL; }
-
-#ifdef RGBLIGHT_LED_MAP
-const uint8_t led_map[] PROGMEM = RGBLIGHT_LED_MAP;
-#endif
-
-#ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT
-__attribute__((weak)) const uint8_t RGBLED_GRADIENT_RANGES[] PROGMEM = {255, 170, 127, 85, 64};
-#endif
-
-rgblight_config_t rgblight_config;
-rgblight_status_t rgblight_status = {.timer_enabled = false};
-bool is_rgblight_initialized = false;
-
-#ifdef RGBLIGHT_USE_TIMER
-animation_status_t animation_status = {};
-#endif
-
-#ifndef LED_ARRAY
-LED_TYPE led[RGBLED_NUM];
-# define LED_ARRAY led
-#endif
-
-#ifdef RGBLIGHT_LAYERS
-rgblight_segment_t const *const *rgblight_layers = NULL;
-#endif
-
-rgblight_ranges_t rgblight_ranges = {0, RGBLED_NUM, 0, RGBLED_NUM, RGBLED_NUM};
-
-// MxSS custom
-extern uint8_t fled_mode;
-extern uint8_t fled_val;
-extern LED_TYPE fleds[2];
-hs_set fled_hs[2];
-
-void copyrgb(LED_TYPE *src, LED_TYPE *dst) {
- dst->r = src->r;
- dst->g = src->g;
- dst->b = src->b;
-}
-
-void rgblight_set_clipping_range(uint8_t start_pos, uint8_t num_leds) {
- rgblight_ranges.clipping_start_pos = start_pos;
- rgblight_ranges.clipping_num_leds = num_leds;
-}
-
-void rgblight_set_effect_range(uint8_t start_pos, uint8_t num_leds) {
- if (start_pos >= RGBLED_NUM) return;
- if (start_pos + num_leds > RGBLED_NUM) return;
- rgblight_ranges.effect_start_pos = start_pos;
- rgblight_ranges.effect_end_pos = start_pos + num_leds;
- rgblight_ranges.effect_num_leds = num_leds;
-}
-
-__attribute__((weak)) RGB rgblight_hsv_to_rgb(HSV hsv) { return hsv_to_rgb(hsv); }
-
-void sethsv_raw(uint8_t hue, uint8_t sat, uint8_t val, LED_TYPE *led1) {
- HSV hsv = {hue, sat, val};
- // MxSS custom
- // if led is front leds, cache the hue and sat values
- if (led1 == &led[RGBLIGHT_FLED1]) {
- fled_hs[0].hue = hue;
- fled_hs[0].sat = sat;
- } else if (led1 == &led[RGBLIGHT_FLED2]) {
- fled_hs[1].hue = hue;
- fled_hs[1].sat = sat;
- }
- RGB rgb = rgblight_hsv_to_rgb(hsv);
- setrgb(rgb.r, rgb.g, rgb.b, led1);
-}
-
-void sethsv(uint8_t hue, uint8_t sat, uint8_t val, LED_TYPE *led1) { sethsv_raw(hue, sat, val > RGBLIGHT_LIMIT_VAL ? RGBLIGHT_LIMIT_VAL : val, led1); }
-
-void setrgb(uint8_t r, uint8_t g, uint8_t b, LED_TYPE *led1) {
- led1->r = r;
- led1->g = g;
- led1->b = b;
-#ifdef RGBW
- led1->w = 0;
-#endif
-}
-
-void rgblight_check_config(void) {
- /* Add some out of bound checks for RGB light config */
-
- if (rgblight_config.mode < RGBLIGHT_MODE_STATIC_LIGHT) {
- rgblight_config.mode = RGBLIGHT_MODE_STATIC_LIGHT;
- } else if (rgblight_config.mode > RGBLIGHT_MODES) {
- rgblight_config.mode = RGBLIGHT_MODES;
- }
-
- if (rgblight_config.val > RGBLIGHT_LIMIT_VAL) {
- rgblight_config.val = RGBLIGHT_LIMIT_VAL;
- }
-}
-
-uint64_t eeconfig_read_rgblight(void) {
-#ifdef EEPROM_ENABLE
- return (uint64_t)((eeprom_read_dword(EECONFIG_RGBLIGHT)) | ((uint64_t)eeprom_read_byte(EECONFIG_RGBLIGHT_EXTENDED) << 32));
-#else
- return 0;
-#endif
-}
-
-void eeconfig_update_rgblight(uint64_t val) {
-#ifdef EEPROM_ENABLE
- rgblight_check_config();
- eeprom_update_dword(EECONFIG_RGBLIGHT, val & 0xFFFFFFFF);
- eeprom_update_byte(EECONFIG_RGBLIGHT_EXTENDED, (val >> 32) & 0xFF);
-#endif
-}
-
-void eeconfig_update_rgblight_current(void) { eeconfig_update_rgblight(rgblight_config.raw); }
-
-void eeconfig_update_rgblight_default(void) {
- rgblight_config.enable = 1;
- rgblight_config.mode = RGBLIGHT_MODE_STATIC_LIGHT;
- rgblight_config.hue = 0;
- rgblight_config.sat = UINT8_MAX;
- rgblight_config.val = RGBLIGHT_LIMIT_VAL;
- rgblight_config.speed = 0;
- RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS;
- eeconfig_update_rgblight(rgblight_config.raw);
-}
-
-void eeconfig_debug_rgblight(void) {
- dprintf("rgblight_config EEPROM:\n");
- dprintf("rgblight_config.enable = %d\n", rgblight_config.enable);
- dprintf("rghlight_config.mode = %d\n", rgblight_config.mode);
- dprintf("rgblight_config.hue = %d\n", rgblight_config.hue);
- dprintf("rgblight_config.sat = %d\n", rgblight_config.sat);
- dprintf("rgblight_config.val = %d\n", rgblight_config.val);
- dprintf("rgblight_config.speed = %d\n", rgblight_config.speed);
-}
-
-void rgblight_init(void) {
- /* if already initialized, don't do it again.
- If you must do it again, extern this and set to false, first.
- This is a dirty, dirty hack until proper hooks can be added for keyboard startup. */
- if (is_rgblight_initialized) {
- return;
- }
-
- dprintf("rgblight_init called.\n");
- dprintf("rgblight_init start!\n");
- if (!eeconfig_is_enabled()) {
- dprintf("rgblight_init eeconfig is not enabled.\n");
- eeconfig_init();
- eeconfig_update_rgblight_default();
- }
- rgblight_config.raw = eeconfig_read_rgblight();
- RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS;
- if (!rgblight_config.mode) {
- dprintf("rgblight_init rgblight_config.mode = 0. Write default values to EEPROM.\n");
- eeconfig_update_rgblight_default();
- rgblight_config.raw = eeconfig_read_rgblight();
- }
- rgblight_check_config();
-
- eeconfig_debug_rgblight(); // display current eeprom values
-
- rgblight_timer_init(); // setup the timer
-
- if (rgblight_config.enable) {
- rgblight_mode_noeeprom(rgblight_config.mode);
- }
-
- is_rgblight_initialized = true;
-}
-
-uint32_t rgblight_read_dword(void) { return rgblight_config.raw; }
-
-void rgblight_update_dword(uint32_t dword) {
- RGBLIGHT_SPLIT_SET_CHANGE_MODEHSVS;
- rgblight_config.raw = dword;
- if (rgblight_config.enable)
- rgblight_mode_noeeprom(rgblight_config.mode);
- else {
- rgblight_timer_disable();
- rgblight_set();
- }
-}
-
-void rgblight_increase(void) {
- uint8_t mode = 0;
- if (rgblight_config.mode < RGBLIGHT_MODES) {
- mode = rgblight_config.mode + 1;
- }
- rgblight_mode(mode);
-}
-void rgblight_decrease(void) {
- uint8_t mode = 0;
- // Mode will never be < 1. If it ever is, eeprom needs to be initialized.
- if (rgblight_config.mode > RGBLIGHT_MODE_STATIC_LIGHT) {
- mode = rgblight_config.mode - 1;
- }
- rgblight_mode(mode);
-}
-void rgblight_step_helper(bool write_to_eeprom) {
- uint8_t mode = 0;
- mode = rgblight_config.mode + 1;
- if (mode > RGBLIGHT_MODES) {
- mode = 1;
- }
- rgblight_mode_eeprom_helper(mode, write_to_eeprom);
-}
-void rgblight_step_noeeprom(void) { rgblight_step_helper(false); }
-void rgblight_step(void) { rgblight_step_helper(true); }
-void rgblight_step_reverse_helper(bool write_to_eeprom) {
- uint8_t mode = 0;
- mode = rgblight_config.mode - 1;
- if (mode < 1) {
- mode = RGBLIGHT_MODES;
- }
- rgblight_mode_eeprom_helper(mode, write_to_eeprom);
-}
-void rgblight_step_reverse_noeeprom(void) { rgblight_step_reverse_helper(false); }
-void rgblight_step_reverse(void) { rgblight_step_reverse_helper(true); }
-
-uint8_t rgblight_get_mode(void) {
- if (!rgblight_config.enable) {
- return false;
- }
-
- return rgblight_config.mode;
-}
-
-void rgblight_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) {
- if (!rgblight_config.enable) {
- return;
- }
- if (mode < RGBLIGHT_MODE_STATIC_LIGHT) {
- rgblight_config.mode = RGBLIGHT_MODE_STATIC_LIGHT;
- } else if (mode > RGBLIGHT_MODES) {
- rgblight_config.mode = RGBLIGHT_MODES;
- } else {
- rgblight_config.mode = mode;
- }
- RGBLIGHT_SPLIT_SET_CHANGE_MODE;
- if (write_to_eeprom) {
- eeconfig_update_rgblight(rgblight_config.raw);
- dprintf("rgblight mode [EEPROM]: %u\n", rgblight_config.mode);
- } else {
- dprintf("rgblight mode [NOEEPROM]: %u\n", rgblight_config.mode);
- }
- if (is_static_effect(rgblight_config.mode)) {
- rgblight_timer_disable();
- } else {
- rgblight_timer_enable();
- }
-#ifdef RGBLIGHT_USE_TIMER
- animation_status.restart = true;
-#endif
- rgblight_sethsv_noeeprom(rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
-}
-
-void rgblight_mode(uint8_t mode) { rgblight_mode_eeprom_helper(mode, true); }
-
-void rgblight_mode_noeeprom(uint8_t mode) { rgblight_mode_eeprom_helper(mode, false); }
-
-void rgblight_toggle(void) {
- dprintf("rgblight toggle [EEPROM]: rgblight_config.enable = %u\n", !rgblight_config.enable);
- if (rgblight_config.enable) {
- rgblight_disable();
- } else {
- rgblight_enable();
- }
-}
-
-void rgblight_toggle_noeeprom(void) {
- dprintf("rgblight toggle [NOEEPROM]: rgblight_config.enable = %u\n", !rgblight_config.enable);
- if (rgblight_config.enable) {
- rgblight_disable_noeeprom();
- } else {
- rgblight_enable_noeeprom();
- }
-}
-
-void rgblight_enable(void) {
- rgblight_config.enable = 1;
- // No need to update EEPROM here. rgblight_mode() will do that, actually
- // eeconfig_update_rgblight(rgblight_config.raw);
- dprintf("rgblight enable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
- rgblight_mode(rgblight_config.mode);
-}
-
-void rgblight_enable_noeeprom(void) {
- rgblight_config.enable = 1;
- dprintf("rgblight enable [NOEEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
- rgblight_mode_noeeprom(rgblight_config.mode);
-}
-
-void rgblight_disable(void) {
- rgblight_config.enable = 0;
- eeconfig_update_rgblight(rgblight_config.raw);
- dprintf("rgblight disable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
- rgblight_timer_disable();
- RGBLIGHT_SPLIT_SET_CHANGE_MODE;
- wait_ms(50);
- rgblight_set();
-}
-
-void rgblight_disable_noeeprom(void) {
- rgblight_config.enable = 0;
- dprintf("rgblight disable [NOEEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
- rgblight_timer_disable();
- RGBLIGHT_SPLIT_SET_CHANGE_MODE;
- wait_ms(50);
- rgblight_set();
-}
-
-bool rgblight_is_enabled(void) { return rgblight_config.enable; }
-
-void rgblight_increase_hue_helper(bool write_to_eeprom) {
- uint8_t hue = rgblight_config.hue + RGBLIGHT_HUE_STEP;
- rgblight_sethsv_eeprom_helper(hue, rgblight_config.sat, rgblight_config.val, write_to_eeprom);
-}
-void rgblight_increase_hue_noeeprom(void) { rgblight_increase_hue_helper(false); }
-void rgblight_increase_hue(void) { rgblight_increase_hue_helper(true); }
-void rgblight_decrease_hue_helper(bool write_to_eeprom) {
- uint8_t hue = rgblight_config.hue - RGBLIGHT_HUE_STEP;
- rgblight_sethsv_eeprom_helper(hue, rgblight_config.sat, rgblight_config.val, write_to_eeprom);
-}
-void rgblight_decrease_hue_noeeprom(void) { rgblight_decrease_hue_helper(false); }
-void rgblight_decrease_hue(void) { rgblight_decrease_hue_helper(true); }
-void rgblight_increase_sat_helper(bool write_to_eeprom) {
- uint8_t sat = qadd8(rgblight_config.sat, RGBLIGHT_SAT_STEP);
- rgblight_sethsv_eeprom_helper(rgblight_config.hue, sat, rgblight_config.val, write_to_eeprom);
-}
-void rgblight_increase_sat_noeeprom(void) { rgblight_increase_sat_helper(false); }
-void rgblight_increase_sat(void) { rgblight_increase_sat_helper(true); }
-void rgblight_decrease_sat_helper(bool write_to_eeprom) {
- uint8_t sat = qsub8(rgblight_config.sat, RGBLIGHT_SAT_STEP);
- rgblight_sethsv_eeprom_helper(rgblight_config.hue, sat, rgblight_config.val, write_to_eeprom);
-}
-void rgblight_decrease_sat_noeeprom(void) { rgblight_decrease_sat_helper(false); }
-void rgblight_decrease_sat(void) { rgblight_decrease_sat_helper(true); }
-void rgblight_increase_val_helper(bool write_to_eeprom) {
- uint8_t val = qadd8(rgblight_config.val, RGBLIGHT_VAL_STEP);
- rgblight_sethsv_eeprom_helper(rgblight_config.hue, rgblight_config.sat, val, write_to_eeprom);
-}
-void rgblight_increase_val_noeeprom(void) { rgblight_increase_val_helper(false); }
-void rgblight_increase_val(void) { rgblight_increase_val_helper(true); }
-void rgblight_decrease_val_helper(bool write_to_eeprom) {
- uint8_t val = qsub8(rgblight_config.val, RGBLIGHT_VAL_STEP);
- rgblight_sethsv_eeprom_helper(rgblight_config.hue, rgblight_config.sat, val, write_to_eeprom);
-}
-void rgblight_decrease_val_noeeprom(void) { rgblight_decrease_val_helper(false); }
-void rgblight_decrease_val(void) { rgblight_decrease_val_helper(true); }
-
-void rgblight_increase_speed_helper(bool write_to_eeprom) {
- if (rgblight_config.speed < 3) rgblight_config.speed++;
- // RGBLIGHT_SPLIT_SET_CHANGE_HSVS; // NEED?
- if (write_to_eeprom) {
- eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
- }
-}
-void rgblight_increase_speed(void) { rgblight_increase_speed_helper(true); }
-void rgblight_increase_speed_noeeprom(void) { rgblight_increase_speed_helper(false); }
-void rgblight_decrease_speed_helper(bool write_to_eeprom) {
- if (rgblight_config.speed > 0) rgblight_config.speed--;
- // RGBLIGHT_SPLIT_SET_CHANGE_HSVS; // NEED??
- if (write_to_eeprom) {
- eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
- }
-}
-void rgblight_decrease_speed(void) { rgblight_decrease_speed_helper(true); }
-void rgblight_decrease_speed_noeeprom(void) { rgblight_decrease_speed_helper(false); }
-
-void rgblight_sethsv_noeeprom_old(uint8_t hue, uint8_t sat, uint8_t val) {
- if (rgblight_config.enable) {
- // MxSS custom code
- fled_hs[0].hue = fled_hs[1].hue = hue;
- fled_hs[0].sat = fled_hs[1].sat = sat;
-
- LED_TYPE tmp_led;
- sethsv(hue, sat, val, &tmp_led);
- rgblight_setrgb(tmp_led.r, tmp_led.g, tmp_led.b);
- }
-}
-
-void rgblight_sethsv_eeprom_helper(uint8_t hue, uint8_t sat, uint8_t val, bool write_to_eeprom) {
- if (rgblight_config.enable) {
- rgblight_status.base_mode = mode_base_table[rgblight_config.mode];
- if (rgblight_config.mode == RGBLIGHT_MODE_STATIC_LIGHT) {
- // same static color
- LED_TYPE tmp_led;
- sethsv(hue, sat, val, &tmp_led);
-
- // MxSS custom
- // Cache hue/sat for rgb
- fled_hs[0].hue = fled_hs[1].hue = hue;
- fled_hs[0].sat = fled_hs[1].sat = sat;
-
- rgblight_setrgb(tmp_led.r, tmp_led.g, tmp_led.b);
- } else {
- // all LEDs in same color
- if (1 == 0) { // dummy
- }
-#ifdef RGBLIGHT_EFFECT_BREATHING
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_BREATHING) {
- // breathing mode, ignore the change of val, use in memory value instead
- val = rgblight_config.val;
- }
-#endif
-#ifdef RGBLIGHT_EFFECT_RAINBOW_MOOD
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_RAINBOW_MOOD) {
- // rainbow mood, ignore the change of hue
- hue = rgblight_config.hue;
- }
-#endif
-#ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_RAINBOW_SWIRL) {
- // rainbow swirl, ignore the change of hue
- hue = rgblight_config.hue;
- }
-#endif
-#ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_STATIC_GRADIENT) {
- // static gradient
- uint8_t delta = rgblight_config.mode - rgblight_status.base_mode;
- bool direction = (delta % 2) == 0;
-# ifdef __AVR__
- // probably due to how pgm_read_word is defined for ARM, but the ARM compiler really hates this line
- uint8_t range = pgm_read_word(&RGBLED_GRADIENT_RANGES[delta / 2]);
-# else
- uint8_t range = RGBLED_GRADIENT_RANGES[delta / 2];
-# endif
- for (uint8_t i = 0; i < rgblight_ranges.effect_num_leds; i++) {
- uint8_t _hue = ((uint16_t)i * (uint16_t)range) / rgblight_ranges.effect_num_leds;
- if (direction) {
- _hue = hue + _hue;
- } else {
- _hue = hue - _hue;
- }
- dprintf("rgblight rainbow set hsv: %d,%d,%d,%u\n", i, _hue, direction, range);
- sethsv(_hue, sat, val, (LED_TYPE *)&led[i + rgblight_ranges.effect_start_pos]);
- }
- rgblight_set();
- }
-#endif
- }
-#ifdef RGBLIGHT_SPLIT
- if (rgblight_config.hue != hue || rgblight_config.sat != sat || rgblight_config.val != val) {
- RGBLIGHT_SPLIT_SET_CHANGE_HSVS;
- }
-#endif
- rgblight_config.hue = hue;
- rgblight_config.sat = sat;
- rgblight_config.val = val;
- if (write_to_eeprom) {
- eeconfig_update_rgblight(rgblight_config.raw);
- dprintf("rgblight set hsv [EEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
- } else {
- dprintf("rgblight set hsv [NOEEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
- }
- }
-}
-
-void rgblight_sethsv(uint8_t hue, uint8_t sat, uint8_t val) { rgblight_sethsv_eeprom_helper(hue, sat, val, true); }
-
-void rgblight_sethsv_noeeprom(uint8_t hue, uint8_t sat, uint8_t val) { rgblight_sethsv_eeprom_helper(hue, sat, val, false); }
-
-uint8_t rgblight_get_speed(void) { return rgblight_config.speed; }
-
-void rgblight_set_speed_eeprom_helper(uint8_t speed, bool write_to_eeprom) {
- rgblight_config.speed = speed;
- if (write_to_eeprom) {
- eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
- dprintf("rgblight set speed [EEPROM]: %u\n", rgblight_config.speed);
- } else {
- dprintf("rgblight set speed [NOEEPROM]: %u\n", rgblight_config.speed);
- }
-}
-
-void rgblight_set_speed(uint8_t speed) { rgblight_set_speed_eeprom_helper(speed, true); }
-
-void rgblight_set_speed_noeeprom(uint8_t speed) { rgblight_set_speed_eeprom_helper(speed, false); }
-
-uint8_t rgblight_get_hue(void) { return rgblight_config.hue; }
-
-uint8_t rgblight_get_sat(void) { return rgblight_config.sat; }
-
-uint8_t rgblight_get_val(void) { return rgblight_config.val; }
-
-HSV rgblight_get_hsv(void) { return (HSV){rgblight_config.hue, rgblight_config.sat, rgblight_config.val}; }
-
-void rgblight_setrgb(uint8_t r, uint8_t g, uint8_t b) {
- if (!rgblight_config.enable) {
- return;
- }
-
- for (uint8_t i = rgblight_ranges.effect_start_pos; i < rgblight_ranges.effect_end_pos; i++) {
- led[i].r = r;
- led[i].g = g;
- led[i].b = b;
-#ifdef RGBW
- led[i].w = 0;
-#endif
- }
- rgblight_set();
-}
-
-void rgblight_setrgb_at(uint8_t r, uint8_t g, uint8_t b, uint8_t index) {
- if (!rgblight_config.enable || index >= RGBLED_NUM) {
- return;
- }
-
- led[index].r = r;
- led[index].g = g;
- led[index].b = b;
-#ifdef RGBW
- led[index].w = 0;
-#endif
- rgblight_set();
-}
-
-void rgblight_sethsv_at(uint8_t hue, uint8_t sat, uint8_t val, uint8_t index) {
- if (!rgblight_config.enable) {
- return;
- }
-
- LED_TYPE tmp_led;
- sethsv(hue, sat, val, &tmp_led);
- rgblight_setrgb_at(tmp_led.r, tmp_led.g, tmp_led.b, index);
-}
-
-#if defined(RGBLIGHT_EFFECT_BREATHING) || defined(RGBLIGHT_EFFECT_RAINBOW_MOOD) || defined(RGBLIGHT_EFFECT_RAINBOW_SWIRL) || defined(RGBLIGHT_EFFECT_SNAKE) || defined(RGBLIGHT_EFFECT_KNIGHT) || defined(RGBLIGHT_EFFECT_TWINKLE)
-
-static uint8_t get_interval_time(const uint8_t *default_interval_address, uint8_t velocikey_min, uint8_t velocikey_max) {
- return
-# ifdef VELOCIKEY_ENABLE
- velocikey_enabled() ? velocikey_match_speed(velocikey_min, velocikey_max) :
-# endif
- pgm_read_byte(default_interval_address);
-}
-
-#endif
-
-void rgblight_setrgb_range(uint8_t r, uint8_t g, uint8_t b, uint8_t start, uint8_t end) {
- if (!rgblight_config.enable || start < 0 || start >= end || end > RGBLED_NUM) {
- return;
- }
-
- for (uint8_t i = start; i < end; i++) {
- led[i].r = r;
- led[i].g = g;
- led[i].b = b;
-#ifdef RGBW
- led[i].w = 0;
-#endif
- }
- rgblight_set();
- wait_ms(1);
-}
-
-void rgblight_sethsv_range(uint8_t hue, uint8_t sat, uint8_t val, uint8_t start, uint8_t end) {
- if (!rgblight_config.enable) {
- return;
- }
-
- LED_TYPE tmp_led;
- sethsv(hue, sat, val, &tmp_led);
- rgblight_setrgb_range(tmp_led.r, tmp_led.g, tmp_led.b, start, end);
-}
-
-#ifndef RGBLIGHT_SPLIT
-void rgblight_setrgb_master(uint8_t r, uint8_t g, uint8_t b) { rgblight_setrgb_range(r, g, b, 0, (uint8_t)RGBLED_NUM / 2); }
-
-void rgblight_setrgb_slave(uint8_t r, uint8_t g, uint8_t b) { rgblight_setrgb_range(r, g, b, (uint8_t)RGBLED_NUM / 2, (uint8_t)RGBLED_NUM); }
-
-void rgblight_sethsv_master(uint8_t hue, uint8_t sat, uint8_t val) { rgblight_sethsv_range(hue, sat, val, 0, (uint8_t)RGBLED_NUM / 2); }
-
-void rgblight_sethsv_slave(uint8_t hue, uint8_t sat, uint8_t val) { rgblight_sethsv_range(hue, sat, val, (uint8_t)RGBLED_NUM / 2, (uint8_t)RGBLED_NUM); }
-#endif // ifndef RGBLIGHT_SPLIT
-
-#ifdef RGBLIGHT_LAYERS
-void rgblight_set_layer_state(uint8_t layer, bool enabled) {
- rgblight_layer_mask_t mask = 1 << layer;
- if (enabled) {
- rgblight_status.enabled_layer_mask |= mask;
- } else {
- rgblight_status.enabled_layer_mask &= ~mask;
- }
- RGBLIGHT_SPLIT_SET_CHANGE_LAYERS;
- // Static modes don't have a ticker running to update the LEDs
- if (rgblight_status.timer_enabled == false) {
- rgblight_mode_noeeprom(rgblight_config.mode);
- }
-
-# ifdef RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
- // If not enabled, then nothing else will actually set the LEDs...
- if (!rgblight_config.enable) {
- rgblight_set();
- }
-# endif
-}
-
-bool rgblight_get_layer_state(uint8_t layer) {
- rgblight_layer_mask_t mask = 1 << layer;
- return (rgblight_status.enabled_layer_mask & mask) != 0;
-}
-
-// Write any enabled LED layers into the buffer
-static void rgblight_layers_write(void) {
- uint8_t i = 0;
- // For each layer
- for (const rgblight_segment_t *const *layer_ptr = rgblight_layers; i < RGBLIGHT_MAX_LAYERS; layer_ptr++, i++) {
- if (!rgblight_get_layer_state(i)) {
- continue; // Layer is disabled
- }
- const rgblight_segment_t *segment_ptr = pgm_read_ptr(layer_ptr);
- if (segment_ptr == NULL) {
- break; // No more layers
- }
- // For each segment
- while (1) {
- rgblight_segment_t segment;
- memcpy_P(&segment, segment_ptr, sizeof(rgblight_segment_t));
- if (segment.index == RGBLIGHT_END_SEGMENT_INDEX) {
- break; // No more segments
- }
- // Write segment.count LEDs
- LED_TYPE *const limit = &led[MIN(segment.index + segment.count, RGBLED_NUM)];
- for (LED_TYPE *led_ptr = &led[segment.index]; led_ptr < limit; led_ptr++) {
- sethsv(segment.hue, segment.sat, segment.val, led_ptr);
- }
- segment_ptr++;
- }
- }
-}
-
-# ifdef RGBLIGHT_LAYER_BLINK
-rgblight_layer_mask_t _blinked_layer_mask = 0;
-uint16_t _blink_duration = 0;
-static uint16_t _blink_timer;
-
-void rgblight_blink_layer(uint8_t layer, uint16_t duration_ms) {
- rgblight_set_layer_state(layer, true);
- _blinked_layer_mask |= 1 << layer;
- _blink_timer = timer_read();
- _blink_duration = duration_ms;
-}
-
-void rgblight_unblink_layers(void) {
- if (_blinked_layer_mask != 0 && timer_elapsed(_blink_timer) > _blink_duration) {
- for (uint8_t layer = 0; layer < RGBLIGHT_MAX_LAYERS; layer++) {
- if ((_blinked_layer_mask & 1 << layer) != 0) {
- rgblight_set_layer_state(layer, false);
- }
- }
- _blinked_layer_mask = 0;
- }
-}
-# endif
-
-#endif
-
-__attribute__((weak)) void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds) { ws2812_setleds(start_led, num_leds); }
-
-#ifndef RGBLIGHT_CUSTOM_DRIVER
-void rgblight_set(void) {
- LED_TYPE *start_led;
- uint8_t num_leds = rgblight_ranges.clipping_num_leds;
-
- if (!rgblight_config.enable) {
- for (uint8_t i = rgblight_ranges.effect_start_pos; i < rgblight_ranges.effect_end_pos; i++) {
- if (i == RGBLIGHT_FLED1 && i == RGBLIGHT_FLED2)
- continue;
-
- led[i].r = 0;
- led[i].g = 0;
- led[i].b = 0;
-# ifdef RGBW
- led[i].w = 0;
-# endif
- }
- }
-
-# ifdef RGBLIGHT_LAYERS
- if (rgblight_layers != NULL
-# ifndef RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
- && rgblight_config.enable
-# endif
- ) {
- rgblight_layers_write();
- }
-# endif
-
-# ifdef RGBLIGHT_LED_MAP
- LED_TYPE led0[RGBLED_NUM];
- for (uint8_t i = 0; i < RGBLED_NUM; i++) {
- led0[i] = led[pgm_read_byte(&led_map[i])];
- }
- start_led = led0 + rgblight_ranges.clipping_start_pos;
-# else
- start_led = led + rgblight_ranges.clipping_start_pos;
-# endif
-
-# ifdef RGBW
- for (uint8_t i = 0; i < num_leds; i++) {
- convert_rgb_to_rgbw(&start_led[i]);
- }
-# endif
- // MxSS custom
- switch (fled_mode) {
- case FLED_OFF:
- setrgb(0, 0, 0, &led[RGBLIGHT_FLED1]);
- setrgb(0, 0, 0, &led[RGBLIGHT_FLED2]);
- break;
-
- case FLED_INDI:
- copyrgb(&fleds[0], &led[RGBLIGHT_FLED1]);
- copyrgb(&fleds[1], &led[RGBLIGHT_FLED2]);
- break;
-
- case FLED_RGB:
- if (fled_hs[0].hue == 0 && fled_hs[0].hue == 0 &&
- (rgblight_status.base_mode == RGBLIGHT_MODE_SNAKE ||
- rgblight_status.base_mode == RGBLIGHT_MODE_KNIGHT))
- setrgb(0, 0, 0, &led[RGBLIGHT_FLED1]);
- else
- sethsv(fled_hs[0].hue, fled_hs[0].sat, fled_val, &led[RGBLIGHT_FLED1]);
-
- if (fled_hs[1].hue == 0 && fled_hs[1].hue == 0 &&
- (rgblight_status.base_mode == RGBLIGHT_MODE_SNAKE ||
- rgblight_status.base_mode == RGBLIGHT_MODE_KNIGHT))
- setrgb(0, 0, 0, &led[RGBLIGHT_FLED2]);
- else
- sethsv(fled_hs[1].hue, fled_hs[1].sat, fled_val, &led[RGBLIGHT_FLED2]);
- break;
- default:
- break;
- }
-
- rgblight_call_driver(start_led, num_leds);
-}
-#endif
-
-#ifdef RGBLIGHT_SPLIT
-/* for split keyboard master side */
-uint8_t rgblight_get_change_flags(void) { return rgblight_status.change_flags; }
-
-void rgblight_clear_change_flags(void) { rgblight_status.change_flags = 0; }
-
-void rgblight_get_syncinfo(rgblight_syncinfo_t *syncinfo) {
- syncinfo->config = rgblight_config;
- syncinfo->status = rgblight_status;
-}
-
-/* for split keyboard slave side */
-void rgblight_update_sync(rgblight_syncinfo_t *syncinfo, bool write_to_eeprom) {
-# ifdef RGBLIGHT_LAYERS
- if (syncinfo->status.change_flags & RGBLIGHT_STATUS_CHANGE_LAYERS) {
- rgblight_status.enabled_layer_mask = syncinfo->status.enabled_layer_mask;
- }
-# endif
- if (syncinfo->status.change_flags & RGBLIGHT_STATUS_CHANGE_MODE) {
- if (syncinfo->config.enable) {
- rgblight_config.enable = 1; // == rgblight_enable_noeeprom();
- rgblight_mode_eeprom_helper(syncinfo->config.mode, write_to_eeprom);
- } else {
- rgblight_disable_noeeprom();
- }
- }
- if (syncinfo->status.change_flags & RGBLIGHT_STATUS_CHANGE_HSVS) {
- rgblight_sethsv_eeprom_helper(syncinfo->config.hue, syncinfo->config.sat, syncinfo->config.val, write_to_eeprom);
- // rgblight_config.speed = config->speed; // NEED???
- }
-# ifdef RGBLIGHT_USE_TIMER
- if (syncinfo->status.change_flags & RGBLIGHT_STATUS_CHANGE_TIMER) {
- if (syncinfo->status.timer_enabled) {
- rgblight_timer_enable();
- } else {
- rgblight_timer_disable();
- }
- }
-# ifndef RGBLIGHT_SPLIT_NO_ANIMATION_SYNC
- if (syncinfo->status.change_flags & RGBLIGHT_STATUS_ANIMATION_TICK) {
- animation_status.restart = true;
- }
-# endif /* RGBLIGHT_SPLIT_NO_ANIMATION_SYNC */
-# endif /* RGBLIGHT_USE_TIMER */
-}
-#endif /* RGBLIGHT_SPLIT */
-
-#ifdef RGBLIGHT_USE_TIMER
-
-typedef void (*effect_func_t)(animation_status_t *anim);
-
-// Animation timer -- use system timer (AVR Timer0)
-void rgblight_timer_init(void) {
- // OLD!!!! Animation timer -- AVR Timer3
- // static uint8_t rgblight_timer_is_init = 0;
- // if (rgblight_timer_is_init) {
- // return;
- // }
- // rgblight_timer_is_init = 1;
- // /* Timer 3 setup */
- // TCCR3B = _BV(WGM32) // CTC mode OCR3A as TOP
- // | _BV(CS30); // Clock selelct: clk/1
- // /* Set TOP value */
- // uint8_t sreg = SREG;
- // cli();
- // OCR3AH = (RGBLED_TIMER_TOP >> 8) & 0xff;
- // OCR3AL = RGBLED_TIMER_TOP & 0xff;
- // SREG = sreg;
-
- rgblight_status.timer_enabled = false;
- RGBLIGHT_SPLIT_SET_CHANGE_TIMER_ENABLE;
-}
-void rgblight_timer_enable(void) {
- if (!is_static_effect(rgblight_config.mode)) {
- rgblight_status.timer_enabled = true;
- }
- animation_status.last_timer = timer_read();
- RGBLIGHT_SPLIT_SET_CHANGE_TIMER_ENABLE;
- dprintf("rgblight timer enabled.\n");
-}
-void rgblight_timer_disable(void) {
- // MxSS custom code
- if (fled_mode != FLED_RGB) {
- rgblight_status.timer_enabled = false;
- RGBLIGHT_SPLIT_SET_CHANGE_TIMER_ENABLE;
- dprintf("rgblight timer disable.\n");
- }
-}
-void rgblight_timer_toggle(void) {
- dprintf("rgblight timer toggle.\n");
- if (rgblight_status.timer_enabled) {
- rgblight_timer_disable();
- } else {
- rgblight_timer_enable();
- }
-}
-
-void rgblight_show_solid_color(uint8_t r, uint8_t g, uint8_t b) {
- rgblight_enable();
- rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
- rgblight_setrgb(r, g, b);
-}
-
-static void rgblight_effect_dummy(animation_status_t *anim) {
- // do nothing
- /********
- dprintf("rgblight_task() what happened?\n");
- dprintf("is_static_effect %d\n", is_static_effect(rgblight_config.mode));
- dprintf("mode = %d, base_mode = %d, timer_enabled %d, ",
- rgblight_config.mode, rgblight_status.base_mode,
- rgblight_status.timer_enabled);
- dprintf("last_timer = %d\n",anim->last_timer);
- **/
-}
-
-void rgblight_task(void) {
- if (rgblight_status.timer_enabled) {
- effect_func_t effect_func = rgblight_effect_dummy;
- uint16_t interval_time = 2000; // dummy interval
- uint8_t delta = rgblight_config.mode - rgblight_status.base_mode;
- animation_status.delta = delta;
-
- // static light mode, do nothing here
- if (1 == 0) { // dummy
- }
-# ifdef RGBLIGHT_EFFECT_BREATHING
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_BREATHING) {
- // breathing mode
- interval_time = get_interval_time(&RGBLED_BREATHING_INTERVALS[delta], 1, 100);
- effect_func = rgblight_effect_breathing;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_RAINBOW_MOOD
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_RAINBOW_MOOD) {
- // rainbow mood mode
- interval_time = get_interval_time(&RGBLED_RAINBOW_MOOD_INTERVALS[delta], 5, 100);
- effect_func = rgblight_effect_rainbow_mood;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_RAINBOW_SWIRL) {
- // rainbow swirl mode
- interval_time = get_interval_time(&RGBLED_RAINBOW_SWIRL_INTERVALS[delta / 2], 1, 100);
- effect_func = rgblight_effect_rainbow_swirl;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_SNAKE
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_SNAKE) {
- // snake mode
- interval_time = get_interval_time(&RGBLED_SNAKE_INTERVALS[delta / 2], 1, 200);
- effect_func = rgblight_effect_snake;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_KNIGHT
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_KNIGHT) {
- // knight mode
- interval_time = get_interval_time(&RGBLED_KNIGHT_INTERVALS[delta], 5, 100);
- effect_func = rgblight_effect_knight;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_CHRISTMAS
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_CHRISTMAS) {
- // christmas mode
- interval_time = RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL;
- effect_func = (effect_func_t)rgblight_effect_christmas;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_RGB_TEST
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_RGB_TEST) {
- // RGB test mode
- interval_time = pgm_read_word(&RGBLED_RGBTEST_INTERVALS[0]);
- effect_func = (effect_func_t)rgblight_effect_rgbtest;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_ALTERNATING
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_ALTERNATING) {
- interval_time = 500;
- effect_func = (effect_func_t)rgblight_effect_alternating;
- }
-# endif
-# ifdef RGBLIGHT_EFFECT_TWINKLE
- else if (rgblight_status.base_mode == RGBLIGHT_MODE_TWINKLE) {
- interval_time = get_interval_time(&RGBLED_TWINKLE_INTERVALS[delta % 3], 5, 50);
- effect_func = (effect_func_t)rgblight_effect_twinkle;
- }
-# endif
- if (animation_status.restart) {
- animation_status.restart = false;
- animation_status.last_timer = timer_read() - interval_time - 1;
- animation_status.pos16 = 0; // restart signal to local each effect
- }
- if (timer_elapsed(animation_status.last_timer) >= interval_time) {
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- static uint16_t report_last_timer = 0;
- static bool tick_flag = false;
- uint16_t oldpos16;
- if (tick_flag) {
- tick_flag = false;
- if (timer_elapsed(report_last_timer) >= 30000) {
- report_last_timer = timer_read();
- dprintf("rgblight animation tick report to slave\n");
- RGBLIGHT_SPLIT_ANIMATION_TICK;
- }
- }
- oldpos16 = animation_status.pos16;
-# endif
- animation_status.last_timer += interval_time;
- effect_func(&animation_status);
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- if (animation_status.pos16 == 0 && oldpos16 != 0) {
- tick_flag = true;
- }
-# endif
- }
- }
-
-# ifdef RGBLIGHT_LAYER_BLINK
- rgblight_unblink_layers();
-# endif
-}
-
-#endif /* RGBLIGHT_USE_TIMER */
-
-// Effects
-#ifdef RGBLIGHT_EFFECT_BREATHING
-
-# ifndef RGBLIGHT_EFFECT_BREATHE_CENTER
-# ifndef RGBLIGHT_BREATHE_TABLE_SIZE
-# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256 or 128 or 64
-# endif
-# include <rgblight_breathe_table.h>
-# endif
-
-__attribute__((weak)) const uint8_t RGBLED_BREATHING_INTERVALS[] PROGMEM = {30, 20, 10, 5};
-
-void rgblight_effect_breathing(animation_status_t *anim) {
- float val;
-
- // http://sean.voisen.org/blog/2011/10/breathing-led-with-arduino/
-# ifdef RGBLIGHT_EFFECT_BREATHE_TABLE
- val = pgm_read_byte(&rgblight_effect_breathe_table[anim->pos / table_scale]);
-# else
- val = (exp(sin((anim->pos / 255.0) * M_PI)) - RGBLIGHT_EFFECT_BREATHE_CENTER / M_E) * (RGBLIGHT_EFFECT_BREATHE_MAX / (M_E - 1 / M_E));
-# endif
- rgblight_sethsv_noeeprom_old(rgblight_config.hue, rgblight_config.sat, val);
- anim->pos = (anim->pos + 1);
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_RAINBOW_MOOD
-__attribute__((weak)) const uint8_t RGBLED_RAINBOW_MOOD_INTERVALS[] PROGMEM = {120, 60, 30};
-
-void rgblight_effect_rainbow_mood(animation_status_t *anim) {
- rgblight_sethsv_noeeprom_old(anim->current_hue, rgblight_config.sat, rgblight_config.val);
- anim->current_hue++;
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL
-# ifndef RGBLIGHT_RAINBOW_SWIRL_RANGE
-# define RGBLIGHT_RAINBOW_SWIRL_RANGE 255
-# endif
-
-__attribute__((weak)) const uint8_t RGBLED_RAINBOW_SWIRL_INTERVALS[] PROGMEM = {100, 50, 20};
-
-void rgblight_effect_rainbow_swirl(animation_status_t *anim) {
- uint8_t hue;
- uint8_t i;
-
- for (i = 0; i < rgblight_ranges.effect_num_leds; i++) {
- hue = (RGBLIGHT_RAINBOW_SWIRL_RANGE / rgblight_ranges.effect_num_leds * i + anim->current_hue);
- sethsv(hue, rgblight_config.sat, rgblight_config.val, (LED_TYPE *)&led[i + rgblight_ranges.effect_start_pos]);
- }
- rgblight_set();
-
- if (anim->delta % 2) {
- anim->current_hue++;
- } else {
- anim->current_hue--;
- }
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_SNAKE
-__attribute__((weak)) const uint8_t RGBLED_SNAKE_INTERVALS[] PROGMEM = {100, 50, 20};
-
-void rgblight_effect_snake(animation_status_t *anim) {
- static uint8_t pos = 0;
- uint8_t i, j;
- int8_t k;
- int8_t increment = 1;
-
- if (anim->delta % 2) {
- increment = -1;
- }
-
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- if (anim->pos == 0) { // restart signal
- if (increment == 1) {
- pos = rgblight_ranges.effect_num_leds - 1;
- } else {
- pos = 0;
- }
- anim->pos = 1;
- }
-# endif
-
- // MxSS custom
- fled_hs[0].hue = fled_hs[1].hue = 0;
- fled_hs[0].sat = fled_hs[1].sat = 0;
-
- for (i = 0; i < rgblight_ranges.effect_num_leds; i++) {
- LED_TYPE *ledp = led + i + rgblight_ranges.effect_start_pos;
- ledp->r = 0;
- ledp->g = 0;
- ledp->b = 0;
-# ifdef RGBW
- ledp->w = 0;
-# endif
- for (j = 0; j < RGBLIGHT_EFFECT_SNAKE_LENGTH; j++) {
- k = pos + j * increment;
- if (k > RGBLED_NUM) {
- k = k % RGBLED_NUM;
- }
- if (k < 0) {
- k = k + rgblight_ranges.effect_num_leds;
- }
- if (i == k) {
- sethsv(rgblight_config.hue, rgblight_config.sat, (uint8_t)(rgblight_config.val * (RGBLIGHT_EFFECT_SNAKE_LENGTH - j) / RGBLIGHT_EFFECT_SNAKE_LENGTH), ledp);
- }
- }
- }
- rgblight_set();
- if (increment == 1) {
- if (pos - 1 < 0) {
- pos = rgblight_ranges.effect_num_leds - 1;
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- anim->pos = 0;
-# endif
- } else {
- pos -= 1;
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- anim->pos = 1;
-# endif
- }
- } else {
- pos = (pos + 1) % rgblight_ranges.effect_num_leds;
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- anim->pos = pos;
-# endif
- }
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_KNIGHT
-__attribute__((weak)) const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {127, 63, 31};
-
-void rgblight_effect_knight(animation_status_t *anim) {
- static int8_t low_bound = 0;
- static int8_t high_bound = RGBLIGHT_EFFECT_KNIGHT_LENGTH - 1;
- static int8_t increment = 1;
- uint8_t i, cur;
-
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- if (anim->pos == 0) { // restart signal
- anim->pos = 1;
- low_bound = 0;
- high_bound = RGBLIGHT_EFFECT_KNIGHT_LENGTH - 1;
- increment = 1;
- }
-# endif
- // Set all the LEDs to 0
- for (i = rgblight_ranges.effect_start_pos; i < rgblight_ranges.effect_end_pos; i++) {
- led[i].r = 0;
- led[i].g = 0;
- led[i].b = 0;
-# ifdef RGBW
- led[i].w = 0;
-# endif
- }
- // Determine which LEDs should be lit up
- for (i = 0; i < RGBLIGHT_EFFECT_KNIGHT_LED_NUM; i++) {
- cur = (i + RGBLIGHT_EFFECT_KNIGHT_OFFSET) % rgblight_ranges.effect_num_leds + rgblight_ranges.effect_start_pos;
-
- if (i >= low_bound && i <= high_bound) {
- sethsv(rgblight_config.hue, rgblight_config.sat, rgblight_config.val, (LED_TYPE *)&led[cur]);
- } else {
- // MxSS custom code
- if (cur == RGBLIGHT_FLED1) {
- fled_hs[0].hue = fled_hs[0].sat = 0;
- } else if (cur == RGBLIGHT_FLED2) {
- fled_hs[1].hue = fled_hs[1].sat = 0;
- }
-
- led[cur].r = 0;
- led[cur].g = 0;
- led[cur].b = 0;
-# ifdef RGBW
- led[cur].w = 0;
-# endif
- }
- }
- rgblight_set();
-
- // Move from low_bound to high_bound changing the direction we increment each
- // time a boundary is hit.
- low_bound += increment;
- high_bound += increment;
-
- if (high_bound <= 0 || low_bound >= RGBLIGHT_EFFECT_KNIGHT_LED_NUM - 1) {
- increment = -increment;
-# if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
- if (increment == 1) {
- anim->pos = 0;
- }
-# endif
- }
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_CHRISTMAS
-# define CUBED(x) ((x) * (x) * (x))
-
-/**
- * Christmas lights effect, with a smooth animation between red & green.
- */
-void rgblight_effect_christmas(animation_status_t *anim) {
- static int8_t increment = 1;
- const uint8_t max_pos = 32;
- const uint8_t hue_green = 85;
-
- uint32_t xa;
- uint8_t hue, val;
- uint8_t i;
-
- // The effect works by animating anim->pos from 0 to 32 and back to 0.
- // The pos is used in a cubic bezier formula to ease-in-out between red and green, leaving the interpolated colors visible as short as possible.
- xa = CUBED((uint32_t)anim->pos);
- hue = ((uint32_t)hue_green) * xa / (xa + CUBED((uint32_t)(max_pos - anim->pos)));
- // Additionally, these interpolated colors get shown with a slightly darker value, to make them less prominent than the main colors.
- val = 255 - (3 * (hue < hue_green / 2 ? hue : hue_green - hue) / 2);
-
- for (i = 0; i < rgblight_ranges.effect_num_leds; i++) {
- uint8_t local_hue = (i / RGBLIGHT_EFFECT_CHRISTMAS_STEP) % 2 ? hue : hue_green - hue;
- sethsv(local_hue, rgblight_config.sat, val, (LED_TYPE *)&led[i + rgblight_ranges.effect_start_pos]);
- }
- rgblight_set();
-
- if (anim->pos == 0) {
- increment = 1;
- } else if (anim->pos == max_pos) {
- increment = -1;
- }
- anim->pos += increment;
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_RGB_TEST
-__attribute__((weak)) const uint16_t RGBLED_RGBTEST_INTERVALS[] PROGMEM = {1024};
-
-void rgblight_effect_rgbtest(animation_status_t *anim) {
- static uint8_t maxval = 0;
- uint8_t g;
- uint8_t r;
- uint8_t b;
-
- if (maxval == 0) {
- LED_TYPE tmp_led;
- sethsv(0, 255, RGBLIGHT_LIMIT_VAL, &tmp_led);
- maxval = tmp_led.r;
- }
- g = r = b = 0;
- switch (anim->pos) {
- // MxSS custom code
- case 0:
- r = maxval;
- fled_hs[0].hue = 0;
- fled_hs[0].sat = 255;
- fled_hs[1].hue = 0;
- fled_hs[1].sat = 255;
- break;
- case 1:
- g = maxval;
- fled_hs[0].hue = 85;
- fled_hs[0].sat = 255;
- fled_hs[1].hue = 85;
- fled_hs[1].sat = 255;
- break;
- case 2:
- b = maxval;
- fled_hs[0].hue = 170;
- fled_hs[0].sat = 255;
- fled_hs[1].hue = 170;
- fled_hs[1].sat = 255;
- break;
- }
- rgblight_setrgb(r, g, b);
- anim->pos = (anim->pos + 1) % 3;
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_ALTERNATING
-void rgblight_effect_alternating(animation_status_t *anim) {
- for (int i = 0; i < rgblight_ranges.effect_num_leds; i++) {
- LED_TYPE *ledp = led + i + rgblight_ranges.effect_start_pos;
- if (i < rgblight_ranges.effect_num_leds / 2 && anim->pos) {
- sethsv(rgblight_config.hue, rgblight_config.sat, rgblight_config.val, ledp);
- } else if (i >= rgblight_ranges.effect_num_leds / 2 && !anim->pos) {
- sethsv(rgblight_config.hue, rgblight_config.sat, rgblight_config.val, ledp);
- } else {
- sethsv(rgblight_config.hue, rgblight_config.sat, 0, ledp);
- }
- }
- rgblight_set();
- anim->pos = (anim->pos + 1) % 2;
-}
-#endif
-
-#ifdef RGBLIGHT_EFFECT_TWINKLE
-__attribute__((weak)) const uint8_t RGBLED_TWINKLE_INTERVALS[] PROGMEM = {50, 25, 10};
-
-typedef struct PACKED {
- HSV hsv;
- uint8_t life;
- bool up;
-} TwinkleState;
-
-static TwinkleState led_twinkle_state[RGBLED_NUM];
-
-void rgblight_effect_twinkle(animation_status_t *anim) {
- bool random_color = anim->delta / 3;
- bool restart = anim->pos == 0;
- anim->pos = 1;
-
- for (uint8_t i = 0; i < rgblight_ranges.effect_num_leds; i++) {
- TwinkleState *t = &(led_twinkle_state[i]);
- HSV * c = &(t->hsv);
- if (restart) {
- // Restart
- t->life = 0;
- t->hsv.v = 0;
- } else if (t->life) {
- // This LED is already on, either brightening or dimming
- t->life--;
- uint8_t on = t->up ? RGBLIGHT_EFFECT_TWINKLE_LIFE - t->life : t->life;
- c->v = (uint16_t)rgblight_config.val * on / RGBLIGHT_EFFECT_TWINKLE_LIFE;
- if (t->life == 0 && t->up) {
- t->up = false;
- t->life = RGBLIGHT_EFFECT_TWINKLE_LIFE;
- }
- if (!random_color) {
- c->h = rgblight_config.hue;
- c->s = rgblight_config.sat;
- }
- } else if (rand() < RAND_MAX * RGBLIGHT_EFFECT_TWINKLE_PROBABILITY) {
- // This LED is off, but was randomly selected to start brightening
- c->h = random_color ? rand() % 0xFF : rgblight_config.hue;
- c->s = random_color ? (rand() % (rgblight_config.sat / 2)) + (rgblight_config.sat / 2) : rgblight_config.sat;
- c->v = 0;
- t->life = RGBLIGHT_EFFECT_TWINKLE_LIFE;
- t->up = true;
- } else {
- // This LED is off, and was NOT selected to start brightening
- }
-
- LED_TYPE *ledp = led + i + rgblight_ranges.effect_start_pos;
- sethsv(c->h, c->s, c->v, ledp);
- }
-
- rgblight_set();
-}
-#endif
diff --git a/keyboards/mxss/rules.mk b/keyboards/mxss/rules.mk
index cc4f0ca926..6e7633bfe0 100644
--- a/keyboards/mxss/rules.mk
+++ b/keyboards/mxss/rules.mk
@@ -1,22 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-
-SRC += mxss_frontled.c
-
-# Remove the common RGB light code and use my iteration instead
-COMMON_VPATH += $(QUANTUM_DIR)/rgblight
-OPT_DEFS += -DRGBLIGHT_ENABLE
-SRC += rgblight.c
-SRC += $(QUANTUM_DIR)/color.c
-WS2812_DRIVER_REQUIRED = yes
-CIE1931_CURVE = yes
-RGB_KEYCODES_ENABLE = yes
+# This file intentionally left blank
diff --git a/keyboards/mxss/templates/keymap.c b/keyboards/mxss/templates/keymap.c
deleted file mode 100644
index e16cf44293..0000000000
--- a/keyboards/mxss/templates/keymap.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2018 REPLACE_WITH_YOUR_NAME
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "mxss_frontled.h"
-
-hs_set caps_color = { .hue = 0, .sat = 255 };
-
-// Colors for layers
-// Format: {hue, saturation}
-// {0, 0} to turn off the LED
-// Add additional rows to handle more layers
-hs_set layer_colors[4] = {
- [0] = {.hue = 0, .sat = 0}, // Color for Layer 0
- [1] = {.hue = 86, .sat = 255}, // Color for Layer 1
- [2] = {.hue = 36, .sat = 255}, // Color for Layer 2
- [3] = {.hue = 185, .sat = 255}, // Color for Layer 3
-};
-size_t lc_size = ARRAY_SIZE(layer_colors);
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-__KEYMAP_GOES_HERE__
-};
diff --git a/keyboards/nack/config.h b/keyboards/nack/config.h
index adb2cf5d87..8ac70be2dc 100644
--- a/keyboards/nack/config.h
+++ b/keyboards/nack/config.h
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
#ifdef RGB_MATRIX_ENABLE
- #define WS2812_SPI SPID1
+ #define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5
#define RGB_MATRIX_LED_COUNT 52
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 128 // Max brightness of LEDs
diff --git a/keyboards/nacly/splitreus62/keymaps/scheiklp/config.h b/keyboards/nacly/splitreus62/keymaps/scheiklp/config.h
deleted file mode 100644
index da8287df64..0000000000
--- a/keyboards/nacly/splitreus62/keymaps/scheiklp/config.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define AUTO_SHIFT_TIMEOUT 100
-#define NO_AUTO_SHIFT_SPECIAL
-#define NO_AUTO_SHIFT_NUMERIC
-
-// require two taps for a TT layer switch (default 5)
-#define TAPPING_TOGGLE 2
-
-// Mouse control
-// constant mode (velocity)
-#define MK_3_SPEED
-// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
-
-// Cursor offset per movement (unmodified)
-#define MK_C_OFFSET_UNMOD 16
-// Time between cursor movements (unmodified)
-#define MK_C_INTERVAL_UNMOD 10
-/* #define MK_C_INTERVAL_UNMOD 16 */
-
-// Cursor offset per movement (KC_ACL0)
-#define MK_C_OFFSET_0 1
-// Time between cursor movements (KC_ACL0)
-#define MK_C_INTERVAL_0 32
-
-// Cursor offset per movement (KC_ACL1)
-#define MK_C_OFFSET_1 4
-// Time between cursor movements (KC_ACL1)
-#define MK_C_INTERVAL_1 16
-
-// Cursor offset per movement (KC_ACL2)
-#define MK_C_OFFSET_2 20
-/* #define MK_C_OFFSET_2 32 */
-// Time between cursor movements (KC_ACL2)
-#define MK_C_INTERVAL_2 16
diff --git a/keyboards/nacly/splitreus62/keymaps/scheiklp/keymap.c b/keyboards/nacly/splitreus62/keymaps/scheiklp/keymap.c
deleted file mode 100644
index f2d839b358..0000000000
--- a/keyboards/nacly/splitreus62/keymaps/scheiklp/keymap.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2019 NaCly
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-// Layer shorthand
-#define _1 0
-#define _3 1
-#define _4 2
-#define _7 3
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_1] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_K, KC_DOT, KC_O, KC_COMM, N_Y, KC_V, KC_G, KC_C, KC_L, N_SS, N_Z,
- MO(_3), KC_H, KC_A, KC_E, KC_I, KC_U, KC_D, KC_T, KC_R, KC_N, KC_S, KC_F,
- KC_LSFT, KC_X, KC_Q, N_AE, N_UE, N_OE, KC_B, KC_P, KC_W, KC_M, KC_J, KC_RSFT,
- KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_SPC, KC_ENTER, KC_RCTL, MO(_3), MO(_4), KC_TRNS, KC_TRNS, KC_CAPS, TT(_7)
- ),
-
- [_3] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSPC,
- KC_TAB, N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC, N_EXKL, N_LT, N_GT, N_EQ, N_AMP, KC_TRNS,
- KC_TRNS, N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR, N_QUES, N_LPARN, N_RPARN, N_MINS, N_COLN, N_AT,
- KC_LSFT, N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE, N_PLUS, N_PERC, N_QUOT, N_SING, N_SEMI, KC_RSFT,
- KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_SPC, KC_ENTER, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [_4] = LAYOUT(
- KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC,
- KC_TAB, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN, KC_KP_SLASH, KC_7, KC_8, KC_9, KC_KP_MINUS, KC_TRNS,
- KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_KP_ASTERISK, KC_4, KC_5, KC_6, KC_KP_PLUS, KC_TRNS,
- KC_LSFT, KC_ESC, KC_TAB, KC_INS, KC_ENTER, N_UNDO, KC_KP_ENTER, KC_1, KC_2, KC_3, KC_KP_DOT, KC_RSFT,
- KC_LCTL, N_COPY, N_PASTE, KC_LGUI, KC_LALT, KC_0, KC_ENTER, KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [_7] = LAYOUT(
- KC_ESC, KC_TRNS, KC_TRNS, KC_MS_BTN3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TAB, KC_MS_WH_UP, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_WH_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_MS_ACCEL0, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LSFT, KC_MS_ACCEL1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LCTL, KC_MS_ACCEL2, KC_TRNS, KC_LALT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- )
-};
diff --git a/keyboards/nacly/splitreus62/keymaps/scheiklp/rules.mk b/keyboards/nacly/splitreus62/keymaps/scheiklp/rules.mk
deleted file mode 100644
index cbfc44e1bd..0000000000
--- a/keyboards/nacly/splitreus62/keymaps/scheiklp/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-BOOTLOADER = atmel-dfu
-
-# Build Options
-AUTO_SHIFT_ENABLE = yes
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = no # Audio control and System control
-NKRO_ENABLE = yes # USB Nkey Rollover
-SPLIT_KEYBOARD = yes
diff --git a/keyboards/neopad/rev1/rev1.c b/keyboards/neopad/rev1/rev1.c
index 86e47c8932..c8216f4e70 100755
--- a/keyboards/neopad/rev1/rev1.c
+++ b/keyboards/neopad/rev1/rev1.c
@@ -22,10 +22,14 @@ void keyboard_pre_init_kb(void) {
keyboard_pre_init_user();
}
-void shutdown_user(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
// Shutdown LEDs
writePinLow(LED_00);
writePinLow(LED_01);
+ return true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/neson_design/700e/700e.c b/keyboards/neson_design/700e/700e.c
index cf31b6b72b..9def73d6a4 100644
--- a/keyboards/neson_design/700e/700e.c
+++ b/keyboards/neson_design/700e/700e.c
@@ -48,18 +48,18 @@ enum {
// led index
#define ST_LEFT_BEGIN 0
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_LEFT_SIZE 4
#else
#define ST_LEFT_SIZE 2
#endif
#define ST_LEFT_END (ST_LEFT_BEGIN+ST_LEFT_SIZE-1)
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_BEGIN 60
#else
#define ST_RIGHT_BEGIN 30
#endif
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_SIZE 4
#else
#define ST_RIGHT_SIZE 2
@@ -111,7 +111,7 @@ static void self_testing(void)
}
if (rgb_state.index >= ST_LEFT_END) {
- for (int i = rgb_state.index - 1; i < RGB_MATRIX_LED_COUNT - rgb_state.index + 1; i++) {
+ for (int i = rgb_state.index - 1; i < IS31FL3731_LED_COUNT - rgb_state.index + 1; i++) {
is31fl3731_set_color(i, led.r, led.g, led.b);
}
if (rgb_state.index == ST_LEFT_END) {
@@ -173,13 +173,13 @@ static void self_testing(void)
}
break;
case ST_STAGE_3:
- if (rgb_state.index != RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index != IS31FL3731_LED_COUNT/2) {
is31fl3731_set_color_all(0, 0, 0);
}
// light left and right
- if (rgb_state.index == RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index == IS31FL3731_LED_COUNT/2) {
if (rgb_state.duration) {
rgb_state.duration--;
} else {
@@ -207,7 +207,7 @@ static void self_testing(void)
update_ticks();
}
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -294,18 +294,8 @@ void matrix_init_kb(void)
setPinOutput(LED_CAPS_LOCK_PIN);
writePinLow(LED_CAPS_LOCK_PIN);
- i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
-#ifdef DRIVER_ADDR_2
- is31fl3731_init(DRIVER_ADDR_2);
-#endif
- for (int index = 0; index < RGB_MATRIX_LED_COUNT; index++) {
- is31fl3731_set_led_control_register(index, true, true, true);
- }
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_led_control_registers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_init_drivers();
+
update_ticks();
matrix_init_user();
}
@@ -322,7 +312,7 @@ void housekeeping_task_kb(void)
} else if (rgb_state.state == CAPS_ALERT) {
if (rgb_state.alert) {
is31fl3731_set_color_all(ALERM_LED_R, ALERM_LED_G, ALERM_LED_B);
- LED_TYPE leds[4];
+ rgb_led_t leds[4];
for (int i = 0; i < 4; i++) {
leds[i].r = ALERM_LED_G;
leds[i].g = ALERM_LED_R;
@@ -331,7 +321,7 @@ void housekeeping_task_kb(void)
ws2812_setleds(leds, 4);
} else {
is31fl3731_set_color_all(0, 0, 0);
- LED_TYPE leds[4] = {0};
+ rgb_led_t leds[4] = {0};
ws2812_setleds(leds, 4);
}
@@ -341,28 +331,25 @@ void housekeeping_task_kb(void)
}
}
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_flush();
housekeeping_task_user();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
if (rgb_state.state != NORMAL) return;
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
+ for (uint8_t i = 0; i < IS31FL3731_LED_COUNT; i++) {
is31fl3731_set_color(i, start_led[i].r, start_led[i].g, start_led[i].b);
}
- LED_TYPE leds[4];
+ rgb_led_t leds[4];
for (int i = 0; i < 4; i++) {
- leds[i].r = start_led[RGB_MATRIX_LED_COUNT+i].g;
- leds[i].g = start_led[RGB_MATRIX_LED_COUNT+i].r;
- leds[i].b = start_led[RGB_MATRIX_LED_COUNT+i].b;
+ leds[i].r = start_led[IS31FL3731_LED_COUNT+i].g;
+ leds[i].g = start_led[IS31FL3731_LED_COUNT+i].r;
+ leds[i].b = start_led[IS31FL3731_LED_COUNT+i].b;
}
- //ws2812_setleds(start_led+RGB_MATRIX_LED_COUNT, 4);
+ //ws2812_setleds(start_led+IS31FL3731_LED_COUNT, 4);
ws2812_setleds(leds, 4);
}
diff --git a/keyboards/neson_design/700e/config.h b/keyboards/neson_design/700e/config.h
index cf89616aa8..2fdcead121 100644
--- a/keyboards/neson_design/700e/config.h
+++ b/keyboards/neson_design/700e/config.h
@@ -32,9 +32,8 @@
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
+#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
#define USB_SUSPEND_WAKEUP_DELAY 1000
diff --git a/keyboards/neson_design/700e/rules.mk b/keyboards/neson_design/700e/rules.mk
index 6e1439f1f5..5650ed1fee 100644
--- a/keyboards/neson_design/700e/rules.mk
+++ b/keyboards/neson_design/700e/rules.mk
@@ -11,4 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
NO_USB_STARTUP_CHECK = yes
-QUANTUM_LIB_SRC += i2c_master.c drivers/led/issi/is31fl3731.c
+QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/neson_design/n6/config.h b/keyboards/neson_design/n6/config.h
index 91d96c6a4d..22c12dfb97 100644
--- a/keyboards/neson_design/n6/config.h
+++ b/keyboards/neson_design/n6/config.h
@@ -32,7 +32,6 @@
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
+#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
diff --git a/keyboards/neson_design/n6/n6.c b/keyboards/neson_design/n6/n6.c
index cf99404641..38b634eeb7 100644
--- a/keyboards/neson_design/n6/n6.c
+++ b/keyboards/neson_design/n6/n6.c
@@ -48,18 +48,18 @@ enum {
// led index
#define ST_LEFT_BEGIN 0
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_LEFT_SIZE 4
#else
#define ST_LEFT_SIZE 2
#endif
#define ST_LEFT_END (ST_LEFT_BEGIN+ST_LEFT_SIZE-1)
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_BEGIN 60
#else
#define ST_RIGHT_BEGIN 30
#endif
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_SIZE 4
#else
#define ST_RIGHT_SIZE 2
@@ -115,7 +115,7 @@ static void self_testing(void)
}
if (rgb_state.index >= ST_LEFT_END) {
- for (int i = rgb_state.index - 1; i < RGB_MATRIX_LED_COUNT - rgb_state.index + 1; i++) {
+ for (int i = rgb_state.index - 1; i < IS31FL3731_LED_COUNT - rgb_state.index + 1; i++) {
is31fl3731_set_color(i, led.r, led.g, led.b);
}
if (rgb_state.index == ST_LEFT_END) {
@@ -177,13 +177,13 @@ static void self_testing(void)
}
break;
case ST_STAGE_3:
- if (rgb_state.index != RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index != IS31FL3731_LED_COUNT/2) {
is31fl3731_set_color_all(0, 0, 0);
}
// light left and right
- if (rgb_state.index == RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index == IS31FL3731_LED_COUNT/2) {
if (rgb_state.duration) {
rgb_state.duration--;
} else {
@@ -211,7 +211,7 @@ static void self_testing(void)
update_ticks();
}
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -298,18 +298,8 @@ void matrix_init_kb(void)
setPinOutput(LED_CAPS_LOCK_PIN);
writePinLow(LED_CAPS_LOCK_PIN);
- i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
-#ifdef DRIVER_ADDR_2
- is31fl3731_init(DRIVER_ADDR_2);
-#endif
- for (int index = 0; index < RGB_MATRIX_LED_COUNT; index++) {
- is31fl3731_set_led_control_register(index, true, true, true);
- }
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_led_control_registers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_init_drivers();
+
update_ticks();
matrix_init_user();
}
@@ -320,7 +310,7 @@ void housekeeping_task_kb(void)
self_testing();
} else if (rgb_state.state == CAPS_ALERT) {
//gold 0xFF, 0xD9, 0x00
- LED_TYPE led = {
+ rgb_led_t led = {
.r = 0xFF,
//.g = 0xD9,
.g = 0xA5,
@@ -343,22 +333,19 @@ void housekeeping_task_kb(void)
}
}
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_flush();
housekeeping_task_user();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
if (rgb_state.state != NORMAL) return;
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
+ for (uint8_t i = 0; i < IS31FL3731_LED_COUNT; i++) {
is31fl3731_set_color(i, start_led[i].r, start_led[i].g, start_led[i].b);
}
- ws2812_setleds(start_led+RGB_MATRIX_LED_COUNT, 1);
+ ws2812_setleds(start_led+IS31FL3731_LED_COUNT, 1);
}
bool led_update_kb(led_t led_state)
diff --git a/keyboards/neson_design/n6/rules.mk b/keyboards/neson_design/n6/rules.mk
index 5d8397653e..a3e4abe6cd 100644
--- a/keyboards/neson_design/n6/rules.mk
+++ b/keyboards/neson_design/n6/rules.mk
@@ -10,4 +10,5 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-QUANTUM_LIB_SRC += i2c_master.c drivers/led/issi/is31fl3731.c
+QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/neson_design/nico/nico.c b/keyboards/neson_design/nico/nico.c
index 63f08b8639..b4d15777b7 100644
--- a/keyboards/neson_design/nico/nico.c
+++ b/keyboards/neson_design/nico/nico.c
@@ -22,7 +22,7 @@
static bool alert = false;
static bool backup = false;
-static LED_TYPE caps_led;
+static rgb_led_t caps_led;
static uint16_t last_ticks = 0;
#define ALERT_INTERVAL 500
@@ -66,7 +66,7 @@ void housekeeping_task_kb(void)
housekeeping_task_user();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
start_led[2].r = start_led[0].r;
start_led[2].g = start_led[0].g;
diff --git a/keyboards/nightmare/keymaps/brandonschlack/keymap.c b/keyboards/nightmare/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 0ed81cf053..0000000000
--- a/keyboards/nightmare/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,195 +0,0 @@
-/* Copyright 2019 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-/**
- * Layer Names
- *
- * Layers mostly used for macro keys
- */
-#define _REEDER _M1
-#define _NAV _M2
-#define _MOUSE _M3
-
-/**
- * Keycodes & Macros
- */
-#define TG_BASE TO(_BASE)
-#define TG_REDR TO(_REEDER)
-#define TG_NAV TO(_NAV)
-#define TG_MOUS TO(_MOUSE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/**
- * Base
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Hom│││Esc│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│Bck│
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │PgU│││Tab │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │PgD│││Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│Shft│ Fn│
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │End││││││││Opt│Cmd │                           │ Cmd│Ctl││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-[_BASE] = LAYOUT_default(
- KC_HOME, KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_PGUP, HY_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_PGDN, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, PLY_FN1,
- KC_END, KC_LOPT, KC_LCMD, SPC_RAI, KC_RCMD, KC_RCTL
-),
-
-/**
- * Reeder
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ P │││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │ K │││    │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │ J │││      │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │ N ││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-
-[_REEDER] = LAYOUT_default(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
-),
-
-/**
- * Nav
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ → │││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │ ↑ │││    │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │ ↓ │││      │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │ ← ││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-[_NAV] = LAYOUT_default(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
-),
-
-/**
- * Mouse
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │WhU│││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │ ↑ │││    │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │ ↓ │││      │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │WhD││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-[_MOUSE] = LAYOUT_default(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
-),
-
-/**
- * Lower
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Nxt│││Del│BrD│BrU│Msn│LHP│   │   │   │   │   │   │ ↑ │Mut│SlD│
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │VlU│││    │   │   │NxW│PvT│Bck│Fwd│NxT│   │   │ ← │ → │ Play │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │VlD│││SftCap│   │   │   │1PX│1Ps│   │   │   │   │ ↓ │    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │Prv││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-[_LOWER] = LAYOUT_default(
- KC_MNXT, KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD,
- KC_VOLU, _______, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, _______, KC_LEFT, KC_RGHT, KC_MPLY,
- KC_VOLD, SF_CAPS, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, _______, KC_DOWN, _______, _______,
- KC_MPRV, _______, _______, _______, _______, _______
-),
-
-/**
- * Raise
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Nxt│││~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│   │
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │VlU│││    │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│   │   │   │      │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │VlD│││      │ F7│ F8│ F9│F10│F11│F12│   │   │   │| \│    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │Prv││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-[_RAISE] = LAYOUT_default(
- KC_MNXT, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______,
- KC_VOLU, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, _______, _______, _______,
- KC_VOLD, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, KC_BSLS, _______, _______,
- KC_MPRV, _______, _______, _______, _______, _______
-),
-
-/**
- * Adjust
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Bse│││Mke│   │   │EEP│RST│   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │Rdr│││    │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │Nav│││      │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │Mse││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-[_ADJUST] = LAYOUT_default(
- TG_BASE, QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_REDR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_NAV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_MOUS, _______, _______, _______, _______, _______
-),
-
-/**
- * Blank
- * ┌───┬┬┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │   │││   │   │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┼┼┼───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │   │││    │   │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼┼┼────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬───┤
- * │   │││      │   │   │   │   │   │   │   │   │   │   │    │   │
- * ├───┼┼┼┬┬┬┬┬─┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┼───┬┼┬┬┬┤
- * │   ││││││││   │    │                           │    │   ││││││
- * └───┴┴┴┴┴┴┴┴───┴────┴───────────────────────────┴────┴───┴┴┴┴┴┘
- */
-/*
-[] = LAYOUT_default(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______
-),
-*/
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/nightmare/keymaps/brandonschlack/readme.md b/keyboards/nightmare/keymaps/brandonschlack/readme.md
deleted file mode 100644
index 94c77833ff..0000000000
--- a/keyboards/nightmare/keymaps/brandonschlack/readme.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# brandonschlack's Nightmare Keymap
-
-![Base, Raise, Lower](https://i.imgur.com/08759vK.png)
-
-## Features
-- Mod-Taps & Layer-Taps
- - Spacebar is used as a Fn button when held to access missing numrow and F-keys on the **RAISE** layer.
- - Holding `Tab` acts as `HYPER`, or `Shift+Control+Option+Command`. I use this set global shortcuts, such as `HYPER+w` for my **W**indow manager Moom.
-- **Lower** Layer
- - `Lower+Esc` for `Delete`
- - `Lower+LShift` for `Caps Lock`. Holding `Lower+LShift` still acts as `LShift`
- - Arrow keys as `Lower+[`,`;`,`'`,`/` for `Up`,`Left`,`Right`,`Down`.
- - Media keys as `Lower+Enter`,`Home`,`End` for `Play/Pause`,`Next Track`,`Prev Track`
- - Volume controls as `Lower+]`,`Page Up`,`Page Down` for `Mute`,`Volume Up`,`Volume Down`
-- MacOS shortcuts on **Lower** Layer
- - Display Brightness as `Lower+Q`,`W` for `Brightness Down`, `Brightness Up`
- - Mission Control as `Lower+E`
- - Launchpad as `Lower+R`
- - Sleep Display as `Lower+Backspace`
- - Browser
diff --git a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/config.h b/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/config.h
deleted file mode 100644
index c6de1b416c..0000000000
--- a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/config.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2021, 2022 Jonavin Eng
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TOGGLE 2
-// TT set to two taps
-
-/* Handle GRAVESC combo keys */
-#define GRAVE_ESC_ALT_OVERRIDE
- //Always send Escape if Alt is pressed
-#define GRAVE_ESC_CTRL_OVERRIDE
- //Always send Escape if Control is pressed
-
-#define TAPPING_TERM 180
-
-#define ENCODER_DIRECTION_FLIP // compensate for opposite encoder direction
-#define ENCODER_DEFAULTACTIONS_INDEX 1 // Set default encoder functions to encoder 1
diff --git a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/keymap.c b/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/keymap.c
deleted file mode 100644
index 691eddde10..0000000000
--- a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/keymap.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com)
- * Copyright 2022 Jonavin Eng, @Jonavin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "jonavin.h"
-
-#define L2_SPC LT(2,KC_SPC)
-#define L3_SPC LT(3,KC_SPC)
-#define RWINALT RALT_T(KC_RGUI)
-#define ISO_LT KC_NUBS
-#define ISO_GT LSFT(KC_NUBS)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_BASE] = LAYOUT_48(
-
- KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_LBRC,KC_BSPC , KC_DEL ,
- TT(_RAISE) ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,KC_ENT , KC_PGUP,
- KC_LSFTCAPS ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH, SC_SENT ,KC_UP , KC_PGDN,
- KC_LCTL ,KC_LALT ,KC_LGUI ,KC_SPC ,L3_SPC ,MO(_LOWER) ,MO(_FN1) ,KC_RCTL ,KC_LEFT,KC_DOWN,KC_RGHT
- ),
-[_FN1] = LAYOUT_48(
- KC_GRV ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_INS ,
- KC_CAPS ,KC_F11 ,KC_F12 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PSCR, KC_SCRL, KC_PAUS,XXXXXXX,XXXXXXX,XXXXXXX , KC_HOME,
- _______ ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_NUM ,XXXXXXX ,XXXXXXX,XXXXXXX,XXXXXXX,_______ ,KC_PGUP, KC_END ,
- _______ ,_______ ,KC_WINLCK,XXXXXXX ,XXXXXXX ,_______,_______ ,_______ ,KC_HOME,KC_PGDN,KC_END
- ),
-[_LOWER] = LAYOUT_48(
- KC_TILD ,KC_EXLM, KC_AT, KC_HASH,KC_DLR,KC_PERC,KC_CIRC, KC_AMPR, KC_ASTR,KC_LPRN, KC_RPRN,KC_MINS,KC_EQL , QK_BOOT,
- _______ ,KC_MINS, KC_EQL,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_QUES,KC_SLSH,KC_PIPE,KC_BSLS,KC_TILD, XXXXXXX ,XXXXXXX,
- _______ ,KC_UNDS, KC_PLUS,XXXXXXX,KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC,KC_LT,KC_GT, XXXXXXX ,_______ ,XXXXXXX,XXXXXXX,
- _______ ,_______ ,_______,XXXXXXX ,XXXXXXX ,_______,_______ ,_______ ,XXXXXXX,XXXXXXX,XXXXXXX
- ),
-[_RAISE] = LAYOUT_48(
- KC_ESC, KC_HOME,KC_UP, KC_END, KC_PGUP,KC_PMNS,KC_PPLS,KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PEQL , KC_TSTOG,
- TT(_RAISE),KC_LEFT,KC_DOWN,KC_RIGHT,KC_PGDN,KC_PSLS,KC_TAB,KC_P4, KC_P5, KC_P6, KC_PDOT,KC_PAST,KC_PENT , XXXXXXX,
- _______, XXXXXXX,KC_DEL, KC_INS, KC_NO, KC_PAST,KC_P0, KC_P1, KC_P2, KC_P3, KC_PSLS ,_______, XXXXXXX,XXXXXXX,
- _______ ,_______ ,_______,KC_BSPC ,XXXXXXX ,_______,_______ ,_______ ,XXXXXXX,XXXXXXX,XXXXXXX
- )
-};
-
-#ifdef ENCODER_ENABLE // Encoder Functionality
-bool encoder_update_keymap(uint8_t index, bool clockwise) {
- switch (index) {
- case 0: // Top left encoder
- encoder_action_volume(clockwise);
- break;
- default:
- break;
- }
- return true; // fall to encoder_update_user and encoder_update_kb definitions
-}
-#endif
diff --git a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/readme.md b/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/readme.md
deleted file mode 100644
index 885e6b0dd7..0000000000
--- a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/readme.md
+++ /dev/null
@@ -1,54 +0,0 @@
-Jonavin Kastenwagen 48 Keymap
-Designed to match my other keymaps
-
-NOTE: Uses userpace user/jonavin
-
-Feature changes from Default
- - Bottom row mapping LCtrl, LAlt, LGui, spacebars, MO(2)/LOWER, MO(1)/FN, RCtrl
- - CAPS as MO(3)/RAISE - tap to toggle
- - numpad in MO(3) layer
- - double tap L Shift for CAPS
- - RESET moved to under encoder in MO(2)
- - implement Win Key Lock
- - GRV Escape overides
- - ENCODERS
- - TOP LEFT
- - Volume up/down
- - TOP RIGHT
- - Left Shift held - change layers
- - Right Shift held - Page Up/Down
- - Left Ctrl held - navigate next/prev words
- - Left Alt held - change media next/prev track
- - RAISE + Encode push toggles between volume change and tab scrolling
- - ENCODER_DIRECTION_FLIP has been defined to avoid issues with encoder going in opposition direction
-
-OPTIONS in rules.mk
----------------------------------------
-
-STARTUP_NUMLOCK_ON = yes
-- turns on NUMLOCK by default
-
-ENCODER_DEFAULTACTIONS_ENABLE = yes
-- Enabled default encoder funtions
-- When enabled, use this in the keymap for an additional encoder processing
-- bool encoder_update_keymap(uint8_t index, bool clockwise)
-
-OPTION: set ENCODER_DEFAULTACTIONS_INDEX in config.h to the encoder number if the encoder is not index 0 -- set to 1 for top right encoder
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-- This will enable double tap on Left Shift to toggle CAPSLOCK
-- KC_LSFTCAPS to bind to left Shift to enable feature
-- KC_LSFTCAPSWIN does the same thing but will not turn on CAPS when Win Lkey is disabled
-
-INVERT_NUMLOCK_INDICATOR
-- inverts the Num lock indicator, LED is on when num lock is off
-
-ALTTAB_SCROLL_ENABLE
-- When ENCODER_DEFAULTACTIONS_ENABLE = yes,
- Enables Alt-Tab scrolling functions in default encoder,
- bind KS_TSTOG to a key to enable/disable Alt-Tab vs Volume control
-- When defining your own encoder functions use encoder_action_alttabscroll(bool clockwise) to assign the encodr action
-
-
-Layout
-![image](https://user-images.githubusercontent.com/71780717/128580303-5d660a5f-1420-4e38-b40a-212573496b1c.png)
diff --git a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/rules.mk b/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/rules.mk
deleted file mode 100644
index 97ccf0c354..0000000000
--- a/keyboards/nopunin10did/kastenwagen48/keymaps/jonavin/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-VIA_ENABLE = yes # VIA support
-LTO_ENABLE = yes #
-
-TAP_DANCE_ENABLE = yes
-
-TD_LSFT_CAPSLOCK_ENABLE = yes
-STARTUP_NUMLOCK_ON = yes
-
-ENCODER_DEFAULTACTIONS_ENABLE = yes
-INVERT_NUMLOCK_INDICATOR = yes
-ALTTAB_SCROLL_ENABLE = yes
diff --git a/keyboards/novelkeys/nk1/config.h b/keyboards/novelkeys/nk1/config.h
deleted file mode 100644
index 1bcd22e6e5..0000000000
--- a/keyboards/novelkeys/nk1/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-
-/* Copyright 2021 Yiancar
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-/* There is only 1 Button so limiting VIA to 1 layer */
-#define DYNAMIC_KEYMAP_LAYER_COUNT 1
diff --git a/keyboards/novelkeys/nk65/config.h b/keyboards/novelkeys/nk65/config.h
index 1afa3fe95b..97350e34b4 100755
--- a/keyboards/novelkeys/nk65/config.h
+++ b/keyboards/novelkeys/nk65/config.h
@@ -50,8 +50,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 128
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_SDA
+#define IS31FL3733_LED_COUNT 128
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/novelkeys/nk65/nk65.c b/keyboards/novelkeys/nk65/nk65.c
index 2c325e453a..c4a14e7087 100755
--- a/keyboards/novelkeys/nk65/nk65.c
+++ b/keyboards/novelkeys/nk65/nk65.c
@@ -20,6 +20,146 @@
#include "nk65.h"
#include "drivers/led/issi/is31fl3733.h"
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NK65)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
+
/* Indicator LEDS are part of the LED driver
* Top LED is blue only. LED driver 2 RGB 7 Green channel
* Middle LED is blue and red. LED driver 2 RGB 6 Red and Blue channel
diff --git a/keyboards/novelkeys/nk65/rules.mk b/keyboards/novelkeys/nk65/rules.mk
index e9036ebb61..d71d9a6c4e 100755
--- a/keyboards/novelkeys/nk65/rules.mk
+++ b/keyboards/novelkeys/nk65/rules.mk
@@ -22,7 +22,7 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
- quantum/color.c \
- i2c_master.c
+ quantum/color.c
+I2C_DRIVER_REQUIRED = yes
DEFAULT_FOLDER = novelkeys/nk65/base
diff --git a/keyboards/novelkeys/nk87/config.h b/keyboards/novelkeys/nk87/config.h
index d0e973bb43..ff9e05cbad 100755
--- a/keyboards/novelkeys/nk87/config.h
+++ b/keyboards/novelkeys/nk87/config.h
@@ -50,8 +50,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 128
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_SDA
+#define IS31FL3733_LED_COUNT 128
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/novelkeys/nk87/nk87.c b/keyboards/novelkeys/nk87/nk87.c
index c75fff450b..e701bfaccf 100755
--- a/keyboards/novelkeys/nk87/nk87.c
+++ b/keyboards/novelkeys/nk87/nk87.c
@@ -20,6 +20,146 @@
#include "nk87.h"
#include "drivers/led/issi/is31fl3733.h"
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NK87)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
+
/* Indicator LEDS are part of the LED driver
* Top LED is blue only. LED driver 2 RGB 63 Blue channel
* Middle LED is blue and red. LED driver 2 RGB 63 Red and Green channel
diff --git a/keyboards/novelkeys/nk87/rules.mk b/keyboards/novelkeys/nk87/rules.mk
index 288d802054..a0a09c1dab 100755
--- a/keyboards/novelkeys/nk87/rules.mk
+++ b/keyboards/novelkeys/nk87/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
- quantum/color.c \
- i2c_master.c
+ quantum/color.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/novelkeys/nk_plus/info.json b/keyboards/novelkeys/nk_plus/info.json
index f6fad60b01..51a23057c4 100755
--- a/keyboards/novelkeys/nk_plus/info.json
+++ b/keyboards/novelkeys/nk_plus/info.json
@@ -109,6 +109,7 @@
"max_brightness": 120
},
"ws2812": {
+ "driver": "pwm",
"pin": "B4"
},
"layout_aliases": {
diff --git a/keyboards/novelkeys/nk_plus/rules.mk b/keyboards/novelkeys/nk_plus/rules.mk
index 928a45cfae..0ab54aaaf7 100644
--- a/keyboards/novelkeys/nk_plus/rules.mk
+++ b/keyboards/novelkeys/nk_plus/rules.mk
@@ -1,7 +1,2 @@
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
-
-# Build Options
-# change yes to no to disable
-#
-WS2812_DRIVER = pwm # Per-key RGB MCU Driver
diff --git a/keyboards/nullbitsco/nibble/rules.mk b/keyboards/nullbitsco/nibble/rules.mk
index 0d5d3e2aac..5a1714cc9d 100644
--- a/keyboards/nullbitsco/nibble/rules.mk
+++ b/keyboards/nullbitsco/nibble/rules.mk
@@ -19,4 +19,4 @@ SRC += matrix.c \
common/bitc_led.c \
big_led.c \
common/remote_kb.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/nullbitsco/snap/config.h b/keyboards/nullbitsco/snap/config.h
index d9fe16e285..9559a34352 100644
--- a/keyboards/nullbitsco/snap/config.h
+++ b/keyboards/nullbitsco/snap/config.h
@@ -59,6 +59,3 @@
/* Optional speaker pin */
#define AUDIO_PIN B6
-
-/* Optional split transactions */
-#define SPLIT_OLED_ENABLE
diff --git a/keyboards/nullbitsco/snap/info.json b/keyboards/nullbitsco/snap/info.json
index f235fce511..65cd463708 100644
--- a/keyboards/nullbitsco/snap/info.json
+++ b/keyboards/nullbitsco/snap/info.json
@@ -37,6 +37,11 @@
{"pin_a": "B4", "pin_b": "B5"}
]
}
+ },
+ "transport": {
+ "sync": {
+ "oled": true
+ }
}
},
"ws2812": {
diff --git a/keyboards/nullbitsco/snap/rules.mk b/keyboards/nullbitsco/snap/rules.mk
index 79ba7d6eb6..2ad88b97c0 100644
--- a/keyboards/nullbitsco/snap/rules.mk
+++ b/keyboards/nullbitsco/snap/rules.mk
@@ -19,5 +19,5 @@ CUSTOM_MATRIX = lite # Split custom matrix
# Project specific files
SRC += common/bitc_led.c \
common/remote_kb.c \
- matrix.c \
- uart.c
+ matrix.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/nullbitsco/tidbit/rules.mk b/keyboards/nullbitsco/tidbit/rules.mk
index 3b7ff078bb..b4a06216bb 100644
--- a/keyboards/nullbitsco/tidbit/rules.mk
+++ b/keyboards/nullbitsco/tidbit/rules.mk
@@ -16,5 +16,5 @@ LTO_ENABLE = yes
# Project specific files
SRC += common/bitc_led.c \
common/remote_kb.c
-QUANTUM_LIB_SRC += i2c_master.c \
- uart.c
+I2C_DRIVER_REQUIRED = yes
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/oddforge/vea/rules.mk b/keyboards/oddforge/vea/rules.mk
index f616b9400e..b0c02543b1 100644
--- a/keyboards/oddforge/vea/rules.mk
+++ b/keyboards/oddforge/vea/rules.mk
@@ -12,4 +12,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
# custom matrix setup
CUSTOM_MATRIX = lite
SRC = matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/oddforge/vea/ws2812_custom.c b/keyboards/oddforge/vea/ws2812_custom.c
index 0dc5a2d0f1..f52c8d06a8 100644
--- a/keyboards/oddforge/vea/ws2812_custom.c
+++ b/keyboards/oddforge/vea/ws2812_custom.c
@@ -22,13 +22,13 @@ void ws2812_init(void) {
}
// Setleds for standard RGB
-void ws2812_setleds(LED_TYPE *ledarray, uint16_t leds) {
+void ws2812_setleds(rgb_led_t *ledarray, uint16_t leds) {
static bool s_init = false;
if (!s_init) {
ws2812_init();
s_init = true;
}
- i2c_transmit(WS2812_I2C_ADDRESS, (uint8_t *)ledarray, sizeof(LED_TYPE) * (leds >> 1), WS2812_I2C_TIMEOUT);
- i2c_transmit(WS2812_I2C_ADDRESS_RIGHT, (uint8_t *)ledarray+(sizeof(LED_TYPE) * (leds >> 1)), sizeof(LED_TYPE) * (leds - (leds >> 1)), WS2812_I2C_TIMEOUT);
+ i2c_transmit(WS2812_I2C_ADDRESS, (uint8_t *)ledarray, sizeof(rgb_led_t) * (leds >> 1), WS2812_I2C_TIMEOUT);
+ i2c_transmit(WS2812_I2C_ADDRESS_RIGHT, (uint8_t *)ledarray+(sizeof(rgb_led_t) * (leds >> 1)), sizeof(rgb_led_t) * (leds - (leds >> 1)), WS2812_I2C_TIMEOUT);
}
diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/333fred/config.h b/keyboards/omkbd/ergodash/rev1/keymaps/333fred/config.h
deleted file mode 100644
index cb50d1a34b..0000000000
--- a/keyboards/omkbd/ergodash/rev1/keymaps/333fred/config.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#pragma once
-
-#define MASTER_LEFT
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 200
diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/333fred/keymap.c b/keyboards/omkbd/ergodash/rev1/keymaps/333fred/keymap.c
deleted file mode 100644
index b206a4b986..0000000000
--- a/keyboards/omkbd/ergodash/rev1/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-#include "333fred.h"
-
-extern keymap_config_t keymap_config;
-
-// Use an expanded macro with VA_ARGS to ensure that the common
-// rows get expanded out before getting passed to the LAYOUT
-// macro.
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_wrapper(
- ROW5_LEFT_BASE, KC_F5, KC_F6, ROW5_RGHT_BASE,
- ROW4_LEFT_BASE, TG(GAME), TG(GAME_ARROW), ROW4_RGHT_BASE,
- ROW3_LEFT_BASE, KC_LGUI, KC_BSPC, ROW3_RGHT_BASE,
- ROW2_LEFT_BASE, TD(TD_COPY_PASTE), KC_UP , ROW2_RGHT_BASE,
- ROW1_LEFT_BASE, KC_BSPC, TD(TD_SYM_VIM), KC_DEL, KC_ENT, KC_SPC , KC_DOWN, ROW1_RGHT_BASE
- ),
-
- [SYMB] = LAYOUT_wrapper(
- ROW5_LEFT_SYMB, _______, _______, ROW5_RGHT_SYMB,
- ROW4_LEFT_SYMB, PSCREEN_APP, _______, ROW4_RGHT_SYMB,
- ROW3_LEFT_SYMB, KC_PSCR, KC_VOLU, ROW3_RGHT_SYMB,
- ROW2_LEFT_SYMB, _______, KC_VOLD, ROW2_RGHT_SYMB,
- ROW1_LEFT_SYMB, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, ROW1_RGHT_SYMB
- ),
-
- [VIM] = LAYOUT_wrapper(
- ROW5_LEFT_VIM, _______, _______, ROW5_RGHT_VIM,
- ROW4_LEFT_VIM, _______, _______, ROW4_RGHT_VIM,
- ROW3_LEFT_VIM, _______, _______, ROW3_RGHT_VIM,
- ROW2_LEFT_VIM, _______, _______, ROW2_RGHT_VIM,
- ROW1_LEFT_VIM, _______, _______, _______, _______, _______, _______, ROW1_RGHT_VIM
- ),
-
- [GAME] = LAYOUT_wrapper(
- KC_ESC, SIX_TRNS, _______, SIX_TRNS,
- SIX_TRNS, _______, _______, SIX_TRNS,
- KC_LCTL, FOUR_TRNS, _______, KC_F6, _______, SIX_TRNS,
- KC_LSFT, KC_Z, FOUR_TRNS, KC_F5, _______, SIX_TRNS,
- KC_ENT, _______, QK_LOCK, KC_BSPC, KC_LALT, KC_SPC, OSM(SYMB), _______, SIX_TRNS
- ),
-
- [GAME_ARROW] = LAYOUT_wrapper(
- KC_ESC, SIX_TRNS, _______, SIX_TRNS,
- _______, _______, KC_UP, _______, _______, _______, _______, _______, SIX_TRNS,
- KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_F6, _______, SIX_TRNS,
- KC_LSFT, KC_Z, FOUR_TRNS, KC_F5, _______, SIX_TRNS,
- KC_ENT, _______, QK_LOCK, KC_BSPC, KC_LALT, KC_SPC, OSM(SYMB), _______, SIX_TRNS
- )
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- tap_dance_process_keycode(keycode);
- return !try_handle_macro(keycode, record);
-}
diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/333fred/rules.mk b/keyboards/omkbd/ergodash/rev1/keymaps/333fred/rules.mk
deleted file mode 100644
index 2a91ad3ba4..0000000000
--- a/keyboards/omkbd/ergodash/rev1/keymaps/333fred/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = yes
-AUDIO_ENABLE = no
-KEY_LOCK_ENABLE = yes
-CONSOLE_ENABLE = no
diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/config.h b/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/config.h
deleted file mode 100644
index 09bc62a14f..0000000000
--- a/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/config.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-//#define MASTER_LEFT
-#define MASTER_RIGHT /* Cable connected to the right split keyboard */
-// #define EE_HANDS
-
-#define AUTO_SHIFT_TIMEOUT 210
-
-#define TAPPING_TERM_PER_KEY
-
-// https://beta.docs.qmk.fm/features/feature_leader_key
-//#define LEADER_PER_KEY_TIMING
-//#define LEADER_TIMEOUT 280
-
-// https://docs.qmk.fm/#/feature_mouse_keys
-#define MK_3_SPEED // Constant Speed Mode
-
-#define MOUSEKEY_DELAY 300
-#define MOUSEKEY_INTERVAL 16
-#define MOUSEKEY_MAX_SPEED 3
-#define MOUSEKEY_TIME_TO_MAX 60
-#define MK_C_OFFSET_0 4
-#define MK_C_INTERVAL_0 28
-#define MK_C_OFFSET_1 8
-#define MK_C_INTERVAL_1 16
-#define MK_C_OFFSET_2 20
-#define MK_C_INTERVAL_2 16
-
-#define MOUSEKEY_WHEEL_MAX_SPEED 4
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 40
-
-#define MK_W_OFFSET_0 1
-#define MK_W_INTERVAL_0 120
-#define MK_W_OFFSET_1 1
-#define MK_W_INTERVAL_1 100
-#define MK_W_OFFSET_2 1
-#define MK_W_INTERVAL_2 60
-
-//#define STARTUP_RESET_EEPROM // EMERGENCY
-
diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/keymap.c b/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/keymap.c
deleted file mode 100644
index 4a94ab4bb1..0000000000
--- a/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/keymap.c
+++ /dev/null
@@ -1,157 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "yet-another-developer.h"
-
-#ifndef UNICODE_ENABLE
-# define UC(x) KC_NO
-#endif
-
-extern keymap_config_t keymap_config;
-
-#define EISU LALT(KC_GRV)
-
-#define LAYOUT_ergodash_pretty_wrapper(...) LAYOUT_ergodash_pretty(__VA_ARGS__)
-
- /* Keymap: BASE layer
- *
- * ,----------------------------------------------------. ,----------------------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | [ | | ] | 6 | 7 | 8 | 9 | 0 | Pscree |
- * |--------+--------+------+------+------+-------------| |------+------+------+------+------+--------+--------|
- * | ` | K01 | K02 | K03 | K04 | K05 | - | | = | K06 | K07 | K08 | K09 | K0A | \ |
- * |--------+--------+------+------+------+------|------| |------|------+------+------+------+--------+--------|
- * | Tab | K11 | K12 | K13 | K14 | K15 | { | | } | K16 | K17 | K18 | K19 | K1A | " |
- * |--------+--------+------+------+------+------|------' `------|------+------+------+------+--------+--------|
- * | LShift | K21 | K22 | K23 | K24 | K25 | | K26 | K27 | K28 | K29 | K2A | RShift |
- * |--------+--------+------+------+------+------' `------+------+------+------+--------+--------|
- * | LCtrl | GUI | Alt | Alt | | LEFT | DOWN | UP | RIGHT |
- * `-------------------------------' `-------------------------------'
- * ,--------------. ,--------------.
- * | Lower| | | | Raise |
- * ,-------| / | Del | | Bksp + / +-------.
- * |CMD/Spc| Space| | | | Enter |CMD/Spc|
- * `----------------------' `----------------------'
- */
-#define LAYOUT_ergodash_pretty_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_ergodash_pretty_wrapper( \
- KC_ESC, ________________NUMBER_LEFT________________, KC_LBRC, KC_RBRC, ________________NUMBER_RIGHT_______________, KC_PSCR, \
- KC_GRV, K01, K02, K03, K04, K05, KC_MINS, KC_EQL, K06, K07, K08, K09, K0A, KC_BSLS, \
- KC_TAB, K11, K12, K13, K14, K15, KC_LCBR, KC_RCBR, K16, K17, K18, K19, K1A, KC_QUOT, \
- OS_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, OS_RSFT, \
- KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, \
- LT(_LOWER, KC_SPC), LT(_RAISE, KC_ENT), \
- OS_LGUI,LT(_LOWER, KC_SPC),KC_DEL, KC_BSPC, LT(_RAISE, KC_ENT), OS_RGUI \
- )
-
-#define LAYOUT_ergodash_pretty_base_wrapper(...) LAYOUT_ergodash_pretty_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_ergodash_pretty_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
-/* Keymap: COLEMAK layer
- *
- * ,----------------------------------------------------. ,----------------------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | [ | | ] | 6 | 7 | 8 | 9 | 0 | - |
- * |--------+--------+------+------+------+-------------| |------+------+------+------+------+--------+--------|
- * | ` | Q | W | F | P | G | - | | = | J | L | U | Y | ; | \ |
- * |--------+--------+------+------+------+------|------| |------|------+------+------+------+--------+--------|
- * | Tab | A | R | S | T | D | Del | | Bksp | H | N | E | I | O | ' |
- * |--------+--------+------+------+------+------|------' `------|------+------+------+------+--------+--------|
- * | LShift | Z | X | C | V | B | | K | M | , < | . > | / | RShift |
- * |--------+--------+------+------+------+------' `------+------+------+------+--------+--------|
- * | Ctrl | GUI | Alt | EISU | | LEFT | DOWN | UP | RIGHT |
- * `-------------------------------' `-------------------------------'
- * ,--------------. ,--------------.
- * | Lower| | | | Raise |
- * ,-------| / | Del | | Bksp + / +-------.
- * |CMD/Spc| Space| | | | Enter |CMD/Spc|
- * `----------------------' `----------------------'
- */
-
-
-// If it accepts an argument (i.e, is a function), it doesn't need KC_.
-// Otherwise, it needs KC_*
- [_COLEMAK] = LAYOUT_ergodash_pretty_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DVORAK] = LAYOUT_ergodash_pretty_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_WORKMAN] = LAYOUT_ergodash_pretty_base_wrapper(
- _________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
- _________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
- _________________WORKMAN_L3________________, _________________WORKMAN_R3________________
- ),
-
-#ifdef UNICODEMAP_ENABLE
- [_UNICODE] = LAYOUT_ergodash_pretty_base_wrapper(
- _______________UNICODE_L1__________________, _______________UNICODE_R1__________________,
- _______________UNICODE_L2__________________, _______________UNICODE_R2__________________,
- _______________UNICODE_L3__________________, _______________UNICODE_R3__________________
- ),
-#endif
-
- [_LOWER] = LAYOUT_ergodash_pretty_wrapper(
- KC_F11, _________________FUNC_LEFT_________________, KC_RST , KC_RST , _________________FUNC_RIGHT________________, KC_F12,
- KC_TILD, _________________LOWER_L1__________________, _______, _______, _________________LOWER_R1__________________, KC_PIPE,
- _______, _________________LOWER_L2__________________, _______, _______, _________________LOWER_R2__________________, KC_DQUO,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, KC_PSCR,
- _______, _______, _______, _______, _______, _______, _______, KC_PAUS,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_ergodash_pretty_wrapper(
- KC_F12, _________________FUNC_LEFT_________________, KC_RST, KC_RST , _________________FUNC_RIGHT________________, KC_F11,
- KC_GRV, _________________RAISE_L1__________________, _______, _______, _________________RAISE_R1__________________, KC_BSLS,
- _______, _________________RAISE_L2__________________, _______, _______, _________________RAISE_R2__________________, KC_QUOT,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, KC_PSCR,
- _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT_ergodash_pretty_wrapper(
- KC_MAKE, _______, _______, _______, _______, _______, _______, KC_NUKE, _______, _______, _______, _______, _______, KC_RST,
- VRSN, _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________, EE_CLR,
- _______, _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________, _______,
- _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______,
- _______, _______, _______, _______, _______, _______
- ),
-};
-
-#ifdef AUDIO_ENABLE
-float tone_qwerty[][2] = SONG(QWERTY_SOUND);
-#endif
-
-void persistent_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- return true;
-}
-void matrix_init_keymap(void) {
-#ifdef STARTUP_RESET_EEPROM
- eeconfig_init();
-#endif
-}
-
-//
diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/rules.mk b/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/rules.mk
deleted file mode 100644
index a7d4fcaac3..0000000000
--- a/keyboards/omkbd/ergodash/rev1/keymaps/yet-another-developer/rules.mk
+++ /dev/null
@@ -1,23 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-
-# Device
-AUDIO_ENABLE = no
-
-RGBLIGHT_ENABLE = no
-BACKLIGHT_ENABLE = no
-INDICATOR_LIGHTS = no
-
-# QMK Features
-AUTO_SHIFT_ENABLE = no
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-LEADER_ENABLE = yes # default is yes
-TAP_DANCE_ENABLE = no #(+1254)
-UNICODE_ENABLE = no #(+1134)
-UNICODEMAP_ENABLE = no
-NKRO_ENABLE = no
-MACROS_ENABLED = no
-
-# User Defined Features
-NO_SECRETS = no
diff --git a/keyboards/omkbd/ergodash/rev1/rev1.c b/keyboards/omkbd/ergodash/rev1/rev1.c
deleted file mode 100644
index 35a313f6fd..0000000000
--- a/keyboards/omkbd/ergodash/rev1/rev1.c
+++ /dev/null
@@ -1,32 +0,0 @@
-#include "quantum.h"
-
-#ifdef AUDIO_ENABLE
- float tone_startup[][2] = SONG(STARTUP_SOUND);
- float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-#endif
-
-void matrix_init_kb(void) {
-
- #ifdef AUDIO_ENABLE
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
- #endif
-
- // // green led on
- // DDRD |= (1<<5);
- // PORTD &= ~(1<<5);
-
- // // orange led on
- // DDRB |= (1<<0);
- // PORTB &= ~(1<<0);
-
- matrix_init_user();
-};
-
-void shutdown_user(void) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
- #endif
-}
diff --git a/keyboards/onekeyco/dango40/config.h b/keyboards/onekeyco/dango40/config.h
deleted file mode 100644
index b7488fcb75..0000000000
--- a/keyboards/onekeyco/dango40/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5 \ No newline at end of file
diff --git a/keyboards/onekeyco/dango40/info.json b/keyboards/onekeyco/dango40/info.json
index eba683dafc..c9087c630a 100644
--- a/keyboards/onekeyco/dango40/info.json
+++ b/keyboards/onekeyco/dango40/info.json
@@ -13,6 +13,9 @@
"rows": ["F4", "F1", "F0", "C6"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
"encoder": {
"rotary": [
{"pin_a": "D2", "pin_b": "D1"}
diff --git a/keyboards/opendeck/32/rev1/config.h b/keyboards/opendeck/32/rev1/config.h
index a85a3db8b9..d5e824fdfb 100644
--- a/keyboards/opendeck/32/rev1/config.h
+++ b/keyboards/opendeck/32/rev1/config.h
@@ -16,8 +16,7 @@
#pragma once
// RGB matrix
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_COUNT 1
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define RGB_MATRIX_LED_COUNT (4 * 8 * 3)
#define RGB_DISABLE_WHEN_USB_SUSPENDED
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_SPIRAL
diff --git a/keyboards/opendeck/32/rev1/rev1.c b/keyboards/opendeck/32/rev1/rev1.c
index 5d546afb29..0b062ecd38 100644
--- a/keyboards/opendeck/32/rev1/rev1.c
+++ b/keyboards/opendeck/32/rev1/rev1.c
@@ -17,7 +17,7 @@
#include "rev1.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/org60/keymaps/jarred/keymap.c b/keyboards/org60/keymaps/jarred/keymap.c
deleted file mode 100644
index 08f20a34c0..0000000000
--- a/keyboards/org60/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,25 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define _QW 0
-#define _NV 1
-
-// HHKB Layout
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QW] = LAYOUT(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- MO(_NV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, XXXXXXX, KC_ENT,
- KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, XXXXXXX, KC_RSFT, KC_ENT,
- XXXXXXX, KC_LCTL, KC_LGUI, KC_SPC, XXXXXXX, KC_RALT, XXXXXXX, KC_RCTL, XXXXXXX),
-
- [_NV] = LAYOUT(
- KC_GRV , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______,
- _______, _______, _______, _______, KC_DEL ,KC_BSPC,_______,KC_HOME,KC_UP ,KC_END , KC_INS , _______, _______, _______,
- _______, _______, _______, KC_LSFT,KC_LCTL, KC_ENT, _______,KC_LEFT,KC_DOWN,KC_RGHT, KC_DEL , KC_DEL , _______, _______,
- _______, _______, _______, _______, _______,_______,_______,_______,KC_PGUP,KC_PGDN, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______),
-
-};
-
-
diff --git a/keyboards/orthodox/keymaps/drashna/README.md b/keyboards/orthodox/keymaps/drashna/README.md
deleted file mode 100644
index 6c208d2c88..0000000000
--- a/keyboards/orthodox/keymaps/drashna/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-Overview
-========
-
-This is my personal Orthodox configuration, and my daily driver.
-
-Most of the code resides in my userspace, rather than here, as I have multiple keyboards.
-
-How to build
-------------
-make orthodox/rev1:drashna:teensy
-
-Layers
-------
-* QWERTY/DVORAK/COLEMAK/WORKMAN: basic layout, default set like the OLKB boards. Default is set and persists on power cycle.
-* RAISE: Contains function keys and unshifted symbols
-* LOWER: Contains function keys and shifted symbols
-* ADJUST: contains special codes (layout defaults, RGB codes, Audio codes, and volume control)
-
-All layers have RGB specific indicators, so you can see what layer you're on by the underglow.
-
-Orthodox Specific Code
-----------------------
-
-Shift, Control and Alt all light up a specific RGB LED for a certain color, based on it's status, adding a visual indicator of OSMs or regular mods are held down.
diff --git a/keyboards/orthodox/keymaps/drashna/config.h b/keyboards/orthodox/keymaps/drashna/config.h
deleted file mode 100644
index 502f364719..0000000000
--- a/keyboards/orthodox/keymaps/drashna/config.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define USE_I2C
-
-/* Select hand configuration */
-
-// #define MASTER_LEFT
-// #define MASTER_RIGHT
-#define EE_HANDS
-
-/* key combination for magic key command */
-#undef IS_COMMAND
-#define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_LALT)))
-
-#ifdef RGBLIGHT_ENABLE
-# define WS2812_DI_PIN D3
-# define RGBLED_NUM 16 // Number of LEDs
-# define RGBLED_SPLIT \
- { 8, 8 }
-
-# define RGBLIGHT_HUE_STEP 12
-# define RGBLIGHT_SAT_STEP 12
-# define RGBLIGHT_VAL_STEP 12
-# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
-# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
-#endif // RGBLIGHT_ENABLE
-
-#ifdef AUDIO_ENABLE
-# define AUDIO_PIN C6
-# ifdef RGBLIGHT_ENABLE
-# define NO_MUSIC_MODE
-# endif
-#endif // AUDIO_ENABLE
-
-#ifdef KEYBOARD_orthodox_rev1
-# undef PRODUCT
-# define PRODUCT "Drashna Hacked Orthodox Rev .1"
-#elif KEYBOARD_orthodox_rev3
-# undef PRODUCT
-# define PRODUCT "Drashna Hacked Orthodox Rev .3"
-#endif
-
-#define QMK_ESC_OUTPUT D7 // usually COL
-#ifdef KEYBOARD_orthodox_rev1
-# define QMK_ESC_INPUT D4 // usually ROW
-#else
-# define QMK_ESC_INPUT D2 // usually ROW
-#endif
-#define QMK_LED B0
-#define QMK_SPEAKER C6
-
-#define SHFT_LED1 5
-#define SHFT_LED2 10
-
-#define CTRL_LED1 6
-#define CTRL_LED2 9
-
-#define GUI_LED1 8
-#define ALT_LED1 7
diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c
deleted file mode 100644
index a7c618826c..0000000000
--- a/keyboards/orthodox/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,70 +0,0 @@
-#include "drashna.h"
-
-/*
- * The `LAYOUT_orthodox_base` macro is a template to allow the use of identical
- * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
- * that there is no need to set them up for each layout, and modify all of
- * them if I want to change them. This helps to keep consistency and ease
- * of use. K## is a placeholder to pass through the individual keycodes
- */
-// clang-format off
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define LAYOUT_orthodox_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, OS_LALT, OS_LGUI, OS_RALT, RAISE, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- KC_MLSF, CTL_T(K21), K22, K23, K24, K25, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, K26, K27, K28, K29, RCTL_T(K2A), KC_MRSF \
- )
-#define LAYOUT_base_wrapper(...) LAYOUT_orthodox_base(__VA_ARGS__)
-
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
-
- [_LOWER] = LAYOUT_wrapper(
- KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_BSPC,
- KC_F11, _________________LOWER_L2__________________, _______, _______, _______, _______, _________________LOWER_R2__________________, KC_PIPE,
- KC_F12, _________________LOWER_L3__________________, _______, _______, _______, _______, _______, _______, _________________LOWER_R3__________________, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_BSPC,
- _______, _________________RAISE_L2__________________, _______, _______, _______, _______, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _______, _______, _______, _______, _______, _______, _________________RAISE_R3__________________, _______
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- QK_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, QK_BOOT,
- VRSN, _________________ADJUST_L2_________________, _______, _______, _______, KC_NUKE, _________________ADJUST_R2_________________, EE_CLR,
- TG_MODS, _________________ADJUST_L3_________________, _______, _______, _______, _______, _______, _______, _________________ADJUST_R3_________________, KC_MPLY
- )
-
-};
-// clang-format on
diff --git a/keyboards/orthodox/keymaps/drashna/rules.mk b/keyboards/orthodox/keymaps/drashna/rules.mk
deleted file mode 100644
index 9637d3b395..0000000000
--- a/keyboards/orthodox/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-TAP_DANCE_ENABLE = no
-RGBLIGHT_ENABLE = yes
-AUDIO_ENABLE = no
-NKRO_ENABLE = yes
-SPACE_CADET_ENABLE = no
-
-INDICATOR_LIGHTS = yes
-RGBLIGHT_STARTUP_ANIMATION = yes
-CUSTOM_UNICODE_ENABLE = no
-
-BOOTLOADER = qmk-dfu
diff --git a/keyboards/orthodox/keymaps/pdl/config.h b/keyboards/orthodox/keymaps/pdl/config.h
deleted file mode 100644
index ad9b6207b3..0000000000
--- a/keyboards/orthodox/keymaps/pdl/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-Copyright 2018 Daniel Perrett
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/* Select hand configuration */
-
-// #define MASTER_LEFT
-// #define MASTER_RIGHT
-#define EE_HANDS
diff --git a/keyboards/orthodox/keymaps/pdl/keymap.c b/keyboards/orthodox/keymaps/pdl/keymap.c
deleted file mode 100644
index 42b9e7e485..0000000000
--- a/keyboards/orthodox/keymaps/pdl/keymap.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
-This is the keymap for the keyboard
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-Copyright 2017 Art Ortenburger
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "pdl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- MY_SESC, _________________QWERTY_L2_________________, KC_LALT, KC_LGUI, FUNCTN, MY_AMNU, _________________QWERTY_R2_________________, MY_SQUO,
- MY_CBSL, _________________QWERTY_L3_________________, NAVIGN, KC_SPC, NUMBRS, NUMBRS, MY_SSPC, NAVIGN, _________________QWERTY_R3_________________, MY_CENT
- ),
-
- [_PROXIM] = LAYOUT_wrapper(
- MY_SESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC,
- KC_TAB, _________________PROXIM_L2_________________, KC_LALT, KC_LGUI, FUNCTN, MY_AMNU, _________________PROXIM_R2_________________, MY_SSCL,
- MY_CBSL, _________________PROXIM_L3_________________, NAVIGN, KC_SPC, NUMBRS, NUMBRS, MY_SSPC, NAVIGN, _________________PROXIM_R3_________________, MY_CENT
- ),
-
- [_NAVIGN] = LAYOUT_wrapper(
- _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_PUNCTN] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______
- ),
-
- [_NUMBRS] = LAYOUT_wrapper(
- _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_CODING] = LAYOUT_wrapper(
- _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______
- ),
-
- [_FUNCTN] = LAYOUT_wrapper(
- _______, _________________FUNCTN_L1_________________, _________________FUNCTN_L1_________________, MY_CAD,
- _______, _________________FUNCTN_L2_________________, _______, _______, _______, _______, _________________FUNCTN_L2_________________, KC_PSCR,
- _______, _________________FUNCTN_L3_________________, _______, _______, _______, _______, _______, _______, _________________FUNCTN_L3_________________, _______
- )
-};
-
diff --git a/keyboards/orthodox/keymaps/pdl/rules.mk b/keyboards/orthodox/keymaps/pdl/rules.mk
deleted file mode 100644
index ae71cbf491..0000000000
--- a/keyboards/orthodox/keymaps/pdl/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-USER_NAME = pdl
diff --git a/keyboards/owlab/voice65/hotswap/config.h b/keyboards/owlab/voice65/hotswap/config.h
index 04bd741d77..8599c084d2 100644
--- a/keyboards/owlab/voice65/hotswap/config.h
+++ b/keyboards/owlab/voice65/hotswap/config.h
@@ -29,8 +29,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# define RGB_MATRIX_LED_FLUSH_LIMIT 26
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
# define RGB_MATRIX_DEFAULT_VAL 128
-# define DRIVER_ADDR_1 0b0110000
-# define DRIVER_COUNT 1
+# define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
# define RGB_MATRIX_LED_COUNT 67
// RGB Matrix Animation modes. Explicitly enabled
// For full list of effects, see:
diff --git a/keyboards/owlab/voice65/hotswap/hotswap.c b/keyboards/owlab/voice65/hotswap/hotswap.c
index 65c0ee7eed..b4c0c02c32 100644
--- a/keyboards/owlab/voice65/hotswap/hotswap.c
+++ b/keyboards/owlab/voice65/hotswap/hotswap.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS3_SW1, CS2_SW1, CS1_SW1}, /* RGB0-ESC ROW0*/
{0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB1-1 */
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB2-2 */
diff --git a/keyboards/owlab/voice65/soldered/config.h b/keyboards/owlab/voice65/soldered/config.h
index 66e412effb..9533e00a02 100644
--- a/keyboards/owlab/voice65/soldered/config.h
+++ b/keyboards/owlab/voice65/soldered/config.h
@@ -29,8 +29,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# define RGB_MATRIX_LED_FLUSH_LIMIT 26
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
# define RGB_MATRIX_DEFAULT_VAL 128
-# define DRIVER_ADDR_1 0b0110000
-# define DRIVER_COUNT 1
+# define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
# define RGB_MATRIX_LED_COUNT 71
// RGB Matrix Animation modes. Explicitly enabled
diff --git a/keyboards/owlab/voice65/soldered/soldered.c b/keyboards/owlab/voice65/soldered/soldered.c
index 1444b05864..301a5adc59 100644
--- a/keyboards/owlab/voice65/soldered/soldered.c
+++ b/keyboards/owlab/voice65/soldered/soldered.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS3_SW1, CS2_SW1, CS1_SW1}, /* RGB0-ESC ROW0*/
{0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB1-1 */
{0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB2-2 */
diff --git a/keyboards/pearlboards/pandora/config.h b/keyboards/pearlboards/pandora/config.h
index beaeec353d..7efef3364b 100644
--- a/keyboards/pearlboards/pandora/config.h
+++ b/keyboards/pearlboards/pandora/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DIP_SWITCH_PINS { B2, B5 }
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/pearlboards/pandora/info.json b/keyboards/pearlboards/pandora/info.json
index e0a28788eb..7dbcdf6ff2 100644
--- a/keyboards/pearlboards/pandora/info.json
+++ b/keyboards/pearlboards/pandora/info.json
@@ -13,6 +13,9 @@
"rows": ["B4", "D7", "D6", "B3", "B0"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["B2", "B5"]
+ },
"encoder": {
"rotary": [
{"pin_a": "F6", "pin_b": "F5", "resolution": 1}
diff --git a/keyboards/percent/canoe/keymaps/dhertz/keymap.c b/keyboards/percent/canoe/keymaps/dhertz/keymap.c
deleted file mode 100644
index bd948327d5..0000000000
--- a/keyboards/percent/canoe/keymaps/dhertz/keymap.c
+++ /dev/null
@@ -1,62 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "dhertz.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0: Default Layer
- * ,---------------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|Del|
- * |---------------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter|Hom|
- * |------------------------------------------------------` |---|
- * |SrCtl | A| S| D| F| G| H| J| K| L| ;| '| \| |End|
- * |---------------------------------------------------------------|
- * |Shif| #| Z| X| C| V| B| N| M| ,| .| /|Shift |Up |PgD|
- * |---------------------------------------------------------------|
- * |NcCtl| Alt| CTab| LyrSpc | CGv| Alt|Lef|Dow|Rig|
- * `---------------------------------------------------------------'
- */
- [0] = LAYOUT_iso(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_HOME,
- SRCH_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_END,
- KC_LSFT, HSH_TLD, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- NC_CTL, KC_LALT, CMD_TAB_CMD, LYR_SPC, CMD_GRV_CMD, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT
- ),
- /* Layer 1: Special
- * ,---------------------------------------------------------------.
- * | §| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| |Iso|
- * |---------------------------------------------------------------|
- * | | | | | | | | | | | | | | | |
- * |------------------------------------------------------` |---|
- * | | | | | | | | | |CSL| | | `| | |
- * |---------------------------------------------------------------|
- * | | `| | |CAC| | | | | | | | |PgU| |
- * |---------------------------------------------------------------|
- * | | | | | | |Hom|PgD|End|
- * `---------------------------------------------------------------'
- */
- [1] = LAYOUT_iso(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F10, KC_F11, KC_TRNS, ISO_COUNTRY_CODE,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, CMD_SFT_L, KC_TRNS, KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS, CMD_ALT_C, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END
- ),
-};
-
-void keyboard_post_init_user(void) {
- rgblight_enable_noeeprom();
- rgblight_sethsv(HSV_TEAL);
-}
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case 1:
- rgblight_sethsv_noeeprom(HSV_MAGENTA);
- break;
- default: // for any other layers, or the default layer
- rgblight_sethsv_noeeprom(HSV_CYAN);
- break;
- }
- return state;
-}
diff --git a/keyboards/phage_studio/pila87/keymaps/horrortroll/keymap.c b/keyboards/phage_studio/pila87/keymaps/horrortroll/keymap.c
deleted file mode 100644
index 28de8ad449..0000000000
--- a/keyboards/phage_studio/pila87/keymaps/horrortroll/keymap.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright 2022 HorrorTroll <https://github.com/HorrorTroll>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "horrortroll.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/*
- ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
- │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│ │PSc│Scr│Pse│
- └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
- │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│ │Ins│Hom│PgU│
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
- │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │ │Del│End│PgD│
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘
- │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter │
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐
- │ LShift │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RShift │ │ ↑ │
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐
- │LCrl│GUI │LAlt│ Space │RAlt│ Fn │ App│RCrl│ │ ← │ ↓ │ → │
- └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘
- ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
- │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
- │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ │ │ │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
- │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ │ │ │ │
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘
- │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐
- │ LShift │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RShift │ │ │
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐
- │ │ │ │ │ │ │ │ │ │ │ │ │
- └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- [_BASE] = LAYOUT_tkl_ansi(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
- KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
-/*
- ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
- │Rst│ │MeP│VoD│VoU│Mut│ │Stp│Prv│Ply│Nxt│ │Mai│Hom│Cal│Sch│ │Rod│Mod│Tog│
- └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘
- ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
- │ │ │ │ │ │ │ │ │ │ │ │Spd│Spi│ │ │C_E│ │ │
- ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
- │ │1Hd│1Hi│1Sd│1Si│1Vd│1Vi│ │ │ │ │ │ │ │ │ │ │Wve│
- ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘
- │ │2Hd│2Hi│2Sd│2Si│2Vd│2Vi│ │ │ │ │ │ │
- ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐
- │ │ │Pre│Ref│Flp│ │ │ │ │ │ │ │ │Vai│
- ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐
- │ │ │ │ │ │ Fn │ │ │ │Hud│Vad│Hui│
- └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘
-*/
- /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */
- [_FN] = LAYOUT_tkl_ansi(
- QK_BOOT, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_CALC, KC_WSCH, RGB_RMOD, RGB_MOD, RGB_TOG,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, RGB_C_E, _______, _______,
- _______, G1_HUD, G1_HUI, G1_SAD, G1_SAI, G1_VAD, G1_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, G2_HUD, G2_HUI, G2_SAD, G2_SAI, G2_VAD, G2_VAI, _______, _______, _______, _______, _______, _______,
- _______, G_PRE, REF_G, G_FLIP, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,
- _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI
- ),
-};
-
-#ifdef RGB_MATRIX_ENABLE
-
-#include <string.h>
-#include <math.h>
-#include <lib/lib8tion/lib8tion.h>
-
-bool rgb_matrix_indicators_user(void) {
- HSV hsv = rgb_matrix_config.hsv;
- uint8_t time = scale16by8(g_rgb_timer, qadd8(32, 1));
- hsv.h = time;
- RGB rgb = hsv_to_rgb(hsv);
-
- if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(40, rgb.r, rgb.g, rgb.b);
- } else if (!(rgb_matrix_get_flags() & LED_FLAG_INDICATOR)) {
- rgb_matrix_set_color(40, 0, 0, 0);
- }
-
- if (host_keyboard_led_state().scroll_lock) {
- rgb_matrix_set_color(89, rgb.r, rgb.g, rgb.b);
- } else if (!(rgb_matrix_get_flags() & LED_FLAG_INDICATOR)) {
- rgb_matrix_set_color(89, 0, 0, 0);
- }
- return false;
-}
-#endif
diff --git a/keyboards/phage_studio/pila87/rules.mk b/keyboards/phage_studio/pila87/rules.mk
index cd96ec2c2c..25fb7ed8c0 100644
--- a/keyboards/phage_studio/pila87/rules.mk
+++ b/keyboards/phage_studio/pila87/rules.mk
@@ -16,7 +16,3 @@ AUDIO_ENABLE = no # Audio output
# RGB Matrix enabled
RGB_MATRIX_ENABLE = yes
-
-# Wear-levelling driver
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
diff --git a/keyboards/phentech/rpk_001/config.h b/keyboards/phentech/rpk_001/config.h
index 05391a21ed..baa207f065 100644
--- a/keyboards/phentech/rpk_001/config.h
+++ b/keyboards/phentech/rpk_001/config.h
@@ -6,7 +6,6 @@
/* RGB Config */
#define DRIVER_1_CS B6
#define DRIVER_1_EN B7
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 67
/* SPI Config */
@@ -17,7 +16,6 @@
/* SPI Flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
-#define WEAR_LEVELING_BACKING_SIZE (4 * 1024)
/* RGB Matrix */
#define RGB_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/phentech/rpk_001/info.json b/keyboards/phentech/rpk_001/info.json
index 3d89d012ee..d047c36456 100644
--- a/keyboards/phentech/rpk_001/info.json
+++ b/keyboards/phentech/rpk_001/info.json
@@ -13,6 +13,13 @@
"suspend_wakeup_delay": 1000
},
"diode_direction": "ROW2COL",
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 4096
+ }
+ },
"features": {
"nkro": true,
"encoder": true,
diff --git a/keyboards/phentech/rpk_001/rules.mk b/keyboards/phentech/rpk_001/rules.mk
index 002458405e..6e7633bfe0 100644
--- a/keyboards/phentech/rpk_001/rules.mk
+++ b/keyboards/phentech/rpk_001/rules.mk
@@ -1 +1 @@
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/phoenix/config.h b/keyboards/phoenix/config.h
index 76ac0edf2c..9241950731 100644
--- a/keyboards/phoenix/config.h
+++ b/keyboards/phoenix/config.h
@@ -26,7 +26,6 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define HAL_USE_SERIAL TRUE
#define SPLIT_HAND_PIN B9
#define SERIAL_USART_DRIVER SD1
#define SERIAL_USART_TX_PAL_MODE 7
diff --git a/keyboards/phoenix/halconf.h b/keyboards/phoenix/halconf.h
index 2527d38940..95bd6c565f 100644
--- a/keyboards/phoenix/halconf.h
+++ b/keyboards/phoenix/halconf.h
@@ -21,6 +21,8 @@
#pragma once
+#define HAL_USE_SERIAL TRUE
+
#define SERIAL_USB_BUFFERS_SIZE 256
#include_next <halconf.h>
diff --git a/keyboards/pinky/3/keymaps/ninjonas/README.md b/keyboards/pinky/3/keymaps/ninjonas/README.md
deleted file mode 100644
index 7059d51b6d..0000000000
--- a/keyboards/pinky/3/keymaps/ninjonas/README.md
+++ /dev/null
@@ -1,113 +0,0 @@
-# ninjonas Keymap for [Pinky3](https://github.com/tamanishi/Pinky3)
-
-## Keymap
-This keymap is designed based off my typing habits and is subject to change. Information about custom user macros and tap dances can be found [here](../../../../../users/ninjonas).
-
-More information about the Pinky3 keyboard can be found [here](https://github.com/tamanishi/Pinky3)
-
-### QWERTY
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| Tab| Q| W| E| R| T| Play| | Mute| Y| U| I| O| P| \|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| Esc/Caps| A| S| D| F| G| [| | ]| H| J| K| L| ;| '|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| Shift| Z| X| C| V| B| Spc/RAI| | Ent/LOW| N| M| ,| .| /| =|
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | ALT| Cmd| CTRL| KC_LAPP| | KC_RAPP| BckSpace| Del| LOWER|
- `---------------------------------------' `---------------------------------------'
-*/
-```
-
-### DVORAK
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| Tab| '| ,| .| P| Y| Play| | Mute| F| G| C| R| L| \|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| Esc/Caps| A| O| E| U| I| [| | ]| D| H| T| N| S| /|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| Shift| ;| Q| J| K| X| Spc/RAI| | Ent/LOW| B| M| W| V| Z| =|
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | ALT| Cmd| CTRL| KC_LAPP| | KC_RAPP| BckSpace| Del| LOWER|
- `---------------------------------------' `---------------------------------------'
-*/
-```
-
-### COLEMAK
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| Tab| Q| W| F| P| G| Play| | Mute| J| L| U| Y| ;| \|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| Esc/Caps| A| R| S| T| D| [| | ]| H| N| E| I| O| '|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| Shift| Z| X| C| V| B| Spc/RAI| | Ent/LOW| K| M| ,| .| /| =|
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | ALT| Cmd| CTRL| KC_LAPP| | KC_RAPP| BckSpace| Del| LOWER|
- `---------------------------------------' `---------------------------------------'
-*/
-```
-
-### LOWER
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| | | | BriUp| Play| Mute| K_CSCN| | | PgUp| Home| Up| End| | K_MDSH|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| | | | BriDn| Next| VolUp| | | | PgDn| Left| Down| Right| K_LOCK| |
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| M_SHFT| | | | Prev| VolDn| | | | | | | | | M_PYNV|
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | | | | | | | | M_CODE| |
- `---------------------------------------' `---------------------------------------'
-*/
-```
-
-### RAISE
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| `| 1| 2| 3| 4| 5| | | | 6| 7| 8| 9| 0| -|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| ~| !| @| #| $| %| | | | ^| &| *| (| )| _|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| F11| F2| F3| F4| F4| F5| | | | F6| F7| F8| F9| F10| F12|
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | | | | | | | | | |
- `---------------------------------------' `---------------------------------------'
-*/
-```
-
-### ADJUST
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| M_MAKE| EE_CLR | | | | | | | | | | | COLEMAK| DVORAK| QWERTY|
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| M_VRSN| | | | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| M_FLSH| | | | | | | | | | | | | | |
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | | | | | | | | | |
- `---------------------------------------' `---------------------------------------'
-*/
-```
-
-<!--
-### TEMPLATE
-```c
-/*
-,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
-| | | | | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | | | | |
-`---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------'
- | | | | | | | | | |
- `---------------------------------------' `---------------------------------------'
-*/
-```
---> \ No newline at end of file
diff --git a/keyboards/pinky/3/keymaps/ninjonas/config.h b/keyboards/pinky/3/keymaps/ninjonas/config.h
deleted file mode 100644
index 3671c13a38..0000000000
--- a/keyboards/pinky/3/keymaps/ninjonas/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2018 'Masayuki Sunahara'
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 200
-#define RETRO_TAPPPING
diff --git a/keyboards/pinky/3/keymaps/ninjonas/keymap.c b/keyboards/pinky/3/keymaps/ninjonas/keymap.c
deleted file mode 100644
index 8aac3541fe..0000000000
--- a/keyboards/pinky/3/keymaps/ninjonas/keymap.c
+++ /dev/null
@@ -1,111 +0,0 @@
-/* Copyright 2019 @ninjonas
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "ninjonas.h"
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_wrapper(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _____________________QWERTY_L1______________________, KC_MPLY, KC_MUTE, _____________________QWERTY_R1______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________QWERTY_L2______________________, T_LBRC, T_RBRC, _____________________QWERTY_R2______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________QWERTY_L3______________________, LT_RAI, LT_LOW, _____________________QWERTY_R3______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- ________MOD_LEFT_________, XXXXXXX, XXXXXXX, ________MOD_RIGHT________
- //`---------------------------------------' `---------------------------------------'
- ),
-
- [_DVORAK] = LAYOUT_wrapper(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _____________________DVORAK_L1______________________, KC_MPLY, KC_MUTE, _____________________DVORAK_R1______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________DVORAK_L2______________________, T_LBRC, T_RBRC, _____________________DVORAK_R2______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________DVORAK_L3______________________, LT_RAI, LT_LOW, _____________________DVORAK_R3______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- ________MOD_LEFT_________, XXXXXXX, XXXXXXX, ________MOD_RIGHT________
- //`---------------------------------------' `---------------------------------------'
- ),
-
- [_COLEMAK] = LAYOUT_wrapper(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _____________________COLEMAK_L1_____________________, KC_MPLY, KC_MUTE, _____________________COLEMAK_R1_____________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________COLEMAK_L2_____________________, T_LBRC, T_RBRC, _____________________COLEMAK_R2_____________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________COLEMAK_L3_____________________, LT_RAI, LT_LOW, _____________________COLEMAK_R3_____________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- ________MOD_LEFT_________, XXXXXXX, XXXXXXX, ________MOD_RIGHT________
- //`---------------------------------------' `---------------------------------------'
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _____________________LOWER_L1_______________________, K_CSCN, XXXXXXX, _____________________LOWER_R1_______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________LOWER_L2_______________________, XXXXXXX, XXXXXXX, _____________________LOWER_R2_______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________LOWER_L3_______________________, _______, _______, _____________________LOWER_R3_______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- __________________________________, _______, _______, M_CODE, _______
- //`---------------------------------------' `---------------------------------------'
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _____________________NUM_LEFT_______________________, XXXXXXX, XXXXXXX, _____________________NUM_RIGHT______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________SYM_LEFT_______________________, XXXXXXX, XXXXXXX, _____________________SYM_RIGHT______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________FUNC_LEFT______________________, _______, _______, _____________________FUNC_RIGHT_____________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- __________________________________, __________________________________
- //`---------------------------------------' `---------------------------------------'
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _____________________ADJUST_L1______________________, XXXXXXX, XXXXXXX, _____________________ADJUST_R1______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________ADJUST_L2______________________, XXXXXXX, XXXXXXX, _____________________ADJUST_R2______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _____________________ADJUST_L3______________________, _______, _______, _____________________ADJUST_R3______________________,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- __________________________________, __________________________________
- //`---------------------------------------' `---------------------------------------'
- ),
-
- /*
- [_TEMPLATE] = LAYOUT(
- //,---------------------------------------------------------------------. ,---------------------------------------------------------------------.
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------|
- _______, _______, _______, _______, _______, _______, _______, _______
- //`---------------------------------------' `---------------------------------------'
- )
- */
-}; \ No newline at end of file
diff --git a/keyboards/pinky/3/keymaps/ninjonas/rules.mk b/keyboards/pinky/3/keymaps/ninjonas/rules.mk
deleted file mode 100644
index 8d32e22486..0000000000
--- a/keyboards/pinky/3/keymaps/ninjonas/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-MOUSEKEY_ENABLE = no
-LTO_ENABLE = yes
diff --git a/keyboards/planck/ez/config.h b/keyboards/planck/ez/config.h
index 7cfc65d509..93d0823714 100644
--- a/keyboards/planck/ez/config.h
+++ b/keyboards/planck/ez/config.h
@@ -50,9 +50,8 @@
//#define WS2812_DMA_CHANNEL 7 // DMA channel for TIMx_UP
//#define WS2812_EXTERNAL_PULLUP
-#define DRIVER_ADDR_1 0b1010000
+#define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 47
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/planck/ez/ez.c b/keyboards/planck/ez/ez.c
index e6bd217520..dfadb820ae 100644
--- a/keyboards/planck/ez/ez.c
+++ b/keyboards/planck/ez/ez.c
@@ -21,7 +21,7 @@
keyboard_config_t keyboard_config;
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/planck/keymaps/ajp10304/readme.md b/keyboards/planck/keymaps/ajp10304/readme.md
deleted file mode 100644
index 4b7a54bb54..0000000000
--- a/keyboards/planck/keymaps/ajp10304/readme.md
+++ /dev/null
@@ -1,126 +0,0 @@
-# AJP10304 Custom Planck Layout
-# Also available for the Shark, Quark, JJ40 and Atreus50
-
-**Note:** In the tables below where there are two characters on a key,
-the second is the output when shift is applied.
-
-**Note:** The below tables assume a UK layout.
-
-#### Flashing
-Refer to the README.md of the keyboard you want to flash.
-
-##### Main Qwerty Layer
-
-* Tab: when held, operates as shift.
-* Enter: when held, operates as shift.
-* MENU: perform right-click
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| ----:|
-| Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
-| Tab | A | S | D | F | G | H | J | K | L | ;: | Enter|
-| Shft | Z | X | C | V | B | N | M | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Shift| MENU | Ctrl | Fn2 |
-
-##### Main Colemak-DHm Layer
-
-| | | | | | | | | | | | |
-| ---- |:----:| :---:|:---:|:-----:|:----:|:-----:|:-----:|:-----:|:----:|:----:| ----:|
-| Esc | Q | W | F | P | B | J | L | U | Y | ;: | Bksp |
-| Tab | A | R | S | T | G | M | N | E | I | O | Enter|
-| Shft | Z | X | C | D | V | K | H | ,< | .> | /? | Shft |
-| Fn | Ctrl | Alt | GUI | Lower | Bksp | Space | Raise | Shift | MENU | Ctrl | Fn2 |
-
-##### Function Layer
-Activated when `fn` held in the above `qwerty` layer.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | ~ |INSERT|
-| Shift | \| | `¬ | #~ | * | -_ | =+ | \| | [{ | ]} | '@ |Shift |
-| Fn | Ctrl | Alt | GUI |Lower | Bksp |Space |Mouse | MENU | Alt | Ctrl | Fn2 |
-
-##### Lower Layer
-Activated when `Lower` is held in the above `qwerty` layer.
-
-* Numbers are along the top row, their shifted counterparts are on row 2.
-* WrdBks: `backspace` with `ctrl` applied. I.e. delete a word.
-* WrdDel: `delete` with `ctrl` applied. I.e. forward delete a word.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| 1! | 2" | 3£ | 4$ | 5% | 6^ | 7& | 8* | 9( | 0) | DEL | Bksp |
-| ! | " | £ | $ | % | ^ | & | * | ( | ) |WrdDel|WrdBks|
-| Shift | \| | `¬ | #~ | '@ | -_ | =+ | #~ | [{ | ]} | '@ |Shift |
-| | | | |Lower | Del |Space | | Next | Vol- | Vol+ | Play |
-
-##### Raise Layer
-Activated when `Raise` is held in the above `qwerty` layer.
-
-* Preferred layer for typing brackets.
-* Allows for cursor navigation to be used solely with the right hand.
-* WRDSEL: Select the word where the cursor is.
-* |< and >|: Apply `ctrl` to `left` and `right` respectively for word jumping.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---: | :---:| :---:| :---:| :---: | :---:|
-| ` | |WRDSEL| [ | ] | | | PGUP | HOME |PGDOWN| |PRNTSC|
-| ` | | | ( | ) | | | HOME | UP | END | |ZOOM +|
-| | | | { | } | |&#124;<| LEFT | DOWN |RIGHT |>&#124;|ZOOM -|
-| Mouse | | | | | Alt | Enter |Raise | | | | |
-
-##### Lower + Raise
-Activated when `Lower` and `Raise` are held together in the above `qwerty` layer.
-
-* Audio controls in the same position as cursor keys from the `Raise` layer.
-* ????: Runs a macro for outputting a text string. Do not use this store passwords.
-* Reset: Enter bootloader for flashing firmware to the keyboard.
-* CAPS: Toggle caps lock.
-* Macro functions: Allows recording of macros. To start recording the macro, press either REC1 or REC2.
-To finish the recording, press STOP. To replay the macro, press either PLAY1 or PLAY2.
-* MAC: Toggle MAC OS extensions to layers. This allows MLWR to be enabled with LOWER,
-MRSE with RAISE, MFNC with FUNC and MFNC2 with FUNC2 respectively.
-
-| | | | | | | | | | | | |
-| :---: |:----:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|:-------:|
-| ???? | Reset|Qwerty| | | REC1 | REC2 | | | | | Del |
-| CAPS | | | | | PLAY1|PLAY2 | Mute | Vol+ | Play | | Qwerty |
-| MAC | | | | | STOP1|STOP2 | Prev | Vol- | Next | | Colemak |
-| | | | | | | | | DYN | | | |
-
-##### Function 2 Layer
-Activated when `fn` held in the above `qwerty` layer.
-* WRDSEL: Select the word where the cursor is.
-* LNDEL: Delete the line where the cursor is.
-* LNSEL: Select the line where the cursor is.
-* DUP: Duplicate the selected text.
-* LNJOIN: Join the line where the cursor is with the following line.
-* MODE: Print either `PC` or `OSX` depending on what layer mode is active.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | |WRDSEL| | | | LNDEL| | | | | |
-| | | LNSEL| DUP | | | | |LNJOIN| | | |
-| | UNDO | CUT | COPY | PASTE| | | | | | | MODE |
-| | | | | | | | | | | | |
-
-##### Mouse Layer
-Activated when `fn` and `raise` held together.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| ESC | | | | | | W_L | W_UP | BTN3 | W_DWN| W_R | |
-| ACC0 | ACC1 | ACC2 | | | | | BTN1 | UP | BTN2 | | |
-| ACC0 | ACC1 | ACC2 | | | | | LEFT | DOWN | RIGHT| | |
-| | | | | | | | | | | | |
-
-##### Number Pad Layout
-Activated when holding `Esc` key.
-
-| | | | | | | | | | | | |
-| :---: | :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:| :---:|
-| | | | | | |NMLOCK| 7 | 8 | 9 | / | |
-| | | | | | | | 4 | 5 | 6 | * | |
-| | | | | | | | 1 | 2 | 3 | + | |
-| | | | | | | | 0 | . | , | - | |
diff --git a/keyboards/planck/keymaps/altgr/common/init.h b/keyboards/planck/keymaps/altgr/common/init.h
index 6d0b4392fb..e6bb7101e9 100644
--- a/keyboards/planck/keymaps/altgr/common/init.h
+++ b/keyboards/planck/keymaps/altgr/common/init.h
@@ -6,9 +6,6 @@ void matrix_init_user(void)
#ifdef STENO_ENABLE
steno_set_mode(STENO_MODE_BOLT); // or STENO_MODE_GEMINI
#endif
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
}
#ifdef AUDIO_ENABLE
@@ -31,27 +28,4 @@ bool led_update_user(led_t led_state)
return false;
}
#endif
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(song_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(song_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
#endif
diff --git a/keyboards/planck/keymaps/altgr/keymap.c b/keyboards/planck/keymaps/altgr/keymap.c
index 3ef9690a0a..f67682d794 100644
--- a/keyboards/planck/keymaps/altgr/keymap.c
+++ b/keyboards/planck/keymaps/altgr/keymap.c
@@ -67,9 +67,6 @@
#include QMK_KEYBOARD_H
-#ifdef STENO_ENABLE
-#include "keymap_steno.h"
-#endif
extern keymap_config_t keymap_config;
diff --git a/keyboards/planck/keymaps/badger/keymap.c b/keyboards/planck/keymaps/badger/keymap.c
deleted file mode 100644
index 5235ac90f7..0000000000
--- a/keyboards/planck/keymaps/badger/keymap.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
-Copyright 2020 Dan White <opensource@bluetufa.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "ortho.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY_MAC_ORTHO] = LAYOUT_ortho_4x12(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MOMAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- KC_LCTL, KC_LALT, KC_LGUI, RAISE, P_ADJ, KC_SPC, LOWER, KC_NO, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC),
-
- [_MOVE_MAC_ORTHO] = LAYOUT_ortho_4x12(
- KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, KC_NEXT,
- _______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_QWERTY_LINUX_ORTHO] = LAYOUT_ortho_4x12(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MOLNX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- KC_LCTL, KC_LALT, KC_LGUI, RAISE, P_ADJ, KC_SPC, LOWER, KC_NO, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC),
-
- [_MOVE_LINUX_ORTHO] = LAYOUT_ortho_4x12(
- _______, WM_VD1, WM_UH, WM_VD2, KC_MAC1, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, KC_INS,
- _______, WM_LH, WM_MAX, WM_RH, KC_MAC2, KC_PSCR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN,
- _______, WM_VD3, WM_BH, OS_COPY, OS_PAST, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_RAISE] = LAYOUT_ortho_4x12(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DQUO,
- _______, KC_UNDO, KC_CUT, OS_COPY, OS_PAST, KC_MPRV, KC_MNXT, KC_MUTE, KC_LT, KC_GT, KC_QUES, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_LOWER] = LAYOUT_ortho_4x12(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- _______, KC_4, KC_5, KC_6, KC_PMNS, KC_PSCR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_QUOT,
- _______, KC_1, KC_2, KC_3, KC_PPLS, KC_NO, KC_NO, KC_WHOM, KC_WBAK, KC_WFWD, KC_WSCH, _______,
- _______, KC_0, KC_DOT, KC_ENT, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_ADJUST] = LAYOUT_ortho_4x12(
- _______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, KC_MSTP, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_BTN2, KC_INS,
- _______, GE_SWAP, GE_NORM, DB_TOGG, AG_SWAP, AG_NORM, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_BTN1, _______,
- _______, KC_LYRC, KC_FIRST, KC_CAPS, KC_NO, KC_MPRV, KC_MNXT, KC_MUTE, KC_ACL0, KC_ACL1, KC_ACL2, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
-};
diff --git a/keyboards/planck/keymaps/bghull/keymap.c b/keyboards/planck/keymaps/bghull/keymap.c
index 4e556fc215..55f5c54b67 100644
--- a/keyboards/planck/keymaps/bghull/keymap.c
+++ b/keyboards/planck/keymaps/bghull/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
#include "g/keymap_combo.h"
#include "muse.h"
diff --git a/keyboards/planck/keymaps/charlesrocket/config.h b/keyboards/planck/keymaps/charlesrocket/config.h
deleted file mode 100644
index 070635a38d..0000000000
--- a/keyboards/planck/keymaps/charlesrocket/config.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#pragma once
-
-#ifdef AUDIO_ENABLE
-#define STARTUP_SONG SONG(PLANCK_SOUND)
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-#define AUDIO_CLICKY
-#define AUDIO_CLICKY_FREQ_DEFAULT 2360.0f
-#define AUDIO_CLICKY_FREQ_MAX 9500.0f
-#define AUDIO_CLICKY_FREQ_RANDOMNESS 0.05f
-#define DAC_SAMPLE_MAX 9754U
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
-#define ORYX_CONFIGURATOR \ No newline at end of file
diff --git a/keyboards/planck/keymaps/charlesrocket/keymap.c b/keyboards/planck/keymaps/charlesrocket/keymap.c
deleted file mode 100644
index 4d3d16f4a7..0000000000
--- a/keyboards/planck/keymaps/charlesrocket/keymap.c
+++ /dev/null
@@ -1,205 +0,0 @@
-#include QMK_KEYBOARD_H
-#ifdef AUDIO_ENABLE
-#include "muse.h"
-#endif
-#include "eeprom.h"
-
-#define KC_MAC_UNDO LGUI(KC_Z)
-#define KC_MAC_CUT LGUI(KC_X)
-#define KC_MAC_COPY LGUI(KC_C)
-#define KC_MAC_PASTE LGUI(KC_V)
-#define KC_PC_UNDO LCTL(KC_Z)
-#define KC_PC_CUT LCTL(KC_X)
-#define KC_PC_COPY LCTL(KC_C)
-#define KC_PC_PASTE LCTL(KC_V)
-#define ES_LABK_MAC KC_GRAVE
-#define ES_RABK_MAC LSFT(KC_GRAVE)
-#define ES_BSLS_MAC ALGR(KC_6)
-#define NO_PIPE_ALT KC_GRAVE
-#define NO_BSLS_ALT KC_EQUAL
-#define LSA_T(kc) MT(MOD_LSFT | MOD_LALT, kc)
-
-enum planck_keycodes {
- RGB_SLD = SAFE_RANGE,
-};
-
-enum planck_layers {
- _BASE,
- _LOWER,
- _RAISE,
- _ADJUST,
-};
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT_planck_grid(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ESCAPE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOTE,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_ENTER,
- WEBUSB_PAIR, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPACE, KC_NO, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
- ),
-
- [_LOWER] = LAYOUT_planck_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KC_DELETE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NONUS_HASH, KC_NUBS, KC_HOME, KC_END, _______,
- KC_COMMA, _______, _______, _______, _______, _______, KC_NO, _______, KC_MEDIA_NEXT_TRACK, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, KC_MEDIA_PLAY_PAUSE
- ),
-
- [_RAISE] = LAYOUT_planck_grid(
- KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- KC_DELETE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINUS, KC_EQUAL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NONUS_HASH, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, KC_NO, _______, KC_MEDIA_NEXT_TRACK, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, KC_MEDIA_PLAY_PAUSE
- ),
-
- [_ADJUST] = LAYOUT_planck_grid(
- _______, CK_UP, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______,
- KC_DELETE, CK_TOGG, AU_ON, AU_OFF, AU_TOGG, _______, _______, _______, RGB_VAI,RGB_VAD , _______, QK_BOOT,
- _______, CK_DOWN, MU_ON, MU_OFF, MU_TOGG, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_NO, _______, _______, _______, _______, _______
- ),
-
-};
-
-extern bool g_suspend_state;
-extern rgb_config_t rgb_matrix_config;
-
-void keyboard_post_init_user(void) {
- rgb_matrix_enable();
-}
-
-const uint8_t PROGMEM ledmap[][RGB_MATRIX_LED_COUNT][3] = {
- [0] = { {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255}, {0,255,255} },
-
- [1] = { {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255}, {193,255,255} },
-
- [2] = { {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255}, {104,255,255} },
-
- [3] = { {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255}, {0,0,255} },
-
-};
-
-void set_layer_color(int layer) {
- for (int i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
- HSV hsv = {
- .h = pgm_read_byte(&ledmap[layer][i][0]),
- .s = pgm_read_byte(&ledmap[layer][i][1]),
- .v = pgm_read_byte(&ledmap[layer][i][2]),
- };
- if (!hsv.h && !hsv.s && !hsv.v) {
- rgb_matrix_set_color( i, 0, 0, 0 );
- } else {
- RGB rgb = hsv_to_rgb( hsv );
- float f = (float)rgb_matrix_config.hsv.v / UINT8_MAX;
- rgb_matrix_set_color( i, f * rgb.r, f * rgb.g, f * rgb.b );
- }
- }
-}
-
-bool rgb_matrix_indicators_user(void) {
- if (g_suspend_state || keyboard_config.disable_layer_led) { return; }
- switch (get_highest_layer(layer_state)) {
- case 0:
- set_layer_color(0);
- break;
- case 1:
- set_layer_color(1);
- break;
- case 2:
- set_layer_color(2);
- break;
- case 3:
- set_layer_color(3);
- break;
- default:
- if (rgb_matrix_get_flags() == LED_FLAG_NONE)
- rgb_matrix_set_color_all(0, 0, 0);
- break;
- }
- return false;
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case RGB_SLD:
- if (record->event.pressed) {
- rgblight_mode(1);
- }
- return false;
- }
- return true;
-}
-
-#ifdef AUDIO_ENABLE
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_DOWN);
- #else
- tap_code(KC_PGDN);
- #endif
- } else {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_UP);
- #else
- tap_code(KC_PGUP);
- #endif
- }
- }
- return true;
-}
-
-void matrix_scan_user(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- }
-#endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
-#endif
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/planck/keymaps/charlesrocket/readme.md b/keyboards/planck/keymaps/charlesrocket/readme.md
deleted file mode 100644
index 9e9f0d2551..0000000000
--- a/keyboards/planck/keymaps/charlesrocket/readme.md
+++ /dev/null
@@ -1,55 +0,0 @@
-# Red Planck EZ (Glow) with beeps
-
-QWERTY layout with colored layers (red, purple, green and white) for Planck EZ Glow. Soft beep feedback is On by default. Sound level is hardcoded with `DAC_SAMPLE_MAX` and tone settings (`CK`) are in Adjust (WHITE) layer.
-
-```
-RED Base
- ,-----------------------------------------------------------------------------------.
- | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Esc | A | S | D | F | G | H | J | K | L | ; | " |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | QMK | Ctrl | Alt | OS |Lower | Space |Raise | Left | Down | Up |Right |
- `-----------------------------------------------------------------------------------'
-```
-
-```
-PURPLE Lower
- ,-----------------------------------------------------------------------------------.
- | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | | | |Lower | |Raise | Next | Vol- | Vol+ | Play |
- `-----------------------------------------------------------------------------------'
-```
-
-```
-GREEN Raise
- ,-----------------------------------------------------------------------------------.
- | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | | | |Lower | |Raise | Next | Vol- | Vol+ | Play |
- `-----------------------------------------------------------------------------------'
-```
-
-```
-WHITE (Lower + Raise)
- ,-----------------------------------------------------------------------------------.
- | | CkUp | | | | | | | | | | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Del | CkTg |Aud On|AudOff|AudTog| | | |BRGTH+|BRGTH-| | Reset|
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | CkDn |Mus On|MusOff|MusTog| | | | | | | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | | | |Lower | |Raise | | | | |
- `-----------------------------------------------------------------------------------'
-```
diff --git a/keyboards/planck/keymaps/charlesrocket/rules.mk b/keyboards/planck/keymaps/charlesrocket/rules.mk
deleted file mode 100644
index 6e4985a8b1..0000000000
--- a/keyboards/planck/keymaps/charlesrocket/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-SRC += muse.c
-# Set any rules.mk overrides for your specific keymap here.
-# See rules at https://docs.qmk.fm/#/config_options?id=the-rulesmk-file
-LTO_ENABLE = yes
-COMMAND_ENABLE = no
-MOUSEKEY_ENABLE = no
-WEBUSB_ENABLE = yes
-ORYX_ENABLE = yes
diff --git a/keyboards/planck/keymaps/circuit/keymap.c b/keyboards/planck/keymaps/circuit/keymap.c
index d150905dc8..b7d2b121b9 100644
--- a/keyboards/planck/keymaps/circuit/keymap.c
+++ b/keyboards/planck/keymaps/circuit/keymap.c
@@ -131,7 +131,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL ,
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_CAPS, KC_UNDO, KC_CUT, KC_COPY, KC_PSTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, KC_ENT ,
- _______, _______, _______, KC_MUTE, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_HOME, KC_PGDN, KC_END
+ _______, _______, _______, KC_MUTE, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_HOME, KC_PGDN, KC_END
),
/* FUNCTIONS
@@ -155,11 +155,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -210,36 +207,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/csc027/config.h b/keyboards/planck/keymaps/csc027/config.h
deleted file mode 100644
index 2a620db279..0000000000
--- a/keyboards/planck/keymaps/csc027/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2021 Constantine Chen @csc027
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
diff --git a/keyboards/planck/keymaps/csc027/keymap.c b/keyboards/planck/keymaps/csc027/keymap.c
deleted file mode 100644
index 71155eca75..0000000000
--- a/keyboards/planck/keymaps/csc027/keymap.c
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-Copyright 2020 Constantine Chen @csc027
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-#include "csc027.h"
-
-#define LAYOUT_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_wrapper(
- _____________________QWERTY_L1_____________________, _____________________QWERTY_R1_____________________,
- _____________________QWERTY_L2_____________________, _____________________QWERTY_R2_____________________,
- _____________________QWERTY_L3_____________________, _____________________QWERTY_R3_____________________,
- _____________________QWERTY_L4_____________________, _____________________QWERTY_R4_____________________
- ),
-
- [_RS] = LAYOUT_wrapper(
- ______________________RAISE_L1_____________________, ______________________RAISE_R1_____________________,
- ______________________RAISE_L2_____________________, ______________________RAISE_R2_____________________,
- ______________________RAISE_L3_____________________, ______________________RAISE_R3_____________________,
- ______________________RAISE_L4_____________________, ______________________RAISE_R4_____________________
- ),
-
- [_LW] = LAYOUT_wrapper(
- ______________________LOWER_L1_____________________, ______________________LOWER_R1_____________________,
- ______________________LOWER_L2_____________________, ______________________LOWER_R2_____________________,
- ______________________LOWER_L3_____________________, ______________________LOWER_R3_____________________,
- ______________________LOWER_L4_____________________, ______________________LOWER_R4_____________________
- ),
-
- [_MS] = LAYOUT_wrapper(
- ______________________MOUSE_L1_____________________, ______________________MOUSE_R1_____________________,
- ______________________MOUSE_L2_____________________, ______________________MOUSE_R2_____________________,
- ______________________MOUSE_L3_____________________, ______________________MOUSE_R3_____________________,
- ______________________MOUSE_L4_____________________, ______________________MOUSE_R4_____________________
- ),
-
- [_WT] = LAYOUT_wrapper(
- ________________WINDOWS_TERMINAL_L1________________, ________________WINDOWS_TERMINAL_R1________________,
- ________________WINDOWS_TERMINAL_L2________________, ________________WINDOWS_TERMINAL_R2________________,
- ________________WINDOWS_TERMINAL_L3________________, ________________WINDOWS_TERMINAL_R3________________,
- ________________WINDOWS_TERMINAL_L4________________, ________________WINDOWS_TERMINAL_R4________________
- ),
-
- [_CN] = LAYOUT_wrapper(
- ___________________CONVENIENCE_L1__________________, ___________________CONVENIENCE_R1__________________,
- ___________________CONVENIENCE_L2__________________, ___________________CONVENIENCE_R2__________________,
- ___________________CONVENIENCE_L3__________________, ___________________CONVENIENCE_R3__________________,
- ___________________CONVENIENCE_L4__________________, ___________________CONVENIENCE_R4__________________
- ),
-
- [_GG] = LAYOUT_wrapper(
- ________________General_Game_4x12_L1_______________, ________________General_Game_4x12_R1_______________,
- ________________General_Game_4x12_L2_______________, ________________General_Game_4x12_R2_______________,
- ________________General_Game_4x12_L3_______________, ________________General_Game_4x12_R3_______________,
- ________________General_Game_4x12_L4_______________, ________________General_Game_4x12_R4_______________
- ),
-
- [_CS] = LAYOUT_wrapper(
- ___________________CSGO_4x12_L1____________________, ___________________CSGO_4x12_R1____________________,
- ___________________CSGO_4x12_L2____________________, ___________________CSGO_4x12_R2____________________,
- ___________________CSGO_4x12_L3____________________, ___________________CSGO_4x12_R3____________________,
- ___________________CSGO_4x12_L4____________________, ___________________CSGO_4x12_R4____________________
- )
-};
diff --git a/keyboards/planck/keymaps/csc027/rules.mk b/keyboards/planck/keymaps/csc027/rules.mk
deleted file mode 100644
index 0c35b2c28f..0000000000
--- a/keyboards/planck/keymaps/csc027/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-BOOTMAGIC_ENABLE = no
-COMMAND_ENABLE = no
-CONSOLE_ENABLE = no
-EXTRAKEY_ENABLE = yes
-LTO_ENABLE = no
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-RGBLIGHT_ENABLE = no
diff --git a/keyboards/planck/keymaps/dbroqua/keymap.c b/keyboards/planck/keymaps/dbroqua/keymap.c
index 95d0b85408..f7d1575dad 100644
--- a/keyboards/planck/keymaps/dbroqua/keymap.c
+++ b/keyboards/planck/keymaps/dbroqua/keymap.c
@@ -120,16 +120,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -183,36 +178,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/dcompact/keymap.c b/keyboards/planck/keymaps/dcompact/keymap.c
index a63f86e7a8..f781d1e5c0 100644
--- a/keyboards/planck/keymaps/dcompact/keymap.c
+++ b/keyboards/planck/keymaps/dcompact/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
// Custom Keycodes and Combinations Used
#define DEL_SHF SFT_T(KC_DEL)
diff --git a/keyboards/planck/keymaps/dr_notsokind/keymap.c b/keyboards/planck/keymaps/dr_notsokind/keymap.c
index ffceef11cc..f4fb3e0074 100644
--- a/keyboards/planck/keymaps/dr_notsokind/keymap.c
+++ b/keyboards/planck/keymaps/dr_notsokind/keymap.c
@@ -127,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
KC_DEL , KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
KC_LSFT, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, KC_NUHS, KC_NUBS, XXXXXXX, KC_PGUP, KC_ENT,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
),
/* LOWER
@@ -145,7 +145,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL ,
KC_DEL , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
KC_LSFT, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, S(KC_NUHS), S(KC_NUBS), XXXXXXX, KC_PGUP, KC_ENT ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
),
/* MEDIA AND COMMANDS
@@ -163,7 +163,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
XXXXXXX, XXXXXXX, KC_WHOM, XXXXXXX, XXXXXXX, XXXXXXX, KC_AGAIN, XXXXXXX, KC_INS, XXXXXXX, KC_PSCR, XXXXXXX,
XXXXXXX, XXXXXXX, KC_WSCH, XXXXXXX, KC_FIND, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DM_PLY1, DM_PLY2,
KC_LSFT, XXXXXXX, XXXXXXX, KC_CALC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, ZOOM_OUT, ZOOM_IN, KC_MPRV, DM_RSTP,
- ONESHOT, XXXXXXX, XXXXXXX, _______, KC_VOLD, KC_MUTE, KC_MUTE, KC_VOLU, ZOOM_NML, KC_MSTP, KC_MNXT, KC_MPLY
+ ONESHOT, XXXXXXX, XXXXXXX, _______, KC_VOLD, KC_MUTE, KC_MUTE, KC_VOLU, ZOOM_NML, KC_MSTP, KC_MNXT, KC_MPLY
),
/* ONESHOT
@@ -205,14 +205,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_numpad[][2] = SONG(NUM_LOCK_ON_SOUND);
float tone_oneshot[][2] = SONG(TERMINAL_SOUND);
float tone_dyn_macro_rec[][2] = SONG(SONIC_RING);
float tone_dyn_macro_stop[][2] = SONG(COIN_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
void press_key(uint16_t key) {
@@ -303,36 +300,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/dshields/config.h b/keyboards/planck/keymaps/dshields/config.h
deleted file mode 100644
index 857c8164e3..0000000000
--- a/keyboards/planck/keymaps/dshields/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define RGB_DIGITAL_RAIN_DROPS 24
-
diff --git a/keyboards/planck/keymaps/dshields/keymap.c b/keyboards/planck/keymaps/dshields/keymap.c
deleted file mode 100644
index c3dd7a50b4..0000000000
--- a/keyboards/planck/keymaps/dshields/keymap.c
+++ /dev/null
@@ -1,30 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "dshields.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [DEF] = LAYOUT_planck_grid(
- KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P ,
- MT_A, MT_S, MT_D, MT_F, LT_G, KC_TAB, KC_ENT, LT_H, MT_J, MT_K, MT_L, MT_SCLN,
- KC_Z, KC_X, KC_C, KC_V, KC_B, OSMLSFT, DM_PLY1, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
- OSMLCTL, KC_LGUI, OSMLALT, OSL_FUN, OSL_LWR, MT_SPC, MT_SPC, OSL_RSE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
- [LWR] = LAYOUT_planck_grid(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, KC_DEL, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN,
- KC_TILD, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, _______, KC_LCBR, KC_RCBR,
- _______, _______, _______, _______, _______, _______, DM_PLY2, _______, _______, _______, KC_DQUO, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
- [RSE] = LAYOUT_planck_grid(
- KC_1, KC_2, KC_3, KC_4, KC_5, _______, KC_DEL, KC_6, KC_7, KC_8, KC_9, KC_0 ,
- KC_GRV, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, KC_LBRC, KC_RBRC,
- _______, _______, _______, _______, _______, _______, DM_PLY2, _______, _______, _______, KC_QUOT, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
- [FUN] = LAYOUT_planck_grid(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, QK_BOOT, EE_CLR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 ,
- KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, DM_RSTP, _______, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R,
- LGT_TOG, LGT_MOD, LGT_BRT, LGT_INC, LGT_DEC, DM_REC1, DM_REC2, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R
- )
-};
-
diff --git a/keyboards/planck/keymaps/dshields/readme.md b/keyboards/planck/keymaps/dshields/readme.md
deleted file mode 100644
index 6070fd2e9e..0000000000
--- a/keyboards/planck/keymaps/dshields/readme.md
+++ /dev/null
@@ -1,12 +0,0 @@
-
-About
-------
-
-A simple split qwerty Planck layout that makes use of one-shot modifiers,
-one-shot layers, tap-dance keys and dynamic macros.
-
-Layout
--------
-
-![Layout](https://i.imgur.com/vZR3c8m.jpg "Keyboard Layout")
-
diff --git a/keyboards/planck/keymaps/dudeofawesome/config.h b/keyboards/planck/keymaps/dudeofawesome/config.h
deleted file mode 100644
index 0029c26262..0000000000
--- a/keyboards/planck/keymaps/dudeofawesome/config.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
-#include "dudeofawesome.h"
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(WORKMAN_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-// #define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-#endif
diff --git a/keyboards/planck/keymaps/dudeofawesome/keymap.c b/keyboards/planck/keymaps/dudeofawesome/keymap.c
deleted file mode 100644
index 054a76c071..0000000000
--- a/keyboards/planck/keymaps/dudeofawesome/keymap.c
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-extern keymap_config_t keymap_config;
-
-enum planck_layers {
- _QWERTY,
- _WORKMAN,
- _COLEMAK,
- _DVORAK,
- _LOWER,
- _RAISE,
- _ADJUST,
- _NUMPAD,
-};
-
-enum planck_keycodes {
- QWERTY = SAFE_RANGE,
- WORKMAN,
- COLEMAK,
- DVORAK,
- LOWER,
- RAISE,
- BACKLIT
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI | Lower| Space | Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
- */
- [_QWERTY] = LAYOUT_planck_grid(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC ,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT ,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
-
- /* Workman
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | D | R | W | B | J | F | U | P | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | S | H | T | G | Y | N | E | O | I | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | M | C | V | K | L | , | . | / | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI | Lower| Space | Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
- */
- [_WORKMAN] = LAYOUT_planck_grid(
- KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_BSPC ,
- KC_ESC, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT ,
- KC_LSFT, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
-
- /* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | R | S | T | D | H | N | E | I | O | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | K | M | , | . | / | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI | Lower| Space | Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
- */
- [_COLEMAK] = LAYOUT_planck_grid(
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
-
- /* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | D | H | T | N | S | / |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI | Lower| Space | Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
- */
- [_DVORAK] = LAYOUT_planck_grid(
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC ,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH ,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
-
- /* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Play | Vol- | Vol+ | Next |
- * `-----------------------------------------------------------------------------------'
- */
- [_LOWER] = LAYOUT_planck_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MNXT
- ),
-
- /* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Play | Vol- | Vol+ | Next |
- * `-----------------------------------------------------------------------------------'
- */
- [_RAISE] = LAYOUT_planck_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MNXT
- ),
-
- /* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | | Reset| | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |CPSLCK| | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Wrkman|Dvorak|Colemk| |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
- [_ADJUST] = LAYOUT_planck_grid(
- _______, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL ,
- KC_CAPS, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, WORKMAN, DVORAK, COLEMAK, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, RGB_M_R, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- /* Numpad
- * ,-----------------------------------------------------------------------------------.
- * | | ✗ | Home | Up | End | PgUp | ✗ | 7 | 8 | 9 | + | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | ✗ | Left | Down | Right| PgDn | ✗ | 4 | 5 | 6 | - | ✗ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | / | * | - | + | Enter| ✗ | 1 | 2 | 3 | * | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | ✗ | | 0 | 0 | . | / | = |
- * `-----------------------------------------------------------------------------------'
- */
- [_NUMPAD] = LAYOUT_planck_grid(
- _______, KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_NO, KC_P7, KC_P8, KC_P9, KC_PPLS, _______,
- _______, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_NO, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_NO,
- _______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_PENT, KC_NO, KC_P1, KC_P2, KC_P3, KC_PAST, KC_PENT,
- _______, _______, _______, _______, KC_NO, _______, _______, KC_P0, KC_P0, KC_PDOT, KC_PSLS, KC_PEQL
- )
-
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- print("mode just switched to qwerty and this is a huge string\n");
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- case WORKMAN:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_WORKMAN);
- }
- return false;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- }
- return true;
-}
diff --git a/keyboards/planck/keymaps/dudeofawesome/readme.md b/keyboards/planck/keymaps/dudeofawesome/readme.md
deleted file mode 100644
index 7e2f7dc943..0000000000
--- a/keyboards/planck/keymaps/dudeofawesome/readme.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# DudeOfAwesome's Planck Layout
-
-![Planck Layout](https://i.imgur.com/mOc2Sbd.png)
-
-## Features
-
-- Base Layers
- - QWERTY
- - Workman
- - Dvorak
- - Colemak
-- Numpad layer
- ![numpad layer](https://i.imgur.com/PQENcut.png)
-- Audio
-
-## Building and flashing
-
-1. Put your board in DFU mode with either the button on the bottom, or with a software key in your current firmware
-1. Flash:
- ```bash
- $ make make planck/rev4:dudeofawesome:dfu
- ```
diff --git a/keyboards/planck/keymaps/dudeofawesome/rules.mk b/keyboards/planck/keymaps/dudeofawesome/rules.mk
deleted file mode 100644
index eeee270d5e..0000000000
--- a/keyboards/planck/keymaps/dudeofawesome/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-AUDIO_ENABLE = yes # Audio output on port C6
-CONSOLE_ENABLE = no # Console for debug(+400)
-MIDI_ENABLE = no # MIDI controls
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
diff --git a/keyboards/planck/keymaps/emilyh/keymap.c b/keyboards/planck/keymaps/emilyh/keymap.c
index 17bbc98b7e..b226c1f6e7 100644
--- a/keyboards/planck/keymaps/emilyh/keymap.c
+++ b/keyboards/planck/keymaps/emilyh/keymap.c
@@ -164,16 +164,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -273,36 +268,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/experimental/keymap.c b/keyboards/planck/keymaps/experimental/keymap.c
index d5c7425439..deaf5afb4d 100644
--- a/keyboards/planck/keymaps/experimental/keymap.c
+++ b/keyboards/planck/keymaps/experimental/keymap.c
@@ -1,6 +1,5 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
#include "version.h"
extern keymap_config_t keymap_config;
@@ -177,16 +176,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -340,38 +334,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
};
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
-
void leader_end_user(void) {
if (leader_sequence_one_key(KC_R)) {
tap_random_base64();
diff --git a/keyboards/planck/keymaps/gunp/keymap.c b/keyboards/planck/keymaps/gunp/keymap.c
index 7c2f6c0bd5..9fa05d593a 100644
--- a/keyboards/planck/keymaps/gunp/keymap.c
+++ b/keyboards/planck/keymaps/gunp/keymap.c
@@ -282,26 +282,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return false;
}
#endif
-
-#ifdef AUDIO_ENABLE
- float tone_startup[][2] = SONG(STARTUP_SOUND);
- float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
- float tone_ly_normal[][2] = SONG(QWERTY_SOUND);
- float tone_ly_spacial[][2] = SONG(DVORAK_SOUND);
-
- float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-#endif
-
-void startup_user(void) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(tone_startup);
-#endif
-}
-
-void shutdown_user(void) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(tone_goodbye);
- stop_all_notes();
-#endif
-}
diff --git a/keyboards/planck/keymaps/handwired_binaryplease/keymap.c b/keyboards/planck/keymaps/handwired_binaryplease/keymap.c
index 13917e516d..93e6f9b78e 100644
--- a/keyboards/planck/keymaps/handwired_binaryplease/keymap.c
+++ b/keyboards/planck/keymaps/handwired_binaryplease/keymap.c
@@ -163,15 +163,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -271,36 +267,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/hiea/common/init.h b/keyboards/planck/keymaps/hiea/common/init.h
index 6d0b4392fb..e6bb7101e9 100644
--- a/keyboards/planck/keymaps/hiea/common/init.h
+++ b/keyboards/planck/keymaps/hiea/common/init.h
@@ -6,9 +6,6 @@ void matrix_init_user(void)
#ifdef STENO_ENABLE
steno_set_mode(STENO_MODE_BOLT); // or STENO_MODE_GEMINI
#endif
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
}
#ifdef AUDIO_ENABLE
@@ -31,27 +28,4 @@ bool led_update_user(led_t led_state)
return false;
}
#endif
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(song_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(song_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
#endif
diff --git a/keyboards/planck/keymaps/hiea/keymap.c b/keyboards/planck/keymaps/hiea/keymap.c
index eed4954096..be138a3eb4 100644
--- a/keyboards/planck/keymaps/hiea/keymap.c
+++ b/keyboards/planck/keymaps/hiea/keymap.c
@@ -67,9 +67,6 @@
#include QMK_KEYBOARD_H
-#ifdef STENO_ENABLE
-#include "keymap_steno.h"
-#endif
extern keymap_config_t keymap_config;
diff --git a/keyboards/planck/keymaps/hieax/common/init.h b/keyboards/planck/keymaps/hieax/common/init.h
index 6d0b4392fb..d009bd69a1 100644
--- a/keyboards/planck/keymaps/hieax/common/init.h
+++ b/keyboards/planck/keymaps/hieax/common/init.h
@@ -6,9 +6,6 @@ void matrix_init_user(void)
#ifdef STENO_ENABLE
steno_set_mode(STENO_MODE_BOLT); // or STENO_MODE_GEMINI
#endif
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
}
#ifdef AUDIO_ENABLE
@@ -32,26 +29,4 @@ bool led_update_user(led_t led_state)
}
#endif
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(song_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(song_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
#endif
diff --git a/keyboards/planck/keymaps/hieax/keymap.c b/keyboards/planck/keymaps/hieax/keymap.c
index 80de85b884..4acd526916 100644
--- a/keyboards/planck/keymaps/hieax/keymap.c
+++ b/keyboards/planck/keymaps/hieax/keymap.c
@@ -67,9 +67,6 @@
#include QMK_KEYBOARD_H
-#ifdef STENO_ENABLE
-#include "keymap_steno.h"
-#endif
extern keymap_config_t keymap_config;
diff --git a/keyboards/planck/keymaps/hvp/config.h b/keyboards/planck/keymaps/hvp/config.h
deleted file mode 100644
index 472320ed68..0000000000
--- a/keyboards/planck/keymaps/hvp/config.h
+++ /dev/null
@@ -1,35 +0,0 @@
-#pragma once
-#define TAPPING_TERM 150
-#define PERMISSIVE_HOLD
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(PLANCK_SOUND)
-// #define STARTUP_SONG SONG(NO_SOUND)
-
-# define DEFAULT_LAYER_SONGS \
- { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
diff --git a/keyboards/planck/keymaps/hvp/keymap.c b/keyboards/planck/keymaps/hvp/keymap.c
deleted file mode 100644
index bd0c2cadec..0000000000
--- a/keyboards/planck/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,186 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "hvp.c"
-#include QMK_KEYBOARD_H
-#include "muse.h"
-
-enum planck_layers {
- _QWERTY,
- _LOWER,
- _RAISE,
- _NAVI,
- _ADJUST
-};
-
-enum planck_keycodes {
- QWERTY = SAFE_RANGE
-};
-
-#define _QWERTY 0
-#define _RAISE 1
-#define _LOWER 2
-#define _NAVI 3
-#define _ADJUST 5
-
-#define LT3_ESC LT(3, KC_ESC)
-#define LT4_TAB LT(5, KC_TAB)
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QWERTY] = LAYOUT_planck_grid(
- LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LT3_ESC, KC_A, KC_S, KC_D, LT(3,KC_F), KC_G, KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT,
- KC_LCTL, KC_APP, KC_LGUI, KC_LALT, MO(2), KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-[_RAISE] = LAYOUT_planck_grid( /* Right */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-[_LOWER] = LAYOUT_planck_grid( /* Left */
- KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_BSPC,
- KC_DEL, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_TILD,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-[_NAVI] = LAYOUT_planck_grid( /* Esc */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, D_NAVI, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_PSCR,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPLY, KC_MSTP, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
-),
-
-[_ADJUST] = LAYOUT_planck_grid( /* Tab */
- _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______,
- _______, _______, MU_NEXT, AU_ON, AU_OFF, _______, _______, KC_4, KC_5, KC_6, _______, _______,
- KC_PSCR, AU_PREV, AU_NEXT, MU_ON, MU_OFF, _______, _______, KC_0, KC_1, KC_2, KC_3, _______,
- QK_BOOT, _______, _______, _______, MI_ON, MI_OFF, _______, _______, _______, _______, _______, DB_TOGG
-)};
-
-#ifdef AUDIO_ENABLE
- float plover_song[][2] = SONG(PLOVER_SOUND);
- float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
-#endif
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_DOWN);
- #else
- tap_code(KC_PGDN);
- #endif
- } else {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_UP);
- #else
- tap_code(KC_PGUP);
- #endif
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0: {
-#ifdef AUDIO_ENABLE
- static bool play_sound = false;
-#endif
- if (active) {
-#ifdef AUDIO_ENABLE
- if (play_sound) { PLAY_SONG(plover_song); }
-#endif
- layer_on(_ADJUST);
- } else {
-#ifdef AUDIO_ENABLE
- if (play_sound) { PLAY_SONG(plover_gb_song); }
-#endif
- layer_off(_ADJUST);
- }
-#ifdef AUDIO_ENABLE
- play_sound = true;
-#endif
- break;
- }
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
- return true;
-}
-
-void matrix_scan_user(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- } else {
- if (muse_counter) {
- stop_all_notes();
- muse_counter = 0;
- }
- }
-#endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/planck/keymaps/hvp/readme.md b/keyboards/planck/keymaps/hvp/readme.md
deleted file mode 100644
index cb58d85785..0000000000
--- a/keyboards/planck/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: Planck rev6
-Keys: 40% (12x4) ortholinear keyboard
-Layout: Swedish characters on main layer using tap dance. Built for Eurkey keyboard layout.
-Flash instructions: Flash using avrdude, will req the hvp user space to compile.
-
-> make planck/rev6:hvp:dfu-util
-
-Links:
-Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/planck
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/planck/keymaps/hvp/rules.mk b/keyboards/planck/keymaps/hvp/rules.mk
deleted file mode 100644
index 896115f718..0000000000
--- a/keyboards/planck/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-SRC += muse.c
-
-RGBLIGHT_ENABLE = no
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/planck/keymaps/impossible/keymap.c b/keyboards/planck/keymaps/impossible/keymap.c
index 9145ad79aa..8aa3eb149f 100644
--- a/keyboards/planck/keymaps/impossible/keymap.c
+++ b/keyboards/planck/keymaps/impossible/keymap.c
@@ -140,16 +140,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
float tone_workman[][2] = SONG(QWERTY_SOUND);
float tone_qwerty[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
#endif
@@ -196,36 +189,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/ishtob/config.h b/keyboards/planck/keymaps/ishtob/config.h
deleted file mode 100755
index 688607634c..0000000000
--- a/keyboards/planck/keymaps/ishtob/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
-
-#ifndef USERSPACE_CONFIG_H
-#define USERSPACE_CONFIG_H
-
-#ifdef AUDIO_ENABLE
-
-// #define STARTUP_SONG SONG(E1M1_DOOM)
-// #define GOODBYE_SONG SONG(SONIC_RING)
-/* #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND), \
- }
-*/
-//audio clicky
- #define AUDIO_CLICKY
- // to enable clicky on startup
- //#define AUDIO_CLICKY_ON
- #define AUDIO_CLICKY_FREQ_RANDOMNESS 1.0f
-
-
-#endif
-
-#define FORCE_NKRO
-
-#define LEADER_TIMEOUT 300
-
-#undef DEBOUNCE
-#define DEBOUNCE 0
-
-//skip usb startup check
-//#define NO_USB_STARTUP_CHECK
-
-
-#endif
diff --git a/keyboards/planck/keymaps/ishtob/keymap.c b/keyboards/planck/keymaps/ishtob/keymap.c
deleted file mode 100644
index 75c581de19..0000000000
--- a/keyboards/planck/keymaps/ishtob/keymap.c
+++ /dev/null
@@ -1,344 +0,0 @@
-// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
-// this is the style you want to emulate.
-
-#include "ishtob.h"
-
-extern keymap_config_t keymap_config;
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- ,-----------------------------------------------------------------------------------.
- * |Tab/FN| Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | LCtl | A | S | D | F | G | H | J | K | L | ; |Ctl/Et|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / | - |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | Caps | Alt | GUI |Lower | Space |Raise |NumLay| RAlt | Men | Del |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_ortho_4x12_wrapper(
- LT_FN(KC_TAB), _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- KC_LCTL, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, CTL_ENT,
- KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, LT_RAI(KC_MINS),
- KC_ESC, KC_CAPS, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_SPC, RAISE, KC_RALT, TG_NUMLAY, KC_APP, KC_DEL
-),
-
-/* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | R | S | T | D | H | N | E | I | O |Ctl/Et|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | K | M | , | . | / | - |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_ortho_4x12_wrapper(
- LT_FN(KC_TAB), _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSPC,
- KC_LCTL, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, KC_ENT,
- KC_LSFT, _________________COLEMAK_L3________________, _________________COLEMAK_R3________________, LT_RAI(KC_MINS),
- KC_ESC, KC_CAPS, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_SPC, RAISE, KC_RALT, TG_NUMLAY, KC_APP, KC_DEL
-),
-
-/* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | D | H | T | N | S |Ctl/Et|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_DVORAK] = LAYOUT_ortho_4x12_wrapper(
- LT_FN(KC_TAB), _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSPC,
- KC_LCTL, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, KC_ENT,
- KC_LSFT, _________________DVORAK_L3_________________, _________________DVORAK_R3_________________, LT_RAI(KC_MINS),
- KC_ESC, KC_CAPS, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_SPC, RAISE, KC_RALT, TG_NUMLAY, KC_APP, KC_DEL
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ~ | \ |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | [ | ] | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_ortho_4x12_wrapper(
- ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_GRV, KC_BSLS,
- _______, __________________LONG_FUNC_LEFT___________________, KC_UNDS, KC_EQL, KC_LBRC, KC_RBRC, KC_PIPE,
- _______, __________________LONG_FUNC_RIGHT__________________,S(KC_NUHS),S(KC_NUBS),KC_LCBR, KC_RCBR, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | * | \ |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | A | Up | D | | Vol+ | 4 | 5 | 6 | + | : | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | Lt | Dn | Rt | Mute | Vol- | 1 | 2 | 3 | Up | / | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | 0 | | Left | Down | Right| NumLk|
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_ortho_4x12_wrapper(
- ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, KC_PLUS, KC_BSLS,
- _______, KC_A, KC_UP, KC_D, KC_PSCR, KC_VOLU, KC_4, KC_5, KC_6, KC_PAST, KC_COLN, KC_QUOT,
- _______, KC_LEFT, KC_DOWN, KC_RIGHT,KC_MUTE, KC_VOLD, KC_1, KC_2, KC_3, KC_UP, KC_SLSH, _______,
- _______, _______, _______, _______, _______, KC_SPC, KC_0, _______, KC_LEFT, KC_DOWN, KC_RIGHT, KC_NUM
-),
-
-/* Plover layer (http://opensteno.org)
- * ,-----------------------------------------------------------------------------------.
- * | # | # | # | # | # | # | # | # | # | # | # | # |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | S | T | P | H | * | * | F | P | L | T | D |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | S | K | W | R | * | * | R | B | G | S | Z |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Exit | | | A | O | | E | U | | | |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_PLOVER] = LAYOUT_ortho_4x12_wrapper(
- KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 ,
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
- XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- EXT_PLV, XXXXXXX, XXXXXXX, KC_C, KC_V, XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-/* FN layer on Esc key
- * ,-----------------------------------------------------------------------------------.
- * | | ! | @ | # | $ | % | ^ | & | * | ( | ) | + |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | F6 | _ | = | [ | ] | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | { | } |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_FNLAYER] = LAYOUT_ortho_4x12_wrapper(
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS,
- _______, __________________LONG_FUNC_LEFT___________________, KC_UNDS, KC_EQL, KC_LBRC, KC_RBRC, KC_QUOT,
- _______, __________________LONG_FUNC_RIGHT__________________,S(KC_NUHS),S(KC_NUBS),KC_LCBR, KC_RCBR, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Num Layer
- * ,-----------------------------------------------------------------------------------.
- * | | Q | Up | 4 | | | 7 | 8 | 9 | - | + | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Lt | Dn | Rt | | | 4 | 5 | 6 | * | : | ENT |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | Z | X | C | V | | 1 | 2 | 3 | . | / | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | 0 | . | Exit | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_NUMLAY] = LAYOUT_ortho_4x12_wrapper(
- _______, KC_Q, KC_UP, KC_H, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, KC_MINS, KC_PLUS, KC_BSPC,
- _______, KC_LEFT, KC_DOWN, KC_RIGHT, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, KC_PAST, KC_COLN, KC_ENT,
- _______, KC_Z, KC_X, KC_C, KC_V, XXXXXXX, KC_P1, KC_P2, KC_P3, KC_PDOT, KC_PSLS, _______,
- _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, _______, _______, KC_NUM, KC_MPLY
-),
-
-/* Mouse Layer (semi-col)
- * ,-----------------------------------------------------------------------------------.
- * | ACCL0| ACCL1| ACCL2|Email |Email2| Home | Wh_Up| WHL_L| M_Up | WHL_R|PASS| Meta |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | |RT Q6H| End | Wh_Dn| M_Lft| M_Dn | M_Rt | | DayRn|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | BTN2 | BTN3 | BTN4 | BTN5 | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | BTN1 | | | | Citx | |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_MOUSECURSOR] = LAYOUT_ortho_4x12_wrapper(
- KC_ACL0, KC_ACL1, KC_ACL2, M_EMAIL,M_EMAIL2, KC_HOME, KC_PGUP, KC_WH_L, KC_MS_U, KC_WH_R, P_MPASS, P_META,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, O_RTQ6H, KC_END , KC_PGDN, KC_MS_L, KC_MS_D, KC_MS_R, _______, O_DAYRN,
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, KC_BTN2, KC_BTN3, KC_BTN4, KC_BTN5, _______, _______,
- _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, P_CITRIX, O_AUTODC
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | Reset|RGB TG|RGB ST|RGBH -|RGBH +|RGBS -|RGBS +|RGBV -|RGBV +| | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|Musoff| | | | | BL + |BL ST |BL TG |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_ortho_4x12_wrapper(
- DFU, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_DEL,
- _______, MAGIC_TOGGLE_NKRO, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, BL_DOWN,BL_UP, BL_STEP, BL_TOGG,
- _______, _______, _______, _______, _______, _______, _______, _______, CK_RST, CK_DOWN, CK_UP, CK_TOGG
-)
-
-
-};
-
-#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
-float tone_qwerty[][2] = SONG(QWERTY_SOUND);
-float tone_dvorak[][2] = SONG(DVORAK_SOUND);
-float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float tone_plover[][2] = SONG(PLOVER_SOUND);
-float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-#endif
-
-
-void persistant_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
-
-// Helper Functions
-void tap(uint16_t keycode){ register_code(keycode); unregister_code(keycode); };
-
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_qwerty);
- #endif
- persistant_default_layer_set(1UL<<_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_colemak);
- #endif
- persistant_default_layer_set(1UL<<_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_dvorak);
- #endif
- persistant_default_layer_set(1UL<<_DVORAK);
- }
- return false;
- break;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
- break;
- case PLOVER:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- stop_all_notes();
- PLAY_SONG(tone_plover);
- #endif
- layer_off(_RAISE);
- layer_off(_LOWER);
- layer_off(_ADJUST);
- layer_on(_PLOVER);
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- }
- keymap_config.raw = eeconfig_read_keymap();
- keymap_config.nkro = 1;
- eeconfig_update_keymap(keymap_config.raw);
- }
- return false;
- break;
- case EXT_PLV:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_plover_gb);
- #endif
- layer_off(_PLOVER);
- }
- return false;
- break;
- }
- return true;
-}
-
-void matrix_init_keymap(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- #ifdef RGB_MATRIX_ENABLE
- rgblight_mode(RGB_MATRIX_CYCLE_ALL);
- #endif //RGB_matrix
- wait_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- wait_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
-
diff --git a/keyboards/planck/keymaps/ishtob/readme.md b/keyboards/planck/keymaps/ishtob/readme.md
deleted file mode 100644
index 108b9ee0c3..0000000000
--- a/keyboards/planck/keymaps/ishtob/readme.md
+++ /dev/null
@@ -1,16 +0,0 @@
-![Planck Layout Image](https://i.imgur.com/yKewjWW.jpg)
-
-#Ishtob's personal planck layout
-
-This is the default layout used with my planck light, though the rest of the keymap could also be used for the full sized planck or let's split.
-
-
-Main difference with the default layout:
-
-* Tab take the upper left key, made into a Tap layer to access the symbols from the number row
-
-* Esc moved to lower corner
-
-* Capslock is on the base layer as it is used quite often with my work's software
-
-* Numbers layer on lower is positioned to resemble a numpad with 5 taking the location of J for the homing bump and easier entry
diff --git a/keyboards/planck/keymaps/ishtob/rules.mk b/keyboards/planck/keymaps/ishtob/rules.mk
deleted file mode 100644
index 62ed57bb93..0000000000
--- a/keyboards/planck/keymaps/ishtob/rules.mk
+++ /dev/null
@@ -1,18 +0,0 @@
-# Build Options
-# comment out to disable the options.
-#
-BACKLIGHT_ENABLE = no
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-#SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend
-NKRO_ENABLE = yes # USB Nkey Rollover
-CUSTOM_MATRIX = yes # Custom matrix file
-AUDIO_ENABLE = yes
-ENCODER_ENABLE = yes
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
diff --git a/keyboards/planck/keymaps/jdelkins/config.h b/keyboards/planck/keymaps/jdelkins/config.h
deleted file mode 100644
index 67ebf46955..0000000000
--- a/keyboards/planck/keymaps/jdelkins/config.h
+++ /dev/null
@@ -1,61 +0,0 @@
- /* Copyright 2020 Joel Elkins
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
-
-/*
- * MIDI options
- */
-
-/* Prevent use of disabled MIDI features in the keymap */
-//#define MIDI_ENABLE_STRICT 1
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
-
-#define AUTO_SHIFT_TIMEOUT 160
-#define AUTO_SHIFT_REPEAT
-#define RGBLIGHT_LAYERS
-#define LEADER_TIMEOUT 400
-#define LEADER_PER_KEY_TIMING
-#define USB_MAX_POWER_CONSUMPTION 100
diff --git a/keyboards/planck/keymaps/jdelkins/keymap.c b/keyboards/planck/keymaps/jdelkins/keymap.c
deleted file mode 100644
index ecb49da406..0000000000
--- a/keyboards/planck/keymaps/jdelkins/keymap.c
+++ /dev/null
@@ -1,506 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- * Portions Copyright 2020 Joel Elkins
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "jdelkins.h"
-#include "muse.h"
-
-#ifdef LAYOUT
-#undef LAYOUT
-#endif
-#define LAYOUT LAYOUT_planck_2x2u
-
-uint16_t bspc_timer;
-
-enum {
- MY_BSPC = USER_SAFE_RANGE,
- BACKLIT,
-};
-
-// recycle unused layers defined in my userspace
-#define _RAISE _FUNC
-#define _LOWER _SECRETS
-
-#define KP MO(_KP)
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-int ctl_state = 0;
-
-void ctl_finished(tap_dance_state_t *state, void *user_data) {
- ctl_state = cur_dance(state);
- switch (ctl_state) {
- case SINGLE_TAP: leader_start(); break;
- case SINGLE_HOLD: register_code(KC_LCTL); break;
- case DOUBLE_TAP: tap_code(KC_RCTL); break;
- case DOUBLE_HOLD: register_code(KC_RCTL); break;
- case TRIPLE_TAP: tap_code(KC_RCTL); tap_code(KC_RCTL); break;
- case TRIPLE_HOLD: tap_code(KC_RCTL); register_code(KC_RCTL); break;
- }
-}
-
-void ctl_reset(tap_dance_state_t *state, void *user_data) {
- switch (ctl_state) {
- case SINGLE_HOLD: unregister_code(KC_LCTL); break;
- case DOUBLE_HOLD:
- case TRIPLE_HOLD: unregister_code(KC_RCTL); break;
- }
- ctl_state = 0;
-}
-
-void g_finished(tap_dance_state_t *state, void *user_data) {
- switch (cur_dance(state)) {
- case SINGLE_TAP:
- tap_code16(C(KC_END));
- break;
- case DOUBLE_TAP:
- tap_code16(C(KC_HOME));
- break;
- }
-}
-
-int kp_state = 0;
-
-void kp_finished(tap_dance_state_t *state, void *user_data) {
- kp_state = hold_cur_dance(state);
- switch (kp_state) {
- case SINGLE_HOLD: layer_on(_KP); break;
- case DOUBLE_HOLD: layer_on(_RPT); break;
- }
-}
-
-void kp_reset(tap_dance_state_t *state, void *user_data) {
- switch (kp_state) {
- case SINGLE_HOLD: layer_off(_KP); break;
- case DOUBLE_HOLD: layer_off(_RPT); break;
- }
- kp_state = 0;
-}
-
-enum {
- TD_LDCTL,
- TD_G,
- TD_KP
-};
-
-tap_dance_action_t tap_dance_actions[] = {
- [TD_LDCTL] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ctl_finished, ctl_reset),
- [TD_G] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, g_finished, NULL),
- [TD_KP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, kp_finished, kp_reset),
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | ` |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | Gui | Alt |Keypad| Bksp | Space | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_GRV,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- TD(TD_LDCTL), MO(_ADJUST), MY_GUI, MY_ALT, MY_BSPC, MY_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Same as _QWERTY but disable wutoshift */
-[_RPT] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_GAME] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_NO, KC_LALT, RAISE, KC_SPC, KC_SPC, _______, _______, _______, _______
-),
-
-[_RAISE] = LAYOUT(
- KC_ESC, _______, FW_WRD, KB_EOL, TG(_RPT), _______, KB_COPY, KC_PGUP, _______, KC_LPRN, KC_RPRN, KC_MINS,
- KC_RCTL, KB_BOL, _______, KC_PGDN, _______, TD(TD_G), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_BSLS,
- _______, _______, KC_DEL, KC_CAPS, KB_PASTE, BK_WRD, _______, _______, _______, _______, _______, MY_CALC,
- KC_RCTL, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-[_KP] = LAYOUT(
- KC_ESC, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, KC_7, KC_8, KC_9, KC_MINS, KC_EQL,
- _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, XXXXXXX, KC_4, KC_5, KC_6, KC_ASTR, _______,
- KC_NUM, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_1, KC_2, KC_3, KC_SLSH, _______,
- _______, _______, _______, _______, _______, _______, KC_0, KC_DOT, KC_PLUS, KC_END
-),
-
-[_LOWER] = LAYOUT(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LCBR, KC_RCBR, KC_EQL,
- _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, _______, _______, _______, KC_LBRC, KC_RBRC, KC_PIPE,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, _______, KC_HOME, KC_END, KC_MPLY,
- _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
-),
-
-[_ADJUST] = LAYOUT(
- _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL,
- KC_RCTL, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, TG(_KP), KC_BRID, KC_BRIU, KC_MUTE,
- _______, RGB_TOG, KB_MAKE, KB_FLSH, KB_VRSN, KB_BOOT, _______, TG_SYS, _______, _______, _______, KC_MPLY,
- KC_RCTL, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
-)
-
-/* [_ADJUST] = LAYOUT( */
-/* _______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , */
-/* _______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, */
-/* _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, */
-/* _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ */
-/* ) */
-
-};
-
-/* plwnck rev6 RGB layout:
- * ----------------------------------
- * | 6 5 4 3 |
- * | 0 |
- * | 7 8 1 2 |
- * ----------------------------------
- */
-
-const rgblight_segment_t PROGMEM rpt_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {1, 2, HSV_PINK},
- {7, 2, HSV_PINK}
-);
-
-const rgblight_segment_t PROGMEM game_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {2, 2, HSV_RED},
- {6, 2, HSV_RED}
-);
-
-const rgblight_segment_t PROGMEM raise_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {3, 4, HSV_GREEN}
-);
-
-const rgblight_segment_t PROGMEM kp_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {1, 8, HSV_ORANGE}
-);
-
-const rgblight_segment_t PROGMEM lower_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {3, 4, HSV_BLUE}
-);
-
-const rgblight_segment_t PROGMEM adjust_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {1, 8, HSV_BLUE}
-);
-
-const rgblight_segment_t PROGMEM capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {1, 1, HSV_WHITE},
- {8, 1, HSV_WHITE}
-);
-
-const rgblight_segment_t PROGMEM numlock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {6, 2, HSV_PURPLE}
-);
-
-enum rgb_layer_index {
- L_RPT,
- L_GAME,
- L_RAISE,
- L_KP,
- L_LOWER,
- L_ADJUST,
- L_CAPSLOCK,
- L_NUMLOCK
-};
-
-const rgblight_segment_t * const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- [L_RPT] = rpt_layer,
- [L_GAME] = game_layer,
- [L_RAISE] = raise_layer,
- [L_KP] = kp_layer,
- [L_LOWER] = lower_layer,
- [L_ADJUST] = adjust_layer,
- [L_CAPSLOCK] = capslock_layer,
- [L_NUMLOCK] = numlock_layer
-);
-
-#ifdef AUDIO_ENABLE
- float plover_song[][2] = SONG(PLOVER_SOUND);
- float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
-#endif
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- rgblight_set_layer_state(L_RPT, layer_state_cmp(state, _RPT));
- rgblight_set_layer_state(L_GAME, layer_state_cmp(state, _GAME));
- rgblight_set_layer_state(L_RAISE, layer_state_cmp(state, _RAISE));
- rgblight_set_layer_state(L_KP, layer_state_cmp(state, _KP));
- rgblight_set_layer_state(L_LOWER, layer_state_cmp(state, _LOWER));
- rgblight_set_layer_state(L_ADJUST, layer_state_cmp(state, _ADJUST));
- rgblight_set_layer_state(L_CAPSLOCK, CAPSLOCK_ON);
- rgblight_set_layer_state(L_NUMLOCK, NUMLOCK_ON && layer_state_cmp(state, _KP));
- if (layer_state_cmp(state, _GAME) || layer_state_cmp(state, _RPT))
- autoshift_disable();
- else
- autoshift_enable();
- return update_tri_layer_state(state, _KP, _RAISE, _LOWER);
-}
-
-bool led_update_user(led_t led_state) {
- rgblight_set_layer_state(L_CAPSLOCK, led_state.caps_lock);
- rgblight_set_layer_state(L_NUMLOCK, led_state.num_lock && layer_state_is(_KP));
- return true;
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- bool rc = true;
- static bool bspc_del = false;
- static bool bspc_initiated_func = false;
-
- switch (keycode) {
- case MY_BSPC:
- if (record->event.pressed) {
- if (IS_LAYER_ON(_KP)) {
- // special case: if _KP was turned on by another key,
- // treat this as KC_DEL and don't do anything else
- bspc_del = true;
- register_code(KC_DEL);
- return false;
- } else {
- bspc_timer = timer_read();
- bspc_initiated_func = true;
- layer_on(_KP);
- }
- } else {
- if (bspc_del) {
- // special case: if _KP was turned on by another key,
- // treat this as KC_DEL and don't do anything else
- unregister_code(KC_DEL);
- bspc_del = false;
- return false;
- }
-
- if (bspc_initiated_func) {
- layer_off(_KP);
- bspc_initiated_func = false;
- }
-
- if (bspc_timer > 0) {
- // here the key was pressed and released before the timer
- // expired, so treat as a backspace tap and pretend we
- // never activated _KP
- bspc_timer = 0;
- tap_code(KC_BSPC);
- } else {
- // the timer went off, so KC_BSPC was registered in
- // matrix_scan_keymap. unregister it now
- unregister_code(KC_BSPC);
- }
- }
- return false; // special case, return now without resetting timer
- // other paths should set rc and break
- break;
-
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
-#ifdef BACKLIGHT_ENABLE
- backlight_step();
-#endif
- } else {
- unregister_code(KC_RSFT);
- }
- rc = false;
- break;
- }
-
- bspc_timer = 0;
- return rc;
-}
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_DOWN);
- #else
- tap_code(KC_PGDN);
- #endif
- } else {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_UP);
- #else
- tap_code(KC_PGUP);
- #endif
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0: {
-#ifdef AUDIO_ENABLE
- static bool play_sound = false;
-#endif
- if (active) {
-#ifdef AUDIO_ENABLE
- if (play_sound) { PLAY_SONG(plover_song); }
-#endif
- layer_on(_ADJUST);
- } else {
-#ifdef AUDIO_ENABLE
- if (play_sound) { PLAY_SONG(plover_gb_song); }
-#endif
- layer_off(_ADJUST);
- }
-#ifdef AUDIO_ENABLE
- play_sound = true;
-#endif
- break;
- }
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
- return true;
-}
-
-void keyboard_post_init_keymap(void) {
- rgblight_layers = my_rgb_layers;
- bspc_timer = 0;
-}
-
-void leader_end_user(void) {
- if (leader_sequence_one_key(KC_K)) {
- layer_invert(_KP);
- }
- if (leader_sequence_one_key(KC_G)) {
- layer_invert(_GAME);
- }
- if (leader_sequence_one_key(KC_KP_5)) {
- layer_invert(_KP);
- }
- if (leader_sequence_one_key(KC_5)) {
- layer_invert(_KP);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_1)) {
- send_secret_string(0);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_2)) {
- send_secret_string(1);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_3)) {
- send_secret_string(2);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_4)) {
- send_secret_string(3);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_5)) {
- send_secret_string(4);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_6)) {
- send_secret_string(5);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_M)) {
- send_secret_string(0);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_COMM)) {
- send_secret_string(1);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_DOT)) {
- send_secret_string(2);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_J)) {
- send_secret_string(3);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_K)) {
- send_secret_string(4);
- }
- if (leader_sequence_two_keys(KC_SCLN, KC_L)) {
- send_secret_string(5);
- }
- if (leader_sequence_one_key(KC_C)) {
- tap_code16(C(KC_C));
- }
- // neovim: terminal escape
- if (leader_sequence_one_key(KC_QUOT)) {
- tap_code16(C(KC_BSLS));
- tap_code16(C(KC_N));
- }
-}
-
-void matrix_scan_keymap(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- } else {
- if (muse_counter) {
- stop_all_notes();
- muse_counter = 0;
- }
- }
-#endif
- // if MY_BSPC is held down too long, pretend like it wasn't and start
- // pressing backspace
- if (bspc_timer > 0 && timer_elapsed(bspc_timer) > LEADER_TIMEOUT) {
- layer_off(_KP);
- bspc_timer = 0;
- register_code(KC_BSPC);
- }
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/planck/keymaps/jdelkins/readme.md b/keyboards/planck/keymaps/jdelkins/readme.md
deleted file mode 100644
index 5149c7668d..0000000000
--- a/keyboards/planck/keymaps/jdelkins/readme.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# jdelkins layout
-
-Features:
-
-- 2x2u layout with the split spaces both operating as layer keys
-- No top row numbers; rely on a keypad layer
-- My typical leader setup for toggling modes, accessing secrets, etc.
-
-
-# TODO
-
-- Add/improve audio features
-- Fix \_ADJUST layer - there's a bunch of junk on there that needs cleanng up.
diff --git a/keyboards/planck/keymaps/jdelkins/rules.mk b/keyboards/planck/keymaps/jdelkins/rules.mk
deleted file mode 100644
index f17e67c234..0000000000
--- a/keyboards/planck/keymaps/jdelkins/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-SRC += muse.c
-LEADER_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-AUTO_SHIFT_ENABLE = yes
diff --git a/keyboards/planck/keymaps/jhenahan/keymap.c b/keyboards/planck/keymaps/jhenahan/keymap.c
index 21c489922d..c884e864ac 100644
--- a/keyboards/planck/keymaps/jhenahan/keymap.c
+++ b/keyboards/planck/keymaps/jhenahan/keymap.c
@@ -160,15 +160,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_workman[][2] = SONG(WORKMAN_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -268,36 +263,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/kuatsure/config.h b/keyboards/planck/keymaps/kuatsure/config.h
deleted file mode 100644
index 8d832285bc..0000000000
--- a/keyboards/planck/keymaps/kuatsure/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2020 kuatsure
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define GAME_SOUND DVORAK_SOUND
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(GAME_SOUND) \
- }
-#endif
-
-#define MIDI_BASIC
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
diff --git a/keyboards/planck/keymaps/kuatsure/keymap.c b/keyboards/planck/keymaps/kuatsure/keymap.c
deleted file mode 100644
index db78f1138e..0000000000
--- a/keyboards/planck/keymaps/kuatsure/keymap.c
+++ /dev/null
@@ -1,318 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "muse.h"
-#include "kuatsure.h"
-
-#define LAYOUT_planck_grid_wrapper(...) LAYOUT_planck_grid(__VA_ARGS__)
-
-enum planck_layers {
- _QWERTY,
- _GAME,
- _GAME_LOWER,
- _GAME_RAISE,
- _MOUSE,
- _LOWER,
- _RAISE,
- _ADJUST
-};
-
-enum planck_keycodes {
- QWERTY = USER_SAFE_RANGE,
- GAME,
-};
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-#define MOUSE TG(_MOUSE)
-#define G_LOWER MO(_GAME_LOWER)
-#define G_RAISE MO(_GAME_RAISE)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab/M| Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc/C| A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / | Ent |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Mute | Ldr | Alt | GUI |Lower | RSE | SPC | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_planck_grid_wrapper(
- KT_MTAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
- KT_CESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT,
- KT_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT,
- KC_MPLY, QK_LEAD, KC_LALT, KC_LGUI, LOWER, RAISE, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | | ! | & | Up | | ` | | { | } | _ | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Del | Left | Down | Right| ~ | = | ( | ) | + | : | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | VolD | Prev | Play | Next | VolU | - | [ | ] | | ? |Mouse |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Home | PgDn | PgUp | End |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_planck_grid_wrapper(
- _______, KC_EXLM, KC_AMPR, KC_UP, _______, KC_GRV, _______, ____CRBRACES____, KC_UNDS, _______, KC_PIPE,
- _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TILD, KC_EQL, _____PARENS_____, KC_PLUS, KC_COLN, KC_DQT ,
- _______, KC_VOLD, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLU, KC_MINS, ___SQBRACKETS___, _______, KC_QUES, MOUSE ,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | | F9 | F10 | F11 | F12 | | * | 7 | 8 | 9 | 0 | \ |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F5 | F6 | F7 | F8 | | = | 4 | 5 | 6 | + | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | | - | 1 | 2 | 3 | / | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | 0 | 0 | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_planck_grid_wrapper(
- _______, ____________FUNCTION_3____________, _______, KC_ASTR, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- _______, ____________FUNCTION_2____________, _______, KC_EQL, KC_4, KC_5, KC_6, KC_PLUS, _______,
- _______, ____________FUNCTION_1____________, _______, KC_MINS, KC_1, KC_2, KC_3, KC_SLASH, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______, _______
-),
-
-/* Mouse
- * ,-----------------------------------------------------------------------------------.
- * | | | Btn1 | mUP | Btn2 | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | mLEFT| mDWN | mRGHT| | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | Btn3 | Btn4 | Btn5 | | | | | | |Mouse |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_MOUSE] = LAYOUT_planck_grid_wrapper(
- _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_BTN3, KC_BTN4, KC_BTN5, _______, _______, _______, _______, _______, _______, MOUSE ,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | | MAKE | FLSH | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Boot | Debug| | |Aud on|AudOff| Game |Mouse | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | VRSN | | |MusMod|Mus on|MusOff| | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_planck_grid_wrapper(
- _______, KB_MAKE, KB_FLSH, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
- _______, QK_BOOT, DB_TOGG, _______, _______, AU_ON, AU_OFF, GAME, MOUSE, _______, _______, _______,
- _______, KB_VRSN, _______, _______, MU_NEXT, MU_ON, MU_OFF, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Game
- *
- * Mostly transparent, but wanted to disable gui key.
- * Also give a key to get back to qwerty layout.
- *
- * Disabling the `Controlled ESC` key is also plus.
- * Think BDO / Monster Hunter / D2
- *
- * ,-----------------------------------------------------------------------------------.
- * | Tab | | | | | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Ctrl | | | | | | | | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shft | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | |Qwerty| F14 | Spc | gLWR | gRSE | ESC | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_GAME] = LAYOUT_planck_grid_wrapper(
- KC_TAB, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, QWERTY, KC_F14, KC_SPC, G_LOWER, G_RAISE, KC_ESC, KC_ESC, _______, _______, _______, _______
-),
-
-/* Game Lower
- * ,-----------------------------------------------------------------------------------.
- * | | 1 | 2 | 3 | 4 | ` | | F9 | F10 | F11 | F12 | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | 5 | 6 | 7 | 8 | | | F5 | F6 | F7 | F8 | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | 9 | 0 | - | = | | | F1 | F2 | F3 | F4 | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_GAME_LOWER] = LAYOUT_planck_grid_wrapper(
- _______, KC_1, KC_2, KC_3, KC_4, KC_GRV, _______, ____________FUNCTION_3____________, _______,
- _______, KC_5, KC_6, KC_7, KC_8, _______, _______, ____________FUNCTION_2____________, _______,
- _______, KC_9, KC_0, KC_MINS, KC_EQL, _______, _______, ____________FUNCTION_1____________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Game Raise
- * ,-----------------------------------------------------------------------------------.
- * | | p7 | p8 | p9 | p0 | ` | | F9 | F10 | F11 | F12 | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | p4 | p5 | p6 | p+ | | | F5 | F6 | F7 | F8 | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | p1 | p2 | p3 | pE | | | F1 | F2 | F3 | F4 | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_GAME_RAISE] = LAYOUT_planck_grid_wrapper(
- _______, KC_P7, KC_P8, KC_P9, KC_P0, KC_GRV, _______, ____________FUNCTION_3____________, _______,
- _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, _______, ____________FUNCTION_2____________, _______,
- _______, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, ____________FUNCTION_1____________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-};
-
-#ifdef AUDIO_ENABLE
- float plover_song[][2] = SONG(PLOVER_SOUND);
- float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
-#endif
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- print("mode just switched to qwerty and this is a huge string\n");
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
-
- case GAME:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_GAME);
- }
- return false;
- break;
- }
- return true;
-}
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-void encoder_update(bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- if (IS_LAYER_ON(_MOUSE)) {
- tap_code(KC_MS_WH_UP);
- } else {
- tap_code(KC_VOLU);
- }
- } else {
- if (IS_LAYER_ON(_MOUSE)) {
- tap_code(KC_MS_WH_DOWN);
- } else {
- tap_code(KC_VOLD);
- }
- }
- }
-}
-
-void dip_update(uint8_t index, bool active) {
- switch (index) {
- case 0:
- if (active) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(plover_song);
- #endif
- layer_on(_ADJUST);
- } else {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(plover_gb_song);
- #endif
- layer_off(_ADJUST);
- }
- break;
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- #ifdef AUDIO_ENABLE
- stop_all_notes();
- #endif
- }
- }
-}
-
-void matrix_scan_keymap(void) {
- #ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- }
- #endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/planck/keymaps/kuatsure/readme.md b/keyboards/planck/keymaps/kuatsure/readme.md
deleted file mode 100644
index b1e5c64230..0000000000
--- a/keyboards/planck/keymaps/kuatsure/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The kuatsure Planck layout - largely based on the Preonic's & Keyboard Paradise V60's layout
diff --git a/keyboards/planck/keymaps/kuatsure/rules.mk b/keyboards/planck/keymaps/kuatsure/rules.mk
deleted file mode 100644
index f9fba61d3e..0000000000
--- a/keyboards/planck/keymaps/kuatsure/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SRC += muse.c
-
-BACKLIGHT_ENABLE = no
-LEADER_ENABLE = yes
-ENCODER_ENABLE = yes
-MOUSEKEY_ENABLE = yes
diff --git a/keyboards/planck/keymaps/lae3/keymap.c b/keyboards/planck/keymaps/lae3/keymap.c
index 7b6175d543..86c89a30a4 100644
--- a/keyboards/planck/keymaps/lae3/keymap.c
+++ b/keyboards/planck/keymaps/lae3/keymap.c
@@ -168,17 +168,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
-#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-#endif
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record)
-{
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LOWER:
if (record->event.pressed) {
@@ -217,37 +207,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record)
}
return true;
}
-
-void matrix_init_user(void)
-{
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(100); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/mattly/config.h b/keyboards/planck/keymaps/mattly/config.h
deleted file mode 100644
index 31c47c85b4..0000000000
--- a/keyboards/planck/keymaps/mattly/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#pragma once
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
-
-#define PERMISSIVE_HOLD
-#define TAPPING_TOGGLE 2
-#define TAPPING_TERM 200
diff --git a/keyboards/planck/keymaps/mattly/keymap.c b/keyboards/planck/keymaps/mattly/keymap.c
deleted file mode 100644
index 7d6245a1e6..0000000000
--- a/keyboards/planck/keymaps/mattly/keymap.c
+++ /dev/null
@@ -1,34 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "mattly.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_planck_grid(
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_SCLN,
- KC_CAPS, A_CTRL, S_ALT, D_GUI, F_SHFT, KC_G, KC_H, J_SHFT, K_GUI, L_ALT, MINSCTL, KC_QUOT,
- XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- XXXXXXX, NAVLOCK, XXXXXXX, ESC_HYP, BSP_NUM, ENT_SFT, SPC_SFT, TAB_SYM, DEL_WRP, XXXXXXX, SYMLOCK, XXXXXXX
- ),
-
- [_SYMBOL] = LAYOUT_planck_grid(
- _______, KC_AMPR, KC_GRV, KC_TILD, KC_LBRC, KC_RBRC, KC_LABK, KC_RABK, KC_PLUS, KC_ASTR, XXXXXXX, _______,
- _______, KC_DLR, KC_PERC, KC_EQL, KC_LPRN, KC_RPRN, KC_SCLN, KC_COLN, KC_EXLM, KC_AT, KC_UNDS, _______,
- _______, XXXXXXX, KC_CIRC, KC_HASH, KC_LCBR, KC_RCBR, KC_QUOT, KC_DQUO, KC_PIPE, KC_BSLS, KC_QUES, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-[_NAVNUM] = LAYOUT_planck_grid(
- _______, XXXXXXX, BWORD, KC_UP, FWORD, KC_PGUP, KC_DOT, KC_7, KC_8, KC_9, KC_PLUS, KC_ASTR,
- _______, KC_ENT, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_0, KC_4, KC_5, KC_6, KC_MINS, KC_SLSH,
- _______, KC_BSPC, KC_HOME, KC_TAB, KC_END, KC_DEL, KC_COMM, KC_1, KC_2, KC_3, KC_EQL, KC_PERC,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_0, KC_COLN, KC_DLR, _______
-),
-
-[_FUNCT] = LAYOUT_planck_grid(
- QK_BOOT, XALLWIN, XPRVSPC, NWIN, XNXTSPC, XDESKTP, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F13,
- DB_TOGG, XNOTIFY, PTAB, PWIN, NTAB, NAVBACK, NAVFWD, KC_F4, KC_F5, KC_F6, KC_F11, KC_F14,
- KC_MUTE, KC_VOLD, KC_VOLU, KC_MRWD, KC_MFFD, KC_MPLY, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F12, KC_F15,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-};
-
-
diff --git a/keyboards/planck/keymaps/mattly/readme.md b/keyboards/planck/keymaps/mattly/readme.md
deleted file mode 100644
index 4e8c7f17c6..0000000000
--- a/keyboards/planck/keymaps/mattly/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-See my readme in [users/mattly](../../../../../users/mattly/readme.md) \ No newline at end of file
diff --git a/keyboards/planck/keymaps/mattly/rules.mk b/keyboards/planck/keymaps/mattly/rules.mk
deleted file mode 100644
index 7210cf34f0..0000000000
--- a/keyboards/planck/keymaps/mattly/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-AUDIO_ENABLE = yes
-SRC += muse.c
diff --git a/keyboards/planck/keymaps/mjt/keymap.c b/keyboards/planck/keymaps/mjt/keymap.c
index e927627e1f..7ab0fff241 100644
--- a/keyboards/planck/keymaps/mjt/keymap.c
+++ b/keyboards/planck/keymaps/mjt/keymap.c
@@ -133,16 +133,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dyn_macro_rec[][2] = SONG(DVORAK_SOUND);
float tone_dyn_macro_play[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
void persistant_default_layer_set(uint16_t default_layer) {
@@ -239,36 +234,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/mjtnumsym/keymap.c b/keyboards/planck/keymaps/mjtnumsym/keymap.c
index 3fa05ad178..4eaafb75d6 100644
--- a/keyboards/planck/keymaps/mjtnumsym/keymap.c
+++ b/keyboards/planck/keymaps/mjtnumsym/keymap.c
@@ -132,16 +132,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dyn_macro_rec[][2] = SONG(DVORAK_SOUND);
float tone_dyn_macro_play[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
void persistant_default_layer_set(uint16_t default_layer) {
@@ -238,36 +233,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/mnil/config.h b/keyboards/planck/keymaps/mnil/config.h
deleted file mode 100644
index 2dc8e19be6..0000000000
--- a/keyboards/planck/keymaps/mnil/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2021 Mats Nilsson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(NO_SOUND)
-#endif
-
-#define MIDI_BASIC
diff --git a/keyboards/planck/keymaps/mnil/keymap.c b/keyboards/planck/keymaps/mnil/keymap.c
deleted file mode 100644
index 5aa85340bd..0000000000
--- a/keyboards/planck/keymaps/mnil/keymap.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Copyright 2021 Mats Nilsson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "mnil.h"
-
-layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_layer_state(state, _SYMBOLS, _NAVIGATION, _NUMPAD); }
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_COLEMAK] = LAYOUT_planck_2x2u(
- KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, TD(OAA), KC_BSPC,
- KC_TAB, TD(AAE), KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_NO,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, SE_MINS, KC_NO ,
- KC_LCTL, KC_NO, KC_LGUI, SFT_TAB, _NAV_SPC, _SYM_ENT, CTL_BSPC,ALT_DEL, KC_NO, KC_LGUI
-),
-
-[_QWERTY] = LAYOUT_planck_2x2u(
- KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, SE_ARNG,
- KC_TRNS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SE_ODIA, SE_ADIA,
- KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-),
-
-[_SYMBOLS] = LAYOUT_planck_2x2u(
- KC_TRNS, KC_NO, SE_PIPE, SE_LBRC, SE_RBRC, KC_NO, S(KC_5), SE_QUES, SE_AT, SE_EQL, SE_DLR, KC_BSPC,
- KC_TRNS, SE_LCBR, SE_RCBR, SE_LPRN, SE_RPRN, KC_NO, SE_PLUS, S(KC_1), S(KC_2), S(KC_3), SE_AMPR, KC_QUOT,
- KC_TRNS, M_TILD, M_CIRC, SE_LABK, SE_RABK, KC_NO, SE_QUOT, SE_SLSH, SE_BSLS, SE_ASTR, M_BTCK, KC_ENT,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-),
-
-[_NAVIGATION] = LAYOUT_planck_2x2u(
- KC_TRNS, KC_NO, CUT, COPY, PASTE, AUTOFILL,KC_NO, KC_HOME, KC_WH_D, KC_WH_U, KC_END, KC_NO,
- KC_TRNS, KC_ACL0, KC_ACL1, KC_BTN2, KC_BTN1, KC_LCTL, KC_WH_L, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_WH_R,
- KC_TRNS, KC_ACL2, KC_BTN4, KC_BTN3, KC_BTN5, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_LCTL,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-),
-
-[_NUMPAD] = LAYOUT_planck_2x2u(
- KC_TRNS, QUIT, WIN, MVWSL, MVWSR, CRYWS, TERM, KC_7, KC_8, KC_9, KC_COMM, QK_BOOT,
- KC_TRNS, CS_TAB, C_TAB, PRVWS, NXTWS, I3MOD, OPEN, KC_4, KC_5, KC_6, KC_0, KC_NO,
- KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, MOVWS, BROWSER, KC_1, KC_2, KC_3, KC_DOT, KC_NO,
- QWE_COL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
-),
-
-};
-// clang-format on
diff --git a/keyboards/planck/keymaps/mnil/readme.md b/keyboards/planck/keymaps/mnil/readme.md
deleted file mode 100644
index 43c9409614..0000000000
--- a/keyboards/planck/keymaps/mnil/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# mnil's planck keymap
-Read my user settings [here](../../../../users/mnil/readme.md) for more details.
diff --git a/keyboards/planck/keymaps/muppetjones/.clang-format b/keyboards/planck/keymaps/muppetjones/.clang-format
deleted file mode 100644
index df3dbd17b4..0000000000
--- a/keyboards/planck/keymaps/muppetjones/.clang-format
+++ /dev/null
@@ -1,26 +0,0 @@
----
-BasedOnStyle: Google
-AlignAfterOpenBracket: Align
-AlignConsecutiveAssignments: 'true'
-AlignConsecutiveDeclarations: 'true'
-AlignOperands: 'true'
-AllowAllParametersOfDeclarationOnNextLine: 'false'
-AlwaysBreakAfterDefinitionReturnType: None
-AlwaysBreakAfterReturnType: None
-AlwaysBreakBeforeMultilineStrings: 'false'
-BinPackArguments: 'true'
-BinPackParameters: 'true'
-ColumnLimit: '160'
-IndentCaseLabels: 'true'
-IndentPPDirectives: AfterHash
-IndentWidth: '4'
-MaxEmptyLinesToKeep: '1'
-PointerAlignment: Right
-SortIncludes: 'false'
-SpaceBeforeAssignmentOperators: 'true'
-SpaceBeforeParens: ControlStatements
-SpaceInEmptyParentheses: 'false'
-TabWidth: '4'
-UseTab: Never
-
-...
diff --git a/keyboards/planck/keymaps/muppetjones/config.h b/keyboards/planck/keymaps/muppetjones/config.h
deleted file mode 100644
index 88331e71f6..0000000000
--- a/keyboards/planck/keymaps/muppetjones/config.h
+++ /dev/null
@@ -1,53 +0,0 @@
- /* Copyright 2020 Stephen Bush <muppetjones>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(PLANCK_SOUND)
-// #define STARTUP_SONG SONG(NO_SOUND)
-
-# define DEFAULT_LAYER_SONGS \
- { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/*
- * Other options
- */
-
-// Enable lighting layers
-#define RGBLIGHT_LAYERS
-#define RGBLIGHT_SLEEP
-
-// Change "hold" time (default is 200 ms)
-#define TAPPING_TERM 200
-
-// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define QUICK_TAP_TERM 0
diff --git a/keyboards/planck/keymaps/muppetjones/keymap.c b/keyboards/planck/keymaps/muppetjones/keymap.c
deleted file mode 100644
index a5609e5711..0000000000
--- a/keyboards/planck/keymaps/muppetjones/keymap.c
+++ /dev/null
@@ -1,403 +0,0 @@
-/* Copyright 2020 Stephen Bush
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/*
- * qmk compile -kb planck/rev6 -km muppetjones
- */
-
-#include QMK_KEYBOARD_H
-#include "muse.h"
-#include "muppetjones.h"
-
-#define LAYOUT_planck_wrapper(...) LAYOUT_planck_grid(__VA_ARGS__)
-
-/* Extend layers from muppetjones.h
- _CLMK_DH = 0,
- _QWERTY
- _MOUSE,
- _LOWER,
- _RAISE,
- _NAV,
- _ADJUST,
- */
-enum planck_layers {
- _PLOVER = _ADJUST + 1,
-};
-
-enum planck_keycodes {
- PLOVER = SAFE_RANGE,
- BACKLIT,
- EXT_PLV,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
-
-/* Colemak DH II
- * ,-----------------------------------------------------------------------------------.
- * | Q | W | F | P | B | Del | Bksp | J | L | U | Y | ; |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | A | R | S | T | G | | " | M | N | E | I | O |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Z | X | C | D | V SFT| Enter| Tab | K | H | , | . | / |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt |HY_ESC|Lower | Space |Raise |HY_ESC| Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_CLMK_DH] = LAYOUT_planck_wrapper(
- __COLEMAK_MOD_DH_L1________________________, KC_DEL, KC_BSPC, __COLEMAK_MOD_DH_R1_W_QUOT_________________,
- __COLEMAK_MOD_DH_L2_W_GACS_________________, CW_TOGG, KC_QUOT, __COLEMAK_MOD_DH_R2_W_SCAG_________________,
- __COLEMAK_MOD_DH_L3_W_SFTV_________________, KC_ENT, KC_TAB, __COLEMAK_MOD_DH_R3________________________,
- TD_LAYR, XXXXXXX, XXXXXXX, HY_ESC, LOW_ENT, KC_BSPC, KC_BSPC, RAI_SPC, HY_ESC, KC_BSPC, XXXXXXX, XXXXXXX
-),
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_planck_wrapper(
- __QWERTY_L1________________________________, _______, _______, __QWERTY_R1________________________________,
- __QWERTY_L2________________________________, _______, _______, __QWERTY_R2________________________________,
- __QWERTY_L3________________________________, _______, _______, __QWERTY_R3________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________
-),
-
-/* MOUSE
- * No encoders. Just an empty layer.
- */
-[_MOUSE] = LAYOUT_planck_wrapper(
- __BLANK____________________________________, _______, _______, __BLANK____________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________
-),
-
-// /* Colemak DH
-// * ,-----------------------------------------------------------------------------------.
-// * | Tab | Q | W | F | P | B | J | L | U | Y | ; | Bksp |
-// * |------+------+------+------+------+------+------+------+------+------+------+------|
-// * | Esc | A | R | S | T | G | M | N | E | I | O | " |
-// * |------+------+------+------+------+------+------+------+------+------+------+------|
-// * | Shift| Z | X | C | D | V | K | H | , | . | / |Enter |
-// * |------+------+------+------+------+------+------+------+------+------+------+------|
-// * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
-// * `-----------------------------------------------------------------------------------'
-// */
-// [_CLMK_DH] = LAYOUT_planck_grid(
-// KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
-// HY_ESC, HOME_A, HOME_R, HOME_S, HOME_T, KC_G, KC_M, HOME_N, HOME_E, HOME_I, HOME_O, KC_QUOT,
-// KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, SC_SENT,
-// KC_LCTL, NUMPD, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX
-// ),
-/* Lower (numpad, symbols)
- * ,-----------------------------------------------------------------------------------.
- * | | | ( | ) | ~ | | | | 7 & | 8 * | 9 ( | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | { | } | ` | | | - _ | 4 $ | 5 % | 6 ^ | * |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | [ | ] | | | | = + | 1 ! | 2 @ | 3 # | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | Space | | 0 | . | | |
- * `-----------------------------------------------------------------------------------'
- * 21.02.22: Removed F keys.
- * 21.03.28: Completely revamped to contain 10-key numpad and symbols.
- */
-[_LOWER] = LAYOUT_planck_wrapper(
- __SYMBOLS_L1_______________________________, _______, _______, __NUMPAD_R1________________________________,
- __SYMBOLS_L2_______________________________, _______, _______, __NUMPAD_R2________________________________,
- __SYMBOLS_L3_______________________________, _______, _______, __NUMPAD_R3________________________________,
- _______, _______, _______, _______, _______, _______, _______, __NUMPAD_R4________________________________
-),
-
-/* Raise
-* ,-----------------------------------------------------------------------------------.
-* | ` | | | | | | | Pg Up| HOME | | END | |
-* |------+------+------+------+------+------+------+------+------+------+------+------|
-* | GUI | ALT | CTL | SFT | | | | Pg Dn| LEFT | DOWN | UP |RIGHT |
-* |------+------+------+------+------+------+------+------+------+------+------+------|
-* | | | | | | | | | | | | |
-* |------+------+------+------+------+------+------+------+------+------+------+------|
-* | | | | | | | | Next | Vol- | Vol+ | Play |
-* `-----------------------------------------------------------------------------------'
-* 21.02.22: Removed F keys and replaced with useful programming keys.
-*/
-[_RAISE] = LAYOUT_planck_wrapper(
- XXXXXXX, XXXXXXX, KC_LPRN, KC_RPRN, XXXXXXX, _______, _______, __NAV_R1___________________________________,
- KC_LGUI, KC_LALT, HR_LBRC, HR_RBRC, KC_MINS, _______, _______, __NAV_R2___________________________________,
- XXXXXXX, XXXXXXX, KC_LCBR, KC_RCBR, KC_EQL, _______, _______, __NAV_R3___________________________________,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Nav
- * Available in raise.
- */
-[_NAV] = LAYOUT_planck_wrapper(
- __BLANK____________________________________, _______, _______, __BLANK____________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________,
- __BLANK____________________________________, _______, _______, __BLANK____________________________________
-),
-
-/* Plover layer (http://opensteno.org)
- * ,-----------------------------------------------------------------------------------.
- * | # | # | # | # | # | # | # | # | # | # | # | # |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | S | T | P | H | * | * | F | P | L | T | D |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | S | K | W | R | * | * | R | B | G | S | Z |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Exit | | | A | O | | E | U | | | |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_PLOVER] = LAYOUT_planck_grid(
- KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 ,
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
- XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- EXT_PLV, XXXXXXX, XXXXXXX, KC_C, KC_V, XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-/* Adjust (Lower + Raise)
- * v------------------------RGB CONTROL--------------------v
- * ,-----------------------------------------------------------------------------------.
- * | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | |Brite |MUSmod|Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|CLMKII|Plover| |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof|ClmkDH| | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_planck_wrapper(
- __ADJUST_L1________________________________, AU_NEXT, PLOVER, __MEDIA_R1_________________________________,
- __ADJUST_L2________________________________, AU_PREV, CLMK_DH, __MEDIA_R2_________________________________,
- __ADJUST_L3________________________________, MU_NEXT, QWERTY, __MEDIA_R3_________________________________,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
-)
-
-/*
- * ,-----------------------------------------------------------------------------------.
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
-[_ADJUST] = LAYOUT_planck_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
- */
- // clang-format on
-};
-
-#ifdef AUDIO_ENABLE
-float plover_song[][2] = SONG(PLOVER_SOUND);
-float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
-#endif
-
-#define LIGHT_GOLDEN 30, 255, 100
-#define LIGHT_MAGENTA 213, 255, 100
-#define LIGHT_AZURE 148, 255, 100
-
-// Define light layers
-// -- e.g., light up LEDS 3-6 with RED when the numpd layer is active
-const rgblight_segment_t PROGMEM rgb_clmk_dh[] = RGBLIGHT_LAYER_SEGMENTS({0, 9, HSV_RED});
-const rgblight_segment_t PROGMEM rgb_lower[] = RGBLIGHT_LAYER_SEGMENTS({0, 9, LIGHT_GOLDEN});
-const rgblight_segment_t PROGMEM rgb_raise[] = RGBLIGHT_LAYER_SEGMENTS({0, 9, LIGHT_MAGENTA});
-const rgblight_segment_t PROGMEM rgb_numpd[] = RGBLIGHT_LAYER_SEGMENTS({0, 9, LIGHT_AZURE});
-
-const rgblight_segment_t* const PROGMEM rgb_layers[] = RGBLIGHT_LAYERS_LIST(rgb_clmk_dh, rgb_lower, rgb_raise, rgb_numpd);
-
-void keyboard_post_init_user(void) {
- rgblight_layers = rgb_layers; // Enable the LED layers
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(1, layer_state_cmp(state, _LOWER));
- rgblight_set_layer_state(2, layer_state_cmp(state, _RAISE));
- return state;
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t* record) {
- switch (keycode) {
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
-#ifdef BACKLIGHT_ENABLE
- backlight_step();
-#endif
-#ifdef KEYBOARD_planck_rev5
- writePinLow(E6);
-#endif
- } else {
- unregister_code(KC_RSFT);
-#ifdef KEYBOARD_planck_rev5
- writePinHigh(E6);
-#endif
- }
- return false;
- break;
- case PLOVER:
- if (record->event.pressed) {
-#ifdef AUDIO_ENABLE
- stop_all_notes();
- PLAY_SONG(plover_song);
-#endif
- layer_off(_RAISE);
- layer_off(_LOWER);
- layer_off(_ADJUST);
- layer_on(_PLOVER);
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- }
- keymap_config.raw = eeconfig_read_keymap();
- keymap_config.nkro = 1;
- eeconfig_update_keymap(keymap_config.raw);
- }
- return false;
- break;
- case EXT_PLV:
- if (record->event.pressed) {
-#ifdef AUDIO_ENABLE
- PLAY_SONG(plover_gb_song);
-#endif
- layer_off(_PLOVER);
- }
- return false;
- break;
- }
-
- return true;
-}
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update(bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo += 1;
- } else {
- muse_tempo -= 1;
- }
- }
- } else {
- if (clockwise) {
-#ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_DOWN);
-#else
- tap_code(KC_PGDN);
-#endif
- } else {
-#ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_UP);
-#else
- tap_code(KC_PGUP);
-#endif
- }
- }
- return true;
-}
-
-void dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0: {
-#ifdef AUDIO_ENABLE
- static bool play_sound = false;
-#endif
- if (active) {
-#ifdef AUDIO_ENABLE
- if (play_sound) {
- PLAY_SONG(plover_song);
- }
-#endif
- layer_on(_ADJUST);
- } else {
-#ifdef AUDIO_ENABLE
- if (play_sound) {
- PLAY_SONG(plover_gb_song);
- }
-#endif
- layer_off(_ADJUST);
- }
-#ifdef AUDIO_ENABLE
- play_sound = true;
-#endif
- break;
- }
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
-}
-
-void matrix_scan_user(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- } else {
- if (muse_counter) {
- stop_all_notes();
- muse_counter = 0;
- }
- }
-#endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/planck/keymaps/muppetjones/readme.md b/keyboards/planck/keymaps/muppetjones/readme.md
deleted file mode 100644
index de9680b498..0000000000
--- a/keyboards/planck/keymaps/muppetjones/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# The Default Planck Layout
-
diff --git a/keyboards/planck/keymaps/muppetjones/rules.mk b/keyboards/planck/keymaps/muppetjones/rules.mk
deleted file mode 100644
index 1db412715d..0000000000
--- a/keyboards/planck/keymaps/muppetjones/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-SRC += muse.c
-
-MOUSEKEY_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-COMBO_ENABLE = yes
diff --git a/keyboards/planck/keymaps/narze/config.h b/keyboards/planck/keymaps/narze/config.h
deleted file mode 100644
index a7fccc4187..0000000000
--- a/keyboards/planck/keymaps/narze/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#pragma once
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 100
-
-#define COMBO_TERM 20
-
-#define PERMISSIVE_HOLD
-
-#define SUPER_DUPER_SOUND S__NOTE(_B1)
-
-#define MOUSEKEY_DELAY 100
-
-#define USB_POLLING_INTERVAL_MS 1
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
diff --git a/keyboards/planck/keymaps/narze/keymap.c b/keyboards/planck/keymaps/narze/keymap.c
deleted file mode 100644
index 8706905968..0000000000
--- a/keyboards/planck/keymaps/narze/keymap.c
+++ /dev/null
@@ -1,367 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "narze.h"
-#ifdef AUDIO_ENABLE
- #include "audio.h"
-#endif
-#include "keymap_colemak.h"
-
-extern keymap_config_t keymap_config;
-
-enum planck_layers {
- _QWERTY,
- _COLEMAK,
- _QWOC,
- _LOWER,
- _RAISE,
- _PLOVER,
- _SUPERDUPER,
- _DEV,
- _MOUSE,
- _ADJUST
-};
-
-enum planck_keycodes {
- QWERTY = SAFE_RANGE,
- COLEMAK,
- QWOC,
- PLOVER,
- SUPERDUPER,
- DEV,
- MOUSE,
- LOWER,
- RAISE,
- BACKLIT,
- EXT_PLV,
- SDTOGG, // Toggle SuperDuper
- GUI_UNDS,
- LSFT_LPRN,
-};
-
-enum process_combo_event {
- CB_SUPERDUPER,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | F19 |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Hp/Ec| A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Sft/(| Z/Dv | X | C | V | B | N | M | , | . | SD-/ |Sft/Ent|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Rse/[| Ctrl | Alt | GUI/_|Lower | Space | Raise| Bksp | Alt | Ctrl | Low/]|
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_planck_grid(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_F19,
- HPR_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- LSFT_LPRN, LT(_DEV, KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LT(_SUPERDUPER, KC_SLSH), SFT_ENT,
- LT(_RAISE, KC_LBRC), KC_LCTL, KC_LALT, GUI_UNDS, LOWER, KC_SPC, KC_SPC, RAISE, KC_BSPC, ALT_COLN, KC_RCTL, LT(_LOWER, KC_RBRC)
-),
-
-/* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | - |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Hp/Ec| A | R | S | T | D | H | N | E | I | O | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Sft/(| Z/Dv | X | C | V | B | K | M | , | . | SD-/ |Sft/Ent|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt | GUI/_|Lower | Space | Raise| Bksp | Alt | Ctrl | Low/]|
- * `-----------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_planck_grid(
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_MINS,
- HPR_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- LSFT_LPRN, LT(_DEV, KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, LT(_SUPERDUPER, KC_SLSH), SFT_ENT,
- LT(_RAISE, KC_LBRC), KC_LCTL, KC_LALT, GUI_UNDS, LOWER, KC_SPC, KC_SPC, RAISE, KC_BSPC, ALT_COLN, KC_RCTL, LT(_LOWER, KC_RBRC)
-),
-
-/* Qwerty on software Colemak : Useful for gaming with qwerty keymaps! */
-[_QWOC] = LAYOUT_planck_grid(
- KC_TAB, CM_Q, CM_W, CM_E, CM_R, CM_T, CM_Y, CM_U, CM_I, CM_O, CM_P, KC_MINS,
- HPR_ESC, CM_A, CM_S, CM_D, CM_F, CM_G, CM_H, CM_J, CM_K, CM_L, CM_SCLN, KC_QUOT,
- LSFT_LPRN, LT(_DEV, KC_Z), CM_X, CM_C, CM_V, CM_B, CM_N, CM_M, CM_COMM, CM_DOT, LT(_SUPERDUPER, CM_SLSH), SFT_ENT,
- LT(_RAISE, KC_LBRC), KC_LCTL, KC_LALT, GUI_UNDS, LOWER, KC_SPC, KC_SPC, RAISE, KC_BSPC, ALT_COLN, KC_RCTL, LT(_LOWER, KC_RBRC)
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ` | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ | | | |Sft/Ent|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_planck_grid(
- KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),_______,_______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # | | | |Sft/Ent|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_planck_grid(
- KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Plover layer (http://opensteno.org)
- * ,-----------------------------------------------------------------------------------.
- * | # | # | # | # | # | # | # | # | # | # | # | # |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | S | T | P | H | * | * | F | P | L | T | D |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * |TogOut| S | K | W | R | * | * | R | B | G | S | Z |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Exit | | | A | O | | E | U | | | |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_PLOVER] = LAYOUT_planck_grid(
- KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 ,
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
- XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- EXT_PLV, XXXXXXX, XXXXXXX, KC_C, KC_V, XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX
-),
-
-/* SuperDuper : https://gist.github.com/narze/861e2167784842d38771
- * /-----------------------------------------------------------------------------------\
- * | | | | | | | | | T← | T→ | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Alt | [SuperDuper]| Bksp | Gui | ← | ↓ | ↑ | → | Del | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | Shift | | | | | |
- * \-----------------------------------------------------------------------------------/
- */
-[_SUPERDUPER] = LAYOUT_planck_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, S(LGUI(KC_LBRC)), S(LGUI(KC_RBRC)), _______, _______,
- _______, KC_LALT, _______, _______, KC_BSPC, KC_LGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, KC_LSFT, KC_LSFT, _______, _______, _______, _______, _______
-),
-
-/* Dev Layer
- * /-----------------------------------------------------------------------------------\
- * | | | | | | | | - | + | ( | ) | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | _ | [ | ] | { | } | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | = | | | < | > | ? | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * \-----------------------------------------------------------------------------------/
- */
-[_DEV] = LAYOUT_planck_grid(
- _______, _______, _______, _______, _______, _______, _______, KC_MINS, S(KC_EQL), S(KC_9), S(KC_0), _______,
- _______, _______, _______, _______, _______, _______, S(KC_MINS), KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), _______,
- _______, _______, _______, _______, _______, _______, KC_EQL, S(KC_BSLS), S(KC_COMM), S(KC_DOT), S(KC_SLSH), _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Mouse
- * /-----------------------------------------------------------------------------------\
- * | | | S↑ | M↑ | S↓ | | | | S↑ | S↓ | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | M← | M↓ | M→ | | M← | M↓ | M↑ | M→ | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |[Mouse| | | | M3 | M3 | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | M2 | LeftClick | M2 | | | | |
- * \-----------------------------------------------------------------------------------/
- */
-[_MOUSE] = LAYOUT_planck_grid(
- _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, KC_WH_U, KC_WH_D, _______, _______,
- _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, _______, _______,
- _______, _______, _______, _______, _______, KC_BTN3, KC_BTN3, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, KC_BTN2, KC_BTN1, KC_BTN1, KC_BTN2, _______, _______, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | | Reset| | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|QwOnCo|Plover| |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof|SDtogg| | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_planck_grid(
- _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
- _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, QWOC, PLOVER, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, SDTOGG, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BACKLIT
-)
-
-};
-
-#ifdef AUDIO_ENABLE
- float tone_plover[][2] = SONG(PLOVER_SOUND);
- float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
- float tone_coin[][2] = SONG(VIOLIN_SOUND);
- float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-#endif
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
-
- set_superduper_key_combo_layer(_QWERTY);
- }
- return false;
-
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
-
- set_superduper_key_combo_layer(_COLEMAK);
- }
- return false;
-
- case QWOC:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWOC);
-
- set_superduper_key_combo_layer(_QWOC);
- }
- return false;
-
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
-
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
-
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- } else {
- unregister_code(KC_RSFT);
- }
- return false;
-
- case PLOVER:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- stop_all_notes();
- PLAY_SONG(tone_plover);
- #endif
- layer_off(_RAISE);
- layer_off(_LOWER);
- layer_off(_ADJUST);
- layer_on(_PLOVER);
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- }
- keymap_config.raw = eeconfig_read_keymap();
- keymap_config.nkro = 1;
- eeconfig_update_keymap(keymap_config.raw);
- }
- return false;
-
- case EXT_PLV:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(tone_plover_gb);
- #endif
- layer_off(_PLOVER);
- }
- return false;
-
- case SDTOGG:
- if (record->event.pressed) {
- bool enabled = toggle_superduper_mode();
-
- #ifdef AUDIO_ENABLE
- if (enabled) {
- PLAY_SONG(tone_coin);
- } else {
- PLAY_SONG(tone_goodbye);
- }
- #endif
- }
- return false;
-
- // Macros
-
- // 1. Hold for LGUI, tap for Underscore
- case GUI_UNDS:
- perform_space_cadet(record, keycode, KC_LGUI, KC_LSFT, KC_MINS);
- return false;
-
- // 2. Hold for LSHIFT, tap for Parens open
- case LSFT_LPRN:
- perform_space_cadet(record, keycode, KC_LSFT, KC_LSFT, KC_9);
- return false;
-
- default:
- return true;
- }
- return true;
-}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-void matrix_setup(void) {
- set_superduper_key_combos();
-}
-
-void matrix_scan_user(void) {
-}
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- if (pressed) {
- switch(combo_index) {
- case CB_SUPERDUPER:
- layer_on(_SUPERDUPER);
- break;
- }
- } else {
- layer_off(_SUPERDUPER);
- unregister_mods(MOD_BIT(KC_LGUI) | MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT)); // Sometimes mods are held, unregister them
- }
-}
diff --git a/keyboards/planck/keymaps/narze/readme.md b/keyboards/planck/keymaps/narze/readme.md
deleted file mode 100644
index 86bf426d39..0000000000
--- a/keyboards/planck/keymaps/narze/readme.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# narze's layout
-
-## Key features
-- Qwerty + [Colemak](https://colemak.com) layouts, and you can type Qwerty on software-level Colemak as well. Very useful for gaming or when your friend wanna type something but don't use Colemak.
-- [(S)uper (D)uper Mode](/users/narze/readme.md)
-- Mouse keys with Z
-
-## Build instructions
-- `cd /path/to/qmk_firmware`
-- Ensure latest libraries are loaded `make git-submodule`
-- Build with docker
- - Planck Rev. 4 : `util/docker_build.sh planck/rev4:narze`
- - Planck Light : `util/docker_build.sh planck/light:narze`
-- Flash hex file
- - Using dfu-programmer `dfu-programmer atmega32u4 erase --force && dfu-programmer atmega32u4 flash .build/planck_rev4_narze.hex`
- - For Planck Light change the target microcontroller `dfu-programmer at90usb1286 erase --force && dfu-programmer at90usb1286 flash .build/planck_light_narze.hex`
- - Use [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases)
diff --git a/keyboards/planck/keymaps/narze/rules.mk b/keyboards/planck/keymaps/narze/rules.mk
deleted file mode 100644
index e066906f9d..0000000000
--- a/keyboards/planck/keymaps/narze/rules.mk
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-AUDIO_ENABLE = yes
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-COMBO_ENABLE = yes
-
-ifeq ($(strip $(KEYBOARD)), planck/rev4)
- MOUSEKEY_ENABLE = no # Mouse keys(+4700)
- MIDI_ENABLE = no
-else
- MOUSEKEY_ENABLE = yes
- MIDI_ENABLE = yes
-endif
diff --git a/keyboards/planck/keymaps/not-quite-neo/config.h b/keyboards/planck/keymaps/not-quite-neo/config.h
deleted file mode 100644
index 7fa3bf328e..0000000000
--- a/keyboards/planck/keymaps/not-quite-neo/config.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
-
-#endif
diff --git a/keyboards/planck/keymaps/not-quite-neo/keymap.c b/keyboards/planck/keymaps/not-quite-neo/keymap.c
deleted file mode 100644
index 2248c7a2b9..0000000000
--- a/keyboards/planck/keymaps/not-quite-neo/keymap.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
-NQN is not-quite-neo
-A layout based on the
-*/
-
-
-#include QMK_KEYBOARD_H
-#include "nqn-keys-on-quertz-de-latin1.h"
-#include "nqn-basic-layout.h"
-
-
-// Automatic number generation of important keywords
-enum my_keycodes{
- // Layer numbers follow the neo2 terminology, i.e. base layer = layer 1
- L01 = 0,
- /* L02, SHIFT is not (yet) implemented as a fully customizable layer */
- L03,
- L04,
- L05,
- /* L06, UNSPECIFIED not (yet) needed */
- LFN
-};
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* L01 -> default: BASE LAYER
- * ,-----------------------------------------------------------------------------------.
- * | ESC | | | ENTER|
- * |------+ | +------|
- * | L03 | L01_LEFT | L01_RIGHT | L03 |
- * |------+ | +------|
- * | SHIFT| | | SHIFT|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | CTLR | GUI | ALT | L05 | L04 | SPACE| SPACE| L04 | L05 | ALTGR| LFN | CTLR |
- * `-----------------------------------------------------------------------------------'
- */
-[L01] = LAYOUT_planck_grid(
- KC_ESC, L01_LEFT_01, L01_RIGHT_01, KC_ENTER,
- MO(L03), L01_LEFT_02, L01_RIGHT_02, MO(L03),
- KC_LSFT, L01_LEFT_03, L01_RIGHT_03, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, MO(L05), MO(L04), KC_SPC, KC_SPC, MO(L04), MO(L05), KC_RALT, MO(LFN), KC_RCTL
-),
-
-
-/*
-L02 -> MO(L02): SHIFT (as a layer not used, not defined, not reachable)
- */
-
-
-/* L03 -> MO(L03): PROGRAMMING
- * ,-----------------------------------------------------------------------------------.
- * | | | | |
- * |------+ | +------|
- * | | L03_LEFT | L03_RIGHT | |
- * |------+ | +------|
- * | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[L03] = LAYOUT_planck_grid(
- _______, L03_LEFT_01, L03_RIGHT_01, _______,
- _______, L03_LEFT_02, L03_RIGHT_02, _______,
- _______, L03_LEFT_03, L03_RIGHT_03, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-
-/* L04 -> MO(L04): NAVIGATION AND NUMBERS
- * ,-----------------------------------------------------------------------------------.
- * | | | | |
- * |------+ | +------|
- * | | L04_LEFT | L04_RIGHT | |
- * |------+ | +------|
- * | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | 0 | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[L04] = LAYOUT_planck_grid(
- _______, L04_LEFT_01, L04_RIGHT_01, _______,
- _______, L04_LEFT_02, L04_RIGHT_02, _______,
- _______, L04_LEFT_03, L04_RIGHT_03, _______,
- _______, _______, _______, _______, _______, _______, KC_0, _______, _______, _______, _______, _______
-),
-
-
-/* L05 -> MO(L05): ALTERNATE
- * ,-----------------------------------------------------------------------------------.
- * | | | | |
- * |------+ | +------|
- * | | L05_LEFT | L05_RIGHT | |
- * |------+ | +------|
- * | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[L05] = LAYOUT_planck_grid(
- _______, L05_LEFT_01, L05_RIGHT_01, _______,
- _______, L05_LEFT_02, L05_RIGHT_02, _______,
- _______, L05_LEFT_03, L05_RIGHT_03, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-
-/*
-L06 -> <TBD>: UNSPECIFIED
-*/
-
-
-/* LFN -> MO(FN): FUNCTION
- * ,-----------------------------------------------------------------------------------.
- * | QK_BOOT| | | BACKS|
- * |------+ | +------|
- * | | L06_LEFT | L06_RIGHT |INSERT|
- * |------+ | +------|
- * | | | |DELETE|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |VOICE-|VOICE+|MUS ON|MUS OF| LIGHT| | | VOL+ | VOL- | MUTE | | |
- * `-----------------------------------------------------------------------------------'
- */
-[LFN] = LAYOUT_planck_grid(
- QK_BOOT, L06_LEFT_01, L06_RIGHT_01, KC_BSPC,
- _______, L06_LEFT_02, L06_RIGHT_02, KC_INS,
- _______, L06_LEFT_03, L06_RIGHT_03, KC_DEL,
- AU_PREV, AU_NEXT, MU_ON, MU_OFF, _______, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______
-)
-};
diff --git a/keyboards/planck/keymaps/not-quite-neo/readme.md b/keyboards/planck/keymaps/not-quite-neo/readme.md
deleted file mode 100644
index 3fcb4edf0d..0000000000
--- a/keyboards/planck/keymaps/not-quite-neo/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# not-quite-neo
-
-This is my personal take on porting the [neo2 layout](https://www.neo-layout.org/) to support multiple keyboards.
-
-Refer to the [readme.md](../../../../users/not-quite-neo/readme.md) of the generic parts of the implementation. \ No newline at end of file
diff --git a/keyboards/planck/keymaps/not-quite-neo/rules.mk b/keyboards/planck/keymaps/not-quite-neo/rules.mk
deleted file mode 100644
index b4e2e5c815..0000000000
--- a/keyboards/planck/keymaps/not-quite-neo/rules.mk
+++ /dev/null
@@ -1,24 +0,0 @@
-# Based on Zach's Planck Makefile
-# Max .hex size is about 28636 bytes
-
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-TAP_DANCE_ENABLE = no # Enable TapDance functionality
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-#VARIABLE_TRACE = no # Debug changes to variable values
-UNICODE_ENABLE = no # Unicode (can't be used with unicodemap)
-UNICODEMAP_ENABLE = no # Enable extended unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
diff --git a/keyboards/planck/keymaps/originerd/keymap.c b/keyboards/planck/keymaps/originerd/keymap.c
index 85e5cd3b16..d7c9ffb6b5 100644
--- a/keyboards/planck/keymaps/originerd/keymap.c
+++ b/keyboards/planck/keymaps/originerd/keymap.c
@@ -101,12 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_nerd[][2] = SONG(QWERTY_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -149,36 +144,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/peterfalken/config.h b/keyboards/planck/keymaps/peterfalken/config.h
deleted file mode 100644
index 4b14b7756b..0000000000
--- a/keyboards/planck/keymaps/peterfalken/config.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2015-2021 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(PLANCK_SOUND)
-// #define STARTUP_SONG SONG(NO_SOUND)
-
-# define DEFAULT_LAYER_SONGS \
- { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
diff --git a/keyboards/planck/keymaps/peterfalken/keymap.c b/keyboards/planck/keymaps/peterfalken/keymap.c
deleted file mode 100644
index 140149c472..0000000000
--- a/keyboards/planck/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "muse.h"
-#include "peterfalken.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | Ctrl | Opt | Cmd | LWR | Space | RSE | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_planck_grid(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
- _______, KC_LCTL, KC_LOPT, KC_LCMD, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_planck_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_planck_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | RSET | ▽ | M.AP | M.AL | LPAD | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | SLEP |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | CPWD | UN | CU | CO | PA | MV | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_planck_grid(
- QK_BOOT, _______, CK_M1, KC_MCTL, KC_LPAD, _______, _______, _______, _______, _______, _______, KC_DEL,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CK_SLP,
- CK_CW, _______, CK_CU, CK_CO, CK_PA, CK_MV, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
diff --git a/keyboards/planck/keymaps/peterfalken/readme.md b/keyboards/planck/keymaps/peterfalken/readme.md
deleted file mode 100644
index f64d682a51..0000000000
--- a/keyboards/planck/keymaps/peterfalken/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Copyright 2023 LEG <ucaboys@gmail.com> @PeterFalken
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/planck/keymaps/peterfalken/rules.mk b/keyboards/planck/keymaps/peterfalken/rules.mk
deleted file mode 100644
index a33c6c1ddb..0000000000
--- a/keyboards/planck/keymaps/peterfalken/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Setup keymap QMK features
-# TODO: Check for space optimizations
-AUDIO_ENABLE = yes # Enable Audio Output
-ENCODER_ENABLE = no # Disable encoder
-
-ifeq ($(strip $(AUDIO_ENABLE)), yes)
- SRC += muse.c
-endif
diff --git a/keyboards/planck/keymaps/premek/keymap.c b/keyboards/planck/keymaps/premek/keymap.c
index 76d3cabfbc..839a53a6fc 100644
--- a/keyboards/planck/keymaps/premek/keymap.c
+++ b/keyboards/planck/keymaps/premek/keymap.c
@@ -76,16 +76,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -185,36 +180,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/.gitignore b/keyboards/planck/keymaps/prog_qgmlwb/.gitignore
deleted file mode 100644
index a39c642249..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-build
-printout
-scripts
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/config.h b/keyboards/planck/keymaps/prog_qgmlwb/config.h
deleted file mode 100644
index b52b41746a..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/config.h
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#pragma once
-
-#define ENABLE_COMPILE_KEYCODE
-
-// Userspace defines
-// #define SPLIT_SPACE
-// #define NO_SPECIAL_SHIFT
-#define LAYER_EN QGMLWB_EN
-#define LAYER_NO QGMLWB_NO
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/keymap.c b/keyboards/planck/keymaps/prog_qgmlwb/keymap.c
deleted file mode 100644
index 72e67ac3e7..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#include "src/layouts.h"
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/readme.md b/keyboards/planck/keymaps/prog_qgmlwb/readme.md
deleted file mode 100644
index e9117507cd..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/readme.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# PROG-QGMLWB
-
-The prog-qgmlwb layout is a QMK firmware layout for the Planck keyboard.
-
-For letter placement, the layout uses the optimized QGMLWB layout from the [Carpalx project](http://mkweb.bcgsc.ca/carpalx).
-
-> The carpalx project introduces a quantitative model for typing effort and applies it to (a) evaluate QWERTY and popular alternatives, such as Dvorak and Colemak and (b) find the keyboard layouts that minimize typing effort for a given set of input documents.
-
-Carpalx named "QGMLWB" as the fully optimized layout according to the English alphabet, with an effort reduction of approximately 44.4%.
-
-The programming part of the name is inspired by the modified version of Dvorak, [Programmer Dvorak](http://programmer-dvorak.appspot.com), where the symbols have been adjusted logically for developers.
-
-The final layout swaps some Dvorak symbols and combines them with the QGMLWB letters, giving it the name **prog-qgmlwb**.
-
-The layout includes an English and Norwegian layer, whereas the Norwegian one only adds the three letters; æ, ø, and å.
-
-## Typing layers
-
-![Typing layers](https://i.imgur.com/QaHnqW8.png)
-
-## Adjust layer
-
-![Adjust layer](https://i.imgur.com/63I69P0.png)
-
-## Usage
-
-### Clone the QMK Firmware repo
-
-```bash
-git clone --recurse-submodules https://github.com/qmk/qmk_firmware.git <path/name>
-```
-
-### Move into this keymap
-
-```bash
-cd <path/name>/keyboards/planck/keymaps/prog_qgmlwb
-```
-
-### Initialize QMK the first time
-
-Set default keyboard:
-
-```bash
-qmk config user.keyboard=planck/<rev>
-```
-
-Set default keymap:
-
-```bash
-qmk config user.keymap=prog_qgmlwb
-```
-
-Initialize libraries:
-
-```bash
-qmk setup
-```
-
-### Compile and flash the keyboard
-
-```bash
-qmk compile
-qmk flash
-```
-
-## QMK documentation
-
-Found in the QMK docs: <https://docs.qmk.fm>
-
-## Printing layout
-
-This keymap uses macros such that [qmk configurator](https://config.qmk.fm) cannot match its behavior. The images was designed using [Figma](https://figma.com).
-
-## Future additions
-
-Features disabled due to the lack of storage space in the Planck PCB version 5:
-
-- Audio
-- Plover mode
-- Use alt codes to fix missing characters in the english layout
-- Improve documentation of code and readme files
-- Reimplement right version of modifier keys through raise+space
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/rules.mk b/keyboards/planck/keymaps/prog_qgmlwb/rules.mk
deleted file mode 100644
index 7431d9e0b7..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-# Compiler source files
-SRC += src/layouts.c
-
-USER_NAME := davidkristoffersen
-
-SIZE_OPTIMIZE = yes
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/enums.h b/keyboards/planck/keymaps/prog_qgmlwb/src/enums.h
deleted file mode 100644
index 0c03b5dd04..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/src/enums.h
+++ /dev/null
@@ -1,23 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#pragma once
-
-// Layouts enum
-enum keyboard_layouts {
- QGMLWB_NO,
- QGMLWB_EN,
-
- QWERTY,
- COLEMAK,
- DVORAK,
-
- NORMAL_LOWER,
- NORMAL_RAISE,
-
- QGMLWB_LOWER,
- QGMLWB_RAISE,
-
- ADJUST,
- NUMPAD,
-};
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c b/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c
deleted file mode 100644
index 54ff411d86..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.c
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#include "layouts.h"
-#ifdef LAYER_NO
-# include "sendstring_norwegian.h"
-#endif
-
-KEYMAP keymaps [][MATRIX_ROWS][MATRIX_COLS] = {
- [QGMLWB_NO] = qgmlwb_no_map,
- [QGMLWB_EN] = qgmlwb_en_map,
-
- [QWERTY] = qwerty_map,
- [COLEMAK] = colemak_map,
- [DVORAK] = dvorak_map,
-
- [NORMAL_LOWER] = normal_lower_map,
- [NORMAL_RAISE] = normal_raise_map,
-
- [QGMLWB_LOWER] = qgmlwb_lower_map,
- [QGMLWB_RAISE] = qgmlwb_raise_map,
-
- [ADJUST] = adjust_map,
- [NUMPAD] = numpad_map,
-};
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h b/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h
deleted file mode 100644
index 19cbefb9ab..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/src/layouts.h
+++ /dev/null
@@ -1,27 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#pragma once
-
-#include QMK_KEYBOARD_H
-
-#include "davidkristoffersen.h"
-#include "enums.h"
-
-#include "normal.h"
-#include "qgmlwb.h"
-#include "special.h"
-
-#define KEYMAP const uint16_t PROGMEM
-
-// Layouts keycodes
-#define lower MO(NORMAL_LOWER)
-#define raise MO(NORMAL_RAISE)
-
-#define QLower MO(QGMLWB_LOWER)
-#define QRaise MO(QGMLWB_RAISE)
-
-#define adjust MO(ADJUST)
-#define numpad MO(NUMPAD)
-
-extern KEYMAP keymaps [][MATRIX_ROWS][MATRIX_COLS];
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/normal.h b/keyboards/planck/keymaps/prog_qgmlwb/src/normal.h
deleted file mode 100644
index 98909c4395..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/src/normal.h
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#pragma once
-
-#include "layouts.h"
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | A | S | D | F | G | H | J | K | L | ;: |Return|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | ,< | .> | /? | Shift|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | Alt |NumPad| GUI | Lower| Space| Space| Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
-*/
-#define qwerty_map LAYOUT_ortho_4x12(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LALT, numpad, KC_LGUI, lower, KC_SPC, KC_SPC, raise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
-)
-
-/* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | A | R | S | T | D | H | N | E | I | O |Return|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | K | M | , | . | / | " |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | Alt |NumPad| GUI | Lower| Space| Space| Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
-*/
-#define colemak_map LAYOUT_ortho_4x12(
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT,
- KC_LCTL, KC_LALT, numpad, KC_LGUI, lower, KC_SPC, KC_SPC, raise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
-)
-
-/* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | D | H | T | N | S |Return|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | Alt |NumPad| GUI | Lower| Space| Space| Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
-*/
-#define dvorak_map LAYOUT_ortho_4x12(
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_ENT,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_SLSH,
- KC_LCTL, KC_LALT, numpad, KC_LGUI, lower, KC_SPC, KC_SPC, raise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT
-)
-
-/* Lower - Normal
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | End | Home | XXXX | XXXX | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
-*/
-#define normal_lower_map LAYOUT_ortho_4x12(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_END, KC_HOME, XXXXXXX, XXXXXXX, _______,
- _______, _______, _______, _______, _______, _______, _______, adjust, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-)
-
-/* Raise - Normal
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | # | \ | PgDn | PgUp | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
-*/
-#define normal_raise_map LAYOUT_ortho_4x12(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HASH, KC_BSLS, KC_PGDN, KC_PGUP, _______,
- _______, _______, _______, _______, adjust, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-)
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h b/keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h
deleted file mode 100644
index 290fee765d..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/src/qgmlwb.h
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#pragma once
-
-#include "layouts.h"
-
-/* QGMLWB
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | G | M | L | W | B | Y | U | V | '" | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | D | S | T | N | R | I | A | E | O | H |Return|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | F | J | K | P | ,; | .: | -_ | \| |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Ctrl | Alt |NumPad| GUI | Lower|LSpace|RSpace| Raise| Left | Down | Up | Right|
- * `-----------------------------------------------------------------------------------'
-*/
-// English Layout
-#define qgmlwb_en_map LAYOUT_ortho_4x12(\
- KC_TAB, KC_Q, KC_G, KC_M, KC_L, KC_W, KC_B, KC_Y, KC_U, KC_V, KC_QUOT, KC_BSPC,\
- KC_ESC, KC_D, KC_S, KC_T, KC_N, KC_R, KC_I, KC_A, KC_E, KC_O, KC_H, KC_ENT,\
- KC_LSFT, KC_Z, KC_X, KC_C, KC_F, KC_J, KC_K, KC_P, KC_COMM, KC_DOT, KC_MINS, KC_BSLS,\
- KC_LCTL, KC_LALT, numpad, KC_LGUI, QLower, SC_LSPC, SC_RSPC, QRaise, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT\
-)
-// Norwegian Layout
-#define qgmlwb_no_map qgmlwb_en_map
-
-/* Lower - QGMLWB
- * ,-----------------------------------------------------------------------------------.
- * | ! | % | [ | { | ( | < | > | ) | } | ] | & | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | Mute | XXXX | Refr | XXXX | XXXX | XXXX | = | + | * | / | ~ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Sleep|ScrLck| Caps |NumLck|PrtScr| Ins | End | Home | Æ | Ø | Å |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | |Adjust| Bri- | Vol- | Vol+ | Bri+ |
- * `-----------------------------------------------------------------------------------'
-*/
-#define qgmlwb_lower_map LAYOUT_ortho_4x12(\
- KC_EXLM, KC_PERC, KC_LBRC, KC_LCBR, KC_LPRN, KC_LT, KC_GT, KC_RPRN, KC_RCBR, KC_RBRC, KC_AMPR, _______,\
- KC_DEL, KC_MUTE, XXXXXXX, KC_WREF, XXXXXXX, XXXXXXX, XXXXXXX, KC_EQL, KC_PLUS, KC_ASTR, KC_SLSH, KC_TILD,\
- _______, KC_SLEP, KC_SCRL, KC_CAPS, KC_NUM, KC_PSCR, KC_INS, KC_END, KC_HOME, KC_AE, KC_OE, KC_AA,\
- _______, _______, _______, _______, _______, _______, _______, adjust, KC_BRID, KC_VOLD, KC_VOLU, KC_BRIU\
-)
-
-/* Raise - QGMLWB
- * ,-----------------------------------------------------------------------------------.
- * | ? | 9 | 7 | 5 | 3 | 1 | 0 | 2 | 4 | 6 | 8 | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del+ | F1 | F2 | F3 | F4 | F5 | F6 | # | @ | ^ | $ | ` |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |RShift| F7 | F8 | F9 | F10 | F11 | F12 | PgDn | PgUp | XXXX | XXXX | XXXX |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | RCtrl| RAlt | | |Adjust| | | | Prev | Stop | Play | Next |
- * `-----------------------------------------------------------------------------------'
-*/
-#define qgmlwb_raise_map LAYOUT_ortho_4x12(\
- KC_QUES, KC_9, KC_7, KC_5, KC_3, KC_1, KC_0, KC_2, KC_4, KC_6, KC_8, _______,\
- S(KC_DEL), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_HASH, KC_AT, KC_CIRC, KC_DLR, KC_GRV,\
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX,\
- _______, _______, _______, _______, adjust, _______, _______, _______, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT\
-)
diff --git a/keyboards/planck/keymaps/prog_qgmlwb/src/special.h b/keyboards/planck/keymaps/prog_qgmlwb/src/special.h
deleted file mode 100644
index bff1e4c5ab..0000000000
--- a/keyboards/planck/keymaps/prog_qgmlwb/src/special.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright 2022 David Kristoffersen (@davidkristoffersen)
-// SPDX-License-Identifier: GPL-3.0-or-later
-
-#pragma once
-
-#include "layouts.h"
-
-/* Adjust
- * v------------------------RGB CONTROL--------------------v
- * ,-----------------------------------------------------------------------------------.
- * | | Reset| Debug| RGB |RGBMod| Hue- | Hue+ | Sat- | Sat+ | Bri- | Bri+ | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | XXXX |MusMod|AudOff| AudOn|AgNorm|AgSwap|Dvorak|Colmak|Qwerty|QgmlEN|QgmlNO|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | |Voice-|Voice+|MusOff| MusOn|MIDIOf|MIDIOn| | | T0 | T1 | T2 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | XXXX | XXXX | XXXX | XXXX |
- * `-----------------------------------------------------------------------------------'
-*/
-#define adjust_map LAYOUT_ortho_4x12(\
- QK_RBT, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_DEL,\
- QK_MAKE, XXXXXXX, MU_NEXT, AU_OFF, AU_ON, AG_NORM, AG_SWAP, DF(DVORAK), DF(COLEMAK), DF(QWERTY), DF(QGMLWB_EN), DF(QGMLWB_NO),\
- _______, AU_NEXT, AU_PREV, MU_OFF, MU_ON, MI_OFF, MI_ON, _______, _______, KC_T0, KC_T1, KC_T2,\
- _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX\
-)
-
-/* Numpad
- * ,-----------------------------------------------------------------------------------.
- * | | XXXX | XXXX | XXXX | XXXX | XXXX | XXXX | 7 | 8 | 9 | / | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | XXXX | XXXX | XXXX | XXXX | XXXX | XXXX | 4 | 5 | 6 | * | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | XXXX | XXXX | XXXX | XXXX | XXXX | XXXX | 1 | 2 | 3 | - | XXXX |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | XXXX | | | 0 | , | . | + | XXXX |
- * `-----------------------------------------------------------------------------------'
-*/
-#define numpad_map LAYOUT_ortho_4x12(\
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_7, KC_8, KC_9, KC_KP_SLASH, _______,\
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_4, KC_5, KC_6, KC_KP_ASTERISK, _______,\
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_1, KC_2, KC_3, KC_KP_MINUS, XXXXXXX,\
- _______, _______, _______, _______, XXXXXXX, _______, _______, KC_0, KC_COMM, KC_DOT, KC_KP_PLUS, XXXXXXX\
-)
diff --git a/keyboards/planck/keymaps/roguepullrequest/keymap.c b/keyboards/planck/keymaps/roguepullrequest/keymap.c
index 61221601e6..31cce52a5f 100644
--- a/keyboards/planck/keymaps/roguepullrequest/keymap.c
+++ b/keyboards/planck/keymaps/roguepullrequest/keymap.c
@@ -28,7 +28,7 @@ enum {
RSHIFT,
LSHIFT,
TD_S,
- SLASH
+ SLASH
};
int cur_dance (tap_dance_state_t *state);
@@ -116,10 +116,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
TD(LSHIFT), KC_QUOT, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, TD(RSHIFT),
TD(X_AT_FUN), KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, ALT_TAB, KC_SPACE, KC_ENTER, MT(MOD_LCTL | MOD_LSFT, KC_LGUI), KC_PGUP, KC_PGDN, LT(_LOWER, KC_PLUS)
),
-
+
[_UPPER] = LAYOUT_planck_grid(
KC_GRAVE, KC_AMPR, KC_PERC, KC_NO, KC_NO, KC_EQL, KC_ASTR, KC_NO, KC_NO, KC_EXLM, KC_HASH, KC_TRNS,
- KC_PLUS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSLS,
+ KC_PLUS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSLS,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS
),
@@ -156,7 +156,7 @@ int cur_dance (tap_dance_state_t *state) {
if (state->interrupted || !state->pressed)return TRIPLE_TAP;
else return TRIPLE_HOLD;
}
- else return 8; // magic number that i dont believe works.
+ else return 8; // magic number that i dont believe works.
}
// instance of tap for the 'X' dance.
@@ -251,4 +251,7 @@ tap_dance_action_t tap_dance_actions[] = {
};
-void shutdown_user(void) { clear_keyboard(); }
+bool shutdown_user(bool jump_to_bootloader) {
+ clear_keyboard();
+ return true;
+}
diff --git a/keyboards/planck/keymaps/sascha/rules.mk b/keyboards/planck/keymaps/sascha/rules.mk
index 78ac4ca825..41157c39d7 100644
--- a/keyboards/planck/keymaps/sascha/rules.mk
+++ b/keyboards/planck/keymaps/sascha/rules.mk
@@ -1,5 +1,4 @@
AUTO_SHIFT_ENABLE = no
-AUTO_SHIFT_MODIFIERS = no
UNICODE_ENABLE = yes
LTO_ENABLE = yes
diff --git a/keyboards/planck/keymaps/sdothum/common/init.h b/keyboards/planck/keymaps/sdothum/common/init.h
index 6d0b4392fb..e6bb7101e9 100644
--- a/keyboards/planck/keymaps/sdothum/common/init.h
+++ b/keyboards/planck/keymaps/sdothum/common/init.h
@@ -6,9 +6,6 @@ void matrix_init_user(void)
#ifdef STENO_ENABLE
steno_set_mode(STENO_MODE_BOLT); // or STENO_MODE_GEMINI
#endif
-#ifdef AUDIO_ENABLE
- startup_user();
-#endif
}
#ifdef AUDIO_ENABLE
@@ -31,27 +28,4 @@ bool led_update_user(led_t led_state)
return false;
}
#endif
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(song_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(song_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
#endif
diff --git a/keyboards/planck/keymaps/sdothum/keymap.c b/keyboards/planck/keymaps/sdothum/keymap.c
index 597466ba47..03c605020c 100644
--- a/keyboards/planck/keymaps/sdothum/keymap.c
+++ b/keyboards/planck/keymaps/sdothum/keymap.c
@@ -67,9 +67,6 @@
#include QMK_KEYBOARD_H
-#ifdef STENO_ENABLE
-#include "keymap_steno.h"
-#endif
extern keymap_config_t keymap_config;
diff --git a/keyboards/planck/keymaps/sgoodwin/keymap.c b/keyboards/planck/keymaps/sgoodwin/keymap.c
index e61cd4de68..fbfe793cb8 100644
--- a/keyboards/planck/keymaps/sgoodwin/keymap.c
+++ b/keyboards/planck/keymaps/sgoodwin/keymap.c
@@ -120,13 +120,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -189,36 +184,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/sigul/config.h b/keyboards/planck/keymaps/sigul/config.h
deleted file mode 100644
index 9020d2b9f8..0000000000
--- a/keyboards/planck/keymaps/sigul/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#pragma once
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
-
diff --git a/keyboards/planck/keymaps/sigul/keymap.c b/keyboards/planck/keymaps/sigul/keymap.c
deleted file mode 100644
index 2f5044cda0..0000000000
--- a/keyboards/planck/keymaps/sigul/keymap.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- *
- * An Italian ANSI layout
- * Version 0.3
- *
- * Created by Silvio Gulizia on the basis of the default Planck keymap.
- * Thanks to SomeBuddyOnReddit, gepeirl, fauxpark, BXO511, drashna, and ridingqwerty.
- *
- * The layout is based on the original Planck layout when used with language set to Italian on your Mac.
- * Accented vowels have been moverd on RAISE ("�", "�", and "�") and LOWER ("�", "�", and "�")
- *
- */
-
-#include QMK_KEYBOARD_H
-#include "muse.h"
-#include "keymap_italian_mac_ansi.h"
-#include "sigul.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * |Tab/FN| Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |Esc/FN| A | S | D | F | G | H | J | K | L | ;: | '" |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | MS/B | N | M | ,< | .> | /! |S/Ent |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | FN | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_ortho_4x12(
- TABFN, IT_Q, IT_W, IT_E, IT_R, IT_T, IT_Y, IT_U, IT_I, IT_O, IT_P, KC_BSPC,
- ESCFN, IT_A, IT_S, IT_D, IT_F, IT_G, IT_H, IT_J, IT_K, IT_L, IT_SCCL, IT_APDQ,
- KC_LSFT, IT_Z, IT_X, IT_C, IT_V, MS_B, IT_N, IT_M, IT_CMLS, IT_DTMR, IT_SLQS, MT(MOD_RSFT, KC_ENT),
- FN, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |Enter | F1 | F2 | F3 | F4 | F5 | | _ | = | � | � | � |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F6 | F7 | F8 | F9 | |NUMPAD| � | � | { | } | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_LOWER] = LAYOUT_ortho_4x12(
- IT_TILD, IT_EXLM, IT_AT, IT_HASH, IT_DLR, IT_PERC, IT_CIRC, IT_AMPR, IT_ASTR, IT_LPRN, IT_RPRN, KC_DEL,
- KC_ENT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, S(IT_MINS), IT_EQL, S(IT_EGRV), IT_OGRV, IT_AGRV,
- _______, KC_F6, KC_F7, KC_F8, KC_F9, _______, NUMPAD, S(IT_UGRV), IT_PLMN, IT_LCBR, IT_RCBR, IT_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | SGCOM| DESK | | | | - | + | � | � | � |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Caps | | PHONE| SVIV |VIVERE| |NUMPAD| | | [ | ] | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Home | PgDn | PgUp | End |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_ortho_4x12(
- IT_GRV, IT_1, IT_2, IT_3, IT_4, IT_5, IT_6, IT_7, IT_8, IT_9, IT_0, _______,
- _______, _______, SECRET0, SECRET1, _______, _______, _______, IT_MINS, IT_PLUS, IT_EGRV, IT_IGRV, IT_UGRV,
- KC_CAPS, _______, SECRET2, SECRET3, SECRET4, _______, NUMPAD, SECRET5, _______, IT_LBRC, IT_RBRC, IT_BSLS,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-/* Numpad
- * ,-----------------------------------------------------------------------------------.
- * | | | | | | | | 7 | 8 | 9 | - | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | 4 | 5 | 6 | + | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | |NUMPAD| 1 | 2 | 3 | = | Ent |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | 0 | / | * | |
- * `-----------------------------------------------------------------------------------'
- */
-[_NUMPAD] = LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, _______, IT_7, IT_8, IT_9, IT_MINS, KC_BSPC,
- _______, _______, _______, _______, _______, _______, _______, IT_4, IT_5, IT_6, IT_PLUS, _______,
- _______, _______, _______, _______, _______, _______, NUMPAD, IT_1, IT_2, IT_3, IT_EQL, KC_ENT,
- _______, _______, _______, _______, _______, _______, _______, _______, IT_0, IT_SLSH, IT_ASTR, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | |Querty| |ResetE|Reset | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | |Debug | | | | | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | |Music |MusON |MusOff| | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | |Voice-|Aud On|Audoff|Voice+|
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_ortho_4x12(
- _______, DF(QWERTY), _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, MU_NEXT, MU_ON, MU_OFF, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, AU_PREV, AU_ON, AU_OFF, AU_NEXT
-),
-
-
-/* Function
- * ,-----------------------------------------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | F5 | Left | Down | Up | Right| | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F6 | F7 | F8 | F9 | F10 | F1 | F2 | F3 | F4 | F5 | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_FN] = LAYOUT_ortho_4x12(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, _______, _______,
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* MOUSE
- * ,-----------------------------------------------------------------------------------.
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | But1 |Scr Up|Scr Do| But2 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-
-[_MOUSE] = LAYOUT_ortho_4x12(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_BTN2,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_UP, KC_MS_RIGHT
-)
-
-};
-
-#ifdef AUDIO_ENABLE
- float plover_song[][2] = SONG(PLOVER_SOUND);
- float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
-#endif
-
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_DOWN);
- #else
- tap_code(KC_PGDN);
- #endif
- } else {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_UP);
- #else
- tap_code(KC_PGUP);
- #endif
- }
- }
- return true;
-}
-
-void matrix_scan_user(void) {
- #ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- }
- #endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/planck/keymaps/sigul/readme.md b/keyboards/planck/keymaps/sigul/readme.md
deleted file mode 100644
index 11000967ed..0000000000
--- a/keyboards/planck/keymaps/sigul/readme.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# An ANSI Italian Planck Layout
-by Silvio Gulizia
-
-The idea behind this layout is to have an American Keyboard with accented vowels (for Italian) to avoid switching language on the Mac every time you switch form English to Italian and being able to get the advantages that comes with the American (ANSI) keyboard when you write in English, code, or just want to use keybaord shorcuts (most of which are based on the American Keybaord).
-
-Some things I did, useful to you fi you want to have a look to the scheme or even replicate it for your language.
-
-- [x] add layer _FN with F keys and VI navigation
-- [x] add layer _MOUSE with mouse keys
-- [x] add "MOUSEKEY_ENABLE = yes" in rules.mk to enable mouse keys (moved to users/sigul/rules.mk)
-- [x] add definition to control the mouse movementes in config.h (moved to users/sigul/config.h)
-- [x] add layer _NUMPAD to have a numpad
-- [x] add keycode NUMPAD to toggle _NUMPAD (moved in users/sigul/sigul.h)
-- [x] modify layer ADJUST to simplify remembering commands (Reset on R, Eeprom reset on E and so)
-- [x] add custom keycodes ESCFN and TABFN on QUERTYi (default) layer to add the ability to use arrows with hjkl by activating layer FN when held with the definition LT(_FN,KC_ESC) and LT(_FN, KC_TAB)
-- [x] added "#define USB_MAX_POWER_CONSUMPTION 100" in config.h to use the keyboard with the iPad (moved to users/sigul/config.h)
-- [x] add "#define TAPPING_TOGGLE 3" in config.h to enable tapping toggle with 3 taps on LOWER and RAISE (moved to users/sigul/config.h)
-- [x] add tapping toggle to LOWER, RAISE and MOUSE keys
-- [x] add caps lock (KC_CAPS) to RAISE layer on the shift key
-- [x] Add del to a thumb layer
-- [x] Add MT(MOD_LSFT, KC_ENT) shift when pressed, enter when tapped
-- [x] add home, end, pgup and pgwon on _RAISE instead of arrows
-- [x] change LSFT to S for more legibility
-- [x] add secrets on RAISE to be able to output personal data such as email, phone number, credit cards number...
-- [x] remap F keys upon numbers on _FN
-
-To DO
-- [ ] Add Hyper on ESC or TAB to be able to use it for custom keyboard shortcuts
-- [ ] consider using layer configuration to have just one keymap (see as a reference qmk_firmware/layouts/community/ortho_4x12/bredfield/)
-- [ ] add brightness up (KC_BRMU or KC_BRIU) and down (KC_BRMD or KC_BRID)
-- [ ] consider adding AUTO_SHIFT_ENABLE = yes in rules.mk to be able to send shifted key depressing a key for twice the time
-- [ ] revert IT_ to KC_ where not required
diff --git a/keyboards/planck/keymaps/sigul/rules.mk b/keyboards/planck/keymaps/sigul/rules.mk
deleted file mode 100644
index dcf16bef39..0000000000
--- a/keyboards/planck/keymaps/sigul/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-SRC += muse.c
diff --git a/keyboards/planck/keymaps/smt/keymap.c b/keyboards/planck/keymaps/smt/keymap.c
index 6320e11fcf..7d558e4383 100644
--- a/keyboards/planck/keymaps/smt/keymap.c
+++ b/keyboards/planck/keymaps/smt/keymap.c
@@ -142,14 +142,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -221,36 +216,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/spacebarracecar/config.h b/keyboards/planck/keymaps/spacebarracecar/config.h
deleted file mode 100644
index 4f48857fe5..0000000000
--- a/keyboards/planck/keymaps/spacebarracecar/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#pragma once
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(NO_SOUND)
-#endif
diff --git a/keyboards/planck/keymaps/spacebarracecar/keymap.c b/keyboards/planck/keymaps/spacebarracecar/keymap.c
deleted file mode 100644
index f8bd8d7182..0000000000
--- a/keyboards/planck/keymaps/spacebarracecar/keymap.c
+++ /dev/null
@@ -1,160 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "spacebarracecar.h"
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-enum layers {
- _BASE,
- _RAISE,
- _LOWER,
- _MUSICMODE
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Base
-,-----------------------------------------------------------------------------------------------------------------------.
-|Tab |Q |W |E |R |T |Z |U |I |O |P |Backspace|
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|Esc/Nav |A |S |D |F |G |H |J |K |L |; |' |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|Shift |Y |X |C |V |B |N |M |, |. |/ |Shift |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|LCtrl | |Win |Alt |Lower |Space |Enter |Raise |AltGr |Win |Menu |RCtrl |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_BASE] = LAYOUT_ortho_4x12(
- KC_TAB, DE_Q, DE_W, DE_E, DE_R, DE_T, CU_Z, DE_U, DE_I, DE_O, DE_P, KC_BSPC,
- CU_NAV, DE_A, DE_S, DE_D, DE_F, DE_G, DE_H, DE_J, DE_K, DE_L, CU_SCLN, CU_QUOT,
- CU_LSFT, CU_Y, DE_X, DE_C, DE_V, DE_B, DE_N, DE_M, CU_COMM, CU_DOT, CU_SLSH, CU_RSFT,
- KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, LOWER, KC_SPC, CTLENT, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
-),
-
-/* Lower
-,-----------------------------------------------------------------------------------------------------------------------.
-|~ |! |" |# |$ |% |^ |& |* |( |) | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |@ |Strg+X |Strg+C |Strg+V | | |_ |+ |{ |} || |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |? | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-[_LOWER] = LAYOUT_ortho_4x12(
- DE_TILD, DE_EXLM, DE_DQUO, DE_HASH, DE_DLR, DE_PERC, CU_CIRC, DE_AMPR, DE_ASTR, DE_LPRN, DE_RPRN, _______,
- _______, DE_AT, CTRLX, CTRLC, CTRLV, XXXXXXX, XXXXXXX, DE_UNDS, DE_PLUS, DE_LCBR, DE_RCBR, DE_PIPE,
- _______, DE_EURO, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DE_MINS, CU_EQL, CU_LBRC, CU_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Raise
-,-----------------------------------------------------------------------------------------------------------------------.
-|` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |F1 |F2 |F3 |F4 |F5 |F6 |- |= |[ |] |\ |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |F7 |F8 |F9 |F10 |F11 |F12 | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_RAISE] = LAYOUT_ortho_4x12(
- CU_GRV, DE_1, DE_2, CU_3, DE_4, DE_5, CU_6, CU_7, CU_8, CU_9, CU_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, DE_MINS, CU_EQL, CU_LBRC, CU_RBRC, CU_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-[_MUSICMODE] = LAYOUT_ortho_4x12(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_LCTL, KC_LALT, KC_LGUI, KC_DOWN, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MU_NEXT, MU_OFF
-),
-
-/* Deadkey
-,-----------------------------------------------------------------------------------------------------------------------.
-| | | | | | | |Ü | |Ö | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |Ä |ß | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| | | | | |" |" | | | | | |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_DEADKEY] = LAYOUT_ortho_4x12(
- KC_TAB, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_UE, CU_ED, CU_OE, CU_ED, KC_BSPC,
- CU_NAV, CU_AE, CU_SS, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_DDQ,
- CU_LSFT, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_RSFT,
- KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, LOWER, CU_DDQ, CU_DDQ, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
-),
-
-/* Navigation
-,-----------------------------------------------------------------------------------------------------------------------.
-|ALT F4 |PageDown |Up |PageUp |Home | | | |Win+Up | | |Del |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |Left |Down |Right |End | | |Win+Left |Win+Down |Win+Right| |Enter |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |Prev |Pause |Next |LowerVol |RaiseVol |Mute | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-|QK_BOOT |ESCT | | | | | | | | | |Game |
-`-----------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_NAV] = LAYOUT_ortho_4x12(
- _______, KC_PGDN, KC_UP, KC_PGUP, KC_HOME, XXXXXXX, XXXXXXX, XXXXXXX, GUIU, XXXXXXX, XXXXXXX, KC_DEL,
- _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, XXXXXXX, XXXXXXX, GUIL, GUID, GUIR, EMOJI, KC_ENT,
- _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_MUTE, MU_ON, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- QK_BOOT, CU_ESCT, ALTF4, _______, _______, KC_SPC, CTLENT, _______, _______, _______, _______, CU_GAME
-)
-
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
-switch (keycode) {
- case MO(_LOWER):
- if (game){
- if(record->event.pressed) {
- register_code(KC_SPC);
- } else {
- unregister_code(KC_SPC);
- }
- return false;
- } else {
- return true;
- }
- case KC_LALT:
- if (game) {
- if (record->event.pressed){
- layer_on(_RAISE);
- } else {
- layer_off(_RAISE);
- }
- return false;
- } else {
- return true;
- }
- case MU_ON:
- if(record->event.pressed) {
- layer_off(_LOWER);
- layer_off(_RAISE);
- layer_off(_NAV);
- layer_off(_DEADKEY);
- layer_on(_MUSICMODE);
- }
- return true;
- case MU_OFF:
- if(record->event.pressed) {
- layer_off(_MUSICMODE);
- }
- return true;
- default:
- return true;
- }
-}
diff --git a/keyboards/planck/keymaps/spacebarracecar/readme.md b/keyboards/planck/keymaps/spacebarracecar/readme.md
deleted file mode 100644
index c8e8134caa..0000000000
--- a/keyboards/planck/keymaps/spacebarracecar/readme.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# SpacebarRacecar US-International Planck Keymap for German PCs
-
-This keymap emulates most keys of the US-International layout on PCs that have German set as input language.
-This allows the use of the keyboard on any PC in Germany without the need to change any settings.
-The keymap is mostly based on the Planck default layout but adds essential features for german input, like access to Ä, Ö, Ü, ß.
diff --git a/keyboards/planck/keymaps/spacebarracecar/rules.mk b/keyboards/planck/keymaps/spacebarracecar/rules.mk
deleted file mode 100644
index b65fadcd36..0000000000
--- a/keyboards/planck/keymaps/spacebarracecar/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = yes # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-# Userspace defines
-GERMAN_ENABLE = yes # Enable Custom US Ansi Keycodes for PC with German set as input language
diff --git a/keyboards/planck/keymaps/steno/keymap.c b/keyboards/planck/keymaps/steno/keymap.c
index 9de27e47bf..4d22ee4ff3 100644
--- a/keyboards/planck/keymaps/steno/keymap.c
+++ b/keyboards/planck/keymaps/steno/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
extern keymap_config_t keymap_config;
diff --git a/keyboards/planck/keymaps/that_canadian/keymap.c b/keyboards/planck/keymaps/that_canadian/keymap.c
index 9f3a415fa3..d7b8a6b356 100644
--- a/keyboards/planck/keymaps/that_canadian/keymap.c
+++ b/keyboards/planck/keymaps/that_canadian/keymap.c
@@ -123,14 +123,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
@@ -173,36 +168,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
}
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/planck/keymaps/vaire/keymap.c b/keyboards/planck/keymaps/vaire/keymap.c
index f58486cda8..00b49e52d7 100644
--- a/keyboards/planck/keymaps/vaire/keymap.c
+++ b/keyboards/planck/keymaps/vaire/keymap.c
@@ -31,42 +31,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT_planck_grid(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, SFT_T(KC_ENT),
+ KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, SFT_T(KC_ENT),
MO(1), KC_LCTL, KC_LALT, KC_LGUI, MO(2), LT(5,KC_ENT), LT(4,KC_SPC), MO(3), KC_SLSH, KC_LEFT, KC_DOWN, CTL_T(KC_RGHT)),
LAYOUT_planck_grid(
- KC_ESC, KC_NUM, LCTL(KC_SPC), KC_UP, LSFT(KC_SPC), KC_DLR, KC_EQL, KC_P7, KC_P8, KC_P9, KC_PPLS, LCTL(KC_BSPC),
- KC_TAB, FIND, KC_LEFT, KC_DOWN, KC_RGHT, KC_PERC, KC_CIRC, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_BSLS,
- KC_LSFT, UNDO, CUT, COPY, PASTE, EXCEL_HOME, KC_PSCR, KC_P1, KC_P2, KC_P3, KC_PSLS, KC_LSFT,
+ KC_ESC, KC_NUM, LCTL(KC_SPC), KC_UP, LSFT(KC_SPC), KC_DLR, KC_EQL, KC_P7, KC_P8, KC_P9, KC_PPLS, LCTL(KC_BSPC),
+ KC_TAB, FIND, KC_LEFT, KC_DOWN, KC_RGHT, KC_PERC, KC_CIRC, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_BSLS,
+ KC_LSFT, UNDO, CUT, COPY, PASTE, EXCEL_HOME, KC_PSCR, KC_P1, KC_P2, KC_P3, KC_PSLS, KC_LSFT,
KC_TRNS, KC_LCTL, KC_LALT, KC_LGUI, TO(1), KC_ENT, KC_SPC, KC_PENT, KC_P0, KC_PDOT, KC_PAST, KC_LCTL),
LAYOUT_planck_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_EQL, KC_LT, KC_GT, KC_LPRN,
- KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_MPLY, KC_MNXT, KC_PGUP, SFT_T(KC_VOLU),
+ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
+ KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_EQL, KC_LT, KC_GT, KC_LPRN,
+ KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_MPLY, KC_MNXT, KC_PGUP, SFT_T(KC_VOLU),
TO(0), KC_LCTL, KC_LALT, KC_LGUI, KC_TRNS, KC_ENT, KC_SPC, MO(3), KC_PSCR, KC_MPRV, KC_PGDN, CTL_T(KC_VOLD)),
LAYOUT_planck_grid(
- KC_TILD, DESK_LEFT, WIN_LEFT, KC_F4, WIN_RIGHT, DESK_RIGHT, DOCS, SNAP_LEFT, SNAP_UP, SNAP_RIGHT, SNAP_DOWN, KC_DEL,
- KC_CAPS, KC_QUOT, KC_LBRC, KC_LCBR, KC_LPRN, KC_BSLS, KC_SLSH, KC_RPRN, KC_RCBR, KC_RBRC, KC_DQUO, KC_QUOT,
- KC_PWR, KC_SLEP, KC_WAKE, KC_HOME, BL_BRTG, BL_STEP, KC_TRNS, KC_CALC, KC_LT, KC_GT, KC_COLON, KC_LSFT,
+ KC_TILD, DESK_LEFT, WIN_LEFT, KC_F4, WIN_RIGHT, DESK_RIGHT, DOCS, SNAP_LEFT, SNAP_UP, SNAP_RIGHT, SNAP_DOWN, KC_DEL,
+ KC_CAPS, KC_QUOT, KC_LBRC, KC_LCBR, KC_LPRN, KC_BSLS, KC_SLSH, KC_RPRN, KC_RCBR, KC_RBRC, KC_DQUO, KC_QUOT,
+ KC_PWR, KC_SLEP, KC_WAKE, KC_HOME, BL_BRTG, BL_STEP, KC_TRNS, KC_CALC, KC_LT, KC_GT, KC_COLON, KC_LSFT,
TO(0), KC_LCTL, KC_LALT, KC_LGUI, KC_LALT, KC_LCTL, KC_TRNS, KC_TRNS, AU_TOGG, MU_TOGG, MU_NEXT, LCTL(KC_RGHT)),
LAYOUT_planck_grid(
- TO(0), KC_LSCR, WIN_LEFT, KC_MS_WH_UP, WIN_RIGHT, KC_TRNS, KC_TRNS, KC_MS_BTN1, KC_MS_U, KC_MS_BTN2, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_INS, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_RIGHT, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS,
- QK_BOOT, KC_APP, KC_MS_ACCEL0, KC_MS_ACCEL0, KC_MS_ACCEL0, KC_TRNS, KC_TRNS, TO(0), TO(1), TO(2), TO(3), TO(4),
+ TO(0), KC_LSCR, WIN_LEFT, KC_MS_WH_UP, WIN_RIGHT, KC_TRNS, KC_TRNS, KC_MS_BTN1, KC_MS_U, KC_MS_BTN2, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_INS, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_RIGHT, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS,
+ QK_BOOT, KC_APP, KC_MS_ACCEL0, KC_MS_ACCEL0, KC_MS_ACCEL0, KC_TRNS, KC_TRNS, TO(0), TO(1), TO(2), TO(3), TO(4),
TO(0), KC_MENU, KC_TRNS, KC_TRNS, KC_LALT, KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RCTL),
LAYOUT_planck_grid(
- KC_BSPC, KC_P, KC_O, KC_I, KC_U, KC_Y, KC_T, KC_R, KC_E, KC_W, KC_Q, KC_BSPC,
- KC_TAB, KC_SCLN, KC_L, KC_K, KC_J, KC_H, KC_G, KC_F, KC_D, KC_S, KC_A, KC_QUOT,
- KC_LSFT, KC_ENT, KC_DOT, KC_COMM, KC_M, KC_N, KC_B, KC_V, KC_C, KC_X, KC_Z, SFT_T(KC_ENT),
+ KC_BSPC, KC_P, KC_O, KC_I, KC_U, KC_Y, KC_T, KC_R, KC_E, KC_W, KC_Q, KC_BSPC,
+ KC_TAB, KC_SCLN, KC_L, KC_K, KC_J, KC_H, KC_G, KC_F, KC_D, KC_S, KC_A, KC_QUOT,
+ KC_LSFT, KC_ENT, KC_DOT, KC_COMM, KC_M, KC_N, KC_B, KC_V, KC_C, KC_X, KC_Z, SFT_T(KC_ENT),
TO(0), KC_LCTL, KC_LALT, KC_LGUI, MO(2), KC_TRNS, KC_TRNS, MO(3), KC_SLSH, KC_LEFT, KC_DOWN, LCTL(KC_RGHT)),
-
-
+
+
};
@@ -76,7 +76,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
void matrix_init_user(void)
{
set_voice(default_voice);
- startup_user();
println("Matrix Init");
}
@@ -123,29 +122,4 @@ bool led_update_user(led_t led_state)
old_led_state = led_state;
return false;
}
-
-
-void startup_user(void)
-{
- _delay_ms(30); // gets rid of tick
- PLAY_SONG(tone_my_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_my_goodbye);
- _delay_ms(3000);
- stop_all_notes();
-}
-
-void audio_on_user(void)
-{
- PLAY_SONG(tone_audio_on);
-}
-
-void music_on_user(void)
-{
- PLAY_SONG(tone_music_on);
-}
-
-#endif /* AUDIO_ENABLE */ \ No newline at end of file
+#endif /* AUDIO_ENABLE */
diff --git a/keyboards/planck/keymaps/yttyx/keymap.c b/keyboards/planck/keymaps/yttyx/keymap.c
index 1201163ac7..b3b39cd919 100644
--- a/keyboards/planck/keymaps/yttyx/keymap.c
+++ b/keyboards/planck/keymaps/yttyx/keymap.c
@@ -1,6 +1,5 @@
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum layers {
_BA, // Base (Balance Twelve mirror variant)
diff --git a/keyboards/planck/keymaps/zach/zach_common_functions.c b/keyboards/planck/keymaps/zach/zach_common_functions.c
index ae5f44e713..e17e31c7b5 100644
--- a/keyboards/planck/keymaps/zach/zach_common_functions.c
+++ b/keyboards/planck/keymaps/zach/zach_common_functions.c
@@ -52,8 +52,6 @@ enum my_keycodes{
#ifdef AUDIO_ENABLE
#include "audio.h"
-float tone_startup[][2] = SONG(STARTUP_SOUND);
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_swcole[][2] = SONG(QWERTY_SOUND);
float tone_capslock_on[][2] = SONG(CAPS_LOCK_ON_SOUND);
@@ -414,32 +412,4 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
};
-void matrix_init_user(void){ // Run once at startup
- #ifdef AUDIO_ENABLE
- _delay_ms(50); // gets rid of tick
- PLAY_SONG(tone_startup);
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-void play_goodbye_tone(void){
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
-}
-
-void shutdown_user(void){
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void){ // Run when the music layer is turned on
- PLAY_SONG(tone_startup);
-}
-
-void music_off_user(void){ // Run when music is turned off
- PLAY_SONG(tone_goodbye);
-}
-#endif
-
#endif
diff --git a/keyboards/planck/light/config.h b/keyboards/planck/light/config.h
index d4001dd80b..6d12061b51 100644
--- a/keyboards/planck/light/config.h
+++ b/keyboards/planck/light/config.h
@@ -7,17 +7,9 @@
#define PLANCK_MIT_LAYOUT
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110110
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 25
#define DRIVER_2_LED_TOTAL 24
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/planck/light/light.c b/keyboards/planck/light/light.c
index 1fc6a65c0c..828319c66d 100644
--- a/keyboards/planck/light/light.c
+++ b/keyboards/planck/light/light.c
@@ -16,7 +16,7 @@
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/planck/rev6/config.h b/keyboards/planck/rev6/config.h
index c0c8dc2c55..a0a997f860 100644
--- a/keyboards/planck/rev6/config.h
+++ b/keyboards/planck/rev6/config.h
@@ -17,8 +17,6 @@
#pragma once
-#define DIP_SWITCH_PINS { B14, A15, A0, B9 }
-
#define MUSIC_MAP
#undef AUDIO_VOICES
#undef AUDIO_PIN
diff --git a/keyboards/planck/rev6/info.json b/keyboards/planck/rev6/info.json
index 59e7ba6635..a6ad35281d 100644
--- a/keyboards/planck/rev6/info.json
+++ b/keyboards/planck/rev6/info.json
@@ -23,6 +23,9 @@
"rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["B14", "A15", "A0", "B9"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B12", "pin_b": "B13"}
diff --git a/keyboards/planck/rev6_drop/config.h b/keyboards/planck/rev6_drop/config.h
index 7050fa009c..a0a997f860 100644
--- a/keyboards/planck/rev6_drop/config.h
+++ b/keyboards/planck/rev6_drop/config.h
@@ -17,9 +17,6 @@
#pragma once
-#define DIP_SWITCH_PINS \
- { B14, A15, A0, B9 }
-
#define MUSIC_MAP
#undef AUDIO_VOICES
#undef AUDIO_PIN
diff --git a/keyboards/planck/rev6_drop/info.json b/keyboards/planck/rev6_drop/info.json
index d04bb0d6aa..d224561c7f 100644
--- a/keyboards/planck/rev6_drop/info.json
+++ b/keyboards/planck/rev6_drop/info.json
@@ -23,6 +23,9 @@
"rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["B14", "A15", "A0", "B9"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B12", "pin_b": "B13"}
diff --git a/keyboards/planck/rev7/config.h b/keyboards/planck/rev7/config.h
index 3da5a4e6b9..678cb1d438 100644
--- a/keyboards/planck/rev7/config.h
+++ b/keyboards/planck/rev7/config.h
@@ -17,9 +17,6 @@
#pragma once
-#define DIP_SWITCH_PINS \
- { B14, A15, A0, B9 }
-
#define MUSIC_MAP
#undef AUDIO_VOICES
#undef AUDIO_PIN
diff --git a/keyboards/planck/rev7/info.json b/keyboards/planck/rev7/info.json
index 1d57732b4f..72dce51d83 100644
--- a/keyboards/planck/rev7/info.json
+++ b/keyboards/planck/rev7/info.json
@@ -20,6 +20,9 @@
"rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["B14", "A15", "A0", "B9"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B12", "pin_b": "B13"}
diff --git a/keyboards/planck/rev7/keymaps/peterfalken/config.h b/keyboards/planck/rev7/keymaps/peterfalken/config.h
deleted file mode 100644
index c3de26365b..0000000000
--- a/keyboards/planck/rev7/keymaps/peterfalken/config.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2015-2023 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(PLANCK_SOUND)
-// #define STARTUP_SONG SONG(NO_SOUND)
-
-# define DEFAULT_LAYER_SONGS \
- { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-// #define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-// #define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
diff --git a/keyboards/planck/rev7/keymaps/peterfalken/keymap.c b/keyboards/planck/rev7/keymaps/peterfalken/keymap.c
deleted file mode 100644
index 140149c472..0000000000
--- a/keyboards/planck/rev7/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "muse.h"
-#include "peterfalken.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | Ctrl | Opt | Cmd | LWR | Space | RSE | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_planck_grid(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
- _______, KC_LCTL, KC_LOPT, KC_LCMD, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_planck_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_planck_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | RSET | ▽ | M.AP | M.AL | LPAD | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | SLEP |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | CPWD | UN | CU | CO | PA | MV | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_planck_grid(
- QK_BOOT, _______, CK_M1, KC_MCTL, KC_LPAD, _______, _______, _______, _______, _______, _______, KC_DEL,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CK_SLP,
- CK_CW, _______, CK_CU, CK_CO, CK_PA, CK_MV, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
diff --git a/keyboards/planck/rev7/keymaps/peterfalken/readme.md b/keyboards/planck/rev7/keymaps/peterfalken/readme.md
deleted file mode 100644
index f64d682a51..0000000000
--- a/keyboards/planck/rev7/keymaps/peterfalken/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Copyright 2023 LEG <ucaboys@gmail.com> @PeterFalken
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/planck/rev7/keymaps/peterfalken/rules.mk b/keyboards/planck/rev7/keymaps/peterfalken/rules.mk
deleted file mode 100644
index 4db223543d..0000000000
--- a/keyboards/planck/rev7/keymaps/peterfalken/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Setup keymap QMK features
-# TODO: Check for space optimizations
-AUDIO_ENABLE = yes # Enable Audio Output
-ENCODER_ENABLE = no # Disable encoder
diff --git a/keyboards/planck/thk/config.h b/keyboards/planck/thk/config.h
index cfb88aa0eb..4087ce2b28 100644
--- a/keyboards/planck/thk/config.h
+++ b/keyboards/planck/thk/config.h
@@ -18,8 +18,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DIP_SWITCH_PINS { D0, D1, D4, D6 }
-
// THK uses D5 for audio
#undef AUDIO_PIN
#define AUDIO_PIN D5
diff --git a/keyboards/planck/thk/info.json b/keyboards/planck/thk/info.json
index f62e074e68..24b8d5f0a5 100644
--- a/keyboards/planck/thk/info.json
+++ b/keyboards/planck/thk/info.json
@@ -13,6 +13,9 @@
"rows": ["A7", "A6", "A5", "A4"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["D0", "D1", "D4", "D6"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B4", "pin_b": "B3"},
diff --git a/keyboards/playkbtw/ca66/keymaps/zyber/keymap.c b/keyboards/playkbtw/ca66/keymaps/zyber/keymap.c
deleted file mode 100644
index 0f446fd8f6..0000000000
--- a/keyboards/playkbtw/ca66/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- LAYOUT(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, KC_PGUP,
- CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_PGDN,
- KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_HOME,
- KC_NO, KC_LALT, KC_LGUI, KC_NO, KC_SPC, KC_NO, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
-
- LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL, RGB_TOG,
- KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS, RGB_MOD,
- KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_INS, KC_HOME,
- KC_LSFT, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_HUI, KC_END,
- KC_NO, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI),
-};
diff --git a/keyboards/playkbtw/ca66/keymaps/zyber/rules.mk b/keyboards/playkbtw/ca66/keymaps/zyber/rules.mk
deleted file mode 100644
index 0a5b666e85..0000000000
--- a/keyboards/playkbtw/ca66/keymaps/zyber/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-MOUSEKEY_ENABLE = no
diff --git a/keyboards/playkbtw/pk64rgb/config.h b/keyboards/playkbtw/pk64rgb/config.h
index bb28749d94..67e42e44a9 100644
--- a/keyboards/playkbtw/pk64rgb/config.h
+++ b/keyboards/playkbtw/pk64rgb/config.h
@@ -23,8 +23,7 @@
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 160
#define RGB_MATRIX_LED_PROCESS_LIMIT 20
#define RGB_MATRIX_LED_FLUSH_LIMIT 26
- #define DRIVER_ADDR_1 0b1010000
- #define DRIVER_COUNT 1
+ #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define RGB_MATRIX_LED_COUNT 64
diff --git a/keyboards/playkbtw/pk64rgb/pk64rgb.c b/keyboards/playkbtw/pk64rgb/pk64rgb.c
index d4c6702472..427d1cf04e 100644
--- a/keyboards/playkbtw/pk64rgb/pk64rgb.c
+++ b/keyboards/playkbtw/pk64rgb/pk64rgb.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/ploopyco/mouse/keymaps/drashna/config.h b/keyboards/ploopyco/mouse/keymaps/drashna/config.h
deleted file mode 100644
index 1dc1b7695f..0000000000
--- a/keyboards/ploopyco/mouse/keymaps/drashna/config.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- * Copyright 2019 Sunjun Kim
- * Copyright 2020 Ploopy Corporation
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#undef RGBLIGHT_LIMIT_VAL
-#define RGBLIGHT_LIMIT_VAL 255
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLIGHT_SLEEP
-
-#define MOUSE_EXTENDED_REPORT
diff --git a/keyboards/ploopyco/mouse/keymaps/drashna/keymap.c b/keyboards/ploopyco/mouse/keymaps/drashna/keymap.c
deleted file mode 100644
index 12b0458143..0000000000
--- a/keyboards/ploopyco/mouse/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- * Copyright 2019 Sunjun Kim
- * Copyright 2020 Ploopy Corporation
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-// safe range starts at `USER_SAFE_RANGE` instead.
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(
- C(KC_C), KC_BTN1, KC_BTN3, KC_BTN2, MO(1), KC_BTN4, KC_BTN5, DPI_CONFIG),
- [1] = LAYOUT(
- RGB_HUI, RGB_MOD, RGB_TOG, RGB_RMOD, MO(1), KC_VOLU, KC_VOLD, QK_BOOT)
-};
-// clang-format on
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [0] = { ENCODER_CCW_CW( KC_WH_D, KC_WH_U ) },
- [1] = { ENCODER_CCW_CW( RGB_HUD, RGB_HUI ) },
-};
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-void eeconkfig_init_user(void) {
- rgblight_enable();
-# ifdef RGBLIGHT_EFFECT_TWINKLE
- rgblight_mode(RGBLIGHT_MODE_TWINKLE + 5);
-# else
- rgblight_mode(RGBLIGHT_MODE_BREATHING + 5);
-# endif
- rgblight_sethsv(HSV_MAGENTA);
-}
-#endif
diff --git a/keyboards/ploopyco/mouse/keymaps/drashna/rules.mk b/keyboards/ploopyco/mouse/keymaps/drashna/rules.mk
deleted file mode 100644
index bd3927a4b1..0000000000
--- a/keyboards/ploopyco/mouse/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-USER_NAME := not_drashna
-BOOTLOADER = qmk-hid
-
-RGBLIGHT_ENABLE = yes
-CONSOLE_ENABLE = no
-LTO_ENABLE = yes
diff --git a/keyboards/ploopyco/mouse/keymaps/uqs/keymap.c b/keyboards/ploopyco/mouse/keymaps/uqs/keymap.c
deleted file mode 100644
index 564dad13df..0000000000
--- a/keyboards/ploopyco/mouse/keymaps/uqs/keymap.c
+++ /dev/null
@@ -1,36 +0,0 @@
-// Copyright 2022 Ulrich Spörlein (@uqs)
-// SPDX-License-Identifier: GPL-2.0-or-later
-// vi:et sw=4:
-
-#include QMK_KEYBOARD_H
-
-enum custom_keycodes {
- DBL_CLK_NO = SAFE_RANGE,
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- // This works fine in xev(1) or a browser, but not in the game where I
- // would want it. Maybe need to increase the delay? Also needs to be
- // rewritten to use Deferred Execution.
- case DBL_CLK_NO:
- if (record->event.pressed) {
- tap_code(KC_BTN2);
- wait_ms(150);
- tap_code(KC_BTN2);
- wait_ms(300);
- tap_code(KC_N);
- }
- return false;
- }
- return true;
-}
-
-
-// Layout is:
-// left-most, M1, M3, M2, right-most, fwd, back (on side), tiny middle one
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT(KC_E, KC_BTN1, KC_BTN3, KC_BTN2, KC_LSFT, KC_BTN4, KC_BTN5, DF(1)), // shooters
- [1] = LAYOUT(KC_1, KC_BTN1, KC_Y, KC_BTN2, DBL_CLK_NO, KC_N, KC_Y, DF(0)), // stardew valley, sword on 1
-};
diff --git a/keyboards/ploopyco/mouse/keymaps/uqs/rules.mk b/keyboards/ploopyco/mouse/keymaps/uqs/rules.mk
deleted file mode 100644
index 59222a688a..0000000000
--- a/keyboards/ploopyco/mouse/keymaps/uqs/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-#VIA_ENABLE = yes
diff --git a/keyboards/ploopyco/mouse/rules.mk b/keyboards/ploopyco/mouse/rules.mk
index 8d62f78ed7..17df9cc3c9 100644
--- a/keyboards/ploopyco/mouse/rules.mk
+++ b/keyboards/ploopyco/mouse/rules.mk
@@ -19,5 +19,6 @@ MOUSEKEY_ENABLE = yes # Mouse keys
ENCODER_ENABLE := no
OPTS_DEF += -DENCODER_ENABLE
-QUANTUM_LIB_SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
+
SRC += opt_encoder.c
diff --git a/keyboards/ploopyco/trackball/rules.mk b/keyboards/ploopyco/trackball/rules.mk
index 0f5f3f648f..ce7c4f29c8 100644
--- a/keyboards/ploopyco/trackball/rules.mk
+++ b/keyboards/ploopyco/trackball/rules.mk
@@ -19,7 +19,8 @@ MOUSEKEY_ENABLE = yes # Mouse keys
ENCODER_ENABLE := no
OPTS_DEF += -DENCODER_ENABLE
-QUANTUM_LIB_SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
+
SRC += opt_encoder.c
DEFAULT_FOLDER = ploopyco/trackball/rev1_005
diff --git a/keyboards/ploopyco/trackball_mini/rules.mk b/keyboards/ploopyco/trackball_mini/rules.mk
index d7016929c9..bcede0676c 100644
--- a/keyboards/ploopyco/trackball_mini/rules.mk
+++ b/keyboards/ploopyco/trackball_mini/rules.mk
@@ -16,7 +16,8 @@ MOUSEKEY_ENABLE = yes # Mouse keys
ENCODER_ENABLE := no
OPTS_DEF += -DENCODER_ENABLE
-QUANTUM_LIB_SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
+
SRC += opt_encoder.c
DEFAULT_FOLDER = ploopyco/trackball_mini/rev1_001
diff --git a/keyboards/ploopyco/trackball_thumb/rules.mk b/keyboards/ploopyco/trackball_thumb/rules.mk
index 4a16c0abfb..6b82d7734b 100644
--- a/keyboards/ploopyco/trackball_thumb/rules.mk
+++ b/keyboards/ploopyco/trackball_thumb/rules.mk
@@ -3,7 +3,8 @@ F_CPU = 8000000
POINTING_DEVICE_DRIVER = pmw3360
-QUANTUM_LIB_SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
+
SRC += opt_encoder.c
DEFAULT_FOLDER = ploopyco/trackball_thumb/rev1_001
diff --git a/keyboards/pluckey/keymaps/manna-harbour_miryoku/config.h b/keyboards/pluckey/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 19976c2c2d..0000000000
--- a/keyboards/pluckey/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2021 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, \
-XXX, K00, K01, K02, K03, K04, XXX, XXX, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, XXX, XXX, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX \
-)
diff --git a/keyboards/pluckey/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/pluckey/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index 3da5ed16ae..0000000000
--- a/keyboards/pluckey/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2021 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/plywrks/ply8x/config.h b/keyboards/plywrks/ply8x/config.h
index 2180b9887f..cccedf8e23 100644
--- a/keyboards/plywrks/ply8x/config.h
+++ b/keyboards/plywrks/ply8x/config.h
@@ -4,7 +4,7 @@
#pragma once
/* RGB */
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
#define WS2812_SPI_SCK_PAL_MODE 0
diff --git a/keyboards/preonic/keymaps/0xdec/keymap.c b/keyboards/preonic/keymaps/0xdec/keymap.c
index fafa5c4460..fad47842a5 100644
--- a/keyboards/preonic/keymaps/0xdec/keymap.c
+++ b/keyboards/preonic/keymaps/0xdec/keymap.c
@@ -81,13 +81,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#ifdef AUDIO_ENABLE
-
-float tone_startup[][2] = {
- {NOTE_B5, 20},
- {NOTE_B6, 8},
- {NOTE_DS6, 20},
- {NOTE_B6, 8}
-};
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_game[][2] = {
{NOTE_E6, 10} ,{NOTE_E6, 10} ,{NOTE_REST, 10} ,{NOTE_E6, 10} ,
@@ -95,26 +88,6 @@ float tone_game[][2] = {
{NOTE_G6, 10} ,{NOTE_REST, 30},
{NOTE_G5, 10} ,{NOTE_REST, 30}
};
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-
-void startup_user(void) {
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-void shutdown_user(void) {
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void) {
- music_scale_user();
-}
-void music_scale_user(void) {
- PLAY_SONG(music_scale);
-}
-
#endif
diff --git a/keyboards/preonic/keymaps/arkag/config.h b/keyboards/preonic/keymaps/arkag/config.h
deleted file mode 100644
index 1b42e6ef9e..0000000000
--- a/keyboards/preonic/keymaps/arkag/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2021 Alex Kagno
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(STARTUP_SOUND)
-# define GOODBYE_SONG SONG(GOODBYE_SOUND)
-# define AUDIO_CLICKY
-# define AUDIO_CLICKY_FREQ_RANDOMNESS 1.0f
-# define MIDI_BASIC
-# define MUSIC_MASK keycode != KC_NO
-#endif
-
-// save me space!
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
diff --git a/keyboards/preonic/keymaps/arkag/keymap.c b/keyboards/preonic/keymaps/arkag/keymap.c
deleted file mode 100644
index e127711791..0000000000
--- a/keyboards/preonic/keymaps/arkag/keymap.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/* Copyright 2021 Alex Kagno
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "arkag.h"
-#include "muse.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, M_OS,
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- KC_LCTL, KC_LGUI, KC_LALT, MEDIA, SYMBOL, KC_SPC, QK_LEAD, ARROW, FUNCT, KC_RALT, XXXXXXX, HITBOX),
-
- [_SYMBOL] = LAYOUT_preonic_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_GRV, KC_LPRN, KC_RPRN, KC_PLUS, KC_UNDS, KC_CIRC, KC_AMPR, KC_7, KC_8, KC_9, _______, _______,
- KC_LCBR, KC_LBRC, KC_RBRC, KC_EQL, KC_MINS, KC_ASTR, KC_PIPE, KC_4, KC_5, KC_6, _______, KC_NUM,
- KC_RCBR, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_PDOT, KC_1, KC_2, KC_3, KC_BSLS, KC_PENT,
- M_DASH, KC_TILD, _______, KEEB, _______, _______, _______, KC_0, KC_PSLS, KC_PMNS, KC_PPLS, KC_PAST),
-
- [_MEDIA] = LAYOUT_preonic_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______,
- KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_ARROW] = LAYOUT_preonic_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_HITBOX] = LAYOUT_preonic_grid(
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_U, KC_I, KC_O, KC_P, XXXXXXX,
- XXXXXXX, XXXXXXX, KC_A, KC_S, KC_D, XXXXXXX, XXXXXXX, KC_J, KC_K, KC_L, KC_SCLN, XXXXXXX,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_ENT,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_W, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, HITBOX),
-
- [_FUNCT] = LAYOUT_preonic_grid(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_CALC, _______, _______, _______, _______, _______, _______, _______, KC_CAPS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_KEEB] = LAYOUT_preonic_grid(
- CK_TOGG, AU_TOGG, MU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, HITBOX,
- M_USSR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, BL_TOGG, BL_STEP, BL_UP, BL_DOWN, BL_BRTG, _______, _______, _______, _______, _______, _______,
- RGB_M_P, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
-};
-
-#ifdef AUDIO_ENABLE
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case MU_TOGG:
- case SYMBOL:
- case KEEB:
- return false;
- default:
- return true;
- }
-}
-#endif
diff --git a/keyboards/preonic/keymaps/arkag/readme.md b/keyboards/preonic/keymaps/arkag/readme.md
deleted file mode 100644
index e911968dd9..0000000000
--- a/keyboards/preonic/keymaps/arkag/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default Preonic layout - largely based on the Planck's \ No newline at end of file
diff --git a/keyboards/preonic/keymaps/arkag/rules.mk b/keyboards/preonic/keymaps/arkag/rules.mk
deleted file mode 100644
index 5b87801fca..0000000000
--- a/keyboards/preonic/keymaps/arkag/rules.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no
-STENO_ENABLE = no
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-SLEEP_LED_ENABLE = yes
-NKRO_ENABLE = yes
-BACKLIGHT_ENABLE = no
-AUDIO_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-TAP_DANCE_ENABLE = no
-UNICODE_ENABLE = yes
-LEADER_ENABLE = yes
-
-# from default
-SRC += muse.c
diff --git a/keyboards/preonic/keymaps/badger/keymap.c b/keyboards/preonic/keymaps/badger/keymap.c
deleted file mode 100644
index 553b84ad34..0000000000
--- a/keyboards/preonic/keymaps/badger/keymap.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
-Copyright 2020 Dan White <opensource@bluetufa.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// if not REV3, just compile the default keymaps
-#ifndef KEYBOARD_preonic_rev3
-#include "../default/keymap.c"
-#else
-
-#include "ortho.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY_MAC_ORTHO] = LAYOUT_preonic_2x2u(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MOMAC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- KC_LCTL, KC_LALT, KC_LGUI, RAISE, P_ADJ, KC_SPC, LOWER, KC_RGUI, KC_RALT, MAC_POP),
-
- [_MOVE_MAC_ORTHO] = LAYOUT_preonic_2x2u(
- MAC_FRC, MM_LEFT, MM_RGHT, IJ_TOP, IJ_BOTT, _______, _______, IJ_UP, IJ_DOWN, IJ_BACK, IJ_FWD, KC_BSPC,
- KC_BACK, IJ_STEP, IJ_INTO, IJ_OUT, IJ_RUN, IJ_STOP, _______, WD_BACK, KC_HOME, KC_END, WD_FRWD, KC_NEXT,
- _______, MM_LH, MM_MAX, MM_RH, IJ_FIND, IJ_IMPS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CM_RIGHT, CM_DOWN,
- _______, MM_UH, MM_BH, MAC_CPY, MAC_PST, IJ_IMPH, _______, IJ_REN, IJ_IMPL, IJ_DECL, IJ_USAG, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_QWERTY_LINUX_ORTHO] = LAYOUT_preonic_2x2u(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- MOLNX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, RAISE, P_ADJ, KC_SPC, LOWER, KC_RALT, KC_RGUI, OS_POP),
-
- [_MOVE_LINUX_ORTHO] = LAYOUT_preonic_2x2u(
- KC_ESC, VD_1, VD_2, VD_3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL,
- _______, WM_VD1, WM_UH, WM_VD2, KC_MAC1, KC_MSTP, KC_MPLY, KC_PGUP, KC_HOME, KC_END, KC_PGDN, KC_INS,
- _______, WM_LH, WM_MAX, WM_RH, KC_MAC2, KC_PSCR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, CS_RIGHT, CS_DOWN,
- _______, WM_VD3, WM_BH, OS_COPY, OS_PAST, KC_MPRV, KC_MNXT, KC_MUTE, KC_WBAK, KC_WFWD, KC_WSCH, _______,
- _______, KC_LCTL, KC_LALT, KC_LGUI, _______, _______, _______, _______, _______, _______),
-
- [_RAISE] = LAYOUT_preonic_2x2u(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL,
- _______, KC_F11, KC_F12, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_AGIN, KC_STOP, KC_MENU, KC_FIND, KC_MPLY, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_COLN, KC_DQUO,
- _______, KC_UNDO, KC_CUT, OS_COPY, OS_PAST, KC_MPRV, KC_MNXT, KC_MUTE, KC_LT, KC_GT, KC_QUES, KC_TRNS,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-
- [_LOWER] = LAYOUT_preonic_2x2u(
- KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- _______, KC_7, KC_8, KC_9, KC_PMNS, KC_VOLD, KC_VOLU, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_4, KC_5, KC_6, KC_PPLS, KC_PSCR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_QUOT,
- _______, KC_1, KC_2, KC_3, KC_PAST, KC_NO, KC_NO, KC_WHOM, KC_WBAK, KC_WFWD, KC_WSCH, _______,
- _______, KC_0, KC_DOT, KC_ENT, _______, _______, _______, _______, _______, _______),
-
- [_ADJUST_ORTHO] = LAYOUT_preonic_2x2u(
- KC_ESC, AU_ON, AU_OFF, CK_TOGG, CK_UP, CK_DOWN, CK_RST, MU_ON, MU_OFF, MU_TOGG, MU_NEXT, KC_DEL,
- _______, NK_ON, NK_OFF, EE_CLR, QK_BOOT, KC_MSTP, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_BTN2, KC_INS,
- _______, GE_SWAP, GE_NORM, DB_TOGG, AG_SWAP, AG_NORM, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_BTN1, _______,
- _______, KC_LYRC, KC_FIRST, KC_CAPS, KC_NO, KC_MPRV, KC_MNXT, KC_MUTE, KC_ACL0, KC_ACL1, KC_ACL2, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
-};
-
-#endif
diff --git a/keyboards/preonic/keymaps/badger/readme.md b/keyboards/preonic/keymaps/badger/readme.md
deleted file mode 100644
index 5e16979605..0000000000
--- a/keyboards/preonic/keymaps/badger/readme.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# A QWERTY-centric preonic layout by [BlueTufa](https://github.com/BlueTufa)
-
-## Layouts
-
-### QWERTY
-Standard QWERTY layer, but ESC maps to MOVE layer when held down. Dedicated modifier for Adjust layer and a dedicated OS action key.
-### RAISE layer
-Access to function keys and shifted characters not on Preonic layout. Effort is taken to keep Function keys aligned with corresponding number. Some OS action keys are available in this layer.
-
-### LOWER layer
-Numpad behavior and access to characters not present on Preonic layout.
-
-### MOVE layer
-OS-specific convenience shortcuts. Macros are used to make it easier to adapt these to other operating systems.
-Window move and resize, and option to move to a specific virtual desktop.
-
-### ADJUST layer
-The first row is focused on audio config.
-Take advantage of the mouse movement keys, as well as toggling common keyboard config settings.
-Flash settings are accessed here as well.
-
diff --git a/keyboards/preonic/keymaps/bghull/keymap.c b/keyboards/preonic/keymaps/bghull/keymap.c
index eba6cd4f85..87cb9c6c69 100644
--- a/keyboards/preonic/keymaps/bghull/keymap.c
+++ b/keyboards/preonic/keymaps/bghull/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum preonic_layers {
_QWERTY,
diff --git a/keyboards/preonic/keymaps/bucktooth/keymap.c b/keyboards/preonic/keymaps/bucktooth/keymap.c
index 593083f201..09602a1673 100644
--- a/keyboards/preonic/keymaps/bucktooth/keymap.c
+++ b/keyboards/preonic/keymaps/bucktooth/keymap.c
@@ -69,47 +69,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
)
};
-
-#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_C5, 8},
- {NOTE_E6, 4},
- {NOTE_D6, 16},
- {NOTE_G6, 8}
-};
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-#endif
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/preonic/keymaps/dudeofawesome/config.h b/keyboards/preonic/keymaps/dudeofawesome/config.h
deleted file mode 100644
index 354e9c6021..0000000000
--- a/keyboards/preonic/keymaps/dudeofawesome/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include "../../config.h"
-#include "dudeofawesome.h"
-
-#define TAPPING_TOGGLE 2
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PLANCK_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(WORKMAN_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-#endif
diff --git a/keyboards/preonic/keymaps/dudeofawesome/keymap.c b/keyboards/preonic/keymaps/dudeofawesome/keymap.c
deleted file mode 100644
index 8b09f87b43..0000000000
--- a/keyboards/preonic/keymaps/dudeofawesome/keymap.c
+++ /dev/null
@@ -1,292 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-enum preonic_layers {
- _QWERTY,
- _WORKMAN,
- _COLEMAK,
- _DVORAK,
- _LOWER,
- _RAISE,
- _ADJUST,
- _NUMPAD
-};
-
-enum preonic_keycodes {
- QWERTY = SAFE_RANGE,
- WORKMAN,
- COLEMAK,
- DVORAK,
- LOWER,
- RAISE,
- BACKLIT
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_preonic_1x2uC(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Workman
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | Q | D | R | W | B | J | F | U | P | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | S | H | T | G | Y | N | E | O | I | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | M | C | V | K | L | , | . | / | Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_WORKMAN] = LAYOUT_preonic_1x2uC(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_BSPC,
- KC_ESC, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | R | S | T | D | H | N | E | I | O | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_preonic_1x2uC(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | ' | , | . | P | Y | F | G | C | R | L | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | D | H | T | N | S | / |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Num | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_DVORAK] = LAYOUT_preonic_1x2uC(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, RSFT_T(KC_ENT),
- TT(_NUMPAD), KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Play | Vol- | Vol+ | Next |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_preonic_1x2uC(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MNXT
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Play | Vol- | Vol+ | Next |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_preonic_1x2uC(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MNXT
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Reset| | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |CPSLCK| | |Aud on|AudOff|AGnorm|AGswap|Qwerty|Workmn|Dvorak|Colemk| |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_preonic_1x2uC(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
- KC_CAPS, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, WORKMAN, DVORAK, COLEMAK, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Numpad
- * ,-----------------------------------------------------------------------------------.
- * | | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | / | * | - | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | ✗ | Home | Up | End | PgUp | ✗ | 7 | 8 | 9 | + | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | ✗ | Left | Down | Right| PgDn | ✗ | 4 | 5 | 6 | + | ✗ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | / | * | - | + | Enter| ✗ | 1 | 2 | 3 | Enter| Enter|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | ✗ | | 0 | 0 | . | Enter| = |
- * `-----------------------------------------------------------------------------------'
- */
-[_NUMPAD] = LAYOUT_preonic_1x2uC(
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_PSLS, KC_PAST, KC_PMNS, _______,
- _______, KC_NO, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_NO, KC_P7, KC_P8, KC_P9, KC_PPLS, _______,
- _______, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_NO,
- _______, KC_PSLS, KC_PAST, KC_PMNS, KC_PPLS, KC_PENT, KC_NO, KC_P1, KC_P2, KC_P3, KC_PENT, KC_PENT,
- _______, _______, _______, _______, KC_NO, _______, KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_PEQL
-)
-
-
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- case WORKMAN:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_WORKMAN);
- }
- return false;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- #ifdef __AVR__
- writePinLow(E6);
- #endif
- } else {
- unregister_code(KC_RSFT);
- #ifdef __AVR__
- writePinHigh(E6);
- #endif
- }
- return false;
- }
- return true;
-};
-
-bool numpadActive = false;
-
-float tone_numpad_on[][2] = SONG(NUMPAD_ON_SOUND);
-
-void matrix_scan_user (void) {
- uint8_t layer = get_highest_layer(layer_state);
-
- switch (layer) {
- case _NUMPAD:
- if (!numpadActive) {
- numpadActive = true;
- PLAY_SONG(tone_numpad_on);
- }
- break;
- default:
- if (numpadActive) {
- numpadActive = false;
- }
- }
-};
diff --git a/keyboards/preonic/keymaps/dudeofawesome/readme.md b/keyboards/preonic/keymaps/dudeofawesome/readme.md
deleted file mode 100644
index a5d89fc828..0000000000
--- a/keyboards/preonic/keymaps/dudeofawesome/readme.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# DudeOfAwesome's Preonic layout
-
-![Preonic Layout](https://i.imgur.com/EC42Pnw.png)
-
-## Features
-
-- Base Layers
- - QWERTY
- - Workman
- - Dvorak
- - Colemak
-- Numpad layer
- ![numpad layer](https://i.imgur.com/IH8sWmQ.png)
-- Audio
-
-## Building and flashing
-
-1. Put your board in DFU mode with either the button on the bottom, or with a software key in your current firmware
-1. Flash:
- ```bash
- $ make preonic/rev2:dudeofawesome:dfu
- ```
diff --git a/keyboards/preonic/keymaps/dudeofawesome/rules.mk b/keyboards/preonic/keymaps/dudeofawesome/rules.mk
deleted file mode 100644
index 607192459a..0000000000
--- a/keyboards/preonic/keymaps/dudeofawesome/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = yes # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
diff --git a/keyboards/preonic/keymaps/jacwib/keymap.c b/keyboards/preonic/keymaps/jacwib/keymap.c
index 9de460c2a4..694c44b3c7 100644
--- a/keyboards/preonic/keymaps/jacwib/keymap.c
+++ b/keyboards/preonic/keymaps/jacwib/keymap.c
@@ -174,19 +174,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
-#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_D5, 8},
- {NOTE_E6, 8},
- {NOTE_D6, 8},
- {NOTE_E5, 8}
-};
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
-#endif
-
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
@@ -249,36 +236,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
};
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/preonic/keymaps/kuatsure/config.h b/keyboards/preonic/keymaps/kuatsure/config.h
deleted file mode 100644
index e5b55d131d..0000000000
--- a/keyboards/preonic/keymaps/kuatsure/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PREONIC_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define GAME_SOUND VICTORY_FANFARE_SHORT
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(GAME_SOUND) \
- }
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-#endif
diff --git a/keyboards/preonic/keymaps/kuatsure/keymap.c b/keyboards/preonic/keymaps/kuatsure/keymap.c
deleted file mode 100644
index 86795cba03..0000000000
--- a/keyboards/preonic/keymaps/kuatsure/keymap.c
+++ /dev/null
@@ -1,190 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "kuatsure.h"
-
-#define LAYOUT_preonic_grid_wrapper(...) LAYOUT_preonic_grid(__VA_ARGS__)
-
-enum preonic_layers {
- _QWERTY,
- _GAME,
- _LOWER,
- _RAISE,
- _ADJUST,
-};
-
-enum preonic_keycodes {
- QWERTY = USER_SAFE_RANGE,
- GAME,
- LOWER,
- RAISE,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab/M| Q | W | E | R | T | Y | U | I | O | P | \ |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc/C| A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |Leader| Game | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_preonic_grid_wrapper(
- KC_GRV, _________________NUMBER_L1_________________, _________________NUMBER_R1_________________, KC_BSPC,
- KT_MTAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSLS,
- KT_CESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, KC_QUOT,
- KC_LSFT, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_ENT,
- QK_LEAD, GAME, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Game
- *
- * Mostly transparent, but wanted to disable gui key.
- * Also give a key to get back to qwerty layout.
- *
- * ,-----------------------------------------------------------------------------------.
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | |Qwerty| | Spc | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_GAME] = LAYOUT_preonic_grid_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, QWERTY, _______, KC_SPC, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | E`~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | Up | | ` | < | { | } | _ | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Del | Left | Down | Right| ~ | = | ( | ) | + | : | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | Vol- | Prev | Play | Next | Vol+ | - | [ | ] | > | ? | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Mute | | | | | | Home | PgDn | PgUp | End |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_preonic_grid_wrapper(
- QK_GESC, _________________SYMBOL_L1_________________, _________________SYMBOL_R1_________________, _______,
- _______, _______, _______, KC_UP, _______, KC_GRV, _______, ____CRBRACES____, KC_UNDS, _______, KC_PIPE,
- _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TILD, KC_EQL, _____PARENS_____, KC_PLUS, KC_COLN, KC_DQT ,
- _______, KC_VOLD, KC_MRWD, KC_MPLY, KC_MFFD, KC_VOLU, KC_MINS, ___SQBRACKETS___, _______, KC_QUES, _______,
- _______, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F9 | F10 | F11 | F12 | | * | 7 | 8 | 9 | 0 | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | F5 | F6 | F7 | F8 | | = | 4 | 5 | 6 | + | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F1 | F2 | F3 | F4 | | - | 1 | 2 | 3 | / | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | 0 | 0 | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_preonic_grid_wrapper(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, ____________FUNCTION_3____________, _______, KC_ASTR, KC_7, KC_8, KC_9, KC_0, _______,
- _______, ____________FUNCTION_2____________, _______, KC_EQL, KC_4, KC_5, KC_6, KC_PLUS, _______,
- _______, ____________FUNCTION_1____________, _______, KC_MINS, KC_1, KC_2, KC_3, KC_SLASH, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | MAKE | FLSH | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Boot | Debug| | |Aud on|AudOff| | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | VRSN | | |MusMod|Mus on|MusOff| | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | |Qwerty| Game | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_preonic_grid_wrapper(
- ____________FUNCTION_1____________, ____________FUNCTION_2____________, ____________FUNCTION_3____________,
- _______, KB_MAKE, KB_FLSH, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
- _______, QK_BOOT, DB_TOGG, _______, _______, AU_ON, AU_OFF, _______, _______, _______, _______, _______,
- _______, KB_VRSN, _______, _______, MU_NEXT, MU_ON, MU_OFF, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, QWERTY, GAME, _______, _______
-),
-
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
-
- case GAME:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_GAME);
- }
- return false;
- break;
-
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
-
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
-
- }
- return true;
-};
diff --git a/keyboards/preonic/keymaps/kuatsure/readme.md b/keyboards/preonic/keymaps/kuatsure/readme.md
deleted file mode 100644
index 64cf5ae28e..0000000000
--- a/keyboards/preonic/keymaps/kuatsure/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The kuatsure Preonic layout - largely based on the Preonic's & Keyboard Paradise V60's layout
diff --git a/keyboards/preonic/keymaps/kuatsure/rules.mk b/keyboards/preonic/keymaps/kuatsure/rules.mk
deleted file mode 100644
index 9369f99a9e..0000000000
--- a/keyboards/preonic/keymaps/kuatsure/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-BACKLIGHT_ENABLE = no
-LEADER_ENABLE = yes
diff --git a/keyboards/preonic/keymaps/mguterl/config.h b/keyboards/preonic/keymaps/mguterl/config.h
deleted file mode 100644
index 37858350a8..0000000000
--- a/keyboards/preonic/keymaps/mguterl/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#pragma once
-
-#ifdef AUDIO_ENABLE
- #define STARTUP_SONG SONG(PREONIC_SOUND)
- // #define STARTUP_SONG SONG(NO_SOUND)
-
- #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
- SONG(COLEMAK_SOUND), \
- SONG(DVORAK_SOUND) \
- }
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
diff --git a/keyboards/preonic/keymaps/mguterl/keymap.c b/keyboards/preonic/keymaps/mguterl/keymap.c
deleted file mode 100644
index ecf65b0497..0000000000
--- a/keyboards/preonic/keymaps/mguterl/keymap.c
+++ /dev/null
@@ -1,325 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "muse.h"
-#include "mguterl.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |HypTab| Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |EscCtl| A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | GESC | Ctrl | Alt | GUI |Lower |SpcUtl|SpcUtl|Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- ESC_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_ENT,
- QK_GESC, KC_LCTL, KC_LALT, KC_LGUI, LOWER, SPC_UTL, SPC_UTL, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/*
- * Gaming is very similar to Qwerty. Certain features from Qwerty are disable
- * for better gaming experience.
- */
-[_GAMING] = LAYOUT_preonic_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_TAB, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_ESC, _______, _______, _______, _______, KC_SPC, KC_SPC, _______, _______, _______, _______, _______
-),
-
-/*
- * Util is accessed by holding Space. The Util layer contains vimkeys and
- * shortcuts that I find myself needing often.
- */
-[_UTIL] = LAYOUT_preonic_grid(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, GUI_1, GUI_2, GUI_3, GUI_4, GUI_5, GUI_6, GUI_7, GUI_8, GUI_9, GUI_0, _______,
- _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, GO_BACK, GO_FWD, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Colemak
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | R | S | T | D | H | N | E | I | O | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_COLEMAK] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL,
- KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Dvorak
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | " | , | . | P | Y | F | G | C | R | L | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Esc | A | O | E | U | I | D | H | T | N | S | / |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_DVORAK] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_DEL,
- KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
- KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT,
- BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | - | = | [ | ] | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_preonic_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | |Pg Up |Pg Dn | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, _______, _______, _______,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |ToGame| Reset| | | | | | | | | | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_preonic_grid(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- TG_GAME, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
- _______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______,
- _______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- break;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- return false;
- break;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
- #ifdef BACKLIGHT_ENABLE
- backlight_step();
- #endif
- #ifdef __AVR__
- writePinLow(E6);
- #endif
- } else {
- unregister_code(KC_RSFT);
- #ifdef __AVR__
- writePinHigh(E6);
- #endif
- }
- return false;
- break;
- }
- return true;
-};
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_DOWN);
- #else
- tap_code(KC_PGDN);
- #endif
- } else {
- #ifdef MOUSEKEY_ENABLE
- tap_code(KC_MS_WH_UP);
- #else
- tap_code(KC_PGUP);
- #endif
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0:
- if (active) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- break;
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
- return true;
-}
-
-
-void matrix_scan_user(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- } else {
- if (muse_counter) {
- stop_all_notes();
- muse_counter = 0;
- }
- }
-#endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/preonic/keymaps/mguterl/readme.md b/keyboards/preonic/keymaps/mguterl/readme.md
deleted file mode 100644
index f909976011..0000000000
--- a/keyboards/preonic/keymaps/mguterl/readme.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Michael Guterl's Preonic Layout
-
-I have a very similar [keymap](/keyboards/planck/keymaps/mguterl) for my
-Planck.
-
-Check out my [userspace](/users/mguterl) for the custom keycodes that are used
-in keymap.c.
-
-At a very high level I use 4 layers:
-
-* Qwerty - Letters
-* Util - Vimkeys for navigation and other convenient things
-* Raise - Numbers and F keys
-* Lower - Symbols
-
-```sh
-make preonic/rev3:mguterl:flash
-```
diff --git a/keyboards/preonic/keymaps/mguterl/rules.mk b/keyboards/preonic/keymaps/mguterl/rules.mk
deleted file mode 100644
index dcf16bef39..0000000000
--- a/keyboards/preonic/keymaps/mguterl/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-SRC += muse.c
diff --git a/keyboards/preonic/keymaps/mverteuil/config.h b/keyboards/preonic/keymaps/mverteuil/config.h
deleted file mode 100644
index 1c7bae0183..0000000000
--- a/keyboards/preonic/keymaps/mverteuil/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifdef AUDIO_ENABLE
-# if __has_include("copyright.h")
-# include "copyright.h"
-# endif
-
-# define AUDIO_CLICKY_DELAY_DURATION 0
-# define AUDIO_CLICKY_FREQ_DEFAULT 100.0f
-# define AUDIO_CLICKY_FREQ_MIN 61.0f
-# define AUDIO_CLICKY_FREQ_RANDOMNESS 0.2f
-# define DAC_SAMPLE_MAX 7000U
-# define STARTUP_SONG SONG(WORKMAN_SOUND)
-# define GOODBYE_SONG SONG(COIN_SOUND)
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
diff --git a/keyboards/preonic/keymaps/mverteuil/keymap.c b/keyboards/preonic/keymaps/mverteuil/keymap.c
deleted file mode 100644
index e81f38362a..0000000000
--- a/keyboards/preonic/keymaps/mverteuil/keymap.c
+++ /dev/null
@@ -1,510 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert, 2019 Matthew de Verteuil
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "muse.h"
-#include "mverteuil.h"
-
-/* TapDance Aliases */
-#define TD_LBRK TD(TD_BRACKETS_LEFT)
-#define TD_RBRK TD(TD_BRACKETS_RIGHT)
-#define TD_CLES TD(TD_CONTROL_ESCAPE)
-#define TD_NPFR TD(TD_NUMPAD_FUNCTIONROW)
-#define TD_PLEQ TD(TD_PLUS_EQUALS)
-#define TD_SCOL TD(TD_SEMICOLON_COLON)
-#define TD_SLQU TD(TD_SLASH_QUESTION)
-#define TD_SQDQ TD(TD_QUOTE_DOUBLEQUOTE)
-#define TD_USMI TD(TD_UNDERSCORE_MINUS)
-
-/* Sentinel value for invalid tap dance exit */
-#define TAP_DANCE_NO_MATCH 64
-
-enum preonic_layers {
- _QWERTY,
- _FUNCTIONROW,
- _NUMPAD,
- _LOWER,
- _RAISE,
- _ADJUST,
-};
-
-enum preonic_keycodes {
- QWERTY = SAFE_RANGE,
- NUMPAD,
- LOWER,
- RAISE,
- BACKLIT,
-};
-
-enum tapdance_keycodes {
- TD_BRACKETS_LEFT,
- TD_BRACKETS_RIGHT,
- TD_CONTROL_ESCAPE,
- TD_NUMPAD_FUNCTIONROW,
- TD_PLUS_EQUALS,
- TD_QUOTE_DOUBLEQUOTE,
- TD_SEMICOLON_COLON,
- TD_SLASH_QUESTION,
- TD_UNDERSCORE_MINUS,
-};
-
-typedef enum {
- SINGLE_TAP,
- SINGLE_HOLD,
- DOUBLE_TAP,
- DOUBLE_HOLD,
- TRIPLE_TAP,
- TRIPLE_HOLD,
-} t_tap_state;
-
-typedef struct {
- t_tap_state left_brackets;
- t_tap_state numpad_funcrow;
- t_tap_state right_brackets;
-} t_tap;
-
-t_tap_state get_tapdance_state(tap_dance_state_t *state);
-
-void td_numpad_funcrow_finished(tap_dance_state_t *state, void *user_data);
-void td_numpad_funcrow_reset(tap_dance_state_t *state, void *user_data);
-void td_brackets_left_finished(tap_dance_state_t *state, void *user_data);
-void td_brackets_left_reset(tap_dance_state_t *state, void *user_data);
-void td_brackets_right_finished(tap_dance_state_t *state, void *user_data);
-void td_brackets_right_reset(tap_dance_state_t *state, void *user_data);
-
-/* Tap Dance Definitions */
-tap_dance_action_t tap_dance_actions[] = {
- /* Tap once for left parenthesis, twice for left bracket, thrice for left brace */
- [TD_BRACKETS_LEFT] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_brackets_left_finished, td_brackets_left_reset),
- /* Tap once for right parenthesis, twice for right bracket, thrice for right brace */
- [TD_BRACKETS_RIGHT] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_brackets_right_finished, td_brackets_right_reset),
- /* Tap once for control, twice for escape */
- [TD_CONTROL_ESCAPE] = ACTION_TAP_DANCE_DOUBLE(KC_LCTL, KC_ESCAPE),
- /* Tap once for plus, twice for equals */
- [TD_PLUS_EQUALS] = ACTION_TAP_DANCE_DOUBLE(KC_PLUS, KC_EQUAL),
- /* Hold for numpad, tap twice to toggle function row, double hold for temporary function row */
- [TD_NUMPAD_FUNCTIONROW] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_numpad_funcrow_finished, td_numpad_funcrow_reset),
- /* Tap once for single quote, twice for double quote */
- [TD_QUOTE_DOUBLEQUOTE] = ACTION_TAP_DANCE_DOUBLE(KC_QUOTE, KC_DOUBLE_QUOTE),
- /* Tap once for semicolon, twice for colon */
- [TD_SEMICOLON_COLON] = ACTION_TAP_DANCE_DOUBLE(KC_SEMICOLON, KC_COLON),
- /* Tap once for slash, twice for question mark */
- [TD_SLASH_QUESTION] = ACTION_TAP_DANCE_DOUBLE(KC_SLASH, KC_QUESTION),
- /* Tap once for underscore, twice for minus */
- [TD_UNDERSCORE_MINUS] = ACTION_TAP_DANCE_DOUBLE(KC_UNDERSCORE, KC_MINUS),
-};
-
-/* clang-format off */
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | ` | ! | @ | # | $ | % | ^ | & | * | _ - | + = | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | ' " |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |CtlEsc| A | S | D | F | G | H | J | K | L | ; : | Enter|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | Up | GUI |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |NP FRw| Ctrl | Alt | GUI |Lower | Space |Raise | / ? | Left | Down |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_preonic_1x2uC (
- KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, TD_USMI, TD_PLEQ, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD_SQDQ,
- TD_CLES, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD_SCOL, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RGUI,
- TD_NPFR, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, TD_SLQU, KC_LEFT, KC_DOWN, KC_RGHT
-),
-
-/* Function Row
- * ,-----------------------------------------------------------------------------------.
- * | F12 | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_FUNCTIONROW] = LAYOUT_preonic_1x2uC (
- KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Numpad
- * ,------+------+------+------+------+------|------+------+------+------+------+------.
- * | | | | | | | | Tab | / | * |Bksp | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | 7 | 8 | 9 | - | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | 4 | 5 | 6 | + | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | 1 | 2 | 3 |Enter | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | 0 | . |Enter | |
- * `-----------------------------------------------------------------------------------'
- */
-[_NUMPAD] = LAYOUT_preonic_1x2uC (
- _______, _______, _______, _______, _______, _______, _______, KC_TAB, KC_SLSH, KC_PAST, KC_BSPC, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_0, KC_PDOT, KC_PENT, _______
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | Vol+ | | | | | | | | Play | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | Prev | Vol- | Next | | | ? | _ | + | | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | Mute | | | PgUp | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |RGBmod| | | | | | | \ | Home | PgDn | End |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_preonic_1x2uC (
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, KC_QUES, KC_UNDS, KC_PLUS, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_BSLS, KC_HOME, KC_PGDN, KC_END
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ~ | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | | | | | | | | | | [ { (| ) } ]| |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_preonic_1x2uC (
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, TD_LBRK, TD_RBRK, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_PIPE, _______, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * |AudTog|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX| Debug| Reset|
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |ClkTog|ClkFq-|ClkFq+|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * |MusTog|Voice- Voice+|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|XXXXXX|AGnorm|AGswap|
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * |MidTog|Rplain|Rbreat|Rrainb|Rswirl|Rsnake|Rkridr|Rxmas |Rgrad |RGBtst|XXXXXX|Shift |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * |RGBmod|RGBhue|RBGsat|RGBval| | | |XXXXXX|XXXXXX|XXXXXX|XXXXXX|
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_preonic_1x2uC (
- AU_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, RGB_HUD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DB_TOGG, QK_BOOT,
- CK_TOGG, CK_DOWN, CK_UP, XXXXXXX, RGB_SAI, RGB_SAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- MU_TOGG, AU_PREV, AU_NEXT, XXXXXXX, RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, AG_NORM, AG_SWAP,
- MI_TOGG, RGB_M_P, RGB_M_B, RGB_M_R,RGB_M_SW,RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_SPI, KC_LSFT,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, RGB_TOG, _______, XXXXXXX,RGB_RMOD, RGB_SPD, RGB_MOD
-)
-
-};
-/* clang-format on */
-
-float s_audio_on[][2] = AUDIO_ON_SONG;
-float s_layer_lower[][2] = LAYER_LOWER_SONG;
-float s_layer_raise[][2] = LAYER_RAISE_SONG;
-
-void audio_on_user(void) { PLAY_SONG(s_audio_on); };
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- PLAY_SONG(s_layer_lower);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- PLAY_SONG(s_layer_raise);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
-#ifdef BACKLIGHT_ENABLE
- backlight_step();
-#endif
-#ifdef __AVR__
- writePinLow(E6);
-#endif
- } else {
- unregister_code(KC_RSFT);
-#ifdef __AVR__
- writePinHigh(E6);
-#endif
- }
- return false;
- break;
- }
- return true;
-};
-
-/* Global TapDance State */
-static t_tap tap_state = {
- .left_brackets = 0,
- .numpad_funcrow = 0,
- .right_brackets = 0,
-};
-
-float s_functionrow_on[][2] = LAYER_FUNCROW_ON_SONG;
-float s_functionrow_off[][2] = LAYER_FUNCROW_OFF_SONG;
-float s_numpad_toggle[][2] = LAYER_NMPAD_SONG;
-
-t_tap_state get_tapdance_state(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return SINGLE_TAP;
- } else {
- return SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- if (state->interrupted || !state->pressed) {
- return DOUBLE_TAP;
- } else {
- return DOUBLE_HOLD;
- }
- } else if (state->count == 3) {
- if (state->interrupted || !state->pressed) {
- return TRIPLE_TAP;
- } else {
- return TRIPLE_HOLD;
- }
- } else
- return TAP_DANCE_NO_MATCH;
-}
-
-void td_numpad_funcrow_finished(tap_dance_state_t *state, void *user_data) {
- tap_state.numpad_funcrow = get_tapdance_state(state);
- switch (tap_state.numpad_funcrow) {
- case SINGLE_TAP ... SINGLE_HOLD:
- layer_on(_NUMPAD);
- PLAY_SONG(s_numpad_toggle);
- break;
- case DOUBLE_HOLD:
- layer_on(_FUNCTIONROW);
- break;
- case DOUBLE_TAP:
- if (layer_state_is(_FUNCTIONROW)) {
- layer_off(_FUNCTIONROW);
- PLAY_SONG(s_functionrow_off);
- } else {
- layer_on(_FUNCTIONROW);
- PLAY_SONG(s_functionrow_on);
- }
- break;
- default:
- break;
- }
-}
-
-void td_numpad_funcrow_reset(tap_dance_state_t *state, void *user_data) {
- switch (tap_state.numpad_funcrow) {
- case SINGLE_HOLD:
- layer_off(_NUMPAD);
- break;
- case DOUBLE_HOLD:
- layer_off(_FUNCTIONROW);
- break;
- default:
- break;
- }
-}
-
-void td_brackets_left_finished(tap_dance_state_t *state, void *user_data) {
- tap_state.left_brackets = get_tapdance_state(state);
- switch (tap_state.left_brackets) {
- case SINGLE_TAP:
- register_code16(KC_LEFT_PAREN);
- break;
- case DOUBLE_TAP:
- register_code(KC_LEFT_BRACKET);
- break;
- case TRIPLE_TAP:
- register_code16(KC_LEFT_CURLY_BRACE);
- break;
- default:
- break;
- }
-}
-
-void td_brackets_left_reset(tap_dance_state_t *state, void *user_data) {
- switch (tap_state.left_brackets) {
- case SINGLE_TAP:
- unregister_code16(KC_LEFT_PAREN);
- break;
- case DOUBLE_TAP:
- unregister_code(KC_LEFT_BRACKET);
- break;
- case TRIPLE_TAP:
- unregister_code16(KC_LEFT_CURLY_BRACE);
- break;
- default:
- break;
- }
- tap_state.left_brackets = 0;
-}
-
-void td_brackets_right_finished(tap_dance_state_t *state, void *user_data) {
- tap_state.right_brackets = get_tapdance_state(state);
- switch (tap_state.right_brackets) {
- case SINGLE_TAP:
- register_code16(KC_RIGHT_PAREN);
- break;
- case DOUBLE_TAP:
- register_code(KC_RIGHT_BRACKET);
- break;
- case TRIPLE_TAP:
- register_code16(KC_RIGHT_CURLY_BRACE);
- break;
- default:
- break;
- }
-}
-
-void td_brackets_right_reset(tap_dance_state_t *state, void *user_data) {
- switch (tap_state.right_brackets) {
- case SINGLE_TAP:
- unregister_code16(KC_RIGHT_PAREN);
- break;
- case DOUBLE_TAP:
- unregister_code(KC_RIGHT_BRACKET);
- break;
- case TRIPLE_TAP:
- unregister_code16(KC_RIGHT_CURLY_BRACE);
- break;
- default:
- break;
- }
- tap_state.right_brackets = 0;
-}
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo += 1;
- } else {
- muse_tempo -= 1;
- }
- }
- } else {
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0:
- if (active) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- break;
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
- return true;
-}
-
-void matrix_scan_user(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- } else {
- if (muse_counter) {
- stop_all_notes();
- muse_counter = 0;
- }
- }
-#endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/preonic/keymaps/mverteuil/readme.md b/keyboards/preonic/keymaps/mverteuil/readme.md
deleted file mode 100644
index b21df3f8fa..0000000000
--- a/keyboards/preonic/keymaps/mverteuil/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# mverteuil does olkb preonic
-## 1x2u: One 2u spacebar on bottom row
diff --git a/keyboards/preonic/keymaps/mverteuil/rules.mk b/keyboards/preonic/keymaps/mverteuil/rules.mk
deleted file mode 100644
index a29a3cad79..0000000000
--- a/keyboards/preonic/keymaps/mverteuil/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-SRC += muse.c
-
-AUDIO_ENABLE = yes
-MIDI_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/preonic/keymaps/mverteuil_2x2u/config.h b/keyboards/preonic/keymaps/mverteuil_2x2u/config.h
deleted file mode 100644
index 1c7bae0183..0000000000
--- a/keyboards/preonic/keymaps/mverteuil_2x2u/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#ifdef AUDIO_ENABLE
-# if __has_include("copyright.h")
-# include "copyright.h"
-# endif
-
-# define AUDIO_CLICKY_DELAY_DURATION 0
-# define AUDIO_CLICKY_FREQ_DEFAULT 100.0f
-# define AUDIO_CLICKY_FREQ_MIN 61.0f
-# define AUDIO_CLICKY_FREQ_RANDOMNESS 0.2f
-# define DAC_SAMPLE_MAX 7000U
-# define STARTUP_SONG SONG(WORKMAN_SOUND)
-# define GOODBYE_SONG SONG(COIN_SOUND)
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
diff --git a/keyboards/preonic/keymaps/mverteuil_2x2u/keymap.c b/keyboards/preonic/keymaps/mverteuil_2x2u/keymap.c
deleted file mode 100644
index cab5cdcb05..0000000000
--- a/keyboards/preonic/keymaps/mverteuil_2x2u/keymap.c
+++ /dev/null
@@ -1,415 +0,0 @@
-/* Copyright 2015-2017 Jack Humbert, 2019 Matthew de Verteuil
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "muse.h"
-#include "mverteuil.h"
-
-/* Layer Aliases */
-#define LT_LWSP LT(_LOWER, KC_SPACE)
-#define LT_RSRT LT(_RAISE, KC_ENTER)
-#define MO_NUMS MO(_NUMPAD)
-
-/* Mod-Tap Aliases */
-#define MT_CESC CTL_T(KC_ESCAPE)
-
-/* TapDance Aliases */
-#define TD_LBRK TD(TD_BRACKETS_LEFT)
-#define TD_RBRK TD(TD_BRACKETS_RIGHT)
-#define TD_PLEQ TD(TD_PLUS_EQUALS)
-#define TD_SCOL TD(TD_SEMICOLON_COLON)
-#define TD_SLQU TD(TD_SLASH_QUESTION)
-#define TD_SQDQ TD(TD_QUOTE_DOUBLEQUOTE)
-#define TD_USMI TD(TD_UNDERSCORE_MINUS)
-
-/* Sentinel value for invalid tap dance exit */
-#define TAP_DANCE_NO_MATCH 64
-
-enum preonic_layers {
- _QWERTY,
- _NUMPAD,
- _LOWER,
- _RAISE,
- _ADJUST,
-};
-
-enum preonic_keycodes {
- QWERTY = SAFE_RANGE,
- NUMPAD,
- LOWER,
- RAISE,
- BACKLIT,
-};
-
-enum tapdance_keycodes {
- TD_BRACKETS_LEFT,
- TD_BRACKETS_RIGHT,
- TD_CONTROL_ESCAPE,
- TD_PLUS_EQUALS,
- TD_QUOTE_DOUBLEQUOTE,
- TD_SEMICOLON_COLON,
- TD_SLASH_QUESTION,
- TD_UNDERSCORE_MINUS,
-};
-
-typedef enum {
- SINGLE_TAP,
- SINGLE_HOLD,
- DOUBLE_TAP,
- DOUBLE_HOLD,
- TRIPLE_TAP,
- TRIPLE_HOLD,
-} t_tap_state;
-
-typedef struct {
- t_tap_state left_brackets;
- t_tap_state right_brackets;
-} t_tap;
-
-t_tap_state get_tapdance_state(tap_dance_state_t *state);
-
-void td_brackets_left_finished(tap_dance_state_t *state, void *user_data);
-void td_brackets_left_reset(tap_dance_state_t *state, void *user_data);
-void td_brackets_right_finished(tap_dance_state_t *state, void *user_data);
-void td_brackets_right_reset(tap_dance_state_t *state, void *user_data);
-
-/* Tap Dance Definitions */
-tap_dance_action_t tap_dance_actions[] = {
- /* Tap once for left parenthesis, twice for left bracket, thrice for left brace */
- [TD_BRACKETS_LEFT] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_brackets_left_finished, td_brackets_left_reset),
- /* Tap once for right parenthesis, twice for right bracket, thrice for right brace */
- [TD_BRACKETS_RIGHT] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_brackets_right_finished, td_brackets_right_reset),
- /* Tap once for plus, twice for equals */
- [TD_PLUS_EQUALS] = ACTION_TAP_DANCE_DOUBLE(KC_PLUS, KC_EQUAL),
- /* Tap once for single quote, twice for double quote */
- [TD_QUOTE_DOUBLEQUOTE] = ACTION_TAP_DANCE_DOUBLE(KC_QUOTE, KC_DOUBLE_QUOTE),
- /* Tap once for semicolon, twice for colon */
- [TD_SEMICOLON_COLON] = ACTION_TAP_DANCE_DOUBLE(KC_SEMICOLON, KC_COLON),
- /* Tap once for slash, twice for question mark */
- [TD_SLASH_QUESTION] = ACTION_TAP_DANCE_DOUBLE(KC_SLASH, KC_QUESTION),
- /* Tap once for underscore, twice for minus */
- [TD_UNDERSCORE_MINUS] = ACTION_TAP_DANCE_DOUBLE(KC_UNDERSCORE, KC_MINUS),
-};
-
-/* clang-format off */
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------.
- * | ` | ! | @ | # | $ | % | ^ | & | * | _ - | + = | Bksp |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | ' " |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * |CtrlEsc| A | S | D | F | G | H | J | K | L | ; : | / ? |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | Shift | Z | X | C | V | B | N | M | , | . | ↑ | RShift|
- * |-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------|
- * |NumPad | Ctrl | Alt | GUI | Lower/Space | Raise/Enter | GUI | ← | ↓ | → |
- * `-----------------------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_preonic_2x2u (
- KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, TD_USMI, TD_PLEQ, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD_SQDQ,
- MT_CESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD_SCOL, TD_SLQU,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT,
- MO_NUMS, KC_LCTL, KC_LALT, KC_LGUI, LT_LWSP, LT_RSRT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT
-),
-
-/* Numpad
- * ,-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------.
- * | | | | | | | | Tab | / | * | Bksp | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | 7 | 8 | 9 | - | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | 4 | 5 | 6 | + | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | 1 | 2 | 3 | Enter | |
- * |-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------|
- * | | | | | | | 0 | . | Enter | |
- * `-----------------------------------------------------------------------------------------------'
- */
-[_NUMPAD] = LAYOUT_preonic_2x2u (
- _______, _______, _______, _______, _______, _______, _______, KC_TAB, KC_SLSH, KC_PAST, KC_BSPC, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, _______,
- _______, _______, _______, _______, _______, _______, KC_KP_0, KC_PDOT, KC_PENT, _______
-),
-
-/* Lower
- * ,-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------.
- * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |Delete |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | Vol+ | | | | | | | | MPlay | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | MPrev | Vol- | MNext | | | | | | | | \ |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | Mute | | | PgUp | |
- * |-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------|
- * | | | | | | | | Home | PgDn | End |
- * `-----------------------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_preonic_2x2u (
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
-),
-
-/* Raise
- * ,-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------.
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | | | | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | [ { ( | ) } ] | | | |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | | | | |
- * |-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------|
- * | | | | | | | | | | |
- * `-----------------------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_preonic_2x2u (
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, TD_LBRK, TD_RBRK, _______, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Adjust (Lower + Raise)
- * ,-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------.
- * |AudTog |███████|███████|███████|███████|███████|███████|███████|███████|███████| Debug | Reset |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * |Clicky |ClkFrq-|ClkFrq+|███████|███████|███████|███████|███████|███████|███████|███████|███████|
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | Music |Voice- |Voice+ |███████|███████|███████|███████|███████|███████|███████|AGnorm |AGswap |
- * |-------+-------+-------+-------+-------+-------|-------+-------+-------+-------+-------+-------|
- * | MIDI |R plain|R breat|R rnbow|R swirl|R snake|R knigt|R xmas |R grade|RGBtest|███████| Shift |
- * |-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------|
- * |RGBmode|RGBhue+|RGBsat+|RGBval+| | |███████|███████|███████|███████|
- * `-----------------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_preonic_2x2u (
- AU_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, RGB_HUD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DB_TOGG, QK_BOOT,
- CK_TOGG, CK_DOWN, CK_UP, XXXXXXX, RGB_SAI, RGB_SAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- MU_TOGG, AU_PREV, AU_NEXT, XXXXXXX, RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, AG_NORM, AG_SWAP,
- MI_TOGG, RGB_M_P, RGB_M_B, RGB_M_R,RGB_M_SW,RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_SPI, KC_LSFT,
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX,RGB_RMOD, RGB_SPD, RGB_MOD
-)
-
-};
-/* clang-format on */
-
-float s_audio_on[][2] = AUDIO_ON_SONG;
-float s_layer_lower[][2] = LAYER_LOWER_SONG;
-float s_layer_raise[][2] = LAYER_RAISE_SONG;
-
-void audio_on_user(void) { PLAY_SONG(s_audio_on); };
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- PLAY_SONG(s_layer_lower);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- PLAY_SONG(s_layer_raise);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
-#ifdef BACKLIGHT_ENABLE
- backlight_step();
-#endif
-#ifdef __AVR__
- writePinLow(E6);
-#endif
- } else {
- unregister_code(KC_RSFT);
-#ifdef __AVR__
- writePinHigh(E6);
-#endif
- }
- return false;
- break;
- }
- return true;
-};
-
-/* Global TapDance State */
-static t_tap tap_state = {
- .left_brackets = 0,
- .right_brackets = 0,
-};
-
-float s_numpad_toggle[][2] = LAYER_NMPAD_SONG;
-
-t_tap_state get_tapdance_state(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return SINGLE_TAP;
- } else {
- return SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- if (state->interrupted || !state->pressed) {
- return DOUBLE_TAP;
- } else {
- return DOUBLE_HOLD;
- }
- } else if (state->count == 3) {
- if (state->interrupted || !state->pressed) {
- return TRIPLE_TAP;
- } else {
- return TRIPLE_HOLD;
- }
- } else
- return TAP_DANCE_NO_MATCH;
-}
-
-void td_brackets_left_finished(tap_dance_state_t *state, void *user_data) {
- tap_state.left_brackets = get_tapdance_state(state);
- switch (tap_state.left_brackets) {
- case SINGLE_TAP:
- register_code16(KC_LEFT_PAREN);
- break;
- case DOUBLE_TAP:
- register_code(KC_LEFT_BRACKET);
- break;
- case TRIPLE_TAP:
- register_code16(KC_LEFT_CURLY_BRACE);
- break;
- default:
- break;
- }
-}
-
-void td_brackets_left_reset(tap_dance_state_t *state, void *user_data) {
- switch (tap_state.left_brackets) {
- case SINGLE_TAP:
- unregister_code16(KC_LEFT_PAREN);
- break;
- case DOUBLE_TAP:
- unregister_code(KC_LEFT_BRACKET);
- break;
- case TRIPLE_TAP:
- unregister_code16(KC_LEFT_CURLY_BRACE);
- break;
- default:
- break;
- }
- tap_state.left_brackets = 0;
-}
-
-void td_brackets_right_finished(tap_dance_state_t *state, void *user_data) {
- tap_state.right_brackets = get_tapdance_state(state);
- switch (tap_state.right_brackets) {
- case SINGLE_TAP:
- register_code16(KC_RIGHT_PAREN);
- break;
- case DOUBLE_TAP:
- register_code(KC_RIGHT_BRACKET);
- break;
- case TRIPLE_TAP:
- register_code16(KC_RIGHT_CURLY_BRACE);
- break;
- default:
- break;
- }
-}
-
-void td_brackets_right_reset(tap_dance_state_t *state, void *user_data) {
- switch (tap_state.right_brackets) {
- case SINGLE_TAP:
- unregister_code16(KC_RIGHT_PAREN);
- break;
- case DOUBLE_TAP:
- unregister_code(KC_RIGHT_BRACKET);
- break;
- case TRIPLE_TAP:
- unregister_code16(KC_RIGHT_CURLY_BRACE);
- break;
- default:
- break;
- }
- tap_state.right_brackets = 0;
-}
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo += 1;
- } else {
- muse_tempo -= 1;
- }
- }
- } else {
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0:
- if (active) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- break;
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
- return true;
-}
diff --git a/keyboards/preonic/keymaps/mverteuil_2x2u/rules.mk b/keyboards/preonic/keymaps/mverteuil_2x2u/rules.mk
deleted file mode 100644
index 9e55d0aa67..0000000000
--- a/keyboards/preonic/keymaps/mverteuil_2x2u/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-USER_NAME := mverteuil
-SRC += muse.c
-
-AUDIO_ENABLE = yes
-MIDI_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/preonic/keymaps/nikchi/keymap.c b/keyboards/preonic/keymaps/nikchi/keymap.c
index e14f8f0052..50589039b7 100644
--- a/keyboards/preonic/keymaps/nikchi/keymap.c
+++ b/keyboards/preonic/keymaps/nikchi/keymap.c
@@ -111,20 +111,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_B5, 20},
- {NOTE_B6, 8},
- {NOTE_DS6, 20},
- {NOTE_B6, 8}
-};
-
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
@@ -177,36 +166,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
};
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/preonic/keymaps/peterfalken/config.h b/keyboards/preonic/keymaps/peterfalken/config.h
deleted file mode 100644
index 797bd2c78d..0000000000
--- a/keyboards/preonic/keymaps/peterfalken/config.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2015-2021 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(PREONIC_SOUND)
-// #define STARTUP_SONG SONG(NO_SOUND)
-
-# define DEFAULT_LAYER_SONGS \
- { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) }
-#endif
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-// Most tactile encoders have detents every 4 stages
-#define ENCODER_RESOLUTION 4
diff --git a/keyboards/preonic/keymaps/peterfalken/keymap.c b/keyboards/preonic/keymaps/peterfalken/keymap.c
deleted file mode 100644
index 7123ba7669..0000000000
--- a/keyboards/preonic/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,92 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "muse.h"
-#include "peterfalken.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ; | " |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
- _______, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_preonic_grid(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | Pg Up| Pg Dn| ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_preonic_grid(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | RSET | ▽ | M.AP | M.AL | LPAD | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | SLEP |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | CPWD | UN | CU | CO | PA | MV | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_preonic_grid(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- QK_BOOT, _______, CK_M1, KC_MCTL, KC_LPAD, _______, _______, _______, _______, _______, _______, KC_BSPC,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CK_SLP,
- CK_CW, _______, CK_CU, CK_CO, CK_PA, CK_MV, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
diff --git a/keyboards/preonic/keymaps/peterfalken/readme.md b/keyboards/preonic/keymaps/peterfalken/readme.md
deleted file mode 100644
index f64d682a51..0000000000
--- a/keyboards/preonic/keymaps/peterfalken/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Copyright 2023 LEG <ucaboys@gmail.com> @PeterFalken
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/preonic/keymaps/peterfalken/rules.mk b/keyboards/preonic/keymaps/peterfalken/rules.mk
deleted file mode 100644
index a33c6c1ddb..0000000000
--- a/keyboards/preonic/keymaps/peterfalken/rules.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-# Setup keymap QMK features
-# TODO: Check for space optimizations
-AUDIO_ENABLE = yes # Enable Audio Output
-ENCODER_ENABLE = no # Disable encoder
-
-ifeq ($(strip $(AUDIO_ENABLE)), yes)
- SRC += muse.c
-endif
diff --git a/keyboards/preonic/keymaps/rmeli/config.h b/keyboards/preonic/keymaps/rmeli/config.h
deleted file mode 100644
index 6f8b8b6c70..0000000000
--- a/keyboards/preonic/keymaps/rmeli/config.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright 2015-2021 Jack Humbert
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef AUDIO_ENABLE
-# define STARTUP_SONG SONG(PREONIC_SOUND)
-// #define STARTUP_SONG SONG(NO_SOUND)
-
-# define DEFAULT_LAYER_SONGS \
- { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) }
-#endif
-
-#define MUSIC_MASK (keycode != KC_NO)
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-
-#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
diff --git a/keyboards/preonic/keymaps/rmeli/keymap.c b/keyboards/preonic/keymaps/rmeli/keymap.c
deleted file mode 100644
index 0a16dc8bf7..0000000000
--- a/keyboards/preonic/keymaps/rmeli/keymap.c
+++ /dev/null
@@ -1,231 +0,0 @@
-/* Copyright 2015-2021 Jack Humbert
- * Copyright 2022 Rocco Meli <@RMeli>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "muse.h"
-
-#include "rmeli.h"
-
-enum preonic_layers { _QWERTY, _COLEMAK, _LOWER, _RAISE, _ADJUST };
-enum preonic_keycodes { QWERTY = SAFE_RANGE, COLEMAK, LOWER, RAISE, BACKLIT };
-
-#define ____________________BOTTOM_L_x6_____________________ BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC
-#define ____________________BOTTOM_R_x6_____________________ KC_ENT, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-
-/* LAYOUT
- *
- * ,-----------------------------------------------------------.
- * | | | | | | | | | | | | |
- * |----+----+----+----+----+----+----+----+----+----+----+----|
- * | | | | | | | | | | | | |
- * |----+----+----+----+----+----+----+----+----+----+----+----|
- * | | | | | | | | | | | | |
- * |----+----+----+----+----+----+----+----+----+----+----+----|
- * | | | | | | | | | | | | |
- * |----+----+----+----+----+----+----+----+----+----+----+----|
- * | | | | | | | | | | | | |
- * `----+----+----+----+----+----+----+----+----+----+----+----'
- */
-
-// Define wrapper for standard CRKB layout
-#define LAYOUT_wrapper(...) LAYOUT_preonic_grid(__VA_ARGS__)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[_QWERTY] = LAYOUT_wrapper(
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- ___________________QWERTY_L1_x6_____________________, ___________________QWERTY_R1_x6_____________________,
- ___________________QWERTY_L2_x6_____________________, ___________________QWERTY_R2_x6_____________________,
- ___________________QWERTY_L3_x6_____________________, ___________________QWERTY_R3_x6_____________________,
- ____________________BOTTOM_L_x6_____________________, ____________________BOTTOM_R_x6_____________________
-),
-
-[_COLEMAK] = LAYOUT_wrapper(
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- ________________COLEMAK_MOD_DH_L1_x6________________, ________________COLEMAK_MOD_DH_R1_x6________________,
- ________________COLEMAK_MOD_DH_L2_x6________________, ________________COLEMAK_MOD_DH_R2_x6________________,
- ________________COLEMAK_MOD_DH_L3_x6________________, ________________COLEMAK_MOD_DH_R3_x6________________,
- ____________________BOTTOM_L_x6_____________________, ____________________BOTTOM_R_x6_____________________
-),
-
-[_LOWER] = LAYOUT_wrapper(
- ____________________FUNC_LEFT_x6____________________, ____________________FUNC_RIGHT_x6___________________,
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- _______, ______________UNICODE_L2_x5________________, ________________NAV_R2_x5__________________, XXXXXXX,
- _______, ______________UNICODE_L3_x5________________, ________________NAV_R3_x5__________________, _______,
- ______________________BLANK_6x______________________, ______________________BLANK_6x______________________
-),
-
-[_RAISE] = LAYOUT_wrapper(
- ___________________NUMBER_LEFT_x6___________________, ___________________NUMBER_RIGHT_x6__________________,
- ___________________SYMBOL_LEFT_x6___________________, ___________________SYMBOL_RIGHT_x6__________________,
- _______, ____________NAV_VIM_x4____________, XXXXXXX, ____________________SYMBOL_R2_x6____________________,
- _______, _________________NONE_5x___________________, ____________________SYMBOL_R3_x6____________________,
- ______________________BLANK_6x______________________, ______________________BLANK_6x______________________
-),
-
-[_ADJUST] = LAYOUT_wrapper(
- QK_BOOT, _________________NONE_5x___________________, ______________________NONE_6x_______________________,
- XXXXXXX, MU_ON, AU_ON, MI_ON, XXXXXXX, XXXXXXX, _______________CONFIG_R1_x5________________, QWERTY,
- QK_BOOT, MU_NEXT, AU_TOGG, MI_TOGG, XXXXXXX, XXXXXXX, _______________CONFIG_R2_x5________________, XXXXXXX,
- XXXXXXX, MU_OFF, AU_OFF, MI_OFF, XXXXXXX, XXXXXXX, _______________CONFIG_R3_x5________________, COLEMAK,
- ______________________BLANK_6x______________________, ______________________BLANK_6x______________________
-)
-};
-// clang-format on
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- break;
- case LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- break;
- case BACKLIT:
- if (record->event.pressed) {
- register_code(KC_RSFT);
-#ifdef BACKLIGHT_ENABLE
- backlight_step();
-#endif
-#ifdef RGBLIGHT_ENABLE
- rgblight_step();
-#endif
-#ifdef __AVR__
- writePinLow(E6);
-#endif
- } else {
- unregister_code(KC_RSFT);
-#ifdef __AVR__
- writePinHigh(E6);
-#endif
- }
- return false;
- break;
- }
- return true;
-};
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo += 1;
- } else {
- muse_tempo -= 1;
- }
- }
- } else {
- if (clockwise) {
- register_code(KC_PGDN);
- unregister_code(KC_PGDN);
- } else {
- register_code(KC_PGUP);
- unregister_code(KC_PGUP);
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0:
- if (active) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- break;
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- }
- }
- return true;
-}
-
-void matrix_scan_user(void) {
-#ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- } else {
- if (muse_counter) {
- stop_all_notes();
- muse_counter = 0;
- }
- }
-#endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/preonic/keymaps/rmeli/readme.md b/keyboards/preonic/keymaps/rmeli/readme.md
deleted file mode 100644
index e911968dd9..0000000000
--- a/keyboards/preonic/keymaps/rmeli/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# The default Preonic layout - largely based on the Planck's \ No newline at end of file
diff --git a/keyboards/preonic/keymaps/rmeli/rules.mk b/keyboards/preonic/keymaps/rmeli/rules.mk
deleted file mode 100644
index 3903cc1228..0000000000
--- a/keyboards/preonic/keymaps/rmeli/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-TAP_DANCE_ENABLE = yes
-AUTO_SHIFT_ENABLE = no
-
-MAGIC_ENABLE = yes
-
-UNICODEMAP_ENABLE = yes
-
-# Turn off rev3_drop options
-RGBLIGHT_ENABLE = no
-MOUSEKEY_ENABLE = no
-
-SRC += muse.c
diff --git a/keyboards/preonic/keymaps/smt/keymap.c b/keyboards/preonic/keymaps/smt/keymap.c
index 7dd9545261..22f6c39a92 100644
--- a/keyboards/preonic/keymaps/smt/keymap.c
+++ b/keyboards/preonic/keymaps/smt/keymap.c
@@ -158,20 +158,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_B5, 20},
- {NOTE_B6, 8},
- {NOTE_DS6, 20},
- {NOTE_B6, 8}
-};
-
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
@@ -242,36 +231,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
};
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/preonic/keymaps/that_canadian/keymap.c b/keyboards/preonic/keymaps/that_canadian/keymap.c
index 8af796821c..18b2e046e8 100644
--- a/keyboards/preonic/keymaps/that_canadian/keymap.c
+++ b/keyboards/preonic/keymaps/that_canadian/keymap.c
@@ -135,20 +135,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
#ifdef AUDIO_ENABLE
-float tone_startup[][2] = {
- {NOTE_B5, 20},
- {NOTE_B6, 8},
- {NOTE_DS6, 20},
- {NOTE_B6, 8}
-};
-
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
-
-float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
-
-float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
#endif
void persistant_default_layer_set(uint16_t default_layer) {
@@ -201,36 +190,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return true;
};
-
-void matrix_init_user(void) {
- #ifdef AUDIO_ENABLE
- startup_user();
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-
-void startup_user(void)
-{
- _delay_ms(20); // gets rid of tick
- PLAY_SONG(tone_startup);
-}
-
-void shutdown_user(void)
-{
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void)
-{
- music_scale_user();
-}
-
-void music_scale_user(void)
-{
- PLAY_SONG(music_scale);
-}
-
-#endif
diff --git a/keyboards/preonic/keymaps/uqs/keymap.c b/keyboards/preonic/keymaps/uqs/keymap.c
deleted file mode 100644
index 4e3fdec111..0000000000
--- a/keyboards/preonic/keymaps/uqs/keymap.c
+++ /dev/null
@@ -1,117 +0,0 @@
-// Copyright 2022 Ulrich Spörlein (@uqs)
-// SPDX-License-Identifier: GPL-2.0-or-later
-// vi:et sw=4 cc=5,15,25,35,45,55,65:
-
-#include "uqs.h"
-
-/*
- * My custom layout macro that allows for easy diff(1) operations between
- * various keyboards. It probably doesn't make sense to you.
- */
-#define LAYOUT_uqs( \
- k00, k01, k02, k03, k04, k05, \
- k10, k11, k12, k13, k14, k15, \
- k20, k21, k22, k23, k24, k25, \
- k30, k31, k32, k33, k34, k35, \
- k43, k44, \
- k40, k41, k42, \
- k06, k07, k08, k09, k0a, k0b, \
- k16, k17, k18, k19, k1a, k1b, \
- k26, k27, k28, k29, k2a, k2b, \
- k36, k37, k38, k39, k3a, k3b, \
- k46, k48, \
- k49, k4a, k4b \
-) \
-LAYOUT_preonic_2x2u( \
- 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, \
- k40, k41, k42, k43, k44, k46, k48, k49, k4a, k4b \
-)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_QWER] = LAYOUT_uqs(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
-
- /*thumb*/ LT_EXTD_ESC, KC_SPC,
- /*aux*/ KC_NO, KC_LGUI, KC_LALT,
- KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- /*thumb*/ KC_ENT, LT_NUM_BSPC,
- /*aux*/ MO(L_FUNC), KC_NO, KC_NO
- ),
- [L_EXTD] = LAYOUT_uqs(
- KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, KC_BTN1, KC_SCTAB, KC_PGUP, KC_CTAB, QK_LEAD,
- _______, OSM_GUI, OSM_ALT, OSM_SFT, OSM_CTL, KC_RALT,
- _______, ALT_TAB, MS_WHUP, MS_WHDN, KC_PGDN, INS_HARD,
- /*thumb*/ _______, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ can't be used */
- KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
- KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_NO,
- KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, KC_NO,
- WIN_LEFT, WIN_DN, WIN_UP, WIN_RGHT, KC_PSTE, KC_NO,
- /*thumb*/ _______, KC_BSPC,
- /*aux*/ _______, _______, KC_ENTER
- /* ^^^^ use these */
- ),
-
- [L_NUM] = LAYOUT_uqs(
- KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC,
- _______, KC_SCLN, KC_COLN, KC_LCBR, KC_LPRN, KC_LBRC,
- _______, KC_CIRC, KC_AMPR, KC_RCBR, KC_RPRN, KC_RBRC,
- /*thumb*/ KC_ESC, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ use these */
- KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
- KC_EQUAL, KC_7, KC_8, KC_9, KC_KP_PLUS,_______,
- KC_KP_ASTERISK,KC_4,KC_5, KC_6, MINS_UNDSCR,_______,
- KC_COMM, KC_1, KC_2, KC_3, KC_KP_SLASH,KC_KP_ENTER, // Enter here, because thumb is occupied
- /*thumb*/ _______, _______,
- /*aux*/ KC_0, KC_KP_DOT, _______
- /* ^^^^ can't be used */
- ),
-
- [L_FUNC] = LAYOUT_uqs(
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- _______, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO,
- _______, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, KC_NO,
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- /*thumb*/ _______, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ use these */
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_PSCR, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,
- KC_SCRL, KC_F4, KC_F5, KC_F6, KC_F11, KC_NO,
- KC_PAUS, KC_F1, KC_F2, KC_F3, KC_F12, KC_NO,
- /*thumb*/ _______, _______,
- /*aux*/ _______, _______, _______
- /* ^^^^ can't be used */
- ),
-
- [L_MOUSE] = LAYOUT_uqs(
- KC_NO, _______, _______, _______, _______, _______,
- KC_NO, KC_NO, KC_BTN2, KC_BTN3, KC_BTN1, KC_VOLU,
- KC_NO, KC_NO, KC_ACL0, KC_ACL1, KC_ACL2, KC_VOLD,
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE,
- /*thumb*/ _______, _______,
- /*aux*/ _______, _______, _______,
- /* ^^^^ can't be used */
- _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MS_UP, MS_WHUP, _______, _______,
- MS_WHLEFT,KC_MS_L, KC_MS_D, KC_MS_R, MS_WHRGHT,_______,
- _______, MS_WHDN, KC_BTN3, KC_BTN4, KC_BTN5, _______,
- /*thumb*/ KC_BTN1, KC_BTN2,
- /*aux*/ KC_NO, KC_NO, KC_NO
- /* use these ^^^^ */
- ),
-};
diff --git a/keyboards/preonic/keymaps/uqs/rules.mk b/keyboards/preonic/keymaps/uqs/rules.mk
deleted file mode 100644
index ca99fa107c..0000000000
--- a/keyboards/preonic/keymaps/uqs/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-LTO_ENABLE=no
-AUDIO_ENABLE=no
-ENCODER_ENABLE=no
-
-# Broken with gcc >6, see https://github.com/qmk/qmk_firmware/issues/6753
-# (yes, different option, but I suspect the code has moved around)
-# This produces working firmware on Arch Linux with GCC 11, but is still broken
-# on Debian with 8.3.1
-RGBLIGHT_ENABLE=no
-RGB_MATRIX_ENABLE=no
-
-# not required, but helps on debian where there is a soft/hard float confusion.
-# but see above, gcc 8.3.1 still fucks up the firmware.
-USE_FPU=no
diff --git a/keyboards/preonic/keymaps/xulkal/keymap.c b/keyboards/preonic/keymaps/xulkal/keymap.c
deleted file mode 100644
index f63316e0cd..0000000000
--- a/keyboards/preonic/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,150 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-#include "muse.h"
-
-#define EXPAND_LAYOUT(...) LAYOUT_preonic_grid(__VA_ARGS__)
-
-// Define your non-alpha grouping in this define's LAYOUT, and all your BASE_LAYERS will share the same mod/macro columns
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Qwerty Layout
- * ,------------------------------------------------. ,------------------------------------------------.
- * | GESC | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 | BkSp |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * |FN(CAPS)| A | S | D | F | G | ` | | ' | H | J | K | L | ; | Enter|
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Sft[ | Z | X | C | V | B | RGB | |RGBRST| N | M | , | . | / | Sft] |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Ctrl | Win | LOWER| RAISE| Alt | Space|RGBRMOD| |RGBMOD| Space| Left | Up | Down | Right| Ctrl |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | Space| DEL | | Enter| Space|
- * `-------------' `-------------'
- */
- [_QWERTY] = EXPAND_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________,
- _________________QWERTY_L4_________________, _________________QWERTY_R4_________________,
- _________________QWERTY_L5_________________, _________________QWERTY_R5_________________
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = EXPAND_LAYOUT(
- ___________________GAME_L1_________________, ___________________GAME_R1_________________,
- ___________________GAME_L2_________________, ___________________GAME_R2_________________,
- ___________________GAME_L3_________________, ___________________GAME_R3_________________,
- ___________________GAME_L4_________________, ___________________GAME_R4_________________,
- ___________________GAME_L5_________________, ___________________GAME_R5_________________
- ),
-#endif
-
- [_LOWER] = EXPAND_LAYOUT(
- __________________LOWER_L1_________________, __________________LOWER_R1_________________,
- __________________LOWER_L2_________________, __________________LOWER_R2_________________,
- __________________LOWER_L3_________________, __________________LOWER_R3_________________,
- __________________LOWER_L4_________________, __________________LOWER_R4_________________,
- __________________LOWER_L5_________________, __________________LOWER_R5_________________
- ),
-
- [_RAISE] = EXPAND_LAYOUT(
- __________________RAISE_L1_________________, __________________RAISE_R1_________________,
- __________________RAISE_L2_________________, __________________RAISE_R2_________________,
- __________________RAISE_L3_________________, __________________RAISE_R3_________________,
- __________________RAISE_L4_________________, __________________RAISE_R4_________________,
- __________________RAISE_L5_________________, __________________RAISE_R5_________________
- ),
-
-#ifdef TRILAYER_ENABLED
- [_ADJUST] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _________________ADJUST_R5_________________
- ),
-#endif
-};
-
-bool muse_mode = false;
-uint8_t last_muse_note = 0;
-uint16_t muse_counter = 0;
-uint8_t muse_offset = 70;
-uint16_t muse_tempo = 50;
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (muse_mode) {
- if (IS_LAYER_ON(_RAISE)) {
- if (clockwise) {
- muse_offset++;
- } else {
- muse_offset--;
- }
- } else {
- if (clockwise) {
- muse_tempo+=1;
- } else {
- muse_tempo-=1;
- }
- }
- } else {
- if (clockwise) {
- register_code(KC_PGDN);
- unregister_code(KC_PGDN);
- } else {
- register_code(KC_PGUP);
- unregister_code(KC_PGUP);
- }
- }
- return true;
-}
-
-bool dip_switch_update_user(uint8_t index, bool active) {
- switch (index) {
- case 0:
- if (active) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- break;
- case 1:
- if (active) {
- muse_mode = true;
- } else {
- muse_mode = false;
- #ifdef AUDIO_ENABLE
- stop_all_notes();
- #endif
- }
- }
- return true
-}
-
-void matrix_scan_user(void) {
- #ifdef AUDIO_ENABLE
- if (muse_mode) {
- if (muse_counter == 0) {
- uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
- if (muse_note != last_muse_note) {
- stop_note(compute_freq_for_midi_note(last_muse_note));
- play_note(compute_freq_for_midi_note(muse_note), 0xF);
- last_muse_note = muse_note;
- }
- }
- muse_counter = (muse_counter + 1) % muse_tempo;
- }
- #endif
-}
-
-bool music_mask_user(uint16_t keycode) {
- switch (keycode) {
- case RAISE:
- case LOWER:
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/preonic/keymaps/xulkal/rules.mk b/keyboards/preonic/keymaps/xulkal/rules.mk
deleted file mode 100644
index f7e76252cd..0000000000
--- a/keyboards/preonic/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SRC += muse.c
-
-ENCODER_ENABLE = no
-
-OPT_DEFS += -DTRILAYER_ENABLED
-OPT_DEFS += -DAUDIO_CLICKY
diff --git a/keyboards/preonic/keymaps/zach/zach_common_functions.c b/keyboards/preonic/keymaps/zach/zach_common_functions.c
index ae5f44e713..ba6c402526 100644
--- a/keyboards/preonic/keymaps/zach/zach_common_functions.c
+++ b/keyboards/preonic/keymaps/zach/zach_common_functions.c
@@ -52,7 +52,6 @@ enum my_keycodes{
#ifdef AUDIO_ENABLE
#include "audio.h"
-float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_swcole[][2] = SONG(QWERTY_SOUND);
@@ -414,32 +413,5 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
};
-void matrix_init_user(void){ // Run once at startup
- #ifdef AUDIO_ENABLE
- _delay_ms(50); // gets rid of tick
- PLAY_SONG(tone_startup);
- #endif
-}
-
-#ifdef AUDIO_ENABLE
-void play_goodbye_tone(void){
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
-}
-
-void shutdown_user(void){
- PLAY_SONG(tone_goodbye);
- _delay_ms(150);
- stop_all_notes();
-}
-
-void music_on_user(void){ // Run when the music layer is turned on
- PLAY_SONG(tone_startup);
-}
-
-void music_off_user(void){ // Run when music is turned off
- PLAY_SONG(tone_goodbye);
-}
-#endif
#endif
diff --git a/keyboards/preonic/rev3/config.h b/keyboards/preonic/rev3/config.h
index 3d64a4a34a..0ca96c9164 100644
--- a/keyboards/preonic/rev3/config.h
+++ b/keyboards/preonic/rev3/config.h
@@ -17,8 +17,6 @@
#pragma once
-#define DIP_SWITCH_PINS { B14, A15, A0, B9 }
-
#define MUSIC_MAP
#undef AUDIO_VOICES
#undef AUDIO_PIN
diff --git a/keyboards/preonic/rev3/info.json b/keyboards/preonic/rev3/info.json
index 75688a33b2..6112699cfa 100644
--- a/keyboards/preonic/rev3/info.json
+++ b/keyboards/preonic/rev3/info.json
@@ -33,6 +33,9 @@
"rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2", "A3", "A6"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["B14", "A15", "A0", "B9"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B12", "pin_b": "B13"}
diff --git a/keyboards/preonic/rev3_drop/config.h b/keyboards/preonic/rev3_drop/config.h
index 3d64a4a34a..0ca96c9164 100644
--- a/keyboards/preonic/rev3_drop/config.h
+++ b/keyboards/preonic/rev3_drop/config.h
@@ -17,8 +17,6 @@
#pragma once
-#define DIP_SWITCH_PINS { B14, A15, A0, B9 }
-
#define MUSIC_MAP
#undef AUDIO_VOICES
#undef AUDIO_PIN
diff --git a/keyboards/preonic/rev3_drop/info.json b/keyboards/preonic/rev3_drop/info.json
index fed4acb01f..79487deaab 100644
--- a/keyboards/preonic/rev3_drop/info.json
+++ b/keyboards/preonic/rev3_drop/info.json
@@ -33,6 +33,9 @@
"rows": ["A10", "A9", "A8", "B15", "C13", "C14", "C15", "A2", "A3", "A6"]
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["B14", "A15", "A0", "B9"]
+ },
"encoder": {
"rotary": [
{"pin_a": "B12", "pin_b": "B13"}
diff --git a/keyboards/primekb/meridian/config.h b/keyboards/primekb/meridian/config.h
index 3bb4f22006..8593536eec 100644
--- a/keyboards/primekb/meridian/config.h
+++ b/keyboards/primekb/meridian/config.h
@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/primekb/meridian/ws2812/config.h b/keyboards/primekb/meridian/ws2812/config.h
index 3bb4f22006..8593536eec 100644
--- a/keyboards/primekb/meridian/ws2812/config.h
+++ b/keyboards/primekb/meridian/ws2812/config.h
@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/primekb/prime_e/config.h b/keyboards/primekb/prime_e/config.h
index e3e1572d99..6c8ce4c0ea 100644
--- a/keyboards/primekb/prime_e/config.h
+++ b/keyboards/primekb/prime_e/config.h
@@ -21,5 +21,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 8
diff --git a/keyboards/primekb/prime_e/info.json b/keyboards/primekb/prime_e/info.json
index f94271be6c..dee7a23e02 100644
--- a/keyboards/primekb/prime_e/info.json
+++ b/keyboards/primekb/prime_e/info.json
@@ -10,6 +10,9 @@
"rows": ["E6", "C7", "B5", "B4"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 8
+ },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/primekb/prime_e/keymaps/brandonschlack/config.h b/keyboards/primekb/prime_e/keymaps/brandonschlack/config.h
deleted file mode 100644
index 8a9aa040f5..0000000000
--- a/keyboards/primekb/prime_e/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define USE_LEDS_FOR_LAYERS
-#define STOPLIGHT_LED
-
-#define TOP_LED B1
-#define MIDDLE_LED B2
-#define BOTTOM_LED B3
-
-// #define LED_PIN_FLIP
-#ifdef LED_PIN_FLIP
- #define LED_ON(flag) !flag
-#else
- #define LED_ON(flag) flag
-#endif
diff --git a/keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c b/keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 4ff4581235..0000000000
--- a/keyboards/primekb/prime_e/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-// Tap Dance declarations
-enum {
- TD_LR_BRC,
- TD_SD_QUOT
-};
-
-// Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- // Tap once for LBracket, twice for RBracket
- [TD_LR_BRC] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC),
- // Tap once for Single Quote, twice for Double Quote
- [TD_SD_QUOT] = ACTION_TAP_DANCE_DOUBLE(KC_QUOT, KC_DQT)
-};
-
-#define LWR_B LT(_LOWER, KC_B)
-#define LWR_EQL LT(_LOWER, KC_EQL)
-#define TD_BRC TD(TD_LR_BRC)
-#define TD_QUOT TD(TD_SD_QUOT)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_BASE] = LAYOUT(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD_BRC, KC_BSPC,
- HY_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, LWR_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, LOWER,
- KC_LCTL, KC_LOPT, KC_LCMD, SPC_RAI, SPC_RAI, KC_RCMD, KC_ROPT, KC_RCTL
- ),
-
- [_LOWER] = LAYOUT(
- KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, MC_SLPD,
- _______, KC_MUTE, KC_VOLU, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, KC_LEFT, KC_RGHT, KC_MPLY,
- SF_CAPS, KC_MPRV, KC_VOLD, KC_MNXT, _______, PX_AFLL, OP_AFLL, _______, _______, KC_END, KC_DOWN, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_LBRC, KC_RBRC, KC_7, KC_8, KC_9, KC_0, KC_RBRC, _______,
- _______, KC_F5, KC_F6, KC_F7, KC_F8, KC_MINS, KC_PLUS, KC_4, KC_5, KC_6, KC_SCLN, _______,
- _______, KC_F9, KC_F10, KC_F11, KC_F12, LWR_EQL, KC_EQL, KC_1, KC_2, KC_3, _______, KC_BSLS, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_ADJUST] = LAYOUT(
- QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- )
-
-/*
- [BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______
- )
- */
-};
-
-void keyboard_pre_init_user(void) {
- setPinOutput(TOP_LED);
- setPinOutput(MIDDLE_LED);
- setPinOutput(BOTTOM_LED);
-}
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
- return state;
-}
-
-#ifdef USE_LEDS_FOR_LAYERS
-bool led_update_keymap(led_t led_state) {
- writePin(TOP_LED, LED_ON(IS_LAYER_ON(_FN1))); // Use for Layer 1
- writePin(MIDDLE_LED, LED_ON(IS_LAYER_ON(_FN2))); // Use for Layer 2
- writePin(BOTTOM_LED, LED_ON(led_state.caps_lock)); // Use for Caps Lock
- return false; // Override default set by KB
-}
-#endif
diff --git a/keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk b/keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk
deleted file mode 100644
index c1dfab0c72..0000000000
--- a/keyboards/primekb/prime_e/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-BACKLIGHT_ENABLE = no
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/primekb/prime_e/keymaps/talljoe/config.h b/keyboards/primekb/prime_e/keymaps/talljoe/config.h
deleted file mode 100644
index 7ecea9c151..0000000000
--- a/keyboards/primekb/prime_e/keymaps/talljoe/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2020 Joseph Wasson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define SPACE_COUNT 2
-
-#define TEMPLATE( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
- K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \
-) \
-LAYOUT( \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, K2D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \
- K30, K32, K33, K34, K35, K36, K2B, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K44, K46, K48, K49, K3D \
-)
diff --git a/keyboards/primekb/prime_e/keymaps/talljoe/keymap.c b/keyboards/primekb/prime_e/keymaps/talljoe/keymap.c
deleted file mode 100644
index 7812add812..0000000000
--- a/keyboards/primekb/prime_e/keymaps/talljoe/keymap.c
+++ /dev/null
@@ -1 +0,0 @@
-// This space intentionally left blank
diff --git a/keyboards/primekb/prime_o/keymaps/spacebarracecar/config.h b/keyboards/primekb/prime_o/keymaps/spacebarracecar/config.h
deleted file mode 100644
index 6f70f09bee..0000000000
--- a/keyboards/primekb/prime_o/keymaps/spacebarracecar/config.h
+++ /dev/null
@@ -1 +0,0 @@
-#pragma once
diff --git a/keyboards/primekb/prime_o/keymaps/spacebarracecar/keymap.c b/keyboards/primekb/prime_o/keymaps/spacebarracecar/keymap.c
deleted file mode 100644
index 50607d8127..0000000000
--- a/keyboards/primekb/prime_o/keymaps/spacebarracecar/keymap.c
+++ /dev/null
@@ -1,172 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "spacebarracecar.h"
-
-#define LOWER MO(_LOWER)
-#define RAISE MO(_RAISE)
-
-enum layers {
- _BASE,
- _RAISE,
- _LOWER,
- _GAME = _NAV+1
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Base
-,---------------------------------------------------------------------------------------------------------------------------------------------------------------.
-|- |* |/ |Backspace|` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 |\ |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |7 |8 |9 |Tab |Q |W |E |R |T |Z |U |I |O |P |Backspace|
-|+ |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |4 |5 |6 |Esc/Nav |A |S |D |F |G |H |J |K |L |; |' |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |1 |2 |3 |(/LShift |Y |X |C |V |B |N |M |, |. |/ |)/RShift |
-|Enter |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |. |0 |00 |RCtrl | |Alt |Win |Lower |Space |Enter |Raise |Win |AltGr | |LCtrl |
-`---------------------------------------------------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_BASE] = LAYOUT(
- KC_PMNS, KC_PAST, KC_PSLS, KC_BSPC, CU_GRV, DE_1, DE_2, CU_3, DE_4, DE_5, CU_6, CU_7, CU_8, CU_9, CU_0, CU_BSLS,
- KC_PPLS, KC_P7, KC_P8, KC_P9, KC_TAB, DE_Q, DE_W, DE_E, DE_R, DE_T, CU_Z, DE_U, DE_I, DE_O, DE_P, KC_BSPC,
- KC_PPLS, KC_P4, KC_P5, KC_P6, CU_NAV, DE_A, DE_S, DE_D, DE_F, DE_G, DE_H, DE_J, DE_K, DE_L, CU_SCLN, CU_QUOT,
- KC_PENT, KC_P1, KC_P2, KC_P3, CU_LSFT, CU_Y, DE_X, DE_C, DE_V, DE_B, DE_N, DE_M, CU_COMM, CU_DOT, CU_SLSH, CU_RSFT,
- KC_PENT, KC_PDOT, KC_P0, KC_P00, KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, LOWER, KC_SPC, CTLENT, RAISE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
-),
-
-/* Lower
-,---------------------------------------------------------------------------------------------------------------------------------------------------------------.
-|- |* |/ |Backspace|` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |7 |8 |9 |~ |! |" |# |$ |% |^ |& |* |( |) | |
-|+ |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |4 |5 |6 | |@ |Strg+X |Strg+C |Strg+V | | |_ |+ |{ |} || |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |1 |2 |3 | |? | | | | | | | | | | |
-|Enter |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |. |0 |00 | | | | | | | | | | | | |
-`---------------------------------------------------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_LOWER] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, DE_TILD, DE_EXLM, DE_DQUO, DE_HASH, DE_DLR, DE_PERC, CU_CIRC, DE_AMPR, DE_ASTR, DE_LPRN, DE_RPRN, _______,
- _______, _______, _______, _______, _______, DE_AT, CTRLX, CTRLC, CTRLV, XXXXXXX, XXXXXXX, DE_UNDS, DE_PLUS, DE_LCBR, DE_RCBR, DE_PIPE,
- _______, _______, _______, _______, _______, DE_EURO, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DE_MINS, CU_EQL, CU_LBRC, CU_RBRC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Raise
-,---------------------------------------------------------------------------------------------------------------------------------------------------------------.
-|- |* |/ |Backspace|` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |7 |8 |9 |` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 | |
-|+ |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |4 |5 |6 | |F1 |F2 |F3 |F4 |F5 |F6 |- |= |[ |] |\ |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |1 |2 |3 | |F7 |F8 |F9 |F10 |F11 |F12 | | | | | |
-|Enter |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |. |0 |00 | | | | | | | | | | | | |
-`---------------------------------------------------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_RAISE] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, CU_GRV, DE_1, DE_2, CU_3, DE_4, DE_5, CU_6, CU_7, CU_8, CU_9, CU_0, _______,
- _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, DE_MINS, CU_EQL, CU_LBRC, CU_RBRC, CU_BSLS,
- _______, _______, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Deadkey
-,---------------------------------------------------------------------------------------------------------------------------------------------------------------.
-|- |* |/ |Backspace| | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |7 |8 |9 | | | | | | | |Ü | |Ö | | |
-|+ |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |4 |5 |6 | |Ä |ß | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |1 |2 |3 | | | | | | | | | | | | |
-|Enter |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |. |0 |00 | | | | | |" |" | | | | | |
-`---------------------------------------------------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_DEADKEY] = LAYOUT(
- _______, _______, _______, _______, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED,
- _______, _______, _______, _______, KC_TAB, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_UE, CU_ED, CU_OE, CU_ED, _______,
- _______, _______, _______, _______, _______, CU_AE, CU_SS, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_DDQ,
- _______, _______, _______, _______, _______, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, CU_ED, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, CU_DDQ, CU_DDQ, _______, _______, _______, _______, _______
-),
-
-/* Navigation
-,---------------------------------------------------------------------------------------------------------------------------------------------------------------.
-|- |* |/ |Numlock |Escape | | | | | | | | | | | |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |7 |8 |9 |ALT F4 |PageDown |Up |PageUp |Home | | | |Win+Up | | |Del |
-|= |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |4 |5 |6 | |Left |Down |Right |End | | |Win+Left |Win+Down |Win+Right| |Enter |
-|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |1 |2 |3 | |Prev |Pause |Next |LowerVol |RaiseVol |Mute | | | | | |
-|Enter |---------+---------+---------|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------|
-| |. |0 |00 |QK_BOOT |ESCT | | | | | | | | | |Game |
-`---------------------------------------------------------------------------------------------------------------------------------------------------------------'
-*/
-
-[_NAV] = LAYOUT(
- _______, _______, _______, KC_NUM, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- CU_EQL, _______, _______, _______, _______, KC_PGDN, KC_UP, KC_PGUP, KC_HOME, XXXXXXX, XXXXXXX, XXXXXXX, GUIU, XXXXXXX, XXXXXXX, KC_DEL,
- CU_EQL, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, XXXXXXX, XXXXXXX, GUIL, GUID, GUIR, EMOJI, KC_ENT,
- _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- _______, _______, _______, _______, QK_BOOT, ALTF4, _______, _______, _______, KC_SPC, CTLENT, _______, _______, _______, _______, CU_GAME
-),
-
-// Can be used to place macros on the numpad
-[_GAME] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
-switch (keycode) {
- case MO(_LOWER):
- if (game){
- if(record->event.pressed) {
- register_code(KC_SPC);
- } else {
- unregister_code(KC_SPC);
- }
- return false;
- } else {
- return true;
- }
- case KC_LALT:
- if (game) {
- if (record->event.pressed){
- layer_on(_RAISE);
- } else {
- layer_off(_RAISE);
- }
- return false;
- } else {
- return true;
- }
- case CU_GAME:
- if(record->event.pressed) {
- if (game)
- layer_on(_GAME);
- else
- layer_off(_GAME);
- }
- return false;
- default:
- return true;
- }
-}
diff --git a/keyboards/primekb/prime_o/keymaps/spacebarracecar/readme.md b/keyboards/primekb/prime_o/keymaps/spacebarracecar/readme.md
deleted file mode 100644
index 7e78330f07..0000000000
--- a/keyboards/primekb/prime_o/keymaps/spacebarracecar/readme.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# SpacebarRacecar US-International Prime_O Keymap for German PCs
-
-This keymap emulates most keys of the US-International layout on PCs that have German set as input language.
-This allows the use of the keyboard on any PC in Germany without the need to change any settings.
-The keymap is mostly based on the Planck default layout but adds essential features for german input, like access to Ä, Ö, Ü, ß.
-Righthand numpad is enabled by default, enable lefthand numpad with #define LEFTNUM and center numpad with #define CENTERNUM.
diff --git a/keyboards/primekb/prime_o/keymaps/spacebarracecar/rules.mk b/keyboards/primekb/prime_o/keymaps/spacebarracecar/rules.mk
deleted file mode 100644
index 5fbd492774..0000000000
--- a/keyboards/primekb/prime_o/keymaps/spacebarracecar/rules.mk
+++ /dev/null
@@ -1,22 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-MIDI_ENABLE = no # MIDI controls
-AUDIO_ENABLE = no # Audio output on port C6
-UNICODE_ENABLE = no # Unicode
-BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
-
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
-
-# Userspace defines
-GERMAN_ENABLE = yes # Enable Custom US Ansi Keycodes for PC with German set as input language
diff --git a/keyboards/projectd/65/projectd_65_ansi/config.h b/keyboards/projectd/65/projectd_65_ansi/config.h
index 312a72979f..8b162a2149 100644
--- a/keyboards/projectd/65/projectd_65_ansi/config.h
+++ b/keyboards/projectd/65/projectd_65_ansi/config.h
@@ -25,7 +25,6 @@
/* External spi flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14
-#define WEAR_LEVELING_BACKING_SIZE (4 * 1024)
/* SPI Config for LED Driver */
#define SPI_DRIVER SPIDQ
@@ -33,10 +32,7 @@
#define SPI_MOSI_PIN A7
#define SPI_MISO_PIN A6
-#define DRIVER_1_CS A15
-#define DRIVER_2_CS B15
-#define DRIVER_1_EN C13
-#define DRIVER_2_EN C13
+#define AW20216S_CS_PIN_1 A15
+#define AW20216S_EN_PIN_1 C13
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 71
diff --git a/keyboards/projectd/65/projectd_65_ansi/info.json b/keyboards/projectd/65/projectd_65_ansi/info.json
index 0c8b9585bb..861e3792db 100644
--- a/keyboards/projectd/65/projectd_65_ansi/info.json
+++ b/keyboards/projectd/65/projectd_65_ansi/info.json
@@ -10,6 +10,13 @@
"dynamic_keymap": {
"layer_count": 13
},
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 4096
+ }
+ },
"features": {
"bootmagic": true,
"command": false,
@@ -74,7 +81,7 @@
"solid_multisplash": true
},
"center_point": [76, 25],
- "driver": "aw20216",
+ "driver": "aw20216s",
"layout": [
{ "flags": 4, "matrix": [1, 3], "x": 0, "y": 0 },
{ "flags": 4, "matrix": [1, 7], "x": 10, "y": 0 },
diff --git a/keyboards/projectd/65/projectd_65_ansi/projectd_65_ansi.c b/keyboards/projectd/65/projectd_65_ansi/projectd_65_ansi.c
index 6027128a96..0d6123ac01 100644
--- a/keyboards/projectd/65/projectd_65_ansi/projectd_65_ansi.c
+++ b/keyboards/projectd/65/projectd_65_ansi/projectd_65_ansi.c
@@ -18,8 +18,8 @@
#ifdef RGB_MATRIX_ENABLE
-const aw_led g_aw_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
+const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to AW20216S manual for these locations
* driver
* | R location
* | | G location
diff --git a/keyboards/projectd/65/projectd_65_ansi/rules.mk b/keyboards/projectd/65/projectd_65_ansi/rules.mk
index 24d5f6f52e..6e7633bfe0 100644
--- a/keyboards/projectd/65/projectd_65_ansi/rules.mk
+++ b/keyboards/projectd/65/projectd_65_ansi/rules.mk
@@ -1,2 +1 @@
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/projectd/75/ansi/config.h b/keyboards/projectd/75/ansi/config.h
index 5fcad72e71..3b685c09b8 100644
--- a/keyboards/projectd/75/ansi/config.h
+++ b/keyboards/projectd/75/ansi/config.h
@@ -25,7 +25,6 @@
/* External spi flash */
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B14
-#define WEAR_LEVELING_BACKING_SIZE (4 * 1024)
/* SPI Config for LED Driver */
#define SPI_DRIVER SPIDQ
@@ -38,7 +37,6 @@
#define DRIVER_1_EN C13
#define DRIVER_2_EN C13
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 70
#define DRIVER_2_LED_TOTAL 17
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/projectd/75/ansi/info.json b/keyboards/projectd/75/ansi/info.json
index daf94202e0..0e137de614 100644
--- a/keyboards/projectd/75/ansi/info.json
+++ b/keyboards/projectd/75/ansi/info.json
@@ -6,6 +6,13 @@
"bootmagic": {
"matrix": [1, 3]
},
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 4096
+ }
+ },
"diode_direction": "COL2ROW",
"dynamic_keymap": {
"layer_count": 10
@@ -176,9 +183,6 @@
"pid": "0x000F",
"vid": "0x3233"
},
- "eeprom": {
- "driver": "wear_leveling"
- },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/projectd/75/ansi/rules.mk b/keyboards/projectd/75/ansi/rules.mk
index 002458405e..6e7633bfe0 100644
--- a/keyboards/projectd/75/ansi/rules.mk
+++ b/keyboards/projectd/75/ansi/rules.mk
@@ -1 +1 @@
-WEAR_LEVELING_DRIVER = spi_flash
+# This file intentionally left blank
diff --git a/keyboards/projectkb/alice/keymaps/stanrc85/keymap.c b/keyboards/projectkb/alice/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 9862d6d422..0000000000
--- a/keyboards/projectkb/alice/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-Copyright 2012,2013 Jun Wako <wakojun@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_default(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
- KC_LCTL, KC_LALT, LT_BPCF, KC_LGUI, LT_SPCF, TD_TWIN, TD_TCTL
- ),
-
- [_DEFAULT] = LAYOUT_default(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
- KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, KC_RALT, KC_RCTL
- ),
-
- [_FN1_60] = LAYOUT_default(
- _______, KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL,
- _______, _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, _______, KC_HOME, KC_UP, KC_END, KC_PSCR, _______, _______, KC_INS,
- _______, KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
- _______, KC_RDP, _______, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_FN2_60] = LAYOUT_default(
- BL_TOGG, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, RGB_SAI, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______,
- BL_UP, VK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
- BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, TG(_DEFAULT)
- )
-};
diff --git a/keyboards/projectkb/alice/rev1/config.h b/keyboards/projectkb/alice/rev1/config.h
index 2692965fbf..dca7542513 100644
--- a/keyboards/projectkb/alice/rev1/config.h
+++ b/keyboards/projectkb/alice/rev1/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/projectkb/alice/rev2/config.h b/keyboards/projectkb/alice/rev2/config.h
index 8bb661f90b..f5d9ca0c3e 100644
--- a/keyboards/projectkb/alice/rev2/config.h
+++ b/keyboards/projectkb/alice/rev2/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/prototypist/j01/keymaps/zyber/keymap.c b/keyboards/prototypist/j01/keymaps/zyber/keymap.c
deleted file mode 100644
index 53b98ad023..0000000000
--- a/keyboards/prototypist/j01/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Copyright 2020 Shaun Mitchell (Flexerm)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- // Default layer
- [0] = LAYOUT_all(
- C_BLK, KC_F2, KC_ESC, KC_1, KC_2, KC_3, TD(SSHT),KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_DEL,
- KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC),KC_RBRC, KC_BSLS, KC_PGUP,
- KC_F5, KC_F6, L1_EXPL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT),KC_NUHS, KC_ENT, KC_PGDN,
- KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
- KC_F9, KC_F10, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- // Fn1 layer
- [1] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-};
diff --git a/keyboards/pteron36/config.h b/keyboards/pteron36/config.h
index 1148463200..72b4ea84e7 100644
--- a/keyboards/pteron36/config.h
+++ b/keyboards/pteron36/config.h
@@ -37,6 +37,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-
-// for via
-#define DYNAMIC_KEYMAP_LAYER_COUNT 7
diff --git a/keyboards/pteron36/info.json b/keyboards/pteron36/info.json
index 418ca0f6b8..76b6e59647 100644
--- a/keyboards/pteron36/info.json
+++ b/keyboards/pteron36/info.json
@@ -13,6 +13,9 @@
"rows": ["E6", "D7", "B4", "B5"]
},
"diode_direction": "ROW2COL",
+ "dynamic_keymap": {
+ "layer_count": 7
+ },
"encoder": {
"rotary": [
{"pin_a": "F5", "pin_b": "F4"}
diff --git a/keyboards/qvex/lynepad2/config.h b/keyboards/qvex/lynepad2/config.h
index 7b9d3ce306..9e1f70b38b 100644
--- a/keyboards/qvex/lynepad2/config.h
+++ b/keyboards/qvex/lynepad2/config.h
@@ -16,8 +16,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 5
-
//Digital joystick (4-way switch + encoder)
#define PIN_JU D4
#define PIN_JD B6
diff --git a/keyboards/qvex/lynepad2/info.json b/keyboards/qvex/lynepad2/info.json
index 4230fd63e0..7919c2adc2 100644
--- a/keyboards/qvex/lynepad2/info.json
+++ b/keyboards/qvex/lynepad2/info.json
@@ -15,6 +15,9 @@
"vid": "0x04D8",
"pid": "0xE678"
},
+ "dynamic_keymap": {
+ "layer_count": 5
+ },
"encoder": {
"rotary": [
{"pin_a": "D6", "pin_b": "B5", "resolution": 2},
diff --git a/keyboards/qwertykeys/qk100/ansi/config.h b/keyboards/qwertykeys/qk100/ansi/config.h
index 6d0401a3dc..82766b8834 100644
--- a/keyboards/qwertykeys/qk100/ansi/config.h
+++ b/keyboards/qwertykeys/qk100/ansi/config.h
@@ -39,5 +39,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# define RGB_MATRIX_LED_FLUSH_LIMIT 26
# define RGB_MATRIX_STARTUP_VAL 128
# define DRIVER_ADDR_1 0b0110000
-# define DRIVER_COUNT 1
# define RGB_MATRIX_LED_COUNT 101 \ No newline at end of file
diff --git a/keyboards/rart/rartlice/config.h b/keyboards/rart/rartlice/config.h
index 9673097c38..116f8d544b 100644
--- a/keyboards/rart/rartlice/config.h
+++ b/keyboards/rart/rartlice/config.h
@@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
/*
* Feature disable options
diff --git a/keyboards/redox_w/keymaps/danielo515/config.h b/keyboards/redox_w/keymaps/danielo515/config.h
deleted file mode 100644
index df14c8c269..0000000000
--- a/keyboards/redox_w/keymaps/danielo515/config.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#pragma once
-
-#define TAPPING_TERM 200
-#undef ONESHOT_TIMEOUT
-#define ONESHOT_TIMEOUT 1500
diff --git a/keyboards/redox_w/keymaps/danielo515/keymap.c b/keyboards/redox_w/keymaps/danielo515/keymap.c
deleted file mode 100644
index d40ba1a340..0000000000
--- a/keyboards/redox_w/keymaps/danielo515/keymap.c
+++ /dev/null
@@ -1,178 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "danielo515.h"
-
-// Shortcut to make keymap more readable
-# define SYM_L OSL(_SYMB)
-
-# define KC_ALAS LALT_T(KC_PAST) // alt or keypad *
-# define KC_CTPL LCTL_T(KC_BSLS) // <C-\>
-
-# define KC_NAGR LT(_NAV, KC_GRV)
-# define KC_NAMI LT(_NAV, KC_MINS)
-# define AD_ESC LT(_ADJUST, KC_ESC)
-# define NAV_SPC LT(_NAV, KC_SPACE)
-
-# define KC_ADPU LT(_ADJUST, KC_PGUP)
-# define WIN_LEFT WIN_TO_LEFT
-# define WIN_RIGHT WIN_TO_RIGHT
-# define COPY_CUT TD(COPY_CUT)
-# define TD_PASTE TD(PASTE_DANCE)
-# define CTL OSM(MOD_LCTL)
-# define ALT OSM(MOD_LALT)
-# define GUI OSM(MOD_LGUI)
-# define ENT_SYM LT(_SYMB, KC_ENT)
-# define __S LT(_S,KC_S)
-# define OSX_BACK LGUI(KC_GRV)
-// Which key do you use to enter a layer
-# define ENTRY _______
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- KC_EQL ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_DQUO ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,TD_PASTE, KC_INS ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,CMD_MINS,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_PIPE ,KC_A ,__S ,FN_D ,FN_F ,KC_G ,COPY_CUT, KC_UNDS ,HYPR_H ,ALT_J ,CTL_K ,KC_L ,TD_CLN ,SFT_QUOT,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- KC_BSLS ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DEL ,KC_PLUS , ALT_TAB ,AD_ESC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_ASTR ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- CTL ,ALT ,KC_LEFT ,KC_RIGHT, GUI , SHIFT ,KC_BSPC , QK_LEAD ,NAV_SPC , ENT_SYM, KC_LBRC ,KC_RBRC ,KC_DOWN ,KC_UP
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
-
- [_SYMB] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F12 ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______ ,KC_EXLM ,KC_DLR ,KC_LCBR ,KC_RCBR ,KC_PIPE ,_______ , _______ ,KC_PSLS ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PERC ,KC_BSPC ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______ ,KC_AT ,KC_DLR , KC_LPRN, KC_RPRN,KC_GRV ,_______ , _______ ,KC_PENT ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,KC_PMNS ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,_______ ,_______ , _______ ,_______ ,KC_COLN ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PSLS ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- _______ ,_______ ,_______ ,_______ , _______ , _______ ,_______ , _______ ,_______ , ENTRY , KC_P0 ,KC_PDOT ,KC_PAST ,XXXXXXX
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
-
- [_NAV] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ , _______ ,SFT_LEFT_END,SFT_LEFT,SFT_RIGHT,SFT_RIGHT_END ,XXXXXXX ,KC_F12 ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ , _______ ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RIGHT,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,XXXXXXX ,KC_HOME ,CTL_LEFT,CTL_RIGHT,KC_END,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ , _______ ,_______ , _______ , ENTRY , KC_MUTE , KC_VOLD ,KC_VOLU ,WIN_LEFT,WIN_RIGHT
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
- [_ADJUST] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,QK_BOOT,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,TG(_GAMING) ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , KC_MUTE ,_______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
- [_GAMING] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______ , KC_Q , KC_W ,_______ ,_______ ,_______ ,KC_ESC , _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______ , KC_A , KC_S , KC_D , KC_F ,_______ ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,KC_BSPC ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- _______ ,_______ ,_______ ,_______ , KC_ENTER, KC_LSFT ,KC_SPACE, _______ ,_______ , _______ , _______ ,_______ ,_______ ,_______
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
-[_F] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,ALL_WIN ,EXPOSE ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,KC_F4 ,KC_F5 ,KC_F6 ,XXXXXXX ,KC_F12 ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,SAVE ,OSX_BACK ,ENTRY ,XXXXXXX ,XXXXXXX , XXXXXXX ,KC_PSCR ,KC_F1 ,KC_F2 ,KC_F3 ,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,UNDO ,REDO ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,_______ ,XXXXXXX ,SHIFT_UP,SHIFT_DWN,XXXXXXX ,XXXXXXX ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX , KC_PGUP ,KC_PGDN , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
- [_D] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_A ,KC_B ,KC_C ,KC_D ,KC_E ,KC_F ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,KC_LBRC ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PERC ,KC_KP_MINUS ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,KC_F5 ,KC_F2 ,XXXXXXX , _______ ,KC_RBRC ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,KC_PAST ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,_______ ,KC_COLN ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PSLS ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,_______ , _______ ,_______ , KC_P0 , KC_COMMA ,KC_PDOT ,KC_PAST ,XXXXXXX
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- ),
- [_S] = LAYOUT(
- //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
- XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_LT ,KC_GT ,XXXXXXX ,XXXXXXX , XXXXXXX ,KC_HASH ,KC_LCBR ,KC_RCBR ,KC_ASTR ,KC_PERC ,KC_DLR ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,_______ ,KC_EQL ,F_ARROW ,KC_GRAVE,XXXXXXX , XXXXXXX ,KC_AMPR ,KC_LPRN ,KC_RPRN ,CLN_EQ ,KC_PLUS ,KC_PIPE ,
- //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_CIRC ,KC_DLR ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,KC_EXLM ,KC_LBRC ,KC_RBRC ,ARROW ,KC_BSLS, IARROW ,
- //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
- XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,_______ , XXXXXXX ,ENTRY , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX
- //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
- )
-
-};
-
-void alt_tab_activated(void){
- layer_on(_NAV);
-};
-void alt_tab_deactivated(void){
- layer_off(_NAV);
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case _QWERTY:
- set_led_off;
- break;
- case _SYMB:
- case _D:
- set_led_green;
- break;
- case _GAMING:
- set_led_white;
- break;
- case _NAV:
- set_led_blue;
- break;
- case _ADJUST:
- set_led_red;
- break;
- case _S:
- set_led_magenta;
- break;
- case _F:
- set_led_white;
- break;
- default:
- break;
- }
- return state;
-}
-
-
diff --git a/keyboards/redox_w/keymaps/danielo515/readme.md b/keyboards/redox_w/keymaps/danielo515/readme.md
deleted file mode 100644
index 0db7072b80..0000000000
--- a/keyboards/redox_w/keymaps/danielo515/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Danielo keymap for Redox Wireless
-Most of the custom functionality is on my user-space `users/danielo515`
diff --git a/keyboards/redox_w/keymaps/danielo515/rules.mk b/keyboards/redox_w/keymaps/danielo515/rules.mk
deleted file mode 100644
index 18f126693e..0000000000
--- a/keyboards/redox_w/keymaps/danielo515/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-
-TAP_DANCE_ENABLE = yes # Enable the tap dance feature.
-COMBO_ENABLE = yes
-LEADER_ENABLE = yes
-CONSOLE_ENABLE = no
-LTO_ENABLE = yes # link time optimizations
diff --git a/keyboards/redox_w/keymaps/manna-harbour_miryoku/config.h b/keyboards/redox_w/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index d2d64b8894..0000000000
--- a/keyboards/redox_w/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, XXX, XXX, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, XXX, XXX, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
-XXX, XXX, XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX, XXX, XXX\
-)
diff --git a/keyboards/redox_w/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/redox_w/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/redox_w/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/redox_w/rules.mk b/keyboards/redox_w/rules.mk
index 32eca4db31..f543b5fd9a 100644
--- a/keyboards/redox_w/rules.mk
+++ b/keyboards/redox_w/rules.mk
@@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/redragon/k667/config.h b/keyboards/redragon/k667/config.h
index e17865a403..33e26c4a39 100644
--- a/keyboards/redragon/k667/config.h
+++ b/keyboards/redragon/k667/config.h
@@ -17,10 +17,9 @@
#pragma once
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1010011
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_VCC
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 45
#define DRIVER_2_LED_TOTAL 45
diff --git a/keyboards/redragon/k667/k667.c b/keyboards/redragon/k667/k667.c
index 81aeef4494..629e120b7b 100644
--- a/keyboards/redragon/k667/k667.c
+++ b/keyboards/redragon/k667/k667.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
{0, G_1, I_1, H_1},
{0, G_3, I_3, H_3},
{0, G_4, I_4, H_4},
diff --git a/keyboards/rgbkb/mun/config.h b/keyboards/rgbkb/mun/config.h
index fd2e366614..87a7fe1319 100644
--- a/keyboards/rgbkb/mun/config.h
+++ b/keyboards/rgbkb/mun/config.h
@@ -41,9 +41,6 @@
#endif
/* Split Transport Features */
-#define SPLIT_TRANSPORT_MIRROR
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
#define SPLIT_TRANSACTION_IDS_KB TOUCH_ENCODER_SYNC, RGB_MENU_SYNC
#define RGB_MATRIX_LED_COUNT 98
@@ -119,6 +116,3 @@
#define TOUCH_UPDATE_INTERVAL 33
#define OLED_UPDATE_INTERVAL 33
-
-#define WEAR_LEVELING_BACKING_SIZE 4096
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
diff --git a/keyboards/rgbkb/mun/keymaps/default/config.h b/keyboards/rgbkb/mun/keymaps/default/config.h
index 9fbbfc5901..88bdc06dee 100644
--- a/keyboards/rgbkb/mun/keymaps/default/config.h
+++ b/keyboards/rgbkb/mun/keymaps/default/config.h
@@ -19,5 +19,3 @@
// 20m timeout (20m * 60s * 1000mil)
// #define RGB_MATRIX_TIMEOUT 1200000
#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-#define STM32_ONBOARD_EEPROM_SIZE 2048
diff --git a/keyboards/rgbkb/mun/keymaps/via/config.h b/keyboards/rgbkb/mun/keymaps/via/config.h
index 002081a1c8..a0f581b50a 100644
--- a/keyboards/rgbkb/mun/keymaps/via/config.h
+++ b/keyboards/rgbkb/mun/keymaps/via/config.h
@@ -24,5 +24,3 @@
// 224B per layer right now
#define DYNAMIC_KEYMAP_LAYER_COUNT 8
#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047
-
-#define STM32_ONBOARD_EEPROM_SIZE 2048
diff --git a/keyboards/rgbkb/mun/rev1/info.json b/keyboards/rgbkb/mun/rev1/info.json
index 5d380de5c7..96d1a18e81 100644
--- a/keyboards/rgbkb/mun/rev1/info.json
+++ b/keyboards/rgbkb/mun/rev1/info.json
@@ -37,6 +37,11 @@
"io_delay": 5
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "B8", "pin_b": "A14"},
@@ -47,7 +52,14 @@
"tap_keycode_delay": 5
},
"split": {
- "soft_serial_pin": "A9"
+ "soft_serial_pin": "A9",
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true
+ }
+ }
},
"processor": "STM32F303",
"bootloader": "stm32-dfu",
diff --git a/keyboards/rgbkb/mun/rules.mk b/keyboards/rgbkb/mun/rules.mk
index 18dfc8edf7..4269e3b0a1 100644
--- a/keyboards/rgbkb/mun/rules.mk
+++ b/keyboards/rgbkb/mun/rules.mk
@@ -2,7 +2,7 @@
VPATH += keyboards/rgbkb/common
SRC += touch_encoder.c
SRC += common_oled.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
# Build Options
# change yes to no to disable
diff --git a/keyboards/rgbkb/pan/pan.c b/keyboards/rgbkb/pan/pan.c
index 023c766de6..d175be3641 100644
--- a/keyboards/rgbkb/pan/pan.c
+++ b/keyboards/rgbkb/pan/pan.c
@@ -22,7 +22,7 @@
# include "ws2812.h"
// LED color buffer
-LED_TYPE rgb_matrix_ws2812_array[RGB_MATRIX_LED_COUNT];
+rgb_led_t rgb_matrix_ws2812_array[RGB_MATRIX_LED_COUNT];
static void init(void) {}
diff --git a/keyboards/rgbkb/sol/keymaps/kageurufu/keymap.c b/keyboards/rgbkb/sol/keymaps/kageurufu/keymap.c
deleted file mode 100644
index 88ad2f85be..0000000000
--- a/keyboards/rgbkb/sol/keymaps/kageurufu/keymap.c
+++ /dev/null
@@ -1,98 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "kageurufu.h"
-#ifdef PROTOCOL_LUFA
-#include "lufa.h"
-#include "split_util.h"
-#endif
-
-extern keymap_config_t keymap_config;
-extern uint8_t is_master;
-
-/* Base Layout
- * ,------------------------------------------------. ,------------------------------------------------.
- * | ` | | | | | | | | | | | | | | BkSp |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Tab | | | | | | | | | | | | | | \ |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Esc | | | | | | | | | | | | | | ' |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Sft( | | | | | | | | | | | | | | Sft) |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Ctrl | Win | Win | Alt | FN | Space| RGB | | FN | FN | - | = | Down | PgUp | PgDn |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Space| Bksp | | Enter| Space|
- * `-------------' `--------=----'
- */
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-#define _BASE_LAYOUT( \
- _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \
- _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \
- _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \
-) \
-EXPAND_LAYOUT( \
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, RGB_MOD, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
- KC_TAB, _00, _01, _02, _03, _04, KC_LBRC, KC_RBRC, _05, _06, _07, _08, _09, KC_BSLS, \
- FN_ESC, _10, _11, _12, _13, _14, RGB_SAI, RGB_VAI, _15, _16, _17, _18, _19, KC_QUOT, \
- SC_LSPO, _20, _21, _22, _23, _24, RGB_SAD, RGB_VAD, _25, _26, _27, _28, _29, SC_RSPC, \
- KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, FN, FN, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN, \
- KC_SPC, KC_BSPC, KC_ENT, KC_SPC \
-)
-#define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = BASE_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_COLEMAK] = BASE_LAYOUT(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_COLEMAK_DH] = BASE_LAYOUT(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
-
- [_FN] = EXPAND_LAYOUT(
- ________________FUNCTION_L1________________, _______, KC_PSCR, ________________FUNCTION_R1________________,
- ________________FUNCTION_L2________________, _______, _______, ________________FUNCTION_R2________________,
- ________________FUNCTION_L3________________, _______, _______, ________________FUNCTION_R3________________,
- ________________FUNCTION_L4________________, _______, _______, ________________FUNCTION_R4________________,
- ________________FUNCTION_L5________________, ADJ, ADJ, ________________FUNCTION_R5________________,
- _______, KC_DEL, _______, _______
- ),
-
- [_ADJ] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________,
- _______, _______, _______, _______
- )
-};
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) { /* First encoder */
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else if (index == 1) { /* Second encoder*/
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- }
- return true;
-}
-#endif
diff --git a/keyboards/rgbkb/sol/keymaps/kageurufu/rules.mk b/keyboards/rgbkb/sol/keymaps/kageurufu/rules.mk
deleted file mode 100644
index 0399e8427a..0000000000
--- a/keyboards/rgbkb/sol/keymaps/kageurufu/rules.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Overridden build options from rev1 & rev2
-
-# Debug Options
-CONSOLE_ENABLE = yes # Console for debug(+400)
-COMMAND_ENABLE = yes # Commands for debug and configuration
-
-# RGB Options
-RGBLIGHT_ENABLE = no # Enable global lighting effects. Do not enable with RGB Matrix
-LED_MIRRORED = no # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)
-RGB_MATRIX_ENABLE = yes # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
-
-# Userspace implements their own LTO
-LTO_ENABLE = no
-
-
-
-# Do not edit past here
-
-include keyboards/$(KEYBOARD)/post_rules.mk
diff --git a/keyboards/rgbkb/sol/keymaps/xulkal/config.h b/keyboards/rgbkb/sol/keymaps/xulkal/config.h
deleted file mode 100644
index ab75c5419c..0000000000
--- a/keyboards/rgbkb/sol/keymaps/xulkal/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Xulkal custom stuff
-#if KEYBOARD_rgbkb_sol_rev2
- #define OLED_90ROTATION
- #define RGB_MATRIX_TOG_LAYERS
- #define RGB_MATRIX_HUE_STEP 8
- #define RGB_MATRIX_SAT_STEP 8
- #define RGB_MATRIX_VAL_STEP 8
- #define RGB_MATRIX_SPD_STEP 8
-#endif
-
-#define ENCODER_RESOLUTION 2
diff --git a/keyboards/rgbkb/sol/keymaps/xulkal/keymap.c b/keyboards/rgbkb/sol/keymaps/xulkal/keymap.c
deleted file mode 100644
index c5bb86656a..0000000000
--- a/keyboards/rgbkb/sol/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,78 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-#ifdef PROTOCOL_LUFA
-#include "lufa.h"
-#include "split_util.h"
-#endif
-
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-
-// Define your non-alpha grouping in this define's LAYOUT, and all your BASE_LAYERS will share the same mod/macro columns
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Qwerty Layout
- * ,------------------------------------------------. ,------------------------------------------------.
- * | GESC | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 | BkSp |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * |FN(CAPS)| A | S | D | F | G | ` | | ' | H | J | K | L | ; | Enter|
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Sft[ | Z | X | C | V | B | RGB | |RGBRST| N | M | , | . | / | Sft] |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Ctl- | Win | LOWER| RAISE| Alt | Space| ENC1 | | ENC2 | Space| Left | Up | Down | Right| Ctl= |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | Space| DEL | | Enter| Space|
- * `-------------' `-------------'
- */
- [_QWERTY] = EXPAND_LAYOUT(
- _________________QWERTY_L1_________________, KC_MINS, KC_EQL, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, KC_LBRC, KC_RBRC, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, KC_GRV, KC_QUOT, _________________QWERTY_R3_________________,
- _________________QWERTY_L4_________________, RGB_TOG, RGBRST, _________________QWERTY_R4_________________,
- _________________QWERTY_L5_________________, KC_ENC1, KC_ENC2, _________________QWERTY_R5_________________,
- KC_SPC, TD_DEL, KC_ENT, KC_SPC
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = EXPAND_LAYOUT(
- ___________________GAME_L1_________________, KC_MINS, KC_EQL, ___________________GAME_R1_________________,
- ___________________GAME_L2_________________, KC_LBRC, KC_RBRC, ___________________GAME_R2_________________,
- ___________________GAME_L3_________________, KC_GRV, KC_QUOT, ___________________GAME_R3_________________,
- ___________________GAME_L4_________________, RGB_TOG, RGBRST, ___________________GAME_R4_________________,
- ___________________GAME_L5_________________, KC_ENC1, KC_ENC2, ___________________GAME_R5_________________,
- KC_SPC, KC_DEL, KC_ENT, KC_SPC
- ),
-#endif
-
- [_LOWER] = EXPAND_LAYOUT(
- __________________LOWER_L1_________________, KC_PMNS, KC_PPLS, __________________LOWER_R1_________________,
- __________________LOWER_L2_________________, _______, _______, __________________LOWER_R2_________________,
- __________________LOWER_L3_________________, _______, _______, __________________LOWER_R3_________________,
- __________________LOWER_L4_________________, _______, _______, __________________LOWER_R4_________________,
- __________________LOWER_L5_________________, _______, _______, __________________LOWER_R5_________________,
- _______, _______, _______, _______
- ),
-
- [_RAISE] = EXPAND_LAYOUT(
- __________________RAISE_L1_________________, _______, _______, __________________RAISE_R1_________________,
- __________________RAISE_L2_________________, _______, _______, __________________RAISE_R2_________________,
- __________________RAISE_L3_________________, _______, _______, __________________RAISE_R3_________________,
- __________________RAISE_L4_________________, _______, _______, __________________RAISE_R4_________________,
- __________________RAISE_L5_________________, _______, _______, __________________RAISE_R5_________________,
- _______, _______, _______, _______
- ),
-
-#ifdef TRILAYER_ENABLED
- [_ADJUST] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________,
- _______, _______, _______, _______
- ),
-#endif
-};
-
diff --git a/keyboards/rgbkb/sol/keymaps/xulkal/rules.mk b/keyboards/rgbkb/sol/keymaps/xulkal/rules.mk
deleted file mode 100644
index 9100034a72..0000000000
--- a/keyboards/rgbkb/sol/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1,24 +0,0 @@
-# Overridden build options from rev1 & rev2
-
-# RGB Options
-RGBLIGHT_ENABLE = no # Enable global lighting effects. Do not enable with RGB Matrix
-LED_MIRRORED = no # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)
-RGB_MATRIX_ENABLE = yes # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
-FULLHAND_ENABLE = no # Enables the additional 24 Full Hand LEDs
-SF_ENABLE = no # Enables the additional 38 Starfighter LEDs
-
-# Misc
-OLED_ENABLE = yes # Enable the OLED Driver
-
-# Not using the encoder for rev1
-ifeq ($(strip $(KEYBOARD)), rgbkb/sol/rev1)
- ENCODER_ENABLE = no
- RGB_OLED_MENU = no
-else
- ENCODER_ENABLE = yes
- RGB_OLED_MENU = 0
-endif
-
-# Do not edit past here
-
-include keyboards/$(KEYBOARD)/post_rules.mk
diff --git a/keyboards/rgbkb/sol3/config.h b/keyboards/rgbkb/sol3/config.h
index 3a0b61bfd5..102ebcda95 100644
--- a/keyboards/rgbkb/sol3/config.h
+++ b/keyboards/rgbkb/sol3/config.h
@@ -41,15 +41,8 @@
#endif
/* Split Transport Features */
-#define SPLIT_TRANSPORT_MIRROR
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
#define SPLIT_TRANSACTION_IDS_KB TOUCH_ENCODER_SYNC, RGB_MENU_SYNC
-/* LED Turbo DIP Switch */
-#define DIP_SWITCH_PINS { A14, B13 }
-#define DIP_SWITCH_PINS_RIGHT { A14, B0 }
-
#define RGB_MATRIX_LED_COUNT 156
#define RGB_MATRIX_SPLIT { 78, 78 }
#define RGB_MATRIX_CENTER { 81, 28 }
@@ -125,6 +118,3 @@
#define AUDIO_CLICKY
#define AUDIO_DAC_SAMPLE_WAVEFORM_SQUARE
#define AUDIO_DAC_OFF_VALUE 0
-
-#define WEAR_LEVELING_BACKING_SIZE 4096
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
diff --git a/keyboards/rgbkb/sol3/keymaps/default/config.h b/keyboards/rgbkb/sol3/keymaps/default/config.h
index 7e46726115..88bdc06dee 100644
--- a/keyboards/rgbkb/sol3/keymaps/default/config.h
+++ b/keyboards/rgbkb/sol3/keymaps/default/config.h
@@ -19,6 +19,3 @@
// 20m timeout (20m * 60s * 1000mil)
// #define RGB_MATRIX_TIMEOUT 1200000
#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-#define STM32_ONBOARD_EEPROM_SIZE 2048
-
diff --git a/keyboards/rgbkb/sol3/keymaps/kageurufu/config.h b/keyboards/rgbkb/sol3/keymaps/kageurufu/config.h
deleted file mode 100644
index b6416d9bf8..0000000000
--- a/keyboards/rgbkb/sol3/keymaps/kageurufu/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * ----------------------------------------------------------------------------
- * "THE BEER-WARE LICENSE" (Revision 42):
- * <https://github.com/kageurufu> wrote this file. As long as you retain this
- * notice you can do whatever you want with this stuff. If we meet some day, and
- * you think this stuff is worth it, you can buy me a beer in return. Frank Tackitt
- * ----------------------------------------------------------------------------
- */
-
-#pragma once
-
-// No need for the single versions when multi performance isn't a problem =D
-#define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-#define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#define DISABLE_RGB_MATRIX_SPLASH
-#define DISABLE_RGB_MATRIX_SOLID_SPLASH
-
-// 20m timeout (20m * 60s * 1000mil)
-// #define RGB_MATRIX_TIMEOUT 1200000
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-
-#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2
-// 224B per layer right now
-#define DYNAMIC_KEYMAP_LAYER_COUNT 8
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047
-
-#define STM32_ONBOARD_EEPROM_SIZE 2048
-
diff --git a/keyboards/rgbkb/sol3/keymaps/kageurufu/keymap.c b/keyboards/rgbkb/sol3/keymaps/kageurufu/keymap.c
deleted file mode 100644
index 0f92110ff4..0000000000
--- a/keyboards/rgbkb/sol3/keymaps/kageurufu/keymap.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * ----------------------------------------------------------------------------
- * "THE BEER-WARE LICENSE" (Revision 42):
- * <https://github.com/kageurufu> wrote this file. As long as you retain this
- * notice you can do whatever you want with this stuff. If we meet some day, and
- * you think this stuff is worth it, you can buy me a beer in return. Frank Tackitt
- * ----------------------------------------------------------------------------
- */
-
-#include QMK_KEYBOARD_H
-#include "kageurufu.h"
-
-extern keymap_config_t keymap_config;
-
-/* Base Layout
- * ,------------------------------------------------. ,------------------------------------------------.
- * | ` | | | | | | | | | | | | | | BkSp |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Tab | | | | | | | | | | | | | | \ |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Esc | | | | | | | | | | | | | | ' |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Sft( | | | | | | | | | | | | | | Sft) |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Ctrl | Win | Win | Alt | FN | Space| RGB | | FN | FN | - | = | Down | PgUp | PgDn |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Space| Bksp | | Enter| Space|
- * `-------------' `--------=----'
- */
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__, \
- KC_MNXT, KC_MPLY, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY, KC_MPRV, KC_VOLD, KC_VOLU )
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = EXPAND_LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, RGB_MOD, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_TAB, _________________QWERTY_L1_________________, KC_LBRC, KC_RBRC, _________________QWERTY_R1_________________, KC_BSLS,
- FN_ESC, _________________QWERTY_L2_________________, RGB_SAI, RGB_VAI, _________________QWERTY_R2_________________, KC_QUOT,
- SC_LSPO, _________________QWERTY_L3_________________, RGB_SAD, RGB_VAD, _________________QWERTY_R3_________________, SC_RSPC,
- KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, KC_MUTE, KC_BSPC, KC_ENT, FN, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN
- ),
-
- [_FN] = EXPAND_LAYOUT(
- ________________FUNCTION_L1________________, _______, KC_PSCR, ________________FUNCTION_R1________________,
- ________________FUNCTION_L2________________, _______, _______, ________________FUNCTION_R2________________,
- ________________FUNCTION_L3________________, _______, _______, ________________FUNCTION_R3________________,
- ________________FUNCTION_L4________________, _______, _______, ________________FUNCTION_R4________________,
- ________________FUNCTION_L5________________, ADJ, KC_DEL, _______, ADJ, ________________FUNCTION_R5________________
- ),
-
- [_ADJ] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _______, _______, _______, _______, _________________ADJUST_R5_________________
-
- )
-
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU),
- ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
- [1 ... 4] = { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______),
- ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) }
-};
-#endif
diff --git a/keyboards/rgbkb/sol3/keymaps/via/config.h b/keyboards/rgbkb/sol3/keymaps/via/config.h
index ff1ff77472..7b7f806261 100644
--- a/keyboards/rgbkb/sol3/keymaps/via/config.h
+++ b/keyboards/rgbkb/sol3/keymaps/via/config.h
@@ -25,6 +25,3 @@
// 224B per layer right now
#define DYNAMIC_KEYMAP_LAYER_COUNT 8
#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047
-
-#define STM32_ONBOARD_EEPROM_SIZE 2048
-
diff --git a/keyboards/rgbkb/sol3/rev1/info.json b/keyboards/rgbkb/sol3/rev1/info.json
index b80161995f..c76e1f84dc 100644
--- a/keyboards/rgbkb/sol3/rev1/info.json
+++ b/keyboards/rgbkb/sol3/rev1/info.json
@@ -37,6 +37,14 @@
"io_delay": 5
},
"diode_direction": "COL2ROW",
+ "dip_switch": {
+ "pins": ["A14", "B13"]
+ },
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"encoder": {
"rotary": [
{"pin_a": "A1", "pin_b": "A2"},
@@ -45,6 +53,11 @@
]
},
"split": {
+ "dip_switch": {
+ "right": {
+ "pins": ["A14", "B0"]
+ }
+ },
"soft_serial_pin": "A9",
"encoder": {
"right": {
@@ -60,6 +73,13 @@
"cols": ["B9", "B8", "B4", "A6", "A3", "B10", "B12", "B11"],
"rows": ["B15", "B14", "A8", "A13", "A7", null]
}
+ },
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true
+ }
}
},
"qmk": {
diff --git a/keyboards/rgbkb/sol3/rules.mk b/keyboards/rgbkb/sol3/rules.mk
index 9cb54cfa15..227219e302 100644
--- a/keyboards/rgbkb/sol3/rules.mk
+++ b/keyboards/rgbkb/sol3/rules.mk
@@ -2,7 +2,7 @@
VPATH += keyboards/rgbkb/common
SRC += touch_encoder.c
SRC += common_oled.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
# Build Options
# change yes to no to disable
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/333fred/config.h b/keyboards/rgbkb/zen/rev1/keymaps/333fred/config.h
deleted file mode 100644
index 016aeb1c56..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/333fred/config.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#pragma once
-
-
-/* Select hand configuration */
-//#define MASTER_LEFT
-#define EE_HANDS
-
-#undef RGBLED_NUM
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
-#define RGBLED_NUM 16
-#define RGBLIGHT_HUE_STEP 8
-#define RGBLIGHT_SAT_STEP 8
-#define RGBLIGHT_VAL_STEP 8
-
-#undef TAPPING_TERM
-#define TAPPING_TERM 150
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/333fred/keymap.c b/keyboards/rgbkb/zen/rev1/keymaps/333fred/keymap.c
deleted file mode 100644
index de8e9dd67c..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-#include "333fred.h"
-
-extern keymap_config_t keymap_config;
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------. .-----------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Esc | A | S | D | F | G | | H | J | K | L | ; | " |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | | N | M | , | . | / |SHIFT |
- * |------+------+------+------+------+------+------..-----+------+------+------+------+------+------|
- * | Ctrl | F4 | F5 | GUI | Alt | Bksp |Lwr/VM||Enter|Space | NAV | - | = | Alt | Del |
- * `------------------------------------------------''-----------------------------------------------'
- */
-[BASE] = LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- OSM(MOD_LSFT), LCTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT) ,
- KC_LCTL, KC_F4, KC_F5, KC_LGUI, KC_LALT, KC_BSPC, TD(TD_SYM_VIM), KC_ENT, KC_SPACE, OSL(VIM), KC_MINS, KC_EQL, KC_RALT, KC_DEL
-),
-
-/* Symbols
- * ,-----------------------------------------. .-----------------------------------------.
- * | Caps | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | ! | @ | ( | ) | | | | 7 | 8 | 9 | * | ) | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | # | $ | { | } | ` | | 4 | 5 | 6 | + | } | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | APscr| % | ^ | [ | ] | ~ | | 1 | 2 | 3 | \ | Vol- | Vol+ |
- * |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
- * | Pscr | | QK_BOOT| | | GAME | || | 0 | . | = | Prev | Next | Play |
- * `------------------------------------------------- -------------------------------------------------'
- */
-[SYMB] = LAYOUT(
- KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, KC_7, KC_8, KC_9, KC_ASTR, KC_RPRN, KC_F12,
- _______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, KC_4, KC_5, KC_6, KC_PLUS, KC_RCBR, KC_PIPE,
- PSCREEN_APP, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS, KC_VOLD, KC_VOLU,
- KC_PSCR, _______, QK_BOOT, _______, _______, TO(GAME), _______, _______, KC_0, KC_DOT, KC_EQL, KC_MPRV, KC_MNXT, KC_MPLY
-),
-
-/* Vim Movement
- * ,-----------------------------------------. .-----------------------------------------.
- * | | | | | | | | | | | | QK_BOOT| |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | |RGBSAI|RGBVAI|RGBSAD| LSFT | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | DLeft|DRight| LCTRL| LGUI | | | Left | Down | Up | Right| | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | |RGBHUD|RGBVAD|RGBHUI| | | | | | | | | |
- * |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
- * | | | | | | | || | | | | | | |
- * `------------------------------------------------..------------------------------------------------'
- */
-[VIM] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______,
- _______, RGB_SAI, RGB_VAI, RGB_SAD, KC_LSFT, _______, _______, _______, _______, _______, _______, _______,
- _______, DLEFT, DRIGHT, KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),
-
-/* Gaming mode (Raise)
- * All one-shot mods are disabled on this layer
- * ,-----------------------------------------. .-----------------------------------------.
- * | ESC | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | CTRL | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| Z | | | | | | | | | | | GUI |
- * |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
- * | Enter| | Lock | Bksp | Alt | Spc | QK_BOOT|| | Lower| Left | Up | Down | Right|QWERTY|
- * `------------------------------------------------..-----------------------------------------------'
- */
-[GAME] = LAYOUT(
- KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LSFT, KC_Z, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LGUI,
- KC_ENT, TG(GAME_ARROW), QK_LOCK, KC_BSPC, KC_F5, KC_LALT, KC_SPC, OSL(SYMB), KC_F6, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, TO(BASE)
-),
-/* Gaming Arrow mode (Raise)
- * Turns wasd into arrows
- * ,-----------------------------------------. .-----------------------------------------.
- * | ESC | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | | | Up | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | CTRL | Left | Down | Right| | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Shift| Z | | | | | | | | | | | GUI |
- * |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
- * | Enter| | Lock | Bksp | Alt | Spc | QK_BOOT|| | Lower| Left | Up | Down | Right|QWERTY|
- * `------------------------------------------------..-----------------------------------------------'
- */
-[GAME_ARROW] = LAYOUT(
- KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_LSFT, KC_Z, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LGUI,
- KC_ENT, _______, QK_LOCK, KC_BSPC, KC_F5, KC_LALT, KC_SPC, OSL(SYMB), KC_F6, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, TO(BASE)
-)
-};
-
-void persistant_default_layer_set(uint16_t default_layer) {
- eeconfig_update_default_layer(default_layer);
- default_layer_set(default_layer);
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- tap_dance_process_keycode(keycode);
- return true;
-}
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/333fred/rules.mk b/keyboards/rgbkb/zen/rev1/keymaps/333fred/rules.mk
deleted file mode 100644
index a5b4454073..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/333fred/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-RGBLIGHT_ENABLE = yes
-KEY_LOCK_ENABLE = yes
-CONSOLE_ENABLE = no
-LTO_ENABLE = yes
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/config.h b/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/config.h
deleted file mode 100644
index e4ece8082b..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2020 Casey Webster <casey@e1337.dev>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define EE_HANDS
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/keymap.c b/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/keymap.c
deleted file mode 100644
index 7001395669..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/keymap.c
+++ /dev/null
@@ -1,116 +0,0 @@
-/* Copyright 2020 Casey Webster <casey@e1337.dev>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "rev1.h"
-#include "cwebster2.h"
-
-#define LAYOUT_zen_base( \
- L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, \
- L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, \
- L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, \
- L33, L34, L35, R35, R34, R33 \
- ) \
- LAYOUT_zen_wrapper ( \
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, \
- KC_GRV, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, KC_BSLS, \
- KC_CTLBS, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, KC_QUOT, \
- KC_EQL, L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, KC_MINS, \
- KC_LCCL, KC_LGUI, SCMD_T(KC_LBRC), C_S_T(KC_MINS), L33, L34, L35, R35, R34, R33, TO(_GAME), KC_PSCR, KC_ALTCL, KC_LSFT \
- )
-#define LAYOUT_zen_base_wrapper(...) LAYOUT_zen_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * Base Layer: QWERTY
- */
- [_QWERTY] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______QWERTY_L1______, _______QWERTY_R1______,
- _______QWERTY_L2______, _______QWERTY_R2______,
- _______QWERTY_L3______, _______QWERTY_R3______,
- _______THUMBS_L_______, _______THUMBS_R_______
- /* `---------------------' `---------------------' */
- ),
- [_COLEMAK] = LAYOUT_zen_wrapper(
- /* ,-----------------------. ,-----------------------. */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
- KC_GRV, _______COLEMAK_L1_____, _______COLEMAK_R1_____, KC_BSLS,
- KC_CTLBS, _______COLEMAK_L2_____, _______COLEMAK_R2_____, KC_SCLN,
- KC_EQL, _______COLEMAK_L3_____, _______COLEMAK_R3_____, KC_MINS,
- KC_LCCL, KC_LGUI, SCMD_T(KC_LBRC), C_S_T(KC_MINS), _______THUMBS_L_______, _______THUMBS_R_______, TO(_QWERTY), KC_PSCR, KC_ALTCL, KC_LSFT
- /* `---------------------' `---------------------' */
- ),
- // GAME layout -- qwerty without homerow mods
- [_GAME] = LAYOUT_zen_wrapper(
- /* ,-------------------------------------------. ,-------------------------------------------. */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
- KC_GRV, _______QWERTY_L1______, _______QWERTY_R1______, KC_BSLS,
- KC_CTLBS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_EQL, _______QWERTY_L3______, _______QWERTY_R3______, KC_MINS,
- KC_LCCL, KC_LGUI, SCMD_T(KC_LBRC), C_S_T(KC_MINS), _______THUMBS_L_______, _______THUMBS_R_______, TO(_COLEMAK), KC_PSCR, KC_ALTCL, KC_LSFT
- /* `----------------------------------' `----------------------------------' */
- ),
- [_FN] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______FN_______L1____, _______INACTIVE_R1____,
- _______FN_______L2____, _______INACTIVE_R2____,
- _______FN_______L3____, _______NAV______R2____,
- _______FN________T____, _______INACTIVE__T____
- /* `---------------------' `---------------------' */
- ),
- [_SYMBOLS] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______SYM______L1____, _______INACTIVE_R1____,
- _______SYM______L2____, _______INACTIVE_R2____,
- _______SYM______L3____, _______INACTIVE_R3____,
- _______SYM_______T____, _______INACTIVE__T____
- /* `---------------------' `---------------------' */
- ),
- [_NUM] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______NUM______L1____, _______INACTIVE_R1____,
- _______NUM______L2____, _______INACTIVE_R2____,
- _______NUM______L3____, _______INACTIVE_R3____,
- _______NUM_______T____, _______INACTIVE__T____
- /* `---------------------' `---------------------' */
- ),
- [_NAV] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______INACTIVE_L1____, _______NAV______R1____,
- _______INACTIVE_L2____, _______NAV______R2____,
- _______INACTIVE_L3____, _______NAV______R3____,
- _______INACTIVE__T____, _______NAV_______T____
- /* `---------------------' `---------------------' */
- ),
- [_MOUSE] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______INACTIVE_L1____, _______MOUSE____R1____,
- _______INACTIVE_L2____, _______MOUSE____R2____,
- _______INACTIVE_L3____, _______MOUSE____R3____,
- _______INACTIVE__T____, _______MOUSE_____T____
- /* `---------------------' `---------------------' */
- ),
- [_MEDIA] = LAYOUT_zen_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______INACTIVE_L1____, _______MEDIA____R1____,
- _______INACTIVE_L2____, _______MEDIA____R2____,
- _______INACTIVE_L3____, _______MEDIA____R3____,
- _______INACTIVE__T____, _______MEDIA_____T____
- /* `---------------------' `---------------------' */
- ),
-};
-
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/rules.mk b/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/rules.mk
deleted file mode 100644
index 632a5f610d..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/cwebster2/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = no
-RAW_ENABLE = yes
diff --git a/keyboards/rgbkb/zen/rev1/keymaps/kageurufu/keymap.c b/keyboards/rgbkb/zen/rev1/keymaps/kageurufu/keymap.c
deleted file mode 100644
index fe974e4248..0000000000
--- a/keyboards/rgbkb/zen/rev1/keymaps/kageurufu/keymap.c
+++ /dev/null
@@ -1,62 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "kageurufu.h"
-#ifdef PROTOCOL_LUFA
- #include "lufa.h"
- #include "split_util.h"
-#endif
-
-extern keymap_config_t keymap_config;
-extern uint8_t is_master;
-
-
-#define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__)
-#define _BASE_LAYOUT( \
- _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \
- _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \
- _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \
-) \
-EXPAND_LAYOUT( \
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
- KC_TAB, _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, KC_BSLS, \
- FN_ESC, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, KC_QUOT, \
- SC_LSPO, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, SC_RSPC, \
- KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN \
-)
-#define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = BASE_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_COLEMAK] = BASE_LAYOUT(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_COLEMAK_DH] = BASE_LAYOUT(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
-
- [_FN] = EXPAND_LAYOUT(
- ________________FUNCTION_L1________________, ________________FUNCTION_R1________________,
- ________________FUNCTION_L2________________, ________________FUNCTION_R2________________,
- ________________FUNCTION_L3________________, ________________FUNCTION_R3________________,
- ________________FUNCTION_L4________________, ________________FUNCTION_R4________________,
- ________________FUNCTION_L5________________, _______, KC_DEL, ________________FUNCTION_R5________________
- ),
-
- [_ADJ] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________
- )
-};
diff --git a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/config.h b/keyboards/rgbkb/zygomorph/keymaps/kageurufu/config.h
deleted file mode 100644
index dc06487ce8..0000000000
--- a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// place overrides here
-
diff --git a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/keymap.c b/keyboards/rgbkb/zygomorph/keymaps/kageurufu/keymap.c
deleted file mode 100644
index 984a829735..0000000000
--- a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/keymap.c
+++ /dev/null
@@ -1,85 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "kageurufu.h"
-
-#ifdef PROTOCOL_LUFA
-#include "lufa.h"
-#include "split_util.h"
-#endif
-
-#define FN_CAPS LT(_FN, KC_CAPS)
-
-// Define your non-alpha grouping in this define's LAYOUT, and all your BASE_LAYERS will share the same mod/macro columns
- /* / Base Layout \
- * /-----------------------------------------\ /-----------------------------------------\
- * | GESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BkSp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | | | | | | | | | | | | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |FNCAPS| | | | | | | | | | | | ' |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |Shift | | | | | | | | | | | |Shift |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctrl | Win | Alt | RGB | ADJ | Space| | Space| FN | Left | Down | Up |Right |
- * \------+------+------+------+------+------/ \------+------+------+------+------+------/
- */
-#define EXPAND_LAYOUT(...) LAYOUT_ortho_5x12(__VA_ARGS__)
-#define _BASE_LAYOUT( \
- _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \
- _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \
- _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \
-) \
-EXPAND_LAYOUT( \
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \
- KC_TAB, _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, KC_BSLS, \
- FN_CAPS, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, KC_QUOT, \
- KC_LSFT, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, KC_ENT, \
- KC_LCTL, KC_LGUI, KC_LALT, RGB_TOG, ADJ, KC_SPC, KC_SPC, FN, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT \
-)
-#define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = BASE_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_COLEMAK] = BASE_LAYOUT(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_FN] = EXPAND_LAYOUT(
- ________________FUNCTION_L1________________, ________________FUNCTION_R1________________,
- ________________FUNCTION_L2________________, ________________FUNCTION_R2________________,
- ________________FUNCTION_L3________________, ________________FUNCTION_R3________________,
- ________________FUNCTION_L4________________, ________________FUNCTION_R4________________,
- ________________FUNCTION_L5________________, ________________FUNCTION_R5________________
- ),
-
- [_ADJ] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _________________ADJUST_R5_________________
- )
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) { /* First encoder */
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- } else if (index == 1) { /* Second encoder from slave */
- if (clockwise) {
- tap_code(KC_UP);
- } else {
- tap_code(KC_DOWN);
- }
- }
- return true;
-}
diff --git a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/readme.md b/keyboards/rgbkb/zygomorph/keymaps/kageurufu/readme.md
deleted file mode 100644
index 35148c3b01..0000000000
--- a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/readme.md
+++ /dev/null
@@ -1,132 +0,0 @@
-# The Default Zygomorph Layout
-## Layout
-
-### Base modifier layout
-```
- * ,------------------------------------------------. ,------------------------------------------------.
- * | GESC | | | | | | - | | = | | | | | | BkSp |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | Tab | | | | | | [ | | ] | | | | | | \ |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * |FN(CAPS)| | | | | | ( | | ) | | | | | | ' |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * |Shift | | | | | | { | | } | | | | | |Shift |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | Ctrl | Win | Alt | RGB | ADJ | Space| DEL | | Enter| Space| FN | Left | Down | Up |Right |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | Space| DEL | | Enter| Space|
- * `-------------' `-------------'
-```
-
-### Qwerty alphas
-```
- * ,------------------------------------------------. ,------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | Q | W | E | R | T | | | | Y | U | I | O | P | |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | A | S | D | F | G | | | | H | J | K | L | ; | |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | Z | X | C | V | B | | | | N | M | , | . | / | |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | | |
- * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | | | | | |
- * `-------------' `-------------'
-```
-
-### Colemak alphas
-```
- * ,------------------------------------------------. ,------------------------------------------------.
- * | | | | | | | | | | | | | | | |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | Q | W | F | P | B | | | | J | L | U | Y | ; | |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | A | R | S | T | G | | | | K | N | E | I | O | |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | Z | X | C | D | V | | | | M | H | , | . | / | |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | | |
- * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | | | | | |
- * `-------------' `-------------'
-```
-
-### Function (FN)
-```
- * ,------------------------------------------------. ,------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | | | | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | PGDN | UP | PGUP | | | | | | | PGDN | UP | PGUP | PRINT| HOME |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | LEFT | DOWN | RIGHT| | | | | | | LEFT | DOWN | RIGHT|INSERT| END |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | | | | | | | | | | | | | | |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | | |RGBMOD| | | | | | | PLAY | NEXT | MUTE | VOL- | VOL+ |
- * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | | | | | |
- * `-------------' `-------------'
-```
-
-### Adjust (ADJ)
-```
- * ,------------------------------------------------. ,------------------------------------------------.
- * | F1 | F2 | F3 | F4 | F5 | F6 | | | | F7 | F8 | F9 | F10 | F11 | F12 |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | SAD | VAI | SAI | RESET| | | | | | | | | | |
- * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------|
- * | | HUD | VAD | HUI |RGBRST| | | | | |QWERTY|COLEMK| | | |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | | | | | | | | | | |RGBTOG| HUI | SAI | VAI |
- * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
- * | | | |RGBMOD| | | | | | | |RGBSMOD| HUD | SAD | VAD |
- * `------+------+------+------+------+------+------| |------+------+------+------+------+------+------'
- * | | | | | |
- * `-------------' `-------------'
-```
-
-## Customize
-
-see `qmk_firmware/keyboards/sol/rev1/keymaps/default/rules.mk`
-
-```
-
-# Variables you can set for SOL
-
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = yes # Console for debug(+400)
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix
-LED_ANIMATIONS = yes # LED animations
-RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight (+8500)
-RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects. Can be very laggy (+1500)
-RGBLIGHT_FULL_POWER = no # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port
-UNICODE_ENABLE = no # Unicode
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-ENCODER_ENABLE_CUSTOM = yes # Enable rotary encoder (+90)
-
-OLED_ENABLE = no # OLED_ENABLE (+5000)
-IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone)
-
-
-```
-## Compile
-
-go to qmk top directory.
-```
-$ cd qmk_firmware
-```
-
-build
-```
-$ make rgbkb/sol:default
-```
-
-After the initial flash with AVRdudess, you should be able to flash using this:
-```
-$ make rgbkb/sol:default:dfu
-```
diff --git a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/rules.mk b/keyboards/rgbkb/zygomorph/keymaps/kageurufu/rules.mk
deleted file mode 100644
index b95d2edaaa..0000000000
--- a/keyboards/rgbkb/zygomorph/keymaps/kageurufu/rules.mk
+++ /dev/null
@@ -1,39 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix
-RGBLIGHT_SPLIT_ENABLE = no # Split RGBLight Support
-RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
-RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects.
-RGBLIGHT_FULL_POWER = yes # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port
-UNICODE_ENABLE = no # Unicode
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-ENCODER_ENABLE = yes # Enable rotary encoder
-OLED_ENABLE = no # Enable the OLED Driver
-IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone)
-
-# Do not edit past here
-
-ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
- OPT_DEFS += -DIOS_DEVICE_ENABLE
-else ifeq ($(strip $(RGBLIGHT_FULL_POWER)), yes)
- OPT_DEFS += -DRGBLIGHT_FULL_POWER
-endif
-
-ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes)
- OPT_DEFS += -DRGB_MATRIX_KEYPRESSES
-endif
-
-ifeq ($(strip $(RGBLIGHT_SPLIT_ENABLE)), yes)
- OPT_DEFS += -DRGBLIGHT_SPLIT_ENABLE
-endif
-
-# Link time optimization, should save on firmware size
-LTO_ENABLE = yes
diff --git a/keyboards/rgbkb/zygomorph/keymaps/xulkal/keymap.c b/keyboards/rgbkb/zygomorph/keymaps/xulkal/keymap.c
deleted file mode 100644
index 74c4c0cf50..0000000000
--- a/keyboards/rgbkb/zygomorph/keymaps/xulkal/keymap.c
+++ /dev/null
@@ -1,69 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "xulkal.h"
-
-#ifdef PROTOCOL_LUFA
-#include "lufa.h"
-#include "split_util.h"
-#endif
-
-#define EXPAND_LAYOUT(...) LAYOUT_ortho_5x12(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- /* / QWERTY \
- * /-----------------------------------------\ /-----------------------------------------\
- * | GESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BkSp |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |FN(CAPS)| A | S | D | F | G | | H | J | K | L | ; | Enter|
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Sft[ | Z | X | C | V | B | | N | M | , | . | / | Sft] |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Ctl- | Win | LOWER| RAISE| Alt | Space| | Space| Left | Up | Down | Right| Ctl= |
- * \------+------+------+------+------+------/ \------+------+------+------+------+------/
- */
- [_QWERTY] = EXPAND_LAYOUT(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________,
- _________________QWERTY_L4_________________, _________________QWERTY_R4_________________,
- _________________QWERTY_L5_________________, _________________QWERTY_R5_________________
- ),
-
-#ifndef GAMELAYER_DISABLE
- [_GAME] = EXPAND_LAYOUT(
- ___________________GAME_L1_________________, ___________________GAME_R1_________________,
- ___________________GAME_L2_________________, ___________________GAME_R2_________________,
- ___________________GAME_L3_________________, ___________________GAME_R3_________________,
- ___________________GAME_L4_________________, ___________________GAME_R4_________________,
- ___________________GAME_L5_________________, ___________________GAME_R5_________________
- ),
-#endif
-
- [_LOWER] = EXPAND_LAYOUT(
- __________________LOWER_L1_________________, __________________LOWER_R1_________________,
- __________________LOWER_L2_________________, __________________LOWER_R2_________________,
- __________________LOWER_L3_________________, __________________LOWER_R3_________________,
- __________________LOWER_L4_________________, __________________LOWER_R4_________________,
- __________________LOWER_L5_________________, __________________LOWER_R5_________________
- ),
-
- [_RAISE] = EXPAND_LAYOUT(
- __________________RAISE_L1_________________, __________________RAISE_R1_________________,
- __________________RAISE_L2_________________, __________________RAISE_R2_________________,
- __________________RAISE_L3_________________, __________________RAISE_R3_________________,
- __________________RAISE_L4_________________, __________________RAISE_R4_________________,
- __________________RAISE_L5_________________, __________________RAISE_R5_________________
- ),
-
-#ifdef TRILAYER_ENABLED
- [_ADJUST] = EXPAND_LAYOUT(
- _________________ADJUST_L1_________________, _________________ADJUST_R1_________________,
- _________________ADJUST_L2_________________, _________________ADJUST_R2_________________,
- _________________ADJUST_L3_________________, _________________ADJUST_R3_________________,
- _________________ADJUST_L4_________________, _________________ADJUST_R4_________________,
- _________________ADJUST_L5_________________, _________________ADJUST_R5_________________
- ),
-#endif
-};
diff --git a/keyboards/rgbkb/zygomorph/keymaps/xulkal/rules.mk b/keyboards/rgbkb/zygomorph/keymaps/xulkal/rules.mk
deleted file mode 100644
index 69d469b1e9..0000000000
--- a/keyboards/rgbkb/zygomorph/keymaps/xulkal/rules.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-# Build Options
-# change to "no" to disable the options, or define them in the Makefile in
-# the appropriate keymap folder that will get included automatically
-#
-
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-RGBLIGHT_ENABLE = no # Enable global lighting effects. Do not enable with RGB Matrix
-RGBLIGHT_SPLIT_ENABLE = no # Split RGBLight Support
-RGB_MATRIX_ENABLE = yes # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
-RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects.
-SPLIT_RGB_MATRIX_ENABLE = yes # For split RGB Matrix support
-RGBLIGHT_FULL_POWER = yes # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port
-UNICODE_ENABLE = no # Unicode
-SWAP_HANDS_ENABLE = no # Enable one-hand typing
-ENCODER_ENABLE = no # Enable rotary encoder
-OLED_ENABLE = no # Enable the OLED Driver
-IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone)
-LTO_ENABLE = no # Enable optimizations to reduce firmware size. Also disables action macros and functions.
-
-# Do not edit past here
-
-ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
- OPT_DEFS += -DIOS_DEVICE_ENABLE
-else ifeq ($(strip $(RGBLIGHT_FULL_POWER)), yes)
- OPT_DEFS += -DRGBLIGHT_FULL_POWER
-endif
-
-ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes)
- OPT_DEFS += -DRGB_MATRIX_KEYPRESSES
-endif
-
-ifeq ($(strip $(RGBLIGHT_SPLIT_ENABLE)), yes)
- OPT_DEFS += -DRGBLIGHT_SPLIT_ENABLE
-endif
-
-ifeq ($(strip $(SPLIT_RGB_MATRIX_ENABLE)), yes)
- OPT_DEFS += -DSPLIT_TRANSPORT_MIRROR
-endif
diff --git a/keyboards/riot_pad/config.h b/keyboards/riot_pad/config.h
index 97dcb1de3c..4c5de878dc 100644
--- a/keyboards/riot_pad/config.h
+++ b/keyboards/riot_pad/config.h
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define WS2812_SPI SPID1
+#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN A5
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h b/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h
deleted file mode 100644
index 1742af4c5c..0000000000
--- a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h
+++ /dev/null
@@ -1,9 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-/* Select hand configuration */
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/keymap.c
deleted file mode 100644
index 9aa079804f..0000000000
--- a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/keymap.c
+++ /dev/null
@@ -1,68 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-enum layer_number {
- _1 = 0,
- _3,
- _4,
- _7,
-};
-
-enum custom_keycodes {
- RGB_RST = SAFE_RANGE
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_1] = LAYOUT( /* KOY */
- KC_ESC, KC_K, KC_DOT, KC_O, KC_COMM, N_Y, KC_V, KC_G, KC_C, KC_L, N_SS, N_Z,
- MO(_3), KC_H, KC_A, KC_E, KC_I, KC_U, KC_D, KC_T, KC_R, KC_N, KC_S, KC_F,
- KC_LSFT, KC_X, KC_Q, N_AE, N_UE, N_OE, KC_B, KC_P, KC_W, KC_M, KC_J, KC_RSFT,
- KC_LCTL, MO(_4), KC_HOME, KC_LALT, KC_ENTER, N_COPY, N_PASTE, KC_SPC, MO(_4), KC_RCTL, KC_TRNS, MO(_7)
- ),
-
- [_3] = LAYOUT( /* Layer 3 */
- KC_ESC, N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC, N_EXKL, N_LT, N_GT, N_EQ, N_AMP, KC_TRNS,
- KC_TRNS, N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR, N_QUES, N_LPARN, N_RPARN, N_MINS, N_COLN, N_AT,
- KC_LSFT, N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE, N_PLUS, N_PERC, N_QUOT, N_SING, N_SEMI, KC_RSFT,
- KC_LCTL, KC_TRNS, KC_HOME, KC_LALT, KC_ENTER, N_COPY, N_PASTE, KC_SPC, KC_TRNS, KC_RCTL, KC_TRNS, KC_TRNS
- ),
-
- [_4] = LAYOUT( /* Layer 4 */
- KC_ESC, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN, KC_KP_SLASH, KC_7, KC_8, KC_9, KC_KP_MINUS, KC_TRNS,
- KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_KP_ASTERISK, KC_4, KC_5, KC_6, KC_KP_PLUS, KC_TRNS,
- KC_LSFT, KC_ESC, KC_TAB, KC_INS, KC_SPC, N_UNDO, KC_KP_ENTER, KC_1, KC_2, KC_3, KC_KP_DOT, KC_RSFT,
- KC_LCTL, KC_TRNS, KC_HOME, KC_LALT, KC_ENTER, N_COPY, N_PASTE, KC_0, KC_RCTL, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [_7] = LAYOUT( /* Layer 7 */
- KC_ESC, KC_MS_WH_UP, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_WH_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TRNS, KC_MS_ACCEL0, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LSFT, KC_MS_ACCEL1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI,
- KC_LCTL, KC_TRNS, KC_HOME, KC_LALT, KC_ENTER, N_COPY, N_PASTE, KC_SPC, KC_TRNS, KC_RCTL, KC_TRNS, KC_TRNS
- )
-
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
-#ifdef RGBLIGHT_ENABLE
- case RGB_RST:
- if (record->event.pressed) {
- eeconfig_update_rgblight_default();
- rgblight_enable();
- }
- break;
-#endif
- }
- return true;
-}
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/readme.md b/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/readme.md
deleted file mode 100644
index a28ad8c52c..0000000000
--- a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/readme.md
+++ /dev/null
@@ -1,37 +0,0 @@
-# The default keymap for naked48
-
-## Default
-| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
-|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|
-| TAB | Q| W| E| R| T| | | Y| U| I| O| P| BSPC|
-| ESC | A| S| D| F| G| | | H| J| K| L| ;| '|
-| LSFT | Z| X| C| V| B| | | N| M| ,| .| /| ENT|
-| |ADJUST| LCTRL| LALT| LGUI| LOWER| SPC| SPC| RAISE| LEFT| DOWN| UP| RIGHT| |
-
-
-## Lower
-| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
-|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|
-| ~| !| @| #| $| %| | | ^| &| *| (| )| DEL|
-| ESC| F1| F2| F3| F4| F5| | | F6| _| +| {| }| PIPE|
-| LSFT| F7| F8| F9| F10| F11| | | F12| SNUHS| SNUBS| ,| .| ENT|
-| |ADJUST| LCTRL| LALT| LGUI| LOWER| SPC| SPC| RAISE| MNXT| VOLD| VOLU| MPLY| |
-
-
-## Raise
-| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
-|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|
-| ~| 1| 2| 3| 4| 5| | | 6| 7| 8| 9| 0| DEL|
-| DEL| F1| F2| F3| F4| F5| | | F6| -| =| [| ]| BSLS|
-| LSFT| F7| F8| F9| F10| F11| | | F12| NUHS| NUBS| ,| .| ENT|
-| |ADJUST| LCTRL| LALT| LGUI| LOWER| SPC| SPC| RAISE| MNXT| VOLD| VOLU| MPLY| |
-
-
-## Adjust
-| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
-|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|:------:|:------:|:------:|:------:|:-------:|:------:|
-| ~| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | RGB_RST| XXXXX| XXXXX| XXXXX| XXXXX| DEL|
-| ESC| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | RGB_TOG| RGB_MOD| XXXXX| C+A+D| Alt+PSCR| PSCR|
-| LSFT| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | RGB_VAD| RGB_VAI| RGB_HUD| RGB_HUI| RGB_SAD| RGB_SAI|
-| |ADJUST| LCTRL| LALT| LGUI| LOWER| RESET| RESET| RAISE| MNXT| VOLD| VOLU| MPLY| |
-
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/rules.mk b/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/rules.mk
deleted file mode 100644
index 0b64091e58..0000000000
--- a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-# Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-AUTO_SHIFT_ENABLE = yes
-
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h b/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h
deleted file mode 100644
index 5cb4da0133..0000000000
--- a/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2018 Salicylic_acid3
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-
-
-/* Select hand configuration */
-
-#define QUICK_TAP_TERM 0
-#define TAPPING_TERM 200
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/333fred/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/333fred/keymap.c
deleted file mode 100644
index 83a6154fb1..0000000000
--- a/keyboards/salicylic_acid3/naked60/keymaps/333fred/keymap.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- Copyright (c) 2020 Fred Silberberg
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-*/
-
-#include QMK_KEYBOARD_H
-#include "333fred.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT(
- //,--------------------------------------------------------------------| |---------------------------------------------------------.
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
- //|--------------+------------+------+--------+--------+---------------| |-------+--------+--------+-------+--------+--------------|
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- //|--------------+------------+------+--------+--------+---------------| |-------+--------+--------+-------+--------+--------------|
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- //|--------------+------------+------+--------+--------+---------------| |-------+--------+--------+-------+--------+--------------|
- OSM(MOD_LSFT), CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT),
- //|--------------+------------+------+--------+--------+---------------+-------+-------+-------+--------+--------+-------+--------+--------------|
- KC_F4, KC_F5, KC_LALT, KC_BSPC, TD(TD_SYM_VIM), KC_DEL, KC_ENT, KC_SPC, KC_DOWN, KC_UP, KC_EQL, KC_LGUI
- //`----------------------------------------------------------------------------------------------------------------'
- ),
-
-
- [SYMB] = LAYOUT(
- //,-----------------------------------------------------| |-----------------------------------------------------.
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+-------+--------+--------|
- _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, _______, KC_7, KC_8, KC_9, _______, KC_F12,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+-------+--------+--------|
- _______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, KC_VOLU, KC_4, KC_5, KC_6, _______, _______,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+-------+--------+--------|
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_VOLD, KC_1, KC_2, KC_3, _______, _______,
- //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------+--------|
- _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_0, KC_ENT, _______
- //`------------------------------------------------------------------------------------------------------------'
- ),
-
-
- [VIM] = LAYOUT( /* Base */
- //,-----------------------------------------------------| |-----------------------------------------------------.
- _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, KC_LSFT, _______, _______, _______, _______, _______, _______, _______,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- _______, DLEFT, DRIGHT, KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______,
- //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- //`------------------------------------------------------------------------------------------------------------'
- )
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- tap_dance_process_keycode(keycode);
- return !try_handle_macro(keycode, record);
-}
diff --git a/keyboards/satt/comet46/rules.mk b/keyboards/satt/comet46/rules.mk
index fe692cc5c3..0db5166ffa 100644
--- a/keyboards/satt/comet46/rules.mk
+++ b/keyboards/satt/comet46/rules.mk
@@ -14,4 +14,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/satt/vision/keymaps/manna-harbour_miryoku/config.h b/keyboards/satt/vision/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index 958554be55..0000000000
--- a/keyboards/satt/vision/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, XXX, \
-XXX, XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
- XXX, K20, K21, K22, K23, K24, XXX, K25, K26, K27, K28, K29, XXX,\
- XXX, K32, K33, K34, K35, K36, K37, XXX \
-)
diff --git a/keyboards/satt/vision/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/satt/vision/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/satt/vision/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/sawnsprojects/okayu/stm32f072/config.h b/keyboards/sawnsprojects/okayu/stm32f072/config.h
index c47f1928c8..41bb0d1fdb 100644
--- a/keyboards/sawnsprojects/okayu/stm32f072/config.h
+++ b/keyboards/sawnsprojects/okayu/stm32f072/config.h
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define WS2812_SPI SPID1
+#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5
#define WS2812_SPI_SCK_PIN B13
#define WS2812_SPI_SCK_PAL_MODE 5 \ No newline at end of file
diff --git a/keyboards/sawnsprojects/okayu/stm32f103/config.h b/keyboards/sawnsprojects/okayu/stm32f103/config.h
index eff3605470..9024616477 100644
--- a/keyboards/sawnsprojects/okayu/stm32f103/config.h
+++ b/keyboards/sawnsprojects/okayu/stm32f103/config.h
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
#define WS2812_SPI_SCK_PIN B13
#define WS2812_SPI_SCK_PAL_MODE 5 \ No newline at end of file
diff --git a/keyboards/sawnsprojects/okayu/stm32f303/config.h b/keyboards/sawnsprojects/okayu/stm32f303/config.h
index c47f1928c8..41bb0d1fdb 100644
--- a/keyboards/sawnsprojects/okayu/stm32f303/config.h
+++ b/keyboards/sawnsprojects/okayu/stm32f303/config.h
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define WS2812_SPI SPID1
+#define WS2812_SPI_DRIVER SPID1
#define WS2812_SPI_MOSI_PAL_MODE 5
#define WS2812_SPI_SCK_PIN B13
#define WS2812_SPI_SCK_PAL_MODE 5 \ No newline at end of file
diff --git a/keyboards/scottokeebs/scotto34/keymaps/scotto/config.h b/keyboards/scottokeebs/scotto34/keymaps/scotto/config.h
deleted file mode 100644
index 9e99bf0205..0000000000
--- a/keyboards/scottokeebs/scotto34/keymaps/scotto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2023 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// Define options
-#define TAPPING_TERM 135
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/scottokeebs/scotto34/keymaps/scotto/keymap.c b/keyboards/scottokeebs/scotto34/keymaps/scotto/keymap.c
deleted file mode 100644
index b1720f4302..0000000000
--- a/keyboards/scottokeebs/scotto34/keymaps/scotto/keymap.c
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
-Copyright 2023 Joe Scotto
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-// Tap dance declarations
-enum {
- TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI,
- TD_ESC_LCTL_LALT_WINDOWS_EMOJI
-};
-
-// Custom tapping term for multi function keys
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case TD(TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI) :
- case TD(TD_ESC_LCTL_LALT_WINDOWS_EMOJI) :
- case LGUI_T(KC_SPC) :
- case LT(1, KC_SPC) :
- case LT(1, KC_TAB) :
- case LT(2, KC_ENT) :
- return 200;
- default:
- return TAPPING_TERM;
- }
-};
-
-// Begin quad TD
-typedef enum {
- TD_NONE,
- TD_UNKNOWN,
- TD_SINGLE_HOLD,
- TD_DOUBLE_HOLD,
- TD_TRIPLE_HOLD,
- TD_SINGLE_TAP,
- TD_DOUBLE_TAP,
- TD_TRIPLE_TAP
-} td_state_t;
-
-typedef struct {
- bool is_press_action;
- td_state_t state;
-} td_tap_t;
-
-// Create an instance of 'td_tap_t' for the 'x' tap dance.
-static td_tap_t xtap_state = {
- .is_press_action = true,
- .state = TD_NONE
-};
-
-td_state_t cur_dance(tap_dance_state_t *state) {
- if (state->count == 1) {
- if (state->interrupted || !state->pressed) {
- return TD_SINGLE_TAP;
- } else {
- return TD_SINGLE_HOLD;
- }
- } else if (state->count == 2) {
- if (state->interrupted || !state->pressed) {
- return TD_DOUBLE_TAP;
- } else {
- return TD_DOUBLE_HOLD;
- }
- } else if (state->count == 3) {
- if (state->interrupted || !state->pressed) {
- return TD_TRIPLE_TAP;
- } else {
- return TD_TRIPLE_HOLD;
- }
- }
-
- return TD_UNKNOWN;
-}
-
-void td_esc_lalt_lctl_spotlight_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: tap_code(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_TAP: tap_code16(G(KC_SPC)); break;
- case TD_TRIPLE_TAP: tap_code16(C(G(KC_SPC))); break;
- default: break;
- }
-}
-
-void td_esc_lalt_lctl_spotlight_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LALT); break;
- case TD_DOUBLE_HOLD: unregister_code(KC_LCTL); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
-void td_esc_lctl_lalt_windows_emoji_finished(tap_dance_state_t *state, void *user_data) {
- xtap_state.state = cur_dance(state);
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: tap_code16(KC_ESC); break;
- case TD_SINGLE_HOLD: register_code(KC_LCTL); break;
- case TD_DOUBLE_HOLD: register_code(KC_LALT); break;
- case TD_DOUBLE_TAP: tap_code(KC_LGUI); break;
- case TD_TRIPLE_TAP: tap_code16(G(KC_DOT)); break;
- default: break;
- }
-}
-
-void td_esc_lctl_lalt_windows_emoji_reset(tap_dance_state_t *state, void *user_data) {
- switch (xtap_state.state) {
- case TD_SINGLE_TAP: unregister_code(KC_ESC); break;
- case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;
- case TD_DOUBLE_HOLD: unregister_code(KC_LALT); break;
- default: break;
- }
- xtap_state.state = TD_NONE;
-}
-
- // Tap Dance definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_esc_lalt_lctl_spotlight_emoji_finished, td_esc_lalt_lctl_spotlight_emoji_reset),
- [TD_ESC_LCTL_LALT_WINDOWS_EMOJI] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_esc_lctl_lalt_windows_emoji_finished, td_esc_lctl_lalt_windows_emoji_reset)
-};
-// For the x tap dance. Put it here so it can be used in any keymap
-void x_finished(tap_dance_state_t *state, void *user_data);
-void x_reset(tap_dance_state_t *state, void *user_data);
-
-// Onboard LED
-#ifdef RGBLIGHT_ENABLE
- // Configure LED
- void keyboard_post_init_user(void) {
- // Initialize RGB to static black
- rgblight_enable_noeeprom();
- rgblight_sethsv_noeeprom(HSV_BLACK);
- rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
- }
-
- // Change LED
- void housekeeping_task_user(void) {
- // Caps lock status
- if (host_keyboard_led_state().caps_lock) {
- rgblight_setrgb_at(4, 4, 0, 0);
- } else {
- // Layers
- switch (get_highest_layer(layer_state | default_layer_state)) {
- case 0:
- rgblight_setrgb_at(4, 4, 4, 0);
- break;
- case 1:
- rgblight_setrgb_at(4, 4, 4, 0);
- break;
- case 2:
- rgblight_setrgb_at(4, 4, 4, 0);
- break;
- case 3:
- rgblight_setrgb_at(4, 4, 4, 0);
- break;
- case 4:
- rgblight_setrgb_at(0, 0, 4, 0);
- break;
- case 5:
- rgblight_setrgb_at(0, 4, 0, 0);
- break;
- case 6:
- rgblight_setrgb_at(0, 0, 4, 0);
- break;
- case 7:
- rgblight_setrgb_at(0, 0, 4, 0);
- break;
- case 8:
- rgblight_setrgb_at(0, 0, 4, 0);
- break;
- }
- }
- }
-#endif
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_split_3x5_2(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_ESC_LALT_LCTL_SPOTLIGHT_EMOJI), LGUI_T(KC_SPC), LT(1, KC_TAB), LT(2, KC_ENT)
- ),
- [1] = LAYOUT_split_3x5_2(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [2] = LAYOUT_split_3x5_2(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(3), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [3] = LAYOUT_split_3x5_2(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(5), TO(4),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [4] = LAYOUT_split_3x5_2(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- LSFT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, RSFT_T(KC_SLSH),
- TD(TD_ESC_LCTL_LALT_WINDOWS_EMOJI), LCTL_T(KC_SPC), LT(6, KC_TAB), LT(7, KC_ENT)
- ),
- [5] = LAYOUT_split_3x5_2(
- KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_BSPC,
- KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,
- KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMMA, KC_DOT, KC_SLSH,
- KC_LCTL, KC_SPC, LT(6, KC_TAB), LT(7, KC_ENT)
- ),
- [6] = LAYOUT_split_3x5_2(
- KC_UNDS, KC_MINS, KC_PLUS, KC_EQL, KC_COLN, KC_GRV, KC_MRWD, KC_MPLY, KC_MFFD, KC_DEL,
- KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_PIPE, KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT,
- LSFT_T(KC_LBRC), KC_QUOT, KC_DQUO, KC_RBRC, KC_SCLN, KC_TILDE, KC_VOLD, KC_MUTE, KC_VOLU, RSFT_T(KC_BSLS),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [7] = LAYOUT_split_3x5_2(
- KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_CAPS, KC_BSPC,
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LSFT, KC_NO, KC_NO, KC_NO, MO(8), KC_NO, KC_NO, KC_COMM, KC_DOT, RSFT_T(KC_SLSH),
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
- [8] = LAYOUT_split_3x5_2(
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(4), TO(5), TO(0),
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
- KC_F11, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F12,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- )
-}; \ No newline at end of file
diff --git a/keyboards/scottokeebs/scotto34/keymaps/scotto/rules.mk b/keyboards/scottokeebs/scotto34/keymaps/scotto/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/scottokeebs/scotto34/keymaps/scotto/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/sekigon/grs_70ec/rules.mk b/keyboards/sekigon/grs_70ec/rules.mk
index 00931a551e..4bd93ef25b 100644
--- a/keyboards/sekigon/grs_70ec/rules.mk
+++ b/keyboards/sekigon/grs_70ec/rules.mk
@@ -13,4 +13,6 @@ AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = lite
SPLIT_KEYBOARD = yes
-SRC += analog.c ec_switch_matrix.c matrix.c
+ANALOG_DRIVER_REQUIRED = yes
+
+SRC += ec_switch_matrix.c matrix.c
diff --git a/keyboards/shapeshifter4060/keymaps/vosechu/keymap.c b/keyboards/shapeshifter4060/keymaps/vosechu/keymap.c
deleted file mode 100644
index f2a75c38cc..0000000000
--- a/keyboards/shapeshifter4060/keymaps/vosechu/keymap.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-Copyright 2021 Chuck "@vosechu" Lauer Vose <vosechu@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-#include "vosechu.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [DV] = LAYOUT(
- PAWFIVE , KC_QUOT , KC_COMM , KC_DOT , KC_P , KC_Y , KC_F , KC_G , KC_C , KC_R , KC_L , QK_BOOT,
- KC_ESC , KC_A , KC_O , KC_E , LWR_U , KC_I , KC_D , RSE_H , KC_T , KC_N , KC_S , XXXXXXX ,
- XXXXXXX , KC_SCLN , KC_Q , KC_J , KC_K , KC_X , KC_B , KC_M , KC_W , KC_V , KC_Z , KC_ENT ,
- XXXXXXX , CTL_GRV , ALT_TAB , KC_LGUI , LFT_BK , SFT_SPC , KC_SPC , LFT_ENT , KC_MINS , KC_EQL , KC_SLSH , KC_BSLS
- ),
- [QW] = LAYOUT(
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_BSPC ,
- KC_ESC , KC_A , KC_S , KC_D , LWR_F , KC_G , KC_H , RSE_J , KC_K , KC_L , KC_SCLN , KC_QUOT ,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_ENT ,
- KC_HYPR , CTL_GRV , ALT_TAB , KC_LGUI , LFT_BK , SFT_SPC , KC_SPC , LFT_ENT , KC_LEFT , KC_DOWN , KC_UP , KC_RGHT
- ),
- [LWR] = LAYOUT(
- _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_7 , KC_8 , KC_9 , XXXXXXX , _______ ,
- _______ , XXXXXXX , XXXXXXX , XXXXXXX , _LAYER_ , XXXXXXX , XXXXXXX , KC_4 , KC_5 , KC_6 , XXXXXXX , _______ ,
- _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_1 , KC_2 , KC_3 , XXXXXXX , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , _______ , KC_0 , KC_0 , KC_DOT , _______ , _______
- ),
- [RSE] = LAYOUT(
- _______ , KC_LABK , KC_RABK , KC_LCBR , KC_RCBR , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , _______ ,
- _______ , KC_LPRN , KC_RPRN , KC_LBRC , KC_RBRC , XXXXXXX , XXXXXXX , _LAYER_ , XXXXXXX , XXXXXXX , XXXXXXX , _______ ,
- _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , _______ ,
- _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______
- ),
- [LFT] = LAYOUT(
- _______ , BWSR_BK , TAB_LFT , KC_UP , TAB_RGT , BWSR_FW , KC_MUTE , XXXXXXX , SCR_LFT , SCR_FUL , SCR_RGT , _______ ,
- _______ , XXXXXXX , KC_LEFT , KC_DOWN , KC_RGHT , KC_PGUP , KC_VOLU , SLACKUP , XXXXXXX , XXXXXXX , TO(QW) , _______ ,
- _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_PGDN , KC_VOLD , SLACKDN , XXXXXXX , XXXXXXX , TO(DV) , _______ ,
- _______ , QK_BOOT, _______ , _______ , _LAYER_ , KC_BSPC , _______ , KC_LSFT , KC_LGUI , KC_LALT , KC_LCTL , _______
- )
-};
diff --git a/keyboards/shapeshifter4060/keymaps/vosechu/readme.md b/keyboards/shapeshifter4060/keymaps/vosechu/readme.md
deleted file mode 100644
index a438e5536d..0000000000
--- a/keyboards/shapeshifter4060/keymaps/vosechu/readme.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# Vosechu layout
-
-This is my personal layout for the Shapeshifter. It's taken a long time to get
-to this point, but I think there are some things that are cool and special about
-it.
-
-## Layout
-
-Some special things:
-
-* Lower/Raise are on the F/J keys. Tap to type the character, hold to activate the layer
-* Enter and Backspace also activate the Lift layer.
-* -- To get repeated backspace, hold BkLft and then press Shift
-
-
-### Dvorak
-
- ,-----------------------------------------------------------------------------------.
- | Nada | ' | , | . | P | Y | F | G | C | R | L | Reset|
- |------+------+------+------+------+-------------+------+------+------+------+------|
- | Esc | A | O | E | Lwr/U| I | D | Rse/H| T | N | S | Nada |
- |------+------+------+------+------+------|------+------+------+------+------+------|
- | Nada | ; | Q | J | K | X | B | M | W | V | Z | Enter|
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Nada |Ctrl/~|AltTab| Cmd | BkLft| Shift| Space|EntLft| - | = | / | \ |
- `-----------------------------------------------------------------------------------'
-
-### Qwerty
-
- ,-----------------------------------------------------------------------------------.
- | Tab | Q | W | E | R | T | Y | U | I | O | P | Back |
- |------+------+------+------+------+-------------+------+------+------+------+------|
- | Esc | A | S | D | Lwr/F| G | H | Rse/J| K | L | ; | " |
- |------+------+------+------+------+------|------+------+------+------+------+------|
- | Shift| Z | X | C | V | B | N | M | , | . | / | Enter|
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | Hyper|Ctrl/~|AltTab| Cmd | BkLft| Shift| Space|EntLft| Left | Down | Up | Right|
- `-----------------------------------------------------------------------------------'
-
-### Raise
-
- ,-----------------------------------------------------------------------------------.
- | | < | > | { | } | | | | | | | |
- |------+------+------+------+------+-------------+------+------+------+------+------|
- | | ( | ) | [ | ] | | | | | | | |
- |------+------+------+------+------+------|------+------+------+------+------+------|
- | | | | | | | | | | | | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | | | | BkLft| Shift| Space|EntLft| | | | |
- `-----------------------------------------------------------------------------------'
-
-### Lower
-
- ,-----------------------------------------------------------------------------------.
- | | | | | | | | 7 | 8 | 9 | | |
- |------+------+------+------+------+-------------+------+------+------+------+------|
- | | | | | | | | 4 | 5 | 6 | | |
- |------+------+------+------+------+------|------+------+------+------+------+------|
- | | | | | | | | 1 | 2 | 3 | | |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | | | | BkLft| Shift| Space| 0 | 0 | . | | |
- `-----------------------------------------------------------------------------------'
-
-### Lift
-
- ,-----------------------------------------------------------------------------------.
- | |Hist ←| Tab ←| ↑ | Tab →|Hist →| Mute | |ScrLft|ScrFul|ScrRgt| |
- |------+------+------+------+------+-------------+------+------+------+------+------|
- | | | ← | ↓ | → | Pg Up|Vol up|Slk up| | |Qwerty| |
- |------+------+------+------+------+------|------+------+------+------+------+------|
- | | | | | | Pg Dn|Vol dn|Slk dn| | |Dvorak| |
- |------+------+------+------+------+------+------+------+------+------+------+------|
- | | Reset| | | | Bksp | | Shift| Cmd | Opt | Ctrl | |
- `-----------------------------------------------------------------------------------'
-
-Special things:
-
-* Hist: Back button in your browser
-* Tab: Move one tab left/right in most mac apps
-* Slk: Go to the previous/next unread conversation in Slack
-* Scr: Make this app fill the left/right side of your monitor (or full screen)
-* Since arrows are on this layer, the command keys are moved to the right side
diff --git a/keyboards/sirius/uni660/rev1/config.h b/keyboards/sirius/uni660/rev1/config.h
index 0cd138a95c..b9e511d9a3 100644
--- a/keyboards/sirius/uni660/rev1/config.h
+++ b/keyboards/sirius/uni660/rev1/config.h
@@ -39,5 +39,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
diff --git a/keyboards/sirius/uni660/rev1/rules.mk b/keyboards/sirius/uni660/rev1/rules.mk
index d44567105e..7ac7507269 100644
--- a/keyboards/sirius/uni660/rev1/rules.mk
+++ b/keyboards/sirius/uni660/rev1/rules.mk
@@ -15,4 +15,4 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
diff --git a/keyboards/sirius/uni660/rev2/ansi/config.h b/keyboards/sirius/uni660/rev2/ansi/config.h
index 0cd138a95c..b9e511d9a3 100644
--- a/keyboards/sirius/uni660/rev2/ansi/config.h
+++ b/keyboards/sirius/uni660/rev2/ansi/config.h
@@ -39,5 +39,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
diff --git a/keyboards/sirius/uni660/rev2/iso/config.h b/keyboards/sirius/uni660/rev2/iso/config.h
index 0cd138a95c..b9e511d9a3 100644
--- a/keyboards/sirius/uni660/rev2/iso/config.h
+++ b/keyboards/sirius/uni660/rev2/iso/config.h
@@ -39,5 +39,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
diff --git a/keyboards/sirius/uni660/rev2/rules.mk b/keyboards/sirius/uni660/rev2/rules.mk
index b41206636d..791fa054c8 100644
--- a/keyboards/sirius/uni660/rev2/rules.mk
+++ b/keyboards/sirius/uni660/rev2/rules.mk
@@ -15,6 +15,6 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
DEFAULT_FOLDER = sirius/uni660/rev2/ansi
diff --git a/keyboards/skyloong/gk61/pro/config.h b/keyboards/skyloong/gk61/pro/config.h
new file mode 100644
index 0000000000..8e9b5f9258
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/config.h
@@ -0,0 +1,19 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define RGB_MATRIX_LED_COUNT 64
+#define CAPS_LOCK_INDEX 28
+#define WIN_MOD_INDEX 16
+#define MAC_MOD_INDEX 17
+#define WIN_LOCK_INDEX 54
+#define SDB C1 //RGB matrix Power control PIN
+
+/* RGB Matrix Animation modes. Explicitly enabled
+ * For full list of effects, see:
+ * https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
+ */
+
+#define RGB_MATRIX_KEYPRESSES
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/skyloong/gk61/pro/halconf.h b/keyboards/skyloong/gk61/pro/halconf.h
new file mode 100644
index 0000000000..5ac56913fc
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/halconf.h
@@ -0,0 +1,7 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#define HAL_USE_I2C TRUE
+
+#include_next <halconf.h>
diff --git a/keyboards/skyloong/gk61/pro/info.json b/keyboards/skyloong/gk61/pro/info.json
new file mode 100644
index 0000000000..7d507f1e8c
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/info.json
@@ -0,0 +1,338 @@
+{
+ "manufacturer": "skyloong",
+ "keyboard_name": "gk61 pro",
+ "maintainer": "linlin012",
+ "bootloader": "stm32duino",
+
+ "diode_direction": "ROW2COL",
+ "encoder": {
+ "rotary": [
+ {"pin_a": "C5", "pin_b": "C4", "resolution": 2}
+ ]
+ },
+ "features": {
+ "bootmagic": true,
+ "command": true,
+ "console": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "build": {
+ "debounce_type": "asym_eager_defer_pk"
+ },
+ "matrix_pins": {
+ "cols": ["B11", "C6", "C7", "B12", "B13", "B14", "B15", "B10", "B1", "B0", "D2", "B3", "B4", "B5"],
+ "rows": ["A15", "C10", "C11", "C12", "A3"]
+ },
+ "processor": "STM32F103",
+ "rgb_matrix": {
+ "animations": {
+ "breathing": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "rainbow_moving_chevron": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "typing_heatmap":true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "solid_splash": true
+ },
+ "driver": "is31fl3743a",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 49, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 65, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 81, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 97, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 113, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 129, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 145, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 178, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 194, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 218, "y": 0, "flags": 4},
+ {"matrix": [1, 0], "x": 4, "y": 13, "flags": 4},
+ {"matrix": [1, 1], "x": 24, "y": 13, "flags": 4},
+ {"matrix": [1, 2], "x": 40, "y": 13, "flags": 4},
+ {"matrix": [1, 3], "x": 57, "y": 13, "flags": 4},
+ {"matrix": [1, 4], "x": 73, "y": 13, "flags": 4},
+ {"matrix": [1, 5], "x": 89, "y": 13, "flags": 4},
+ {"matrix": [1, 6], "x": 105, "y": 13, "flags": 4},
+ {"matrix": [1, 7], "x": 121, "y": 13, "flags": 4},
+ {"matrix": [1, 8], "x": 137, "y": 13, "flags": 4},
+ {"matrix": [1, 9], "x": 153, "y": 13, "flags": 4},
+ {"matrix": [1, 10], "x": 170, "y": 13, "flags": 4},
+ {"matrix": [1, 11], "x": 186, "y": 13, "flags": 4},
+ {"matrix": [1, 12], "x": 202, "y": 13, "flags": 4},
+ {"matrix": [1, 13], "x": 222, "y": 13, "flags": 4},
+ {"matrix": [2, 0], "x": 6, "y": 26, "flags": 4},
+ {"matrix": [2, 1], "x": 28, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 44, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 61, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 77, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 93, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 109, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 125, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 141, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 157, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 174, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 190, "y": 26, "flags": 4},
+ {"matrix": [2, 13], "x": 216, "y": 26, "flags": 4},
+ {"matrix": [3, 0], "x": 10, "y": 51, "flags": 4},
+ {"matrix": [3, 1], "x": 36, "y": 51, "flags": 4},
+ {"matrix": [3, 2], "x": 53, "y": 51, "flags": 4},
+ {"matrix": [3, 3], "x": 69, "y": 51, "flags": 4},
+ {"matrix": [3, 4], "x": 85, "y": 51, "flags": 4},
+ {"matrix": [3, 5], "x": 101, "y": 51, "flags": 4},
+ {"matrix": [3, 6], "x": 117, "y": 51, "flags": 4},
+ {"matrix": [3, 7], "x": 133, "y": 51, "flags": 4},
+ {"matrix": [3, 8], "x": 149, "y": 51, "flags": 4},
+ {"matrix": [3, 9], "x": 166, "y": 51, "flags": 4},
+ {"matrix": [3, 10], "x": 182, "y": 51, "flags": 4},
+ {"matrix": [3, 12], "x": 212, "y": 51, "flags": 4},
+ {"matrix": [4, 0], "x": 2, "y": 64, "flags": 4},
+ {"matrix": [4, 1], "x": 22, "y": 64, "flags": 4},
+ {"matrix": [4, 2], "x": 42, "y": 64, "flags": 4},
+ {"matrix": [4, 4], "x": 75, "y": 64, "flags": 4},
+ {"matrix": [4, 5], "x": 103, "y": 64, "flags": 4},
+ {"matrix": [4, 6], "x": 103, "y": 64, "flags": 4},
+ {"matrix": [4, 8], "x": 131, "y": 64, "flags": 4},
+ {"matrix": [4, 9], "x": 163, "y": 64, "flags": 4},
+ {"matrix": [4, 10], "x": 184, "y": 64, "flags": 4},
+ {"matrix": [4, 11], "x": 204, "y": 64, "flags": 4},
+ {"matrix": [4, 13], "x": 224, "y": 64, "flags": 4}
+ ],
+ "max_brightness": 200,
+ "hue_steps": 20,
+ "sat_steps": 20,
+ "speed_steps": 20,
+ "val_steps": 20
+ },
+ "url": "https://github.com/JZ-Skyloong",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x6A61",
+ "vid": "0x1EA7",
+ "max_power": 380
+ },
+ "community_layouts": ["60_ansi"],
+ "layouts": {
+ "LAYOUT_all": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 4], "x": 3.75, "y": 4.5, "h": 0.5, "w": 2.5},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "h": 0.5, "w":6.25},
+ {"matrix": [4, 6], "x": 6.25, "y": 4.5, "h": 0.5, "w":1.25},
+ {"matrix": [4, 8], "x": 7.5, "y": 4.5, "h": 0.5, "w": 2.5},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_space": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 4], "x": 3.75, "y": 4, "w": 2.5},
+ {"matrix": [4, 6], "x": 6.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 8], "x": 7.5, "y": 4, "w": 2.5},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/skyloong/gk61/pro/keymaps/default/keymap.c b/keyboards/skyloong/gk61/pro/keymaps/default/keymap.c
new file mode 100644
index 0000000000..9534f25d80
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/keymaps/default/keymap.c
@@ -0,0 +1,44 @@
+// Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+ * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Tab│ Q │ W │ E | R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Cap│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ |Ent│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Sft│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ |Sft| │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Ctl│GUI│Alt│ │Spc│Mut│ │ |Spc|Alt│App│Ctl│ │Mo1|
+ * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
+ */
+ [0] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_MUTE, KC_SPC, KC_RALT, KC_APP, KC_RCTL, MO(1)
+ ),
+
+ [1] = LAYOUT_all(
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
+ _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+
+};
+
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }
+};
+#endif
+
diff --git a/keyboards/skyloong/gk61/pro/keymaps/default/rules.mk b/keyboards/skyloong/gk61/pro/keymaps/default/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/keymaps/default/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/skyloong/gk61/pro/keymaps/via/keymap.c b/keyboards/skyloong/gk61/pro/keymaps/via/keymap.c
new file mode 100644
index 0000000000..e16bcc7105
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/keymaps/via/keymap.c
@@ -0,0 +1,67 @@
+// Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+enum layer_names {
+ _WIN,
+ _MAC,
+ _WIN_INDEX,
+ _MAC_INDEX
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+ * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Tab│ Q │ W │ E | R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Cap│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ |Ent│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Sft│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ |Sft| │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Ctl│GUI│Alt│ │Spc│Spc│Mut│ |Spc|Alt│App│Ctl│ │Mo3|
+ * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
+ */
+ [_WIN] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_MUTE, KC_SPC, KC_RALT, KC_APP, KC_RCTL, MO(_WIN_INDEX)
+ ),
+
+ [_MAC] = LAYOUT_all(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, KC_LALT, KC_LGUI, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, MO(_MAC_INDEX)
+ ),
+
+ [_WIN_INDEX] = LAYOUT_all(
+ KC_GRV , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
+ _______, _______, TO(0), TO(1), _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_RMOD, RGB_RMOD, RGB_TOG,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, KC_UP, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______
+ ),
+
+ [_MAC_INDEX] = LAYOUT_all(
+ KC_GRV , KC_F14, KC_F15, C(KC_UP), G(KC_D), G(KC_SPC), LSG(KC_4), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL,
+ _______, _______, TO(0), TO(1), _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_RMOD, RGB_RMOD, RGB_TOG,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, KC_UP, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______
+ )
+};
+
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [_WIN] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [_MAC] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ [_WIN_INDEX] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) },
+ [_MAC_INDEX] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }
+};
+#endif
diff --git a/keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/rules.mk b/keyboards/skyloong/gk61/pro/keymaps/via/rules.mk
index f1adcab005..f1adcab005 100644
--- a/keyboards/keychron/v3/ansi_encoder/keymaps/vnmm/rules.mk
+++ b/keyboards/skyloong/gk61/pro/keymaps/via/rules.mk
diff --git a/keyboards/skyloong/gk61/pro/mcuconf.h b/keyboards/skyloong/gk61/pro/mcuconf.h
new file mode 100644
index 0000000000..91dde6cc42
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/mcuconf.h
@@ -0,0 +1,11 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef STM32_I2C_USE_I2C1
+#define STM32_I2C_USE_I2C1 TRUE
+
+#undef STM32_I2C_USE_DMA
+#define STM32_I2C_USE_DMA TRUE
diff --git a/keyboards/skyloong/gk61/pro/pro.c b/keyboards/skyloong/gk61/pro/pro.c
new file mode 100644
index 0000000000..1936964b32
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/pro.c
@@ -0,0 +1,235 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#include "quantum.h"
+int FN_WIN = 0;
+int FN_MAC = 0;
+int L_WIN = 0;
+int L_MAC = 0;
+
+const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, CS1_SW1, CS2_SW1, CS3_SW1},
+ {0, CS1_SW2, CS2_SW2, CS3_SW2},
+ {0, CS1_SW3, CS2_SW3, CS3_SW3},
+ {0, CS1_SW4, CS2_SW4, CS3_SW4},
+ {0, CS1_SW5, CS2_SW5, CS3_SW5},
+ {0, CS1_SW6, CS2_SW6, CS3_SW6},
+ {0, CS1_SW7, CS2_SW7, CS3_SW7},
+ {0, CS1_SW8, CS2_SW8, CS3_SW8},
+ {0, CS1_SW9, CS2_SW9, CS3_SW9},
+ {0, CS1_SW10, CS2_SW10, CS3_SW10},
+ {0, CS1_SW11, CS2_SW11, CS3_SW11},
+ {0, CS16_SW1, CS17_SW1, CS18_SW1},
+ {0, CS16_SW2, CS17_SW2, CS18_SW2},
+ {0, CS16_SW3, CS17_SW3, CS18_SW3},
+
+ {0, CS4_SW1, CS5_SW1, CS6_SW1},
+ {0, CS4_SW2, CS5_SW2, CS6_SW2},
+ {0, CS4_SW3, CS5_SW3, CS6_SW3},
+ {0, CS4_SW4, CS5_SW4, CS6_SW4},
+ {0, CS4_SW5, CS5_SW5, CS6_SW5},
+ {0, CS4_SW6, CS5_SW6, CS6_SW6},
+ {0, CS4_SW7, CS5_SW7, CS6_SW7},
+ {0, CS4_SW8, CS5_SW8, CS6_SW8},
+ {0, CS4_SW9, CS5_SW9, CS6_SW9},
+ {0, CS4_SW10, CS5_SW10, CS6_SW10},
+ {0, CS4_SW11, CS5_SW11, CS6_SW11},
+ {0, CS16_SW4, CS17_SW4, CS18_SW4},
+ {0, CS16_SW5, CS17_SW5, CS18_SW5},
+ {0, CS16_SW6, CS17_SW6, CS18_SW6},
+
+ {0, CS7_SW1, CS8_SW1, CS9_SW1},
+ {0, CS7_SW2, CS8_SW2, CS9_SW2},
+ {0, CS7_SW3, CS8_SW3, CS9_SW3},
+ {0, CS7_SW4, CS8_SW4, CS9_SW4},
+ {0, CS7_SW5, CS8_SW5, CS9_SW5},
+ {0, CS7_SW6, CS8_SW6, CS9_SW6},
+ {0, CS7_SW7, CS8_SW7, CS9_SW7},
+ {0, CS7_SW8, CS8_SW8, CS9_SW8},
+ {0, CS7_SW9, CS8_SW9, CS9_SW9},
+ {0, CS7_SW10, CS8_SW10, CS9_SW10},
+ {0, CS7_SW11, CS8_SW11, CS9_SW11},
+ {0, CS16_SW7, CS17_SW7, CS18_SW7},
+ {0, CS16_SW8, CS17_SW8, CS18_SW8},
+
+ {0, CS10_SW1, CS11_SW1, CS12_SW1},
+ {0, CS10_SW2, CS11_SW2, CS12_SW2},
+ {0, CS10_SW3, CS11_SW3, CS12_SW3},
+ {0, CS10_SW4, CS11_SW4, CS12_SW4},
+ {0, CS10_SW5, CS11_SW5, CS12_SW5},
+ {0, CS10_SW6, CS11_SW6, CS12_SW6},
+ {0, CS10_SW7, CS11_SW7, CS12_SW7},
+ {0, CS10_SW8, CS11_SW8, CS12_SW8},
+ {0, CS10_SW9, CS11_SW9, CS12_SW9},
+ {0, CS10_SW10, CS11_SW10, CS12_SW10},
+ {0, CS10_SW11, CS11_SW11, CS12_SW11},
+ {0, CS16_SW9, CS17_SW9, CS18_SW9},
+
+ {0, CS13_SW1, CS14_SW1, CS15_SW1},
+ {0, CS13_SW2, CS14_SW2, CS15_SW2},
+ {0, CS13_SW3, CS14_SW3, CS15_SW3},
+ {0, CS13_SW4, CS14_SW4, CS15_SW4},
+ {0, CS13_SW5, CS14_SW5, CS15_SW5},
+ {0, CS13_SW5, CS14_SW5, CS15_SW5},
+ {0, CS13_SW6, CS14_SW6, CS15_SW6},
+ {0, CS13_SW7, CS14_SW7, CS15_SW7},
+ {0, CS13_SW8, CS14_SW8, CS15_SW8},
+ {0, CS13_SW9, CS14_SW9, CS15_SW9},
+ {0, CS13_SW10, CS14_SW10, CS15_SW10}
+};
+
+#if defined(RGB_MATRIX_ENABLE) /*&& defined(CAPS_LOCK_INDEX)*/
+
+bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
+ if (!process_record_user(keycode, record)) {
+ return false;
+ }
+ switch (keycode) {
+# ifdef RGB_MATRIX_ENABLE
+ case RGB_TOG:
+ if (record->event.pressed) {
+ switch (rgb_matrix_get_flags()) {
+ case LED_FLAG_ALL: {
+ rgb_matrix_set_flags(LED_FLAG_NONE);
+ rgb_matrix_set_color_all(0, 0, 0);
+ } break;
+ default: {
+ rgb_matrix_set_flags(LED_FLAG_ALL);
+ } break;
+ }
+ }
+ return false;
+# endif
+ case TO(0):
+ if (record->event.pressed) {
+ L_WIN = 1;
+ set_single_persistent_default_layer(0); // Save default layer 0 to eeprom
+ } else {
+ L_WIN = 0;
+ }
+ return true; // continue all further processing of this key
+
+ case MO(2):
+ if (record->event.pressed) {
+ FN_WIN = 1;
+ } else {
+ FN_WIN = 0;
+ }
+ return true; // continue all further processing of this key
+
+ case TO(1):
+ if (record->event.pressed) {
+ L_MAC = 1;
+ set_single_persistent_default_layer(1); //Save default layer 1 to eeprom
+ } else {
+ L_MAC = 0;
+ }
+ return true; // continue all further processing of this key
+
+ case MO(3):
+ if (record->event.pressed) {
+ FN_MAC = 1;
+ } else {
+ FN_MAC = 0;
+ }
+ return true; // continue all further processing of this key
+ default:
+ return true;
+ }
+
+}
+
+bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) {
+ if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) {
+ return false;
+ }
+
+ if (host_keyboard_led_state().caps_lock) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 255, 255, 255);
+ } else {
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 0, 0, 0);
+ }
+ }
+
+ switch (get_highest_layer(layer_state)) {
+ case 0:{
+ if (L_WIN) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ }else{
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ }
+ }
+ } break;
+
+ case 1:{
+ if (L_MAC) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ }
+ }else{
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ }
+ } break;
+
+
+ case 2:{
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ } break;
+
+ case 3:{
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ }
+ } break;
+
+ default:{
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ }
+ }
+ return false;
+}
+
+#endif
+
+void suspend_power_down_kb() {
+# ifdef RGB_MATRIX_ENABLE
+ writePinLow(SDB);
+# endif
+ suspend_power_down_user();
+}
+
+void suspend_wakeup_init_kb() {
+# ifdef RGB_MATRIX_ENABLE
+ writePinHigh(SDB);
+# endif
+ suspend_wakeup_init_user();
+}
+
+void board_init(void) {
+ // JTAG-DP Disabled and SW-DP Disabled
+ AFIO->MAPR = (AFIO->MAPR & ~AFIO_MAPR_SWJ_CFG_Msk) | AFIO_MAPR_SWJ_CFG_DISABLE;
+# ifdef RGB_MATRIX_ENABLE
+ setPinOutput(SDB);
+ writePinHigh(SDB);
+# endif
+}
diff --git a/keyboards/skyloong/gk61/pro/readme.md b/keyboards/skyloong/gk61/pro/readme.md
new file mode 100644
index 0000000000..529f6f32c4
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/readme.md
@@ -0,0 +1,33 @@
+# GK61 PRO
+
+![GK61 PRO](https://i.imgur.com/DTetyVLh.jpg)
+
+## The PCB features:
+* QMK & VIA compatibility
+* RGB Matrix backlight
+* The space bar position switch can be interchanged with encoder module.
+
+
+The following is the QMK Firmware for the Destop 60% keylayout - designed in Dongguan Jizhi Electronic Technology Co., Ltd
+
+* Keyboard Maintainer: [linlin012](https://github.com/linlin012)
+* Hardware Supported: DestopPCB for Skyloong keylayout 60%, STM32F103R8T6
+* Hardware Availability: http://www.skyloong.com.cn https://skyloong.vip
+
+Make example for this keyboard (after setting up your build environment):
+
+ make skyloong/gk61/pro:default
+
+Flashing example for this keyboard:
+
+ make skyloong/gk61/pro:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/skyloong/gk61/pro/rules.mk b/keyboards/skyloong/gk61/pro/rules.mk
new file mode 100644
index 0000000000..3bbd261429
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro/rules.mk
@@ -0,0 +1 @@
+# File intentionally blank
diff --git a/keyboards/skyloong/gk61/pro_48/config.h b/keyboards/skyloong/gk61/pro_48/config.h
new file mode 100644
index 0000000000..df94455a9e
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/config.h
@@ -0,0 +1,16 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define RGB_MATRIX_LED_COUNT 64
+#define CAPS_LOCK_INDEX 28
+#define WIN_MOD_INDEX 16
+#define MAC_MOD_INDEX 17
+#define SDB A4
+
+#define RGB_DISABLE_WHEN_USB_SUSPENDED
+#define RGB_MATRIX_KEYPRESSES
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+
+#define g_suspend_state rgb_matrix_get_suspend_state()
diff --git a/keyboards/skyloong/gk61/pro_48/halconf.h b/keyboards/skyloong/gk61/pro_48/halconf.h
new file mode 100644
index 0000000000..5ac56913fc
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/halconf.h
@@ -0,0 +1,7 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#define HAL_USE_I2C TRUE
+
+#include_next <halconf.h>
diff --git a/keyboards/skyloong/gk61/pro_48/info.json b/keyboards/skyloong/gk61/pro_48/info.json
new file mode 100644
index 0000000000..0e49e005aa
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/info.json
@@ -0,0 +1,338 @@
+{
+ "manufacturer": "skyloong",
+ "keyboard_name": "gk61 pro 48",
+ "maintainer": "NaturalZh",
+ "bootloader": "stm32duino",
+
+ "diode_direction": "ROW2COL",
+ "encoder": {
+ "rotary": [
+ {"pin_a": "A2", "pin_b": "A3", "resolution": 2}
+ ]
+ },
+ "features": {
+ "bootmagic": true,
+ "command": true,
+ "console": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "build": {
+ "debounce_type": "asym_eager_defer_pk"
+ },
+ "matrix_pins": {
+ "cols": ["B13", "A0", "A1", "B14", "B15", "A8", "A9", "A10", "A15", "B3", "B4", "B5", "B8", "B9"],
+ "rows": ["B10", "B1", "B0", "A7", "A6"]
+ },
+ "processor": "STM32F103",
+ "rgb_matrix": {
+ "animations": {
+ "breathing": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "rainbow_moving_chevron": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "typing_heatmap":true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "solid_splash": true
+ },
+ "driver": "is31fl3743a",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 49, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 65, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 81, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 97, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 113, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 129, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 145, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 162, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 178, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 194, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 218, "y": 0, "flags": 4},
+ {"matrix": [1, 0], "x": 4, "y": 13, "flags": 4},
+ {"matrix": [1, 1], "x": 24, "y": 13, "flags": 4},
+ {"matrix": [1, 2], "x": 40, "y": 13, "flags": 4},
+ {"matrix": [1, 3], "x": 57, "y": 13, "flags": 4},
+ {"matrix": [1, 4], "x": 73, "y": 13, "flags": 4},
+ {"matrix": [1, 5], "x": 89, "y": 13, "flags": 4},
+ {"matrix": [1, 6], "x": 105, "y": 13, "flags": 4},
+ {"matrix": [1, 7], "x": 121, "y": 13, "flags": 4},
+ {"matrix": [1, 8], "x": 137, "y": 13, "flags": 4},
+ {"matrix": [1, 9], "x": 153, "y": 13, "flags": 4},
+ {"matrix": [1, 10], "x": 170, "y": 13, "flags": 4},
+ {"matrix": [1, 11], "x": 186, "y": 13, "flags": 4},
+ {"matrix": [1, 12], "x": 202, "y": 13, "flags": 4},
+ {"matrix": [1, 13], "x": 222, "y": 13, "flags": 4},
+ {"matrix": [2, 0], "x": 6, "y": 26, "flags": 4},
+ {"matrix": [2, 1], "x": 28, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 44, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 61, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 77, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 93, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 109, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 125, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 141, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 157, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 174, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 190, "y": 26, "flags": 4},
+ {"matrix": [2, 13], "x": 216, "y": 26, "flags": 4},
+ {"matrix": [3, 0], "x": 10, "y": 51, "flags": 4},
+ {"matrix": [3, 1], "x": 36, "y": 51, "flags": 4},
+ {"matrix": [3, 2], "x": 53, "y": 51, "flags": 4},
+ {"matrix": [3, 3], "x": 69, "y": 51, "flags": 4},
+ {"matrix": [3, 4], "x": 85, "y": 51, "flags": 4},
+ {"matrix": [3, 5], "x": 101, "y": 51, "flags": 4},
+ {"matrix": [3, 6], "x": 117, "y": 51, "flags": 4},
+ {"matrix": [3, 7], "x": 133, "y": 51, "flags": 4},
+ {"matrix": [3, 8], "x": 149, "y": 51, "flags": 4},
+ {"matrix": [3, 9], "x": 166, "y": 51, "flags": 4},
+ {"matrix": [3, 10], "x": 182, "y": 51, "flags": 4},
+ {"matrix": [3, 12], "x": 212, "y": 51, "flags": 4},
+ {"matrix": [4, 0], "x": 2, "y": 64, "flags": 4},
+ {"matrix": [4, 1], "x": 22, "y": 64, "flags": 4},
+ {"matrix": [4, 2], "x": 42, "y": 64, "flags": 4},
+ {"matrix": [4, 4], "x": 75, "y": 64, "flags": 4},
+ {"matrix": [4, 5], "x": 103, "y": 64, "flags": 4},
+ {"matrix": [4, 6], "x": 103, "y": 64, "flags": 4},
+ {"matrix": [4, 8], "x": 131, "y": 64, "flags": 4},
+ {"matrix": [4, 9], "x": 163, "y": 64, "flags": 4},
+ {"matrix": [4, 10], "x": 184, "y": 64, "flags": 4},
+ {"matrix": [4, 11], "x": 204, "y": 64, "flags": 4},
+ {"matrix": [4, 13], "x": 224, "y": 64, "flags": 4}
+ ],
+ "max_brightness": 200,
+ "hue_steps": 20,
+ "sat_steps": 20,
+ "speed_steps": 20,
+ "val_steps": 20
+ },
+ "url": "https://github.com/JZ-Skyloong",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x6A62",
+ "vid": "0x1EA7",
+ "max_power": 380
+ },
+ "community_layouts": ["60_ansi"],
+ "layouts": {
+ "LAYOUT_all": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 4], "x": 3.75, "y": 4.5, "w": 2.5, "h": 0.5},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "h": 0.5, "w":6.25},
+ {"matrix": [4, 6], "x": 6.25, "y": 4.5, "h": 0.5, "w":1.25},
+ {"matrix": [4, 8], "x": 7.5, "y": 4.5, "w": 2.5, "h": 0.5},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_space": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 5], "x": 6.25, "y": 3},
+ {"matrix": [3, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 4], "x": 3.75, "y": 4, "w": 2.5},
+ {"matrix": [4, 6], "x": 6.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 8], "x": 7.5, "y": 4, "w": 2.5},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/skyloong/gk61/pro_48/keymaps/default/keymap.c b/keyboards/skyloong/gk61/pro_48/keymaps/default/keymap.c
new file mode 100644
index 0000000000..9534f25d80
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/keymaps/default/keymap.c
@@ -0,0 +1,44 @@
+// Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+ * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Tab│ Q │ W │ E | R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Cap│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ |Ent│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Sft│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ |Sft| │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Ctl│GUI│Alt│ │Spc│Mut│ │ |Spc|Alt│App│Ctl│ │Mo1|
+ * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
+ */
+ [0] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_MUTE, KC_SPC, KC_RALT, KC_APP, KC_RCTL, MO(1)
+ ),
+
+ [1] = LAYOUT_all(
+ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
+ _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+
+};
+
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }
+};
+#endif
+
diff --git a/keyboards/skyloong/gk61/pro_48/keymaps/default/rules.mk b/keyboards/skyloong/gk61/pro_48/keymaps/default/rules.mk
new file mode 100644
index 0000000000..ee32568148
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/keymaps/default/rules.mk
@@ -0,0 +1 @@
+ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/skyloong/gk61/pro_48/keymaps/via/keymap.c b/keyboards/skyloong/gk61/pro_48/keymaps/via/keymap.c
new file mode 100644
index 0000000000..e63830f519
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/keymaps/via/keymap.c
@@ -0,0 +1,68 @@
+// Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+enum layer_names {
+ _WIN,
+ _MAC,
+ _WIN_INDEX,
+ _MAC_INDEX
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+ * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Tab│ Q │ W │ E | R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Cap│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ |Ent│
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Sft│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ |Sft| │
+ * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
+ * │Ctl│GUI│Alt│ │Spc│Spc│Mut│ |Spc|Alt│App│Ctl│ │Mox|
+ * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
+ */
+ [_WIN] = LAYOUT_all(
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_MUTE, KC_SPC, KC_RALT, KC_APP, KC_RCTL, MO(_WIN_INDEX)
+ ),
+
+ [_MAC] = LAYOUT_all(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, KC_LALT, KC_LGUI, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, MO(_MAC_INDEX)
+ ),
+
+ [_WIN_INDEX] = LAYOUT_all(
+ KC_GRV , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
+ _______, _______, TO(0), TO(1), _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_RMOD, RGB_RMOD, RGB_TOG,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, KC_UP, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______
+ ),
+
+ [_MAC_INDEX] = LAYOUT_all(
+ KC_GRV , KC_F14, KC_F15, C(KC_UP), G(KC_D), G(KC_SPC), LSG(KC_4), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL,
+ _______, _______, TO(0), TO(1), _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_RMOD, RGB_RMOD, RGB_TOG,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, KC_UP, _______,
+ _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______
+ )
+};
+
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
+ [_WIN] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
+ [_MAC] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ [_WIN_INDEX] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) },
+ [_MAC_INDEX] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }
+};
+#endif
+
diff --git a/keyboards/rgbkb/sol3/keymaps/kageurufu/rules.mk b/keyboards/skyloong/gk61/pro_48/keymaps/via/rules.mk
index f1adcab005..f1adcab005 100644
--- a/keyboards/rgbkb/sol3/keymaps/kageurufu/rules.mk
+++ b/keyboards/skyloong/gk61/pro_48/keymaps/via/rules.mk
diff --git a/keyboards/skyloong/gk61/pro_48/mcuconf.h b/keyboards/skyloong/gk61/pro_48/mcuconf.h
new file mode 100644
index 0000000000..91dde6cc42
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/mcuconf.h
@@ -0,0 +1,11 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef STM32_I2C_USE_I2C1
+#define STM32_I2C_USE_I2C1 TRUE
+
+#undef STM32_I2C_USE_DMA
+#define STM32_I2C_USE_DMA TRUE
diff --git a/keyboards/skyloong/gk61/pro_48/pro_48.c b/keyboards/skyloong/gk61/pro_48/pro_48.c
new file mode 100644
index 0000000000..e4f64c022f
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/pro_48.c
@@ -0,0 +1,227 @@
+// Copyright 2023 linlin012 (@linlin012)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#include "quantum.h"
+_Bool FN_WIN = 0;
+_Bool FN_MAC = 0;
+_Bool L_WIN = 0;
+_Bool L_MAC = 0;
+
+#if defined(RGB_MATRIX_ENABLE) /*&& defined(CAPS_LOCK_INDEX)*/
+const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, CS1_SW1, CS2_SW1, CS3_SW1},
+ {0, CS1_SW2, CS2_SW2, CS3_SW2},
+ {0, CS1_SW3, CS2_SW3, CS3_SW3},
+ {0, CS1_SW4, CS2_SW4, CS3_SW4},
+ {0, CS1_SW5, CS2_SW5, CS3_SW5},
+ {0, CS1_SW6, CS2_SW6, CS3_SW6},
+ {0, CS1_SW7, CS2_SW7, CS3_SW7},
+ {0, CS1_SW8, CS2_SW8, CS3_SW8},
+ {0, CS1_SW9, CS2_SW9, CS3_SW9},
+ {0, CS1_SW10, CS2_SW10, CS3_SW10},
+ {0, CS1_SW11, CS2_SW11, CS3_SW11},
+ {0, CS16_SW1, CS17_SW1, CS18_SW1},
+ {0, CS16_SW2, CS17_SW2, CS18_SW2},
+ {0, CS16_SW3, CS17_SW3, CS18_SW3},
+
+ {0, CS4_SW1, CS5_SW1, CS6_SW1},
+ {0, CS4_SW2, CS5_SW2, CS6_SW2},
+ {0, CS4_SW3, CS5_SW3, CS6_SW3},
+ {0, CS4_SW4, CS5_SW4, CS6_SW4},
+ {0, CS4_SW5, CS5_SW5, CS6_SW5},
+ {0, CS4_SW6, CS5_SW6, CS6_SW6},
+ {0, CS4_SW7, CS5_SW7, CS6_SW7},
+ {0, CS4_SW8, CS5_SW8, CS6_SW8},
+ {0, CS4_SW9, CS5_SW9, CS6_SW9},
+ {0, CS4_SW10, CS5_SW10, CS6_SW10},
+ {0, CS4_SW11, CS5_SW11, CS6_SW11},
+ {0, CS16_SW4, CS17_SW4, CS18_SW4},
+ {0, CS16_SW5, CS17_SW5, CS18_SW5},
+ {0, CS16_SW6, CS17_SW6, CS18_SW6},
+
+ {0, CS7_SW1, CS8_SW1, CS9_SW1},
+ {0, CS7_SW2, CS8_SW2, CS9_SW2},
+ {0, CS7_SW3, CS8_SW3, CS9_SW3},
+ {0, CS7_SW4, CS8_SW4, CS9_SW4},
+ {0, CS7_SW5, CS8_SW5, CS9_SW5},
+ {0, CS7_SW6, CS8_SW6, CS9_SW6},
+ {0, CS7_SW7, CS8_SW7, CS9_SW7},
+ {0, CS7_SW8, CS8_SW8, CS9_SW8},
+ {0, CS7_SW9, CS8_SW9, CS9_SW9},
+ {0, CS7_SW10, CS8_SW10, CS9_SW10},
+ {0, CS7_SW11, CS8_SW11, CS9_SW11},
+ {0, CS16_SW7, CS17_SW7, CS18_SW7},
+ {0, CS16_SW8, CS17_SW8, CS18_SW8},
+
+ {0, CS10_SW1, CS11_SW1, CS12_SW1},
+ {0, CS10_SW2, CS11_SW2, CS12_SW2},
+ {0, CS10_SW3, CS11_SW3, CS12_SW3},
+ {0, CS10_SW4, CS11_SW4, CS12_SW4},
+ {0, CS10_SW5, CS11_SW5, CS12_SW5},
+ {0, CS10_SW6, CS11_SW6, CS12_SW6},
+ {0, CS10_SW7, CS11_SW7, CS12_SW7},
+ {0, CS10_SW8, CS11_SW8, CS12_SW8},
+ {0, CS10_SW9, CS11_SW9, CS12_SW9},
+ {0, CS10_SW10, CS11_SW10, CS12_SW10},
+ {0, CS10_SW11, CS11_SW11, CS12_SW11},
+ {0, CS16_SW9, CS17_SW9, CS18_SW9},
+
+ {0, CS13_SW1, CS14_SW1, CS15_SW1},
+ {0, CS13_SW2, CS14_SW2, CS15_SW2},
+ {0, CS13_SW3, CS14_SW3, CS15_SW3},
+ {0, CS13_SW4, CS14_SW4, CS15_SW4},
+ {0, CS13_SW5, CS14_SW5, CS15_SW5},
+ {0, CS13_SW5, CS14_SW5, CS15_SW5},
+ {0, CS13_SW6, CS14_SW6, CS15_SW6},
+ {0, CS13_SW7, CS14_SW7, CS15_SW7},
+ {0, CS13_SW8, CS14_SW8, CS15_SW8},
+ {0, CS13_SW9, CS14_SW9, CS15_SW9},
+ {0, CS13_SW10, CS14_SW10, CS15_SW10}
+};
+
+bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) {
+ if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) {
+ return false;
+ }
+
+ if (host_keyboard_led_state().caps_lock) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 255, 255, 255);
+ } else {
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 0, 0, 0);
+ }
+ }
+
+ switch (get_highest_layer(layer_state)) {
+ case 2:{
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ } break;
+ case 3:{
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ }
+ } break;
+
+ case 0:{
+ if (L_WIN) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ }else{
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ }
+ }
+ } break;
+
+ case 1:{
+ if (L_MAC) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255);
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ }
+ }else{
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ }
+ } break;
+
+ default:{
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0);
+ RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0);
+ }
+ }
+ }
+ return false;
+}
+
+
+void suspend_power_down_kb(void) {
+ writePinLow(SDB);
+ suspend_power_down_user();
+}
+
+void suspend_wakeup_init_kb(void) {
+ writePinHigh(SDB);
+ suspend_wakeup_init_user();
+}
+#endif
+
+bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
+ if (!process_record_user(keycode, record)) {
+ return false;
+ }
+ switch (keycode) {
+# ifdef RGB_MATRIX_ENABLE
+ case RGB_TOG:
+ if (record->event.pressed) {
+ switch (rgb_matrix_get_flags()) {
+ case LED_FLAG_ALL: {
+ rgb_matrix_set_flags(LED_FLAG_NONE);
+ rgb_matrix_set_color_all(0, 0, 0);
+ } break;
+ default: {
+ rgb_matrix_set_flags(LED_FLAG_ALL);
+ } break;
+ }
+ }
+ return false;
+# endif
+ case TO(0):
+ if (record->event.pressed) {
+ L_WIN = 1;
+ set_single_persistent_default_layer(0); // Save default layer 0 to eeprom
+ } else {
+ L_WIN = 0;
+ }
+ return true; // continue all further processing of this key
+
+ case MO(2):
+ if (record->event.pressed) {
+ FN_WIN = 1;
+ } else {
+ FN_WIN = 0;
+ }
+ return true; // continue all further processing of this key
+
+ case TO(1):
+ if (record->event.pressed) {
+ L_MAC = 1;
+ set_single_persistent_default_layer(1); //Save default layer 1 to eeprom
+ } else {
+ L_MAC = 0;
+ }
+ return true; // continue all further processing of this key
+
+ case MO(3):
+ if (record->event.pressed) {
+ FN_MAC = 1;
+ } else {
+ FN_MAC = 0;
+ }
+ return true; // continue all further processing of this key
+ default:
+ return true;
+ }
+}
+
+void board_init(void) {
+ // JTAG-DP Disabled and SW-DP Disabled
+ AFIO->MAPR = (AFIO->MAPR & ~AFIO_MAPR_SWJ_CFG_Msk) | AFIO_MAPR_SWJ_CFG_DISABLE;
+# ifdef RGB_MATRIX_ENABLE
+ setPinOutput(SDB);
+ writePinHigh(SDB);
+# endif
+}
diff --git a/keyboards/skyloong/gk61/pro_48/readme.md b/keyboards/skyloong/gk61/pro_48/readme.md
new file mode 100644
index 0000000000..babfec4a3b
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/readme.md
@@ -0,0 +1,33 @@
+# GK61 PRO 48
+
+![GK61 PRO](https://i.imgur.com/DTetyVLh.jpg)
+
+## The PCB features:
+* QMK & VIA compatibility
+* RGB Matrix backlight
+* The space bar position switch can be interchanged with encoder module.
+
+
+The following is the QMK Firmware for the Destop 60% keylayout - designed in Dongguan Jizhi Electronic Technology Co., Ltd
+
+* Keyboard Maintainer: [NaturalZh](https://github.com/NaturalZh)
+* Hardware Supported: DestopPCB for Skyloong keylayout 60%, STM32F103C8T6
+* Hardware Availability: http://www.skyloong.com.cn https://skyloong.vip
+
+Make example for this keyboard (after setting up your build environment):
+
+ make skyloong/gk61/pro_48:default
+
+Flashing example for this keyboard:
+
+ make skyloong/gk61/pro_48:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/skyloong/gk61/pro_48/rules.mk b/keyboards/skyloong/gk61/pro_48/rules.mk
new file mode 100644
index 0000000000..3bbd261429
--- /dev/null
+++ b/keyboards/skyloong/gk61/pro_48/rules.mk
@@ -0,0 +1 @@
+# File intentionally blank
diff --git a/keyboards/skyloong/gk61/v1/config.h b/keyboards/skyloong/gk61/v1/config.h
new file mode 100644
index 0000000000..bd9cab743f
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/config.h
@@ -0,0 +1,25 @@
+/* Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#pragma once
+
+#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_GND
+
+#define RGB_MATRIX_LED_COUNT 64
+
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS //Enable frame effects
+#define RGB_MATRIX_KEYPRESSES //Reacts to keypress
+#define RGB_DISABLE_WHEN_USB_SUSPENDED //turn off effects when suspended
+#define SDB C1
diff --git a/keyboards/skyloong/gk61/v1/halconf.h b/keyboards/skyloong/gk61/v1/halconf.h
new file mode 100644
index 0000000000..74dddca8a5
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/halconf.h
@@ -0,0 +1,21 @@
+/* Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#pragma once
+
+#define HAL_USE_I2C TRUE
+
+#include_next <halconf.h>
+
diff --git a/keyboards/skyloong/gk61/v1/info.json b/keyboards/skyloong/gk61/v1/info.json
new file mode 100644
index 0000000000..6015efa12c
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/info.json
@@ -0,0 +1,331 @@
+{
+ "manufacturer": "JZ-Skyloong",
+ "keyboard_name": "GK61",
+ "maintainer": "JZ-Skyloong",
+ "bootloader": "stm32duino",
+ "diode_direction": "ROW2COL",
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "command": false,
+ "console": false,
+ "rgb_matrix": true
+ },
+ "processor": "STM32F103",
+ "matrix_pins": {
+ "cols": ["B11", "C6", "C7", "B12", "B13", "B14", "B15", "B10", "B2", "B1", "D2", "B3", "B4", "B5"],
+ "rows": ["A15", "C10", "C11", "C12", "A3"]
+ },
+ "rgb_matrix": {
+ "animations": {
+ "breathing": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "rainbow_moving_chevron": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "solid_splash": true
+ },
+ "driver": "snled27351",
+ "hue_steps": 20,
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 89, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 104, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 119, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 134, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 149, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 164, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 179, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 209, "y": 0, "flags": 4},
+ {"matrix": [1, 0], "x": 0, "y": 16, "flags": 4},
+ {"matrix": [1, 1], "x": 22, "y": 16, "flags": 4},
+ {"matrix": [1, 2], "x": 37, "y": 16, "flags": 4},
+ {"matrix": [1, 3], "x": 52, "y": 16, "flags": 4},
+ {"matrix": [1, 4], "x": 67, "y": 16, "flags": 4},
+ {"matrix": [1, 5], "x": 82, "y": 16, "flags": 4},
+ {"matrix": [1, 6], "x": 97, "y": 16, "flags": 4},
+ {"matrix": [1, 7], "x": 112, "y": 16, "flags": 4},
+ {"matrix": [1, 8], "x": 127, "y": 16, "flags": 4},
+ {"matrix": [1, 9], "x": 142, "y": 16, "flags": 4},
+ {"matrix": [1, 10], "x": 156, "y": 16, "flags": 4},
+ {"matrix": [1, 11], "x": 171, "y": 16, "flags": 4},
+ {"matrix": [1, 12], "x": 186, "y": 16, "flags": 4},
+ {"matrix": [1, 13], "x":216, "y": 16, "flags": 4},
+ {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4},
+ {"matrix": [2, 1], "x": 26, "y": 32, "flags": 4},
+ {"matrix": [2, 2], "x": 41, "y": 32, "flags": 4},
+ {"matrix": [2, 3], "x": 56, "y": 32, "flags": 4},
+ {"matrix": [2, 4], "x": 71, "y": 32, "flags": 4},
+ {"matrix": [2, 5], "x": 86, "y": 32, "flags": 4},
+ {"matrix": [2, 6], "x": 101, "y": 32, "flags": 4},
+ {"matrix": [2, 7], "x": 115, "y": 32, "flags": 4},
+ {"matrix": [2, 8], "x": 130, "y": 32, "flags": 4},
+ {"matrix": [2, 9], "x": 145, "y": 32, "flags": 4},
+ {"matrix": [2, 10], "x": 160, "y": 32, "flags": 4},
+ {"matrix": [2, 11], "x": 175, "y": 32, "flags": 4},
+ {"matrix": [2, 13], "x": 208, "y": 32, "flags": 4},
+ {"matrix": [3, 0], "x": 0, "y": 48, "flags": 4},
+ {"matrix": [3, 1], "x": 34, "y": 48, "flags": 4},
+ {"matrix": [3, 2], "x": 48, "y": 48, "flags": 4},
+ {"matrix": [3, 3], "x": 63, "y": 48, "flags": 4},
+ {"matrix": [3, 4], "x": 78, "y": 48, "flags": 4},
+ {"matrix": [3, 6], "x": 93, "y": 48, "flags": 4},
+ {"matrix": [4, 6], "x": 108, "y": 48, "flags": 4},
+ {"matrix": [3, 7], "x": 123, "y": 48, "flags": 4},
+ {"matrix": [3, 8], "x": 138, "y": 48, "flags": 4},
+ {"matrix": [3, 9], "x": 153, "y": 48, "flags": 4},
+ {"matrix": [3, 10], "x": 168, "y": 48, "flags": 4},
+ {"matrix": [3, 12], "x": 205, "y": 48, "flags": 4},
+ {"matrix": [4, 0], "x": 0, "y": 64, "flags": 4},
+ {"matrix": [4, 1], "x": 19, "y": 64, "flags": 4},
+ {"matrix": [4, 2], "x": 37, "y": 64, "flags": 4},
+ {"matrix": [4, 4], "x": 56, "y": 64, "flags": 4},
+ {"matrix": [4, 5], "x":95, "y": 64, "flags": 4},
+ {"matrix": [3, 5], "x": 107, "y": 64, "flags": 4},
+ {"matrix": [4, 8], "x": 130, "y": 64, "flags": 4},
+ {"matrix": [4, 9], "x": 149, "y": 64, "flags": 4},
+ {"matrix": [4, 10], "x": 175, "y": 64, "flags": 4},
+ {"matrix": [4, 11], "x": 198, "y": 64, "flags": 4},
+ {"matrix": [4, 13], "x": 220, "y": 64, "flags": 4}
+ ],
+ "max_brightness": 200,
+ "sat_steps": 20,
+ "speed_steps": 20,
+ "val_steps": 20
+ },
+ "url": "https://github.com/JZ-Skyloong",
+ "usb": {
+ "vid": "0x1EA7",
+ "device_version": "1.0.0",
+ "pid": "0x6061",
+ "max_power": 380,
+ "force_nkro": true
+ },
+ "community_layouts": ["60_ansi"],
+ "layouts": {
+ "LAYOUT_all": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [4, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 4], "x": 3.75, "y": 4, "w": 2.6},
+ {"matrix": [4, 5], "x": 6.35, "y": 4, "w": 0.7},
+ {"matrix": [3, 5], "x": 7.15, "y": 4, "w": 1.5},
+ {"matrix": [4, 8], "x": 8.75, "y": 4, "w": 1.25},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [4, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_space": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "w": 1},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+ {"matrix": [0, 6], "x": 6, "y": 0},
+ {"matrix": [0, 7], "x": 7, "y": 0},
+ {"matrix": [0, 8], "x": 8, "y": 0},
+ {"matrix": [0, 9], "x": 9, "y": 0},
+ {"matrix": [0, 10], "x": 10, "y": 0},
+ {"matrix": [0, 11], "x": 11, "y": 0},
+ {"matrix": [0, 12], "x": 12, "y": 0},
+ {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
+ {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
+ {"matrix": [1, 1], "x": 1.5, "y": 1},
+ {"matrix": [1, 2], "x": 2.5, "y": 1},
+ {"matrix": [1, 3], "x": 3.5, "y": 1},
+ {"matrix": [1, 4], "x": 4.5, "y": 1},
+ {"matrix": [1, 5], "x": 5.5, "y": 1},
+ {"matrix": [1, 6], "x": 6.5, "y": 1},
+ {"matrix": [1, 7], "x": 7.5, "y": 1},
+ {"matrix": [1, 8], "x": 8.5, "y": 1},
+ {"matrix": [1, 9], "x": 9.5, "y": 1},
+ {"matrix": [1, 10], "x": 10.5, "y": 1},
+ {"matrix": [1, 11], "x": 11.5, "y": 1},
+ {"matrix": [1, 12], "x": 12.5, "y": 1},
+ {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
+ {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 2},
+ {"matrix": [2, 2], "x": 2.75, "y": 2},
+ {"matrix": [2, 3], "x": 3.75, "y": 2},
+ {"matrix": [2, 4], "x": 4.75, "y": 2},
+ {"matrix": [2, 5], "x": 5.75, "y": 2},
+ {"matrix": [2, 6], "x": 6.75, "y": 2},
+ {"matrix": [2, 7], "x": 7.75, "y": 2},
+ {"matrix": [2, 8], "x": 8.75, "y": 2},
+ {"matrix": [2, 9], "x": 9.75, "y": 2},
+ {"matrix": [2, 10], "x": 10.75, "y": 2},
+ {"matrix": [2, 11], "x": 11.75, "y": 2},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
+ {"matrix": [3, 1], "x": 2.25, "y": 3},
+ {"matrix": [3, 2], "x": 3.25, "y": 3},
+ {"matrix": [3, 3], "x": 4.25, "y": 3},
+ {"matrix": [3, 4], "x": 5.25, "y": 3},
+ {"matrix": [3, 6], "x": 6.25, "y": 3},
+ {"matrix": [4, 6], "x": 7.25, "y": 3},
+ {"matrix": [3, 7], "x": 8.25, "y": 3},
+ {"matrix": [3, 8], "x": 9.25, "y": 3},
+ {"matrix": [3, 9], "x": 10.25, "y": 3},
+ {"matrix": [3, 10], "x": 11.25, "y": 3},
+ {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
+ {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 4], "x": 3.75, "y": 4, "w": 2.5},
+ {"matrix": [3, 5], "x": 6.25, "y": 4, "w": 2.5},
+ {"matrix": [4, 8], "x": 8.75, "y": 4, "w": 1.25},
+ {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
+ {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
+ {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
+ {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
+ ]
+ }
+ }
+
+}
+
diff --git a/keyboards/skyloong/gk61/v1/keymaps/default/keymap.c b/keyboards/skyloong/gk61/v1/keymaps/default/keymap.c
new file mode 100644
index 0000000000..4ddb35f6f4
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/keymaps/default/keymap.c
@@ -0,0 +1,47 @@
+/* Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+
+#include QMK_KEYBOARD_H
+
+// Defines names for use in layer keycodes and the keymap
+enum layer_names {
+ _BASE,
+ _FN,
+};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Base */
+ [_BASE] = LAYOUT_all(
+ KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_EQUAL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM , KC_DOT, KC_SLASH, KC_RSFT,
+ KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_APP, KC_RCTL, MO(1)
+ ),
+ /* Fn+ */
+ [_FN] = LAYOUT_all(
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR,
+ RGB_TOG, RGB_VAD, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_VOLU, KC_MUTE,
+ RGB_MOD, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MPRV, KC_MNXT, KC_MPLY,
+ KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_UP, KC_RSFT,
+ KC_CALC, KC_MAIL, KC_NO, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO
+ ),
+
+};
+
+
diff --git a/keyboards/skyloong/gk61/v1/keymaps/via/keymap.c b/keyboards/skyloong/gk61/v1/keymaps/via/keymap.c
new file mode 100644
index 0000000000..4ddb35f6f4
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/keymaps/via/keymap.c
@@ -0,0 +1,47 @@
+/* Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+
+#include QMK_KEYBOARD_H
+
+// Defines names for use in layer keycodes and the keymap
+enum layer_names {
+ _BASE,
+ _FN,
+};
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Base */
+ [_BASE] = LAYOUT_all(
+ KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, KC_EQUAL, KC_BSPC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM , KC_DOT, KC_SLASH, KC_RSFT,
+ KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_APP, KC_RCTL, MO(1)
+ ),
+ /* Fn+ */
+ [_FN] = LAYOUT_all(
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR,
+ RGB_TOG, RGB_VAD, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_VOLU, KC_MUTE,
+ RGB_MOD, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MPRV, KC_MNXT, KC_MPLY,
+ KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_UP, KC_RSFT,
+ KC_CALC, KC_MAIL, KC_NO, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO
+ ),
+
+};
+
+
diff --git a/keyboards/keychron/v2/ansi/keymaps/vnmm/rules.mk b/keyboards/skyloong/gk61/v1/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/keychron/v2/ansi/keymaps/vnmm/rules.mk
+++ b/keyboards/skyloong/gk61/v1/keymaps/via/rules.mk
diff --git a/keyboards/skyloong/gk61/v1/mcuconf.h b/keyboards/skyloong/gk61/v1/mcuconf.h
new file mode 100644
index 0000000000..92905e0b11
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/mcuconf.h
@@ -0,0 +1,21 @@
+/* Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef STM32_I2C_USE_I2C1
+#define STM32_I2C_USE_I2C1 TRUE
diff --git a/keyboards/skyloong/gk61/v1/readme.md b/keyboards/skyloong/gk61/v1/readme.md
new file mode 100644
index 0000000000..95917ad957
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/readme.md
@@ -0,0 +1,33 @@
+# GK61
+
+![GK61](https://i.imgur.com/hEufouph.jpg)
+
+## The PCB features:
+* QMK & VIA compatibility
+* RGB Matrix backlight
+
+
+The following is the QMK Firmware for the Destop 60% keylayout - designed in Dongguan Jizhi Electronic Technology Co., Ltd
+* Keyboard Maintainer: [JZ-Skyloong](https://github.com/JZ-Skyloong)
+* Hardware Supported: DestopPCB for Skyloong keylayout 60%, STM32F103C8T6
+* Hardware Availability: http://www.skyloong.com.cn
+
+Make example for this keyboard (after setting up your build environment):
+
+ make skyloong/gk61/v1:default
+ make skyloong/gk61/v1:via
+
+Flashing example for this keyboard:
+
+ make skyloong/gk61/v1:default:flash
+ make skyloong/gk61/v1:via:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/skyloong/gk61/v1/rules.mk b/keyboards/skyloong/gk61/v1/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/skyloong/gk61/v1/v1.c b/keyboards/skyloong/gk61/v1/v1.c
new file mode 100644
index 0000000000..cb3772f6b4
--- /dev/null
+++ b/keyboards/skyloong/gk61/v1/v1.c
@@ -0,0 +1,119 @@
+/* Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include "quantum.h"
+
+#ifdef RGB_MATRIX_ENABLE
+
+const snled27351_led_t PROGMEM g_snled27351_leds[RGB_MATRIX_LED_COUNT] = {
+/* Refer to SNLED27351 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C_1, B_1, A_1},
+ {0, C_2, B_2, A_2},
+ {0, C_3, B_3, A_3},
+ {0, C_4, B_4, A_4},
+ {0, C_5, B_5, A_5},
+ {0, C_6, B_6, A_6},
+ {0, C_7, B_7, A_7},
+ {0, C_8, B_8, A_8},
+ {0, C_9, B_9, A_9},
+ {0, C_10, B_10, A_10},
+ {0, C_11, B_11, A_11},
+ {0, C_12, B_12, A_12},
+ {0, C_13, B_13, A_13},
+ {0, C_14, B_14, A_14},
+
+
+ {0, F_1, E_1, D_1},
+ {0, F_2, E_2, D_2},
+ {0, F_3, E_3, D_3},
+ {0, F_4, E_4, D_4},
+ {0, F_5, E_5, D_5},
+ {0, F_6, E_6, D_6},
+ {0, F_7, E_7, D_7},
+ {0, F_8, E_8, D_8},
+ {0, F_9, E_9, D_9},
+ {0, F_10, E_10, D_10},
+ {0, F_11, E_11, D_11},
+ {0, F_12, E_12, D_12},
+ {0, F_13, E_13, D_13},
+ {0, F_14, E_14, D_14},
+
+
+ {0, I_1, H_1, G_1},
+ {0, I_2, H_2, G_2},
+ {0, I_3, H_3, G_3},
+ {0, I_4, H_4, G_4},
+ {0, I_5, H_5, G_5},
+ {0, I_6, H_6, G_6},
+ {0, I_7, H_7, G_7},
+ {0, I_8, H_8, G_8},
+ {0, I_9, H_9, G_9},
+ {0, I_10, H_10, G_10},
+ {0, I_11, H_11, G_11},
+ {0, I_12, H_12, G_12},
+ {0, I_13, H_13, G_13},
+
+
+
+ {0, L_1, K_1, J_1},
+ {0, L_2, K_2, J_2},
+ {0, L_3, K_3, J_3},
+ {0, L_4, K_4, J_4},
+ {0, L_5, K_5, J_5},
+ {0, L_6, K_6, J_6},
+ {0, L_7, K_7, J_7},
+ {0, L_8, K_8, J_8},
+ {0, L_9, K_9, J_9},
+ {0, L_10, K_10, J_10},
+ {0, L_11, K_11, J_11},
+ {0, L_13, K_13, J_13},
+
+ {0, L_15, K_15, J_15},
+ {0, L_16, K_16, J_16},
+ {0, I_15, H_15, G_15},
+ {0, I_16, H_16, G_16},
+ {0, F_15, E_15, D_15},
+ {0, F_16, E_16, D_16},
+ {0, C_15, B_15, A_15},
+ {0, C_16, B_16, A_16},
+ {0, I_14, H_14, G_14},
+ {0, L_12, K_12, J_12},
+ {0, L_14, K_14, J_14},
+
+
+};
+#endif // RGB_MATRIX_ENABLE
+
+void suspend_power_down_kb() {
+ writePinLow(SDB);
+
+ suspend_power_down_user();
+}
+
+void suspend_wakeup_init_kb() {
+ writePinHigh(SDB);
+
+ suspend_wakeup_init_user();
+}
+
+void board_init(void) {
+ setPinOutput(SDB);
+ writePinHigh(SDB);
+}
diff --git a/keyboards/skyloong/qk21/v1/config.h b/keyboards/skyloong/qk21/v1/config.h
new file mode 100644
index 0000000000..c74d5cce78
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/config.h
@@ -0,0 +1,12 @@
+// Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+/* Enable num-lock LED */
+#define NUM_LOCK_INDEX 13
+
+#define RGB_MATRIX_LED_COUNT 21
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS //Enable frame effects
+#define RGB_MATRIX_KEYPRESSES //Reacts to keypress
+#define RGB_DISABLE_WHEN_USB_SUSPENDED //turn off effects when suspended
diff --git a/keyboards/skyloong/qk21/v1/info.json b/keyboards/skyloong/qk21/v1/info.json
new file mode 100644
index 0000000000..d5aa5e8be9
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/info.json
@@ -0,0 +1,129 @@
+{
+ "manufacturer": "JZ-Skyloong",
+ "keyboard_name": "qk21",
+ "maintainer": "linlin012",
+ "bootloader": "atmel-dfu",
+ "diode_direction": "ROW2COL",
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "matrix_pins": {
+ "cols": ["F7", "E6", "C7", "D5"],
+ "rows": ["F0", "F1", "F4", "F5", "F6", "B4"]
+ },
+ "processor": "atmega32u4",
+ "ws2812": {
+ "pin": "B7"
+ },
+ "rgb_matrix":{
+ "driver": "ws2812",
+ "animations": {
+ "alphas_mods": false,
+ "band_pinwheel_sat": false,
+ "band_pinwheel_val": false,
+ "band_sat": false,
+ "band_spiral_sat": false,
+ "band_spiral_val": false,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": false,
+ "cycle_out_in": false,
+ "cycle_out_in_dual": false,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "dual_beacom": false,
+ "gradient_left_right": false,
+ "gradient_up_down": false,
+ "hue_breathing": false,
+ "hue_pendulum": false,
+ "hue_wave": false,
+ "jellybean_raindrops": true,
+ "pixel_fractal": false,
+ "pixel_rain": true,
+ "rainbow_moving_chevron":false,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "ranbow_beacon": true,
+ "typing_heatmap": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_cross": true,
+ "splash": true
+ },
+ "layout": [
+ {"matrix": [5, 0], "x": 37, "y": 64, "flags": 4},
+ {"matrix": [5, 2], "x": 149, "y": 64, "flags": 4},
+ {"matrix": [5, 3], "x": 224, "y": 58, "flags": 4},
+
+ {"matrix": [4, 0], "x": 0, "y": 51, "flags": 4},
+ {"matrix": [4, 1], "x": 75, "y": 51, "flags": 4},
+ {"matrix": [4, 2], "x": 149, "y": 51, "flags": 4},
+
+ {"matrix": [3, 0], "x": 0, "y": 38, "flags": 4},
+ {"matrix": [3, 1], "x": 75, "y": 38, "flags": 4},
+ {"matrix": [3, 2], "x": 149, "y": 38, "flags": 4},
+ {"matrix": [3, 3], "x": 224, "y": 31, "flags": 4},
+
+ {"matrix": [2, 0], "x": 0, "y": 25, "flags": 4},
+ {"matrix": [2, 1], "x": 75, "y": 25, "flags": 4},
+ {"matrix": [2, 2], "x": 149, "y": 25, "flags": 4},
+
+ {"matrix": [1, 0], "x": 0, "y": 12, "flags": 8},
+ {"matrix": [1, 1], "x": 75, "y": 12, "flags": 4},
+ {"matrix": [1, 2], "x": 149, "y": 12, "flags": 4},
+ {"matrix": [1, 3], "x": 224, "y": 12, "flags": 4},
+
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"matrix": [0, 1], "x": 75, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 149, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 224, "y": 0, "flags": 4}
+
+ ],
+ "hue_steps": 20,
+ "max_brightness": 200,
+ "sat_steps": 20,
+ "speed_steps": 20,
+ "val_steps": 20
+ },
+ "url": "https://github.com/JZ-Skyloong",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x6021",
+ "vid": "0x1EA7",
+ "max_power": 250
+ },
+ "community_layouts": ["numpad_6x4"],
+ "layouts": {
+ "LAYOUT_numpad_6x4": {
+ "layout": [
+ { "matrix": [0, 0], "x": 0, "y": 0 },
+ { "matrix": [0, 1], "x": 1, "y": 0 },
+ { "matrix": [0, 2], "x": 2, "y": 0 },
+ { "matrix": [0, 3], "x": 3, "y": 0 },
+ { "matrix": [1, 0], "x": 0, "y": 1 },
+ { "matrix": [1, 1], "x": 1, "y": 1 },
+ { "matrix": [1, 2], "x": 2, "y": 1 },
+ { "matrix": [1, 3], "x": 3, "y": 1 },
+ { "matrix": [2, 0], "x": 0, "y": 2 },
+ { "matrix": [2, 1], "x": 1, "y": 2 },
+ { "matrix": [2, 2], "x": 2, "y": 2 },
+ { "matrix": [3, 0], "x": 0, "y": 3 },
+ { "matrix": [3, 1], "x": 1, "y": 3 },
+ { "matrix": [3, 2], "x": 2, "y": 3 },
+ { "matrix": [3, 3], "x": 3, "y": 2, "h": 2 },
+ { "matrix": [4, 0], "x": 0, "y": 4 },
+ { "matrix": [4, 1], "x": 1, "y": 4 },
+ { "matrix": [4, 2], "x": 2, "y": 4 },
+ { "matrix": [5, 0], "x": 0, "y": 5, "w": 2 },
+ { "matrix": [5, 2], "x": 2, "y": 5 },
+ { "matrix": [5, 3], "x": 3, "y": 4, "h": 2 }
+ ]
+ }
+ }
+}
diff --git a/keyboards/skyloong/qk21/v1/keymaps/default/keymap.c b/keyboards/skyloong/qk21/v1/keymaps/default/keymap.c
new file mode 100644
index 0000000000..8cb1d20085
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/keymaps/default/keymap.c
@@ -0,0 +1,54 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┬───┬───┬───┐
+ * │Esc│Tab│MO1│Bsp│
+ * ├───┼───┼───┼───┤
+ * │Num│ / │ * │ - │
+ * ├───┼───┼───┼───┤
+ * │ 7 │ 8 │ 9 │ │
+ * ├───┼───┼───┤ + │
+ * │ 4 │ 5 │ 6 │ │
+ * ├───┼───┼───┼───┤
+ * │ 1 │ 2 │ 3 │ │
+ * ├───┴───┼───┤Ent│
+ * │ 0 │ . │ │
+ * └───────┴───┴───┘
+ */
+ [0] = LAYOUT_numpad_6x4(
+ KC_ESC, KC_TAB, MO(1), KC_BSPC,
+ KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_P7, KC_P8, KC_P9,
+ KC_P4, KC_P5, KC_P6, KC_PPLS,
+ KC_P1, KC_P2, KC_P3,
+ KC_P0, KC_PDOT, KC_PENT
+ ),
+
+ /*
+ * ┌───┐───┬───┬───┐
+ * │Rst│MOD│MO1│Bsp│
+ * └───┘───┼───┼───┤
+ * │Num│HUD│HUI│VAD│
+ * ┌───┬───┬───┐───┤
+ * │Hom│ ↑ │PgU│ │
+ * ├───┼───┼───┤VAI│
+ * │ ← │ │ → │ │
+ * ├───┼───┼───┤───┤
+ * │End│ ↓ │PgD│ │
+ * ├───┴───┼───┤TOG│
+ * │Insert │Del│ │
+ * └───────┴───┘───┘
+ */
+ [1] = LAYOUT_numpad_6x4(
+ QK_BOOT, RGB_MOD, _______, _______,
+ _______, RGB_HUD, RGB_HUI, RGB_VAD,
+ KC_HOME, KC_UP, KC_PGUP,
+ KC_LEFT, RGB_M_SW, KC_RGHT, RGB_VAI,
+ KC_END, KC_DOWN, KC_PGDN,
+ KC_INS, KC_DEL, RGB_TOG
+ )
+};
diff --git a/keyboards/skyloong/qk21/v1/keymaps/via/keymap.c b/keyboards/skyloong/qk21/v1/keymaps/via/keymap.c
new file mode 100644
index 0000000000..8cb1d20085
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/keymaps/via/keymap.c
@@ -0,0 +1,54 @@
+// Copyright 2023 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ * ┌───┬───┬───┬───┐
+ * │Esc│Tab│MO1│Bsp│
+ * ├───┼───┼───┼───┤
+ * │Num│ / │ * │ - │
+ * ├───┼───┼───┼───┤
+ * │ 7 │ 8 │ 9 │ │
+ * ├───┼───┼───┤ + │
+ * │ 4 │ 5 │ 6 │ │
+ * ├───┼───┼───┼───┤
+ * │ 1 │ 2 │ 3 │ │
+ * ├───┴───┼───┤Ent│
+ * │ 0 │ . │ │
+ * └───────┴───┴───┘
+ */
+ [0] = LAYOUT_numpad_6x4(
+ KC_ESC, KC_TAB, MO(1), KC_BSPC,
+ KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_P7, KC_P8, KC_P9,
+ KC_P4, KC_P5, KC_P6, KC_PPLS,
+ KC_P1, KC_P2, KC_P3,
+ KC_P0, KC_PDOT, KC_PENT
+ ),
+
+ /*
+ * ┌───┐───┬───┬───┐
+ * │Rst│MOD│MO1│Bsp│
+ * └───┘───┼───┼───┤
+ * │Num│HUD│HUI│VAD│
+ * ┌───┬───┬───┐───┤
+ * │Hom│ ↑ │PgU│ │
+ * ├───┼───┼───┤VAI│
+ * │ ← │ │ → │ │
+ * ├───┼───┼───┤───┤
+ * │End│ ↓ │PgD│ │
+ * ├───┴───┼───┤TOG│
+ * │Insert │Del│ │
+ * └───────┴───┘───┘
+ */
+ [1] = LAYOUT_numpad_6x4(
+ QK_BOOT, RGB_MOD, _______, _______,
+ _______, RGB_HUD, RGB_HUI, RGB_VAD,
+ KC_HOME, KC_UP, KC_PGUP,
+ KC_LEFT, RGB_M_SW, KC_RGHT, RGB_VAI,
+ KC_END, KC_DOWN, KC_PGDN,
+ KC_INS, KC_DEL, RGB_TOG
+ )
+};
diff --git a/keyboards/mlego/m65/keymaps/via/rules.mk b/keyboards/skyloong/qk21/v1/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/mlego/m65/keymaps/via/rules.mk
+++ b/keyboards/skyloong/qk21/v1/keymaps/via/rules.mk
diff --git a/keyboards/skyloong/qk21/v1/readme.md b/keyboards/skyloong/qk21/v1/readme.md
new file mode 100644
index 0000000000..871a819f66
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/readme.md
@@ -0,0 +1,27 @@
+# qk21_V1
+
+![qk21](https://i.imgur.com/d65CJC5h.jpg)
+
+The following is the QMK Firmware for the number pad 6x4 keylayout - designed in Dongguan Jizhi Electronic Technology Co., Ltd
+
+* Keyboard Maintainer: [linlin012](https://github.com/linlin012)
+* Hardware Supported: JK172-RGB(4028)-U PCBs, MEGA32U4-MU
+* Hardware Availability: http://www.skyloong.com.cn
+
+Make example for this keyboard (after setting up your build environment):
+
+ make skyloong/qk21/v1:default
+
+Flashing example for this keyboard:
+
+ make skyloong/qk21/v1:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/skyloong/qk21/v1/rules.mk b/keyboards/skyloong/qk21/v1/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/skyloong/qk21/v1/v1.c b/keyboards/skyloong/qk21/v1/v1.c
new file mode 100644
index 0000000000..9630d3e223
--- /dev/null
+++ b/keyboards/skyloong/qk21/v1/v1.c
@@ -0,0 +1,49 @@
+// Copyright 2021 JZ-Skyloong (@JZ-Skyloong)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "quantum.h"
+
+#if defined(RGB_MATRIX_ENABLE) && defined(NUM_LOCK_INDEX)
+
+bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
+ if (!process_record_user(keycode, record)) {
+ return false;
+ }
+ switch (keycode) {
+# ifdef RGB_MATRIX_ENABLE
+ case RGB_TOG:
+ if (record->event.pressed) {
+ switch (rgb_matrix_get_flags()) {
+ case LED_FLAG_ALL: {
+ rgb_matrix_set_flags(LED_FLAG_NONE);
+ rgb_matrix_set_color_all(0, 0, 0);
+ } break;
+ default: {
+ rgb_matrix_set_flags(LED_FLAG_ALL);
+ } break;
+ }
+ }
+ return false;
+# endif
+ }
+ return true;
+}
+
+bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) {
+ if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) {
+ return false;
+ }
+ // RGB_MATRIX_INDICATOR_SET_COLOR(index, red, green, blue);
+
+ if (host_keyboard_led_state().num_lock) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(NUM_LOCK_INDEX, 255, 255, 255);
+ } else {
+ if (!rgb_matrix_get_flags()) {
+ RGB_MATRIX_INDICATOR_SET_COLOR(NUM_LOCK_INDEX, 0, 0, 0);
+ }
+ }
+ return true;
+}
+
+#endif // NUM_LOCK_INDEX
+
diff --git a/keyboards/smallkeyboard/config.h b/keyboards/smallkeyboard/config.h
index 4bee1c3663..d98a2b6ef2 100644
--- a/keyboards/smallkeyboard/config.h
+++ b/keyboards/smallkeyboard/config.h
@@ -66,15 +66,7 @@
// #define ENABLE_RGB_MATRIX_SOLID_SPLASH
// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// The address will vary depending on your wiring:
-// 0b1110100 AD <-> GND
-// 0b1110111 AD <-> VCC
-// 0b1110101 AD <-> SCL
-// 0b1110110 AD <-> SDA
-#define DRIVER_ADDR_1 0b1110100
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define RGB_MATRIX_LED_COUNT 6
#endif
diff --git a/keyboards/smallkeyboard/smallkeyboard.c b/keyboards/smallkeyboard/smallkeyboard.c
index 7ea6f2c40a..ce79c7df5d 100644
--- a/keyboards/smallkeyboard/smallkeyboard.c
+++ b/keyboards/smallkeyboard/smallkeyboard.c
@@ -17,7 +17,7 @@
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/smithrune/iron165r2/f411/info.json b/keyboards/smithrune/iron165r2/f411/info.json
index c499958255..72547e955e 100644
--- a/keyboards/smithrune/iron165r2/f411/info.json
+++ b/keyboards/smithrune/iron165r2/f411/info.json
@@ -1,4 +1,7 @@
{
+ "eeprom": {
+ "driver": "i2c"
+ },
"backlight": {
"pin": "A6",
"levels": 20,
diff --git a/keyboards/smithrune/iron165r2/f411/rules.mk b/keyboards/smithrune/iron165r2/f411/rules.mk
index e38a7a71b3..f5a58ab0cb 100644
--- a/keyboards/smithrune/iron165r2/f411/rules.mk
+++ b/keyboards/smithrune/iron165r2/f411/rules.mk
@@ -11,6 +11,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
LTO_ENABLE = no
ENCODER_ENABLE = no
-EEPROM_DRIVER = i2c
BACKLIGHT_ENABLE = yes
-
diff --git a/keyboards/snes_macropad/snes_macropad.c b/keyboards/snes_macropad/snes_macropad.c
index ba4ce44bd1..1dcfda33ec 100644
--- a/keyboards/snes_macropad/snes_macropad.c
+++ b/keyboards/snes_macropad/snes_macropad.c
@@ -84,22 +84,14 @@ static void setupForFlashing(void) {
oled_write(" ", false);
oled_write(" ", false);
- // QMK is clever about only rendering a certain number of chunks per frame,
- // but since the device will go into flash mode right after this call,
- // we want to override this behavior and force all the chunks to be sent to
- // the display immediately.
- const size_t numIterations = OLED_DISPLAY_WIDTH * OLED_DISPLAY_HEIGHT / OLED_UPDATE_PROCESS_LIMIT;
- for (size_t num = 0; num < numIterations; ++num) {
- oled_render();
- }
- // todo: Replace the above hack with this, once develop branch is merged at the end of November 2023
- // oled_render_dirty(true);
+ // Force data to be rendered
+ oled_render_dirty(true);
// Set alternating backlight colors
const uint8_t max = 20;
rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
for (size_t i = 0; i < RGBLED_NUM; ++i) {
- LED_TYPE *led_ = (LED_TYPE *)&led[i];
+ rgb_led_t *led_ = (rgb_led_t *)&led[i];
switch (i % 2) {
case 0:
setrgb(max, 0, max, led_);
diff --git a/keyboards/soda/mango/info.json b/keyboards/soda/mango/info.json
deleted file mode 100644
index 9de040efba..0000000000
--- a/keyboards/soda/mango/info.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
- "manufacturer": "Soda",
- "keyboard_name": "Mango",
- "url": "https://github.com/gezhaoyou",
- "maintainer": "JeayoKeh",
- "diode_direction": "ROW2COL",
- "processor": "STM32F072",
- "bootloader": "stm32-dfu",
- "matrix_pins": {
- "cols": ["A6", "A5", "A4", "A3"],
- "rows": ["B10", "B2", "B1", "B0", "A7"]
- },
- "usb": {
- "device_version": "1.0.0",
- "force_nkro": true,
- "vid": "0x3A54",
- "pid": "0x4F5D"
- },
- "features": {
- "bootmagic": true,
- "extrakey": true,
- "mousekey": true,
- "nkro": true,
- "rgb_matrix": true
- },
- "ws2812": {
- "pin": "A2"
- },
- "rgb_matrix": {
- "animations": {
- "alphas_mods": true,
- "gradient_up_down": true,
- "gradient_left_right": true,
- "breathing": true,
- "band_sat": true,
- "band_val": true,
- "band_pinwheel_sat": true,
- "band_pinwheel_val": true,
- "band_spiral_sat": true,
- "band_spiral_val": true,
- "cycle_all": true,
- "cycle_left_right": true,
- "cycle_up_down": true,
- "cycle_out_in": true,
- "cycle_out_in_dual": true,
- "rainbow_moving_chevron": true,
- "cycle_pinwheel": true,
- "cycle_spiral": true,
- "dual_beacon": true,
- "rainbow_beacon": true,
- "rainbow_pinwheels": true,
- "raindrops": true,
- "jellybean_raindrops": true,
- "hue_breathing": true,
- "hue_pendulum": true,
- "hue_wave": true,
- "pixel_fractal": true,
- "pixel_flow": true,
- "pixel_rain": true,
- "typing_heatmap": true,
- "digital_rain": true,
- "solid_reactive_simple": true,
- "solid_reactive": true,
- "solid_reactive_wide": true,
- "solid_reactive_multiwide": true,
- "solid_reactive_cross": true,
- "solid_reactive_multicross": true,
- "solid_reactive_nexus": true,
- "solid_reactive_multinexus": true,
- "splash": true,
- "multisplash": true,
- "solid_splash": true,
- "solid_multisplash": true
- },
- "driver": "ws2812",
- "layout": [
- {"flags": 1, "matrix": [0, 0], "x": 0, "y": 0},
- {"flags": 1, "matrix": [0, 1], "x": 75, "y": 0},
- {"flags": 1, "matrix": [0, 2], "x": 150, "y": 0},
- {"flags": 1, "matrix": [0, 3], "x": 224, "y": 0},
- {"flags": 1, "matrix": [1, 0], "x": 0, "y": 16},
- {"flags": 1, "matrix": [1, 1], "x": 75, "y": 16},
- {"flags": 1, "matrix": [1, 2], "x": 150, "y": 16},
- {"flags": 1, "matrix": [2, 0], "x": 0, "y": 32},
- {"flags": 1, "matrix": [2, 1], "x": 75, "y": 32},
- {"flags": 1, "matrix": [2, 2], "x": 150, "y": 32},
- {"flags": 1, "matrix": [2, 3], "x": 224, "y": 24},
- {"flags": 1, "matrix": [3, 0], "x": 0, "y": 48},
- {"flags": 1, "matrix": [3, 1], "x": 75, "y": 48},
- {"flags": 1, "matrix": [3, 2], "x": 150, "y": 48},
- {"flags": 1, "matrix": [4, 0], "x": 32, "y": 64},
- {"flags": 1, "matrix": [4, 1], "x": 150, "y": 64},
- {"flags": 1, "matrix": [4, 2], "x": 224, "y": 64}
- ]
- },
- "indicators": {
- "caps_lock": "B15",
- "on_state": 0
- },
- "community_layouts": ["numpad_5x4"],
- "layouts": {
- "LAYOUT_numpad_5x4": {
- "layout": [
- {"label": "Num Lock", "matrix": [0, 0], "x": 0, "y": 0},
- {"label": "/", "matrix": [0, 1], "x": 1, "y": 0},
- {"label": "*", "matrix": [0, 2], "x": 2, "y": 0},
- {"label": "-", "matrix": [0, 3], "x": 3, "y": 0},
- {"label": "7", "matrix": [1, 0], "x": 0, "y": 1},
- {"label": "8", "matrix": [1, 1], "x": 1, "y": 1},
- {"label": "9", "matrix": [1, 2], "x": 2, "y": 1},
- {"label": "4", "matrix": [2, 0], "x": 0, "y": 2},
- {"label": "5", "matrix": [2, 1], "x": 1, "y": 2},
- {"label": "6", "matrix": [2, 2], "x": 2, "y": 2},
- {"h": 2, "label": "+", "matrix": [1, 3], "x": 3, "y": 1},
- {"label": "1", "matrix": [3, 0], "x": 0, "y": 3},
- {"label": "2", "matrix": [3, 1], "x": 1, "y": 3},
- {"label": "3", "matrix": [3, 2], "x": 2, "y": 3},
- {"label": "0", "matrix": [4, 0], "w": 2, "x": 0, "y": 4},
- {"label": ".", "matrix": [4, 2], "x": 2, "y": 4},
- {"h": 2, "label": "Enter", "matrix": [3, 3], "x": 3, "y": 3}
- ]
- }
- }
-}
diff --git a/keyboards/soda/mango/readme.md b/keyboards/soda/mango/readme.md
deleted file mode 100644
index 1a1eb6bccc..0000000000
--- a/keyboards/soda/mango/readme.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# mango-17
-
-A customizable 17 keyboard, support both HOTSWAP and SOLDER.
-
-* Keyboard Maintainer: [gezhaoyou](https://github.com/gezhaoyou)
-* Hardware Supported: [gezhaoyou](https://github.com/gezhaoyou)
-
-Make example for this keyboard (after setting up your build environment):
-
- make soda/mango:default
-
-Flashing example for this keyboard:
-
- make soda/mango:default:flash
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
-
-## Bootloader
-
-Enter the bootloader in 2 ways:
-
-* **Physical reset button**: Briefly press the button: [boot] first, then press button: [reset] on the back of the PCB
-* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/soda/pocket/info.json b/keyboards/soda/pocket/info.json
deleted file mode 100644
index 9ae9f1b0de..0000000000
--- a/keyboards/soda/pocket/info.json
+++ /dev/null
@@ -1,78 +0,0 @@
-{
- "keyboard_name": "Pocket",
- "url": "",
- "maintainer": "qmk",
- "manufacturer": "gezhaoyou",
- "usb": {
- "vid": "0x1A53",
- "pid": "0x4F51",
- "device_version": "1.0.2",
- "force_nkro": true
- },
- "indicators": {
- "num_lock": "B15"
- },
- "ws2812": {
- "pin": "C15"
- },
- "rgb_matrix": {
- "driver": "ws2812"
- },
- "matrix_pins": {
- "cols": ["A2", "A1", "B14", "B4", "B5", "B6", "B7"],
- "rows": ["A7", "B0", "B1", "B2", "B10", "B11"]
- },
- "diode_direction": "ROW2COL",
- "processor": "STM32F072",
- "bootloader": "stm32-dfu",
- "layouts": {
- "LAYOUT": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 1, "y": 0},
- {"matrix": [0, 2], "x": 2, "y": 0},
-
- {"matrix": [0, 3], "x": 3.25, "y": 0},
- {"matrix": [0, 4], "x": 4.25, "y": 0},
- {"matrix": [0, 5], "x": 5.25, "y": 0},
- {"matrix": [0, 6], "x": 6.25, "y": 0},
-
- {"matrix": [1, 0], "x": 0, "y": 1.25},
- {"matrix": [1, 1], "x": 1, "y": 1.25},
- {"matrix": [1, 2], "x": 2, "y": 1.25},
-
- {"matrix": [1, 3], "x": 3.25, "y": 1.25},
- {"matrix": [1, 4], "x": 4.25, "y": 1.25},
- {"matrix": [1, 5], "x": 5.25, "y": 1.25},
- {"matrix": [1, 6], "x": 6.25, "y": 1.25},
-
- {"matrix": [2, 0], "x": 0, "y": 2.25},
- {"matrix": [2, 1], "x": 1, "y": 2.25},
- {"matrix": [2, 2], "x": 2, "y": 2.25},
-
- {"matrix": [2, 3], "x": 3.25, "y": 2.25},
- {"matrix": [2, 4], "x": 4.25, "y": 2.25},
- {"matrix": [2, 5], "x": 5.25, "y": 2.25},
-
- {"matrix": [3, 3], "x": 3.25, "y": 3.25},
- {"matrix": [3, 4], "x": 4.25, "y": 3.25},
- {"matrix": [3, 5], "x": 5.25, "y": 3.25},
- {"matrix": [3, 6], "x": 6.25, "y": 2.25, "h": 2},
-
- {"matrix": [4, 1], "x": 1, "y": 4.25},
-
- {"matrix": [4, 3], "x": 3.25, "y": 4.25},
- {"matrix": [4, 4], "x": 4.25, "y": 4.25},
- {"matrix": [4, 5], "x": 5.25, "y": 4.25},
-
- {"matrix": [5, 0], "x": 0, "y": 5.25},
- {"matrix": [5, 1], "x": 1, "y": 5.25},
- {"matrix": [5, 2], "x": 2, "y": 5.25},
-
- {"matrix": [5, 4], "x": 3.25, "y": 5.25, "w": 2},
- {"matrix": [5, 5], "x": 5.25, "y": 5.25},
- {"matrix": [5, 6], "x": 6.25, "y": 4.25, "h": 2}
- ]
- }
- }
-}
diff --git a/keyboards/soda/pocket/keymaps/via/rules.mk b/keyboards/soda/pocket/keymaps/via/rules.mk
deleted file mode 100644
index 1e5b99807c..0000000000
--- a/keyboards/soda/pocket/keymaps/via/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-VIA_ENABLE = yes
diff --git a/keyboards/soda/pocket/readme.md b/keyboards/soda/pocket/readme.md
deleted file mode 100644
index dcb97c92b0..0000000000
--- a/keyboards/soda/pocket/readme.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Pocket-34
-
-A customizable 34 keyboard, support both HOTSWAP and SOLDER.
-
-* Keyboard Maintainer: [gezhaoyou](https://github.com/gezhaoyou)
-* Hardware Supported: [gezhaoyou](https://github.com/gezhaoyou)
-
-Make example for this keyboard (after setting up your build environment):
-
- make soda/pocket:default
-
-Flashing example for this keyboard:
-
- make soda/pocket:default:flash
-
-## Bootloader
-
-Enter the bootloader in 2 ways:
-
-* **Physical reset button**: Briefly press the button: [boot] first, then press button: [reset] on the back of the PCB
-* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/sofle/keyhive/config.h b/keyboards/sofle/keyhive/config.h
index 1e90cbab48..cda0be789e 100755
--- a/keyboards/sofle/keyhive/config.h
+++ b/keyboards/sofle/keyhive/config.h
@@ -21,7 +21,3 @@
// OLED settings
#define OLED_TIMEOUT 80000
#define OLED_BRIGHTNESS 90
-
-#define SPLIT_WPM_ENABLE
-#define SPLIT_OLED_ENABLE
-#define SPLIT_TRANSPORT_MIRROR
diff --git a/keyboards/sofle/keyhive/info.json b/keyboards/sofle/keyhive/info.json
index 1f7ae8b209..ae7c4a1935 100644
--- a/keyboards/sofle/keyhive/info.json
+++ b/keyboards/sofle/keyhive/info.json
@@ -41,6 +41,13 @@
"cols": ["F6", "F7", "B1", "B3", "B2", "B6", null],
"rows": ["C6", "D7", "E6", "B4", "B5"]
}
+ },
+ "transport": {
+ "sync": {
+ "matrix_state": true,
+ "oled": true,
+ "wpm": true
+ }
}
},
"qmk": {
diff --git a/keyboards/sofle/keymaps/devdev/config.h b/keyboards/sofle/keymaps/devdev/config.h
deleted file mode 100644
index 7d14c6e337..0000000000
--- a/keyboards/sofle/keymaps/devdev/config.h
+++ /dev/null
@@ -1,128 +0,0 @@
- /* Copyright 2021 Dane Evans
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
- #pragma once
-
-
-//#define USE_MATRIX_I2C
-
-/* Select hand configuration */
-
-///https://thomasbaart.nl/2018/12/01/reducing-firmware-size-in-qmk/
-
-
-#define MASTER_LEFT
-// #define MASTER_RIGHT
-// #define EE_HANDS
-
-#define CUSTOM_FONT
-
-#define CUSTOM_LAYER_READ //if you remove this it causes issues - needs better guarding
-
-
-#define QUICK_TAP_TERM 0
-#ifdef TAPPING_TERM
- #undef TAPPING_TERM
- #define TAPPING_TERM 200
-#endif
-#define ENCODER_DIRECTION_FLIP
-
-
-#define RGBLIGHT_SLEEP
-//
-#define RGBLIGHT_LAYERS
-
-/* ws2812 RGB LED */
-#define WS2812_DI_PIN D3
-
-
-#ifdef RGB_MATRIX_ENABLE
-#define RGBLED_NUM 35 // Number of LEDs
-#define RGBLED_NUM 35 // Number of LEDs
-#define RGB_MATRIX_LED_COUNT RGBLED_NUM
-#endif
-
-#ifdef RGBLIGHT_ENABLE
- #undef RGBLED_NUM
-
- //#define RGBLIGHT_EFFECT_BREATHING
- #define RGBLIGHT_EFFECT_RAINBOW_MOOD
- //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
- //#define RGBLIGHT_EFFECT_SNAKE
- //#define RGBLIGHT_EFFECT_KNIGHT
- //#define RGBLIGHT_EFFECT_CHRISTMAS
- //#define RGBLIGHT_EFFECT_STATIC_GRADIENT
- //#define RGBLIGHT_EFFECT_RGB_TEST
- //#define RGBLIGHT_EFFECT_ALTERNATING
- //#define RGBLIGHT_EFFECT_TWINKLE
-
- #define RGBLED_NUM 70
- //#define RGBLED_SPLIT
- #define RGBLED_SPLIT { 35, 35 } // haven't figured out how to use this yet
-
- //#define RGBLED_NUM 30
- #define RGBLIGHT_LIMIT_VAL 120
- #define RGBLIGHT_HUE_STEP 10
- #define RGBLIGHT_SAT_STEP 17
- #define RGBLIGHT_VAL_STEP 17
-#endif
-
-#ifdef RGB_MATRIX_ENABLE
-# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
-// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
-# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
-# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
-// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
-# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash.
-
-#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_GRADIENT_LEFT_RIGHT
-
-# define RGB_MATRIX_HUE_STEP 8
-# define RGB_MATRIX_SAT_STEP 8
-# define RGB_MATRIX_VAL_STEP 8
-# define RGB_MATRIX_SPD_STEP 10
-
-/* Disable the animations you don't want/need. You will need to disable a good number of these *
- * because they take up a lot of space. Disable until you can successfully compile your firmware. */
- // # undef ENABLE_RGB_MATRIX_ALPHAS_MODS
- // # undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
- // # undef ENABLE_RGB_MATRIX_BREATHING
- // # undef ENABLE_RGB_MATRIX_CYCLE_ALL
- // # undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
- // # undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
- // # undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
- // # undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
- // # undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
- // # undef ENABLE_RGB_MATRIX_DUAL_BEACON
- // # undef ENABLE_RGB_MATRIX_RAINBOW_BEACON
- // # undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
- // # undef ENABLE_RGB_MATRIX_RAINDROPS
- // # undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
- // # undef ENABLE_RGB_MATRIX_TYPING_HEATMAP
- // # undef ENABLE_RGB_MATRIX_DIGITAL_RAIN
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
- // # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
- // # undef ENABLE_RGB_MATRIX_SPLASH
- // # undef ENABLE_RGB_MATRIX_MULTISPLASH
- // # undef ENABLE_RGB_MATRIX_SOLID_SPLASH
- // # undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-#endif
diff --git a/keyboards/sofle/keymaps/devdev/keymap.c b/keyboards/sofle/keymaps/devdev/keymap.c
deleted file mode 100644
index 9453c54614..0000000000
--- a/keyboards/sofle/keymaps/devdev/keymap.c
+++ /dev/null
@@ -1,573 +0,0 @@
-
- /* Copyright 2021 Dane Evans
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
- // SOFLE RGB
-#include <stdio.h>
-
-#include QMK_KEYBOARD_H
-
-#define INDICATOR_BRIGHTNESS 30
-
-#define HSV_OVERRIDE_HELP(h, s, v, Override) h, s , Override
-#define HSV_OVERRIDE(hsv, Override) HSV_OVERRIDE_HELP(hsv,Override)
-
-// Light combinations
-#define SET_INDICATORS(hsv) \
- {0, 1, HSV_OVERRIDE_HELP(hsv, INDICATOR_BRIGHTNESS)}, \
- {35+0, 1, hsv}
-#define SET_UNDERGLOW(hsv) \
- {1, 5, hsv}, \
- {35+1, 5,hsv}
-#define SET_NUMPAD(hsv) \
- {35+15, 5, hsv},\
- {35+22, 3, hsv},\
- {35+27, 3, hsv}
-#define SET_NUMROW(hsv) \
- {10, 2, hsv}, \
- {20, 2, hsv}, \
- {30, 2, hsv}, \
- {35+ 10, 2, hsv}, \
- {35+ 20, 2, hsv}, \
- {35+ 30, 2, hsv}
-#define SET_INNER_COL(hsv) \
- {33, 4, hsv}, \
- {35+ 33, 4, hsv}
-
-#define SET_OUTER_COL(hsv) \
- {7, 4, hsv}, \
- {35+ 7, 4, hsv}
-#define SET_THUMB_CLUSTER(hsv) \
- {25, 2, hsv}, \
- {35+ 25, 2, hsv}
-#define SET_LAYER_ID(hsv) \
- {0, 1, HSV_OVERRIDE_HELP(hsv, INDICATOR_BRIGHTNESS)}, \
- {35+0, 1, HSV_OVERRIDE_HELP(hsv, INDICATOR_BRIGHTNESS)}, \
- {1, 5, hsv}, \
- {35+1, 5, hsv}, \
- {7, 4, hsv}, \
- {35+ 7, 4, hsv}, \
- {25, 2, hsv}, \
- {35+ 25, 2, hsv}
-
-
-enum sofle_layers {
- _DEFAULTS = 0,
- _QWERTY = 0,
- _COLEMAK,
- _COLEMAKDH,
- _LOWER,
- _RAISE,
- _ADJUST,
- _NUMPAD,
- _SWITCH
-};
-
-enum custom_keycodes {
- KC_QWERTY = SAFE_RANGE,
- KC_COLEMAK,
- KC_COLEMAKDH,
- KC_LOWER,
- KC_RAISE,
- KC_ADJUST,
- KC_D_MUTE
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * QWERTY
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | TAB | Q | W | E | R | T | | Y | U | I | O | P | Bspc |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |LShift| A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' |
- * |------+------+------+------+------+------| MUTE | |DISCORD|------+------+------+------+------+------|
- * | LCTR | Z | X | C | V | B |-------| |-------| N | M | , | . | / |LShift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Bspc | WIN |LOWER | Enter| /Space / \Enter \ |SPACE |RAISE | RCTR | RAlt |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
- [_QWERTY] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_SWITCH,KC_6), KC_7, KC_8, KC_9, KC_0, KC_GRV,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- LT(_NUMPAD,KC_TAB),KC_Q,KC_W,KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_D_MUTE,KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_BSPC, KC_LGUI, KC_LOWER, KC_SPC, KC_ENT , KC_SPC, KC_ENT , KC_RAISE, KC_RCTL, KC_RALT
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-
-/*
- * COLEMAK
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | TAB | Q | W | F | P | G | | J | L | U | Y | ; | Bspc |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |LShift| A | R | S | T | D |-------. ,-------| H | N | E | I | O | ' |
- * |------+------+------+------+------+------| MUTE | |DISCORD|------+------+------+------+------+------|
- * | LCTR | Z | X | C | V | B |-------| |-------| K | M | , | . | / |LShift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Bspc | WIN |LOWER | Enter| /Space / \Enter \ |SPACE |RAISE | RCTR | RAlt |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
-[_COLEMAK] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_SWITCH,KC_6), KC_7, KC_8, KC_9, KC_0, KC_TRNS,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_TRNS,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_TRNS,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TRNS, KC_TRNS,KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_TRNS,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-
-/*
- * COLEMAK-DH
- * ,-----------------------------------------. ,-----------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | TAB | Q | W | F | P | B | | J | L | U | Y | ; | Bspc |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |LShift| A | R | S | T | G |-------. ,-------| M | N | E | I | O | ' |
- * |------+------+------+------+------+------| MUTE | |DISCORD|------+------+------+------+------+------|
- * | LCTR | Z | X | C | D | V |-------| |-------| K | H | , | . | / |LShift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Bspc | WIN |LOWER | Enter| /Space / \Enter \ |SPACE |RAISE | RCTR | RAlt |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
-[_COLEMAKDH] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, LT(_SWITCH,KC_6), KC_7, KC_8, KC_9, KC_0, KC_TRNS,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_TRNS,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_TRNS,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_TRNS, KC_TRNS,KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_TRNS,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-
-/* LOWER
- * ,-----------------------------------------. ,-----------------------------------------.
- * | trans| F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | trans| ! | @ | # | $ | % |-------. ,-------| ^ | & | * | ( | ) | | |
- * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------|
- * | trans| = | - | + | { | } |-------| |-------| [ | ] | ; | : | \ | Shift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Bspc | WIN |LOWER | Enter| /Space / \Enter \ |SPACE |RAISE | RCTR | RAlt |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
-[_LOWER] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- _______, KC_NO, KC_NO, KC_NO, KC_WH_U, KC_PGUP, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_DEL,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- _______, KC_NO, KC_NO, KC_NO, KC_WH_D, KC_PGDN,_______, _______,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, _______,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-/* RAISE
- * ,----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Esc | Ins | Pscr | Menu | | | | | PWrd | Up | NWrd | DLine| Bspc |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | Tab | LAt | LCtl |LShift| | Caps |-------. ,-------| | Left | Down | Rigth| Del | Bspc |
- * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------|
- * |Shift | Undo | Cut | Copy | Paste| |-------| |-------| | LStr | | LEnd | | Shift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LGUI | LAlt | LCTR |LOWER | /Enter / \Space \ |RAISE | RCTR | RAlt | RGUI |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
-[_RAISE] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- _______, _______ , _______ , _______ , _______ , _______, _______, _______ , _______, _______ , _______ ,_______,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- _______, KC_INS, KC_PSCR, KC_APP, XXXXXXX, XXXXXXX, KC_CIRC, KC_AMPR,KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- _______, KC_LALT, KC_LCTL, KC_LSFT, XXXXXXX, KC_CAPS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- _______,KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, XXXXXXX,_______, _______,KC_UNDS, KC_PLUS,KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-/* ADJUST
- * ,-----------------------------------------. ,-----------------------------------------.
- * | | | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | QK_BOOT| | | | | | | | | | | | |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * |RGB_TOG|hue^ |sat ^ | bri ^| |COLEMAK|-------. ,-------|desk <| | |desk >| | |
- * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------|
- * | mode | hue dn|sat d|bri dn| |QWERTY|-------| |-------| | PREV | PLAY | NEXT | | |
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | LGUI | LAlt | LCTR |LOWER | /Enter / \Space \ |RAISE | RCTR | RAlt | RGUI |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
- [_ADJUST] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- EE_CLR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- QK_BOOT, XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- RGB_TOG, RGB_HUI,RGB_SAI, RGB_VAI, KC_COLEMAKDH,KC_COLEMAK, C(G(KC_LEFT)),KC_NO,KC_NO,C(G(KC_RGHT)),XXXXXXX, XXXXXXX,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- RGB_MOD, RGB_HUD,RGB_SAD, RGB_VAD, XXXXXXX,KC_QWERTY,XXXXXXX, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-/* NUMPAD
- * ,-----------------------------------------. ,-----------------------------------------.
- * | trans| | | | | | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ` | | | | | | | | 7 | 8 | 9 | * | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | trans| | | | | |-------. ,-------| - | 4 | 5 | 6 | | | |
- * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------|
- * | trans| | | | | |-------| |-------| + | 1 | 2 | 3 | \ | Shift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Bspc | WIN |LOWER | Enter| /Space / \Enter \ |SPACE | 0 | . | RAlt |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
-[_NUMPAD] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CIRC, KC_P7, KC_P8, KC_P9, KC_ASTR, _______,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_P4, KC_P5, KC_P6, KC_EQL, KC_PIPE,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,_______, _______,KC_PLUS, KC_P1, KC_P2, KC_P3, KC_SLSH, _______,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- _______, OSM(MOD_MEH), _______, _______, _______, _______, _______, KC_P0, KC_PDOT, _______
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-),
-
-/* SWITCH
- * ,-----------------------------------------. ,-----------------------------------------.
- * | cole | qwer | low |raise | adj |numpd | | | F7 | F8 | F9 | F10 | F11 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | ` | | | | | | | | 7 | 8 | 9 | * | F12 |
- * |------+------+------+------+------+------| |------+------+------+------+------+------|
- * | trans| | | | | |-------. ,-------| - | 4 | 5 | 6 | | | |
- * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------|
- * | trans| | | | | |-------| |-------| + | 1 | 2 | 3 | \ | Shift|
- * `-----------------------------------------/ / \ \-----------------------------------------'
- * | Bspc | WIN |LOWER | Enter| /Space / \Enter \ |SPACE | 0 | . | RAlt |
- * | | | | |/ / \ \ | | | | |
- * `----------------------------------' '------''---------------------------'
- */
- // layer switcher
-[_SWITCH] = LAYOUT(
- //,------------------------------------------------. ,---------------------------------------------------.
- _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- TO(0), TO(1), TO(2), TO(3), TO(4), TO(5), KC_NO, TO(7), KC_NO, KC_NO, KC_NO, QK_BOOT,
- //|------+-------+--------+--------+--------+------| |--------+-------+--------+--------+--------+---------|
- KC_NO, KC_NO, KC_BRIU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, EE_CLR,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_SYSTEM_SLEEP,KC_NO,KC_BRID,KC_NO,KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- //|------+-------+--------+--------+--------+------| === | | === |--------+-------+--------+--------+--------+---------|
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- // \--------+--------+--------+---------+-------| |--------+---------+--------+---------+-------/
-
- ),
-};
-
-#ifdef RGBLIGHT_ENABLE
-char layer_state_str[70];
-// Now define the array of layers. Later layers take precedence
-
-// QWERTY,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_qwerty_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_LAYER_ID(HSV_RED)
-
-);
-const rgblight_segment_t PROGMEM layer_colemakdh_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_LAYER_ID(HSV_PINK)
-);
-
-// _NUM,
-// Light on outer column and underglow
-const rgblight_segment_t PROGMEM layer_num_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_LAYER_ID(HSV_TEAL)
-
-);
-// _SYMBOL,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_symbol_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_LAYER_ID(HSV_BLUE)
-
- );
-// _COMMAND,
-// Light on inner column and underglow
-const rgblight_segment_t PROGMEM layer_command_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_LAYER_ID(HSV_PURPLE)
-);
-
-//_NUMPAD
-const rgblight_segment_t PROGMEM layer_numpad_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_INDICATORS(HSV_ORANGE),
- SET_UNDERGLOW(HSV_ORANGE),
- SET_NUMPAD(HSV_BLUE),
- {7, 4, HSV_ORANGE},
- {25, 2, HSV_ORANGE},
- {35+6, 4, HSV_ORANGE},
- {35+25, 2, HSV_ORANGE}
- );
-// _SWITCHER // light up top row
-const rgblight_segment_t PROGMEM layer_switcher_lights[] = RGBLIGHT_LAYER_SEGMENTS(
- SET_LAYER_ID(HSV_GREEN),
- SET_NUMROW(HSV_GREEN)
-);
-
-const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(
-
- layer_qwerty_lights,
- layer_num_lights,// overrides layer 1
- layer_symbol_lights,
- layer_command_lights,
- layer_numpad_lights,
- layer_switcher_lights, // Overrides other layers
- layer_colemakdh_lights
-);
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- rgblight_set_layer_state(0, layer_state_cmp(state, _DEFAULTS) && layer_state_cmp(default_layer_state,_QWERTY));
- rgblight_set_layer_state(7, layer_state_cmp(state, _DEFAULTS) && layer_state_cmp(default_layer_state,_COLEMAKDH));
-
-
- rgblight_set_layer_state(1, layer_state_cmp(state, _LOWER));
- rgblight_set_layer_state(2, layer_state_cmp(state, _RAISE));
- rgblight_set_layer_state(3, layer_state_cmp(state, _ADJUST));
- rgblight_set_layer_state(4, layer_state_cmp(state, _NUMPAD));
- rgblight_set_layer_state(5, layer_state_cmp(state, _SWITCH));
- return state;
-}
-void keyboard_post_init_user(void) {
- // Enable the LED layers
- rgblight_layers = my_rgb_layers;
-
- rgblight_mode(10);// haven't found a way to set this in a more useful way
-
-}
-#endif
-
-#ifdef OLED_ENABLE
-
-static void render_logo(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94,
- 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4,
- 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00
- };
-
- oled_write_P(qmk_logo, false);
-}
-
-static void print_status_narrow(void) {
- // Print current mode
- oled_write_P(PSTR("\n\n"), false);
- oled_write_ln_P(PSTR("Dane\nEvans"), false);
-
- oled_write_ln_P(PSTR(""), false);
-
- //snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state)
-
-
- switch (get_highest_layer(default_layer_state)) {
- case _QWERTY:
- oled_write_ln_P(PSTR("Qwrt"), false);
- break;
- case _COLEMAK:
- oled_write_ln_P(PSTR("Clmk"), false);
- break;
- case _COLEMAKDH:
- oled_write_ln_P(PSTR("CmkDH"), false);
- break;
-
- default:
- oled_write_ln_P(PSTR("Undef"), false);
- }
- oled_write_P(PSTR("\n\n"), false);
- // Print current layer
- oled_write_ln_P(PSTR("LAYER"), false);
- switch (get_highest_layer(layer_state)) {
- case _COLEMAK:
- case _QWERTY:
- case _COLEMAKDH:
- oled_write_P(PSTR("Base\n"), false);
- break;
- case _RAISE:
- oled_write_P(PSTR("Raise"), false);
- break;
- case _LOWER:
- oled_write_P(PSTR("Lower"), false);
- break;
- case _ADJUST:
- oled_write_P(PSTR("Adj\n"), false);
- break;
- case _NUMPAD:
- oled_write_P(PSTR("Nump\n"), false);
- break;
- case _SWITCH:
- oled_write_P(PSTR("Swit\n"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undef"), false);
- }
-}
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- if (is_keyboard_master()) {
- return OLED_ROTATION_270;
- }
- return rotation;
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- print_status_narrow();
- } else {
- render_logo();
- }
- return false;
-}
-
-#endif
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case KC_QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- return false;
- case KC_COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- return false;
- case KC_COLEMAKDH:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAKDH);
- }
- return false;
- case KC_LOWER:
- if (record->event.pressed) {
- layer_on(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_LOWER);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case KC_RAISE:
- if (record->event.pressed) {
- layer_on(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- } else {
- layer_off(_RAISE);
- update_tri_layer(_LOWER, _RAISE, _ADJUST);
- }
- return false;
- case KC_ADJUST:
- if (record->event.pressed) {
- layer_on(_ADJUST);
- } else {
- layer_off(_ADJUST);
- }
- return false;
- case KC_D_MUTE:
- if (record->event.pressed) {
- register_mods(mod_config(MOD_MEH));
- register_code(KC_UP);
- } else {
- unregister_mods(mod_config(MOD_MEH));
- unregister_code(KC_UP);
- }
- }
- return true;
-}
-
-#ifdef ENCODER_ENABLE
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else if (index == 1) {
- switch (get_highest_layer(layer_state)) {
- case _COLEMAK:
- case _QWERTY:
- case _COLEMAKDH:
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- break;
- case _RAISE:
- case _LOWER:
- if (clockwise) {
- tap_code(KC_DOWN);
- } else {
- tap_code(KC_UP);
- }
- break;
- default:
- if (clockwise) {
- tap_code(KC_WH_D);
- } else {
- tap_code(KC_WH_U);
- }
- break;
- }
- }
- return true;
-}
-
-#endif
diff --git a/keyboards/sofle/keymaps/devdev/rules.mk b/keyboards/sofle/keymaps/devdev/rules.mk
deleted file mode 100644
index 0d18161a0d..0000000000
--- a/keyboards/sofle/keymaps/devdev/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-RGBLIGHT_ENABLE = yes
-ENCODER_ENABLE = yes
-LTO_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/sofle/keymaps/manna-harbour_miryoku/config.h b/keyboards/sofle/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index e335d5d8b8..0000000000
--- a/keyboards/sofle/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#define LAYOUT_miryoku(\
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09,\
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19,\
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29,\
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39\
-)\
-LAYOUT(\
-XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,\
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX,\
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX,\
-XXX, K20, K21, K22, K23, K24, XXX, XXX, K25, K26, K27, K28, K29, XXX,\
- XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX\
-)
diff --git a/keyboards/sofle/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/sofle/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/sofle/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/spaceholdings/nebula12/config.h b/keyboards/spaceholdings/nebula12/config.h
index 3853ebcff6..c88b219b09 100755
--- a/keyboards/spaceholdings/nebula12/config.h
+++ b/keyboards/spaceholdings/nebula12/config.h
@@ -35,7 +35,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define I2C1_TIMINGR_SCLH 3U
#define I2C1_TIMINGR_SCLL 9U
-#define WS2812_SPI SPID2 // default: SPID1
+#define WS2812_SPI_DRIVER SPID2 // default: SPID1
#define WS2812_SPI_MOSI_PAL_MODE 0 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 5
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
@@ -73,8 +73,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 1
-#define RGB_MATRIX_LED_COUNT 16
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_LED_COUNT 16
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/spaceholdings/nebula12/nebula12.c b/keyboards/spaceholdings/nebula12/nebula12.c
index 7491bee844..3b8aae7a77 100755
--- a/keyboards/spaceholdings/nebula12/nebula12.c
+++ b/keyboards/spaceholdings/nebula12/nebula12.c
@@ -14,7 +14,9 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_NEBULA12
-#error RGB_BACKLIGHT_NEBULA12 not defined, recheck config.h
+# error RGB_BACKLIGHT_NEBULA12 not defined, recheck config.h
+#else
+# include "drivers/led/issi/is31fl3731.h"
#endif
#include "nebula12.h"
@@ -23,3 +25,30 @@ void board_init(void) {
SYSCFG->CFGR1 |= SYSCFG_CFGR1_I2C1_DMA_RMP;
SYSCFG->CFGR1 &= ~(SYSCFG_CFGR1_SPI2_DMA_RMP);
}
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NEBULA12)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C1_1, C3_2, C4_2}, //A1
+ {0, C1_2, C2_2, C4_3}, //A2
+ {0, C1_3, C2_3, C3_3}, //A3
+ {0, C1_4, C2_4, C3_4}, //A4
+ {0, C1_5, C2_5, C3_5}, //A5
+ {0, C1_6, C2_6, C3_6}, //A6
+ {0, C1_7, C2_7, C3_7}, //A7
+ {0, C1_8, C2_8, C3_8}, //A8
+ {0, C9_1, C8_1, C7_1}, //A9
+ {0, C9_2, C8_2, C7_2}, //A10
+ {0, C9_3, C8_3, C7_3}, //A11
+ {0, C9_4, C8_4, C7_4}, //A12
+ {0, C9_5, C8_5, C7_5}, //A13
+ {0, C9_6, C8_6, C7_6}, //A14
+ {0, C9_7, C8_7, C6_6}, //A15
+ {0, C9_8, C7_7, C6_7}, //A16
+};
+#endif
diff --git a/keyboards/spaceholdings/nebula12/rules.mk b/keyboards/spaceholdings/nebula12/rules.mk
index 1c8b41fea7..191a1c0a1b 100755
--- a/keyboards/spaceholdings/nebula12/rules.mk
+++ b/keyboards/spaceholdings/nebula12/rules.mk
@@ -24,4 +24,4 @@ SRC += keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3731.c \
quantum/color.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/spaceholdings/nebula68/config.h b/keyboards/spaceholdings/nebula68/config.h
index 43dc7b0d86..1b2441556b 100755
--- a/keyboards/spaceholdings/nebula68/config.h
+++ b/keyboards/spaceholdings/nebula68/config.h
@@ -56,8 +56,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 128
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_SDA
+#define IS31FL3733_LED_COUNT 128
// These define which keys in the matrix are alphas/mods
// Used for backlight effects so colors are different for
diff --git a/keyboards/spaceholdings/nebula68/nebula68.c b/keyboards/spaceholdings/nebula68/nebula68.c
index 054a269bf6..af51c4805e 100755
--- a/keyboards/spaceholdings/nebula68/nebula68.c
+++ b/keyboards/spaceholdings/nebula68/nebula68.c
@@ -14,7 +14,149 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_NEBULA68
-#error RGB_BACKLIGHT_NEBULA68 not defined, recheck config.h
+# error RGB_BACKLIGHT_NEBULA68 not defined, recheck config.h
+#else
+# include "drivers/led/issi/is31fl3733.h"
#endif
#include "nebula68.h"
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_NEBULA68)
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, B_1, A_1, C_1}, //LA1
+ {0, E_1, D_1, F_1}, //LA2
+ {0, H_1, G_1, I_1}, //LA3
+ {0, K_1, J_1, L_1}, //LA4
+ {0, B_2, A_2, C_2}, //LA5
+ {0, E_2, D_2, F_2}, //LA6
+ {0, H_2, G_2, I_2}, //LA7
+ {0, K_2, J_2, L_2}, //LA8
+ {0, B_3, A_3, C_3}, //LA9
+ {0, E_3, D_3, F_3}, //LA10
+ {0, H_3, G_3, I_3}, //LA11
+ {0, K_3, J_3, L_3}, //LA12
+ {0, B_4, A_4, C_4}, //LA13
+ {0, E_4, D_4, F_4}, //LA14
+ {0, H_4, G_4, I_4}, //LA15
+ {0, K_4, J_4, L_4}, //LA16
+ {0, B_5, A_5, C_5}, //LA17
+ {0, E_5, D_5, F_5}, //LA18
+ {0, H_5, G_5, I_5}, //LA19
+ {0, K_5, J_5, L_5}, //LA20
+ {0, B_6, A_6, C_6}, //LA21
+ {0, E_6, D_6, F_6}, //LA22
+ {0, H_6, G_6, I_6}, //LA23
+ {0, K_6, J_6, L_6}, //LA24
+ {0, B_7, A_7, C_7}, //LA25
+ {0, E_7, D_7, F_7}, //LA26
+ {0, H_7, G_7, I_7}, //LA27
+ {0, K_7, J_7, L_7}, //LA28
+ {0, B_8, A_8, C_8}, //LA29
+ {0, E_8, D_8, F_8}, //LA30
+ {0, H_8, G_8, I_8}, //LA31
+ {0, K_8, J_8, L_8}, //LA32
+ {0, B_9, A_9, C_9}, //LA33
+ {0, E_9, D_9, F_9}, //LA34
+ {0, H_9, G_9, I_9}, //LA35
+ {0, K_9, J_9, L_9}, //LA36
+ {0, B_10, A_10, C_10}, //LA37
+ {0, E_10, D_10, F_10}, //LA38
+ {0, H_10, G_10, I_10}, //LA39
+ {0, K_10, J_10, L_10}, //LA40
+ {0, B_11, A_11, C_11}, //LA41
+ {0, E_11, D_11, F_11}, //LA42
+ {0, H_11, G_11, I_11}, //LA43
+ {0, K_11, J_11, L_11}, //LA44
+ {0, B_12, A_12, C_12}, //LA45
+ {0, E_12, D_12, F_12}, //LA46
+ {0, H_12, G_12, I_12}, //LA47
+ {0, K_12, J_12, L_12}, //LA48
+ {0, B_13, A_13, C_13}, //LA49
+ {0, E_13, D_13, F_13}, //LA50
+ {0, H_13, G_13, I_13}, //LA51
+ {0, K_13, J_13, L_13}, //LA52
+ {0, B_14, A_14, C_14}, //LA53
+ {0, E_14, D_14, F_14}, //LA54
+ {0, H_14, G_14, I_14}, //LA55
+ {0, K_14, J_14, L_14}, //LA56
+ {0, B_15, A_15, C_15}, //LA57
+ {0, E_15, D_15, F_15}, //LA58
+ {0, H_15, G_15, I_15}, //LA59
+ {0, K_15, J_15, L_15}, //LA60
+ {0, B_16, A_16, C_16}, //LA61
+ {0, E_16, D_16, F_16}, //LA62
+ {0, H_16, G_16, I_16}, //LA63
+ {0, K_16, J_16, L_16}, //LA64
+
+ {1, B_1, A_1, C_1}, //LB1
+ {1, E_1, D_1, F_1}, //LB2
+ {1, H_1, G_1, I_1}, //LB3
+ {1, K_1, J_1, L_1}, //LB4
+ {1, B_2, A_2, C_2}, //LB5
+ {1, E_2, D_2, F_2}, //LB6
+ {1, H_2, G_2, I_2}, //LB7
+ {1, K_2, J_2, L_2}, //LB8
+ {1, B_3, A_3, C_3}, //LB9
+ {1, E_3, D_3, F_3}, //LB10
+ {1, H_3, G_3, I_3}, //LB11
+ {1, K_3, J_3, L_3}, //LB12
+ {1, B_4, A_4, C_4}, //LB13
+ {1, E_4, D_4, F_4}, //LB14
+ {1, H_4, G_4, I_4}, //LB15
+ {1, K_4, J_4, L_4}, //LB16
+ {1, B_5, A_5, C_5}, //LB17
+ {1, E_5, D_5, F_5}, //LB18
+ {1, H_5, G_5, I_5}, //LB19
+ {1, K_5, J_5, L_5}, //LB20
+ {1, B_6, A_6, C_6}, //LB21
+ {1, E_6, D_6, F_6}, //LB22
+ {1, H_6, G_6, I_6}, //LB23
+ {1, K_6, J_6, L_6}, //LB24
+ {1, B_7, A_7, C_7}, //LB25
+ {1, E_7, D_7, F_7}, //LB26
+ {1, H_7, G_7, I_7}, //LB27
+ {1, K_7, J_7, L_7}, //LB28
+ {1, B_8, A_8, C_8}, //LB29
+ {1, E_8, D_8, F_8}, //LB30
+ {1, H_8, G_8, I_8}, //LB31
+ {1, K_8, J_8, L_8}, //LB32
+ {1, B_9, A_9, C_9}, //LB33
+ {1, E_9, D_9, F_9}, //LB34
+ {1, H_9, G_9, I_9}, //LB35
+ {1, K_9, J_9, L_9}, //LB36
+ {1, B_10, A_10, C_10}, //LB37
+ {1, E_10, D_10, F_10}, //LB38
+ {1, H_10, G_10, I_10}, //LB39
+ {1, K_10, J_10, L_10}, //LB40
+ {1, B_11, A_11, C_11}, //LB41
+ {1, E_11, D_11, F_11}, //LB42
+ {1, H_11, G_11, I_11}, //LB43
+ {1, K_11, J_11, L_11}, //LB44
+ {1, B_12, A_12, C_12}, //LB45
+ {1, E_12, D_12, F_12}, //LB46
+ {1, H_12, G_12, I_12}, //LB47
+ {1, K_12, J_12, L_12}, //LB48
+ {1, B_13, A_13, C_13}, //LB49
+ {1, E_13, D_13, F_13}, //LB50
+ {1, H_13, G_13, I_13}, //LB51
+ {1, K_13, J_13, L_13}, //LB52
+ {1, B_14, A_14, C_14}, //LB53
+ {1, E_14, D_14, F_14}, //LB54
+ {1, H_14, G_14, I_14}, //LB55
+ {1, K_14, J_14, L_14}, //LB56
+ {1, B_15, A_15, C_15}, //LB57
+ {1, E_15, D_15, F_15}, //LB58
+ {1, H_15, G_15, I_15}, //LB59
+ {1, K_15, J_15, L_15}, //LB60
+ {1, B_16, A_16, C_16}, //LB61
+ {1, E_16, D_16, F_16}, //LB62
+ {1, H_16, G_16, I_16}, //LB63
+ {1, K_16, J_16, L_16}, //LB64
+};
+#endif
diff --git a/keyboards/spaceholdings/nebula68/rules.mk b/keyboards/spaceholdings/nebula68/rules.mk
index 7880744fff..627f82784e 100755
--- a/keyboards/spaceholdings/nebula68/rules.mk
+++ b/keyboards/spaceholdings/nebula68/rules.mk
@@ -24,4 +24,4 @@ SRC += keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
drivers/led/issi/is31fl3733.c \
quantum/color.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/spiderisland/split78/rules.mk b/keyboards/spiderisland/split78/rules.mk
index edddf67abc..db8262a763 100644
--- a/keyboards/spiderisland/split78/rules.mk
+++ b/keyboards/spiderisland/split78/rules.mk
@@ -12,4 +12,4 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
# custom matrix setup
CUSTOM_MATRIX = lite
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/spleeb/config.h b/keyboards/spleeb/config.h
index 8a6fb13c4e..64a1fb09ba 100644
--- a/keyboards/spleeb/config.h
+++ b/keyboards/spleeb/config.h
@@ -7,10 +7,6 @@
// the touch sensor to be on the master side
#define MASTER_RIGHT
-// Sync later, led, and mod state for use on OLED on slave side
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
// Transport dpi and enc mode for display on oled
#define SPLIT_TRANSACTION_IDS_KB RPC_ID_KB_CONFIG_SYNC
diff --git a/keyboards/spleeb/info.json b/keyboards/spleeb/info.json
index e03faa7c3e..7b92316de2 100644
--- a/keyboards/spleeb/info.json
+++ b/keyboards/spleeb/info.json
@@ -36,6 +36,13 @@
{"pin_a": "GP21", "pin_b": "GP4"}
]
}
+ },
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "modifiers": true
+ }
}
},
"url": "https://github.com/chrishoage/spleeb",
diff --git a/keyboards/splitkb/aurora/corne/rev1/info.json b/keyboards/splitkb/aurora/corne/rev1/info.json
index 7d82577b00..13f0034d55 100644
--- a/keyboards/splitkb/aurora/corne/rev1/info.json
+++ b/keyboards/splitkb/aurora/corne/rev1/info.json
@@ -83,7 +83,6 @@
"matrix": [4, 5]
},
"soft_serial_pin": "D2",
- "main": "pin",
"matrix_pins": {
"right": {
"rows": ["B1", "B3", "B2", "B6"],
diff --git a/keyboards/splitkb/aurora/helix/rev1/info.json b/keyboards/splitkb/aurora/helix/rev1/info.json
index 7c6acf0070..1fee04011a 100644
--- a/keyboards/splitkb/aurora/helix/rev1/info.json
+++ b/keyboards/splitkb/aurora/helix/rev1/info.json
@@ -118,7 +118,6 @@
]
}
},
- "main": "matrix_grid",
"matrix_pins": {
"right": {
"cols": ["D4", "C6", "D7", "E6", "B4", "B5", "B6"],
diff --git a/keyboards/splitkb/aurora/lily58/rev1/info.json b/keyboards/splitkb/aurora/lily58/rev1/info.json
index 2d251b96b2..9a6ad58a14 100644
--- a/keyboards/splitkb/aurora/lily58/rev1/info.json
+++ b/keyboards/splitkb/aurora/lily58/rev1/info.json
@@ -94,7 +94,6 @@
"matrix": [5, 0]
},
"soft_serial_pin": "D2",
- "main": "matrix_grid",
"matrix_pins": {
"right": {
"rows": ["F4", "D4", "B3", "B2", "B6"],
diff --git a/keyboards/splitkb/aurora/sofle_v2/rev1/info.json b/keyboards/splitkb/aurora/sofle_v2/rev1/info.json
index b9b8b9da6b..266ea72148 100644
--- a/keyboards/splitkb/aurora/sofle_v2/rev1/info.json
+++ b/keyboards/splitkb/aurora/sofle_v2/rev1/info.json
@@ -112,7 +112,6 @@
]
}
},
- "main": "matrix_grid",
"matrix_pins": {
"right": {
"cols": ["D7", "E6", "B4", "B5", "D4", "C6"],
diff --git a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk
index 585c589d3a..dd3e45125d 100644
--- a/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk
+++ b/keyboards/splitkb/aurora/sweep/keymaps/flinguenheld/rules.mk
@@ -10,7 +10,6 @@ OLED_ENABLE = yes
MOUSEKEY_ENABLE = yes
AUTO_SHIFT_ENABLE = yes
-AUTO_SHIFT_MODIFIERS = no
COMBO_ENABLE = yes
LEADER_ENABLE = yes
diff --git a/keyboards/splitkb/aurora/sweep/rev1/info.json b/keyboards/splitkb/aurora/sweep/rev1/info.json
index 7d7fec921f..b5588e2a3c 100644
--- a/keyboards/splitkb/aurora/sweep/rev1/info.json
+++ b/keyboards/splitkb/aurora/sweep/rev1/info.json
@@ -79,7 +79,6 @@
"matrix": [4, 4]
},
"soft_serial_pin": "D2",
- "main": "pin",
"matrix_pins": {
"right": {
"rows": ["B1", "F7", "F6", "B3"],
diff --git a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/config.h b/keyboards/splitkb/kyria/keymaps/cameronjlarsen/config.h
deleted file mode 100644
index bcbdbac9e2..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/config.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright 2022 Cameron Larsen <camjlarsen@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef RGBLIGHT_ENABLE
-# define RGBLIGHT_EFFECT_BREATHING
-# define RGBLIGHT_EFFECT_RAINBOW_MOOD
-# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-# define RGBLIGHT_EFFECT_SNAKE
-# define RGBLIGHT_EFFECT_KNIGHT
-# define RGBLIGHT_EFFECT_CHRISTMAS
-# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-# define RGBLIGHT_EFFECT_RGB_TEST
-# define RGBLIGHT_EFFECT_ALTERNATING
-# define RGBLIGHT_EFFECT_TWINKLE
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_LIMIT_VAL 150
-#endif
-
-// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
-// Configure the global tapping term (default: 200ms)
-#define TAPPING_TERM 135
-#define TAPPING_TOGGLE 2
-#define ENCODER_DIRECTION_FLIP
-
-#define CAPS_WORD_IDLE_TIMEOUT 5000 // Turn off Caps Word after 5 seconds.
-
-// If you are using an Elite C rev3 on the slave side, uncomment the lines below:
-// #define SPLIT_USB_DETECT
-// #define NO_USB_STARTUP_CHECK
diff --git a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/keymap.c b/keyboards/splitkb/kyria/keymaps/cameronjlarsen/keymap.c
deleted file mode 100644
index 902cb33b54..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/keymap.c
+++ /dev/null
@@ -1,357 +0,0 @@
-/* Copyright 2022 Cameron Larsen <camjlarsen@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "features/oneshot.h"
-
-enum layers {
- _QWERTY = 0,
- SYM,
- NAV,
- FUN,
-};
-// Aliases for readability
-#define QWERTY DF(_QWERTY)
-#define LA_SYM LT(SYM, KC_TAB)
-#define LA_NAV MO(NAV)
-
-// One shot mods
-enum keycodes {
- OS_SHFT = QK_USER,
- OS_CTRL,
- OS_ALT,
- OS_GUI,
-};
-
-// Note: LAlt/Enter (ALT_ENT) is not the same thing as the keyboard shortcut Alt+Enter.
-// The notation `mod/tap` denotes a key that activates the modifier `mod` when held down, and
-// produces the key `tap` when tapped (i.e. pressed and released).
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * Base Layer: QWERTY
- *
- * Inspiration:
- *
- * https://github.com/serebrov/qmk_firmware/blob/custom/keyboards/kyria/keymaps/kyria-mini/keymap.c
- *
- * Notes:
- * - F & J enables CAPSWORD, disables after 5 seconds
- * - Left thumb CTRL and SHIFT are one shot
- * - Enter is moved to ; location and ; is moved to Sym layer
- * - ESC can be accessed by NAV and G
- * - BKSP is accessed by NAV and Enter
- * - Tab is accessed by tapping SYM layer
- * - FUN layer is accessed by holding NAV and SYM layers at the same time
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | Q | W | E | R | T | | Y | U | I | O | P | |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | A | S | D | F | G | | H | J | K | L | Enter| |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | Z | X | C | V | B | | | | | | N | M | , < | . > | / ? | |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | Mute | | Ctrl |Shift | Nav | | Sym | Space| GUI | | Menu |
- * | | | | | | | Tab | | | | |
- * `----------------------------------' `----------------------------------'
- */
- [_QWERTY] = LAYOUT(
- XXXXXXX , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y, KC_U , KC_I , KC_O , KC_P , XXXXXXX,
- XXXXXXX , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_ENT , XXXXXXX,
- XXXXXXX , KC_Z , KC_X , KC_C , KC_V , KC_B , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_N, KC_M ,KC_COMM, KC_DOT , KC_SLSH, XXXXXXX,
- KC_MUTE, XXXXXXX, OS_CTRL, OS_SHFT, LA_NAV , LA_SYM , KC_SPC , OS_GUI,XXXXXXX, KC_APP
- ),
-
-/*
- * Sym Layer: Numbers and symbols
- *
- * Notes:
- * - Symbols are grouped together and shifted symbols from middle row are on bottom row
- * - Exception is angle brackets
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | 1 ! | 2 @ | 3 # | 4 $ | 5 % | | 6 ^ | 7 & | 8 * | 9 ( | 0 ) | |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | ` | ( | ) | ' | = | | \ | - | [ | ] | ; | |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | ~ | < | > | " | + | | | | | | | | _ | { | } | : | |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- */
- [SYM] = LAYOUT(
- _______ , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______,
- _______ , KC_GRV , KC_LPRN, KC_RPRN, KC_QUOT, KC_EQL , KC_BSLS, KC_MINS, KC_LBRC, KC_RBRC, KC_SCLN, _______,
- _______ , KC_TILD, KC_LABK, KC_RABK, KC_DQUO, KC_PLUS, _______, _______, _______, _______, KC_PIPE, KC_UNDS, KC_LCBR, KC_RCBR, KC_COLN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-/*
- * Nav Layer: Navigation, editing
- *
- * Notes:
- * - Vim style navigation keys
- * - BKSP on Enter
- * - DEL on /
- * - Esc on G
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | | | | BriUp| BriDn| | Home | PgDn | PgUp | End |PrtScr| |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | GUI | Alt | Ctrl | Shift| Esc | | ← | ↓ | ↑ | → | Bksp | |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | | | | |NumLck| | | | | | MPrev| MPlay| MStop| MNext|Delete| |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- */
- [NAV] = LAYOUT(
- _______, _______, _______, _______, KC_BRIU, KC_BRID, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_PSCR, _______,
- _______, OS_GUI , OS_ALT , OS_CTRL, OS_SHFT, KC_ESC, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_BSPC, _______,
- _______, _______, _______, _______, _______, KC_NUM, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MSTP, KC_MNXT, KC_DEL , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-/*
- * Function Layer: Function keys
- *
- * Notes:
- * - F1-F10 on bottom row
- * - F11-F12 on index finger inner row
- * - Homerow mods
- * - Num keys on top row
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | 1 ! | 2 @ | 3 # | 4 $ | 5 % | | 6 ^ | 7 & | 8 * | 9 ( | 0 ) | |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | GUI | Alt | Ctrl | Shift| F11 | | F12 | Shift| Ctrl | Alt | GUI | |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | F1 | F2 | F3 | F4 | F5 | | | | | | F6 | F7 | F8 | F9 | F10 | |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- */
- [FUN] = LAYOUT(
- _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______,
- _______, OS_GUI , OS_ALT , OS_CTRL, OS_SHFT, KC_F11 , KC_F12 , OS_SHFT, OS_CTRL, OS_ALT , OS_GUI , _______,
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , _______, _______, _______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
-// * Layer template
-// *
-// * ,-------------------------------------------. ,-------------------------------------------.
-// * | | | | | | | | | | | | | |
-// * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
-// * | | | | | | | | | | | | | |
-// * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-// * | | | | | | | | | | | | | | | | | |
-// * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
-// * | | | | | | | | | | | |
-// * | | | | | | | | | | | |
-// * `----------------------------------' `----------------------------------'
-// */
-// [_LAYERINDEX] = LAYOUT(
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-// ),
-};
-
-enum combo_events {
- CAPS_COMBO
-};
-
-const uint16_t PROGMEM caps_combo[] = {KC_F, KC_J, COMBO_END};
-
-combo_t key_combos[] = {
- [CAPS_COMBO] = COMBO_ACTION(caps_combo),
- // Other combos...C
-};
-
-void process_combo_event(uint16_t combo_index, bool pressed) {
- switch(combo_index) {
- case CAPS_COMBO:
- if (pressed) {
- caps_word_on(); // Activate Caps Word!
- }
- break;
-
- // Other combos...
- }
-}
-
-bool is_oneshot_cancel_key(uint16_t keycode){
- switch (keycode) {
- case LA_NAV:
- return true;
- default:
- return false;
- }
-}
-
-bool is_oneshot_ignored_key(uint16_t keycode){
- switch (keycode) {
- case LA_NAV:
- case LA_SYM:
- case OS_SHFT:
- case OS_CTRL:
- case OS_ALT:
- case OS_GUI:
- return true;
- default:
- return false;
- }
-}
-
-oneshot_state os_shft_state = os_up_unqueued;
-oneshot_state os_ctrl_state = os_up_unqueued;
-oneshot_state os_alt_state = os_up_unqueued;
-oneshot_state os_cmd_state = os_up_unqueued;
-
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
- if (!process_caps_word(keycode, record)) { return false; }
- // Your macros ...
- update_oneshot(
- &os_shft_state, KC_LSFT, OS_SHFT,
- keycode, record
- );
-
- update_oneshot(
- &os_ctrl_state, KC_LCTL, OS_CTRL,
- keycode, record
- );
-
- update_oneshot(
- &os_alt_state, KC_LALT, OS_ALT,
- keycode, record
- );
-
- update_oneshot(
- &os_cmd_state, KC_LGUI, OS_GUI,
- keycode, record
- );
-
- return true;
-}
-
-bool caps_word_press_user(uint16_t keycode) {
- switch (keycode) {
- // Keycodes that continue Caps Word, with shift applied.
- case KC_A ... KC_Z:
- case KC_MINS:
- add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key.
- return true;
-
- // Keycodes that continue Caps Word, without shifting.
- case KC_1 ... KC_0:
- case KC_BSPC:
- case KC_DEL:
- case KC_UNDS:
- return true;
-
- default:
- return false; // Deactivate Caps Word.
- }
-}
-
-
-layer_state_t layer_state_set_user(layer_state_t state){
- return update_tri_layer_state(state, SYM, NAV, FUN);
-}
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; }
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- // QMK Logo and version information
- // clang-format off
- static const char PROGMEM qmk_logo[] = {
- 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
- 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
- 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};
- // clang-format on
- oled_write_P(qmk_logo, false);
- oled_write_P(PSTR("Kyria rev1.0\n\n"), false);
- // Host Keyboard Layer Status
- oled_write_P(PSTR("Layer: "), false);
- switch (get_highest_layer(layer_state | default_layer_state)) {
- case _QWERTY:
- oled_write_P(PSTR("QWERTY\n"), false);
- break;
- case SYM:
- oled_write_P(PSTR("Sym\n"), false);
- break;
- case NAV:
- oled_write_P(PSTR("Nav\n"), false);
- break;
- case FUN:
- oled_write_P(PSTR("Function\n"), false);
- break;
- default:
- oled_write_P(PSTR("Undefined\n"), false);
- }
- // Write host Keyboard LED Status to OLEDs
- led_t led_usb_state = host_keyboard_led_state();
- oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false);
- oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false);
- oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false);
- oled_write_P(is_caps_word_on() ? PSTR("CAPS") : PSTR(" "), false);
- } else {
- // clang-format off
- static const char PROGMEM kyria_logo[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
- };
- // clang-format on
- oled_write_raw_P(kyria_logo, sizeof(kyria_logo));
- }
- return false;
-}
-#endif
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_user(uint8_t index, bool clockwise) {
- if (index == 0) {
- // Volume control
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else if (index == 1) {
- // Page up/Page down
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
- return false;
-}
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/readme.md b/keyboards/splitkb/kyria/keymaps/cameronjlarsen/readme.md
deleted file mode 100644
index 7401609f35..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/readme.md
+++ /dev/null
@@ -1,249 +0,0 @@
-# Kyria's Default Keymap
-
-![KLE render of the default Kyria keymap with QWERTY as the base layer. Layers are shown in sublegends.](https://i.ibb.co/RQZx2dY/default-kyria2.jpg)
-
-
-The default keymap contains 5 layers which allows it to include all keys found on an ANSI layout TKL keyboard plus media keys.
-Hardware features of the Kyria such as OLEDs, rotary encoders and underglow are also supported.
-
-The five different layers are the following:
-1. Base layer (QWERTY, Colemak-DH or Dvorak)
-2. Navigation layer
-3. Symbols/Numbers layer
-4. Function layer
-5. Adjust layer
-
-## Base layer(s)
-```
-Base Layer: -
-
-,-------------------------------------------. ,-------------------------------------------.
-| Tab | - | - | - | - | - | | - | - | - | - | - | Bksp |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-|Ctrl/Esc| - | - | - | - | - | | - | - | - | - | - |Ctrl/ - |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| LShift | - | - | - | - | - | [ { |CapsLk| |F-Keys| ] } | - | - | - | - | - | RShift |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- |Adjust| LGUI | LAlt/| Space| Nav | | Sym | Space| AltGr| RGUI | Menu |
- | | | Enter| | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-Three different well-known keyboard layouts are provided to fill in the placeholder `-` keys: QWERTY, Colemak-DH, and Dvorak. The default layer can be changed at runtime, more info on that in the section on the [adjust layer](#adjust-layer).
-
-For the rest of this write-up, the base layer will be assumed to be QWERTY and will be used as a reference to describe physical keys, e.g. “<kbd>B</kbd> key” vs, the much more verbose, “lower inner index key”.
-
-```
-Base Layer: QWERTY
-
-,-------------------------------------------. ,-------------------------------------------.
-| Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-|Ctrl/Esc| A | S | D | F | G | | H | J | K | L | ; : |Ctrl/' "|
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| LShift | Z | X | C | V | B | [ { |CapsLk| |F-keys| ] } | N | M | , < | . > | / ? | RShift |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- |Adjust| LGUI | LAlt/| Space| Nav | | Sym | Space| AltGr| RGUI | Menu |
- | | | Enter| | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-
-Aside from variations in the alpha cluster, the rest of the base keys remain the same and are designed to feel familiar.
-
-![Step-by-step animation of the transformation of an ortholinear TKL to a Kyria](https://i.imgur.com/uVDCOek.gif)
-
-<details>
-After making transformations to the classic ANSI US QWERTY TKL 60% to arrive to the layout of the Kyria, as illustrated in the animation above, the result looks like this:
-
-```
-,-------------------------------------------. ,-------------------------------------------.
-| Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-| Cap Lk | A | S | D | F | G | | H | J | K | L | ; : | ' " |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| LShift | Z | X | C | V | B | | | | | | N | M | , < | . > | / ? | RShift |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- | LCtrl| LGUI | LAlt | Space| | | | Space| AltGr| RGUI | Menu |
- | | | | | | | | | | | |
- `----------------------------------' '----------------------------------'
-```
-
-First thing to notice is the presence of blank keys. To fill in the blank keys above the <kbd>Space</kbd> keys, we can take inspiration from other split keyboards featuring an extra inner index column on each half. A common mapping for those kind of keys are the bracket keys that got removed in the fourth step of the animated transformation. The thumb keys besides <kbd>Space</kbd>s is prime real estate for dedicated layer-switching keys. It doesn't matter on which side is assigned the sym-layer-switch key but it helps to keep the nav-layer-switch on the left in order to keep the arrow keys on the right side like on a classic keyboard, so we'll put nav on the left and sym on the right. We'll address the remaining blank thumb keys later.
-
-The base layer is starting to form but there remains some flaws. One glaring issue is the position of Control. Control is a very commonly used function but the key on which it sits right now is way too tucked in under the hand to be able to press it comfortably with either the thumb or the pinky from resting position. In fact, installing a rotary encoder there is a common move among Kyria users and I guarantee you that activating Control by holding down a rotary encoder does not spark joy. Instead, let's employ a popular trick that involves remapping the current Caps Lock key, which is positioned at a comfortable position on the keyboard, to Control.
-
-We can go further though; a variant of this trick makes the Control key produce Escape when tapped. This is called a “modtap”. There is no use to tapping Control by itself without chording it with another key and there is no use to holding down the Esc key so why not combine the two into a single key?
-
-All of this leaves us with three blank keys.
-
-```
-,-------------------------------------------. ,-------------------------------------------.
-| Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-|Ctrl/Esc| A | S | D | F | G | | H | J | K | L | ; : | ' " |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| LShift | Z | X | C | V | B | [ { | | | | ] } | N | M | , < | . > | / ? | RShift |
-`--------+-------------+--------------------+------+------| |------+------+--------------------+------+---------------'
- | | LGUI | LAlt | Space| Nav | | Sym | Space| AltGr| RGUI | Menu |
- | | | | | | | | | | | |
- `----------------------------------' '----------------------------------'
-```
-
-These keys are not easily reachable while touch typing (that is, not reachable without picking up your hand) and should thus be associated with functions that you are not likely to be typed within a stream of text. The idea is that if you have to pick up your hand to hit a key, you want it to be at a time when you are likely to be pausing your interaction with the machine, rather than in the midst of a flurry of typing. They're thus well suited for accessing the adjust layer and the function layer. We can also toss in Caps Lock even though it is an editing-type function that gets used within a stream of text because shouting in ALL-CAPS should be a deliberate action.
-
-```
-,-------------------------------------------. ,-------------------------------------------.
-| Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-|Ctrl/Esc| A | S | D | F | G | | H | J | K | L | ; : | ' " |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| LShift | Z | X | C | V | B | [ { |CapsLk| |F-keys| ] } | N | M | , < | . > | / ? | RShift |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- |Adjust| LGUI | LAlt | Space| Nav | | Sym | Space| AltGr| RGUI | Menu |
- | | | | | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-
-The next glaring issue is the absence of an Enter key on the current base layer this far. Enter is a very frequently used key so it deserves to be placed at a good spot in the keymap. The best way to insert it in the keymap with minimal changes to the current layout is to use modtaps. A tempting solution is to turn the <kbd>RShift</kbd> key into a <kbd>RShift/Enter</kbd> modtap but that can result in chat messages sent too frustratingly early when you're not used to it. Using GUI is also sub-optimal because tapping the GUI modifier actually has a use as opposed to taps of the Control or the Shift key. Pressing and releasing the GUI key by itself opens the App menu in many desktop environments. The natural choice is thus <kbd>LAlt/Enter</kbd>. That way, Enter is 1u away from resting thumb position and is unlikely to get accidentally activated because Alt is very rarely used in the midst of prose.
-
-Finally, we're one Quality-Of-Life update away from the actual base layer. <kbd>Ctrl/' "</kbd> not only preserves symmetry in the keymap with <kbd>Ctrl/Esc</kbd> but also helps balance the load between your pinkies and invites you to use both hands instead of contortions. Perhaps more importantly, it also frees you from the necessity of picking up your hand, breaking touch typing position and pressing a pinky key with your ring finger in order to execute Ctrl+A or Ctrl+Z. That becomes even more important on a board with such an aggressive pinky columnar stagger like the Kyria.
-
-
-```
-,-------------------------------------------. ,-------------------------------------------.
-| Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-|Ctrl/Esc| A | S | D | F | G | | H | J | K | L | ; : |Ctrl/' "|
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| LShift | Z | X | C | V | B | [ { |CapsLk| |F-keys| ] } | N | M | , < | . > | / ? | RShift |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- |Adjust| LGUI | LAlt/| Space| Nav | | Sym | Space| AltGr| RGUI | Menu |
- | | | Enter| | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-
-</details>
-
-## Navigation layer
-
-```
-Nav Layer: Media, navigation
-
-,-------------------------------------------. ,-------------------------------------------.
-| | | | | | | | PgUp | Home | ↑ | End | VolUp| Delete |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-| | GUI | Alt | Ctrl | Shift| | | PgDn | ← | ↓ | → | VolDn| Insert |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| | | | | | | |ScLck | | | | Pause|M Prev|M Play|M Next|VolMut| PrtSc |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- | | | | | | | | | | | |
- | | | | | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-
-This is where you'll find all the keys that are generally between the main block of a classic keyboard and the numpad in addition to media controls and modifiers on easy access on the home row for fast and comfortable chording with navigation keys.
-
-Useful mnemonics:
-- “GACS” to remember the order of the modifiers on the left-hand home row
-- <kbd>Scroll Lock</kbd> is on the same key as <kbd>Caps Lock</kbd> because they're both locks
-- <kbd>Delete</kbd> is on the same key as <kbd>Backspace</kbd> because they both erase characters
-- <kbd>Home</kbd> is the leftmost position on the current line so it is above <kbd>←</kbd>. Same logic applies for <kbd>End</kbd>.
-- <kbd>Media Previous</kbd> = ⏮, <kbd>Media Next</kbd> = ⏭
-- <kbd>Page Up</kbd>, <kbd>Page Down</kbd> and <kbd>Volume Up</kbd>, <kbd>Volume Down</kbd> are positioned like the main <kbd>Up</kbd> and <kbd>Down</kbd> keys.
-
-## Sym layer
-```
-Sym Layer: Numbers, symbols
-
-,-------------------------------------------. ,-------------------------------------------.
-| ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | = |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-| ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| | | \ | : | ; | - | [ | { | | | | } | ] | _ | , | . | / | ? |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- | | | | | | | | | | | |
- | | | | | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-The top row is the unshifted num row, the home row of the layer is the shifted num row and the bottom row contains the hyphen `-` and the underscore `_` on the best lower row spot because of how frequent they are as well as redundant symbols that are already present on the base layer but are reproduced here to avoid juggling back and forth between base, shift, and sym when typing a string of symbols.
-
-The layout of the first two rows needs no introduction, you're already used to them but it's worth looking into the structure of the bottom row.
-
-The two halves are mirrored in a sense. On the right, you can find <kbd>,</kbd> <kbd>.</kbd> <kbd>/</kbd> at their usual spots with the addition of <kbd>Shift</kbd>+<kbd>/</kbd>=<kbd>?</kbd> to the right of the <kbd>/</kbd> key to remove the need to press simultaneously <kbd>Sym</kbd> and a <kbd>Shift</kbd> key to access `?`.
-
-Now, if you look at the left side, you'll notice that the mirror of <kbd>,</kbd> is <kbd>;</kbd>, the mirror of <kbd>.</kbd> is <kbd>:</kbd> and the mirror of <kbd>/</kbd> is <kbd>\\</kbd>. The same logic used for <kbd>Shift</kbd>+<kbd>/</kbd>=<kbd>?</kbd> also applies to <kbd>Shift</kbd>+<kbd>\\</kbd>=<kbd>|</kbd>.
-
-In case you wish to combine <kbd>Shift</kbd> with a symbol key anyways, you can hold down <kbd>Shift</kbd> on the base layer with your pinky, activate <kbd>Sym</kbd> with your right thumb and while still holding down the <kbd>Shift</kbd> key, tap your desired symbol key. Same thing if you need <kbd>Ctrl</kbd>+<kbd>Digit</kbd>.
-
-## Function layer
-```
-Function Layer: Function keys
-
-,-------------------------------------------. ,-------------------------------------------.
-| | F9 | F10 | F11 | F12 | | | | | | | | |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-| | F5 | F6 | F7 | F8 | | | | Shift| Ctrl | Alt | GUI | |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| | F1 | F2 | F3 | F4 | | | | | | | | | | | | |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- | | | | | | | | | | | |
- | | | | | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-In a similar fashion to the nav layer, pressing down `FKEYS` with the right thumb enables a numpad of function keys on the opposite hand and modifiers on the right-hand home row. Once again, mirror symmetry is leveraged in this keymap for the order of the right-hand modifiers.
-
-The <kbd>Alt</kbd> modifier, despite being situated on the right half of the keyboard is *not* `KC_RALT`, it is `KC_LALT`. `KC_RALT` is actually the <kbd>AltGr</kbd> key which generally acts very differently to the left <kbd>Alt</kbd> key. Keyboard shortcuts involving <kbd>AltGr</kbd>+<kbd>F#</kbd> are rare and infrequent as opposed to the much more common <kbd>Alt</kbd>+<kbd>F#</kbd> shortcuts. Consequently, `KC_LALT` was chosen for the function layer.
-
-Since there are more than 10 function keys, the cluster of F-keys does not follow the usual 3×3+1 numpad arrangement.
-
-
-## Adjust layer
-```
-Adjust Layer: Default layer settings, RGB
-
-,-------------------------------------------. ,-------------------------------------------.
-| | | |QWERTY| | | | | | | | | |
-|--------+------+------+------+------+------| |------+------+------+------+------+--------|
-| | | |Dvorak| | | | TOG | SAI | HUI | VAI | MOD | |
-|--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
-| | | |Colmak| | | | | | | | | SAD | HUD | VAD | RMOD | |
-`----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- | | | | | | | | | | | |
- | | | | | | | | | | | |
- `----------------------------------' `----------------------------------'
-```
-
-Default layer settings on the left and various RGB underglow controls on the right.
-
-The default layer settings are lined up on the middle finger column because the home middle finger key is <kbd>D</kbd> on QWERTY (like the “D” in “Dvorak”) and the lower middle finger key is <kbd>C</kbd> on QWERTY (like the “C” in “Colemak”). I can hear you say that “QWERTY” doesn't start with “E” but Dvorak and Colemak were already aligned in a column so the QWERTY may as well join the formation.
-
-NOTE: The default layer settings set by those keys are *NOT* stored in EEPROM and thus do not persist through boots. If you wish to change the default layer in a non-volatile manner, either change the order of the layers in the firmware, for example like so if you want to set Dvorak as the new default:
-```c
-enum layers {
- _DVORAK = 0,
- _QWERTY,
- _COLEMAK_DH,
- _NAV,
- _SYM,
- _FUNCTION,
- _ADJUST
-};
-```
-or re-define the `QWERTY`, `COLEMAK` and `DVORAK` keys to point to custom keycodes starting on `SAFE_RANGE` and calling the `set_single_persistent_default_layer` function inside of `process_record_user`.
-
-## Hardware Features
-
-### Rotary Encoder
-The left rotary encoder is programmed to control the volume whereas the right encoder sends <kbd>PgUp</kbd> or <kbd>PgDn</kbd> on every turn.
-
-### OLEDs
-The OLEDs display the current layer at the top of the active layers stack, the Kyria logo and lock status (caps lock, num lock, scroll lock).
-
-### Underglow
-The underglow LEDs should be red.
-
-## Going further…
-
-This default keymap can be used as is, unchanged, as a daily driver for your Kyria but you're invited to treat your keymap like a bonsai. At the beginning, it's just like the default keymap but from time to time, you can tweak it a little. Cut a little key here, let another combo grow there. Slowly but surely it will be a unique keymap that will fit you like a glove.
-
-Check out the #keymap-ideas channel on the official SplitKB Discord server for inspiration.
diff --git a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/rules.mk b/keyboards/splitkb/kyria/keymaps/cameronjlarsen/rules.mk
deleted file mode 100644
index c58bda2c50..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cameronjlarsen/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-BOOTMAGIC_ENABLE = no
-BOOTLOADER = atmel-dfu
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes # Enables the use of one or more encoders
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-COMMAND_ENABLE = no # Disables the command feature
-COMBO_ENABLE = yes
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no
-AUDIO_ENABLE = no
-CAPS_WORD_ENABLE = yes
-CUSTOM_ONESHOT_ENABLE = yes
diff --git a/keyboards/splitkb/kyria/keymaps/cjuniet/config.h b/keyboards/splitkb/kyria/keymaps/cjuniet/config.h
deleted file mode 100644
index 0643536330..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cjuniet/config.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Copyright 2019 Thomas Baart <thomas@splitkb.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X64
- #define OLED_FONT_H "users/cjuniet/glcdfont.c"
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
- #define RGBLIGHT_HUE_STEP 8
- #define RGBLIGHT_SAT_STEP 8
- #define RGBLIGHT_VAL_STEP 8
- #define RGBLIGHT_SLEEP
-#endif
-
-#define EE_HANDS
-
-#define LEADER_PER_KEY_TIMING
-#define LEADER_TIMEOUT 250
-
-#define TAPPING_TOGGLE 2
diff --git a/keyboards/splitkb/kyria/keymaps/cjuniet/default.json b/keyboards/splitkb/kyria/keymaps/cjuniet/default.json
deleted file mode 100644
index f769c9a5dd..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cjuniet/default.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "keyboard": "kyria/rev1",
- "keymap": "cjuniet",
- "layout": "LAYOUT",
- "layers": [
- [
- "KC_ESC", "KC_Q", "KC_W", "KC_F", "KC_P", "KC_G", "KC_J", "KC_L", "KC_U", "KC_Y", "KC_SCLN", "KC_BSLS",
- "LCTL_T(KC_BSPC)", "KC_A", "KC_R", "KC_S", "KC_T", "KC_D", "KC_H", "KC_N", "KC_E", "KC_I", "KC_O", "KC_QUOT",
- "LSFT_T(KC_DEL)", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "SC_LAPO", "LGUI_T(KC_LBRC)", "RGUI_T(KC_RBRC)", "SC_RAPC", "KC_K", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_MINS",
- "KC_TAB", "KC_LGUI", "TT(1)", "LSFT_T(KC_SPC)", "LCTL_T(KC_ENT)", "RCTL_T(KC_ENT)", "RSFT_T(KC_SPC)", "TT(2)", "KC_RGUI", "QK_LEAD"
- ],
- [
- "KC_TRNS", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "KC_TILD",
- "KC_TRNS", "KC_MPLY", "KC_MS_L", "KC_MS_U", "KC_MS_R", "KC_WH_U", "KC_PGUP", "KC_LEFT", "KC_UP", "KC_RGHT", "KC_VOLU", "KC_GRV",
- "KC_TRNS", "KC_MUTE", "KC_BTN1", "KC_MS_D", "KC_BTN2", "KC_WH_D", "KC_LT", "KC_TRNS", "KC_TRNS", "KC_GT", "KC_PGDN", "KC_HOME", "KC_DOWN", "KC_END", "KC_VOLD", "KC_EQL",
- "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS"
- ],
- [
- "KC_TRNS", "KC_MNXT", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_PGUP", "KC_P7", "KC_P8", "KC_P9", "KC_PPLS", "KC_PMNS",
- "KC_TRNS", "KC_MPLY", "KC_F4", "KC_F5", "KC_F6", "KC_F11", "KC_TAB", "KC_P4", "KC_P5", "KC_P6", "KC_PAST", "KC_PSLS",
- "KC_TRNS", "KC_MPRV", "KC_F1", "KC_F2", "KC_F3", "KC_F12", "KC_LPRN", "KC_LT", "KC_GT", "KC_RPRN", "KC_PGDN", "KC_P1", "KC_P2", "KC_P3", "KC_EQL", "KC_PENT",
- "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_P0", "KC_PDOT"
- ],
- [
- "KC_TRNS", "KC_NUM", "KC_CAPS", "KC_SCRL", "KC_LNG1", "KC_LNG2", "KC_TRNS", "KC_PSCR", "KC_SCRL", "KC_PAUS", "KC_TRNS", "KC_TRNS",
- "KC_TRNS", "RGB_TOG", "RGB_SAI", "RGB_HUI", "RGB_VAI", "RGB_MOD", "KC_TRNS", "KC_INS", "KC_HOME", "KC_PGUP", "KC_TRNS", "KC_TRNS",
- "KC_TRNS", "KC_NO", "RGB_SAD", "RGB_HUD", "RGB_VAD", "RGB_RMOD", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_DEL", "KC_END", "KC_PGDN", "KC_TRNS", "KC_TRNS",
- "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS"
- ]
- ],
- "author": "",
- "notes": ""
-}
diff --git a/keyboards/splitkb/kyria/keymaps/cjuniet/keymap.c b/keyboards/splitkb/kyria/keymaps/cjuniet/keymap.c
deleted file mode 100644
index 4a4bf91177..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cjuniet/keymap.c
+++ /dev/null
@@ -1,121 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "cjuniet.h"
-
-enum layers {
- _COLEMAK = 0,
- _SYMBOLS,
- _NUMBERS,
- _SPECIALS
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_COLEMAK] = LAYOUT(
- KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
- LCTL_T(KC_BSPC), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
- LSFT_T(KC_DEL), KC_Z, KC_X, KC_C, KC_V, KC_B, SC_LAPO, LGUI_T(KC_LBRC), RGUI_T(KC_RBRC), SC_RAPC, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_MINS,
- KC_TAB, KC_LGUI, TT(_SYMBOLS), LSFT_T(KC_SPC), LCTL_T(KC_ENT), RCTL_T(KC_ENT), RSFT_T(KC_SPC), TT(_NUMBERS), KC_RGUI, QK_LEAD),
- [_SYMBOLS] = LAYOUT(
- KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TILD,
- KC_TRNS, KC_MPLY, KC_MS_L, KC_MS_U, KC_MS_R, KC_WH_U, KC_PGUP, KC_LEFT, KC_UP, KC_RGHT, KC_VOLU, KC_GRV,
- KC_TRNS, KC_MUTE, KC_BTN1, KC_MS_D, KC_BTN2, KC_WH_D, KC_LT, KC_TRNS, KC_TRNS, KC_GT, KC_PGDN, KC_HOME, KC_DOWN, KC_END, KC_VOLD, KC_EQL,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
- [_NUMBERS] = LAYOUT(
- KC_TRNS, KC_MNXT, KC_F7, KC_F8, KC_F9, KC_F10, KC_PGUP, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_PMNS,
- KC_TRNS, KC_MPLY, KC_F4, KC_F5, KC_F6, KC_F11, KC_TAB, KC_P4, KC_P5, KC_P6, KC_PAST, KC_PSLS,
- KC_TRNS, KC_MPRV, KC_F1, KC_F2, KC_F3, KC_F12, KC_LPRN, KC_LT, KC_GT, KC_RPRN, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_EQL, KC_PENT,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_P0, KC_PDOT),
- [_SPECIALS] = LAYOUT(
- KC_TRNS, KC_NUM, KC_CAPS, KC_SCRL, KC_LNG1, KC_LNG2, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS, KC_TRNS,
- KC_TRNS, RGB_TOG, RGB_SAI, RGB_HUI, RGB_VAI, RGB_MOD, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_NO, RGB_SAD, RGB_HUD, RGB_VAD, RGB_RMOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
-};
-
-void keyboard_post_init_user(void) {
- led_t led_state = host_keyboard_led_state();
- if (!led_state.num_lock) {
- tap_code(KC_NUM_LOCK);
- }
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _SYMBOLS, _NUMBERS, _SPECIALS);
-}
-
-void leader_end_user(void) {
- // Lock screen (macOS)
- if (leader_sequence_one_key(KC_ESC)) {
- tap_code16(LCTL(LGUI(KC_Q)));
- }
-
- // Escape-Shift-Z-Z (VIM)
- if (leader_sequence_one_key(KC_Z)) {
- SEND_STRING(SS_TAP(X_ESC) SS_LSFT("zz"));
- }
-
- // Dead grave accent (macOS)
- if (leader_sequence_one_key(KC_E)) {
- tap_code16(LALT(KC_GRAVE));
- }
-}
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_180;
-}
-
-static void render_kyria_logo(void) {
- static const char PROGMEM kyria_logo[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
- };
- oled_write_raw_P(kyria_logo, sizeof(kyria_logo));
-}
-
-static void render_qmk_logo(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
- 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
- 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};
-
- oled_write_P(qmk_logo, false);
-}
-
-static void render_status(void) {
- render_qmk_logo();
- oled_write_ln_P(PSTR(" Chris's Kyria\n"), false);
-
- oled_write_P(PSTR(" "), false);
- switch (get_highest_layer(layer_state)) {
- case _COLEMAK:
- oled_write_P(PSTR("Colemak"), false);
- break;
- case _SYMBOLS:
- oled_write_P(PSTR("Symbols"), false);
- break;
- case _NUMBERS:
- oled_write_P(PSTR("Numbers"), false);
- break;
- case _SPECIALS:
- oled_write_P(PSTR("Special"), false);
- break;
- default:
- oled_write_P(PSTR("Undefined"), false);
- }
- oled_write_ln_P(PSTR(" Layer\n"), false);
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- render_status();
- render_status_bar();
- } else {
- render_kyria_logo();
- }
- return false;
-}
diff --git a/keyboards/splitkb/kyria/keymaps/cjuniet/rules.mk b/keyboards/splitkb/kyria/keymaps/cjuniet/rules.mk
deleted file mode 100644
index 968012ece1..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cjuniet/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-ENCODER_ENABLE = no
-EXTRAKEY_ENABLE = yes
-LEADER_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-OLED_ENABLE = yes
-RGBLIGHT_ENABLE = no
diff --git a/keyboards/splitkb/kyria/keymaps/cwebster2/config.h b/keyboards/splitkb/kyria/keymaps/cwebster2/config.h
deleted file mode 100644
index e6fc5e2d0f..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cwebster2/config.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Copyright 2020 Casey Webster <casey@e1337.dev>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X64
-#endif
-
-#ifdef RGBLIGHT_ENABLE
- //#define RGBLIGHT_EFFECT_ALTERNATING
- #define RGBLIGHT_EFFECT_BREATHING
- //#define RGBLIGHT_EFFECT_CHRISTMAS
- //#define RGBLIGHT_EFFECT_KNIGHT
- //#define RGBLIGHT_EFFECT_RAINBOW_MOOD
- //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
- //#define RGBLIGHT_EFFECT_RGB_TEST
- //#define RGBLIGHT_EFFECT_SNAKE
- //#define RGBLIGHT_EFFECT_STATIC_GRADIENT
- //#define RGBLIGHT_EFFECT_TWINKLE
- #define RGBLIGHT_HUE_STEP 8
- #define RGBLIGHT_SAT_STEP 8
- #define RGBLIGHT_VAL_STEP 8
- #define RGBLIGHT_SLEEP
- #define RGBLIGHT_LIMIT_VAL 128
- #define RGBLIGHT_EFFECT_BREATHE_MAX 128
- #define RGBLIGHT_LAYERS
- #define RGBLIGHT_MAX_LAYERS 16
- //#define RGBLIGHT_STARTUP_ANIMATION
-#endif
-
-#define EE_HANDS
-
-//#define DEBUG_MATRIX_SCAN_RATE
-//#define SPLIT_MODS_ENABLE
diff --git a/keyboards/splitkb/kyria/keymaps/cwebster2/keymap.c b/keyboards/splitkb/kyria/keymaps/cwebster2/keymap.c
deleted file mode 100644
index e93857f4cc..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cwebster2/keymap.c
+++ /dev/null
@@ -1,411 +0,0 @@
-/* Copyright 2020 Casey Webster <casey@e1337.dev>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-//#include "raw_hid.h"
-#define RAW_EPSIZE 8
-#include <stdio.h>
-
-#include "cwebster2.h"
-
-#ifdef WPM_ENABLE
-char wpm_str[10];
-uint16_t wpm_graph_timer = 0;
-#endif
-
-#ifdef COMBO_ENABLE
-enum combos {
- ZX_COPY,
- CV_PASTE,
- PB_PARENS,
- FP_CURLY,
- DV_SQUARE
-};
-
-const uint16_t PROGMEM copy_combo[] = { KC_Z, KC_X, COMBO_END };
-const uint16_t PROGMEM paste_combo[] = { KC_C, KC_D, COMBO_END };
-const uint16_t PROGMEM curly_combo[] = { KC_F, KC_P, COMBO_END };
-const uint16_t PROGMEM parens_combo[] = { KC_P, KC_B, COMBO_END };
-const uint16_t PROGMEM square_combo[] = { KC_D, KC_V, COMBO_END };
-
-combo_t key_combos[] = {
- [ZX_COPY] = COMBO(copy_combo, LCTL_T(KC_C)),
- [CV_PASTE] = COMBO(paste_combo, LCTL_T(KC_V)),
- [PB_PARENS] = COMBO(parens_combo, KC_LPRN),
- [FP_CURLY] = COMBO(curly_combo, KC_LCBR),
- [DV_SQUARE] = COMBO(square_combo, KC_LBRC)
-};
-#endif
-
-#define LAYOUT_kyria_base( \
- L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, \
- L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, \
- L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, \
- L33, L34, L35, R35, R34, R33 \
- ) \
- LAYOUT_kyria_wrapper ( \
- KC_GRV, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, KC_BSLS, \
- KC_CTLBS, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, KC_QUOT, \
- KC_EQL, L21, L22, L23, L24, L25, KC_LCCL, KC_LGUI, KC_ALTCL, KC_LSFT, R25, R24, R23, R22, R21, KC_MINS, \
- SCMD_T(KC_LBRC), C_S_T(KC_MINS), L33, L34, L35, R35, R34, R33, TO(_GAME), KC_PSCR \
- )
-#define LAYOUT_kyria_base_wrapper(...) LAYOUT_kyria_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * Base Layer: QWERTY
- */
- [_QWERTY] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______QWERTY_L1______, _______QWERTY_R1______,
- _______QWERTY_L2______, _______QWERTY_R2______,
- _______QWERTY_L3______, _______QWERTY_R3______,
- _______NAKED_L___T____, _______THUMBS_R_______
- /* `---------------------' `---------------------' */
- ),
- [_COLEMAK] = LAYOUT_kyria_wrapper(
- /* ,-----------------------. ,-----------------------. */
- KC_GRV, _______COLEMAK_L1_____, _______COLEMAK_R1_____, KC_BSLS,
- KC_CTLBS, _______COLEMAK_L2_____, _______COLEMAK_R2_____, KC_SCLN,
- KC_EQL, _______COLEMAK_L3_____, KC_LCCL, KC_LGUI, KC_ALTCL, KC_LSFT, _______COLEMAK_R3_____, KC_MINS,
- SCMD_T(KC_LBRC), C_S_T(KC_MINS), _______THUMBS_L_______, _______THUMBS_R_______, TO(_QWERTY), KC_PSCR
- /* `---------------------' `---------------------' */
- ),
- // GAME layout -- qwerty without homerow mods
- [_GAME] = LAYOUT_kyria_wrapper(
- /* ,-------------------------------------------. ,-------------------------------------------. */
- KC_GRV, _______COLEMAK_L1_____, _______COLEMAK_R1_____, KC_BSLS,
- KC_CTLBS, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_SCLN,
- KC_LSFT, _______COLEMAK_L3_____, KC_LCCL, KC_LALT, KC_ALTCL, KC_LSFT, _______COLEMAK_R3_____, KC_MINS,
- KC_EQL, MO(_NUM), _______NAKED_L___T____, _______THUMBS_R_______, TO(_COLEMAK), KC_F12
- /* `----------------------------------' `----------------------------------' */
- ),
- [_FN] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______FN_______L1____, _______INACTIVE_R1____,
- _______FN_______L2____, _______INACTIVE_R2____,
- _______FN_______L3____, _______NAV______R2____,
- _______FN________T____, _______INACTIVE__T____
- /* `---------------------' `---------------------' */
- ),
- [_SYMBOLS] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______SYM______L1____, _______INACTIVE_R1____,
- _______SYM______L2____, _______INACTIVE_R2____,
- _______SYM______L3____, _______INACTIVE_R3____,
- _______SYM_______T____, _______INACTIVE__T____
- /* `---------------------' `---------------------' */
- ),
- [_NUM] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______NUM______L1____, _______INACTIVE_R1____,
- _______NUM______L2____, _______INACTIVE_R2____,
- _______NUM______L3____, _______INACTIVE_R3____,
- _______NUM_______T____, _______INACTIVE__T____
- /* `---------------------' `---------------------' */
- ),
- [_NAV] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______INACTIVE_L1____, _______NAV______R1____,
- _______INACTIVE_L2____, _______NAV______R2____,
- _______INACTIVE_L3____, _______NAV______R3____,
- _______INACTIVE__T____, _______NAV_______T____
- /* `---------------------' `---------------------' */
- ),
- [_MOUSE] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______INACTIVE_L1____, _______MOUSE____R1____,
- _______INACTIVE_L2____, _______MOUSE____R2____,
- _______INACTIVE_L3____, _______MOUSE____R3____,
- _______INACTIVE__T____, _______MOUSE_____T____
- /* `---------------------' `---------------------' */
- ),
- [_MEDIA] = LAYOUT_kyria_base_wrapper(
- /* ,-----------------------. ,-----------------------. */
- _______INACTIVE_L1____, _______MEDIA____R1____,
- _______INACTIVE_L2____, _______MEDIA____R2____,
- _______INACTIVE_L3____, _______MEDIA____R3____,
- _______INACTIVE__T____, _______MEDIA_____T____
- /* `---------------------' `---------------------' */
- ),
-};
-
-#ifdef RAW_ENABLE
-static void send_layer_via_hid(int layer) {
- uint8_t data[RAW_EPSIZE];
- data[0] = 1;
- data[1] = layer;
- raw_hid_send(data, sizeof(data));
- return;
-}
-#endif
-
-
-#ifdef RGBLIGHT_LAYERS
-const rgblight_segment_t PROGMEM my_qwerty_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_RED} );
-const rgblight_segment_t PROGMEM my_colemak_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_BLUE} );
-const rgblight_segment_t PROGMEM my_game_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_RED} );
-const rgblight_segment_t PROGMEM my_fn_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_PINK} );
-const rgblight_segment_t PROGMEM my_symbols_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_GREEN} );
-const rgblight_segment_t PROGMEM my_num_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_CORAL} );
-const rgblight_segment_t PROGMEM my_nav_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_GOLDENROD} );
-const rgblight_segment_t PROGMEM my_mouse_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_TURQUOISE} );
-const rgblight_segment_t PROGMEM my_media_layer[] = RGBLIGHT_LAYER_SEGMENTS( {0, 20, HSV_MAGENTA} );
-
-const rgblight_segment_t PROGMEM my_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 3, HSV_RED},
- {7, 1, HSV_RED},
- {10, 3, HSV_RED},
- {17, 1, HSV_RED}
-);
-
-const rgblight_segment_t PROGMEM my_shift_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {3, 1, HSV_RED},
- {13, 1, HSV_RED}
-);
-
-const rgblight_segment_t PROGMEM my_ctrl_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 1, HSV_ORANGE},
- {14, 1, HSV_ORANGE}
-);
-
-const rgblight_segment_t PROGMEM my_alt_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {5, 1, HSV_GOLD},
- {15, 1, HSV_GOLD}
-);
-
-const rgblight_segment_t PROGMEM my_gui_layer[] = RGBLIGHT_LAYER_SEGMENTS(
- {9, 1, HSV_SPRINGGREEN},
- {19, 1, HSV_SPRINGGREEN}
-);
-
-const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(
- my_colemak_layer,
- my_qwerty_layer,
- my_game_layer,
- my_fn_layer,
- my_symbols_layer,
- my_num_layer,
- my_nav_layer,
- my_mouse_layer,
- my_media_layer,
- my_capslock_layer,
- my_shift_layer,
- my_ctrl_layer,
- my_alt_layer,
- my_gui_layer
-);
-
-void matrix_scan_keymap(void) {
- uint8_t mods = mod_config(get_mods());
- rgblight_set_layer_state(10, mods & MOD_MASK_SHIFT);
- rgblight_set_layer_state(11, mods & MOD_MASK_CTRL);
- rgblight_set_layer_state(12, mods & MOD_MASK_ALT);
- rgblight_set_layer_state(13, mods & MOD_MASK_GUI);
-}
-#endif
-
-void keyboard_post_init_user(void) {
- rgblight_sethsv_noeeprom(HSV_BLUE);
- keyboard_post_init_rgb();
-#ifdef RGBLIGHT_LAYERS
- rgblight_layers = my_rgb_layers;
-#else
- rgblight_sethsv_noeeprom(HSV_BLUE);
-#endif
- /*debug_enable=true;*/
- /*debug_matrix=true;*/
-}
-
-//todo https://github.com/qmk/qmk_firmware/blob/debdc6379c7a72815df1f53e3406479381d243af/keyboards/crkbd/keymaps/soundmonster/keymap.c RGBRST
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-#ifdef RGBLIGHT_LAYERS
- for (int i = _QWERTY; i < __LAST; i++) {
- rgblight_set_layer_state(i, layer_state_cmp(state, i));
- }
-# ifdef RAW_ENABLE
- send_layer_via_hid(state);
-# endif
-#endif
- return state;
-}
-
-#ifdef RGBLIGHT_LAYERS
-bool led_update_user(led_t led_state) {
- rgblight_set_layer_state(9, led_state.caps_lock);
- return true;
-}
-#endif
-
-#ifdef OLED_ENABLE
-void suspend_power_down_user(void) {
- oled_clear();
- oled_off();
-}
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_180;
-}
-
-static void render_logo(void) {
- /*static const char PROGMEM qmk_logo[] = {*/
- /* 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,*/
- /* 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,*/
- /* 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};*/
-
- static const char PROGMEM logo[] = {
- // canvas is 128x64. need 16 padding
- // 80x32
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x60, 0xe0, 0xf0, 0xfe, 0xfe, 0xf0, 0x60, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x0c, 0x1c, 0x3c, 0x7c, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x7c, 0xf8, 0xe0, 0x60, 0x20, 0x10, 0x10, 0x0c, 0x0f, 0x09, 0x08, 0x00, 0x09, 0x9b, 0x5c, 0x50, 0x10, 0x20, 0x40, 0xe0, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0x78, 0x38, 0x38, 0x10, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x17, 0x15, 0x3d, 0xef, 0xaf, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x10, 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x40, 0xa0, 0xbf, 0xff, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
- };
- oled_write_raw_P(logo, sizeof(logo));
-
- oled_advance_page(false);
- oled_advance_page(false);
- oled_advance_page(false);
- oled_advance_page(false);
-// oled_write_P(qmk_logo, false);
-
-#ifdef COMBO_ENABLE
- oled_write_P(PSTR("Combos enabled: "), false);
- if (is_combo_enabled()) {
- oled_write_P(PSTR("Yes\n"), false);
- } else {
- oled_write_P(PSTR("No\n"), false);
- }
-#endif
-
-#ifdef SPLIT_MODS_ENABLE
- uint8_t mods = get_mods() | get_weak_mods();
- oled_write_P((mods & MOD_MASK_GUI) ? PSTR("GUI ") : PSTR(" "), false);
- oled_write_P((mods & MOD_MASK_ALT) ? PSTR("ALT ") : PSTR(" "), false);
- oled_write_P((mods & MOD_MASK_CTRL) ? PSTR("CTRL ") : PSTR(" "), false);
- oled_write_P((mods & MOD_MASK_SHIFT) ? PSTR("SHFT ") : PSTR(" "), false);
- oled_write_P(PSTR("\n"), false);
-
-#endif
-
-#ifdef WPM_ENABLE
- // Write WPM
- uint8_t n = get_current_wpm();
- wpm_str[3] = '\0';
- wpm_str[2] = '0' + n % 10;
- wpm_str[1] = '0' + (n /= 10) % 10;
- wpm_str[0] = '0' + n / 10 ;
- //oled_write_P(PSTR("\n"), false);
- oled_write_P(PSTR(" WPM: "), false);
- oled_write(wpm_str, false);
-#endif
-}
-
-
-static void render_status(void) {
- static bool isColemak = false;
- // QMK Logo and version information
- oled_write_P(PSTR("Kyria rev1.3\n\n"), false);
-
- oled_write_P(isColemak ? PSTR("COLEMAK ") : PSTR("QWERTY "), false);
-
- // Host Keyboard Layer Status
- switch (get_highest_layer(layer_state)) {
- case _QWERTY:
- oled_write_P(PSTR("Game\n"), false);
- isColemak = false;
- break;
- case _SYMBOLS:
- oled_write_P(PSTR("Shifted Sym\n"), false);
- break;
- case _NUM:
- oled_write_P(PSTR("Numbers\n"), false);
- break;
- case _NAV:
- oled_write_P(PSTR("Navigation\n"), false);
- break;
- case _FN:
- oled_write_P(PSTR("Fn\n"), false);
- break;
- case _GAME:
- oled_write_P(PSTR("Game\n"), false);
- isColemak = true;
- break;
- case _COLEMAK:
- oled_write_P(PSTR("Default\n"), false);
- isColemak = true;
- break;
- case _MEDIA:
- oled_write_P(PSTR("Media keys\n"), false);
- break;
- case _MOUSE:
- oled_write_P(PSTR("Mouse keys\n"), false);
- break;
- default:
- oled_write_P(PSTR("Undefined\n"), false);
- }
-
- uint8_t mods = get_mods() | get_weak_mods();
- oled_write_P(PSTR("\n"), false);
- oled_write_P((mods & MOD_MASK_GUI) ? PSTR("GUI ") : PSTR(" "), false);
- oled_write_P((mods & MOD_MASK_ALT) ? PSTR("ALT ") : PSTR(" "), false);
- oled_write_P((mods & MOD_MASK_CTRL) ? PSTR("CTRL ") : PSTR(" "), false);
- oled_write_P((mods & MOD_MASK_SHIFT) ? PSTR("SHFT ") : PSTR(" "), false);
- oled_write_P(PSTR("\n"), false);
-
-#define I3MASK MOD_BIT(KC_LGUI)
-#define I3SMASK (MOD_BIT(KC_LGUI) | MOD_BIT(KC_LSFT))
-#define KMASK (MOD_BIT(KC_LCTL) | MOD_BIT(KC_LSFT))
-
- oled_write_P((mods == I3MASK) ? PSTR("I3 ") : (mods == I3SMASK) ? PSTR("I3-SFT ") : PSTR(" "), false);
- oled_write_P((mods == KMASK) ? PSTR("KITTY ") : PSTR(" "), false);
- oled_write_P(PSTR("\n"), false);
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false);
-
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- render_status(); // Renders the current keyboard state (layer, lock, caps, scroll, etc)
- } else {
- render_logo();
- }
- return false;
-}
-#endif
-
-
-#ifdef RAW_ENABLE
-void raw_hid_receive(uint8_t *data, uint8_t length) {
- // messages from host
- // add ability to set color
- raw_hid_send(data, length);
-}
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/cwebster2/rules.mk b/keyboards/splitkb/kyria/keymaps/cwebster2/rules.mk
deleted file mode 100644
index 442170ccd6..0000000000
--- a/keyboards/splitkb/kyria/keymaps/cwebster2/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-OLED_ENABLE = yes
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-RAW_ENABLE = no
-WPM_ENABLE = no
-COMBO_ENABLE = no
diff --git a/keyboards/splitkb/kyria/keymaps/drashna/chconf.h b/keyboards/splitkb/kyria/keymaps/drashna/chconf.h
deleted file mode 100644
index 1ee8438cdf..0000000000
--- a/keyboards/splitkb/kyria/keymaps/drashna/chconf.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#if defined(KEYBOARD_splitkb_kyria_rev3)
-#define CH_CFG_ST_RESOLUTION 16
-#define CH_CFG_ST_FREQUENCY 10000
-#endif
-
-#include_next <chconf.h>
diff --git a/keyboards/splitkb/kyria/keymaps/drashna/config.h b/keyboards/splitkb/kyria/keymaps/drashna/config.h
deleted file mode 100644
index 702599605c..0000000000
--- a/keyboards/splitkb/kyria/keymaps/drashna/config.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define EE_HANDS
-
-#ifdef OLED_ENABLE
-# undef OLED_DISPLAY_128X64
-# define OLED_DISPLAY_128X128
-# define OLED_PRE_CHARGE_PERIOD 0x22
-# define OLED_VCOM_DETECT 0x35
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-# define RGBLIGHT_SLEEP
-# undef RGBLIGHT_LIMIT_VAL
-# define RGBLIGHT_LIMIT_VAL 120
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_SPLIT
-# define RGBLIGHT_LAYERS
-#endif
-
-
-#define QMK_ESC_INPUT D4
-#define QMK_ESC_OUTPUT B2
-
-#ifdef KEYBOARD_splitkb_kyria_rev3
-# define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode.
-# define SERIAL_USART_PIN_SWAP // Swap TX and RX pins if keyboard is master halve.
-# define SERIAL_USART_DRIVER SD1 // USART driver of TX pin. default: SD1
-# define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
-# undef SOFT_SERIAL_PIN
-# define SERIAL_USART_TX_PIN D3
-# define SERIAL_USART_RX_PIN D2
-
-# undef WS2812_DI_PIN
-# define WS2812_DI_PIN PAL_LINE(GPIOA, 3)
-# define WS2812_PWM_DRIVER PWMD2 // default: PWMD2
-# define WS2812_PWM_CHANNEL 4 // default: 2
-# define WS2812_PWM_PAL_MODE 1 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2
-# define WS2812_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU.
-# define WS2812_DMA_CHANNEL 2 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU.
-# define WS2812_DMAMUX_ID STM32_DMAMUX1_TIM2_UP // DMAMUX configuration for TIMx_UP -- only required if your MCU has a DMAMUX peripheral, see the respective reference manual for the appropriate values for your MCU.
-
-# define BOOTMAGIC_LITE_ROW 0
-# define BOOTMAGIC_LITE_COLUMN 6
-# define BOOTMAGIC_LITE_ROW_RIGHT 4
-# define BOOTMAGIC_LITE_COLUMN_RIGHT 6
-
-# define BOOTMAGIC_LITE_EEPROM_ROW 1
-# define BOOTMAGIC_LITE_EEPROM_COLUMN 6
-# define BOOTMAGIC_LITE_EEPROM_ROW_RIGHT 5
-# define BOOTMAGIC_LITE_EEPROM_COLUMN_RIGHT 6
-# define SECURE_UNLOCK_SEQUENCE { {1, 5}, {1, 4}, {1, 3}, {1, 2} }
-
-# define ENCODER_RESOLUTION 2
-#else
-# define BOOTMAGIC_LITE_ROW 0
-# define BOOTMAGIC_LITE_COLUMN 7
-# define BOOTMAGIC_LITE_ROW_RIGHT 4
-# define BOOTMAGIC_LITE_COLUMN_RIGHT 7
-
-# define BOOTMAGIC_LITE_EEPROM_ROW 1
-# define BOOTMAGIC_LITE_EEPROM_COLUMN 7
-# define BOOTMAGIC_LITE_EEPROM_ROW_RIGHT 5
-# define BOOTMAGIC_LITE_EEPROM_COLUMN_RIGHT 7
-#endif
-
-#define SERIAL_USART_SPEED 921600
-
-#if defined(KEYBOARD_splitkb_kyria_rev1_proton_c) || defined(KEYBOARD_splitkb_kyria_rev3)
-# define WEAR_LEVELING_BACKING_SIZE 16384
-# define WEAR_LEVELING_LOGICAL_SIZE 8192
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/drashna/halconf.h b/keyboards/splitkb/kyria/keymaps/drashna/halconf.h
deleted file mode 100644
index b23c85d0f1..0000000000
--- a/keyboards/splitkb/kyria/keymaps/drashna/halconf.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2020 QMK
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#if defined(KEYBOARD_splitkb_kyria_rev3)
-# define HAL_USE_I2C TRUE
-# define HAL_USE_PWM TRUE
-# define HAL_USE_SERIAL TRUE
-#endif
-
-#include_next <halconf.h>
diff --git a/keyboards/splitkb/kyria/keymaps/drashna/keymap.c b/keyboards/splitkb/kyria/keymaps/drashna/keymap.c
deleted file mode 100644
index 5a2b886fe4..0000000000
--- a/keyboards/splitkb/kyria/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,229 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-/*
- * The `LAYOUT_kyria_base` macro is a template to allow the use of identical
- * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
- * that there is no need to set them up for each layout, and modify all of
- * them if I want to change them. This helps to keep consistency and ease
- * of use. K## is a placeholder to pass through the individual keycodes
- */
-
-// clang-format off
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define LAYOUT_kyria_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- SH_T(KC_ESC), K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, SH_T(KC_MINS), \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- OS_LSFT, CTL_T(K21), K22, K23, K24, K25, TG_GAME, MEH(KC_MINS), TG_DBLO, KC_CAPS, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \
- KC_MUTE, OS_LALT, KC_GRV, KC_SPC, BK_LWER, DL_RAIS, KC_ENT, OS_RGUI, UC(0x03A8), UC(0x2E2E) \
- )
-/* Re-pass though to allow templates to be used */
-#define LAYOUT_base_wrapper(...) LAYOUT_kyria_base(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_GAMEPAD] = LAYOUT_wrapper(
- KC_ESC, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______,
- KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______,
- KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, _______, _______, _______, LALT(KC_PSCR), _______, _______, _______, _______, _______, _______,
- _______, MAGIC_TOGGLE_NKRO, KC_V, KC_SPC, KC_H, _______, _______, _______, _______, _______
- ),
-
- [_DIABLO] = LAYOUT_wrapper(
- KC_ESC, KC_S, KC_I, KC_F, KC_M, KC_T, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO,
- KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_G, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, KC_J, KC_L, TG_DBLO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_DIABLO_CLEAR, KC_J, KC_NO, SFT_T(KC_SPACE), ALT_T(KC_Q), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
- ),
- [_LOWER] = LAYOUT_wrapper(
- KC_F12, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F11,
- _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _______, _______, _______, _______, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_RAISE] = LAYOUT_wrapper(
- KC_F12, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_F11,
- _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _______, _______, _______, _______, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_ADJUST] = LAYOUT_wrapper(
- QK_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, QK_BOOT,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- UC_NEXT, _________________ADJUST_L3_________________, HF_TOGG, HF_FDBK, MG_NKRO, UC_NEXT, _________________ADJUST_R3_________________, TG_MODS,
- QK_RBT, _______, KEYLOCK, KC_NUKE, _______, _______, _______, _______, _______, AUTO_CTN
- ),
-// [_LAYERINDEX] = LAYOUT_wrapper(
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-// ),
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [_DEFAULT_LAYER_1] = { ENCODER_CCW_CW( KC_VOLD, KC_VOLU ), ENCODER_CCW_CW( KC_WH_D, KC_WH_U ) },
- [_DEFAULT_LAYER_2] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_DEFAULT_LAYER_2] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_DEFAULT_LAYER_2] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_GAMEPAD] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_DIABLO] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_MOUSE] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( KC_WH_D, KC_WH_U ) },
- [_MEDIA] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( _______, _______ ) },
- [_RAISE] = { ENCODER_CCW_CW( _______, _______ ), ENCODER_CCW_CW( KC_PGDN, KC_PGUP ) },
- [_LOWER] = { ENCODER_CCW_CW( RGB_MOD, RGB_RMOD), ENCODER_CCW_CW( RGB_HUD, RGB_HUI ) },
- [_ADJUST] = { ENCODER_CCW_CW( CK_DOWN, CK_UP ), ENCODER_CCW_CW( _______, _______ ) },
-};
-#endif
-// clang-format on
-
-#ifdef OLED_ENABLE
-void render_oled_title(bool side) {
- oled_write_P(side ? PSTR(" Splitkb ") : PSTR(" Kyria "), true);
-}
-
-oled_rotation_t oled_init_keymap(oled_rotation_t rotation) {
-# ifdef OLED_DISPLAY_128X128
- return OLED_ROTATION_0;
-# else
- return OLED_ROTATION_180;
-# endif
-}
-
-void oled_render_large_display(bool side) {
- if (side) {
- render_wpm_graph(56, 64);
- } else {
- // clang-format off
- static const char PROGMEM kyria_logo[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
- };
- // clang-format on
- oled_set_cursor(0, 7);
- oled_write_raw_P(kyria_logo, sizeof(kyria_logo));
- }
-}
-#endif
-
-#if defined(RGBLIGHT_ENABLE) && defined(RGBLIGHT_LAYERS)
-const rgblight_segment_t PROGMEM shift_layers[] = RGBLIGHT_LAYER_SEGMENTS({8, 1, 120, 255, 255}, {18, 1, 120, 255, 255});
-const rgblight_segment_t PROGMEM control_layers[] = RGBLIGHT_LAYER_SEGMENTS({6, 1, 0, 255, 255}, {16, 1, 0, 255, 255});
-const rgblight_segment_t PROGMEM alt_layers[] = RGBLIGHT_LAYER_SEGMENTS({2, 1, 240, 255, 255}, {17, 1, 250, 255, 255});
-const rgblight_segment_t PROGMEM gui_layers[] = RGBLIGHT_LAYER_SEGMENTS({7, 1, 51, 255, 255}, {12, 1, 51, 255, 255});
-
-const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST(shift_layers, control_layers, alt_layers, gui_layers);
-
-void keyboard_post_init_keymap(void) {
- rgblight_layers = my_rgb_layers;
-}
-
-void housekeeping_task_keymap(void) {
- uint8_t mods = mod_config(get_mods() | get_oneshot_mods());
- rgblight_set_layer_state(0, mods & MOD_MASK_SHIFT);
- rgblight_set_layer_state(1, mods & MOD_MASK_CTRL);
- rgblight_set_layer_state(2, mods & MOD_MASK_ALT);
- rgblight_set_layer_state(3, mods & MOD_MASK_GUI);
-}
-#elif defined(RGB_MATRIX_ENABLE) && defined(KEYBOARD_splitkb_kyria_rev3)
-void keyboard_post_init_keymap(void) {
- extern led_config_t g_led_config;
- g_led_config.flags[30] = g_led_config.flags[24] = g_led_config.flags[18] = g_led_config.flags[12] = g_led_config.flags[11] = g_led_config.flags[10] = g_led_config.flags[9] = g_led_config.flags[8] = g_led_config.flags[7] = g_led_config.flags[6] = g_led_config.flags[37] = g_led_config.flags[38] = g_led_config.flags[39] = g_led_config.flags[40] = g_led_config.flags[41] = g_led_config.flags[42] = g_led_config.flags[43] = g_led_config.flags[49] = g_led_config.flags[55] = g_led_config.flags[61] = LED_FLAG_MODIFIER;
-}
-
-void check_default_layer(uint8_t mode, uint8_t type, uint8_t led_min, uint8_t led_max) {
- switch (get_highest_layer(default_layer_state)) {
- case _QWERTY:
- rgb_matrix_layer_helper(DEFAULT_LAYER_1_HSV, mode, rgb_matrix_config.speed, type, led_min, led_max);
- break;
- case _COLEMAK_DH:
- rgb_matrix_layer_helper(DEFAULT_LAYER_2_HSV, mode, rgb_matrix_config.speed, type, led_min, led_max);
- break;
- case _COLEMAK:
- rgb_matrix_layer_helper(DEFAULT_LAYER_3_HSV, mode, rgb_matrix_config.speed, type, led_min, led_max);
- break;
- case _DVORAK:
- rgb_matrix_layer_helper(DEFAULT_LAYER_4_HSV, mode, rgb_matrix_config.speed, type, led_min, led_max);
- break;
- }
-}
-
-bool rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max) {
- if (userspace_config.rgb_layer_change) {
- switch (get_highest_layer(layer_state)) {
- case _GAMEPAD:
- rgb_matrix_layer_helper(HSV_ORANGE, 0, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- case _DIABLO:
- rgb_matrix_layer_helper(HSV_RED, 0, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- case _RAISE:
- rgb_matrix_layer_helper(HSV_YELLOW, 0, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- case _LOWER:
- rgb_matrix_layer_helper(HSV_GREEN, 0, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- case _ADJUST:
- rgb_matrix_layer_helper(HSV_RED, 0, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- case _MOUSE:
- rgb_matrix_layer_helper(HSV_PURPLE, 1, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- default:
- check_default_layer(0, LED_FLAG_UNDERGLOW, led_min, led_max);
- break;
- }
- check_default_layer(0, LED_FLAG_MODIFIER, led_min, led_max);
- }
- return false;
-}
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/drashna/mcuconf.h b/keyboards/splitkb/kyria/keymaps/drashna/mcuconf.h
deleted file mode 100644
index 2bee30b342..0000000000
--- a/keyboards/splitkb/kyria/keymaps/drashna/mcuconf.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Copyright 2020 Nick Brassel (tzarc)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#include_next <mcuconf.h>
-
-#if defined(KEYBOARD_splitkb_kyria_rev3)
-# undef STM32_PWM_USE_ADVANCED
-# define STM32_PWM_USE_ADVANCED TRUE
-
-# undef STM32_PWM_USE_TIM2
-# define STM32_PWM_USE_TIM2 TRUE
-# undef STM32_PWM_USE_TIM3
-# define STM32_PWM_USE_TIM3 FALSE
-
-# undef STM32_SERIAL_USE_USART1
-# define STM32_SERIAL_USE_USART1 TRUE
-
-# undef STM32_ST_USE_TIMER
-# define STM32_ST_USE_TIMER 3
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/drashna/rules.mk b/keyboards/splitkb/kyria/keymaps/drashna/rules.mk
deleted file mode 100644
index bb872743b7..0000000000
--- a/keyboards/splitkb/kyria/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,40 +0,0 @@
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # USB Nkey Rollover
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes # Enables the use of one or more encoders
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-KEY_LOCK_ENABLE = no
-WPM_ENABLE = yes
-
-ifeq ($(strip $(KEYBOARD)), splitkb/kyria/rev1/proton_c)
- OVERLOAD_FEATURES = yes
-endif
-ifeq ($(strip $(KEYBOARD)), splitkb/kyria/rev3)
- OVERLOAD_FEATURES = yes
- CONVERT_TO = proton_c
- WS2812_DRIVER = pwm
- SERIAL_DRIVER = usart
-endif
-
-ifeq ($(strip $(OVERLOAD_FEATURES)), yes)
- RGB_MATRIX_ENABLE = yes
- CONSOLE_ENABLE = yes # Console for debug
- MOUSEKEY_ENABLE = yes # Mouse keys
- TAP_DANCE_ENABLE = yes
- SWAP_HANDS_ENABLE = yes
- LTO_ENABLE = no
- ENCODER_MAP_ENABLE = yes
- AUTOCORRECT_ENABLE = yes
- CAPS_WORD_ENABLE = yes
- AUDIO_ENABLE = no
- DEBUG_MATRIX_SCAN_RATE_ENABLE = api
-else
- LTO_ENABLE = yes
- BOOTLOADER = qmk-hid
- BOOTLOADER_SIZE = 512
- CUSTOM_UNICODE_ENABLE = no
-endif
diff --git a/keyboards/splitkb/kyria/keymaps/ericgebhart/config.h b/keyboards/splitkb/kyria/keymaps/ericgebhart/config.h
deleted file mode 100755
index 6f7578aa5d..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ericgebhart/config.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
-This is the c configuration file for the keymap
-
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-Copyright 2015 Jack Humbert
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// otherwise the other promicro v3 isn't found
-#define SPLIT_USB_DETECT
-#define OLED_DISPLAY_128X64
diff --git a/keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c b/keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk b/keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk
deleted file mode 100644
index 1946c18729..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ericgebhart/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-EXTRAKEY_ENABLE = no # Audio control and System control
-ENCODER_ENABLE = no # Enables the use of one or more encoders
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
diff --git a/keyboards/splitkb/kyria/keymaps/gotham/rules.mk b/keyboards/splitkb/kyria/keymaps/gotham/rules.mk
index eff9494ff1..00b2868c1f 100644
--- a/keyboards/splitkb/kyria/keymaps/gotham/rules.mk
+++ b/keyboards/splitkb/kyria/keymaps/gotham/rules.mk
@@ -14,9 +14,9 @@ ifeq ($(strip $(OLED_ENABLE)), yes)
endif
ifeq ($(strip $(THUMBSTICK_ENABLE)), yes)
+ ANALOG_DRIVER_REQUIRED = yes
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = custom
OPT_DEFS += -DTHUMBSTICK_ENABLE
- SRC += analog.c
SRC += thumbstick.c
endif
diff --git a/keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/config.h b/keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index ce3b5561e8..0000000000
--- a/keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,36 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#if defined MIRYOKU_MAPPING_EXTENDED_THUMBS
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- XXX, XXX, K32, K33, K34, K35, K36, K37, XXX, XXX \
-)
-#else
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-XXX, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, XXX, \
-XXX, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, XXX, \
-XXX, K20, K21, K22, K23, K24, XXX, XXX, XXX, XXX, K25, K26, K27, K28, K29, XXX, \
- XXX, K32, K33, K34, XXX, XXX, K35, K36, K37, XXX \
-)
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/splitkb/kyria/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/splitkb/kyria/keymaps/muppetjones/.clang-format b/keyboards/splitkb/kyria/keymaps/muppetjones/.clang-format
deleted file mode 100644
index df3dbd17b4..0000000000
--- a/keyboards/splitkb/kyria/keymaps/muppetjones/.clang-format
+++ /dev/null
@@ -1,26 +0,0 @@
----
-BasedOnStyle: Google
-AlignAfterOpenBracket: Align
-AlignConsecutiveAssignments: 'true'
-AlignConsecutiveDeclarations: 'true'
-AlignOperands: 'true'
-AllowAllParametersOfDeclarationOnNextLine: 'false'
-AlwaysBreakAfterDefinitionReturnType: None
-AlwaysBreakAfterReturnType: None
-AlwaysBreakBeforeMultilineStrings: 'false'
-BinPackArguments: 'true'
-BinPackParameters: 'true'
-ColumnLimit: '160'
-IndentCaseLabels: 'true'
-IndentPPDirectives: AfterHash
-IndentWidth: '4'
-MaxEmptyLinesToKeep: '1'
-PointerAlignment: Right
-SortIncludes: 'false'
-SpaceBeforeAssignmentOperators: 'true'
-SpaceBeforeParens: ControlStatements
-SpaceInEmptyParentheses: 'false'
-TabWidth: '4'
-UseTab: Never
-
-...
diff --git a/keyboards/splitkb/kyria/keymaps/muppetjones/README.md b/keyboards/splitkb/kyria/keymaps/muppetjones/README.md
deleted file mode 100644
index 20fdd47025..0000000000
--- a/keyboards/splitkb/kyria/keymaps/muppetjones/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Kyria
-
-## Compile
-
-```shell
-make splitkb/kyria/rev1:muppetjones:avrdude-split-left
-```
-
-```shell
-make splitkb/kyria/rev1:muppetjones:avrdude-split-right
-```
diff --git a/keyboards/splitkb/kyria/keymaps/muppetjones/config.h b/keyboards/splitkb/kyria/keymaps/muppetjones/config.h
deleted file mode 100644
index 210beee0ed..0000000000
--- a/keyboards/splitkb/kyria/keymaps/muppetjones/config.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2020 Stephen Bush <muppetjones@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#ifdef OLED_ENABLE
-# define OLED_DISPLAY_128X64
-#endif
-
-// If you are using an Elite C rev3 on the slave side, uncomment the lines below:
-// #define SPLIT_USB_DETECT
-// #define NO_USB_STARTUP_CHECK
-
-// EC11K encoders have a different resolution than other EC11 encoders.
-// When using the default resolution of 4, if you notice your encoder skipping
-// every other tick, lower the resolution to 2.
-#define ENCODER_RESOLUTION 2
-#define ENCODER_DIRECTION_FLIP
-
-// The Leader key allows to flexibly assign macros to key sequences.
-#define LEADER_PER_KEY_TIMING
-#define LEADER_TIMEOUT 350
-
-// Change "hold" time (default is 200 ms)
-// -- used for tap dance and other tap mods
-// -- defined in user namespace
-// #define TAPPING_TERM 200
-
-// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define QUICK_TAP_TERM 0
-
-// Reduce firmware size
-// https://thomasbaart.nl/2018/12/01/reducing-firmware-size-in-qmk/
-// also requires EXTRAFLAGS in config.h
-#define NO_ACTION_MACRO
-#define NO_ACTION_FUNCTION
-
-// Allows to use either side as the master. Look at the documentation for info:
-// https://docs.qmk.fm/#/config_options?id=setting-handedness
-#define EE_HANDS
-
-// Allows media codes to properly register in macros and rotary encoder code
-#define TAP_CODE_DELAY 10
-#define COMBO_TERM 40
diff --git a/keyboards/splitkb/kyria/keymaps/muppetjones/keymap.c b/keyboards/splitkb/kyria/keymaps/muppetjones/keymap.c
deleted file mode 100644
index c3e98ec872..0000000000
--- a/keyboards/splitkb/kyria/keymaps/muppetjones/keymap.c
+++ /dev/null
@@ -1,276 +0,0 @@
-/* Copyright 2020 Stephen J. Bush
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "muppetjones.h"
-#include "rgblight.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-/* Layers from muppetjones.h
- _CLMK_DH = 0,
- _MOUSE,
- _LOWER,
- _RAISE,
- _NAV,
- _ADJUST,
- */
-
-/*
- * Custom Keys
- */
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_standard(uint8_t index, bool clockwise);
-#endif
-
-/*
- * LAYERS
- */
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
-/*
- * Base Layer: Colemak DH
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * |CAPSWORD| Q | W | F | P | B | | J | L | U | Y | ; : | | \ |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * |ESC/HYPR| A | R | S | T | G | | M | N | E | I | O | ' " |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | LShift | Z | X | C | D | V |LShift|Leader| | Del | Tab | K | H | , < | . > | / ? | Sft/Ent|
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | MUTE | Del | Enter| Space| Enter| | Bspc | Space| Hyper| Tab | AltGr|
- * | | | Alt | Lower| Raise| | | Nav | Esc | Raise| |
- * `----------------------------------' `----------------------------------'
- */
-[_CLMK_DH] = LAYOUT_wrapper(
- CW_TOGG, __COLEMAK_MOD_DH_L1________________________, __COLEMAK_MOD_DH_R1_W_QUOT_________________, KC_BSLS,
- HY_ESC, __COLEMAK_MOD_DH_L2_W_GACS_________________, __COLEMAK_MOD_DH_R2_W_SCAG_________________, KC_QUOT,
- TD_LAYR, __COLEMAK_MOD_DH_L3________________________, KC_LSFT, QK_LEAD, KC_DEL, KC_TAB, __COLEMAK_MOD_DH_R3________________________, SC_SENT,
- KC_MUTE, KC_DEL, HY_ESC, LOW_BSP, RAI_ENT, KC_BSPC, NAV_SPC, HY_ESC, RAI_TAB, KC_RALT
-),
-[_QWERTY] = LAYOUT_wrapper(
- _______, __QWERTY_L1________________________________, __QWERTY_R1________________________________, _______,
- _______, __QWERTY_L2________________________________, __QWERTY_R2________________________________, _______,
- _______, __QWERTY_L3________________________________, _______, _______, _______, _______, __QWERTY_R3________________________________, _______,
- __BLANK____________________________________, __BLANK____________________________________
-),
-[_MOUSE] = LAYOUT_wrapper(
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __BLANK____________________________________, __BLANK____________________________________, _______,
- _______, __BLANK____________________________________, _______, _______, _______, _______, __BLANK____________________________________, _______,
- KC_BTN1, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN2
-),
-/*
- * Lower Layer: Numpad and some symbols
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | ~ | ` | ( | ) | xxxx | | / ? | 7 & | 8 * | 9 ( | - _ | |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | LGUI | LALT |LCTL [|LSFT ]| _ - | | * | 4 $ | 5 % | 6 ^ | , < | + |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | xxxx | xxxx | { | } | LSFT | | | | | | 0 ) | 1 ! | 2 @ | 3 # | = + | |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | Lower| | | | | Nav | 0 | . | |
- * `----------------------------------' `----------------------------------'
- */
- [_LOWER] = LAYOUT_wrapper(
- _______, __SYMBOLS_L1_______________________________, __NUMPAD_R1________________________________, _______,
- _______, __SYMBOLS_L2_______________________________, __NUMPAD_R2________________________________, KC_COMM,
- _______, __SYMBOLS_L3_______________________________, _______, _______, _______, _______, __NUMPAD_R3________________________________, KC_DOT,
- __BLANK____________________________________, _______, KC_SPC, KC_0, KC_DOT, _______
- ),
-/*
- * Raise Layer: Symbols
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | ! | @ | { | } | | | | | & | € | | | \ |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | # | $ | ( | ) | ` | | _ | - | / | * | % | ' " |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | % | ^ | [ | ] | ~ | | | | | | + | = | , | . | / ? | - _ |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | Lower| | | | | Nav | Raise| | |
- * `----------------------------------' `----------------------------------'
- */
- // [_RAISE] = LAYOUT(
- // _______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, _______, KC_AMPR, _______, _______, _______, KC_BSLS,
- // _______, KC_HASH, KC_DLR, KC_LBRC, KC_RBRC, KC_GRV, KC_UNDS, KC_MINS, KC_SLSH, KC_ASTR, KC_PERC, KC_QUOT,
- // _______, KC_PERC, KC_CIRC, KC_LCBR, KC_RCBR, KC_TILD, _______, _______, _______, _______, KC_PLUS, KC_EQL, KC_COMM, KC_DOT, KC_SLSH, KC_MINS,
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- // ),
- [_RAISE] = LAYOUT_wrapper(
- _______, XXXXXXX, XXXXXXX, KC_GRV, KC_GRV, KC_BSLS, __SYMBOLS_R1_______________________________, _______,
- _______, XXXXXXX, XXXXXXX, KC_UNDS, KC_MINS, KC_TILD, __SYMBOLS_R2_______________________________, _______,
- _______, XXXXXXX, XXXXXXX, KC_PLUS, KC_EQL, KC_GRV, _______, _______, _______, _______, __SYMBOLS_R3_______________________________, _______,
- __BLANK____________________________________, __BLANK____________________________________
- ),
-/*
- * Navigation Layer (w/ symbols on left)
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | | | | | | | | PgUp | Home | Up | End | | ScrlLk |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | GUI | ALT | CTL | SFT | | | PgDn | Left | Down | Up | Right| CapsLk |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | | | | | | | | | | | | | | | | |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | Lower| | | | | Nav | Raise| | |
- * `----------------------------------' `----------------------------------'
- */
- [_NAV] = LAYOUT_wrapper(
- _______, __VIM_L1___________________________________, __NAV_R1___________________________________, KC_SCRL,
- _______, __BLANK_W_GACS_____________________________, __NAV_R2___________________________________, KC_CAPS,
- _______, __BLANK____________________________________, _______, _______, _______, _______, __NAV_R3___________________________________, _______,
- __BLANK____________________________________, __BLANK____________________________________
- ),
- /*
- * Adjust Layer: Function keys, RGB
- *
- * ,-------------------------------------------. ,-------------------------------------------.
- * | Boot | Boot |Debug | | | | | | F1 | F2 | F3 | F4 | |
- * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- * | | TOG | SAI | HUI | VAI | MOD | | | F5 | F6 | F7 | F8 | |
- * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- * | | | SAD | HUD | VAD | RMOD | | | | | | | F9 | F10 | F11 | F12 | |
- * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- * | | | | | | | | | | | |
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- */
- [_ADJUST] = LAYOUT_wrapper(
- QK_BOOT, __ADJUST_L1________________________________, __MEDIA_R1_________________________________, _______,
- _______, __ADJUST_L2________________________________, __MEDIA_R2_________________________________, _______,
- _______, __ADJUST_L3________________________________, _______, _______, _______, _______, __MEDIA_R3_________________________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
- // /*
- // * Layer template
- // *
- // * ,-------------------------------------------. ,-------------------------------------------.
- // * | | | | | | | | | | | | | |
- // * |--------+------+------+------+------+------| |------+------+------+------+------+--------|
- // * | | | | | | | | | | | | | |
- // * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------|
- // * | | | | | | | | | | | | | | | | | |
- // * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------'
- // * | | | | | | | | | | | |
- // * | | | | | | | | | | | |
- // * `----------------------------------' `----------------------------------'
- // */
- // [_LAYERINDEX] = LAYOUT(
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- // ),
- // clang-format on
-};
-
-/*
- *
- */
-
-void keyboard_post_init_user(void) {
- // Call the keymap level matrix init.
-
-#ifdef RGBLIGHT_ENABLE
- set_rgb_home();
-#endif
-}
-
-layer_state_t layer_state_set_user(layer_state_t state) {
-#ifdef RGBLIGHT_ENABLE
- set_rgb_by_layer(state);
-#endif
- return state;
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t* record) {
- // Regular user keycode case statement
- switch (keycode) {
- default:
- return true;
- }
- return true;
-}
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_user(uint8_t index, bool clockwise) {
-# ifdef POINTING_DEVICE_ENABLE
- if (IS_LAYER_ON(_MOUSE))
- return encoder_update_mouse(index, clockwise);
- else
-# endif
- return encoder_update_standard(index, clockwise);
-}
-
-bool encoder_update_standard(uint8_t index, bool clockwise) {
- if (index == 0) {
- // Volume control
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else if (index == 1) {
- // Page up/Page down
-# ifdef MOUSEKEY_ENABLE
- if (clockwise) {
- tap_code(KC_WH_D);
- } else {
- tap_code(KC_WH_U);
- }
-# else
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
-# endif
- }
- return true;
-}
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-void set_layer_hsv(layer_state_t state, HSV* layer_color) {
- uint16_t h = layer_color->h, s = layer_color->s, v = layer_color->v;
- switch (get_highest_layer(state)) {
- case _RAISE:
- h += 3 * RGBLIGHT_HUE_STEP;
- break;
- case _LOWER:
- h += -3 * RGBLIGHT_HUE_STEP;
- break;
- case _NAV:
- h += 2 * RGBLIGHT_HUE_STEP;
- break;
- case _MOUSE:
- h += -8 * RGBLIGHT_HUE_STEP;
- break;
- default:
- break;
- }
- layer_color->h = h % 255;
- layer_color->s = s;
- layer_color->v = v % 255;
- return;
-}
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/muppetjones/rules.mk b/keyboards/splitkb/kyria/keymaps/muppetjones/rules.mk
deleted file mode 100644
index b7e46ecfd2..0000000000
--- a/keyboards/splitkb/kyria/keymaps/muppetjones/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-OLED_ENABLE = no # Enables the use of OLED displays
-ENCODER_ENABLE = yes # Enables the use of one or more encoders
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-LEADER_ENABLE = yes # Enable the Leader Key feature
-MOUSEKEY_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-POINTING_DEVICE_ENABLE = yes
-COMBO_ENABLE = yes
-
-# Reduce firmware size
-# https://thomasbaart.nl/2018/12/01/reducing-firmware-size-in-qmk/
diff --git a/keyboards/splitkb/kyria/keymaps/ninjonas/README.md b/keyboards/splitkb/kyria/keymaps/ninjonas/README.md
deleted file mode 100644
index 08d2f4e198..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ninjonas/README.md
+++ /dev/null
@@ -1,113 +0,0 @@
-# ninjonas Keymap for [Kyria](https://github.com/splitkb/kyria)
-
-## Keymap
-This keymap is designed based off my typing habits and is subject to change. Information about custom user macros and tap dances can be found [here](../../../../users/ninjonas).
-
-More information about the Kyria keyboard can be found [here](https://blog.splitkb.com/blog/introducing-the-kyria)
-
-### QWERTY
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// Tab, Q, W, E, R, T, Y, U, I, O, P, \
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// ESC, A, S, D, F, G, H, J, K, L, ;, '
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// LShift, Z, X, C, V, B, ALT, NUMLK, N, M, ,, ., /, =
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-// ALT, Cmd, Ctrl, Space, [, ], Enter, BackSP, Del, MUTE
-// `----------------------------------------' `----------------------------------------'
-```
-
-### DVORAK
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// Tab, ', ,, ., P, Y, F, G, C, R, L, \
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// ESC, A, O, E, U, I, D, H, T, N, S, /
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// LShift, ;, Q, J, K, X, ALT, NUMLK, B, M, W, V, Z, =
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-// ALT, Cmd, Ctrl, Space, [, ], Enter, BackSP, Del, MUTE
-// `----------------------------------------' `----------------------------------------'
-```
-
-### COLEMAK
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// Tab, Q, W, F, P, G, J, L, U, Y, ;, \
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// ESC, A, R, S, T, D, H, N, E, I, O, '
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// LShift, Z, X, C, V, B, ALT, NUMLK, K, M, ,, ., /, =
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-// ALT, Cmd, Ctrl, Space, [, ], Enter, BackSP, Del, MUTE
-// `----------------------------------------' `----------------------------------------'
-```
-
-### LOWER
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// , , KC_BRIU, Play, Mute, K_CSCN, PgUp, Home, Up, End, , K_MDSH
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// , , KC_BRID, Next, VolUp, , PgDn, Left, Down, Right, K_LOCK,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// , , , Prev, VolDn, [, ], , , M_CODE, M_XXX1, M_PYNV,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-//
-// `----------------------------------------' `----------------------------------------'
-```
-
-### RAISE
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// `, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// ~, !, @, #, $, %, ^, &, *, (, ), _
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// F11, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F12
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-//
-// `----------------------------------------' `----------------------------------------'
-```
-
-### ADJUST
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// M_MAKE, EE_CLR, , , , , RGB_TOG, , , COLEMAK, DVORAK, QWERTY,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// M_VRSN, M_MALL, , RGB_SAI, RGB_HUI,RGB_VAI,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// M_FLSH, , , RGB_SAD, RGB_HUD,RGB_VAD, RGB_M_P, RGB_M_B,RGB_M_SW, , , ,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-//
-// `----------------------------------------' `----------------------------------------'
-
-```
-
-### NUMPAD
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// , , , , , , , 7, 8, 9, +, /,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// , , , , , , , 4, 5, 6, -, *,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// , , , , , , , , , , 0, 1, 2, 3, ., :,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-//
-// `----------------------------------------' `----------------------------------------'
-```
-
-<!--
-### TEMPLATE
-```c
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
-// XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
-// XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
-// XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
-// XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX
-// `----------------------------------------' `----------------------------------------'
-```
---> \ No newline at end of file
diff --git a/keyboards/splitkb/kyria/keymaps/ninjonas/config.h b/keyboards/splitkb/kyria/keymaps/ninjonas/config.h
deleted file mode 100644
index 11525a577a..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ninjonas/config.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2020 ninjonas
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define TAPPING_TERM 200
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X64
- #define OLED_TIMEOUT 15000
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-# define RGBLIGHT_SLEEP
-# define RGBLIGHT_LIMIT_VAL 200
-# define RGBLIGHT_HUE_STEP 8
-# define RGBLIGHT_SAT_STEP 8
-# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_SPLIT
-#endif
-
-// If you are using an Elite C rev3 on the slave side, uncomment the lines below:
-#define SPLIT_USB_DETECT
-#define SPLIT_USB_TIMEOUT 1000
diff --git a/keyboards/splitkb/kyria/keymaps/ninjonas/keymap.c b/keyboards/splitkb/kyria/keymaps/ninjonas/keymap.c
deleted file mode 100644
index ae4b3b7ba9..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ninjonas/keymap.c
+++ /dev/null
@@ -1,118 +0,0 @@
-/* Copyright 2020 ninjonas
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "ninjonas.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QWERTY] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _____________________QWERTY_L1______________________, _____________________QWERTY_R1______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _____________________QWERTY_L2______________________, _____________________QWERTY_R2______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _____________________QWERTY_L3______________________,XXXXXXX,KC_LALT, T_CPAP,XXXXXXX,_____________________QWERTY_R3______________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _____________MOD_LEFT_____________,T_LBRC, T_RBRC,________MOD_RIGHT________,KC_MUTE
-// `----------------------------------------' `----------------------------------------'
- ),
-
- [_DVORAK] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _____________________DVORAK_L1______________________, _____________________DVORAK_R1______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _____________________DVORAK_L2______________________, _____________________DVORAK_R2______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _____________________DVORAK_L3______________________,XXXXXXX,KC_LALT, T_CPAP,XXXXXXX,_____________________DVORAK_R3______________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _____________MOD_LEFT_____________,T_LBRC, T_RBRC,________MOD_RIGHT________,KC_MUTE
-// `----------------------------------------' `----------------------------------------'
- ),
-
- [_COLEMAK] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _____________________COLEMAK_L1_____________________, _____________________COLEMAK_R1_____________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _____________________COLEMAK_L2_____________________, _____________________COLEMAK_R2_____________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _____________________COLEMAK_L3_____________________,XXXXXXX,KC_LALT, T_CPAP,XXXXXXX,_____________________COLEMAK_R3_____________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _____________MOD_LEFT_____________,T_LBRC, T_RBRC,________MOD_RIGHT________,KC_MUTE
-// `----------------------------------------' `----------------------------------------'
- ),
-
- [_LOWER] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _____________________LOWER_L1_______________________, _____________________LOWER_R1_______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _____________________LOWER_L2_______________________, _____________________LOWER_R2_______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _____________________LOWER_L3_______________________,_______,_______, _______,_______,_____________________LOWER_R3_______________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _______,_______,_______,_______,_______, _______,_______,_______,_______,_______
-// `----------------------------------------' `----------------------------------------'
- ),
-
- [_RAISE] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _____________________NUM_LEFT_______________________, _____________________NUM_RIGHT______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _____________________SYM_LEFT_______________________, _____________________SYM_RIGHT______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _____________________FUNC_LEFT______________________,_______,_______, K_CPRF,_______,_____________________FUNC_RIGHT_____________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _______,_______,_______,_______,_______, _______,_______,_______,_______,_______
-// `----------------------------------------' `----------------------------------------'
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _____________________ADJUST_L1______________________, _____________________ADJUST_R1______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _____________________ADJUST_L2______________________, _____________________ADJUST_R2______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _____________________ADJUST_L3______________________,_______,_______, _______,_______,_____________________ADJUST_R3______________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _______,_______,_______,_______,_______, _______,_______,_______,_______,_______
-// `----------------------------------------' `----------------------------------------'
- ),
-
- [_NUMPAD] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- _______, _______, _______, _______, _______,_______, _____________________NUMPAD_1_______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- _______, _______, _______, _______, _______,_______, _____________________NUMPAD_2_______________________,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- _______, _______, _______, _______,_______,_______,_______,_______, _______,_______,_____________________NUMPAD_3_______________________,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- _______,_______,_______,_______,_______, _______,_______,_______,_______,_______
-// `----------------------------------------' `----------------------------------------'
- ),
-
-/*
- [_TEMPLATE] = LAYOUT_wrapper(
-// ,------—————————-------------------------------------. ,--------—————————-----------------------------------.
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-// |--------+-----——-+——------+-——-----+——------+——-----| |------—+——------+——------+——------+——------+--------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-// |--------+-----——-+——------+-——-----+——------+——-----+———-----------. ,——————————————+------—+——------+——------+——------+——------+--------|
- XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
-// `--------------------------+--------+--------+-------+-------+------| |------+-------+-------+--------+--------+--------+--------+--------'
- XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX
-// `----------------------------------------' `----------------------------------------'
- ),
-*/
-}; \ No newline at end of file
diff --git a/keyboards/splitkb/kyria/keymaps/ninjonas/oled.c b/keyboards/splitkb/kyria/keymaps/ninjonas/oled.c
deleted file mode 100644
index d0f2a1b6cd..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ninjonas/oled.c
+++ /dev/null
@@ -1,210 +0,0 @@
-/* Copyright 2020 ninjonas
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "ninjonas.h"
-
-#ifdef OLED_ENABLE
-oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; }
-
-static void render_logo(void) {
- static const char PROGMEM logo[] = {
- // Converter: https://javl.github.io/image2cpp/
- // Image Dimensions: 128x64
- // Code Output Format: Plain Bytes
- // Draw Mode: Vertical, 1 bit per pixel
-0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0xe0,
-0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0xe0, 0xe0, 0xe0,
-0xe0, 0x00, 0x60, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00,
-0xc0, 0xe0, 0xe0, 0xe0, 0x20, 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0,
-0xe0, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00,
-0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0xe0, 0xe0, 0xfc, 0xfe,
-0xfe, 0xfe, 0xee, 0xee, 0x0e, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80,
-0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00,
-0x00, 0x00, 0x79, 0xfd, 0xfd, 0xfd, 0xec, 0xee, 0x76, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00,
-0x07, 0x3f, 0xff, 0xfc, 0xf8, 0xff, 0x7f, 0x07, 0x0f, 0x7f, 0xff, 0xf8, 0xfc, 0xff, 0x3f, 0x07,
-0x00, 0x00, 0x00, 0x03, 0x1f, 0xff, 0xfe, 0xf0, 0xff, 0x7f, 0x0f, 0x07, 0x3f, 0xff, 0xfc, 0xf8,
-0xff, 0x7f, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x0f, 0x3f, 0xff, 0xfe, 0xf8, 0xff, 0xff, 0x1f, 0x03,
-0x00, 0x00, 0x1f, 0x7f, 0x7f, 0xff, 0xf6, 0xe6, 0xe6, 0xf7, 0xf7, 0x77, 0x37, 0x17, 0x00, 0x30,
-0x79, 0xfd, 0xfd, 0xfd, 0xee, 0xee, 0x76, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff,
-0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0x7f, 0x7f, 0xff, 0xf1, 0xe0, 0xe0, 0xff, 0xff, 0x7f, 0x3f,
-0x0e, 0x00, 0x0e, 0x3f, 0x7f, 0xff, 0xff, 0xe0, 0xe0, 0xe1, 0xff, 0x7f, 0x7f, 0x3f, 0x04, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
-0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x0e, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x0c, 0x3c, 0xfc, 0xfc, 0xfc, 0xc0, 0x00, 0xe0, 0xfc, 0xfc, 0x7c, 0x1c, 0x00, 0xf0, 0xf8,
-0xf8, 0xfc, 0xdc, 0xdc, 0xdc, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0x00, 0x00, 0x30, 0xb8, 0xbc, 0xbc,
-0xdc, 0xdc, 0xdc, 0xfc, 0xfc, 0xf8, 0xf0, 0x00, 0x1c, 0x1c, 0xff, 0xff, 0xff, 0xff, 0x1d, 0x1d,
-0x00, 0xf0, 0xf8, 0xf8, 0xfc, 0x3c, 0x1c, 0x1c, 0xfc, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0xe0, 0xf0,
-0xf8, 0xfc, 0x3c, 0x1c, 0x1c, 0x3c, 0xfc, 0xf8, 0xf8, 0xe0, 0x00, 0x00, 0x20, 0xb8, 0xbc, 0xbc,
-0xbc, 0xdc, 0xdc, 0xfc, 0xfc, 0xfc, 0xf8, 0xe0, 0x00, 0x0c, 0x7c, 0xfc, 0xfc, 0xc0, 0x00, 0xe0,
-0xfc, 0xfc, 0xfc, 0xfc, 0xf0, 0x80, 0x00, 0xf8, 0xfc, 0xfc, 0x3c, 0x04, 0x0c, 0x7c, 0xfc, 0xfc,
-0xf0, 0x00, 0xc0, 0xfc, 0xfc, 0x7c, 0xfc, 0xf8, 0xc0, 0x00, 0xf0, 0xfc, 0xfc, 0x7c, 0x0c, 0x00,
-0x00, 0x00, 0xc0, 0xc1, 0xc7, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x07, 0x0f,
-0x1f, 0x1f, 0x1e, 0x1c, 0x1c, 0x1e, 0x1e, 0x0e, 0x06, 0x00, 0x00, 0x06, 0x0f, 0x1f, 0x1f, 0x1f,
-0x1d, 0x1d, 0x0e, 0x1f, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x00, 0x00,
-0x00, 0x07, 0x0f, 0x0f, 0x1f, 0x1e, 0x1c, 0x1c, 0x1f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x03, 0x07,
-0x0f, 0x1f, 0x1e, 0x1c, 0x1c, 0x1e, 0x1f, 0x0f, 0x0f, 0x03, 0x00, 0x00, 0x0f, 0x1f, 0x1f, 0x1f,
-0x1d, 0x1d, 0x0c, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x1f, 0x1e, 0x1f,
-0x0f, 0x01, 0x00, 0x07, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f,
-0x1f, 0x1e, 0x1f, 0x1f, 0x03, 0x00, 0x03, 0x1f, 0x1f, 0x1e, 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00,
-0x00, 0x80, 0xc1, 0xf1, 0xf9, 0xf9, 0xf9, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80,
-0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00,
-0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
-0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80,
-0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,
-0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0x03, 0x7c, 0xfe, 0xff, 0xff, 0xc7, 0x83, 0x83,
-0xc7, 0xff, 0xff, 0xff, 0x7c, 0x00, 0x00, 0x7c, 0xff, 0xff, 0xff, 0xc7, 0x83, 0x83, 0xc7, 0xff,
-0xff, 0xfe, 0x7c, 0x00, 0xc0, 0xe6, 0xf7, 0xf7, 0xf7, 0xbb, 0xbb, 0xdb, 0xff, 0xff, 0xff, 0xfe,
-0x00, 0x00, 0x03, 0x1f, 0xff, 0xff, 0xf0, 0xe0, 0xfe, 0xff, 0x1f, 0x3f, 0xff, 0xfe, 0xe0, 0xf0,
-0xff, 0xff, 0x1f, 0x03, 0x00, 0x01, 0x0f, 0x7f, 0xff, 0xf8, 0xc0, 0xfc, 0xff, 0x3f, 0x1f, 0xff,
-0xfe, 0xf0, 0xe0, 0xff, 0xff, 0x3f, 0x07, 0x00, 0x01, 0x07, 0x3f, 0xff, 0xff, 0xf8, 0xe0, 0xfc,
-0xff, 0x7f, 0x0f, 0x03, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xdb, 0x9b, 0x9b, 0xdf, 0xdf, 0xdf, 0xde,
-0x1c, 0x00, 0xc0, 0xe6, 0xf7, 0xf7, 0xf7, 0xbb, 0xbb, 0xdb, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00,
-0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03,
-0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
-0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x03, 0x03, 0x03, 0x03,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03,
-0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00,
-0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x38, 0x3f, 0x3f, 0x1f, 0x0f,
-0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00,
-0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00
- };
- oled_write_raw_P(logo, sizeof(logo));
-}
-
-static void render_qmk_logo(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
- 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
- 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};
-
- oled_write_P(qmk_logo, false);
-}
-
-void oled_white_space(void){
- oled_write_P(PSTR(" "), false);
-}
-
-void oled_slash_separator(void){
- oled_write_P(PSTR(" / "), false);
-}
-
-void render_layout_state(void) {
- oled_write_P(PSTR("Layout: "), false);
- switch (get_highest_layer(default_layer_state)) {
- case _COLEMAK:
- oled_write_P(PSTR("Colemak"), false);
- break;
- case _DVORAK:
- oled_write_P(PSTR("Dvorak"), false);
- break;
- case _QWERTY:
- oled_write_P(PSTR("Qwerty"), false);
- break;
- default:
- oled_write_ln_P(PSTR("Undefined"), false);
- }
-}
-#ifdef ENCODER_ENABLE
-static void render_encoder_state(void) {
- oled_write_P(PSTR("\nEnc: "), false);
- bool lower = layer_state_is(_LOWER) & !layer_state_is(_ADJUST);
- bool raise = layer_state_is(_RAISE) & !layer_state_is(_ADJUST);
- bool adjust = layer_state_is(_ADJUST);
-
- if(lower){
- oled_write_P(PSTR("APPSW"), left_encoder_rotated);
- oled_slash_separator();
- oled_write_P(PSTR("UPDN"), right_encoder_rotated);
- } else if(raise){
- oled_write_P(PSTR("PGUD"), left_encoder_rotated);
- oled_slash_separator();
- oled_write_P(PSTR("TABSW"), right_encoder_rotated);
- } else if(adjust){
- oled_write_P(PSTR("RHUE"), left_encoder_rotated);
- oled_slash_separator();
- oled_write_P(PSTR("RBRI"), right_encoder_rotated);
- } else {
- oled_write_P(PSTR("BRI"), left_encoder_rotated);
- oled_slash_separator();
- oled_write_P(PSTR("VOL"), right_encoder_rotated);
- }
-
- if (timer_elapsed(encoder_rotated_timer) > 200) {
- left_encoder_rotated = false;
- right_encoder_rotated = false;
- }
-}
-#endif
-
-static void render_layer_state(void) {
- oled_write_P(PSTR("\nLayer:"), false);
- bool lower = layer_state_is(_LOWER) & !layer_state_is(_ADJUST);
- bool raise = layer_state_is(_RAISE) & !layer_state_is(_ADJUST);
- bool adjust = layer_state_is(_ADJUST);
- bool numpad = layer_state_is(_NUMPAD);
-
- if(lower){
- oled_write_P(PSTR(" Lower "), true);
- } else if(raise){
- oled_write_P(PSTR(" Raise "), true);
- } else if(adjust){
- oled_write_P(PSTR(" Adjust "), true);
- } else if(numpad) {
- oled_write_P(PSTR(" Numpad "), true);
- } else {
- oled_write_P(PSTR(" Default"), false);
- }
-}
-
-void render_mod_state(uint8_t modifiers) {
- oled_write_P(PSTR("\nMods: "), false);
- oled_write_P(PSTR("SHF"), (modifiers & MOD_MASK_SHIFT));
- oled_white_space();
- oled_write_P(PSTR("CTL"), (modifiers & MOD_MASK_CTRL));
- oled_white_space();
- oled_write_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT));
- oled_white_space();
- oled_write_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI));
-}
-
-static void render_status(void) {
- render_qmk_logo();
- render_layout_state();
- #ifdef ENCODER_ENABLE
- render_encoder_state();
- #endif
- render_layer_state();
- render_mod_state(get_mods()|get_oneshot_mods());
-}
-
-bool oled_task_user(void) {
- if (is_keyboard_master()) {
- render_status();
- } else {
- render_logo();
- oled_scroll_left();
- }
- return false;
-}
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/ninjonas/rules.mk b/keyboards/splitkb/kyria/keymaps/ninjonas/rules.mk
deleted file mode 100644
index 9d1a8a631e..0000000000
--- a/keyboards/splitkb/kyria/keymaps/ninjonas/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes # Enables the use of one or more encoders
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-LTO_ENABLE = yes
-
-SRC += oled.c
diff --git a/keyboards/splitkb/kyria/keymaps/rmw/config.h b/keyboards/splitkb/kyria/keymaps/rmw/config.h
deleted file mode 100644
index bb085106c6..0000000000
--- a/keyboards/splitkb/kyria/keymaps/rmw/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright 2019 Thomas Baart <thomas@splitkb.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define MACOSX
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X64
-#endif
-
-#ifdef RGBLIGHT_ENABLE
-#define RGBLIGHT_EFFECT_BREATHING
-#define RGBLIGHT_EFFECT_RAINBOW_MOOD
-#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#define RGBLIGHT_EFFECT_SNAKE
-#define RGBLIGHT_EFFECT_KNIGHT
-#define RGBLIGHT_EFFECT_CHRISTMAS
-#define RGBLIGHT_EFFECT_STATIC_GRADIENT
-#define RGBLIGHT_EFFECT_RGB_TEST
-#define RGBLIGHT_EFFECT_ALTERNATING
-#define RGBLIGHT_EFFECT_TWINKLE
- #define RGBLIGHT_HUE_STEP 8
- #define RGBLIGHT_SAT_STEP 8
- #define RGBLIGHT_VAL_STEP 8
-#endif
-
-// If you are using an Elite C rev3 on the follower side, uncomment the lines below:
-// #define SPLIT_USB_DETECT
-// #define NO_USB_STARTUP_CHECK
diff --git a/keyboards/splitkb/kyria/keymaps/rmw/keymap.c b/keyboards/splitkb/kyria/keymaps/rmw/keymap.c
deleted file mode 100644
index 59b18de418..0000000000
--- a/keyboards/splitkb/kyria/keymaps/rmw/keymap.c
+++ /dev/null
@@ -1,160 +0,0 @@
-/* Copyright 2019 Thomas Baart <thomas@splitkb.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "rmw.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [QWERTY] = LAYOUT_split_3x6_5(
- KC_TAB , KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- OSL(EDIT), KC_A, LT(NUMPAD,KC_S), KC_D, LT(FSYM,KC_F), KC_G, KC_H, LT(JSYM,KC_J), KC_K, KC_L, LT(EDIT,KC_SCLN), KC_QUOT,
- TD(FRBK2) , KC_Z, KC_X, KC_C, KC_V, KC_B, TO(EDIT), KC_ESCAPE, KC_DEL, TO(NUMPAD), KC_N, KC_M, KC_COMM, KC_DOT, LT(MEDIA,KC_SLSH), KC_MS_BTN1,
- TO(ADJUST), TD(SGCA), TD(AGC), KC_BSPC, TD(SHNTC), SFTENT, KC_SPC, TD(GCA), TD(CTLALL), KC_CAPS
- ),
-
- [MINIMAK4] = LAYOUT_split_3x6_5(
- KC_TAB , KC_Q, KC_W, KC_D, KC_R, KC_K, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_PIPE,
- OSL(EDIT), KC_A, LT(NUMPAD,KC_S), KC_T, LT(FSYM,KC_F), KC_G, KC_H, LT(JSYM,KC_J), KC_E, KC_L, LT(EDIT,KC_SCLN), KC_QUOT,
- OSM(MOD_LSFT) , KC_Z, KC_X, KC_C, KC_V, KC_B, TO(EDIT), KC_ESCAPE, KC_DEL, TO(NUMPAD), KC_N, KC_M, KC_COMM, KC_DOT, LT(MEDIA,KC_SLSH), KC_MINS,
- _______, TO(ADJUST), TD(SGCA), KC_BSPC, TD(SHNTC), SFTENT, KC_SPC, TD(GCA), TD(CTLALL), _______
- ),
-
- [NUMPAD] = LAYOUT_split_3x6_5(
- _______, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_KP_MINUS, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, KC_KP_PLUS , _______,
- _______, _______, _______, _______, _______, _______, TO(QWERTY), _______, _______, TO(EDIT), _______, KC_1, KC_2, KC_3, KC_KP_SLASH, LCTL(KC_RIGHT),
- _______, _______, _______, _______ , _______, _______, _______, KC_0, KC_DOT, _______
- ),
-
- [EDIT] = LAYOUT_split_3x6_5(
- _______, TASK_MAN, _______, SELW_LEFT, SELW_RIGHT, _______, NEW_TAB , KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, _______,
- _______, _______ , LGUI(KC_GRV), MVW_LEFT, MVW_RIGHT , _______, R_HOME , KC_LEFT, KC_DOWN, KC_RIGHT, R_END, _______,
- LCTL(KC_LEFT), R_UNDO, R_CUT , R_COPY , R_PASTE, R_REDO , TO(NUMPAD), FORM_GET, FORM_PUT, TO(QWERTY), SEL_HOME, S(KC_LEFT), S(KC_DOWN), S(KC_RIGHT), SEL_END, _______,
- _______, _______, _______, DEL_WRD, _______, _______, _______, _______, _______, _______
- ),
-
- [ADJUST] = LAYOUT_split_3x6_5(
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- TO(QWERTY), TO(EDIT), TO(NUMPAD), TO(JSYM), TO(FSYM), TO(MEDIA), _______, _______, _______, _______, _______, _______,
- DF(MINIMAK4), DF(QWERTY), RGB_SAD, RGB_HUD, RGB_VAD, RGB_RMOD,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [FSYM] = LAYOUT_split_3x6_5(
- _______, _______, _______, _______, _______, _______, KC_CIRC, KC_AMPR , KC_ASTR, KC_GRV , _______, _______,
- _______, _______, KC_TILD, KC_EXLM, _______, _______, KC_EQUAL, KC_MINUS, KC_UNDS, KC_PIPE, KC_COLON, KC_DQT,
- LCTL(KC_RIGHT), _______, TO(QWERTY), _______, _______, _______, _______, _______, _______, _______, _______, KC_PLUS, KC_BSLS, KC_SLSH, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [JSYM] = LAYOUT_split_3x6_5(
- _______, KC_GRV, KC_AT , KC_LCBR, KC_RCBR, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_HASH, KC_DLR , KC_LPRN, KC_RPRN, KC_LEFT, _______, _______, KC_QUES, KC_SLSH, KC_COLON, _______,
- _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, _______, _______, _______, _______, _______, _______, _______, _______, TO(QWERTY), _______, LCTL(KC_LEFT),
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [MEDIA] = LAYOUT_split_3x6_5(
- _______, KC_WH_U, KC_WH_L, KC_MS_UP, KC_WH_R, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_WH_D, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_ACL0, KC_ACL1, KC_ACL2, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______,
- _______, _______, _______, _______, _______, KC_MS_BTN1, KC_MEDIA_PLAY_PAUSE, KC_MRWD, KC_MFFD, _______
- )
-};
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case FORM_GET:
- if (record->event.pressed) {
- tap_code(KC_BTN1);
- tap_code16(G(KC_A));
- tap_code16(G(KC_C));
- }
- return false;
- case FORM_PUT:
- if (record->event.pressed) {
- tap_code16(KC_MS_BTN1);
- tap_code16(G(KC_A));
- tap_code16(G(KC_V));
- }
- return false;
- }
- return true;
-}
-
-#ifdef ENCODER_ENABLE
-bool encoder_update_keymap(uint8_t index, bool clockwise) {
- if (index == 0) {
- switch (get_highest_layer(layer_state)) {
- case EDIT:
- enc_move_words(clockwise);
- break;
- case QWERTY:
- enc_move_desktop(clockwise);
- default:
- enc_history_scrubbing(clockwise);
- break;
- }
- } else if (index == 1) {
- switch (get_highest_layer(layer_state)) {
- case QWERTY:
- enc_scrolling(clockwise);
- break;
- case FSYM:
- enc_zoom(clockwise);
- break;
- default:
- enc_volume_knob(clockwise);
- break;
- }
- }
- return true;
-}
-#endif
-
-#ifdef RGBLIGHT_ENABLE // include mods, as well as layers
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case QWERTY:
- rgblight_setrgb (0x00, 0x00, 0x00);
- break;
- case MINIMAK4:
- rgblight_setrgb (0x20, 0x20, 0x20);
- break;
- case NUMPAD:
- rgblight_setrgb (0xFF, 0x00, 0x00);
- break;
- case EDIT:
- rgblight_setrgb (0x00, 0xFF, 0x00);
- break;
- case FSYM:
- rgblight_setrgb (0x7A, 0x7A, 0x00);
- break;
- case JSYM:
- rgblight_setrgb (0x7A, 0x00, 0x7A);
- break;
- case MEDIA:
- rgblight_setrgb (0x00, 0x7A, 0x7A);
- break;
- case ADJUST:
- rgblight_setrgb (0x7A, 0x7A, 0x7A);
- break;
- default:
- rgblight_setrgb (0x00, 0x00, 0x00);
- }
- return state;
-}
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/rmw/readme.md b/keyboards/splitkb/kyria/keymaps/rmw/readme.md
deleted file mode 100644
index c05ca494b7..0000000000
--- a/keyboards/splitkb/kyria/keymaps/rmw/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# RMW Kyria Layout
-
-This is a Kyria edition of the keymap I use on the Ergodox_EZ I use for work. I write reports and code in a variety of languages on that board and the various layers provide plenty of flexibility for navigating, editing text, and writing code and prose. This keymap is mostly Mac-focused in its shortcuts and tapdances.
-
-## The theory of this keymap
-
-The base layer is either QWERTY or MINIMAK4, as desired. Overlaid on that base layer are various layers triggered by one-shots, TOs, and LTs. Tapdances are used to cram lots of mods into few keys and provide freedom to hit combinations with either hand. Mods and layer things are one-shot (where reasonable) because I prefer that.
-
-An EDIT layer provides text navigation, selection, and editing capabilities in home position. The NUMPAD layer offers a numpad and various spreadsheet-useful navigations and operations. Holding S will put the numpad under your right hand in home position. Keys F and J offer various useful symbols (mostly) on the opposite hand when held, including \[\]\(\)\{\} under the left pointer and middle fingers on bottom, middle, and top rows respectively. The MEDIA layer provides media controls (obvs) and some mouse movement and nav, in case I don't feel like reaching for the trackball/trackpad/mouse.
diff --git a/keyboards/splitkb/kyria/keymaps/rmw/rules.mk b/keyboards/splitkb/kyria/keymaps/rmw/rules.mk
deleted file mode 100644
index 1e2e1ad817..0000000000
--- a/keyboards/splitkb/kyria/keymaps/rmw/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-OLED_ENABLE = no # Enables the use of OLED displays
-ENCODER_ENABLE = yes # Enables the use of one or more encoders
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-TAP_DANCE_ENABLE=yes # Enables Tap Dance
diff --git a/keyboards/splitkb/kyria/keymaps/uqs/config.h b/keyboards/splitkb/kyria/keymaps/uqs/config.h
deleted file mode 100644
index 05ba801df4..0000000000
--- a/keyboards/splitkb/kyria/keymaps/uqs/config.h
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2022 Ulrich Spörlein (@uqs)
-// SPDX-License-Identifier: GPL-2.0-or-later
-#pragma once
-
-#ifdef RGBLIGHT_ENABLE
- #define RGBLIGHT_HUE_STEP 8
- #define RGBLIGHT_SAT_STEP 8
- #define RGBLIGHT_VAL_STEP 8
- #define RGBLIGHT_LIMIT_VAL 150
-#endif
-
-#define EE_HANDS
diff --git a/keyboards/splitkb/kyria/keymaps/uqs/keymap.c b/keyboards/splitkb/kyria/keymaps/uqs/keymap.c
deleted file mode 100644
index 398b167e72..0000000000
--- a/keyboards/splitkb/kyria/keymaps/uqs/keymap.c
+++ /dev/null
@@ -1,153 +0,0 @@
-// Copyright 2022 Ulrich Spörlein (@uqs)
-// SPDX-License-Identifier: GPL-2.0-or-later
-// vi:et sw=4 cc=5,15,25,35,45,55,65:
-
-#include "uqs.h"
-
-/*
- * My custom layout macro that allows for easy diff(1) operations between
- * various keyboards. It probably doesn't make sense to you.
- */
-#define LAYOUT_uqs( \
- L00, L01, L02, L03, L04, L05, \
- L12, L13, L14, L15, L16, L17, \
- L24, L25, L26, L27, L28, L29, \
- L40, L41, \
- L42, L43, L44, \
- L30, L31, \
- R06, R07, R08, R09, R10, R11, \
- R18, R19, R20, R21, R22, R23, \
- R34, R35, R36, R37, R38, R39, \
- R48, R49, \
- R45, R46, R47, \
- R32, R33 \
-) \
-LAYOUT_split_3x6_5( \
- L00, L01, L02, L03, L04, L05, R06, R07, R08, R09, R10, R11, \
- L12, L13, L14, L15, L16, L17, R18, R19, R20, R21, R22, R23, \
- L24, L25, L26, L27, L28, L29, L30, L31, R32, R33, R34, R35, R36, R37, R38, R39, \
- L40, L41, L42, L43, L44, R45, R46, R47, R48, R49 \
-)
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [L_QWER] = LAYOUT_uqs(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
- KC_LBRC, KC_RBRC,
- /*thumb*/ LT_EXTD_ESC, KC_SPC, LT_MOUSE_ALT_SHIFT_INS,
- /*aux*/ OSM_GUI, KC_LALT,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_GRV),
- KC_MINS, KC_EQL,
- /*thumb*/ LT_FUNC_SHIFT_INS, KC_ENT, LT_NUM_BSPC,
- /*aux*/ KC_RALT, KC_APP
- ),
-
- [L_WASD] = LAYOUT_uqs(
- KC_T, KC_TAB, KC_Q, KC_W, KC_E, KC_R,
- KC_G, KC_LSFT, KC_A, KC_S, KC_D, KC_F,
- KC_B, KC_GRV, KC_Z, KC_X, KC_C, KC_V,
- KC_LBRC, KC_RBRC,
- /*thumb*/ KC_LCTL, KC_SPC, KC_R,
- /*aux*/ OSM_GUI, KC_LALT,
- KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_GRV),
- KC_MINS, KC_EQL,
- /*thumb*/ DF(L_COLM), KC_ENT, KC_BSPC,
- /*aux*/ KC_RALT, KC_APP
- ),
-
- [L_COLM] = LAYOUT_uqs(
- KC_BTN2, KC_Q, KC_W, KC_F, KC_P, KC_B,
- KC_BTN1, KC_G_A, KC_A_R, KC_S_S, KC_C_T, KC_G,
- KC_BTN3, KC_Z, KC_X, KC_C, KC_D, KC_V,
- MS_WHUP, MS_WHDN,
- /*thumb*/ LT_EXTD_ESC, SFT_T(KC_SPC), LT(L_MOUSE, KC_TAB),
- /*aux*/ OSM_GUI, KC_LALT,
- KC_J, KC_L, KC_U, KC_Y, KC_QUOT, KC_NO,
- KC_M, KC_C_N, KC_S_E, KC_A_I, KC_G_O, KC_NO,
- KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_NO,
- KC_NO, KC_NO,
- /*thumb*/ LT_FUNC_SHIFT_INS, KC_ENT, LT_NUM_BSPC,
- /*aux*/ KC_RALT, KC_APP
- ),
-
- // Updated with inspiration from https://forum.colemak.com/topic/2014-extend-extra-extreme/
- // I like the AltGr trick from https://stevep99.github.io/seniply/ and should probably incorporate some stuff from it.
- [L_EXTD] = LAYOUT_uqs(
- _______, KC_BTN1, KC_SCTAB, KC_PGUP, KC_CTAB, QK_LEAD,
- _______, OSM_GUI, OSM_ALT, OSM_SFT, OSM_CTL, KC_RALT,
- _______, ALT_TAB, MS_WHUP, MS_WHDN, KC_PGDN, INS_HARD,
- _______, _______,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______,
- /* ^^^^ can't be used */
- KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_NO,
- KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DEL, KC_NO,
- WIN_LEFT, WIN_DN, WIN_UP, WIN_RGHT, KC_PSTE, KC_NO, // KC_PSTE works in XTerm to emulate middle-click
- _______, _______,
- /*thumb*/ _______, _______, KC_BSPC,
- /*aux*/ _______, _______
- /* ^^^^ use these */
- ),
-
- // TODO: maybe swap # with ;, that way I can roll :w or :wq which I need
- // often ... probably better to add a combo?
- [L_NUM] = LAYOUT_uqs(
- _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC,
- _______, KC_SCLN, KC_COLN, KC_LCBR, KC_LPRN, KC_LBRC,
- _______, KC_CIRC, KC_AMPR, KC_RCBR, KC_RPRN, KC_RBRC,
- KC_GRV, KC_TILDE,
- /*thumb*/ KC_ESC, KC_SPC, KC_0,
- /*aux*/ _______,_______,
- /* ^^^^ use these */
-
- KC_EQUAL, KC_7, KC_8, KC_9, KC_KP_PLUS,_______,
- KC_KP_ASTERISK,KC_4,KC_5, KC_6, MINS_UNDSCR,_______,
- KC_COMM, KC_1, KC_2, KC_3, KC_KP_SLASH,KC_KP_ENTER, // Enter here, because thumb is occupied
- KC_0, KC_KP_DOT,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______
- /* ^^^^ can't be used */
- ),
-
- [L_FUNC] = LAYOUT_uqs(
- _______, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, DF(L_WASD),
- _______, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, DF(L_QWER),
- _______, KC_NO, KC_NO, KC_NO, KC_NO, DF(L_COLM),
- KC_NO, KC_NO,
- /*thumb*/ KC_NO, KC_NO, KC_NO,
- /*aux*/ _______, _______,
- /* ^^^^ use these */
-
- KC_PSCR, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,
- KC_SCRL, KC_F4, KC_F5, KC_F6, KC_F11, KC_NO,
- KC_PAUS, KC_F1, KC_F2, KC_F3, KC_F12, KC_NO,
- KC_NO, KC_NO,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______
- /* ^^^^ can't be used */
- ),
-
- [L_MOUSE] = LAYOUT_uqs(
- _______, KC_NO, KC_BTN2, KC_BTN3, KC_BTN1, KC_VOLU,
- _______, KC_NO, KC_ACL0, KC_ACL1, KC_ACL2, KC_VOLD,
- _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE,
- KC_NO, KC_NO,
- /*thumb*/ _______, _______, _______,
- /*aux*/ _______, _______,
- /* ^^^^ can't be used */
-
- _______, _______, KC_MS_UP, MS_WHUP, _______, _______,
- MS_WHLEFT,KC_MS_L, KC_MS_D, KC_MS_R, MS_WHRGHT,_______,
- _______, MS_WHDN, KC_BTN3, KC_BTN4, KC_BTN5, _______,
- KC_NO, KC_NO,
- /*thumb*/ KC_NO, KC_BTN1, KC_BTN2,
- /*aux*/ _______, _______
- /* use these ^^^^ */
- ),
-};
diff --git a/keyboards/splitkb/kyria/keymaps/uqs/rules.mk b/keyboards/splitkb/kyria/keymaps/uqs/rules.mk
deleted file mode 100644
index 517f469b6d..0000000000
--- a/keyboards/splitkb/kyria/keymaps/uqs/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-OLED_ENABLE = no
diff --git a/keyboards/splitkb/kyria/keymaps/zigotica/config.h b/keyboards/splitkb/kyria/keymaps/zigotica/config.h
deleted file mode 100644
index 9376550cab..0000000000
--- a/keyboards/splitkb/kyria/keymaps/zigotica/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define MASTER_RIGHT// EE_HANDS MASTER_RIGHT
-
-// these should work better for homerow modifiers
-#define TAPPING_TERM 350
-#define PERMISSIVE_HOLD
-#define QUICK_TAP_TERM 0
-
-#define LEADER_PER_KEY_TIMING
-#define LEADER_TIMEOUT 300
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X64
- #define OLED_TIMEOUT 10000
-#endif
-
-#ifdef ENCODER_ENABLE
- // EC11K encoders have a different resolution than other EC11 encoders.
- // When using the default resolution of 4, if you notice your encoder skipping
- // every other tick, lower the resolution to 2.
- #define ENCODER_RESOLUTION 2
- // Also, flip direction
- #define ENCODER_DIRECTION_FLIP
-#endif
diff --git a/keyboards/splitkb/kyria/keymaps/zigotica/keymap.c b/keyboards/splitkb/kyria/keymaps/zigotica/keymap.c
deleted file mode 100644
index 2671f07463..0000000000
--- a/keyboards/splitkb/kyria/keymaps/zigotica/keymap.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [BASE] = LAYOUT_wrapper(
- _______, _STENAI_L1, _STENAI_R1, _______,
- _______, _STENAI_L2, _STENAI_R2, _______,
- _______, _STENAI_L3, _______, _______, _______, _______, _STENAI_R3, _______,
- _______, _______, _STENAI_LT, _______, _______, _STENAI_RT, _______, _______
- ),
-
- [_NUM] = LAYOUT_wrapper(
- _______, ____NUM_L1, ____NUM_R1, _______,
- _______, ____NUM_L2, ____NUM_R2, _______,
- _______, ____NUM_L3, _______, _______, _______, _______, ____NUM_R3, _______,
- _______, _______, ____NUM_LT, _______, _______, ____NUM_RT, _______, _______
- ),
-
- [_NAV] = LAYOUT_wrapper(
- _______, ____NAV_L1, ____NAV_R1, _______,
- _______, ____NAV_L2, ____NAV_R2, _______,
- _______, ____NAV_L3, _______, _______, _______, _______, ____NAV_R3, _______,
- _______, _______, ____NAV_LT, _______, _______, ____NAV_RT, _______, _______
- ),
-
- [_SYM] = LAYOUT_wrapper(
- _______, ____SYM_L1, ____SYM_R1, _______,
- _______, ____SYM_L2, ____SYM_R2, _______,
- _______, ____SYM_L3, _______, _______, _______, _______, ____SYM_R3, _______,
- _______, _______, ____SYM_LT, _______, _______, ____SYM_RT, _______, _______
- ),
-
- [_FN] = LAYOUT_wrapper(
- _______, ____FN_L1, ____FN_R1, _______,
- _______, ____FN_L2, ____FN_R2, _______,
- _______, ____FN_L3, _______, _______, _______, _______, ____FN_R3, _______,
- _______, _______, ____FN_LT, _______, _______, ____FN_RT, _______, _______
- ),
-};
-
diff --git a/keyboards/splitkb/kyria/keymaps/zigotica/oled.c b/keyboards/splitkb/kyria/keymaps/zigotica/oled.c
deleted file mode 100644
index ba1415deed..0000000000
--- a/keyboards/splitkb/kyria/keymaps/zigotica/oled.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_180;
-}
-
-static void render_kyria_logo(void) {
- static const char PROGMEM kyria_logo[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0,
- 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
- };
- oled_write_raw_P(kyria_logo, sizeof(kyria_logo));
-}
-
-static void render_qmk_logo(void) {
- static const char PROGMEM qmk_logo[] = {
- 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
- 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
- 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};
-
- oled_write_P(qmk_logo, false);
-}
-
-static void render_status(void) {
- // QMK Logo and version information
- render_qmk_logo();
- oled_write_P(PSTR("Kyria v1.2\n\n"), false);
-
- // Host Keyboard Layer Status
- oled_write_P(PSTR("Layer: "), false);
- switch (get_highest_layer(layer_state)) {
- case BASE:
- oled_write_P(PSTR("STENAI\n"), false);
- break;
- case _NUM:
- oled_write_P(PSTR("NUM\n"), false);
- break;
- case _NAV:
- oled_write_P(PSTR("NAV\n"), false);
- break;
- case _SYM:
- oled_write_P(PSTR("SYM\n"), false);
- break;
- case _FN:
- oled_write_P(PSTR("FN\n"), false);
- break;
- default:
- oled_write_P(PSTR("Undef\n"), false);
- }
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false);
-}
-
-bool oled_task_user(void) {
- if (!is_keyboard_left()) {
- render_status(); // Renders the current keyboard state (layer, lock, caps, scroll, etc)
- } else {
- render_kyria_logo();
- }
- return false;
-}
diff --git a/keyboards/splitkb/kyria/keymaps/zigotica/oled.h b/keyboards/splitkb/kyria/keymaps/zigotica/oled.h
deleted file mode 100644
index 2422c68f28..0000000000
--- a/keyboards/splitkb/kyria/keymaps/zigotica/oled.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-#include "zigotica.h"
diff --git a/keyboards/splitkb/kyria/keymaps/zigotica/rules.mk b/keyboards/splitkb/kyria/keymaps/zigotica/rules.mk
deleted file mode 100644
index 29d98d7019..0000000000
--- a/keyboards/splitkb/kyria/keymaps/zigotica/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-OLED_ENABLE = yes
-ENCODER_ENABLE = no
-RGBLIGHT_ENABLE = no
-
-COMBO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-LEADER_ENABLE = no
-UNICODE_ENABLE = no
-MOUSEKEY_ENABLE = yes
-
diff --git a/keyboards/splitkb/kyria/rev3/info.json b/keyboards/splitkb/kyria/rev3/info.json
index 29bea95323..81b539c507 100644
--- a/keyboards/splitkb/kyria/rev3/info.json
+++ b/keyboards/splitkb/kyria/rev3/info.json
@@ -98,7 +98,6 @@
"matrix": [4, 6]
},
"soft_serial_pin": "D2",
- "main": "matrix_grid",
"matrix_pins": {
"right": {
"rows": ["F6", "F7", "B1", "B3"],
diff --git a/keyboards/splitkb/zima/keymaps/drashna/config.h b/keyboards/splitkb/zima/keymaps/drashna/config.h
deleted file mode 100644
index b4457ec4b8..0000000000
--- a/keyboards/splitkb/zima/keymaps/drashna/config.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright 2019 Thomas Baart
- * Copyright 2021 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define OLED_FONT_H "users/drashna/oled/drashna_font.h"
-#define OLED_UPDATE_INTERVAL 15
-#define OLED_DISABLE_TIMEOUT
-#define OLED_FONT_END 255
-// # define OLED_FONT_5X5
-// # define OLED_FONT_AZTECH
-// # define OLED_FONT_BMPLAIN
-# define OLED_FONT_SUPER_DIGG
-// # define OLED_LOGO_GMK_BAD
-// # define OLED_LOGO_HUE_MANITEE
-// # define OLED_LOGO_CORNE
-// # define OLED_LOGO_GOTHAM
-#define OLED_LOGO_SCIFI
-
-#define ENCODER_RESOLUTION 2
-
-#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_TWINKLE+4
-#define RGBLIGHT_DEFAULT_HUE 213
diff --git a/keyboards/splitkb/zima/keymaps/drashna/keymap.c b/keyboards/splitkb/zima/keymaps/drashna/keymap.c
deleted file mode 100644
index f7f3b54fbd..0000000000
--- a/keyboards/splitkb/zima/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,145 +0,0 @@
-/* Copyright 2019 Thomas Baart
- * Copyright 2021 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-#ifdef HAPTIC_ENABLE
-# include "haptic.h"
-extern haptic_config_t haptic_config;
-#endif
-
-// clang-format off
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_ortho_4x3( /* Base */
- KC_MUTE, TG(1), TG(2),
- KC_P7, KC_P8, KC_P9,
- KC_P4, KC_P5, KC_P6,
- KC_P1, KC_P2, KC_P3
- ),
- [1] = LAYOUT_ortho_4x3( /* Layer 1 */
- QK_BOOT, _______, XXXXXXX,
- AU_ON, AU_OFF, XXXXXXX,
- CK_TOGG, XXXXXXX, CK_UP,
- CK_RST, XXXXXXX, CK_DOWN
- ),
- [2] = LAYOUT_ortho_4x3( /* Layer 2*/
- RGB_TOG, RGB_MOD, _______,
- RGB_HUI, RGB_SAI, RGB_VAI,
- RGB_HUD, RGB_SAD, RGB_VAD,
- HF_TOGG, HF_FDBK, HF_CONT
- )
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [0] = { { KC_DOWN, KC_UP } },
- [1] = { { KC_VOLD, KC_VOLU } },
- [2] = { { RGB_MOD, RGB_RMOD} },
-};
-#endif
-// clang-format on
-
-static bool is_asleep = false;
-static uint32_t oled_timer;
-
-void render_oled_logo(void) {
- // clang-format off
- static const char PROGMEM qmk_logo[] = {
- 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
- 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
- 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};
- // clang-format on
- oled_write_ln_P(qmk_logo, false);
-}
-
-void render_user_status(void) {
- static const char PROGMEM audio_status[2][3] = {{0xE0, 0xE1, 0}, {0xE2, 0xE3, 0}};
- oled_write_P(audio_status[is_audio_on()], false);
- static const char PROGMEM audio_clicky_status[2][3] = {{0xF4, 0xF5, 0}, {0xF6, 0xF7, 0}};
- oled_write_P(audio_clicky_status[is_clicky_on() && is_audio_on()], false);
- static const char PROGMEM rgb_layer_status[2][3] = {{0xEE, 0xEF, 0}, {0xF0, 0xF1, 0}};
- oled_write_P(rgb_layer_status[rgblight_is_enabled()], false);
- static const char PROGMEM nukem_good[2][3] = {{0xF8, 0xF9, 0}, {0xF6, 0xF7, 0}};
- oled_write_P(nukem_good[0], haptic_config.enable);
-}
-
-void keyboard_post_init_user(void) { oled_scroll_set_speed(0); }
-
-bool oled_task_user(void) {
- if (is_asleep) {
- oled_off();
- return false;;
- }
-
- if (timer_elapsed32(oled_timer) < 30000) {
- oled_on();
- oled_scroll_off();
- oled_write_P(PSTR("SplitKB's Zima"), false);
- char layer[2] = {0};
- uint8_t n = get_highest_layer(layer_state);
- layer[1] = '\0';
- layer[0] = '0' + n % 10;
- oled_write_P(PSTR(" L:"), false);
- oled_write_ln(layer, false);
- oled_write_ln_P(PSTR("--------------"), false);
- if (rgblight_is_enabled()) {
- oled_write_P(PSTR("HSV: "), false);
- char hsv_char[4];
- n = rgblight_get_hue();
- hsv_char[3] = '\0';
- hsv_char[2] = '0' + n % 10;
- hsv_char[1] = (n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
- hsv_char[0] = n / 10 ? '0' + n / 10 : ' ';
- oled_write(hsv_char, false);
- oled_write_P(PSTR(", "), false);
- n = rgblight_get_sat();
- hsv_char[3] = '\0';
- hsv_char[2] = '0' + n % 10;
- hsv_char[1] = (n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
- hsv_char[0] = n / 10 ? '0' + n / 10 : ' ';
- oled_write(hsv_char, false);
- oled_write_P(PSTR(", "), false);
- n = rgblight_get_val();
- hsv_char[3] = '\0';
- hsv_char[2] = '0' + n % 10;
- hsv_char[1] = (n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
- hsv_char[0] = n / 10 ? '0' + n / 10 : ' ';
- oled_write_ln(hsv_char, false);
- } else {
- oled_write_ln_P(PSTR("RGB LIGHT DISABLED"), false);
- }
- render_user_status();
- } else {
- if (timer_elapsed32(oled_timer) < 120000) {
- oled_on();
- render_oled_logo();
- oled_scroll_right();
- } else {
- oled_off();
- }
- }
- return false;
-}
-
-void suspend_power_down_user(void) { is_asleep = true; }
-
-void suspend_wakeup_init_user(void) { is_asleep = false; }
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record) {
- oled_timer = timer_read32();
-
- return true;
-}
diff --git a/keyboards/splitkb/zima/keymaps/drashna/rules.mk b/keyboards/splitkb/zima/keymaps/drashna/rules.mk
deleted file mode 100644
index b9dc009159..0000000000
--- a/keyboards/splitkb/zima/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# is intentional. won't compile under size, otherwise.
-USER_NAME := not_drashna
-ENCODER_MAP_ENABLE = yes
diff --git a/keyboards/splitography/keymaps/default/keymap.c b/keyboards/splitography/keymaps/default/keymap.c
index 8fbd541810..9c6c7d6b26 100644
--- a/keyboards/splitography/keymaps/default/keymap.c
+++ b/keyboards/splitography/keymaps/default/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum keyboard_layers {
_QWERTY = 0,
diff --git a/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c b/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c
index 83874f7760..787f448ffb 100644
--- a/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c
+++ b/keyboards/splitography/keymaps/default_with_ctl_shft_alt_switched/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum keyboard_layers {
_QWERTY = 0,
diff --git a/keyboards/splitography/keymaps/dvorak/keymap.c b/keyboards/splitography/keymaps/dvorak/keymap.c
index 1d9ff41dd1..992cfd0abb 100644
--- a/keyboards/splitography/keymaps/dvorak/keymap.c
+++ b/keyboards/splitography/keymaps/dvorak/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum keyboard_layers {
_DVORAK = 0,
diff --git a/keyboards/splitography/keymaps/jeandeaual/keymap.c b/keyboards/splitography/keymaps/jeandeaual/keymap.c
index 9b5c3d554d..6e0f818688 100644
--- a/keyboards/splitography/keymaps/jeandeaual/keymap.c
+++ b/keyboards/splitography/keymaps/jeandeaual/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum keyboard_layers {
_GEMINI = 0,
diff --git a/keyboards/splitography/keymaps/multi/keymap.c b/keyboards/splitography/keymaps/multi/keymap.c
index f1a083e03f..42ab737698 100644
--- a/keyboards/splitography/keymaps/multi/keymap.c
+++ b/keyboards/splitography/keymaps/multi/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum keyboard_layers {
_QWERTY = 0,
diff --git a/keyboards/sporewoh/banime40/config.h b/keyboards/sporewoh/banime40/config.h
deleted file mode 100644
index 75882003aa..0000000000
--- a/keyboards/sporewoh/banime40/config.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-Copyright 2022 sporewoh
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
diff --git a/keyboards/sporewoh/banime40/info.json b/keyboards/sporewoh/banime40/info.json
index 3390b8a334..857daf8ec7 100644
--- a/keyboards/sporewoh/banime40/info.json
+++ b/keyboards/sporewoh/banime40/info.json
@@ -13,6 +13,9 @@
"rows": ["E6", "D7", "C6", "D4"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"processor": "atmega32u4",
"bootloader": "caterina",
"community_layouts": ["ortho_4x10"],
diff --git a/keyboards/stenokeyboards/the_uni/keymaps/default/keymap.c b/keyboards/stenokeyboards/the_uni/keymaps/default/keymap.c
index 74aa207bd5..2240798328 100644
--- a/keyboards/stenokeyboards/the_uni/keymaps/default/keymap.c
+++ b/keyboards/stenokeyboards/the_uni/keymaps/default/keymap.c
@@ -16,7 +16,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum uni_layers {
_PLOVER,
diff --git a/keyboards/stenokeyboards/the_uni/keymaps/utility_belt/keymap.c b/keyboards/stenokeyboards/the_uni/keymaps/utility_belt/keymap.c
index 47a89818f6..0962521903 100644
--- a/keyboards/stenokeyboards/the_uni/keymaps/utility_belt/keymap.c
+++ b/keyboards/stenokeyboards/the_uni/keymaps/utility_belt/keymap.c
@@ -16,7 +16,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
enum uni_layers {
_PLOVER,
diff --git a/keyboards/stront/config.h b/keyboards/stront/config.h
index 4c88e411ac..13c76a80e2 100644
--- a/keyboards/stront/config.h
+++ b/keyboards/stront/config.h
@@ -13,8 +13,6 @@
/* any side can be master by default, enable split sync to support it */
#define EE_HANDS
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
#define SPLIT_POINTING_ENABLE
/* SPI config for display/touchpad */
diff --git a/keyboards/stront/info.json b/keyboards/stront/info.json
index c3435b1f5d..40be364688 100644
--- a/keyboards/stront/info.json
+++ b/keyboards/stront/info.json
@@ -61,7 +61,13 @@
"rows": ["GP28", "GP27", "GP26", "GP15"]
},
"split": {
- "enabled": true
+ "enabled": true,
+ "transport": {
+ "sync": {
+ "indicators": true,
+ "modifiers": true
+ }
+ }
},
"encoder": {
"rotary": [
@@ -86,6 +92,7 @@
"pin": "GP14"
},
"ws2812": {
+ "driver": "vendor",
"pin": "GP29"
},
"rgblight": {
diff --git a/keyboards/stront/rules.mk b/keyboards/stront/rules.mk
index 940a592d11..c6cdeb5bfc 100644
--- a/keyboards/stront/rules.mk
+++ b/keyboards/stront/rules.mk
@@ -1,5 +1,4 @@
SERIAL_DRIVER = vendor
-WS2812_DRIVER = vendor
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = cirque_pinnacle_spi
diff --git a/keyboards/studiokestra/line_tkl/config.h b/keyboards/studiokestra/line_friends_tkl/config.h
index c37d8a5ad2..c37d8a5ad2 100644
--- a/keyboards/studiokestra/line_tkl/config.h
+++ b/keyboards/studiokestra/line_friends_tkl/config.h
diff --git a/keyboards/studiokestra/line_friends_tkl/info.json b/keyboards/studiokestra/line_friends_tkl/info.json
new file mode 100644
index 0000000000..9c2db93a92
--- /dev/null
+++ b/keyboards/studiokestra/line_friends_tkl/info.json
@@ -0,0 +1,216 @@
+{
+ "manufacturer": "Studio Kestra",
+ "keyboard_name": "LINE FRIENDS TKL",
+ "maintainer": "studiokestra",
+ "bootloader": "atmel-dfu",
+ "diode_direction": "COL2ROW",
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
+ "indicators": {
+ "caps_lock": "B6",
+ "on_state": 1,
+ "scroll_lock": "D2"
+ },
+ "matrix_pins": {
+ "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B5", "D5", "D3"],
+ "rows": ["D0", "D1", "B0", "B7", "B3", "E6", "C7", "C6", "B4", "D7", "D6", "D4"]
+ },
+ "processor": "atmega32u4",
+ "url": "https://minokeys.com/collections/line-friends",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x8704",
+ "vid": "0x7C10"
+ },
+ "community_layouts": ["tkl_ansi_tsangan", "tkl_ansi_tsangan_split_bs_rshift"],
+ "layouts": {
+ "LAYOUT_tkl_ansi_tsangan": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 2, "y": 0},
+ {"matrix": [0, 2], "x": 3, "y": 0},
+ {"matrix": [1, 2], "x": 4, "y": 0},
+ {"matrix": [0, 3], "x": 5, "y": 0},
+ {"matrix": [1, 3], "x": 6.5, "y": 0},
+ {"matrix": [0, 4], "x": 7.5, "y": 0},
+ {"matrix": [1, 4], "x": 8.5, "y": 0},
+ {"matrix": [0, 5], "x": 9.5, "y": 0},
+ {"matrix": [1, 5], "x": 11, "y": 0},
+ {"matrix": [0, 6], "x": 12, "y": 0},
+ {"matrix": [1, 6], "x": 13, "y": 0},
+ {"matrix": [0, 7], "x": 14, "y": 0},
+ {"matrix": [1, 7], "x": 15.25, "y": 0},
+ {"matrix": [0, 8], "x": 16.25, "y": 0},
+ {"matrix": [1, 8], "x": 17.25, "y": 0},
+ {"matrix": [2, 0], "x": 0, "y": 1.25},
+ {"matrix": [3, 0], "x": 1, "y": 1.25},
+ {"matrix": [2, 1], "x": 2, "y": 1.25},
+ {"matrix": [3, 1], "x": 3, "y": 1.25},
+ {"matrix": [2, 2], "x": 4, "y": 1.25},
+ {"matrix": [3, 2], "x": 5, "y": 1.25},
+ {"matrix": [2, 3], "x": 6, "y": 1.25},
+ {"matrix": [3, 3], "x": 7, "y": 1.25},
+ {"matrix": [2, 4], "x": 8, "y": 1.25},
+ {"matrix": [3, 4], "x": 9, "y": 1.25},
+ {"matrix": [2, 5], "x": 10, "y": 1.25},
+ {"matrix": [3, 5], "x": 11, "y": 1.25},
+ {"matrix": [2, 6], "x": 12, "y": 1.25},
+ {"matrix": [3, 6], "x": 13, "y": 1.25, "w": 2},
+ {"matrix": [3, 7], "x": 15.25, "y": 1.25},
+ {"matrix": [2, 8], "x": 16.25, "y": 1.25},
+ {"matrix": [3, 8], "x": 17.25, "y": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 2.25, "w": 1.5},
+ {"matrix": [5, 0], "x": 1.5, "y": 2.25},
+ {"matrix": [4, 1], "x": 2.5, "y": 2.25},
+ {"matrix": [5, 1], "x": 3.5, "y": 2.25},
+ {"matrix": [4, 2], "x": 4.5, "y": 2.25},
+ {"matrix": [5, 2], "x": 5.5, "y": 2.25},
+ {"matrix": [4, 3], "x": 6.5, "y": 2.25},
+ {"matrix": [5, 3], "x": 7.5, "y": 2.25},
+ {"matrix": [4, 4], "x": 8.5, "y": 2.25},
+ {"matrix": [5, 4], "x": 9.5, "y": 2.25},
+ {"matrix": [4, 5], "x": 10.5, "y": 2.25},
+ {"matrix": [5, 5], "x": 11.5, "y": 2.25},
+ {"matrix": [4, 6], "x": 12.5, "y": 2.25},
+ {"matrix": [4, 7], "x": 13.5, "y": 2.25, "w": 1.5},
+ {"matrix": [5, 7], "x": 15.25, "y": 2.25},
+ {"matrix": [4, 8], "x": 16.25, "y": 2.25},
+ {"matrix": [5, 8], "x": 17.25, "y": 2.25},
+ {"matrix": [6, 0], "x": 0, "y": 3.25, "w": 1.75},
+ {"matrix": [7, 0], "x": 1.75, "y": 3.25},
+ {"matrix": [6, 1], "x": 2.75, "y": 3.25},
+ {"matrix": [7, 1], "x": 3.75, "y": 3.25},
+ {"matrix": [6, 2], "x": 4.75, "y": 3.25},
+ {"matrix": [7, 2], "x": 5.75, "y": 3.25},
+ {"matrix": [6, 3], "x": 6.75, "y": 3.25},
+ {"matrix": [7, 3], "x": 7.75, "y": 3.25},
+ {"matrix": [6, 4], "x": 8.75, "y": 3.25},
+ {"matrix": [7, 4], "x": 9.75, "y": 3.25},
+ {"matrix": [6, 5], "x": 10.75, "y": 3.25},
+ {"matrix": [7, 5], "x": 11.75, "y": 3.25},
+ {"matrix": [6, 6], "x": 12.75, "y": 3.25, "w": 2.25},
+ {"matrix": [8, 0], "x": 0, "y": 4.25, "w": 2.25},
+ {"matrix": [8, 1], "x": 2.25, "y": 4.25},
+ {"matrix": [9, 1], "x": 3.25, "y": 4.25},
+ {"matrix": [8, 2], "x": 4.25, "y": 4.25},
+ {"matrix": [9, 2], "x": 5.25, "y": 4.25},
+ {"matrix": [8, 3], "x": 6.25, "y": 4.25},
+ {"matrix": [9, 3], "x": 7.25, "y": 4.25},
+ {"matrix": [8, 4], "x": 8.25, "y": 4.25},
+ {"matrix": [9, 4], "x": 9.25, "y": 4.25},
+ {"matrix": [8, 5], "x": 10.25, "y": 4.25},
+ {"matrix": [9, 5], "x": 11.25, "y": 4.25},
+ {"matrix": [8, 6], "x": 12.25, "y": 4.25, "w": 2.75},
+ {"matrix": [9, 8], "x": 16.25, "y": 4.25},
+ {"matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
+ {"matrix": [11, 0], "x": 1.5, "y": 5.25},
+ {"matrix": [10, 1], "x": 2.5, "y": 5.25, "w": 1.5},
+ {"matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
+ {"matrix": [11, 5], "x": 11, "y": 5.25, "w": 1.5},
+ {"matrix": [10, 6], "x": 12.5, "y": 5.25},
+ {"matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
+ {"matrix": [11, 7], "x": 15.25, "y": 5.25},
+ {"matrix": [10, 8], "x": 16.25, "y": 5.25},
+ {"matrix": [11, 8], "x": 17.25, "y": 5.25}
+ ]
+ },
+ "LAYOUT_tkl_ansi_tsangan_split_bs_rshift": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 2, "y": 0},
+ {"matrix": [0, 2], "x": 3, "y": 0},
+ {"matrix": [1, 2], "x": 4, "y": 0},
+ {"matrix": [0, 3], "x": 5, "y": 0},
+ {"matrix": [1, 3], "x": 6.5, "y": 0},
+ {"matrix": [0, 4], "x": 7.5, "y": 0},
+ {"matrix": [1, 4], "x": 8.5, "y": 0},
+ {"matrix": [0, 5], "x": 9.5, "y": 0},
+ {"matrix": [1, 5], "x": 11, "y": 0},
+ {"matrix": [0, 6], "x": 12, "y": 0},
+ {"matrix": [1, 6], "x": 13, "y": 0},
+ {"matrix": [0, 7], "x": 14, "y": 0},
+ {"matrix": [1, 7], "x": 15.25, "y": 0},
+ {"matrix": [0, 8], "x": 16.25, "y": 0},
+ {"matrix": [1, 8], "x": 17.25, "y": 0},
+ {"matrix": [2, 0], "x": 0, "y": 1.25},
+ {"matrix": [3, 0], "x": 1, "y": 1.25},
+ {"matrix": [2, 1], "x": 2, "y": 1.25},
+ {"matrix": [3, 1], "x": 3, "y": 1.25},
+ {"matrix": [2, 2], "x": 4, "y": 1.25},
+ {"matrix": [3, 2], "x": 5, "y": 1.25},
+ {"matrix": [2, 3], "x": 6, "y": 1.25},
+ {"matrix": [3, 3], "x": 7, "y": 1.25},
+ {"matrix": [2, 4], "x": 8, "y": 1.25},
+ {"matrix": [3, 4], "x": 9, "y": 1.25},
+ {"matrix": [2, 5], "x": 10, "y": 1.25},
+ {"matrix": [3, 5], "x": 11, "y": 1.25},
+ {"matrix": [2, 6], "x": 12, "y": 1.25},
+ {"matrix": [3, 6], "x": 13, "y": 1.25},
+ {"matrix": [2, 7], "x": 14, "y": 1.25},
+ {"matrix": [3, 7], "x": 15.25, "y": 1.25},
+ {"matrix": [2, 8], "x": 16.25, "y": 1.25},
+ {"matrix": [3, 8], "x": 17.25, "y": 1.25},
+ {"matrix": [4, 0], "x": 0, "y": 2.25, "w": 1.5},
+ {"matrix": [5, 0], "x": 1.5, "y": 2.25},
+ {"matrix": [4, 1], "x": 2.5, "y": 2.25},
+ {"matrix": [5, 1], "x": 3.5, "y": 2.25},
+ {"matrix": [4, 2], "x": 4.5, "y": 2.25},
+ {"matrix": [5, 2], "x": 5.5, "y": 2.25},
+ {"matrix": [4, 3], "x": 6.5, "y": 2.25},
+ {"matrix": [5, 3], "x": 7.5, "y": 2.25},
+ {"matrix": [4, 4], "x": 8.5, "y": 2.25},
+ {"matrix": [5, 4], "x": 9.5, "y": 2.25},
+ {"matrix": [4, 5], "x": 10.5, "y": 2.25},
+ {"matrix": [5, 5], "x": 11.5, "y": 2.25},
+ {"matrix": [4, 6], "x": 12.5, "y": 2.25},
+ {"matrix": [4, 7], "x": 13.5, "y": 2.25, "w": 1.5},
+ {"matrix": [5, 7], "x": 15.25, "y": 2.25},
+ {"matrix": [4, 8], "x": 16.25, "y": 2.25},
+ {"matrix": [5, 8], "x": 17.25, "y": 2.25},
+ {"matrix": [6, 0], "x": 0, "y": 3.25, "w": 1.75},
+ {"matrix": [7, 0], "x": 1.75, "y": 3.25},
+ {"matrix": [6, 1], "x": 2.75, "y": 3.25},
+ {"matrix": [7, 1], "x": 3.75, "y": 3.25},
+ {"matrix": [6, 2], "x": 4.75, "y": 3.25},
+ {"matrix": [7, 2], "x": 5.75, "y": 3.25},
+ {"matrix": [6, 3], "x": 6.75, "y": 3.25},
+ {"matrix": [7, 3], "x": 7.75, "y": 3.25},
+ {"matrix": [6, 4], "x": 8.75, "y": 3.25},
+ {"matrix": [7, 4], "x": 9.75, "y": 3.25},
+ {"matrix": [6, 5], "x": 10.75, "y": 3.25},
+ {"matrix": [7, 5], "x": 11.75, "y": 3.25},
+ {"matrix": [6, 6], "x": 12.75, "y": 3.25, "w": 2.25},
+ {"matrix": [8, 0], "x": 0, "y": 4.25, "w": 2.25},
+ {"matrix": [8, 1], "x": 2.25, "y": 4.25},
+ {"matrix": [9, 1], "x": 3.25, "y": 4.25},
+ {"matrix": [8, 2], "x": 4.25, "y": 4.25},
+ {"matrix": [9, 2], "x": 5.25, "y": 4.25},
+ {"matrix": [8, 3], "x": 6.25, "y": 4.25},
+ {"matrix": [9, 3], "x": 7.25, "y": 4.25},
+ {"matrix": [8, 4], "x": 8.25, "y": 4.25},
+ {"matrix": [9, 4], "x": 9.25, "y": 4.25},
+ {"matrix": [8, 5], "x": 10.25, "y": 4.25},
+ {"matrix": [9, 5], "x": 11.25, "y": 4.25},
+ {"matrix": [8, 6], "x": 12.25, "y": 4.25, "w": 1.75},
+ {"matrix": [9, 6], "x": 14, "y": 4.25},
+ {"matrix": [9, 8], "x": 16.25, "y": 4.25},
+ {"matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
+ {"matrix": [11, 0], "x": 1.5, "y": 5.25},
+ {"matrix": [10, 1], "x": 2.5, "y": 5.25, "w": 1.5},
+ {"matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
+ {"matrix": [11, 5], "x": 11, "y": 5.25, "w": 1.5},
+ {"matrix": [10, 6], "x": 12.5, "y": 5.25},
+ {"matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
+ {"matrix": [11, 7], "x": 15.25, "y": 5.25},
+ {"matrix": [10, 8], "x": 16.25, "y": 5.25},
+ {"matrix": [11, 8], "x": 17.25, "y": 5.25}
+ ]
+ }
+ }
+}
diff --git a/keyboards/studiokestra/line_tkl/keymaps/default/keymap.c b/keyboards/studiokestra/line_friends_tkl/keymaps/default/keymap.c
index a8dc54ee87..a8dc54ee87 100644
--- a/keyboards/studiokestra/line_tkl/keymaps/default/keymap.c
+++ b/keyboards/studiokestra/line_friends_tkl/keymaps/default/keymap.c
diff --git a/keyboards/studiokestra/line_tkl/keymaps/split_bs_rshift/keymap.c b/keyboards/studiokestra/line_friends_tkl/keymaps/split_bs_rshift/keymap.c
index 595ed5d03c..595ed5d03c 100644
--- a/keyboards/studiokestra/line_tkl/keymaps/split_bs_rshift/keymap.c
+++ b/keyboards/studiokestra/line_friends_tkl/keymaps/split_bs_rshift/keymap.c
diff --git a/keyboards/studiokestra/line_tkl/keymaps/via/keymap.c b/keyboards/studiokestra/line_friends_tkl/keymaps/via/keymap.c
index 595ed5d03c..595ed5d03c 100644
--- a/keyboards/studiokestra/line_tkl/keymaps/via/keymap.c
+++ b/keyboards/studiokestra/line_friends_tkl/keymaps/via/keymap.c
diff --git a/keyboards/soda/mango/keymaps/via/rules.mk b/keyboards/studiokestra/line_friends_tkl/keymaps/via/rules.mk
index 1e5b99807c..1e5b99807c 100644
--- a/keyboards/soda/mango/keymaps/via/rules.mk
+++ b/keyboards/studiokestra/line_friends_tkl/keymaps/via/rules.mk
diff --git a/keyboards/studiokestra/line_friends_tkl/readme.md b/keyboards/studiokestra/line_friends_tkl/readme.md
new file mode 100644
index 0000000000..48840ab9ba
--- /dev/null
+++ b/keyboards/studiokestra/line_friends_tkl/readme.md
@@ -0,0 +1,27 @@
+# studiokestra/line_friends_tkl
+
+![studiokestra/line_friends_tkl](https://i.imgur.com/3MmRQkh.png)
+
+PCB developed for Mino Keys in collaboration with Line Friends (C).
+
+* Keyboard Maintainer: [Studio Kestra](https://github.com/studiokestra/)
+* Hardware Supported: LINE FRIENDS TKL
+* Hardware Availability: https://minokeys.com/collections/line-friends
+
+Make example for this keyboard (after setting up your build environment):
+
+ make studiokestra/line_friends_tkl:default
+
+Flashing example for this keyboard:
+
+ make studiokestra/line_friends_tkl:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/studiokestra/line_friends_tkl/rules.mk b/keyboards/studiokestra/line_friends_tkl/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/studiokestra/line_friends_tkl/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/studiokestra/line_tkl/info.json b/keyboards/studiokestra/line_tkl/info.json
deleted file mode 100644
index ba6601a330..0000000000
--- a/keyboards/studiokestra/line_tkl/info.json
+++ /dev/null
@@ -1,216 +0,0 @@
-{
- "manufacturer": "Studio Kestra",
- "keyboard_name": "Line TKL",
- "maintainer": "studiokestra",
- "bootloader": "atmel-dfu",
- "diode_direction": "COL2ROW",
- "features": {
- "bootmagic": true,
- "command": false,
- "console": false,
- "extrakey": true,
- "mousekey": true,
- "nkro": true
- },
- "indicators": {
- "caps_lock": "B6",
- "on_state": 1,
- "scroll_lock": "D2"
- },
- "matrix_pins": {
- "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B5", "D5", "D3"],
- "rows": ["D0", "D1", "B0", "B7", "B3", "E6", "C7", "C6", "B4", "D7", "D6", "D4"]
- },
- "processor": "atmega32u4",
- "url": "https://minokeys.com/collections/line-friends",
- "usb": {
- "device_version": "1.0.0",
- "pid": "0x8704",
- "vid": "0x7C10"
- },
- "community_layouts": ["tkl_ansi_tsangan", "tkl_ansi_tsangan_split_bs_rshift"],
- "layouts": {
- "LAYOUT_tkl_ansi_tsangan": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 2, "y": 0},
- {"matrix": [0, 2], "x": 3, "y": 0},
- {"matrix": [1, 2], "x": 4, "y": 0},
- {"matrix": [0, 3], "x": 5, "y": 0},
- {"matrix": [1, 3], "x": 6.5, "y": 0},
- {"matrix": [0, 4], "x": 7.5, "y": 0},
- {"matrix": [1, 4], "x": 8.5, "y": 0},
- {"matrix": [0, 5], "x": 9.5, "y": 0},
- {"matrix": [1, 5], "x": 11, "y": 0},
- {"matrix": [0, 6], "x": 12, "y": 0},
- {"matrix": [1, 6], "x": 13, "y": 0},
- {"matrix": [0, 7], "x": 14, "y": 0},
- {"matrix": [1, 7], "x": 15.25, "y": 0},
- {"matrix": [0, 8], "x": 16.25, "y": 0},
- {"matrix": [1, 8], "x": 17.25, "y": 0},
- {"matrix": [2, 0], "x": 0, "y": 1.25},
- {"matrix": [3, 0], "x": 1, "y": 1.25},
- {"matrix": [2, 1], "x": 2, "y": 1.25},
- {"matrix": [3, 1], "x": 3, "y": 1.25},
- {"matrix": [2, 2], "x": 4, "y": 1.25},
- {"matrix": [3, 2], "x": 5, "y": 1.25},
- {"matrix": [2, 3], "x": 6, "y": 1.25},
- {"matrix": [3, 3], "x": 7, "y": 1.25},
- {"matrix": [2, 4], "x": 8, "y": 1.25},
- {"matrix": [3, 4], "x": 9, "y": 1.25},
- {"matrix": [2, 5], "x": 10, "y": 1.25},
- {"matrix": [3, 5], "x": 11, "y": 1.25},
- {"matrix": [2, 6], "x": 12, "y": 1.25},
- {"matrix": [3, 6], "x": 13, "y": 1.25, "w": 2},
- {"matrix": [3, 7], "x": 15.25, "y": 1.25},
- {"matrix": [2, 8], "x": 16.25, "y": 1.25},
- {"matrix": [3, 8], "x": 17.25, "y": 1.25},
- {"matrix": [4, 0], "x": 0, "y": 2.25, "w": 1.5},
- {"matrix": [5, 0], "x": 1.5, "y": 2.25},
- {"matrix": [4, 1], "x": 2.5, "y": 2.25},
- {"matrix": [5, 1], "x": 3.5, "y": 2.25},
- {"matrix": [4, 2], "x": 4.5, "y": 2.25},
- {"matrix": [5, 2], "x": 5.5, "y": 2.25},
- {"matrix": [4, 3], "x": 6.5, "y": 2.25},
- {"matrix": [5, 3], "x": 7.5, "y": 2.25},
- {"matrix": [4, 4], "x": 8.5, "y": 2.25},
- {"matrix": [5, 4], "x": 9.5, "y": 2.25},
- {"matrix": [4, 5], "x": 10.5, "y": 2.25},
- {"matrix": [5, 5], "x": 11.5, "y": 2.25},
- {"matrix": [4, 6], "x": 12.5, "y": 2.25},
- {"matrix": [4, 7], "x": 13.5, "y": 2.25, "w": 1.5},
- {"matrix": [5, 7], "x": 15.25, "y": 2.25},
- {"matrix": [4, 8], "x": 16.25, "y": 2.25},
- {"matrix": [5, 8], "x": 17.25, "y": 2.25},
- {"matrix": [6, 0], "x": 0, "y": 3.25, "w": 1.75},
- {"matrix": [7, 0], "x": 1.75, "y": 3.25},
- {"matrix": [6, 1], "x": 2.75, "y": 3.25},
- {"matrix": [7, 1], "x": 3.75, "y": 3.25},
- {"matrix": [6, 2], "x": 4.75, "y": 3.25},
- {"matrix": [7, 2], "x": 5.75, "y": 3.25},
- {"matrix": [6, 3], "x": 6.75, "y": 3.25},
- {"matrix": [7, 3], "x": 7.75, "y": 3.25},
- {"matrix": [6, 4], "x": 8.75, "y": 3.25},
- {"matrix": [7, 4], "x": 9.75, "y": 3.25},
- {"matrix": [6, 5], "x": 10.75, "y": 3.25},
- {"matrix": [7, 5], "x": 11.75, "y": 3.25},
- {"matrix": [6, 6], "x": 12.75, "y": 3.25, "w": 2.25},
- {"matrix": [8, 0], "x": 0, "y": 4.25, "w": 2.25},
- {"matrix": [8, 1], "x": 2.25, "y": 4.25},
- {"matrix": [9, 1], "x": 3.25, "y": 4.25},
- {"matrix": [8, 2], "x": 4.25, "y": 4.25},
- {"matrix": [9, 2], "x": 5.25, "y": 4.25},
- {"matrix": [8, 3], "x": 6.25, "y": 4.25},
- {"matrix": [9, 3], "x": 7.25, "y": 4.25},
- {"matrix": [8, 4], "x": 8.25, "y": 4.25},
- {"matrix": [9, 4], "x": 9.25, "y": 4.25},
- {"matrix": [8, 5], "x": 10.25, "y": 4.25},
- {"matrix": [9, 5], "x": 11.25, "y": 4.25},
- {"matrix": [8, 6], "x": 12.25, "y": 4.25, "w": 2.75},
- {"matrix": [9, 8], "x": 16.25, "y": 4.25},
- {"matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
- {"matrix": [11, 0], "x": 1.5, "y": 5.25},
- {"matrix": [10, 1], "x": 2.5, "y": 5.25, "w": 1.5},
- {"matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
- {"matrix": [11, 5], "x": 11, "y": 5.25, "w": 1.5},
- {"matrix": [10, 6], "x": 12.5, "y": 5.25},
- {"matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
- {"matrix": [11, 7], "x": 15.25, "y": 5.25},
- {"matrix": [10, 8], "x": 16.25, "y": 5.25},
- {"matrix": [11, 8], "x": 17.25, "y": 5.25}
- ]
- },
- "LAYOUT_tkl_ansi_tsangan_split_bs_rshift": {
- "layout": [
- {"matrix": [0, 0], "x": 0, "y": 0},
- {"matrix": [0, 1], "x": 2, "y": 0},
- {"matrix": [0, 2], "x": 3, "y": 0},
- {"matrix": [1, 2], "x": 4, "y": 0},
- {"matrix": [0, 3], "x": 5, "y": 0},
- {"matrix": [1, 3], "x": 6.5, "y": 0},
- {"matrix": [0, 4], "x": 7.5, "y": 0},
- {"matrix": [1, 4], "x": 8.5, "y": 0},
- {"matrix": [0, 5], "x": 9.5, "y": 0},
- {"matrix": [1, 5], "x": 11, "y": 0},
- {"matrix": [0, 6], "x": 12, "y": 0},
- {"matrix": [1, 6], "x": 13, "y": 0},
- {"matrix": [0, 7], "x": 14, "y": 0},
- {"matrix": [1, 7], "x": 15.25, "y": 0},
- {"matrix": [0, 8], "x": 16.25, "y": 0},
- {"matrix": [1, 8], "x": 17.25, "y": 0},
- {"matrix": [2, 0], "x": 0, "y": 1.25},
- {"matrix": [3, 0], "x": 1, "y": 1.25},
- {"matrix": [2, 1], "x": 2, "y": 1.25},
- {"matrix": [3, 1], "x": 3, "y": 1.25},
- {"matrix": [2, 2], "x": 4, "y": 1.25},
- {"matrix": [3, 2], "x": 5, "y": 1.25},
- {"matrix": [2, 3], "x": 6, "y": 1.25},
- {"matrix": [3, 3], "x": 7, "y": 1.25},
- {"matrix": [2, 4], "x": 8, "y": 1.25},
- {"matrix": [3, 4], "x": 9, "y": 1.25},
- {"matrix": [2, 5], "x": 10, "y": 1.25},
- {"matrix": [3, 5], "x": 11, "y": 1.25},
- {"matrix": [2, 6], "x": 12, "y": 1.25},
- {"matrix": [3, 6], "x": 13, "y": 1.25},
- {"matrix": [2, 7], "x": 14, "y": 1.25},
- {"matrix": [3, 7], "x": 15.25, "y": 1.25},
- {"matrix": [2, 8], "x": 16.25, "y": 1.25},
- {"matrix": [3, 8], "x": 17.25, "y": 1.25},
- {"matrix": [4, 0], "x": 0, "y": 2.25, "w": 1.5},
- {"matrix": [5, 0], "x": 1.5, "y": 2.25},
- {"matrix": [4, 1], "x": 2.5, "y": 2.25},
- {"matrix": [5, 1], "x": 3.5, "y": 2.25},
- {"matrix": [4, 2], "x": 4.5, "y": 2.25},
- {"matrix": [5, 2], "x": 5.5, "y": 2.25},
- {"matrix": [4, 3], "x": 6.5, "y": 2.25},
- {"matrix": [5, 3], "x": 7.5, "y": 2.25},
- {"matrix": [4, 4], "x": 8.5, "y": 2.25},
- {"matrix": [5, 4], "x": 9.5, "y": 2.25},
- {"matrix": [4, 5], "x": 10.5, "y": 2.25},
- {"matrix": [5, 5], "x": 11.5, "y": 2.25},
- {"matrix": [4, 6], "x": 12.5, "y": 2.25},
- {"matrix": [4, 7], "x": 13.5, "y": 2.25, "w": 1.5},
- {"matrix": [5, 7], "x": 15.25, "y": 2.25},
- {"matrix": [4, 8], "x": 16.25, "y": 2.25},
- {"matrix": [5, 8], "x": 17.25, "y": 2.25},
- {"matrix": [6, 0], "x": 0, "y": 3.25, "w": 1.75},
- {"matrix": [7, 0], "x": 1.75, "y": 3.25},
- {"matrix": [6, 1], "x": 2.75, "y": 3.25},
- {"matrix": [7, 1], "x": 3.75, "y": 3.25},
- {"matrix": [6, 2], "x": 4.75, "y": 3.25},
- {"matrix": [7, 2], "x": 5.75, "y": 3.25},
- {"matrix": [6, 3], "x": 6.75, "y": 3.25},
- {"matrix": [7, 3], "x": 7.75, "y": 3.25},
- {"matrix": [6, 4], "x": 8.75, "y": 3.25},
- {"matrix": [7, 4], "x": 9.75, "y": 3.25},
- {"matrix": [6, 5], "x": 10.75, "y": 3.25},
- {"matrix": [7, 5], "x": 11.75, "y": 3.25},
- {"matrix": [6, 6], "x": 12.75, "y": 3.25, "w": 2.25},
- {"matrix": [8, 0], "x": 0, "y": 4.25, "w": 2.25},
- {"matrix": [8, 1], "x": 2.25, "y": 4.25},
- {"matrix": [9, 1], "x": 3.25, "y": 4.25},
- {"matrix": [8, 2], "x": 4.25, "y": 4.25},
- {"matrix": [9, 2], "x": 5.25, "y": 4.25},
- {"matrix": [8, 3], "x": 6.25, "y": 4.25},
- {"matrix": [9, 3], "x": 7.25, "y": 4.25},
- {"matrix": [8, 4], "x": 8.25, "y": 4.25},
- {"matrix": [9, 4], "x": 9.25, "y": 4.25},
- {"matrix": [8, 5], "x": 10.25, "y": 4.25},
- {"matrix": [9, 5], "x": 11.25, "y": 4.25},
- {"matrix": [8, 6], "x": 12.25, "y": 4.25, "w": 1.75},
- {"matrix": [9, 6], "x": 14, "y": 4.25},
- {"matrix": [9, 8], "x": 16.25, "y": 4.25},
- {"matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
- {"matrix": [11, 0], "x": 1.5, "y": 5.25},
- {"matrix": [10, 1], "x": 2.5, "y": 5.25, "w": 1.5},
- {"matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
- {"matrix": [11, 5], "x": 11, "y": 5.25, "w": 1.5},
- {"matrix": [10, 6], "x": 12.5, "y": 5.25},
- {"matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
- {"matrix": [11, 7], "x": 15.25, "y": 5.25},
- {"matrix": [10, 8], "x": 16.25, "y": 5.25},
- {"matrix": [11, 8], "x": 17.25, "y": 5.25}
- ]
- }
- }
-}
diff --git a/keyboards/studiokestra/line_tkl/keymaps/via/rules.mk b/keyboards/studiokestra/line_tkl/keymaps/via/rules.mk
deleted file mode 100644
index 1e5b99807c..0000000000
--- a/keyboards/studiokestra/line_tkl/keymaps/via/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-VIA_ENABLE = yes
diff --git a/keyboards/studiokestra/line_tkl/readme.md b/keyboards/studiokestra/line_tkl/readme.md
deleted file mode 100644
index a5d7ae0c41..0000000000
--- a/keyboards/studiokestra/line_tkl/readme.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# studiokestra/line_tkl
-
-![studiokestra/line_tkl](https://i.imgur.com/3MmRQkh.png)
-
-PCB developed for Mino Keys in collaboration with Line Friends (C).
-
-* Keyboard Maintainer: [Studio Kestra](https://github.com/studiokestra/)
-* Hardware Supported: Line TKL
-* Hardware Availability: https://minokeys.com/collections/line-friends
-
-Make example for this keyboard (after setting up your build environment):
-
- make studiokestra/line_tkl:default
-
-Flashing example for this keyboard:
-
- make studiokestra/line_tkl:default:flash
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
-
-## Bootloader
-
-Enter the bootloader in 3 ways:
-
-* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
-* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/swiftrax/retropad/config.h b/keyboards/swiftrax/retropad/config.h
deleted file mode 100644
index 092f2ba0e9..0000000000
--- a/keyboards/swiftrax/retropad/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
-Copyright 2020 Swiftrax <swiftrax@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-/*EEPROM for via*/
-#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/switchplate/southpaw_65/rules.mk b/keyboards/switchplate/southpaw_65/rules.mk
index c6c7f4ef93..89d05c5487 100644
--- a/keyboards/switchplate/southpaw_65/rules.mk
+++ b/keyboards/switchplate/southpaw_65/rules.mk
@@ -17,4 +17,4 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += pca9555.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/sx60/rules.mk b/keyboards/sx60/rules.mk
index a18361a0cd..2f0d22e49f 100755
--- a/keyboards/sx60/rules.mk
+++ b/keyboards/sx60/rules.mk
@@ -13,5 +13,5 @@ RGBLIGHT_ENABLE = no
CUSTOM_MATRIX = yes
# project specific files
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
SRC += matrix.c
diff --git a/keyboards/system76/launch_1/keymaps/peterfalken/config.h b/keyboards/system76/launch_1/keymaps/peterfalken/config.h
deleted file mode 100644
index 565698b7b5..0000000000
--- a/keyboards/system76/launch_1/keymaps/peterfalken/config.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-// Custom RGB_MATRIX settings
-#ifdef RGB_MATRIX_ENABLE
- // Remove predefined values
- #undef RGB_DISABLE_TIMEOUT
- #undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
- #undef RGB_MATRIX_DEFAULT_MODE
- #undef RGB_MATRIX_DEFAULT_HUE
- #undef RGB_MATRIX_DEFAULT_SAT
- #undef RGB_MATRIX_DEFAULT_VAL
-
- // Redefine values
- // Number of milliseconds to wait until RGB automatically turns off
- #define RGB_MATRIX_TIMEOUT 5000
- // Limits maximum brightness of LEDs to 120 out of 255
- #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
- // Sets the default startup mode
- #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CUSTOM_active_keys
- // Sets the default hue, saturation & brightness values
- #define RGB_MATRIX_DEFAULT_HUE 0
- #define RGB_MATRIX_DEFAULT_SAT 0
- #define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS/3
-#endif // RGB_MATRIX_ENABLE
-
-// Custom definition
-// Disable RGB_MATRIX_ANIMATIONS to free up space
-#ifdef DISABLE_RGB_MATRIX_ANIMATIONS
- #undef ENABLE_RGB_MATRIX_CYCLE_ALL
- #undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
- #undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
- #undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
- #undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
- #undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
- #undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
- #undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
- #undef ENABLE_RGB_MATRIX_RAINDROPS
- #undef ENABLE_RGB_MATRIX_SPLASH
- #undef ENABLE_RGB_MATRIX_MULTISPLASH
-#endif // DISABLE_RGB_MATRIX_ANIMATIONS
diff --git a/keyboards/system76/launch_1/keymaps/peterfalken/keymap.c b/keyboards/system76/launch_1/keymaps/peterfalken/keymap.c
deleted file mode 100644
index 2c5c8bf862..0000000000
--- a/keyboards/system76/launch_1/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,90 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "peterfalken.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Layer 0, default layer
- _________________________________________________________________________________________________________________________________ ________
-| | | | | | | | | | | | | | || |
-| ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE || HOME |
-|________|________|________|________|________|________|________|________|________|________|________|________|________|____________||________|
-| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | _ | + | || |
-| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BACKSPACE || PGUP |
-|________|________|________|________|________|________|________|________|________|________|________|________|________|____________||________|
-| | | | | | | | | | | | [ | ] | | || |
-| TAB | Q | W | E | R | T | Y | U | I | O | P | { | } | \ || PGDN |
-|____________|________|________|________|________|________|________|________|________|________|________|________|________|________||________|
- | | | | | | | | | | | : | " | | | |
- | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | | END |
- |____________|________|________|________|________|________|________|________|________|________|________|________|____________|___|________|
- | | | | | | | | | < | > | ? | | |
- | SHIFT | Z | X | C | V | B | N | M | , | . | / | SHIFT | UP |
- |________________|________|________|________|________|________|________|________|________|________|________|____________|________|________
- | | | | | | | | | | | | | |
- | MO.1 | RCTL | LALT | LGUI | SPACE | SPACE | RGUI | RALT | RCTRL | | LEFT | DOWN | RIGHT |
- |____________|________|_______|________|_________________|_________________|________|________|_____________| |________|________|________|
- */
-
- [_QWERTY] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_HOME,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_PGUP,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN,
- CK_CW, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_END,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
- MO(1), KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Layer 1, function layer
- _________________________________________________________________________________________________________________________________ ________
-| | | | | | | | | | | | | | || PLAY/ |
-| ▽ | ▽ | M.AP | M.AL | LPAD | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ || PAUSE |
-|________|________|________|________|________|________|________|________|________|________|________|________|________|____________||________|
-| | | | | | | | | | | LED | LED | LED | || VOLUME |
-| TO.0 | TO.1 | TO.2 | TO.3 | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | TOGGLE | DOWN | UP | ▽ || UP |
-|________|________|________|________|________|________|________|________|________|________|________|________|________|____________||________|
-| | | | | | | | | | | | | | || VOLUME |
-|PRINT SCREEN| ▽ | ▽ | ▽ | ▽ | ▽ | HOME | PGDN | PGUP | END | ▽ | ▽ | ▽ | SLEP || DOWN |
-|____________|________|________|________|________|________|________|________|________|________|________|________|________|________||________|
- | | | | | | | | | | | | | | | |
- | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | LEFT | DOWN | UP | RIGHT | ▽ | ▽ | ▽ | | MUTE |
- |____________|________|________|________|________|________|________|________|________|________|________|________|____________|___|________|
- | | | | | | | | | | | | | |
- | ▽ | UN | CU | CO | PA | MV | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | PGUP |
- |________________|________|________|________|________|________|________|________|________|________|________|____________|________|________
- | | | | | | | | | | | | | |
- | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | TO.0 | | HOME | PGDN | END |
- |____________|________|_______|________|_________________|_________________|________|________|_____________| |________|________|________|
-
- * `QK_BOOT' resets the controller and puts the board into firmware flashing mode.
- * If this key is hit accidentally, just unplug the board and plug it back in.
- */
-
- [_LOWER] = LAYOUT(
- KC_TRNS, KC_TRNS, CK_M1, KC_MCTL, KC_LPAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
- TO(0), TO(1), TO(2), TO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_VAD, RGB_VAI, KC_TRNS, KC_VOLU,
- KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, CK_SLP, KC_VOLD,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE,
- KC_TRNS, KC_TRNS, CK_CU, CK_CO, CK_PA, CK_MV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TO(0), KC_HOME, KC_PGDN, KC_END
- ),
-
- [_RAISE] = LAYOUT(
- QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- TO(0), TO(1), TO(2), TO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TO(0), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- [_ADJUST] = LAYOUT(
- QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- TO(0), TO(1), TO(2), TO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TO(0), KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-};
diff --git a/keyboards/system76/launch_1/keymaps/peterfalken/readme.md b/keyboards/system76/launch_1/keymaps/peterfalken/readme.md
deleted file mode 100644
index f64d682a51..0000000000
--- a/keyboards/system76/launch_1/keymaps/peterfalken/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Copyright 2023 LEG <ucaboys@gmail.com> @PeterFalken
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/system76/launch_1/rules.mk b/keyboards/system76/launch_1/rules.mk
index 7dbc07ced0..181976b2dd 100644
--- a/keyboards/system76/launch_1/rules.mk
+++ b/keyboards/system76/launch_1/rules.mk
@@ -23,4 +23,4 @@ LTO_ENABLE = yes # Link-time optimization for smaller binary
# Add System76 EC command interface as well as I2C and USB mux drivers
SRC += system76_ec.c usb_mux.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/tada68/keymaps/jarred/keymap.c b/keyboards/tada68/keymaps/jarred/keymap.c
deleted file mode 100644
index 49ceac2f06..0000000000
--- a/keyboards/tada68/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright 2019 Jarred Steenvoorden
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-#define _QW 0
-#define _NV 1
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- [_QW] = LAYOUT_ansi(
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS, KC_EQL , KC_BSPC, KC_GRV ,
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL ,
- MO(_NV), KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_ENT , KC_PGUP,
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP , KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(_NV), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- [_NV] = LAYOUT_ansi(
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_DEL , KC_INS ,
- _______, _______, _______, _______, KC_DEL , KC_BSPC, _______, KC_HOME, KC_UP , KC_END , KC_INS , _______, _______, _______, KC_HOME,
- _______, _______, _______, KC_LSFT, KC_LCTL, KC_ENT , _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL , KC_DEL , _______, KC_END ,
- _______ , _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______, BL_UP , _______,
- _______, _______, _______, _______ , _______, _______, _______, BL_TOGG, BL_DOWN, _______
- ),
-
-};
diff --git a/keyboards/tada68/keymaps/jarred/readme.md b/keyboards/tada68/keymaps/jarred/readme.md
deleted file mode 100644
index 56dc34555c..0000000000
--- a/keyboards/tada68/keymaps/jarred/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Jarred's Tada68 Layout
-
-Check out [user space readme](../../../../users/jarred/readme.md) for more info
-
-# Flash
-
-```
-make tada68:jarred:flashbin
-```
diff --git a/keyboards/tada68/keymaps/jarred/rules.mk b/keyboards/tada68/keymaps/jarred/rules.mk
deleted file mode 100644
index 193d92d1d0..0000000000
--- a/keyboards/tada68/keymaps/jarred/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
-CONSOLE_ENABLE = no # Console for debug(+400)
diff --git a/keyboards/tada68/keymaps/rupa/config.h b/keyboards/tada68/keymaps/rupa/config.h
deleted file mode 100644
index e1a6eb1a2b..0000000000
--- a/keyboards/tada68/keymaps/rupa/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define GRAVE_ESC_ALT_OVERRIDE
diff --git a/keyboards/tada68/keymaps/rupa/keymap.c b/keyboards/tada68/keymaps/rupa/keymap.c
deleted file mode 100755
index ce95673af4..0000000000
--- a/keyboards/tada68/keymaps/rupa/keymap.c
+++ /dev/null
@@ -1,38 +0,0 @@
-#include "rupa.h"
-
-#define LAYOUT_65_ansi_wrapper(...) LAYOUT_65_ansi(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_65_ansi_wrapper(
- ____65_QWERTY______________ROW1,
- ____65_QWERTY______________ROW2,
- ____65_QWERTY______________ROW3,
- ____65_QWERTY______________ROW4,
- ____65_QWERTY______________ROW5
- ),
- [_RAISE] = LAYOUT_65_ansi_wrapper(
- ____65_RAISE_______________ROW1,
- ____65_RAISE_______________ROW2,
- ____65_RAISE_______________ROW3,
- ____65_RAISE_______________ROW4,
- ____65_RAISE_______________ROW5
- ),
- [_LOWER] = LAYOUT_65_ansi_wrapper(
- ____65_LOWER_______________ROW1,
- ____65_LOWER_______________ROW2,
- ____65_LOWER_______________ROW3,
- ____65_LOWER_______________ROW4,
- ____65_LOWER_______________ROW5
- ),
- [_ADJUST] = LAYOUT_65_ansi_wrapper(
- ____65_ADJUST______________ROW1,
- ____65_ADJUST___________BL_ROW2,
- ____65_ADJUST______________ROW3,
- ____65_ADJUST______________ROW4,
- ____65_ADJUST______________ROW5
- ),
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/tada68/keymaps/rupa/readme.md b/keyboards/tada68/keymaps/rupa/readme.md
deleted file mode 100755
index eea966fdb9..0000000000
--- a/keyboards/tada68/keymaps/rupa/readme.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# rupa's TADA68 layout
-
-i've swapped the lufa-ms bootloader for caterina
-
-most everything is in my [userspace](../../../../users/rupa/)
-
-* win/alt -> alt/cmd
-* alt/fn -> fn/alt
-* grave escape, with alt override
-* caps is another fn key, CAPS on fn-rctl
-
-fn layer:
- * no wasd arrows
- * rotate mute/vol
- * backlight -> breathing, step, toggle
- * swap home and ins
- * unicode chars and strings sprinkled around
- * script modes!
- * (one-shot) right versions of shift/ctl/alt/gui (not working quite right yet)
diff --git a/keyboards/tada68/keymaps/rupa/rules.mk b/keyboards/tada68/keymaps/rupa/rules.mk
deleted file mode 100644
index 1777fc10a2..0000000000
--- a/keyboards/tada68/keymaps/rupa/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-BOOTLOADER = caterina
-
-CONSOLE_ENABLE = yes
diff --git a/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/config.h b/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index b899befbe3..0000000000
--- a/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright 2022 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define XXX KC_NO
-
-#if defined (MIRYOKU_MAPPING_EXTENDED_THUMBS)
-
-#define LAYOUT_miryoku( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- XXX, K32, K33, K34, K35, K36, K37, XXX \
-)
-
-#else
-
-#define LAYOUT_miryoku( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
-N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT( \
-K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
-K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
-K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- K32, K33, K34, KC_BTN1, KC_BTN2, K35, K36, K37 \
-)
-
-#endif
diff --git a/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/rules.mk b/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/rules.mk
deleted file mode 100644
index 0488a92d46..0000000000
--- a/keyboards/takashicompany/minizone/keymaps/manna-harbour_miryoku/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Copyright 2022 Manna Harbour
-# https://github.com/manna-harbour/miryoku
-
-LTO_ENABLE = yes
diff --git a/keyboards/tau4/config.h b/keyboards/tau4/config.h
index 053f210c07..e36b3b8f2e 100644
--- a/keyboards/tau4/config.h
+++ b/keyboards/tau4/config.h
@@ -17,15 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-
-// Buggy, currently disabled
-/* #define EXTERNAL_EEPROM_I2C_BASE_ADDRESS 0b10100000
-#define EXTERNAL_EEPROM_I2C_ADDRESS(loc) (EXTERNAL_EEPROM_I2C_BASE_ADDRESS | ((((loc) >> 8) & 0x07) << 1))
-#define EXTERNAL_EEPROM_BYTE_COUNT 2048
-#define EXTERNAL_EEPROM_PAGE_SIZE 16
-#define EXTERNAL_EEPROM_ADDRESS_SIZE 1
-#define EXTERNAL_EEPROM_WRITE_TIME 5 */
-
#define RGBLIGHT_LAYERS_RETAIN_VAL
#define OLED_DISPLAY_WIDTH 128
diff --git a/keyboards/teleport/native/ansi/keymaps/default/keymap.c b/keyboards/teleport/native/ansi/keymaps/default/keymap.c
index fcea5c41f3..2780fdda7d 100644
--- a/keyboards/teleport/native/ansi/keymaps/default/keymap.c
+++ b/keyboards/teleport/native/ansi/keymaps/default/keymap.c
@@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* RGB matrix indicator code
It reads the current matrix color, offsets the hue by 30,
-and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
+and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
This is applied to both caps lock, and other indicator keys for layer 1 */
bool rgb_matrix_indicators_user(void) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
@@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
if(IS_LAYER_ON(1)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
diff --git a/keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c b/keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c
index abe6188ccf..e34f0f9d16 100644
--- a/keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c
+++ b/keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c
@@ -147,13 +147,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* RGB matrix indicator code
It reads the current matrix color, offsets the hue by 30,
-and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
+and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
This is applied to both caps lock, and other indicator keys for layer 1 */
bool rgb_matrix_indicators_user(void) {
/* Layer 2 (perf mode on this keymap) is not supposed to have LED refreshes, hence excluded */
if (!IS_LAYER_ON(2)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
@@ -166,7 +166,7 @@ bool rgb_matrix_indicators_user(void) {
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
if(IS_LAYER_ON(1)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
diff --git a/keyboards/teleport/native/ansi/keymaps/via/keymap.c b/keyboards/teleport/native/ansi/keymaps/via/keymap.c
index e1fbd285ec..95a5bc58b1 100644
--- a/keyboards/teleport/native/ansi/keymaps/via/keymap.c
+++ b/keyboards/teleport/native/ansi/keymaps/via/keymap.c
@@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* RGB matrix indicator code
It reads the current matrix color, offsets the hue by 30,
-and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
+and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
This is applied to both caps lock, and other indicator keys for layer 1 */
bool rgb_matrix_indicators_user(void) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
@@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
if(IS_LAYER_ON(1)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
diff --git a/keyboards/teleport/native/config.h b/keyboards/teleport/native/config.h
index 1453bfdc94..99c82df12e 100644
--- a/keyboards/teleport/native/config.h
+++ b/keyboards/teleport/native/config.h
@@ -29,9 +29,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* RGB Matrix driver config */
-#define DRIVER_COUNT 2
-#define DRIVER_ADDR_1 0b1010000
-#define DRIVER_ADDR_2 0b1010011
+#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
+#define IS31FL3733_I2C_ADDRESS_2 IS31FL3733_I2C_ADDRESS_GND_VCC
#define DRIVER_1_LED_TOTAL 46
#define DRIVER_2_LED_TOTAL 39
#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
@@ -61,13 +60,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define ENABLE_RGB_MATRIX_CUSTOM_SINGLE_COLOR_RAINDROPS // 0 Single color raindrops, random keys lighting up at randomized intensity
#define ENABLE_RGB_MATRIX_CUSTOM_STATIC_GAME_MODE // - Game mode sets the entire matrix (static) once, then stops LED refreshes
-#define INDICATOR_MAX_BRIGHTNESS 255
-#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS
- #undef INDICATOR_MAX_BRIGHTNESS
- #define INDICATOR_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
-#endif
-
-
/* Define indicator LED indices, used for lighting effects */
#define W_LED_INDEX 33
#define A_LED_INDEX 47
diff --git a/keyboards/teleport/native/iso/keymaps/default/keymap.c b/keyboards/teleport/native/iso/keymaps/default/keymap.c
index c1ed3cd4f4..b6f2e7ab82 100644
--- a/keyboards/teleport/native/iso/keymaps/default/keymap.c
+++ b/keyboards/teleport/native/iso/keymaps/default/keymap.c
@@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* RGB matrix indicator code
It reads the current matrix color, offsets the hue by 30,
-and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
+and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
This is applied to both caps lock, and other indicator keys for layer 1 */
bool rgb_matrix_indicators_user(void) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
@@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
if(IS_LAYER_ON(1)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
diff --git a/keyboards/teleport/native/iso/keymaps/perfmode/keymap.c b/keyboards/teleport/native/iso/keymaps/perfmode/keymap.c
index 96e9925fd5..ca311edf5e 100644
--- a/keyboards/teleport/native/iso/keymaps/perfmode/keymap.c
+++ b/keyboards/teleport/native/iso/keymaps/perfmode/keymap.c
@@ -147,13 +147,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* RGB matrix indicator code
It reads the current matrix color, offsets the hue by 30,
-and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
+and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
This is applied to both caps lock, and other indicator keys for layer 1 */
bool rgb_matrix_indicators_user(void) {
/* Layer 2 (perf mode on this keymap) is not supposed to have LED refreshes, hence excluded */
if (!IS_LAYER_ON(2)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
@@ -166,7 +166,7 @@ bool rgb_matrix_indicators_user(void) {
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
if(IS_LAYER_ON(1)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
diff --git a/keyboards/teleport/native/iso/keymaps/via/keymap.c b/keyboards/teleport/native/iso/keymaps/via/keymap.c
index c1ed3cd4f4..b6f2e7ab82 100644
--- a/keyboards/teleport/native/iso/keymaps/via/keymap.c
+++ b/keyboards/teleport/native/iso/keymaps/via/keymap.c
@@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* RGB matrix indicator code
It reads the current matrix color, offsets the hue by 30,
-and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
+and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
This is applied to both caps lock, and other indicator keys for layer 1 */
bool rgb_matrix_indicators_user(void) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
@@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
if(IS_LAYER_ON(1)) {
- HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
+ HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
RGB rgb_ind = hsv_to_rgb(hsv_ind);
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
diff --git a/keyboards/teleport/native/native.c b/keyboards/teleport/native/native.c
index c3cac80c22..ab6d588de7 100644
--- a/keyboards/teleport/native/native.c
+++ b/keyboards/teleport/native/native.c
@@ -25,7 +25,7 @@ void keyboard_post_init_kb(void) {
}
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/telophase/rules.mk b/keyboards/telophase/rules.mk
index 1ee3fc58f9..706d610653 100644
--- a/keyboards/telophase/rules.mk
+++ b/keyboards/telophase/rules.mk
@@ -14,7 +14,7 @@ CUSTOM_MATRIX = lite
# project specific files
SRC += matrix.c
-QUANTUM_LIB_SRC += uart.c
+UART_DRIVER_REQUIRED = yes
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
diff --git a/keyboards/terrazzo/config.h b/keyboards/terrazzo/config.h
index 0c7a09033d..d2e76f1de0 100644
--- a/keyboards/terrazzo/config.h
+++ b/keyboards/terrazzo/config.h
@@ -17,8 +17,7 @@
#ifdef LED_MATRIX_ENABLE
-#define LED_DRIVER_ADDR_1 0x74
-#define LED_DRIVER_COUNT 1
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define LED_MATRIX_LED_COUNT 105
#define LED_MATRIX_ROWS 15
#define LED_MATRIX_COLS 7
diff --git a/keyboards/terrazzo/terrazzo.c b/keyboards/terrazzo/terrazzo.c
index cc62225de7..7717b36e65 100644
--- a/keyboards/terrazzo/terrazzo.c
+++ b/keyboards/terrazzo/terrazzo.c
@@ -21,7 +21,7 @@
#include "print.h"
#include "quantum.h"
-const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* https://cdn-learn.adafruit.com/downloads/pdf/adafruit-15x7-7x15-charlieplex-led-matrix-charliewing-featherwing.pdf
*/
diff --git a/keyboards/tetris/keymaps/default/keymap.c b/keyboards/tetris/keymaps/default/keymap.c
index 9e2a96ffc3..057e19d987 100755
--- a/keyboards/tetris/keymaps/default/keymap.c
+++ b/keyboards/tetris/keymaps/default/keymap.c
@@ -94,40 +94,40 @@ void matrix_scan_user(void) {
uint16_t kc = keymap_key_to_keycode(layer, (keypos_t) {.row = 0, .col = i
});
if (kc == KC_TRNS) {
- setrgb(5, 5, 5, (LED_TYPE * ) & led[j]); /* TRNS color 0-255*/
+ setrgb(5, 5, 5, (rgb_led_t * ) & led[j]); /* TRNS color 0-255*/
} else if (kc == KC_NO) {
- setrgb(0, 0, 0, (LED_TYPE * ) & led[j]); /* NO color 0-255*/
+ setrgb(0, 0, 0, (rgb_led_t * ) & led[j]); /* NO color 0-255*/
} else {
if (layer == 1) {
- setrgb(128, 64, 0, (LED_TYPE * ) & led[j]); /* 1 layer 0-255*/
+ setrgb(128, 64, 0, (rgb_led_t * ) & led[j]); /* 1 layer 0-255*/
} else if (layer == 2) {
- setrgb(0, 64, 128, (LED_TYPE * ) & led[j]); /* 2*/
+ setrgb(0, 64, 128, (rgb_led_t * ) & led[j]); /* 2*/
} else if (layer == 3) {
- setrgb(64, 128, 0, (LED_TYPE * ) & led[j]); /* 3*/
+ setrgb(64, 128, 0, (rgb_led_t * ) & led[j]); /* 3*/
} else if (layer == 4) {
- setrgb(0, 128, 64, (LED_TYPE * ) & led[j]); /* 4*/
+ setrgb(0, 128, 64, (rgb_led_t * ) & led[j]); /* 4*/
} else if (layer == 5) {
- setrgb(128, 0, 128, (LED_TYPE * ) & led[j]); /* 5*/
+ setrgb(128, 0, 128, (rgb_led_t * ) & led[j]); /* 5*/
} else if (layer == 6) {
- setrgb(128, 0, 128, (LED_TYPE * ) & led[j]); /* 6*/
+ setrgb(128, 0, 128, (rgb_led_t * ) & led[j]); /* 6*/
} else if (layer == 7) {
- setrgb(128, 128, 0, (LED_TYPE * ) & led[j]); /* 7*/
+ setrgb(128, 128, 0, (rgb_led_t * ) & led[j]); /* 7*/
} else if (layer == 8) {
- setrgb(0, 128, 128, (LED_TYPE * ) & led[j]); /* 8*/
+ setrgb(0, 128, 128, (rgb_led_t * ) & led[j]); /* 8*/
} else if (layer == 9) {
- setrgb(128, 192, 64, (LED_TYPE * ) & led[j]); /* 9*/
+ setrgb(128, 192, 64, (rgb_led_t * ) & led[j]); /* 9*/
} else if (layer == 10) {
- setrgb(64, 192, 128, (LED_TYPE * ) & led[j]); /* 10*/
+ setrgb(64, 192, 128, (rgb_led_t * ) & led[j]); /* 10*/
} else if (layer == 11) {
- setrgb(128, 64, 192, (LED_TYPE * ) & led[j]); /* 11*/
+ setrgb(128, 64, 192, (rgb_led_t * ) & led[j]); /* 11*/
} else if (layer == 12) {
- setrgb(64, 128, 192, (LED_TYPE * ) & led[j]); /* 12*/
+ setrgb(64, 128, 192, (rgb_led_t * ) & led[j]); /* 12*/
} else if (layer == 13) {
- setrgb(128, 192, 0, (LED_TYPE * ) & led[j]); /* 13*/
+ setrgb(128, 192, 0, (rgb_led_t * ) & led[j]); /* 13*/
} else if (layer == 14) {
- setrgb(192, 0, 128, (LED_TYPE * ) & led[j]); /* 14*/
+ setrgb(192, 0, 128, (rgb_led_t * ) & led[j]); /* 14*/
} else if (layer == 15) {
- setrgb(0, 192, 128, (LED_TYPE * ) & led[j]); /* 15*/
+ setrgb(0, 192, 128, (rgb_led_t * ) & led[j]); /* 15*/
}
}
}
diff --git a/keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c b/keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index 77fa5d7a70..0000000000
--- a/keyboards/the_royal/liminal/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base
- * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
- * │Hom│Tab  │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│ BsPc│
- * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │PgU│HyEsc │ A │ S │ D │ F │ G │ H │ J │ K │ L │" '│   Enter│
- * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
- * │PgD│Shift   │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ ↑Shft│
- * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
- * │End│Ctrl│Opt│Cmd │        Space-Raise        │←Cmd│↓Lw│→Opt│
- * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
- */
-[_BASE] = LAYOUT_base_kit_all(
- KC_HOME, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_BSPC,
- KC_PGUP, HY_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, XXXXXXX, KC_ENT,
- KC_PGDN, KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, UP_RSFT,
- KC_END, KC_LCTL, KC_LOPT, KC_LCMD, XXXXXXX, SPC_RAI, XXXXXXX, LFT_CMD, DWN_LWR, RGT_OPT
-),
-
-/* Lower
- * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
- * │Nxt│Del  │BrD│BrU│Msn│LHP│   │   │   │   │   │ ↑ │Mut│ SlpD│
- * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │VlU│HyCaps│   │   │NxW│PvT│Bck│Fwd│NxT│   │ ← │ → │    Play│
- * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
- * │VlD│        │   │   │   │1PX│1Ps│   │   │   │ ↓ │   │      │
- * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
- * │Prv│    │   │    │                           │    │   │    │
- * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
- */
-[_LOWER] = LAYOUT_base_kit_all(
- KC_MNXT, KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, _______, _______, KC_UP, KC_MUTE, MC_SLPD,
- KC_VOLU, HY_CAPS, _______, _______, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, _______, KC_LEFT, KC_RGHT, XXXXXXX, KC_MPLY,
- KC_VOLD, _______, XXXXXXX, _______, _______, _______, PX_AFLL, OP_AFLL, _______, _______, _______, KC_DOWN, _______, _______,
- KC_MPRV, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______
-),
-
-/* Raise
- * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
- * │Nxt│~ `  │! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│} ]│     │
- * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │VlU│      │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│   │: ;│        │
- * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
- * │VlD│        │ F7│ F8│ F9│F10│F11│F12│   │{ [│} ]│| \│ ⇞Shft│
- * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
- * │Prv│    │   │    │                           │↖︎Cmd│⇟Fn│↘︎Opt│
- * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
- */
-[_RAISE] = LAYOUT_base_kit_all(
- KC_MNXT, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, _______,
- KC_VOLU, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, _______, KC_SCLN, XXXXXXX, _______,
- KC_VOLD, _______, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_LBRC, KC_RBRC, KC_BSLS, PGU_SFT,
- KC_MPRV, _______, _______, _______, XXXXXXX, _______, XXXXXXX, HOM_CMD, PGD_LWR, END_OPT
-),
-
-/* Adjust
- * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
- * │   │Make │   │   │EEP│RST│   │   │   │   │   │   │   │     │
- * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │   │      │   │   │   │   │   │   │   │   │   │   │        │
- * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
- * │   │        │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
- * │   │    │   │    │                           │    │   │    │
- * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
- */
-[_ADJUST] = LAYOUT_base_kit_all(
- _______, QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______,
- _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______
-),
-
-/* Blank layer
- * ┌───┬─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
- * │   │     │   │   │   │   │   │   │   │   │   │   │   │     │
- * ├───┼─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │   │      │   │   │   │   │   │   │   │   │   │   │        │
- * ├───┼──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤
- * │   │        │   │   │   │   │   │   │   │   │   │   │      │
- * ├───┼────┬───┼───┴┬──┴───┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬────┤
- * │   │    │   │    │                           │    │   │    │
- * └───┴────┴───┴────┴───────────────────────────┴────┴───┴────┘
- */
-/*
-[_BLANK] = LAYOUT_base_kit_all(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______,
- _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______
-),
-*/
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h b/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h
deleted file mode 100644
index 40b3fd3ecc..0000000000
--- a/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2020 Joseph Wasson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define SPACE_COUNT 3
-
-#define TEMPLATE( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
- K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \
-) { \
- { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
- { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \
- { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \
- { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D }, \
- { K40, K41, K42, KC_NO, K44, K45, K46, KC_NO, K48, K49, KC_NO, K4B, K4C, KC_NO }\
-}
diff --git a/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/keymap.c b/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/keymap.c
deleted file mode 100644
index 7812add812..0000000000
--- a/keyboards/thevankeyboards/bananasplit/keymaps/talljoe/keymap.c
+++ /dev/null
@@ -1 +0,0 @@
-// This space intentionally left blank
diff --git a/keyboards/thevankeyboards/minivan/keymaps/dcompact/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/dcompact/keymap.c
index a036d563a1..614fe97710 100644
--- a/keyboards/thevankeyboards/minivan/keymaps/dcompact/keymap.c
+++ b/keyboards/thevankeyboards/minivan/keymaps/dcompact/keymap.c
@@ -15,7 +15,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
// Custom Keycodes and Combinations Used
#define DEL_SHF SFT_T(KC_DEL)
diff --git a/keyboards/thevankeyboards/minivan/keymaps/halvves/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/halvves/keymap.c
index 6ef5ecc2c6..ece72f3319 100644
--- a/keyboards/thevankeyboards/minivan/keymaps/halvves/keymap.c
+++ b/keyboards/thevankeyboards/minivan/keymaps/halvves/keymap.c
@@ -180,8 +180,8 @@ void keyboard_post_init_user(void) {
rgblight_mode_noeeprom(RGBLIGHT_EFFECT_BREATHING + 2);
// set other led's to off
- setrgb(0, 0, 0, (LED_TYPE *)&led[0]);
- setrgb(0, 0, 0, (LED_TYPE *)&led[1]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[0]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[1]);
rgblight_set();
#endif
}
@@ -190,23 +190,23 @@ layer_state_t layer_state_set_user(layer_state_t state) {
state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
#ifdef RGBLIGHT_ENABLE
if (layer_state_cmp(state, _ADJUST)) {
- setrgb(70, 255, 200, (LED_TYPE *)&led[0]);
- setrgb(255, 70, 100, (LED_TYPE *)&led[1]);
+ setrgb(70, 255, 200, (rgb_led_t *)&led[0]);
+ setrgb(255, 70, 100, (rgb_led_t *)&led[1]);
} else if (layer_state_cmp(state, _LOWER)) {
- setrgb(70, 255, 200, (LED_TYPE *)&led[0]);
- setrgb(0, 0, 0, (LED_TYPE *)&led[1]);
+ setrgb(70, 255, 200, (rgb_led_t *)&led[0]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[1]);
} else if (layer_state_cmp(state, _RAISE)) {
- setrgb(0, 0, 0, (LED_TYPE *)&led[0]);
- setrgb(255, 70, 100, (LED_TYPE *)&led[1]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[0]);
+ setrgb(255, 70, 100, (rgb_led_t *)&led[1]);
} else if (layer_state_cmp(state, _UTIL)) {
- setrgb(200, 70, 225, (LED_TYPE *)&led[0]);
- setrgb(200, 70, 225, (LED_TYPE *)&led[1]);
+ setrgb(200, 70, 225, (rgb_led_t *)&led[0]);
+ setrgb(200, 70, 225, (rgb_led_t *)&led[1]);
} else if (layer_state_cmp(state, _MOUSE)) {
- setrgb(255, 145, 5, (LED_TYPE *)&led[0]);
- setrgb(255, 145, 5, (LED_TYPE *)&led[1]);
+ setrgb(255, 145, 5, (rgb_led_t *)&led[0]);
+ setrgb(255, 145, 5, (rgb_led_t *)&led[1]);
} else {
- setrgb(0, 0, 0, (LED_TYPE *)&led[0]);
- setrgb(0, 0, 0, (LED_TYPE *)&led[1]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[0]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[1]);
}
rgblight_set();
diff --git a/keyboards/thevankeyboards/minivan/keymaps/hvp/config.h b/keyboards/thevankeyboards/minivan/keymaps/hvp/config.h
deleted file mode 100644
index 8b64f40337..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/hvp/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#pragma once
-
-#define TAPPING_TERM 150
-#define PERMISSIVE_HOLD \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/hvp/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/hvp/keymap.c
deleted file mode 100644
index 0600856660..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/hvp/keymap.c
+++ /dev/null
@@ -1,54 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "hvp.c"
-
-#define _QW 0
-#define _L1 1
-#define _L2 2
-#define _L3 3
-#define _L4 4
-
-#define LT4_TAB LT(_L4, KC_TAB)
-#define LT3_ESC LT(_L3, KC_ESC)
-
-enum custom_keycodes {
- QW = SAFE_RANGE,
- L1,
- L2,
- L3,
- L4
-};
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_arrow( /* Qwerty */
- LT4_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LT3_ESC, KC_A, KC_S, KC_D, LT(3,KC_F), LT(4,KC_G), KC_H, KC_J, KC_K, KC_L, TD(TD1), TD(TD2),
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, TD(TD3), SC_SENT,
- KC_LCTL, KC_LGUI, KC_LALT, LT(_L2,KC_ENT), LT(_L1,KC_SPC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
- ),
- [_L1] = LAYOUT_arrow( /* LAYER 1 */
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
- KC_DELETE, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, _______, _______, _______, _______, _______, _______, KC_UNDERSCORE, KC_PLUS, KC_LEFT_CURLY_BRACE, KC_RIGHT_CURLY_BRACE, KC_PIPE,
- _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
- ),
- [_L2] = LAYOUT_arrow( /* LAYER 2 */
- KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRCUMFLEX, KC_AMPERSAND, KC_ASTERISK, KC_LEFT_PAREN, KC_RIGHT_PAREN, KC_BSPC,
- KC_DELETE, _______, _______, _______, _______, _______, _______, KC_UNDERSCORE, KC_PLUS, KC_LEFT_CURLY_BRACE, KC_RIGHT_CURLY_BRACE, KC_PIPE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END
- ),
- [_L3] = LAYOUT_arrow( /* LAYER 3 */
- KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- _______, _______, _______, D_NAVI, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_PSCR,
- _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______,
- _______, _______, KC_MUTE, KC_MPLY, KC_MSTP, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
- ),
-
- [_L4] = LAYOUT_arrow( /* LAYER 4 */
- _______, RGB_TOG, RGB_MOD, RGB_RMOD, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______,
- _______, RGB_M_P, RGB_HUD, RGB_HUI, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______,
- KC_PSCR, _______, RGB_SAD, RGB_SAI, _______, _______, KC_0, KC_1, KC_2, KC_3, _______, _______,
- QK_BOOT, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______
- )
-}; \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/hvp/readme.md b/keyboards/thevankeyboards/minivan/keymaps/hvp/readme.md
deleted file mode 100644
index 60ee3d6cd0..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/hvp/readme.md
+++ /dev/null
@@ -1,10 +0,0 @@
-Keyboard: Minivan 40% keyboard
-Keys: A compact 44% keyboard.
-Layout: Swedish characters on main layer using tap dance. Built for Eurkey keyboard layout.
-Flash instructions: Flash using dfu, will req the hvp user space to compile.
-
-> make make thevankeyboards/minivan:hvp:dfu
-
-Links:
-Github - https://github.com/qmk/qmk_firmware/tree/master/keyboards/thevankeyboards/minivan
-Eurkey layout - https://eurkey.steffen.bruentjen.eu/
diff --git a/keyboards/thevankeyboards/minivan/keymaps/hvp/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/hvp/rules.mk
deleted file mode 100644
index f039e269fa..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/hvp/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-RGBLIGHT_ENABLE = no
-TAP_DANCE_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c
index ae3619859a..0999c9490c 100644
--- a/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c
+++ b/keyboards/thevankeyboards/minivan/keymaps/jetpacktuxedo/keymap.c
@@ -50,8 +50,8 @@ void keyboard_post_init_user(void) {
rgblight_mode_noeeprom(RGBLIGHT_EFFECT_BREATHING + 2);
// Init the first two LEDs to a static color
- setrgb(0, 0, 0, (LED_TYPE *)&led[0]);
- setrgb(0, 0, 0, (LED_TYPE *)&led[1]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[0]);
+ setrgb(0, 0, 0, (rgb_led_t *)&led[1]);
rgblight_set();
#endif //RGBLIGHT_ENABLE
}
@@ -75,8 +75,8 @@ layer_state_t layer_state_set_user(layer_state_t state){
led1r = 255;
}
- setrgb(led0r, led0g, led0b, (LED_TYPE *)&led[0]);
- setrgb(led1r, led1g, led1b, (LED_TYPE *)&led[1]);
+ setrgb(led0r, led0g, led0b, (rgb_led_t *)&led[0]);
+ setrgb(led1r, led1g, led1b, (rgb_led_t *)&led[1]);
rgblight_set();
#endif //RGBLIGHT_ENABLE
return state;
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c
index 145da6b2a5..39eb45e15e 100644
--- a/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c
+++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/keymap.c
@@ -192,8 +192,8 @@ void keyboard_post_init_user (void) {
rgblight_mode_noeeprom (RGBLIGHT_EFFECT_BREATHING + 2);
// Init the first and last LEDs to a static color.
- setrgb (0, 0, 0, (LED_TYPE *)&led[0]); // Led[0] is led 0
- setrgb (0, 0, 0, (LED_TYPE *)&led[2]); // 2nd led
+ setrgb (0, 0, 0, (rgb_led_t *)&led[0]); // Led[0] is led 0
+ setrgb (0, 0, 0, (rgb_led_t *)&led[2]); // 2nd led
// The logic seems to be to establish the effect first, and then toggle it on/off.
# ifdef STARTUP_MID_LED_OFF
@@ -301,8 +301,8 @@ void isolate_rgblight_set (void) {
led2r = 0;
led2g = 0;
led2b = 0;
- setrgb(led0r, led0g, led0b, (LED_TYPE *)&led[0]); // Led 0
- setrgb(led2r, led2g, led2b, (LED_TYPE *)&led[2]); // Led 2
+ setrgb(led0r, led0g, led0b, (rgb_led_t *)&led[0]); // Led 0
+ setrgb(led2r, led2g, led2b, (rgb_led_t *)&led[2]); // Led 2
}
rgblight_set ();
# endif
@@ -326,8 +326,8 @@ void indicate_fun_stay (void) {
led0g = 50; //
led2r = 255; // red
}
- setrgb(led0r, led0g, led0b, (LED_TYPE *)&led[0]); // Led 0
- setrgb(led2r, led2g, led2b, (LED_TYPE *)&led[2]); // Led 2
+ setrgb(led0r, led0g, led0b, (rgb_led_t *)&led[0]); // Led 0
+ setrgb(led2r, led2g, led2b, (rgb_led_t *)&led[2]); // Led 2
isolate_rgblight_set ();
# endif //RGBLIGHT_ENABLE
@@ -369,8 +369,8 @@ void indicate_base (void) {
led2g = 255;
led2b = 255;
}
- setrgb(led0r, led0g, led0b, (LED_TYPE *)&led[0]); // Led 0
- setrgb(led2r, led2g, led2b, (LED_TYPE *)&led[2]); // Led 2
+ setrgb(led0r, led0g, led0b, (rgb_led_t *)&led[0]); // Led 0
+ setrgb(led2r, led2g, led2b, (rgb_led_t *)&led[2]); // Led 2
isolate_rgblight_set ();
# endif //RGBLIGHT_ENABLE
@@ -535,8 +535,8 @@ void set_led_colors_ (layer_state_t state) {
//---
// pushes the configuration
- setrgb (led0r, led0g, led0b, (LED_TYPE *)&led[0]); // Led 0
- setrgb (led2r, led2g, led2b, (LED_TYPE *)&led[2]); // Led 2
+ setrgb (led0r, led0g, led0b, (rgb_led_t *)&led[0]); // Led 0
+ setrgb (led2r, led2g, led2b, (rgb_led_t *)&led[2]); // Led 2
isolate_rgblight_set (); // Activates the led color change, after on/off check.
diff --git a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h
deleted file mode 100644
index 7ecb2353dd..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/config.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright 2020 Joseph Wasson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-
-#define SPACE_COUNT 2
-
-#define TEMPLATE( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
- K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \
-) LAYOUT_arrow( \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K0D, \
- K41, K49, K42, K44, K46, K3C, K0B, K00, K3D \
-)
-
-#define TEMPLATE_ALT( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
- K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \
-) LAYOUT_arrow( \
- K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K41, K49, K42, K44, K46, K48, K49, K4B, K4C \
-)
-
-#define TEMPLATE_ADJUST( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
- K40, K41, K42, K44, K45, K46, K48, K49, K4B, K4C \
-) LAYOUT_arrow( \
- K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K2D, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2C, \
- K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
- K40, K41, K42, K44, K46, K48, K0B, K0C, K4C \
-)
-
-#define TEMPLATE_RESET LAYOUT_arrow( \
- QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, \
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT)
diff --git a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c
deleted file mode 100644
index 7812add812..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/keymap.c
+++ /dev/null
@@ -1 +0,0 @@
-// This space intentionally left blank
diff --git a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk b/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk
deleted file mode 100644
index a4e40d0ba6..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/talljoe-minivan/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-USER_NAME := talljoe
-
-COMMAND_ENABLE = no # Commands for debug and configuration
diff --git a/keyboards/thevankeyboards/minivan/keymaps/tominabox1/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/tominabox1/keymap.c
deleted file mode 100644
index a465da3bdf..0000000000
--- a/keyboards/thevankeyboards/minivan/keymaps/tominabox1/keymap.c
+++ /dev/null
@@ -1,74 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "tominabox1.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /*
- * |GESC| Q | W | F | P | G | J | L | U | Y | ; | BSPC |
- * | TAB | A | R | S | T | D | H | N | E | I | O | ' |
- * |SHIFT | Z | X | C | V | B | K | M | , | UP | . | / |
- * |CTRL | WIN | ALT | ENTR | SPACE | LFT |DOWN|RGHT|FKEY|
- */
-
- [_BASE] = LAYOUT_arrow_wrapper(
- __________________MINIVAN1_________________,
- __________________MINIVAN2_________________,
- __________________MINIVAN3_________________,
- __________________MINIVAN4_________________
- ),
-
- /*
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | DEL |
- * | | | | | | | | _ | + | { | } | PIPE|
- * |SHIFT | | | | | | | |PGDN| UP | ? | / |
- * |CTRL | WIN | ALT | ENTR | SPACE | LFT |DOWN|RGHT|FKEY|
- */
-
- [_LOWER] = LAYOUT_arrow_wrapper(
- _________________LOWER_1___________________,
- _________________LOWER_2___________________,
- __________________MININUM3_________________,
- __________________MININUM4_________________
- ),
-
- /*
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BSPC |
- * | INS | | | | | | | - | = | [ | ] | \ |
- * | | | | | | | | | | | / | |
- * |CTRL | WIN | ALT | ENTR | SPACE | LFT |DOWN|RGHT|FKEY|
- */
-
- [_RAISE] = LAYOUT_arrow_wrapper(
- ___________________RAISE1__________________,
- ___________________RAISE2__________________,
- ___________________RVAN_3__________________,
- ___________________RVAN_4__________________
- ),
-
- /*
- * |REST|EERS| | | | | | | | | | |
- * | | | | | | | | | | | | |
- * | | | | | | | | | | | | |
- * | | | | ENTR | SPACE | | | | |
- */
-
- [_ADJUST] = LAYOUT_arrow_wrapper(
- ___________________ADJST1__________________,
- ___________________ADJST2__________________,
- ___________________ADJVAN3_________________,
- ___________________ADJVAN4_________________
- ),
-
- /*
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10| |
- * | | | | | | | | | |F11 | F12| |
- * | | | | | | | | | | | | |
- * | | | | | | FKEY | | | |
- */
-
- [_FKEY] = LAYOUT_arrow_wrapper(
- ___________________FKEY1___________________,
- ___________________FKEY2___________________,
- ___________________FVAN_3__________________,
- ___________________FVAN_4__________________
- ),
- };
diff --git a/keyboards/tkc/osav2/keymaps/brandonschlack/config.h b/keyboards/tkc/osav2/keymaps/brandonschlack/config.h
deleted file mode 100644
index e74d93c35f..0000000000
--- a/keyboards/tkc/osav2/keymaps/brandonschlack/config.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#pragma once
-
-#define USE_LEDS_FOR_LAYERS
-#define STOPLIGHT_LED
-
-#define TOP_LED C7
-#define MIDDLE_LED C6
-#define BOTTOM_LED B6
-
-// #define LED_PIN_FLIP
-#ifdef LED_PIN_FLIP
- #define LED_ON(flag) !flag
-#else
- #define LED_ON(flag) flag
-#endif
diff --git a/keyboards/tkc/osav2/keymaps/brandonschlack/keymap.c b/keyboards/tkc/osav2/keymaps/brandonschlack/keymap.c
deleted file mode 100755
index 4e4d890d06..0000000000
--- a/keyboards/tkc/osav2/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,243 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-/**
- * Layer Names
- *
- * Layers mostly used for macro keys
- */
-#define _REEDER _M1
-#define _MAIL _M2
-#define _REEDER_FN _M1_FN1
-#define _MAIL_FN _M2_FN1
-
-/**
- * Keycodes & Macros
- */
-#define TG_BASE TO(_BASE)
-#define TG_REDR TO(_REEDER)
-#define TG_MAIL TO(_MAIL)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Ply│ │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│         │& 7│* 8│( 9│) 0│_ -│+ =│| \│~ `│
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │VlU│ │Tab  │ Q │ W │ E │ R │ T │         │ Y │ U │ I │ O │ P │{ [│} ]│ Bspc│
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │VlD│ │HyCaps│ A │ S │ D │ F │ G │         │ H │ J │ K │ L │: ;│" '│   Enter│
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │LShift  │ Z │ X │ C │ V │ B │     │ B │ N │ M │< ,│> .│? /│  Shft│Fn │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │Opt  │     │Cmd  │Spc/Lwr│Ctrl│   │   Spc/Rai│  Cmd│           │  Opt│
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_BASE] = LAYOUT_all(
- KC_MPLY, KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_VOLU, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_VOLD, HY_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, LOWER,
- KC_LOPT, KC_LCMD, SPC_LWR, KC_LCTL, SPC_RAI, KC_RCMD, KC_ROPT
-),
-/* Reeder
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │ H │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ K │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ J │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_REEDER] = LAYOUT_all(
- KC_H, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_K, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_J, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Mail
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_MAIL] = LAYOUT_all(
- G(KC_BSPC), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Lower
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Mut│ │Mke│ F1│ F2│ F3│ F4│ F5│ F6│         │ F7│ F8│ F9│F10│F11│F12│LHP│SLP│
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │Nxt│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │PgU│Hom│End│  Del│
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │Prv│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │Prv│Nxt│PgD│ ↑ │   Play │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │LYR│Thm│   │   │   │     │   │   │   │   │ ← │ ↓ │→ Shft│   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_LOWER] = LAYOUT_all(
- KC_MUTE, QM_MAKE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MC_LHPD, MC_SLPD,
- KC_MNXT, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_END, KC_DEL,
- KC_MPRV, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, KC_MPRV, KC_MNXT, KC_PGDN, KC_UP, KC_MPLY,
- _______, RGB_LYR, RGB_THM, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, RGT_SFT, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Reeder Function
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │ L │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │ P │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │ N │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_REEDER_FN] = LAYOUT_all(
- KC_L, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_N, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Mail
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Del│ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │It+│ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │It-│ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_MAIL_FN] = LAYOUT_all(
- KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- A(G(KC_LBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- A(G(KC_RBRC)), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Raise
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_RAISE] = LAYOUT_all(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-),
-/* Adjust
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │Bse│ │Mke│   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │Rdr│ │RMod │RH+│RS+│RV+│Sp+│   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │Mai│ │RTgl  │RH-│RS-│RV-│Sp-│   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │LYR│Thm│   │EEP│Rst│     │Rst│   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-[_ADJUST] = LAYOUT_all(
- TG_BASE, QM_MAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_REDR, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- TG_MAIL, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, RGB_LYR, RGB_THM, _______, EE_CLR, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-)
-/* Layout
- * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┐         ┌───┬───┬───┬───┬───┬───┬───┬───┐
- * │   │ │   │   │   │   │   │   │   │         │   │   │   │   │   │   │   │   │
- * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┘       ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤
- * │   │ │     │   │   │   │   │   │         │   │   │   │   │   │   │   │     │
- * ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┐        └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
- * │   │ │      │   │   │   │   │   │         │   │   │   │   │   │   │        │
- * └───┘ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐     ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤
- *       │        │   │   │   │   │   │     │   │   │   │   │   │   │      │   │
- *       ├─────┬──┴──┬┴───┴┬──┴───┴┬──┴─┐   ├───┴───┴──┬┴───┴┬──┴───┴────┬─┴───┤
- *       │     │     │     │       │    │   │          │     │           │     │
- *       └─────┘     └─────┴───────┴────┘   └──────────┴─────┘           └─────┘
- */
-/*
-[_BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
-
-)
-*/
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
- state = update_tri_layer_state(state, _REEDER, _LOWER, _REEDER_FN);
- state = update_tri_layer_state(state, _MAIL, _LOWER, _MAIL_FN);
- return state;
-}
-
-#ifdef USE_LEDS_FOR_LAYERS
-bool led_update_keymap(led_t led_state) {
- writePin(TOP_LED, LED_ON(IS_LAYER_ON(_REEDER) || IS_LAYER_ON(_MAIL))); // Use for Macro Layer
- writePin(MIDDLE_LED, LED_ON(IS_LAYER_ON(_FN1))); // Use for Layer 2
- writePin(BOTTOM_LED, LED_ON(led_state.caps_lock)); // Use for Caps Lock
- return false; // Override default set by KB
-}
-#endif
diff --git a/keyboards/tkc/osav2/keymaps/brandonschlack/rules.mk b/keyboards/tkc/osav2/keymaps/brandonschlack/rules.mk
deleted file mode 100755
index 9c896e0d81..0000000000
--- a/keyboards/tkc/osav2/keymaps/brandonschlack/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-# Build Options
-# comment out to disable the options.
-#
-BACKLIGHT_ENABLE = no
-MOUSEKEY_ENABLE = yes # Mouse keys
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-VELOCIKEY_ENABLE = no
-
diff --git a/keyboards/tkc/osav2/keymaps/stanrc85/keymap.c b/keyboards/tkc/osav2/keymaps/stanrc85/keymap.c
deleted file mode 100644
index 18d9edb850..0000000000
--- a/keyboards/tkc/osav2/keymaps/stanrc85/keymap.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Copyright 2019 jrfhoutx
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "stanrc85.h"
-
-
-// Each layer gets a name for readability, which is then used in the keymap matrix below.
-// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-// Layer names don't all need to be of the same length, obviously, and you can also skip them
-// entirely and just use numbers.
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_all(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
- KC_LCTL, KC_LALT, LT_BPCF, KC_LGUI, LT_SPCF, TD_TWIN, TD_TCTL
- ),
-
- [_DEFAULT] = LAYOUT_all(
- KC_ESC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
- KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
- KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, KC_RALT, KC_RCTL
- ),
-
- [_FN1_60] = LAYOUT_all(
- _______, KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL,
- _______, _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, _______, KC_HOME, KC_UP, KC_END, KC_PSCR, _______, _______, KC_INS,
- _______, KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
- _______, KC_RDP, _______, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_FN2_60] = LAYOUT_all(
- BL_TOGG, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, RGB_SAI, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______,
- BL_UP, VK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT,
- BL_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, TG(_DEFAULT)
- )
-}; \ No newline at end of file
diff --git a/keyboards/tkc/portico/config.h b/keyboards/tkc/portico/config.h
index c9a25e843c..265e0abbc3 100644
--- a/keyboards/tkc/portico/config.h
+++ b/keyboards/tkc/portico/config.h
@@ -39,17 +39,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# undef ENABLE_RGB_MATRIX_DIGITAL_RAIN
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
-# define DRIVER_ADDR_1 0x74
-# define DRIVER_ADDR_2 0x77
-# define DRIVER_COUNT 2
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
# define DRIVER_1_LED_TOTAL 36
# define DRIVER_2_LED_TOTAL 31
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
#else
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 67
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
+#define IS31FL3731_LED_COUNT 67
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/tkc/portico/portico.c b/keyboards/tkc/portico/portico.c
index e41de1c232..bd60df13e2 100644
--- a/keyboards/tkc/portico/portico.c
+++ b/keyboards/tkc/portico/portico.c
@@ -17,9 +17,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "portico.h"
-#ifdef RGB_MATRIX_ENABLE
+#ifdef RGB_BACKLIGHT_PORTICO
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_PORTICO)
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
{ 0, C2_1, C3_1, C4_1 },
{ 0, C1_1, C3_2, C4_2 },
{ 0, C1_2, C2_2, C4_3 },
@@ -92,7 +96,9 @@ const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
{ 1, C9_16, C7_15, C6_15 },
{ 1, C8_16, C7_16, C6_16 }
};
+#endif
+#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = {
{
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 },
diff --git a/keyboards/tkc/portico/rules.mk b/keyboards/tkc/portico/rules.mk
index 4e382541f4..6bc05372af 100644
--- a/keyboards/tkc/portico/rules.mk
+++ b/keyboards/tkc/portico/rules.mk
@@ -19,4 +19,4 @@ SRC += keyboards/wilba_tech/wt_main.c \
quantum/color.c \
drivers/led/issi/is31fl3731.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/tkc/portico68v2/config.h b/keyboards/tkc/portico68v2/config.h
index fd0191d101..2c8ecf806d 100644
--- a/keyboards/tkc/portico68v2/config.h
+++ b/keyboards/tkc/portico68v2/config.h
@@ -17,8 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DRIVER_ADDR_1 0b0110000
-#define DRIVER_COUNT 1
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
#define DRIVER_1_LED_TOTAL 82
#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
#define DRIVER_INDICATOR_LED_TOTAL 0
diff --git a/keyboards/tkc/portico68v2/portico68v2.c b/keyboards/tkc/portico68v2/portico68v2.c
index 83a365f7c0..90d8c12fca 100644
--- a/keyboards/tkc/portico68v2/portico68v2.c
+++ b/keyboards/tkc/portico68v2/portico68v2.c
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t g_is31fl3741_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS18_SW1, CS17_SW1, CS16_SW1}, /* RGB1 */
{0, CS18_SW2, CS17_SW2, CS16_SW2}, /* RGB2 */
{0, CS18_SW3, CS17_SW3, CS16_SW3}, /* RGB3 */
diff --git a/keyboards/tkc/portico75/config.h b/keyboards/tkc/portico75/config.h
index e72c95981b..8146141bf0 100644
--- a/keyboards/tkc/portico75/config.h
+++ b/keyboards/tkc/portico75/config.h
@@ -72,15 +72,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
-# define DRIVER_ADDR_1 0b0110000
-# define DRIVER_COUNT 1
+# define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
# define DRIVER_1_LED_TOTAL 98
# define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
# define DRIVER_INDICATOR_LED_TOTAL 0
#else
// WT_RGB IS31FL3741 driver code
-# define DRIVER_COUNT 1
-# define RGB_MATRIX_LED_COUNT 98
+# define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
+# define IS31FL3741_LED_COUNT 98
# define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/tkc/portico75/keymaps/via/rules.mk b/keyboards/tkc/portico75/keymaps/via/rules.mk
index 3e4e4a229d..1706771222 100644
--- a/keyboards/tkc/portico75/keymaps/via/rules.mk
+++ b/keyboards/tkc/portico75/keymaps/via/rules.mk
@@ -9,4 +9,4 @@ SRC += keyboards/wilba_tech/wt_main.c \
quantum/color.c \
drivers/led/issi/is31fl3741.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/tkc/portico75/portico75.c b/keyboards/tkc/portico75/portico75.c
index 568f75901f..0a22a37d4e 100644
--- a/keyboards/tkc/portico75/portico75.c
+++ b/keyboards/tkc/portico75/portico75.c
@@ -18,9 +18,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "portico75.h"
-#ifdef RGB_MATRIX_ENABLE
+#ifdef RGB_BACKLIGHT_PORTICO75
+# include "drivers/led/issi/is31fl3741.h"
+#endif
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_PORTICO75)
+
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
{0, CS18_SW1, CS17_SW1, CS16_SW1},
{0, CS18_SW2, CS17_SW2, CS16_SW2},
{0, CS18_SW3, CS17_SW3, CS16_SW3},
@@ -134,8 +138,10 @@ const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
{0, CS33_SW5, CS32_SW5, CS31_SW5},
{0, CS33_SW6, CS32_SW6, CS31_SW6},
{0, CS33_SW7, CS32_SW7, CS31_SW7},
-
};
+#endif
+
+#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = { {
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14},
{ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29},
diff --git a/keyboards/tkc/tkc1800/keymaps/yanfali/keymap.c b/keyboards/tkc/tkc1800/keymaps/yanfali/keymap.c
deleted file mode 100644
index df8f2b9caf..0000000000
--- a/keyboards/tkc/tkc1800/keymaps/yanfali/keymap.c
+++ /dev/null
@@ -1,90 +0,0 @@
-/* Copyright 2017 Mathias Andersson <wraul@dbox.se>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-//Layers
-
-enum {
- BASE = 0,
- FUNCTION,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Keymap BASE: (Base Layer) Default Layer
- * ,-------------------------------------------------------. ,-------------------.
- * |Esc| F1| F2| F3| F4| | F5| F6| F7| F8| | F9|F10|F11|F12| |Ins |Home|PgUp|PrSc|
- * `-------------------------------------------------------' |-------------------|
- * |Del |End |PgDn|ScrL|
- * ,-----------------------------------------------------------. |-------------------|
- * | ~ | 1 | 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp | |NumL| / | * |Paus|
- * |-----------------------------------------------------------| |-------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ | | 7 | 8 | 9 | - |
- * |-----------------------------------------------------------| |-------------------|
- * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return | | 4 | 5 | 6 | + |
- * |-----------------------------------------------------------' |-------------------|
- * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | Up | 1 | 2 | 3 | Ent|
- * |--------------------------------------------------------'----`--------------| |
- * |Ctrl|Gui |Alt | Space |Alt |Gui|Ctr|Left |Down|Rght| 0 | . | |
- * `---------------------------------------------------------------------------------'
- */
- [BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_HOME, KC_PGUP, KC_PSCR,
- KC_DEL, KC_END, KC_PGDN, KC_SCRL,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, XXXXXXX, KC_NUM, KC_PSLS, KC_PAST, KC_PAUS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9, KC_PMNS,
- LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, XXXXXXX, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS,
- KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, XXXXXXX,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(FUNCTION), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT
- ),
- [FUNCTION] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______,
- _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, XXXXXXX,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
-
-#ifdef OLED_ENABLE
-bool oled_task_user(void) {
- oled_write_P(PSTR("TKC1800\n"),false);
- // Host Keyboard Layer Status
- oled_write_P(PSTR("Layer: "), false);
-
- switch (get_highest_layer(layer_state)) {
- case BASE:
- oled_write_P(PSTR("Base\n"), false);
- break;
- case FUNCTION:
- oled_write_P(PSTR("Function\n"), false);
- break;
- default:
- // Or use the write_ln shortcut over adding '\n' to the end of your string
- oled_write_ln_P(PSTR("Undefined"), false);
- }
-
- // Host Keyboard LED Status
- led_t led_state = host_keyboard_led_state();
- oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
- oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
- oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
-
- return false;
-}
-#endif
diff --git a/keyboards/tkc/tkc1800/keymaps/yanfali/rules.mk b/keyboards/tkc/tkc1800/keymaps/yanfali/rules.mk
deleted file mode 100644
index 517f469b6d..0000000000
--- a/keyboards/tkc/tkc1800/keymaps/yanfali/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-OLED_ENABLE = no
diff --git a/keyboards/tkw/grandiceps/rev2/info.json b/keyboards/tkw/grandiceps/rev2/info.json
index 786f381c4f..cd80948196 100644
--- a/keyboards/tkw/grandiceps/rev2/info.json
+++ b/keyboards/tkw/grandiceps/rev2/info.json
@@ -2,5 +2,8 @@
"keyboard_name": "Grandiceps Split rev2",
"usb": {
"device_version": "0.0.2"
+ },
+ "eeprom": {
+ "driver": "i2c"
}
}
diff --git a/keyboards/tkw/grandiceps/rev2/rules.mk b/keyboards/tkw/grandiceps/rev2/rules.mk
index 3e82c4507e..20f2871924 100644
--- a/keyboards/tkw/grandiceps/rev2/rules.mk
+++ b/keyboards/tkw/grandiceps/rev2/rules.mk
@@ -1,4 +1,2 @@
-EEPROM_DRIVER = i2c
-
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = pimoroni_trackball
diff --git a/keyboards/tmo50/keymaps/talljoe/config.h b/keyboards/tmo50/keymaps/talljoe/config.h
deleted file mode 100644
index 53d593385f..0000000000
--- a/keyboards/tmo50/keymaps/talljoe/config.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Copyright 2020 Joseph Wasson
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define SPACE_COUNT 2
-
-#define TEMPLATE_TKL(\
- KESC, KF01, KF02, KF03, KF04, KF05, KF06, KF07, KF08, KF09, KF10, KF11, KF12, KSCL, KPRS, KADJ, \
- KGRV, K_1 , K_2 , K_3 , K_4 , K_5 , K_6 , K_7 , K_8 , K_9 , K_0 , KMIN, KEQL, KBLS, KINS, KHOM, KPUP, \
- KTAB, K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , KLBR, KRBR, KBSP, KDEL, KEND, LPDN, \
- KCAP, K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, KQUO, KENT, \
- KLSH, K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, KRSH, K_UP, \
- KLCT, KLOS, KLAL, KSP2, KSP3, KSP1, KRAL, KROS, KRCT, KPTT, K_LT, K_DN, K_RT \
-) LAYOUT_all( \
- KF01, KTAB, K_Q , K_W , K_E , K_R , K_T , K_Y , K_U , K_I , K_O , K_P , KLBR, KRBR, KBSP, \
- KF02, KCAP, K_A , K_S , K_D , K_F , K_G , K_H , K_J , K_K , K_L , KSMI, KQUO, KENT, \
- KF03, KLSH, K_Z , K_X , K_C , K_V , K_B , K_N , K_M , KCMA, KDOT, KSLS, KRSH, KADJ, \
- KF04, KLOS, KLAL, KSP2, KSP1, KRAL, KESC \
-)
diff --git a/keyboards/tmo50/keymaps/talljoe/keymap.c b/keyboards/tmo50/keymaps/talljoe/keymap.c
deleted file mode 100644
index fa6523992e..0000000000
--- a/keyboards/tmo50/keymaps/talljoe/keymap.c
+++ /dev/null
@@ -1,44 +0,0 @@
-#include "quantum.h"
-#include "talljoe.h"
-
-bool process_indicator_led_user(uint32_t state){
- return false;
-}
-
-#define LED_MASK (_BV(PB0) | _BV(PB1) | _BV(PB2) | _BV(PB3))
-#define WHITE (_BV(PB0))
-#define YELLOW (_BV(PB1))
-#define MAGENTA (_BV(PB2))
-#define RED (_BV(PB3))
-
-void matrix_scan_keymap(void) {
- uint32_t lights = WHITE;
-
- switch(get_highest_layer(layer_state))
- {
- case _NAV:
- lights |= YELLOW;
- break;
- case _NUM:
- lights |= MAGENTA;
- break;
- case _ADJUST:
- lights |= RED;
- break;
- default: {
- uint8_t default_layer = get_highest_layer(default_layer_state);
- lights = 0; // no white LED by default.
- if(default_layer & 1)
- lights |= YELLOW;
- if(default_layer & 2)
- lights |= MAGENTA;
- if(default_layer & 4)
- lights |= RED;
- }
- }
-
- uint32_t port = PORTB;
- port |= LED_MASK;
- port &= ~lights;
- PORTB = port;
-}
diff --git a/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c b/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c
index 7008550f2b..8b981c6d75 100644
--- a/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c
+++ b/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c
@@ -88,115 +88,68 @@ combo_t key_combos[] = {
};
#endif
-#ifdef OLED_ENABLE // Special thanks to Sickbabies for this great OLED widget!
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_90; // rotates for proper orientation
-}
-
-void render_lechiffre_logo(void) {
- static const char PROGMEM lechiffre_logo[] = {
- // 'lechiffre_logo', 32x20px
- 0x00, 0x3e, 0x20, 0x20, 0x00, 0x18, 0x2c, 0xa8, 0x80, 0x00, 0x1c, 0x22, 0x22, 0x00, 0x3e, 0x08,
- 0x30, 0x00, 0x34, 0x00, 0x3c, 0x0a, 0x00, 0xbc, 0x8a, 0x00, 0x38, 0x08, 0x00, 0x18, 0x2c, 0x28,
- 0x00, 0xb6, 0xb6, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00,
- 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xb6, 0xb6, 0x00,
- 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00,
- 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00};
-
- oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo));
-}
-
-static void render_layer_status(void) {
- oled_write_P(PSTR("-----"), false);
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- oled_write_ln_P(PSTR("BASE"), false);
- break;
- case _NUM_SYM:
- oled_write_ln_P(PSTR(" SYM"), false);
- break;
- case _NAV:
- oled_write_ln_P(PSTR(" NAV"), false);
- break;
- default:
- oled_write_ln_P(PSTR("?????"), false);
- }
-}
-
-# define KEYLOG_LEN 11
-char keylog_str[KEYLOG_LEN] = {};
-uint8_t keylogs_str_idx = 0;
-uint16_t log_timer = 0;
-
-const char code_to_name[60] = {
- ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
- 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
- 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
- '1', '2', '3', '4', '5', '6', '7', '8', '9', '0',
- 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\',
- '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '};
-
-void add_keylog(uint16_t keycode) {
- if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) {
- keycode = keycode & 0xFF;
- }
-
- for (uint8_t i = KEYLOG_LEN - 1; i > 0; i--) {
- keylog_str[i] = keylog_str[i - 1];
- }
- if (keycode < 60) {
- keylog_str[0] = code_to_name[keycode];
- }
- keylog_str[KEYLOG_LEN - 1] = 0;
-
- log_timer = timer_read();
-}
-
-void update_log(void) {
- if (timer_elapsed(log_timer) > 750) {
- add_keylog(0);
- }
-}
-
-// Text only renders
-void render_keylogger_status(void) {
- oled_write_P(PSTR("-----"), false);
- oled_write(keylog_str, false);
-}
-
-void render_keylock_status(led_t led_state) {
- oled_write_P(PSTR("-----"), false);
- oled_write_P(PSTR("C"), led_state.caps_lock);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("N"), led_state.num_lock);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("S"), led_state.scroll_lock);
- // oled_write_ln_P(PSTR(" "), false);
-}
+#ifdef OLED_ENABLE
+
+// Add additional layer names here if desired. Only first 5 characters will be copied to display.
+const char PROGMEM layer_base[] = "BASE";
+const char PROGMEM layer_num_sym[] = " SYM";
+const char PROGMEM layer_nav[] = " NAV";
+// Add layer name variables to array here. Make sure these are in order.
+const char* const PROGMEM layer_names[] = {
+ layer_base,
+ layer_num_sym,
+ layer_nav
+};
-void render_mod_status(uint8_t modifiers) {
- oled_write_P(PSTR("-----"), false);
- oled_write_ln_P(PSTR("SHFT"), (modifiers & MOD_MASK_SHIFT));
- oled_write_ln_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT));
- oled_write_ln_P(PSTR("CTRL"), (modifiers & MOD_MASK_CTRL));
- oled_write_ln_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI));
-}
+static char oled_layer_buf[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
+static layer_state_t top_layer_cache;
+/* BEGIN STANDARD QMK FUNCTIONS */
bool oled_task_user(void) {
- render_lechiffre_logo();
+ oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo));
+ // Renders the current keyboard state (layer, lock, caps, scroll, etc);
oled_set_cursor(0, 3);
- render_layer_status(); // Renders the current keyboard state (layer, lock, caps, scroll, etc)
+ oled_write_P(oled_section_break, false);
+ render_layer_status(oled_layer_buf);
+ oled_write_P(oled_section_break, false);
render_mod_status(get_mods() | get_oneshot_mods());
+ oled_write_P(oled_section_break, false);
render_keylock_status(host_keyboard_led_state());
+ oled_write_P(oled_section_break, false);
render_keylogger_status();
return false;
}
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+bool process_record_user(uint16_t keycode, keyrecord_t* record) {
if (record->event.pressed) {
- add_keylog(keycode);
+ add_keylog(keycode, record);
}
+
return true;
}
+
+// If we don't force an update during initialization, the layer name buffer will start out blank.
+layer_state_t default_layer_state_set_user(layer_state_t state) {
+ update_layer_namebuf(get_highest_layer(state), true);
+ return state;
+}
+layer_state_t layer_state_set_user(layer_state_t state) {
+ update_layer_namebuf(get_highest_layer(state | default_layer_state), false);
+ return state;
+}
+
+/* END STANDARD QMK FUNCTIONS */
+/* BEGIN CUSTOM HELPER FUNCTION FOR OLED */
+// Avoid excessive copying by only updating the layer name buffer when the layer changes
+void update_layer_namebuf(layer_state_t layer, bool force_update) {
+ if (force_update || layer != top_layer_cache) {
+ top_layer_cache = layer;
+ if (layer < ARRAY_SIZE(layer_names)) {
+ memcpy_P(oled_layer_buf, pgm_read_ptr(&layer_names[layer]), ARRAY_SIZE(oled_layer_buf) - 1);
+ } else {
+ memcpy(oled_layer_buf, get_u8_str(layer, ' '), ARRAY_SIZE(oled_layer_buf) - 1);
+ }
+ }
+}
#endif
diff --git a/keyboards/tominabox1/le_chiffre/keymaps/via/keymap.c b/keyboards/tominabox1/le_chiffre/keymaps/via/keymap.c
index 2592ee5dc1..54d4f38c71 100644
--- a/keyboards/tominabox1/le_chiffre/keymaps/via/keymap.c
+++ b/keyboards/tominabox1/le_chiffre/keymaps/via/keymap.c
@@ -32,106 +32,17 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
};
#endif
-#ifdef OLED_ENABLE // Special thanks to Sickbabies for this great OLED widget!
-oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return OLED_ROTATION_90; // rotates for proper orientation
-}
-
-void render_lechiffre_logo(void) {
- static const char PROGMEM lechiffre_logo[] = {
- // 'lechiffre_logo', 32x20px
- 0x00, 0x3e, 0x20, 0x20, 0x00, 0x18, 0x2c, 0xa8, 0x80, 0x00, 0x1c, 0x22, 0x22, 0x00, 0x3e, 0x08,
- 0x30, 0x00, 0x34, 0x00, 0x3c, 0x0a, 0x00, 0xbc, 0x8a, 0x00, 0x38, 0x08, 0x00, 0x18, 0x2c, 0x28,
- 0x00, 0xb6, 0xb6, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00,
- 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xb6, 0xb6, 0x00,
- 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00,
- 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00};
-
- oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo));
-}
-
-// static void render_layer_status(void) {
-// oled_write_P(PSTR("-----"), false);
-// switch (get_highest_layer(layer_state)) {
-// case _BASE:
-// oled_write_ln_P(PSTR("BASE"), false);
-// break;
-// case _NUM_SYM:
-// oled_write_ln_P(PSTR(" SYM"), false);
-// break;
-// case _NAV:
-// oled_write_ln_P(PSTR(" NAV"), false);
-// break;
-// default:
-// oled_write_ln_P(PSTR("?????"), false);
-// }
-// }
-
-# define KEYLOG_LEN 11
-char keylog_str[KEYLOG_LEN] = {};
-uint8_t keylogs_str_idx = 0;
-uint16_t log_timer = 0;
-
-const char code_to_name[60] = {
- ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
- 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
- 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
- '1', '2', '3', '4', '5', '6', '7', '8', '9', '0',
- 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\',
- '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '};
-
-void add_keylog(uint16_t keycode) {
- if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) {
- keycode = keycode & 0xFF;
- }
-
- for (uint8_t i = KEYLOG_LEN - 1; i > 0; i--) {
- keylog_str[i] = keylog_str[i - 1];
- }
- if (keycode < 60) {
- keylog_str[0] = code_to_name[keycode];
- }
- keylog_str[KEYLOG_LEN - 1] = 0;
-
- log_timer = timer_read();
-}
-
-void update_log(void) {
- if (timer_elapsed(log_timer) > 750) {
- add_keylog(0);
- }
-}
-
-// Text only renders
-void render_keylogger_status(void) {
- oled_write_P(PSTR("-----"), false);
- oled_write(keylog_str, false);
-}
-
-void render_keylock_status(led_t led_state) {
- oled_write_P(PSTR("-----"), false);
- oled_write_P(PSTR("C"), led_state.caps_lock);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("N"), led_state.num_lock);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("S"), led_state.scroll_lock);
- // oled_write_ln_P(PSTR(" "), false);
-}
-
-void render_mod_status(uint8_t modifiers) {
- oled_write_P(PSTR("-----"), false);
- oled_write_ln_P(PSTR("SHFT"), (modifiers & MOD_MASK_SHIFT));
- oled_write_ln_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT));
- oled_write_ln_P(PSTR("CTRL"), (modifiers & MOD_MASK_CTRL));
- oled_write_ln_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI));
-}
-
+#ifdef OLED_ENABLE
bool oled_task_user(void) {
- render_lechiffre_logo();
+ oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo));
oled_set_cursor(0, 3);
- // render_layer_status(); // Renders the current keyboard state (layer, lock, caps, scroll, etc)
+ oled_write_P(oled_section_break, false);
+ render_layer_status(get_u8_str(get_highest_layer(layer_state | default_layer_state), ' '));
+ oled_write_P(oled_section_break, false);
render_mod_status(get_mods() | get_oneshot_mods());
+ oled_write_P(oled_section_break, false);
render_keylock_status(host_keyboard_led_state());
+ oled_write_P(oled_section_break, false);
render_keylogger_status();
return false;
@@ -139,8 +50,9 @@ bool oled_task_user(void) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
- add_keylog(keycode);
+ add_keylog(keycode, record);
}
+
return true;
}
#endif
diff --git a/keyboards/tominabox1/le_chiffre/le_chiffre.c b/keyboards/tominabox1/le_chiffre/le_chiffre.c
new file mode 100644
index 0000000000..e33112edad
--- /dev/null
+++ b/keyboards/tominabox1/le_chiffre/le_chiffre.c
@@ -0,0 +1,123 @@
+// Copyright 2020 tominabox1 (@tominabox1)
+// Copyright 2019 @foostan
+// Copyright 2020 Drashna Jaelre <@drashna>
+// Copyright 2023 QMK Contributors <@qmk>
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "quantum.h"
+#include "le_chiffre.h"
+
+#if defined(OLED_ENABLE) // Special thanks to Sickbabies for this great OLED widget!
+
+/* CONSTANTS */
+const char PROGMEM code_to_name[53] = {
+ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
+ 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
+ 'u', 'v', 'w', 'x', 'y', 'z', '1', '2', '3', '4',
+ '5', '6', '7', '8', '9', '0', 'R', 'E', 'B', 'T',
+ '_', '-', '=', '[', ']', '\\', '#', ';', '\'', '`',
+ ',', '.', '/'
+};
+
+const char PROGMEM lechiffre_logo[96] = {
+ // 'lechiffre_logo', 32x20px
+ 0x00, 0x3e, 0x20, 0x20, 0x00, 0x18, 0x2c, 0xa8, 0x80, 0x00, 0x1c, 0x22, 0x22, 0x00, 0x3e, 0x08,
+ 0x30, 0x00, 0x34, 0x00, 0x3c, 0x0a, 0x00, 0xbc, 0x8a, 0x00, 0x38, 0x08, 0x00, 0x18, 0x2c, 0x28,
+ 0x00, 0xb6, 0xb6, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00,
+ 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xb6, 0xb6, 0x00,
+ 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00,
+ 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00
+};
+
+const char PROGMEM oled_section_break[6] = OLED_SECTION_BREAK;
+/* END CONSTANTS */
+
+/* TRACKERS */
+static char keylog_str[KEYLOG_LEN] = {};
+static uint16_t log_timer = 0;
+/* END TRACKERS */
+
+/* BEGIN STANDARD QMK FUNCTIONS */
+
+oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
+ return OLED_ROTATION_90;
+}
+
+bool oled_task_kb(void) {
+ if (!oled_task_user()) {
+ return false;
+ }
+ oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo));
+ oled_set_cursor(0, 3);
+ oled_write_P(oled_section_break, false);
+ render_layer_status(get_u8_str(get_highest_layer(layer_state | default_layer_state), ' '));
+ oled_write_P(oled_section_break, false);
+ render_mod_status(get_mods() | get_oneshot_mods());
+ oled_write_P(oled_section_break, false);
+ render_keylock_status(host_keyboard_led_state());
+ return true;
+}
+
+/* END STANDARD QMK FUNCTIONS */
+/* BEGIN CUSTOM HELPER FUNCTIONS FOR OLED */
+
+/**
+ * Sickbabies deserves credit for the original OLED implementation,
+ * however most of the keylogging code appears to have been lifted from crkbd
+ * -- which is why @foostan and @drashna are now credited here as well.
+ *
+ * Improvements were lifted from crkbd again in 2023, with gratitude.
+ */
+void add_keylog(uint16_t keycode, keyrecord_t *record) {
+ if (IS_QK_MOD_TAP(keycode) && record->tap.count) {
+ keycode = QK_MOD_TAP_GET_TAP_KEYCODE(keycode);
+ } else if (IS_QK_LAYER_TAP(keycode) && record->tap.count) {
+ keycode = QK_LAYER_TAP_GET_TAP_KEYCODE(keycode);
+ } else if (IS_QK_MODS(keycode)) {
+ keycode = QK_MODS_GET_BASIC_KEYCODE(keycode);
+ }
+
+ if (keycode >= KC_A && keycode < KC_CAPS) {
+ keycode -= KC_A; // shift to first letter of alphabet
+ for (uint8_t i = KEYLOG_LEN - 1; i > 0; i--) {
+ keylog_str[i] = keylog_str[i - 1];
+ }
+ keylog_str[0] = pgm_read_byte(&(code_to_name[keycode]));
+ keylog_str[KEYLOG_LEN - 1] = 0x00;
+ }
+
+ log_timer = timer_read();
+}
+
+void render_keylock_status(led_t led_state) {
+ oled_write_P(PSTR("C"), led_state.caps_lock);
+ oled_advance_char();
+ oled_write_P(PSTR("N"), led_state.num_lock);
+ oled_advance_char();
+ oled_write_P(PSTR("S"), led_state.scroll_lock);
+}
+
+void render_keylogger_status(void) {
+ // zero out log after 30s idle time
+ if (strlen(keylog_str) > 0 && timer_elapsed(log_timer) > 30000) {
+ keylog_str[0] = 0x00;
+ oled_advance_page(true);
+ oled_advance_page(true);
+ }
+ oled_write(keylog_str, false);
+}
+
+void render_layer_status(const char* layer_name) {
+ oled_write(layer_name, false);
+ if (strlen(layer_name) < oled_max_chars()) {
+ oled_advance_page(true);
+ }
+}
+
+void render_mod_status(uint8_t modifiers) {
+ oled_write_ln_P(PSTR("SHFT"), (modifiers & MOD_MASK_SHIFT));
+ oled_write_ln_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT));
+ oled_write_ln_P(PSTR("CTRL"), (modifiers & MOD_MASK_CTRL));
+ oled_write_ln_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI));
+}
+#endif // OLED_ENABLE
diff --git a/keyboards/tominabox1/le_chiffre/le_chiffre.h b/keyboards/tominabox1/le_chiffre/le_chiffre.h
new file mode 100644
index 0000000000..5bbcbf51cf
--- /dev/null
+++ b/keyboards/tominabox1/le_chiffre/le_chiffre.h
@@ -0,0 +1,17 @@
+// Copyright 2020 tominabox1 (@tominabox1) and sickbabies
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define KEYLOG_LEN 11
+
+extern const char PROGMEM code_to_name[53];
+extern const char PROGMEM lechiffre_logo[96];
+extern const char PROGMEM oled_section_break[6];
+
+void add_keylog(uint16_t keycode, keyrecord_t* record);
+void render_keylock_status(led_t led_state);
+void render_keylogger_status(void);
+void render_layer_status(const char* layer_name);
+void render_mod_status(uint8_t modifiers);
+void update_layer_namebuf(layer_state_t layer, bool force_update);
diff --git a/keyboards/tominabox1/le_chiffre/post_config.h b/keyboards/tominabox1/le_chiffre/post_config.h
new file mode 100644
index 0000000000..181004038e
--- /dev/null
+++ b/keyboards/tominabox1/le_chiffre/post_config.h
@@ -0,0 +1,14 @@
+// Copyright 2023 The QMK Community (@qmk)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#if defined(OLED_ENABLE)
+# if !defined(OLED_UPDATE_INTERVAL)
+# define OLED_UPDATE_INTERVAL 5
+# endif
+
+# if !defined(OLED_SECTION_BREAK)
+# define OLED_SECTION_BREAK "-----"
+# endif
+#endif
diff --git a/keyboards/torn/keymaps/manna-harbour_miryoku/config.h b/keyboards/torn/keymaps/manna-harbour_miryoku/config.h
deleted file mode 100644
index a71d199fb8..0000000000
--- a/keyboards/torn/keymaps/manna-harbour_miryoku/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-#pragma once
-
-#define LAYOUT_miryoku( \
- K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
- K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \
- K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \
- N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \
-) \
-LAYOUT_split_3x6_4( \
-KC_NO, K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, KC_NO, \
-KC_NO, K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, KC_NO, \
-KC_NO, K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, KC_NO, \
- KC_NO, K32, K33, K34, K35, K36, K37, KC_NO \
-)
diff --git a/keyboards/torn/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/torn/keymaps/manna-harbour_miryoku/keymap.c
deleted file mode 100644
index dbab7f9820..0000000000
--- a/keyboards/torn/keymaps/manna-harbour_miryoku/keymap.c
+++ /dev/null
@@ -1,4 +0,0 @@
-// Copyright 2019 Manna Harbour
-// https://github.com/manna-harbour/miryoku
-
-// This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/torn/rules.mk b/keyboards/torn/rules.mk
index d2ec5cf6d4..f855a651a5 100644
--- a/keyboards/torn/rules.mk
+++ b/keyboards/torn/rules.mk
@@ -18,4 +18,4 @@ SRC += matrix.c \
mcp23018.c \
torn_encoder.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/touchpad/rules.mk b/keyboards/touchpad/rules.mk
index c22f3a2da5..b9fb83c48c 100644
--- a/keyboards/touchpad/rules.mk
+++ b/keyboards/touchpad/rules.mk
@@ -12,4 +12,5 @@ AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
CUSTOM_MATRIX = yes
-SRC += matrix.c i2c_master.c
+SRC += matrix.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/tweetydabird/lotus58/config.h b/keyboards/tweetydabird/lotus58/config.h
index de32af4284..4175568d40 100644
--- a/keyboards/tweetydabird/lotus58/config.h
+++ b/keyboards/tweetydabird/lotus58/config.h
@@ -7,6 +7,3 @@
#define RGBLIGHT_DEFAULT_VAL 87
#define SPLIT_HAND_PIN B5
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_OLED_ENABLE
diff --git a/keyboards/tweetydabird/lotus58/info.json b/keyboards/tweetydabird/lotus58/info.json
index a222dec8de..4e41fcc7bd 100644
--- a/keyboards/tweetydabird/lotus58/info.json
+++ b/keyboards/tweetydabird/lotus58/info.json
@@ -56,8 +56,13 @@
"soft_serial_pin": "D2",
"transport": {
"protocol": "serial",
- "sync_matrix_state": true,
- "sync_modifiers": true
+ "sync": {
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true,
+ "modifiers": true,
+ "oled": true
+ }
},
"usb_detect": {
"enabled": true
diff --git a/keyboards/tzarc/djinn/config.h b/keyboards/tzarc/djinn/config.h
index af98f887db..74bb00edc2 100644
--- a/keyboards/tzarc/djinn/config.h
+++ b/keyboards/tzarc/djinn/config.h
@@ -11,12 +11,6 @@
// Split configuration
#define SPLIT_TRANSACTION_IDS_KB RPC_ID_SYNC_STATE_KB
-#define SPLIT_TRANSPORT_MIRROR
-#define SPLIT_LAYER_STATE_ENABLE
-#define SPLIT_LED_STATE_ENABLE
-#define SPLIT_MODS_ENABLE
-#define SPLIT_WPM_ENABLE
-#define SPLIT_ACTIVITY_ENABLE
// SPI Configuration
#define SPI_DRIVER SPID3
diff --git a/keyboards/tzarc/djinn/info.json b/keyboards/tzarc/djinn/info.json
index f0904b8578..64ed1da690 100644
--- a/keyboards/tzarc/djinn/info.json
+++ b/keyboards/tzarc/djinn/info.json
@@ -9,6 +9,9 @@
"build": {
"lto": true
},
+ "eeprom": {
+ "driver": "spi"
+ },
"features": {
"audio": true,
"backlight": true,
@@ -42,13 +45,22 @@
},
"split": {
"enabled": true,
- "main": "pin",
"encoder": {
"right": {
"rotary": [
{"pin_a": "C15", "pin_b": "C14", "resolution": 2}
]
}
+ },
+ "transport": {
+ "sync": {
+ "activity": true,
+ "indicators": true,
+ "layer_state": true,
+ "matrix_state": true,
+ "modifiers": true,
+ "wpm": true
+ }
}
},
"encoder": {
diff --git a/keyboards/tzarc/djinn/rev1/config.h b/keyboards/tzarc/djinn/rev1/config.h
index 5dffc00141..cdcabed05c 100644
--- a/keyboards/tzarc/djinn/rev1/config.h
+++ b/keyboards/tzarc/djinn/rev1/config.h
@@ -22,7 +22,6 @@
#define RGB_CURR_3000mA_OK_PIN C5
// EEPROM configuration
+#define EEPROM_SPI_MB85RS64V
#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN B5
#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 8 // (160MHz/8) => 20MHz
-#define EXTERNAL_EEPROM_BYTE_COUNT 8192
-#define EXTERNAL_EEPROM_PAGE_SIZE 64 // it's FRAM, so it doesn't actually matter, this just sets the RAM buffer size
diff --git a/keyboards/tzarc/djinn/rev2/config.h b/keyboards/tzarc/djinn/rev2/config.h
index 12a6372405..00a893ff65 100644
--- a/keyboards/tzarc/djinn/rev2/config.h
+++ b/keyboards/tzarc/djinn/rev2/config.h
@@ -25,10 +25,9 @@
#define RGB_CURR_3000mA_OK_PIN C4
// EEPROM configuration
+#define EEPROM_SPI_MB85RS64V
#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN B5
#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 8 // (160MHz/8) => 20MHz
-#define EXTERNAL_EEPROM_BYTE_COUNT 8192
-#define EXTERNAL_EEPROM_PAGE_SIZE 64 // it's FRAM, so it doesn't actually matter, this just sets the RAM buffer size
// External flash config
#define EXTERNAL_FLASH_SPI_MODE 3
diff --git a/keyboards/tzarc/djinn/rules.mk b/keyboards/tzarc/djinn/rules.mk
index e7c32e4dc1..5a4589a86f 100644
--- a/keyboards/tzarc/djinn/rules.mk
+++ b/keyboards/tzarc/djinn/rules.mk
@@ -4,8 +4,6 @@ SERIAL_DRIVER = usart
CIE1931_CURVE = yes
-EEPROM_DRIVER = spi
-
AUDIO_DRIVER = pwm_software
QUANTUM_PAINTER_DRIVERS = ili9341_spi
diff --git a/keyboards/tzarc/ghoul/config.h b/keyboards/tzarc/ghoul/config.h
index 932ea8eb50..402f14cd92 100644
--- a/keyboards/tzarc/ghoul/config.h
+++ b/keyboards/tzarc/ghoul/config.h
@@ -8,8 +8,7 @@
// #define MATRIX_COLS 8 // actually defined in info.json: 8 bits per register
// EEPROM configuration
-#define EXTERNAL_EEPROM_BYTE_COUNT 8192
-#define EXTERNAL_EEPROM_PAGE_SIZE 64 // it's FRAM, so it doesn't actually matter, this just sets the RAM buffer
+#define EEPROM_SPI_MB85RS64V
// RGB configuration
#define RGB_MATRIX_LED_COUNT 40
diff --git a/keyboards/tzarc/ghoul/info.json b/keyboards/tzarc/ghoul/info.json
index bf07f122c3..26824ca4da 100644
--- a/keyboards/tzarc/ghoul/info.json
+++ b/keyboards/tzarc/ghoul/info.json
@@ -5,6 +5,9 @@
"build": {
"lto": true
},
+ "eeprom": {
+ "driver": "spi"
+ },
"features": {
"bootmagic": true,
"console": true,
diff --git a/keyboards/tzarc/ghoul/rules.mk b/keyboards/tzarc/ghoul/rules.mk
index 9590c52217..4bf96d9824 100644
--- a/keyboards/tzarc/ghoul/rules.mk
+++ b/keyboards/tzarc/ghoul/rules.mk
@@ -1,7 +1,6 @@
CUSTOM_MATRIX = lite
-EEPROM_DRIVER = spi
QUANTUM_PAINTER_DRIVERS = ssd1351_spi
DEFAULT_FOLDER = tzarc/ghoul/rev1/stm32
-SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/ungodly/launch_pad/rules.mk b/keyboards/ungodly/launch_pad/rules.mk
index 9354144466..31fabc928c 100644
--- a/keyboards/ungodly/launch_pad/rules.mk
+++ b/keyboards/ungodly/launch_pad/rules.mk
@@ -19,4 +19,4 @@ MAGIC_ENABLE = no
GRAVE_ESC_ENABLE = no
LTO_ENABLE = yes
-SRC += analog.c
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h b/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h
deleted file mode 100644
index 4585f2230b..0000000000
--- a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#pragma once
-
-// help for fast typist+dual function keys?
-#define PERMISSIVE_HOLD
-// Let me type `ls -l` more quickly.
-#define QUICK_TAP_TERM 0
-
-// where is the cord plugged in?
-#define MASTER_RIGHT
-
-/* speed up mousekeys a bit */
-#define MOUSEKEY_DELAY 50
-#define MOUSEKEY_INTERVAL 20
-#define MOUSEKEY_MAX_SPEED 8
-#define MOUSEKEY_TIME_TO_MAX 30
-#define MOUSEKEY_WHEEL_MAX_SPEED 8
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 40
-
-// because I'm lazy and didn't case out the rgb support
-#define RGBLED_NUM 2
-
-#define BACKLIGHT_PIN B7
-#define BACKLIGHT_LEVELS 3
diff --git a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/keymap.c b/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/keymap.c
deleted file mode 100644
index 3370ef9195..0000000000
--- a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/keymap.c
+++ /dev/null
@@ -1,155 +0,0 @@
- /* Copyright 2018 Christon DeWan
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-#include "xtonhasvim.h"
-
-/************************************
- * states
- ************************************/
-
-enum layers {
- _QWERTY,
- _LOWER,
- _RAISE,
- _ADJUST,
- _MOVE,
- _MOUSE,
- _CMD
-};
-
-extern uint8_t vim_cmd_layer(void) { return _CMD; }
-
-enum keymap_keycodes {
- RAISE = VIM_SAFE_RANGE,
- LOWER
-};
-
-/************************************
- * keymaps!
- ************************************/
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Ctrl*| A | S | D | F | G | H | J | K | L | ;* | ' |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | chkwm| | Alt | GUI | Lower* | Raise* | SPC | GUI | | Vim |
- * `-----------------------------------------------------------------------------------'
- *
- * - Ctrl acts as Esc when tapped.
- * - Holding ; switches to movement layer.
- * - Tapping raise or lower produces space.
- */
-[_QWERTY] = LAYOUT_ortho_4x12_2x2u(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(_MOVE,KC_SCLN), KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT) ,
- LSFT(KC_LALT), MO(_MOVE), KC_LALT, KC_LGUI, LT(_LOWER, KC_SPC), LT(_RAISE, KC_SPC), KC_RGUI, KC_RALT, MO(_MOVE), VIM_START
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | ! | @ | # | $ | % | ^ | & | * | ( | ) | | |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | Next | Vol- | Vol+ | Play |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Bail | | | | Raise | | | Bail | |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT_ortho_4x12_2x2u(
- KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSPC,
- KC_DEL, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, X_____X, X_____X, X_____X, X_____X, FIREY_RETURN,
- QK_BOOT, TO(_QWERTY), _______, _______, _______, MO(_RAISE), _______, _______, TO(_QWERTY), X_____X
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | Bksp |
- * |------+------+------+------+------+-------------+------+------+------+------+------|
- * | Del | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | \ |
- * |------+------+------+------+------+------|------+------+------+------+------+------|
- * | | F7 | F8 | F9 | F10 | F11 | F12 | | Next | Vol- | Vol+ | Play |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | | Bail | | | Lower | | | | Bail | |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT_ortho_4x12_2x2u(
- KC_GRV, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_DEL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, FIREY_RETURN,
- X_____X, TO(_QWERTY), _______, _______, MO(_LOWER), _______, _______, _______, TO(_QWERTY), QK_BOOT
-),
-
-
-/* Adjust (Lower + Raise)
- * ,-------------------------------------------------------------------------------------.
- * |BL Raise| | | | | | | | | | | |
- * |--------+------+------+------+------+-------------+------+------+------+------+------|
- * |BL Lower| | | | | | | | | | | |
- * |--------+------+------+------+------+------|------+------+------+------+------+------|
- * |BL STEP | | | | | | | Next | Vol- | Vol+ | Play | |
- * |--------+------+------+------+------+------+------+------+------+------+------+------|
- * |Backlite| Mouse| | | | | | | Bail | |
- * `-------------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT_ortho_4x12_2x2u(
- BL_UP, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- BL_DOWN,X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- BL_STEP, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, X_____X,
- BL_TOGG, TO(_MOUSE), _______, _______, _______, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-
-/* movement layer (hold semicolon) */
-[_MOVE] = LAYOUT_ortho_4x12_2x2u(
- TO(_QWERTY), X_____X, X_____X, X_____X, X_____X, X_____X, KC_HOME, KC_PGDN, KC_PGUP, KC_END, X_____X, X_____X,
- _______, X_____X, LGUI(KC_LBRC), LGUI(LSFT(KC_LBRC)), LGUI(LSFT(KC_RBRC)), LGUI(KC_RBRC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, X_____X
-),
-
-/* mouse layer
- */
-[_MOUSE] = LAYOUT_ortho_4x12_2x2u(
- TO(_QWERTY), X_____X, X_____X, KC_MS_UP, X_____X, X_____X, KC_MS_WH_LEFT, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_RIGHT, X_____X, X_____X ,
- _______, X_____X, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, X_____X, X_____X, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, X_____X, X_____X,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, TO(_QWERTY), _______, _______, _______, _______, _______, _______, TO(_QWERTY), X_____X
-),
-
-/* vim command layer.
- */
-[_CMD] = LAYOUT_ortho_4x12_2x2u(
- X_____X, X_____X, VIM_W, VIM_E, X_____X, X_____X, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, X_____X,
- VIM_ESC, VIM_A, VIM_S, VIM_D, X_____X, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, X_____X, X_____X,
- VIM_SHIFT, X_____X, VIM_X, VIM_C, VIM_V, VIM_B, X_____X, X_____X, VIM_COMMA, VIM_PERIOD, X_____X, VIM_SHIFT,
- _______, TO(_QWERTY), _______, _______, X_____X, X_____X, _______, _______, TO(_QWERTY), X_____X
-)
-
-};
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- return update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST);
-}
diff --git a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/readme.md b/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/readme.md
deleted file mode 100644
index 9ff4ce1f19..0000000000
--- a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Xton has a tiny keyboard! With Vim!
-
-Based on the standard Planck layout with a few changes:
-
-* Escape moved to dual-function with control.
-* Dedicated movement and mouse layers.
-* Top and middle row swapped in `_RAISE` and `_LOWER` because I never use F-keys.
-* Vim layers! See `users/xtonhasvim`.
-
diff --git a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/rules.mk b/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/rules.mk
deleted file mode 100644
index ede4e02b64..0000000000
--- a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-MOUSEKEY_ENABLE = yes
-# BACKLIGHT_ENABLE = yes
-AUDIO_ENABLE = no
diff --git a/keyboards/v4n4g0rth0n/v2/rules.mk b/keyboards/v4n4g0rth0n/v2/rules.mk
index b63f456708..0114504486 100644
--- a/keyboards/v4n4g0rth0n/v2/rules.mk
+++ b/keyboards/v4n4g0rth0n/v2/rules.mk
@@ -11,5 +11,4 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-SRC += analog.c
-
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/v60_type_r/keymaps/xtonhasvim/config.h b/keyboards/v60_type_r/keymaps/xtonhasvim/config.h
deleted file mode 100644
index 997802a56e..0000000000
--- a/keyboards/v60_type_r/keymaps/xtonhasvim/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2018 Christon DeWan (Xton)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#pragma once
-
-#define V60_POLESTAR
-
-#define PERMISSIVE_HOLD
-
-
diff --git a/keyboards/v60_type_r/keymaps/xtonhasvim/keymap.c b/keyboards/v60_type_r/keymaps/xtonhasvim/keymap.c
deleted file mode 100644
index f2fd693ece..0000000000
--- a/keyboards/v60_type_r/keymaps/xtonhasvim/keymap.c
+++ /dev/null
@@ -1,195 +0,0 @@
-/* Copyright 2018 Christon DeWan (Xton)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-
-#include "xtonhasvim.h"
-#include "fancylighting.h"
-
-#define X_____X KC_NO
-
-enum layers {
- _QWERTY,
- _FUN,
- _MOVE,
- _CMD
-};
-
-enum layout_key_codes {
- IND_BRI = VIM_SAFE_RANGE,
- IND_DIM
-};
-
-extern uint8_t vim_cmd_layer(void) { return _CMD; }
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT_all(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, X_____X, KC_BSPC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
- LT(_MOVE, KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, X_____X, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, X_____X,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, VIM_START, MO(_FUN)),
-
-
- [_MOVE] = LAYOUT_all(
- X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, KC_HOME, KC_PGDN, KC_PGUP, KC_END, X_____X, X_____X, X_____X, X_____X,
- _______, X_____X, LGUI(KC_LBRC), LGUI(LSFT(KC_LBRC)), LGUI(LSFT(KC_RBRC)), LGUI(KC_RBRC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, X_____X, X_____X, VIM_START,
- _______, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, _______,
- _______, _______, _______, _______, _______, _______, _______, _______),
-
-
- [_FUN] = LAYOUT_all(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, X_____X, KC_DEL,
- X_____X, X_____X, KC_UP, RGB_TOG, IND_BRI, X_____X, X_____X, X_____X, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, X_____X, KC_INS,
- X_____X, KC_LEFT, KC_DOWN, KC_RIGHT, IND_DIM, X_____X, X_____X, X_____X, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, FIREY_RETURN,
- _______, X_____X, BL_UP, BL_STEP, BL_DOWN, X_____X, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, KC_DOWN, _______, X_____X,
- _______, _______, _______, X_____X, _______, _______, X_____X, _______
- ),
-
- [_CMD] = LAYOUT_all(
- VIM_ESC, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X, X_____X,
- X_____X, X_____X, VIM_W, VIM_E, X_____X, X_____X, VIM_Y, VIM_U, VIM_I, VIM_O, VIM_P, X_____X, X_____X, X_____X,
- _______, VIM_A, VIM_S, VIM_D, X_____X, VIM_G, VIM_H, VIM_J, VIM_K, VIM_L, X_____X, X_____X, X_____X,
- VIM_SHIFT, X_____X, X_____X, VIM_X, VIM_C, VIM_V, VIM_B, X_____X, X_____X, VIM_COMMA, VIM_PERIOD, X_____X, VIM_SHIFT,X_____X,
- _______, _______, _______, _______, _______, _______, _______, TO(_QWERTY)
- )
-};
-
-
-bool led_update_user(led_t led_state) {
- if (led_state.caps_lock) {
- // output low
- DDRE |= (1<<PE6);
- PORTE &= ~(1<<PE6);
- }
- else {
- // Hi-Z
- DDRE &= ~(1<<PE6);
- PORTE &= ~(1<<PE6);
- }
- return false;
-}
-
-#define C_RED 0xFF, 0x00, 0x00
-#define C_GRN 0x00, 0xFF, 0x00
-#define C_BLU 0x00, 0x00, 0xFF
-
-#define C_YAN 0x00, 0xFF, 0xFF
-#define C_PRP 0x7A, 0x00, 0xFF
-#define C_ORG 0xFF, 0x93, 0x00
-
-float rgb_brightness = 1.0;
-
-/** the underglow LEDs aren't individually addressable, sadly */
-void rgbflag(uint8_t r, uint8_t g, uint8_t b) {
- float rgb_brightness = ((float)rgblight_get_val())/256;
- if(rgb_brightness == 0) rgb_brightness = 0.05;
- LED_TYPE *target_led = user_rgb_mode ? shadowed_led : led;
- target_led[0].r = (uint8_t)(r*rgb_brightness);
- target_led[0].g = (uint8_t)(g*rgb_brightness);
- target_led[0].b = (uint8_t)(b*rgb_brightness);
- rgblight_set(); // just to handle turning off if that's required
-}
-
-void set_state_leds(void) {
- switch (get_highest_layer(layer_state)) {
- case _MOVE:
- rgbflag(C_BLU);
- break;
- case _FUN:
- rgbflag(C_PRP);
- break;
- case _CMD:
- switch(vstate) {
- case VIM_V:
- case VIM_VI:
- case VIM_VS:
- case VIM_C:
- case VIM_CI:
- case VIM_D:
- case VIM_DI:
- rgbflag(C_RED);
- break;
- case VIM_G:
- rgbflag(C_PRP);
- break;
- case VIM_Y:
- rgbflag(C_ORG);
- break;
- case VIM_START:
- default:
- rgbflag(C_GRN);
- break;
- }
- break;
- default: // for any other layers, or the default layer
- rgbflag(C_YAN);
- break;
- }
-}
-
-#define RGBLIGHT_LIMIT_VAL 255
-#define RGBLIGHT_BASE_VAL 3
-extern rgblight_config_t rgblight_config;
-extern backlight_config_t backlight_config;
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- switch(keycode) {
- case IND_BRI:
- if (rgblight_config.val + RGBLIGHT_VAL_STEP > RGBLIGHT_LIMIT_VAL) {
- rgblight_config.val = RGBLIGHT_LIMIT_VAL;
- } else {
- rgblight_config.val = rgblight_config.val + RGBLIGHT_VAL_STEP;
- }
- eeconfig_update_rgblight(rgblight_config.raw);
- set_state_leds();
- break;
- case IND_DIM:
- if (rgblight_config.val - RGBLIGHT_VAL_STEP < RGBLIGHT_BASE_VAL) {
- rgblight_config.val = RGBLIGHT_BASE_VAL;
- } else {
- rgblight_config.val = rgblight_config.val - RGBLIGHT_VAL_STEP;
- }
- eeconfig_update_rgblight(rgblight_config.raw);
- set_state_leds();
- break;
- }
- }
- return true;
-}
-
-void suspend_power_down_user(void)
-{
- // rgb
- rgblight_config.enable = false;
- rgblight_set();
-
- // backlight
- /** I don't know why, but 3 means "off" and down is up */
- backlight_config.level = 3;
- backlight_config.enable = false;
- backlight_set(3);
-}
-
-void suspend_wakeup_init_user(void)
-{
- rgblight_config.raw = eeconfig_read_rgblight();
- backlight_config.raw = eeconfig_read_backlight();
-
- backlight_set(backlight_config.level);
- rgblight_set();
-}
diff --git a/keyboards/v60_type_r/keymaps/xtonhasvim/readme.md b/keyboards/v60_type_r/keymaps/xtonhasvim/readme.md
deleted file mode 100644
index 541faed2ba..0000000000
--- a/keyboards/v60_type_r/keymaps/xtonhasvim/readme.md
+++ /dev/null
@@ -1,20 +0,0 @@
-KB Paradise V60 Type R Xton Has Vim! Layout
-======================
-
-If you don't look closely, this layout mimics the default layout fairly well. Care
-is taken to match the FN layer to the keycaps that the TypeR comes with. I wrote this layout
-for a keyboard that I'm giving my intern as a parting gift and wanted it to be as easy to learn
-as possible.
-
-The key differences:
-
-- Holding capslock down activates the movement layer, much like the vimouse layout except that I'm using the xtonhasvim movement layer.
-- Capslock+return (or right-control) activates vim mode!
-
-## Keymap Notes
-
-- Alternate underglow modes are not supported. Instead the underglow is used to indicate state. It can be turned off and dimmed. Polestar underglow LEDs are not individually addressable, sadly.
-
-### Build
-
-To build this keymap, simply run `make v60_type_r:xtonhasvim` from the root project directory. Flash using QMK Toolbox
diff --git a/keyboards/v60_type_r/keymaps/xtonhasvim/rules.mk b/keyboards/v60_type_r/keymaps/xtonhasvim/rules.mk
deleted file mode 100644
index 6f9d7cc39e..0000000000
--- a/keyboards/v60_type_r/keymaps/xtonhasvim/rules.mk
+++ /dev/null
@@ -1,5 +0,0 @@
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-MOUSEKEY_ENABLE = no
-CONSOLE_ENABLE = no # Console for debug(+400)
-DEBUG_ENABLE = no
diff --git a/keyboards/vertex/angle65/config.h b/keyboards/vertex/angle65/config.h
index b3cf8b2507..018bad7cdb 100644
--- a/keyboards/vertex/angle65/config.h
+++ b/keyboards/vertex/angle65/config.h
@@ -18,5 +18,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define SOLENOID_PIN A2
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
diff --git a/keyboards/vertex/arc60/config.h b/keyboards/vertex/arc60/config.h
index 38b830e3df..cab5a59af0 100644
--- a/keyboards/vertex/arc60/config.h
+++ b/keyboards/vertex/arc60/config.h
@@ -16,7 +16,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
/*
diff --git a/keyboards/vertex/arc60h/config.h b/keyboards/vertex/arc60h/config.h
index 38b830e3df..cab5a59af0 100644
--- a/keyboards/vertex/arc60h/config.h
+++ b/keyboards/vertex/arc60h/config.h
@@ -16,7 +16,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 5
/*
diff --git a/keyboards/viendi8l/info.json b/keyboards/viendi8l/info.json
index 17449f406c..d50b96a887 100644
--- a/keyboards/viendi8l/info.json
+++ b/keyboards/viendi8l/info.json
@@ -20,6 +20,9 @@
"rows": ["C3", "C2", "C1", "C0", "B14", "A7"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"encoder": {
"rotary": [
{"pin_a": "B10", "pin_b": "B12", "resolution": 2}
diff --git a/keyboards/viendi8l/rules.mk b/keyboards/viendi8l/rules.mk
index da10e34d1c..b269d5da35 100644
--- a/keyboards/viendi8l/rules.mk
+++ b/keyboards/viendi8l/rules.mk
@@ -12,6 +12,3 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes
LTO_ENABLE = no
-
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/viktus/minne_topre/rules.mk b/keyboards/viktus/minne_topre/rules.mk
index 037e26c530..b86fee73da 100644
--- a/keyboards/viktus/minne_topre/rules.mk
+++ b/keyboards/viktus/minne_topre/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += ec.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/viktus/osav2_numpad_topre/rules.mk b/keyboards/viktus/osav2_numpad_topre/rules.mk
index 037e26c530..b86fee73da 100644
--- a/keyboards/viktus/osav2_numpad_topre/rules.mk
+++ b/keyboards/viktus/osav2_numpad_topre/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += ec.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/viktus/osav2_topre/rules.mk b/keyboards/viktus/osav2_topre/rules.mk
index 037e26c530..b86fee73da 100644
--- a/keyboards/viktus/osav2_topre/rules.mk
+++ b/keyboards/viktus/osav2_topre/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += ec.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/viktus/sp111/rules.mk b/keyboards/viktus/sp111/rules.mk
index 0b9b8490de..1be8c7ad68 100644
--- a/keyboards/viktus/sp111/rules.mk
+++ b/keyboards/viktus/sp111/rules.mk
@@ -18,4 +18,4 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += mcp23018.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/viktus/styrka_topre/rules.mk b/keyboards/viktus/styrka_topre/rules.mk
index 037e26c530..b86fee73da 100644
--- a/keyboards/viktus/styrka_topre/rules.mk
+++ b/keyboards/viktus/styrka_topre/rules.mk
@@ -1,3 +1,4 @@
CUSTOM_MATRIX = lite
-QUANTUM_LIB_SRC += analog.c
SRC += ec.c
+
+ANALOG_DRIVER_REQUIRED = yes
diff --git a/keyboards/vinhcatba/uncertainty/config.h b/keyboards/vinhcatba/uncertainty/config.h
index 288f1d81a9..5c02b78efe 100644
--- a/keyboards/vinhcatba/uncertainty/config.h
+++ b/keyboards/vinhcatba/uncertainty/config.h
@@ -19,11 +19,7 @@
#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_16_9
/* eeprom i2c driver config */
-#define EXTERNAL_EEPROM_I2C_BASE_ADDRESS 0b10100000
-#define EXTERNAL_EEPROM_BYTE_COUNT 4096
-#define EXTERNAL_EEPROM_PAGE_SIZE 32
-#define EXTERNAL_EEPROM_WRITE_TIME 10
-//#define EEPROM_I2C_24LC32
+#define EEPROM_I2C_24LC32A
/* OLED config */
#define OLED_UPDATE_INTERVAL 100
diff --git a/keyboards/vinhcatba/uncertainty/info.json b/keyboards/vinhcatba/uncertainty/info.json
index fc0e69ad19..5f35a144d8 100644
--- a/keyboards/vinhcatba/uncertainty/info.json
+++ b/keyboards/vinhcatba/uncertainty/info.json
@@ -4,6 +4,9 @@
"maintainer": "vinhcatba",
"development_board": "blackpill_f401",
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"encoder": {
"rotary": [
{"pin_a": "A13", "pin_b": "A14"}
diff --git a/keyboards/vinhcatba/uncertainty/rules.mk b/keyboards/vinhcatba/uncertainty/rules.mk
index 6255f65294..fd83e26c34 100644
--- a/keyboards/vinhcatba/uncertainty/rules.mk
+++ b/keyboards/vinhcatba/uncertainty/rules.mk
@@ -1,3 +1 @@
SRC += bongo.c
-# using external i2c eeprom
-EEPROM_DRIVER = i2c
diff --git a/keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c b/keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c
deleted file mode 100644
index fefff64e48..0000000000
--- a/keyboards/walletburner/neuron/keymaps/brandonschlack/keymap.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Copyright 2020 Brandon Schlack
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "brandonschlack.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Base Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │Bsp│
- * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │HyTb│ A │ S │ D │ F │ G │ H │ J │ K │ L │ Enter│
- * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
- * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│?/Lw│
- * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
- * │││││Opt │Cmd │         SpcRse         │Ctrl│││││
- * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
- */
-[_BASE] = LAYOUT(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- HY_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SLH_LWR,
- KC_LOPT, KC_LCMD, XXXXXXX, SPC_RAI, XXXXXXX, XXXXXXX, KC_LCTL
-),
-/* Lower
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Del│BrD│BrU│Msn│LHP│   │   │   │Hom│ ↑ │PgU│SlD│
- * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │    │Mut│VlU│NxW│PvT│Bck│Fwd│NxT│ ← │ → │  Ply │
- * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
- * │SfCaps│Prv│VlD│Nxt│1PX│1Ps│   │End│ ↓ │PgD│    │
- * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
- * │││││    │    │                        │    │││││
- * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
- */
-[_LOWER] = LAYOUT(
- KC_DEL, KC_BRMD, KC_BRMU, MC_MSSN, MC_LHPD, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, MC_SLPD,
- _______, KC_MUTE, KC_VOLU, NXT_WIN, PRV_TAB, MC_BACK, MC_FWRD, NXT_TAB, KC_LEFT, KC_RGHT, KC_MPLY,
- SF_CAPS, KC_MPRV, KC_VOLD, KC_MNXT, PX_AFLL, OP_AFLL, _______, KC_END, KC_DOWN, KC_PGDN, _______,
- _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______
-),
-/* Raise
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│   │
- * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │    │ F1│ F2│ F3│ F4│ F5│ F6│_ -│+ =│: ;│   " '│
- * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
- * │      │ F7│ F8│ F9│F10│F11│F12│   │{ [│} ]│|\Lw│
- * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
- * │││││    │    │                        │    │││││
- * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
- */
-/*
-[_RAISE] = LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_LBRC, KC_RBRC, BSL_LWR,
- _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______
-), */
-/* Raise
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │~ `│ F1│ F2│ F3│ F4│{ [│} ]│& 7│* 8│( 9│) 0│   │
- * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │    │ F5│ F6│ F7│ F8│_ -│ + │$ 4│% 5│^ 6│   " '│
- * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
- * │      │ F9│F10│F11│F12│+ =│! 1│@ 2│# 3│: ;│|\Lw│
- * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
- * │││││    │    │                        │    │││││
- * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
- */
-[_RAISE] = LAYOUT(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_LBRC, KC_RBRC, KC_7, KC_8, KC_9, KC_0, _______,
- _______, KC_F5, KC_F6, KC_F7, KC_F8, KC_MINS, KC_PLUS, KC_4, KC_5, KC_6, KC_QUOT,
- _______, KC_F9, KC_F10, KC_F11, KC_F12, KC_EQL, KC_1, KC_2, KC_3, KC_SCLN, BSL_LWR,
- _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______
-),
-/* Adjust/Macro
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Mke│   │   │EEP│RST│   │   │   │   │   │   │   │
- * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │    │   │   │   │   │   │   │   │   │   │      │
- * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
- * │      │   │   │   │   │   │   │   │   │   │    │
- * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
- * │││││    │    │                        │    │││││
- * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
- */
-
-[_ADJUST] = LAYOUT(
- QM_MAKE, _______, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______
-)
-/* Blank Layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │   │   │   │   │   │   │   │   │   │   │   │   │
- * ├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴───┤
- * │    │   │   │   │   │   │   │   │   │   │      │
- * ├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
- * │      │   │   │   │   │   │   │   │   │   │    │
- * ├┬┬┬┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┴┬┬┬┬┤
- * │││││    │    │                        │    │││││
- * └┴┴┴┴────┴────┴────────────────────────┴────┴┴┴┴┘
- */
-/*
-[BLANK] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______
-)
-*/
-
-};
-
-layer_state_t layer_state_set_keymap(layer_state_t state) {
- return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
-}
-
diff --git a/keyboards/waterfowl/config.h b/keyboards/waterfowl/config.h
index 2ddc7228d4..bba96732cb 100644
--- a/keyboards/waterfowl/config.h
+++ b/keyboards/waterfowl/config.h
@@ -17,6 +17,5 @@
#pragma once
#define OLED_DISPLAY_128X64
-#define SPLIT_MODS_ENABLE
-#define SPLIT_WPM_ENABLE
+
#define SPLIT_USB_DETECT
diff --git a/keyboards/waterfowl/info.json b/keyboards/waterfowl/info.json
index ff8af90fb3..159773a1c9 100644
--- a/keyboards/waterfowl/info.json
+++ b/keyboards/waterfowl/info.json
@@ -20,7 +20,13 @@
]
},
"split": {
- "soft_serial_pin": "D2"
+ "soft_serial_pin": "D2",
+ "transport": {
+ "sync": {
+ "modifiers": true,
+ "wpm": true
+ }
+ }
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
diff --git a/keyboards/wilba_tech/rama_works_kara/config.h b/keyboards/wilba_tech/rama_works_kara/config.h
index d34fd6468c..ba02ba652a 100644
--- a/keyboards/wilba_tech/rama_works_kara/config.h
+++ b/keyboards/wilba_tech/rama_works_kara/config.h
@@ -16,8 +16,9 @@
#pragma once
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c b/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c
index 787a854925..c5f5c9a9d6 100644
--- a/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c
+++ b/keyboards/wilba_tech/rama_works_kara/rama_works_kara.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_M60_A
-#error RGB_BACKLIGHT_M60_A not defined
+# error RGB_BACKLIGHT_M60_A not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M60_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_kara/rules.mk b/keyboards/wilba_tech/rama_works_kara/rules.mk
index 465bc65d9e..b49711824a 100644
--- a/keyboards/wilba_tech/rama_works_kara/rules.mk
+++ b/keyboards/wilba_tech/rama_works_kara/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_koyu/config.h b/keyboards/wilba_tech/rama_works_koyu/config.h
index c3bb43ec6d..1d57ac9e55 100644
--- a/keyboards/wilba_tech/rama_works_koyu/config.h
+++ b/keyboards/wilba_tech/rama_works_koyu/config.h
@@ -16,8 +16,9 @@
#pragma once
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c b/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c
index 03d1e12159..f7b1595d24 100644
--- a/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c
+++ b/keyboards/wilba_tech/rama_works_koyu/rama_works_koyu.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_KOYU
-#error RGB_BACKLIGHT_KOYU not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_KOYU not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_KOYU)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_koyu/rules.mk b/keyboards/wilba_tech/rama_works_koyu/rules.mk
index be907583a2..c921fc5c18 100644
--- a/keyboards/wilba_tech/rama_works_koyu/rules.mk
+++ b/keyboards/wilba_tech/rama_works_koyu/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_m10_b/config.h b/keyboards/wilba_tech/rama_works_m10_b/config.h
index 00ecf5f186..c8c922be6f 100644
--- a/keyboards/wilba_tech/rama_works_m10_b/config.h
+++ b/keyboards/wilba_tech/rama_works_m10_b/config.h
@@ -37,5 +37,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
diff --git a/keyboards/wilba_tech/rama_works_m10_b/info.json b/keyboards/wilba_tech/rama_works_m10_b/info.json
index 0d80bce8a8..eb861e8d3f 100644
--- a/keyboards/wilba_tech/rama_works_m10_b/info.json
+++ b/keyboards/wilba_tech/rama_works_m10_b/info.json
@@ -13,6 +13,9 @@
"rows": ["E6"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"backlight": {
"pin": "C6"
},
diff --git a/keyboards/wilba_tech/rama_works_m10_c/config.h b/keyboards/wilba_tech/rama_works_m10_c/config.h
index 1cc9655b1b..736506a493 100644
--- a/keyboards/wilba_tech/rama_works_m10_c/config.h
+++ b/keyboards/wilba_tech/rama_works_m10_c/config.h
@@ -21,8 +21,8 @@
#define LOCKING_RESYNC_ENABLE
// IS31FL3731 driver
-#define DRIVER_COUNT 1
-#define RGB_MATRIX_LED_COUNT 12
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_LED_COUNT 12
// Enable WT RGB backlight
#define RGB_BACKLIGHT_ENABLED 1
@@ -73,8 +73,6 @@
#define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
#define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
-#define DYNAMIC_KEYMAP_LAYER_COUNT 10
-
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 51
diff --git a/keyboards/wilba_tech/rama_works_m10_c/info.json b/keyboards/wilba_tech/rama_works_m10_c/info.json
index 64af4a5dcf..3b75a67557 100644
--- a/keyboards/wilba_tech/rama_works_m10_c/info.json
+++ b/keyboards/wilba_tech/rama_works_m10_c/info.json
@@ -13,6 +13,9 @@
"rows": ["E6"]
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 10
+ },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
diff --git a/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c b/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c
index 17fa921db6..8f23c9130b 100644
--- a/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c
+++ b/keyboards/wilba_tech/rama_works_m10_c/rama_works_m10_c.c
@@ -14,5 +14,24 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_M10_C
-#error RGB_BACKLIGHT_M10_C not defined
-#endif \ No newline at end of file
+# error RGB_BACKLIGHT_M10_C not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M10_C)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15} // LB16
+};
+#endif
diff --git a/keyboards/wilba_tech/rama_works_m10_c/rules.mk b/keyboards/wilba_tech/rama_works_m10_c/rules.mk
index 89e17a01b4..d8a2bae455 100644
--- a/keyboards/wilba_tech/rama_works_m10_c/rules.mk
+++ b/keyboards/wilba_tech/rama_works_m10_c/rules.mk
@@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_m50_a/config.h b/keyboards/wilba_tech/rama_works_m50_a/config.h
index ab04ab070b..bad8f7f346 100644
--- a/keyboards/wilba_tech/rama_works_m50_a/config.h
+++ b/keyboards/wilba_tech/rama_works_m50_a/config.h
@@ -21,8 +21,9 @@
#define LOCKING_RESYNC_ENABLE
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Enable WT RGB backlight
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c b/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c
index ee5ebf93fd..69f92df893 100644
--- a/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c
+++ b/keyboards/wilba_tech/rama_works_m50_a/rama_works_m50_a.c
@@ -15,4 +15,92 @@
*/
#ifndef RGB_BACKLIGHT_M50_A
#error RGB_BACKLIGHT_M50_A not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M50_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m50_a/rules.mk b/keyboards/wilba_tech/rama_works_m50_a/rules.mk
index 89e17a01b4..d8a2bae455 100644
--- a/keyboards/wilba_tech/rama_works_m50_a/rules.mk
+++ b/keyboards/wilba_tech/rama_works_m50_a/rules.mk
@@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_m60_a/config.h b/keyboards/wilba_tech/rama_works_m60_a/config.h
index c80a018496..7af0f156c8 100644
--- a/keyboards/wilba_tech/rama_works_m60_a/config.h
+++ b/keyboards/wilba_tech/rama_works_m60_a/config.h
@@ -16,8 +16,9 @@
#pragma once
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/keymap.c b/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/keymap.c
deleted file mode 100644
index 0b77e16403..0000000000
--- a/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/keymap.c
+++ /dev/null
@@ -1,82 +0,0 @@
-#include QMK_KEYBOARD_H
-
-
-#define QWER 0
-#define GAMING 1
-#define HHKB 2
-#define UTIL 3
-#define LIGHTING 4
-#define HPR_TAB ALL_T(KC_TAB) // Tap for Tab, hold for Hyper (Super+Ctrl+Shift+Alt)
-#define TG_GAME TG(GAMING)
-
-enum custom_keycodes {
- FN_HHKB = SAFE_RANGE,
- FN_UTIL
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record)
-{
- switch(keycode) {
- case FN_HHKB:
- if (record->event.pressed) {
- layer_on(2);
- update_tri_layer(2, 3, 4);
- } else {
- layer_off(2);
- update_tri_layer(2, 3, 4);
- }
- return false;
- break;
- case FN_UTIL:
- if (record->event.pressed) {
- layer_on(3);
- update_tri_layer(2, 3, 4);
- } else {
- layer_off(3);
- update_tri_layer(2, 3, 4);
- }
- return false;
- break;
- default:
- return true;
- }
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-[QWER] = LAYOUT_60_hhkb(
- QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- HPR_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, FN_HHKB,
- KC_LALT, KC_LGUI, LT(UTIL, KC_SPC), KC_RGUI, FN_UTIL),
-
-[GAMING] = LAYOUT_60_hhkb(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_TAB, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_SPC, _______, _______),
-
-[HHKB] = LAYOUT_60_hhkb(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
- KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, _______, _______,
- _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
- _______, _______, _______, _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______,
- _______, _______, _______, _______, _______),
-
-[UTIL] = LAYOUT_60_hhkb(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, KC_MPLY, KC_MPRV, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, _______, _______,
- _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______),
-
-[LIGHTING] = LAYOUT_60_hhkb(
- QK_BOOT, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, _______, _______, _______, _______, BR_DEC, BR_INC, _______, _______,
- TG_GAME, _______, _______, S1_DEC, S1_INC, S2_DEC, S2_INC, _______, _______, _______, _______, ES_DEC, ES_INC, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______),
-
-};
diff --git a/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/readme.md b/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/readme.md
deleted file mode 100644
index dc03b1491e..0000000000
--- a/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/readme.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Michael Guterl's M60-A Layout
-
-Check out my [userspace](/users/mguterl) for the custom keycodes that are used
-in keymap.c.
-
-This is a pretty standard HHKB layout. I add a couple of layers to add
-some conveniences and add vimkeys for navigation.
-
-If you flash a layout without RESET then you can unplug the keyboard, hold
-spacebar and escape, and then plug the keyboard back. This sequence of
-actions will allow you to flash the keyboard.
-
-```sh
-make wilba_tech/rama_works_m60a:mguterl:flash
-```
diff --git a/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/rules.mk b/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/rules.mk
deleted file mode 100644
index 800d917f28..0000000000
--- a/keyboards/wilba_tech/rama_works_m60_a/keymaps/mguterl/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-DYNAMIC_KEYMAP_ENABLE = no
diff --git a/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/config.h b/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/config.h
deleted file mode 100644
index 9ad052aab4..0000000000
--- a/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/config.h
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#pragma once
-#undef PRODUCT
-#define PRODUCT RAMA WORKS M60-A Seq2
-#undef DESCRIPTION
-#define DESCRIPTION RAMA WORKS M60-A Seq2
diff --git a/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/keymap.c b/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/keymap.c
deleted file mode 100644
index 5b61116415..0000000000
--- a/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,42 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// Default layer
-[0] = LAYOUT_60_hhkb(
- KC_ESC, KC_1, KC_2, KC_3,TD(SSHT), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSPC,
- CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, TL_LOWR,
- KC_LALT, KC_LGUI, KC_SPC, KC_RALT, TL_UPPR),
-
-// Fn1 Layer
-[1] = LAYOUT_60_hhkb(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
- KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-// Fn2 Layer
-[2] = LAYOUT_60_hhkb(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-// Fn3 Layer (zeal60 Configuration)
-[3] = LAYOUT_60_hhkb(
- QK_BOOT, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BR_DEC, BR_INC, KC_TRNS, EE_CLR,
- KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, ES_DEC, ES_INC, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-};
-
-
diff --git a/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/rules.mk b/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/rules.mk
deleted file mode 100644
index 961bb9bab8..0000000000
--- a/keyboards/wilba_tech/rama_works_m60_a/keymaps/zyber/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-DYNAMIC_KEYMAP_ENABLE = no \ No newline at end of file
diff --git a/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c b/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c
index 80a98460d8..dd292c685d 100644
--- a/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c
+++ b/keyboards/wilba_tech/rama_works_m60_a/rama_works_m60_a.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_M60_A
-#error RGB_BACKLIGHT_M60_A not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_M60_A not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M60_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m60_a/rules.mk b/keyboards/wilba_tech/rama_works_m60_a/rules.mk
index be907583a2..c921fc5c18 100644
--- a/keyboards/wilba_tech/rama_works_m60_a/rules.mk
+++ b/keyboards/wilba_tech/rama_works_m60_a/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_m65_b/config.h b/keyboards/wilba_tech/rama_works_m65_b/config.h
index 6d3f0fb97f..0f3f228cda 100644
--- a/keyboards/wilba_tech/rama_works_m65_b/config.h
+++ b/keyboards/wilba_tech/rama_works_m65_b/config.h
@@ -21,8 +21,9 @@
#define LOCKING_RESYNC_ENABLE
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Enable WT RGB backlight
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c b/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c
index 62546fbfc9..8c92472ecb 100644
--- a/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c
+++ b/keyboards/wilba_tech/rama_works_m65_b/rama_works_m65_b.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_M65_B
-#error RGB_BACKLIGHT_M65_B not defined
+# error RGB_BACKLIGHT_M65_B not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M65_B)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m65_b/rules.mk b/keyboards/wilba_tech/rama_works_m65_b/rules.mk
index 89e17a01b4..d8a2bae455 100644
--- a/keyboards/wilba_tech/rama_works_m65_b/rules.mk
+++ b/keyboards/wilba_tech/rama_works_m65_b/rules.mk
@@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_m65_bx/config.h b/keyboards/wilba_tech/rama_works_m65_bx/config.h
index e367a7fc76..ed0d79aba3 100644
--- a/keyboards/wilba_tech/rama_works_m65_bx/config.h
+++ b/keyboards/wilba_tech/rama_works_m65_bx/config.h
@@ -21,8 +21,9 @@
#define LOCKING_RESYNC_ENABLE
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Enable WT RGB backlight
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c b/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c
index f390540a48..1709b0915e 100644
--- a/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c
+++ b/keyboards/wilba_tech/rama_works_m65_bx/rama_works_m65_bx.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_M65_BX
-#error RGB_BACKLIGHT_M65_BX not defined
+# error RGB_BACKLIGHT_M65_BX not defined
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M65_BX)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m65_bx/rules.mk b/keyboards/wilba_tech/rama_works_m65_bx/rules.mk
index 89e17a01b4..d8a2bae455 100644
--- a/keyboards/wilba_tech/rama_works_m65_bx/rules.mk
+++ b/keyboards/wilba_tech/rama_works_m65_bx/rules.mk
@@ -21,5 +21,5 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_m6_b/config.h b/keyboards/wilba_tech/rama_works_m6_b/config.h
index a117bcc2a8..112cd500be 100644
--- a/keyboards/wilba_tech/rama_works_m6_b/config.h
+++ b/keyboards/wilba_tech/rama_works_m6_b/config.h
@@ -20,6 +20,8 @@
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
+#define IS31FL3218_LED_COUNT 6
+
#define RGB_BACKLIGHT_ENABLED 1
// This conditionally compiles the backlight code for M6-B specifics
diff --git a/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c b/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c
index 581b31d753..cf37083fcc 100644
--- a/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c
+++ b/keyboards/wilba_tech/rama_works_m6_b/rama_works_m6_b.c
@@ -14,5 +14,18 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_M6_B
-#error RGB_BACKLIGHT_M6_B not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_M6_B not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3218.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_M6_B)
+const is31fl3218_led_t PROGMEM g_is31fl3218_leds[IS31FL3218_LED_COUNT] = {
+ {OUT1, OUT2, OUT3},
+ {OUT4, OUT5, OUT6},
+ {OUT7, OUT8, OUT9},
+ {OUT10, OUT11, OUT12},
+ {OUT13, OUT14, OUT15},
+ {OUT16, OUT17, OUT18}
+};
#endif
diff --git a/keyboards/wilba_tech/rama_works_m6_b/rules.mk b/keyboards/wilba_tech/rama_works_m6_b/rules.mk
index 04a197576f..eff0605d90 100644
--- a/keyboards/wilba_tech/rama_works_m6_b/rules.mk
+++ b/keyboards/wilba_tech/rama_works_m6_b/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3218.c \
- i2c_master.c
+ drivers/led/issi/is31fl3218.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/rama_works_u80_a/config.h b/keyboards/wilba_tech/rama_works_u80_a/config.h
index cb2d88bd47..ddbbcfba9b 100644
--- a/keyboards/wilba_tech/rama_works_u80_a/config.h
+++ b/keyboards/wilba_tech/rama_works_u80_a/config.h
@@ -38,8 +38,10 @@
//#define NO_ACTION_ONESHOT
// IS31FL3731 driver
-#define DRIVER_COUNT 3
-#define RGB_MATRIX_LED_COUNT 108
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_I2C_ADDRESS_3 IS31FL3731_I2C_ADDRESS_SCL
+#define IS31FL3731_LED_COUNT 108
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c b/keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c
new file mode 100644
index 0000000000..17091db7ce
--- /dev/null
+++ b/keyboards/wilba_tech/rama_works_u80_a/rama_works_u80_a.c
@@ -0,0 +1,132 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "rama_works_u80_a.h"
+
+#ifdef RGB_BACKLIGHT_U80_A
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_U80_A)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+
+ {2, C2_1, C3_1, C4_1}, // LE0
+ {2, C1_1, C3_2, C4_2}, // LE1
+ {2, C1_2, C2_2, C4_3}, // LE2
+ {2, C1_3, C2_3, C3_3}, // LE3
+ {2, C1_4, C2_4, C3_4}, // LE4
+ {2, C1_5, C2_5, C3_5}, // LE5
+ {2, C1_6, C2_6, C3_6}, // LE6
+ {2, C1_7, C2_7, C3_7}, // LE7
+ {2, C1_8, C2_8, C3_8}, // LE8
+ {2, C9_1, C8_1, C7_1}, // LE9
+ {2, C9_2, C8_2, C7_2}, // LE10
+ {2, C9_3, C8_3, C7_3}, // LE11
+ {2, C9_4, C8_4, C7_4}, // LE12
+ {2, C9_5, C8_5, C7_5}, // LE13
+ {2, C9_6, C8_6, C7_6}, // LE14
+ {2, C9_7, C8_7, C6_6}, // LE15
+ {2, C9_8, C7_7, C6_7}, // LE16
+ {2, C8_8, C7_8, C6_8}, // LE17
+
+ {2, C2_9, C3_9, C4_9}, // LF0
+ {2, C1_9, C3_10, C4_10}, // LF1
+ {2, C1_10, C2_10, C4_11}, // LF2
+ {2, C1_11, C2_11, C3_11}, // LF3
+ {2, C1_12, C2_12, C3_12}, // LF4
+ {2, C1_13, C2_13, C3_13}, // LF5
+ {2, C1_14, C2_14, C3_14}, // LF6
+ {2, C1_15, C2_15, C3_15}, // LF7
+ {2, C1_16, C2_16, C3_16}, // LF8
+ {2, C9_9, C8_9, C7_9}, // LF9
+ {2, C9_10, C8_10, C7_10}, // LF10
+ {2, C9_11, C8_11, C7_11}, // LF11
+ {2, C9_12, C8_12, C7_12}, // LF12
+ {2, C9_13, C8_13, C7_13}, // LF13
+ {2, C9_14, C8_14, C7_14}, // LF14
+ {2, C9_15, C8_15, C6_14}, // LF15
+ {2, C9_16, C7_15, C6_15}, // LF16
+ {2, C8_16, C7_16, C6_16}, // LF17
+};
+#endif
diff --git a/keyboards/wilba_tech/rama_works_u80_a/rules.mk b/keyboards/wilba_tech/rama_works_u80_a/rules.mk
index 3e1eda9d5e..b262985880 100644
--- a/keyboards/wilba_tech/rama_works_u80_a/rules.mk
+++ b/keyboards/wilba_tech/rama_works_u80_a/rules.mk
@@ -15,5 +15,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/wt60_a/config.h b/keyboards/wilba_tech/wt60_a/config.h
index 488eeade83..4dec42b21d 100644
--- a/keyboards/wilba_tech/wt60_a/config.h
+++ b/keyboards/wilba_tech/wt60_a/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt60_a/rules.mk b/keyboards/wilba_tech/wt60_a/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt60_a/rules.mk
+++ b/keyboards/wilba_tech/wt60_a/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt60_b/config.h b/keyboards/wilba_tech/wt60_b/config.h
index cf495a2e78..3a9808dfc5 100644
--- a/keyboards/wilba_tech/wt60_b/config.h
+++ b/keyboards/wilba_tech/wt60_b/config.h
@@ -23,8 +23,9 @@
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/wt60_b/rules.mk b/keyboards/wilba_tech/wt60_b/rules.mk
index a9fcf043e2..397643d372 100644
--- a/keyboards/wilba_tech/wt60_b/rules.mk
+++ b/keyboards/wilba_tech/wt60_b/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/wt60_b/wt60_b.c b/keyboards/wilba_tech/wt60_b/wt60_b.c
new file mode 100644
index 0000000000..f45b6c9612
--- /dev/null
+++ b/keyboards/wilba_tech/wt60_b/wt60_b.c
@@ -0,0 +1,94 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "wt60_b.h"
+
+#ifdef RGB_BACKLIGHT_WT60_B
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_WT60_B)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt60_bx/config.h b/keyboards/wilba_tech/wt60_bx/config.h
index 6f89b14954..1a722e2a2c 100644
--- a/keyboards/wilba_tech/wt60_bx/config.h
+++ b/keyboards/wilba_tech/wt60_bx/config.h
@@ -23,8 +23,9 @@
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/wt60_bx/rules.mk b/keyboards/wilba_tech/wt60_bx/rules.mk
index a9fcf043e2..397643d372 100644
--- a/keyboards/wilba_tech/wt60_bx/rules.mk
+++ b/keyboards/wilba_tech/wt60_bx/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/wt60_bx/wt60_bx.c b/keyboards/wilba_tech/wt60_bx/wt60_bx.c
new file mode 100644
index 0000000000..29e789a2fc
--- /dev/null
+++ b/keyboards/wilba_tech/wt60_bx/wt60_bx.c
@@ -0,0 +1,94 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "wt60_bx.h"
+
+#ifdef RGB_BACKLIGHT_WT60_BX
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_WT60_BX)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt60_c/config.h b/keyboards/wilba_tech/wt60_c/config.h
index 776aebcf20..97a6790fff 100644
--- a/keyboards/wilba_tech/wt60_c/config.h
+++ b/keyboards/wilba_tech/wt60_c/config.h
@@ -23,8 +23,9 @@
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/wilba_tech/wt60_c/rules.mk b/keyboards/wilba_tech/wt60_c/rules.mk
index a9fcf043e2..397643d372 100644
--- a/keyboards/wilba_tech/wt60_c/rules.mk
+++ b/keyboards/wilba_tech/wt60_c/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/wt60_c/wt60_c.c b/keyboards/wilba_tech/wt60_c/wt60_c.c
new file mode 100644
index 0000000000..cac6b866b0
--- /dev/null
+++ b/keyboards/wilba_tech/wt60_c/wt60_c.c
@@ -0,0 +1,94 @@
+// Copyright 2022 QMK
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "wt60_c.h"
+
+#ifdef RGB_BACKLIGHT_WT60_BX
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_WT60_BX)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif
diff --git a/keyboards/wilba_tech/wt65_a/config.h b/keyboards/wilba_tech/wt65_a/config.h
index aa75002b4f..9135642f59 100644
--- a/keyboards/wilba_tech/wt65_a/config.h
+++ b/keyboards/wilba_tech/wt65_a/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt65_a/rules.mk b/keyboards/wilba_tech/wt65_a/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt65_a/rules.mk
+++ b/keyboards/wilba_tech/wt65_a/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt65_b/config.h b/keyboards/wilba_tech/wt65_b/config.h
index 60cdbe4cc6..5f3671004d 100644
--- a/keyboards/wilba_tech/wt65_b/config.h
+++ b/keyboards/wilba_tech/wt65_b/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt65_b/rules.mk b/keyboards/wilba_tech/wt65_b/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt65_b/rules.mk
+++ b/keyboards/wilba_tech/wt65_b/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt75_a/config.h b/keyboards/wilba_tech/wt75_a/config.h
index 4638b0fba9..9dbe040508 100644
--- a/keyboards/wilba_tech/wt75_a/config.h
+++ b/keyboards/wilba_tech/wt75_a/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt75_a/rules.mk b/keyboards/wilba_tech/wt75_a/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt75_a/rules.mk
+++ b/keyboards/wilba_tech/wt75_a/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt75_b/config.h b/keyboards/wilba_tech/wt75_b/config.h
index f519fe6603..9a9db88ab1 100644
--- a/keyboards/wilba_tech/wt75_b/config.h
+++ b/keyboards/wilba_tech/wt75_b/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt75_b/rules.mk b/keyboards/wilba_tech/wt75_b/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt75_b/rules.mk
+++ b/keyboards/wilba_tech/wt75_b/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt75_c/config.h b/keyboards/wilba_tech/wt75_c/config.h
index 7d07822eb6..d2164ceea0 100644
--- a/keyboards/wilba_tech/wt75_c/config.h
+++ b/keyboards/wilba_tech/wt75_c/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt75_c/rules.mk b/keyboards/wilba_tech/wt75_c/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt75_c/rules.mk
+++ b/keyboards/wilba_tech/wt75_c/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt80_a/config.h b/keyboards/wilba_tech/wt80_a/config.h
index 59cb397a00..bda91f562c 100644
--- a/keyboards/wilba_tech/wt80_a/config.h
+++ b/keyboards/wilba_tech/wt80_a/config.h
@@ -61,3 +61,6 @@
// Backlight config starts after VIA's EEPROM usage,
// dynamic keymaps start after this.
#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 7
+
+#define IS31FL3736_I2C_ADDRESS_1 IS31FL3736_I2C_ADDRESS_GND_GND
+#define IS31FL3736_LED_COUNT 96
diff --git a/keyboards/wilba_tech/wt80_a/rules.mk b/keyboards/wilba_tech/wt80_a/rules.mk
index 4a53424c53..9ca8e8f973 100644
--- a/keyboards/wilba_tech/wt80_a/rules.mk
+++ b/keyboards/wilba_tech/wt80_a/rules.mk
@@ -11,8 +11,8 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
# project specific files
-SRC = drivers/led/issi/is31fl3736.c \
- i2c_master.c \
+SRC = drivers/led/issi/is31fl3736-simple.c \
quantum/color.c \
keyboards/wilba_tech/wt_mono_backlight.c \
keyboards/wilba_tech/wt_main.c
+I2C_DRIVER_REQUIRED = yes \ No newline at end of file
diff --git a/keyboards/wilba_tech/wt_mono_backlight.c b/keyboards/wilba_tech/wt_mono_backlight.c
index 28ee5fae81..e218f0af4b 100644
--- a/keyboards/wilba_tech/wt_mono_backlight.c
+++ b/keyboards/wilba_tech/wt_mono_backlight.c
@@ -33,9 +33,7 @@
#error VIA_EEPROM_CUSTOM_CONFIG_SIZE was not defined to store backlight_config struct
#endif
-#include "drivers/led/issi/is31fl3736.h"
-
-#define ISSI_ADDR_DEFAULT 0x50
+#include "drivers/led/issi/is31fl3736-simple.h"
#define BACKLIGHT_EFFECT_MAX 3
@@ -52,6 +50,116 @@ backlight_config g_config = {
.color_1 = MONO_BACKLIGHT_COLOR_1,
};
+const is31fl3736_led_t PROGMEM g_is31fl3736_leds[IS31FL3736_LED_COUNT] = {
+ {0, A_1},
+ {0, A_2},
+ {0, A_3},
+ {0, A_4},
+ {0, A_5},
+ {0, A_6},
+ {0, A_7},
+ {0, A_8},
+
+ {0, B_1},
+ {0, B_2},
+ {0, B_3},
+ {0, B_4},
+ {0, B_5},
+ {0, B_6},
+ {0, B_7},
+ {0, B_8},
+
+ {0, C_1},
+ {0, C_2},
+ {0, C_3},
+ {0, C_4},
+ {0, C_5},
+ {0, C_6},
+ {0, C_7},
+ {0, C_8},
+
+ {0, D_1},
+ {0, D_2},
+ {0, D_3},
+ {0, D_4},
+ {0, D_5},
+ {0, D_6},
+ {0, D_7},
+ {0, D_8},
+
+ {0, E_1},
+ {0, E_2},
+ {0, E_3},
+ {0, E_4},
+ {0, E_5},
+ {0, E_6},
+ {0, E_7},
+ {0, E_8},
+
+ {0, F_1},
+ {0, F_2},
+ {0, F_3},
+ {0, F_4},
+ {0, F_5},
+ {0, F_6},
+ {0, F_7},
+ {0, F_8},
+
+ {0, G_1},
+ {0, G_2},
+ {0, G_3},
+ {0, G_4},
+ {0, G_5},
+ {0, G_6},
+ {0, G_7},
+ {0, G_8},
+
+ {0, H_1},
+ {0, H_2},
+ {0, H_3},
+ {0, H_4},
+ {0, H_5},
+ {0, H_6},
+ {0, H_7},
+ {0, H_8},
+
+ {0, I_1},
+ {0, I_2},
+ {0, I_3},
+ {0, I_4},
+ {0, I_5},
+ {0, I_6},
+ {0, I_7},
+ {0, I_8},
+
+ {0, J_1},
+ {0, J_2},
+ {0, J_3},
+ {0, J_4},
+ {0, J_5},
+ {0, J_6},
+ {0, J_7},
+ {0, J_8},
+
+ {0, K_1},
+ {0, K_2},
+ {0, K_3},
+ {0, K_4},
+ {0, K_5},
+ {0, K_6},
+ {0, K_7},
+ {0, K_8},
+
+ {0, L_1},
+ {0, L_2},
+ {0, L_3},
+ {0, L_4},
+ {0, L_5},
+ {0, L_6},
+ {0, L_7},
+ {0, L_8}
+};
+
bool g_suspend_state = false;
// Global tick at 20 Hz
@@ -62,14 +170,7 @@ uint32_t g_any_key_hit = 0;
void backlight_init_drivers(void)
{
- // Initialize I2C
- i2c_init();
- is31fl3736_init( ISSI_ADDR_DEFAULT );
-
- for ( uint8_t index = 0; index < 96; index++ ) {
- is31fl3736_mono_set_led_control_register( index, true );
- }
- is31fl3736_update_led_control_registers( ISSI_ADDR_DEFAULT, 0x00 );
+ is31fl3736_init_drivers();
}
void backlight_set_key_hit(uint8_t row, uint8_t column)
@@ -119,17 +220,17 @@ void backlight_set_suspend_state(bool state)
void backlight_set_brightness_all( uint8_t value )
{
- is31fl3736_mono_set_brightness_all( value );
+ is31fl3736_set_value_all( value );
}
void backlight_effect_all_off(void)
{
- is31fl3736_mono_set_brightness_all( 0 );
+ is31fl3736_set_value_all( 0 );
}
void backlight_effect_all_on(void)
{
- is31fl3736_mono_set_brightness_all( g_config.brightness );
+ is31fl3736_set_value_all( g_config.brightness );
}
void backlight_effect_raindrops(bool initialize)
@@ -143,7 +244,7 @@ void backlight_effect_raindrops(bool initialize)
// If not, all but one will stay the same as before.
if ( initialize || i == led_to_change )
{
- is31fl3736_mono_set_brightness(i, rand() & 0xFF );
+ is31fl3736_set_value(i, rand() & 0xFF );
}
}
}
@@ -165,9 +266,9 @@ void backlight_effect_indicators(void)
// SW7,CS8 = (6*8+7) = 55
// SW8,CS8 = (7*8+7) = 63
// SW9,CS8 = (8*8+7) = 71
- is31fl3736_mono_set_brightness(55, rgb.r);
- is31fl3736_mono_set_brightness(63, rgb.g);
- is31fl3736_mono_set_brightness(71, rgb.b);
+ is31fl3736_set_value(55, rgb.r);
+ is31fl3736_set_value(63, rgb.g);
+ is31fl3736_set_value(71, rgb.b);
#endif // MONO_BACKLIGHT_WT75_A
// This pairs with "All Off" already setting zero brightness,
@@ -181,19 +282,19 @@ defined(MONO_BACKLIGHT_WT75_C) || \
defined(MONO_BACKLIGHT_WT80_A)
if ( host_keyboard_led_state().caps_lock ) {
// SW3,CS1 = (2*8+0) = 16
- is31fl3736_mono_set_brightness(16, 255);
+ is31fl3736_set_value(16, 255);
}
#endif
#if defined(MONO_BACKLIGHT_WT80_A)
if ( host_keyboard_led_state().scroll_lock ) {
// SW7,CS7 = (6*8+6) = 54
- is31fl3736_mono_set_brightness(54, 255);
+ is31fl3736_set_value(54, 255);
}
#endif
#if defined(MONO_BACKLIGHT_WT75_C)
if ( host_keyboard_led_state().scroll_lock ) {
// SW7,CS8 = (6*8+7) = 55
- is31fl3736_mono_set_brightness(55, 255);
+ is31fl3736_set_value(55, 255);
}
#endif
}
@@ -361,7 +462,7 @@ void backlight_config_save(void)
void backlight_update_pwm_buffers(void)
{
- is31fl3736_update_pwm_buffers(ISSI_ADDR_DEFAULT,0x00);
+ is31fl3736_flush();
}
bool process_record_backlight(uint16_t keycode, keyrecord_t *record)
diff --git a/keyboards/wilba_tech/wt_rgb_backlight.c b/keyboards/wilba_tech/wt_rgb_backlight.c
index 6c57416622..72ddb34ee7 100644
--- a/keyboards/wilba_tech/wt_rgb_backlight.c
+++ b/keyboards/wilba_tech/wt_rgb_backlight.c
@@ -64,7 +64,7 @@
#if defined(RGB_BACKLIGHT_DAWN60)
#include "ws2812.h"
-LED_TYPE g_ws2812_leds[WS2812_LED_TOTAL];
+rgb_led_t g_ws2812_leds[WS2812_LED_TOTAL];
#endif
#include "progmem.h"
@@ -154,799 +154,6 @@ uint8_t g_key_hit[BACKLIGHT_LED_COUNT];
// Ticks since any key was last hit.
uint32_t g_any_key_hit = 0;
-#if defined(RGB_BACKLIGHT_HS60)
-
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// ADDR_2 is not needed. it is here as a dummy
-#define ISSI_ADDR_1 0x50
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, B_1, A_1, C_1}, //LA1
- {0, E_1, D_1, F_1}, //LA2
- {0, H_1, G_1, I_1}, //LA3
- {0, K_1, J_1, L_1}, //LA4
- {0, B_2, A_2, C_2}, //LA5
- {0, E_2, D_2, F_2}, //LA6
- {0, H_2, G_2, I_2}, //LA7
- {0, K_2, J_2, L_2}, //LA8
- {0, B_3, A_3, C_3}, //LA9
- {0, E_3, D_3, F_3}, //LA10
- {0, H_3, G_3, I_3}, //LA11
- {0, K_3, J_3, L_3}, //LA12
- {0, B_4, A_4, C_4}, //LA13
- {0, E_4, D_4, F_4}, //LA14
- {0, H_4, G_4, I_4}, //LA15
- {0, K_4, J_4, L_4}, //LA16
- {0, B_5, A_5, C_5}, //LA17
- {0, E_5, D_5, F_5}, //LA18
- {0, H_5, G_5, I_5}, //LA19
- {0, K_5, J_5, L_5}, //LA20
- {0, B_6, A_6, C_6}, //LA21
- {0, E_6, D_6, F_6}, //LA22
- {0, H_6, G_6, I_6}, //LA23
- {0, K_6, J_6, L_6}, //LA24
- {0, B_7, A_7, C_7}, //LA25
- {0, E_7, D_7, F_7}, //LA26
- {0, H_7, G_7, I_7}, //LA27
- {0, K_7, J_7, L_7}, //LA28
- {0, B_8, A_8, C_8}, //LA29
- {0, E_8, D_8, F_8}, //LA30
- {0, H_8, G_8, I_8}, //LA31
- {0, K_8, J_8, L_8}, //LA32
- {0, B_9, A_9, C_9}, //LA33
- {0, E_9, D_9, F_9}, //LA34
- {0, H_9, G_9, I_9}, //LA35
- {0, K_9, J_9, L_9}, //LA36
- {0, B_10, A_10, C_10}, //LA37
- {0, E_10, D_10, F_10}, //LA38
- {0, H_10, G_10, I_10}, //LA39
- {0, K_10, J_10, L_10}, //LA40
- {0, B_11, A_11, C_11}, //LA41
- {0, E_11, D_11, F_11}, //LA42
- {0, H_11, G_11, I_11}, //LA43
- {0, K_11, J_11, L_11}, //LA44
- {0, B_12, A_12, C_12}, //LA45
- {0, E_12, D_12, F_12}, //LA46
- {0, H_12, G_12, I_12}, //LA47
- {0, K_12, J_12, L_12}, //LA48
- {0, B_13, A_13, C_13}, //LA49
- {0, E_13, D_13, F_13}, //LA50
- {0, H_13, G_13, I_13}, //LA51
- {0, K_13, J_13, L_13}, //LA52
- {0, B_14, A_14, C_14}, //LA53
- {0, E_14, D_14, F_14}, //LA54
- {0, H_14, G_14, I_14}, //LA55
- {0, K_14, J_14, L_14}, //LA56
- {0, B_15, A_15, C_15}, //LA57
- {0, E_15, D_15, F_15}, //LA58
- {0, H_15, G_15, I_15}, //LA59
- {0, K_15, J_15, L_15}, //LA60
- {0, B_16, A_16, C_16}, //LA61
- {0, E_16, D_16, F_16}, //LA62
- {0, H_16, G_16, I_16}, //LA63
- {0, K_16, J_16, L_16}, //LA64
-};
-
-#elif defined(RGB_BACKLIGHT_NK65) || defined(RGB_BACKLIGHT_NEBULA68) || defined(RGB_BACKLIGHT_NK87) || defined(RGB_BACKLIGHT_KW_MEGA)
-
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-// ADDR_2 is not needed. it is here as a dummy
-#define ISSI_ADDR_1 0x50
-#define ISSI_ADDR_2 0x52
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, B_1, A_1, C_1}, //LA1
- {0, E_1, D_1, F_1}, //LA2
- {0, H_1, G_1, I_1}, //LA3
- {0, K_1, J_1, L_1}, //LA4
- {0, B_2, A_2, C_2}, //LA5
- {0, E_2, D_2, F_2}, //LA6
- {0, H_2, G_2, I_2}, //LA7
- {0, K_2, J_2, L_2}, //LA8
- {0, B_3, A_3, C_3}, //LA9
- {0, E_3, D_3, F_3}, //LA10
- {0, H_3, G_3, I_3}, //LA11
- {0, K_3, J_3, L_3}, //LA12
- {0, B_4, A_4, C_4}, //LA13
- {0, E_4, D_4, F_4}, //LA14
- {0, H_4, G_4, I_4}, //LA15
- {0, K_4, J_4, L_4}, //LA16
- {0, B_5, A_5, C_5}, //LA17
- {0, E_5, D_5, F_5}, //LA18
- {0, H_5, G_5, I_5}, //LA19
- {0, K_5, J_5, L_5}, //LA20
- {0, B_6, A_6, C_6}, //LA21
- {0, E_6, D_6, F_6}, //LA22
- {0, H_6, G_6, I_6}, //LA23
- {0, K_6, J_6, L_6}, //LA24
- {0, B_7, A_7, C_7}, //LA25
- {0, E_7, D_7, F_7}, //LA26
- {0, H_7, G_7, I_7}, //LA27
- {0, K_7, J_7, L_7}, //LA28
- {0, B_8, A_8, C_8}, //LA29
- {0, E_8, D_8, F_8}, //LA30
- {0, H_8, G_8, I_8}, //LA31
- {0, K_8, J_8, L_8}, //LA32
- {0, B_9, A_9, C_9}, //LA33
- {0, E_9, D_9, F_9}, //LA34
- {0, H_9, G_9, I_9}, //LA35
- {0, K_9, J_9, L_9}, //LA36
- {0, B_10, A_10, C_10}, //LA37
- {0, E_10, D_10, F_10}, //LA38
- {0, H_10, G_10, I_10}, //LA39
- {0, K_10, J_10, L_10}, //LA40
- {0, B_11, A_11, C_11}, //LA41
- {0, E_11, D_11, F_11}, //LA42
- {0, H_11, G_11, I_11}, //LA43
- {0, K_11, J_11, L_11}, //LA44
- {0, B_12, A_12, C_12}, //LA45
- {0, E_12, D_12, F_12}, //LA46
- {0, H_12, G_12, I_12}, //LA47
- {0, K_12, J_12, L_12}, //LA48
- {0, B_13, A_13, C_13}, //LA49
- {0, E_13, D_13, F_13}, //LA50
- {0, H_13, G_13, I_13}, //LA51
- {0, K_13, J_13, L_13}, //LA52
- {0, B_14, A_14, C_14}, //LA53
- {0, E_14, D_14, F_14}, //LA54
- {0, H_14, G_14, I_14}, //LA55
- {0, K_14, J_14, L_14}, //LA56
- {0, B_15, A_15, C_15}, //LA57
- {0, E_15, D_15, F_15}, //LA58
- {0, H_15, G_15, I_15}, //LA59
- {0, K_15, J_15, L_15}, //LA60
- {0, B_16, A_16, C_16}, //LA61
- {0, E_16, D_16, F_16}, //LA62
- {0, H_16, G_16, I_16}, //LA63
- {0, K_16, J_16, L_16}, //LA64
-
- {1, B_1, A_1, C_1}, //LB1
- {1, E_1, D_1, F_1}, //LB2
- {1, H_1, G_1, I_1}, //LB3
- {1, K_1, J_1, L_1}, //LB4
- {1, B_2, A_2, C_2}, //LB5
- {1, E_2, D_2, F_2}, //LB6
- {1, H_2, G_2, I_2}, //LB7
- {1, K_2, J_2, L_2}, //LB8
- {1, B_3, A_3, C_3}, //LB9
- {1, E_3, D_3, F_3}, //LB10
- {1, H_3, G_3, I_3}, //LB11
- {1, K_3, J_3, L_3}, //LB12
- {1, B_4, A_4, C_4}, //LB13
- {1, E_4, D_4, F_4}, //LB14
- {1, H_4, G_4, I_4}, //LB15
- {1, K_4, J_4, L_4}, //LB16
- {1, B_5, A_5, C_5}, //LB17
- {1, E_5, D_5, F_5}, //LB18
- {1, H_5, G_5, I_5}, //LB19
- {1, K_5, J_5, L_5}, //LB20
- {1, B_6, A_6, C_6}, //LB21
- {1, E_6, D_6, F_6}, //LB22
- {1, H_6, G_6, I_6}, //LB23
- {1, K_6, J_6, L_6}, //LB24
- {1, B_7, A_7, C_7}, //LB25
- {1, E_7, D_7, F_7}, //LB26
- {1, H_7, G_7, I_7}, //LB27
- {1, K_7, J_7, L_7}, //LB28
- {1, B_8, A_8, C_8}, //LB29
- {1, E_8, D_8, F_8}, //LB30
- {1, H_8, G_8, I_8}, //LB31
- {1, K_8, J_8, L_8}, //LB32
- {1, B_9, A_9, C_9}, //LB33
- {1, E_9, D_9, F_9}, //LB34
- {1, H_9, G_9, I_9}, //LB35
- {1, K_9, J_9, L_9}, //LB36
- {1, B_10, A_10, C_10}, //LB37
- {1, E_10, D_10, F_10}, //LB38
- {1, H_10, G_10, I_10}, //LB39
- {1, K_10, J_10, L_10}, //LB40
- {1, B_11, A_11, C_11}, //LB41
- {1, E_11, D_11, F_11}, //LB42
- {1, H_11, G_11, I_11}, //LB43
- {1, K_11, J_11, L_11}, //LB44
- {1, B_12, A_12, C_12}, //LB45
- {1, E_12, D_12, F_12}, //LB46
- {1, H_12, G_12, I_12}, //LB47
- {1, K_12, J_12, L_12}, //LB48
- {1, B_13, A_13, C_13}, //LB49
- {1, E_13, D_13, F_13}, //LB50
- {1, H_13, G_13, I_13}, //LB51
- {1, K_13, J_13, L_13}, //LB52
- {1, B_14, A_14, C_14}, //LB53
- {1, E_14, D_14, F_14}, //LB54
- {1, H_14, G_14, I_14}, //LB55
- {1, K_14, J_14, L_14}, //LB56
- {1, B_15, A_15, C_15}, //LB57
- {1, E_15, D_15, F_15}, //LB58
- {1, H_15, G_15, I_15}, //LB59
- {1, K_15, J_15, L_15}, //LB60
- {1, B_16, A_16, C_16}, //LB61
- {1, E_16, D_16, F_16}, //LB62
- {1, H_16, G_16, I_16}, //LB63
- {1, K_16, J_16, L_16}, //LB64
-};
-
-#elif defined(RGB_BACKLIGHT_NEBULA12)
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-#define ISSI_ADDR_1 0x74
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C1_1, C3_2, C4_2}, //A1
- {0, C1_2, C2_2, C4_3}, //A2
- {0, C1_3, C2_3, C3_3}, //A3
- {0, C1_4, C2_4, C3_4}, //A4
- {0, C1_5, C2_5, C3_5}, //A5
- {0, C1_6, C2_6, C3_6}, //A6
- {0, C1_7, C2_7, C3_7}, //A7
- {0, C1_8, C2_8, C3_8}, //A8
- {0, C9_1, C8_1, C7_1}, //A9
- {0, C9_2, C8_2, C7_2}, //A10
- {0, C9_3, C8_3, C7_3}, //A11
- {0, C9_4, C8_4, C7_4}, //A12
- {0, C9_5, C8_5, C7_5}, //A13
- {0, C9_6, C8_6, C7_6}, //A14
- {0, C9_7, C8_7, C6_6}, //A15
- {0, C9_8, C7_7, C6_7}, //A16
-};
-
-#elif defined(RGB_BACKLIGHT_U80_A)
-
-// U80-A prototype uses 3 ISSI drivers
-#define ISSI_ADDR_1 0x74 // 11101[00] <- GND
-#define ISSI_ADDR_2 0x76 // 11101[10] <- SDA
-#define ISSI_ADDR_3 0x75 // 11101[01] <- SCL
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C2_1, C3_1, C4_1}, // LA0
- {0, C1_1, C3_2, C4_2}, // LA1
- {0, C1_2, C2_2, C4_3}, // LA2
- {0, C1_3, C2_3, C3_3}, // LA3
- {0, C1_4, C2_4, C3_4}, // LA4
- {0, C1_5, C2_5, C3_5}, // LA5
- {0, C1_6, C2_6, C3_6}, // LA6
- {0, C1_7, C2_7, C3_7}, // LA7
- {0, C1_8, C2_8, C3_8}, // LA8
- {0, C9_1, C8_1, C7_1}, // LA9
- {0, C9_2, C8_2, C7_2}, // LA10
- {0, C9_3, C8_3, C7_3}, // LA11
- {0, C9_4, C8_4, C7_4}, // LA12
- {0, C9_5, C8_5, C7_5}, // LA13
- {0, C9_6, C8_6, C7_6}, // LA14
- {0, C9_7, C8_7, C6_6}, // LA15
- {0, C9_8, C7_7, C6_7}, // LA16
- {0, C8_8, C7_8, C6_8}, // LA17
-
- {0, C2_9, C3_9, C4_9}, // LB0
- {0, C1_9, C3_10, C4_10}, // LB1
- {0, C1_10, C2_10, C4_11}, // LB2
- {0, C1_11, C2_11, C3_11}, // LB3
- {0, C1_12, C2_12, C3_12}, // LB4
- {0, C1_13, C2_13, C3_13}, // LB5
- {0, C1_14, C2_14, C3_14}, // LB6
- {0, C1_15, C2_15, C3_15}, // LB7
- {0, C1_16, C2_16, C3_16}, // LB8
- {0, C9_9, C8_9, C7_9}, // LB9
- {0, C9_10, C8_10, C7_10}, // LB10
- {0, C9_11, C8_11, C7_11}, // LB11
- {0, C9_12, C8_12, C7_12}, // LB12
- {0, C9_13, C8_13, C7_13}, // LB13
- {0, C9_14, C8_14, C7_14}, // LB14
- {0, C9_15, C8_15, C6_14}, // LB15
- {0, C9_16, C7_15, C6_15}, // LB16
- {0, C8_16, C7_16, C6_16}, // LB17
-
- {1, C2_1, C3_1, C4_1}, // LC0
- {1, C1_1, C3_2, C4_2}, // LC1
- {1, C1_2, C2_2, C4_3}, // LC2
- {1, C1_3, C2_3, C3_3}, // LC3
- {1, C1_4, C2_4, C3_4}, // LC4
- {1, C1_5, C2_5, C3_5}, // LC5
- {1, C1_6, C2_6, C3_6}, // LC6
- {1, C1_7, C2_7, C3_7}, // LC7
- {1, C1_8, C2_8, C3_8}, // LC8
- {1, C9_1, C8_1, C7_1}, // LC9
- {1, C9_2, C8_2, C7_2}, // LC10
- {1, C9_3, C8_3, C7_3}, // LC11
- {1, C9_4, C8_4, C7_4}, // LC12
- {1, C9_5, C8_5, C7_5}, // LC13
- {1, C9_6, C8_6, C7_6}, // LC14
- {1, C9_7, C8_7, C6_6}, // LC15
- {1, C9_8, C7_7, C6_7}, // LC16
- {1, C8_8, C7_8, C6_8}, // LC17
-
- {1, C2_9, C3_9, C4_9}, // LD0
- {1, C1_9, C3_10, C4_10}, // LD1
- {1, C1_10, C2_10, C4_11}, // LD2
- {1, C1_11, C2_11, C3_11}, // LD3
- {1, C1_12, C2_12, C3_12}, // LD4
- {1, C1_13, C2_13, C3_13}, // LD5
- {1, C1_14, C2_14, C3_14}, // LD6
- {1, C1_15, C2_15, C3_15}, // LD7
- {1, C1_16, C2_16, C3_16}, // LD8
- {1, C9_9, C8_9, C7_9}, // LD9
- {1, C9_10, C8_10, C7_10}, // LD10
- {1, C9_11, C8_11, C7_11}, // LD11
- {1, C9_12, C8_12, C7_12}, // LD12
- {1, C9_13, C8_13, C7_13}, // LD13
- {1, C9_14, C8_14, C7_14}, // LD14
- {1, C9_15, C8_15, C6_14}, // LD15
- {1, C9_16, C7_15, C6_15}, // LD16
- {1, C8_16, C7_16, C6_16}, // LD17
-
- {2, C2_1, C3_1, C4_1}, // LE0
- {2, C1_1, C3_2, C4_2}, // LE1
- {2, C1_2, C2_2, C4_3}, // LE2
- {2, C1_3, C2_3, C3_3}, // LE3
- {2, C1_4, C2_4, C3_4}, // LE4
- {2, C1_5, C2_5, C3_5}, // LE5
- {2, C1_6, C2_6, C3_6}, // LE6
- {2, C1_7, C2_7, C3_7}, // LE7
- {2, C1_8, C2_8, C3_8}, // LE8
- {2, C9_1, C8_1, C7_1}, // LE9
- {2, C9_2, C8_2, C7_2}, // LE10
- {2, C9_3, C8_3, C7_3}, // LE11
- {2, C9_4, C8_4, C7_4}, // LE12
- {2, C9_5, C8_5, C7_5}, // LE13
- {2, C9_6, C8_6, C7_6}, // LE14
- {2, C9_7, C8_7, C6_6}, // LE15
- {2, C9_8, C7_7, C6_7}, // LE16
- {2, C8_8, C7_8, C6_8}, // LE17
-
- {2, C2_9, C3_9, C4_9}, // LF0
- {2, C1_9, C3_10, C4_10}, // LF1
- {2, C1_10, C2_10, C4_11}, // LF2
- {2, C1_11, C2_11, C3_11}, // LF3
- {2, C1_12, C2_12, C3_12}, // LF4
- {2, C1_13, C2_13, C3_13}, // LF5
- {2, C1_14, C2_14, C3_14}, // LF6
- {2, C1_15, C2_15, C3_15}, // LF7
- {2, C1_16, C2_16, C3_16}, // LF8
- {2, C9_9, C8_9, C7_9}, // LF9
- {2, C9_10, C8_10, C7_10}, // LF10
- {2, C9_11, C8_11, C7_11}, // LF11
- {2, C9_12, C8_12, C7_12}, // LF12
- {2, C9_13, C8_13, C7_13}, // LF13
- {2, C9_14, C8_14, C7_14}, // LF14
- {2, C9_15, C8_15, C6_14}, // LF15
- {2, C9_16, C7_15, C6_15}, // LF16
- {2, C8_16, C7_16, C6_16}, // LF17
-};
-#elif defined(RGB_BACKLIGHT_DAWN60)
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-#define ISSI_ADDR_1 0x74
-#define ISSI_ADDR_2 0x76
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C1_1, C3_2, C4_2}, //A1
- {0, C1_2, C2_2, C4_3}, //A2
- {0, C1_3, C2_3, C3_3}, //A3
- {0, C1_4, C2_4, C3_4}, //A4
- {0, C1_5, C2_5, C3_5}, //A5
- {0, C1_6, C2_6, C3_6}, //A6
- {0, C1_7, C2_7, C3_7}, //A7
- {0, C1_8, C2_8, C3_8}, //A8
- {0, C9_1, C8_1, C7_1}, //A9
- {0, C9_2, C8_2, C7_2}, //A10
- {0, C9_3, C8_3, C7_3}, //A11
- {0, C9_4, C8_4, C7_4}, //A12
- {0, C9_5, C8_5, C7_5}, //A13
- {0, C9_6, C8_6, C7_6}, //A14
- {0, C9_7, C8_7, C6_6}, //A15
- {0, C9_8, C7_7, C6_7}, //A16
-
- {0, C1_9, C3_10, C4_10}, //B1
- {0, C1_10, C2_10, C4_11}, //B2
- {0, C1_11, C2_11, C3_11}, //B3
- {0, C1_12, C2_12, C3_12}, //B4
- {0, C1_13, C2_13, C3_13}, //B5
- {0, C1_14, C2_14, C3_14}, //B6
- {0, C1_15, C2_15, C3_15}, //B7
- {0, C1_16, C2_16, C3_16}, //B8
- {0, C9_9, C8_9, C7_9}, //B9
- {0, C9_10, C8_10, C7_10}, //B10
- {0, C9_11, C8_11, C7_11}, //B11
- {0, C9_12, C8_12, C7_12}, //B12
- {0, C9_13, C8_13, C7_13}, //B13
- {0, C9_14, C8_14, C7_14}, //B14
- {0, C9_15, C8_15, C6_14}, //B15
- {0, C9_16, C7_15, C6_15}, //B16
-
- {1, C1_1, C3_2, C4_2}, //C1
- {1, C1_2, C2_2, C4_3}, //C2
- {1, C1_3, C2_3, C3_3}, //C3
- {1, C1_4, C2_4, C3_4}, //C4
- {1, C1_5, C2_5, C3_5}, //C5
- {1, C1_6, C2_6, C3_6}, //C6
- {1, C1_7, C2_7, C3_7}, //C7
- {1, C1_8, C2_8, C3_8}, //C8
- {1, C9_1, C8_1, C7_1}, //C9
- {1, C9_2, C8_2, C7_2}, //C10
- {1, C9_3, C8_3, C7_3}, //C11
- {1, C9_4, C8_4, C7_4}, //C12
- {1, C9_5, C8_5, C7_5}, //C13
- {1, C9_6, C8_6, C7_6}, //C14
- {1, C9_7, C8_7, C6_6}, //C15
- {1, C9_8, C7_7, C6_7}, //C16
-
- {1, C1_9, C3_10, C4_10}, //D1
- {1, C1_10, C2_10, C4_11}, //D2
- {1, C1_11, C2_11, C3_11}, //D3
- {1, C1_12, C2_12, C3_12}, //D4
- {1, C1_13, C2_13, C3_13}, //D5
- {1, C1_14, C2_14, C3_14}, //D6
- {1, C1_15, C2_15, C3_15}, //D7
- {1, C1_16, C2_16, C3_16}, //D8
- {1, C9_9, C8_9, C7_9}, //D9
- {1, C9_10, C8_10, C7_10}, //D10
- {1, C9_11, C8_11, C7_11}, //D11
- {1, C9_12, C8_12, C7_12}, //D12
- {1, C9_13, C8_13, C7_13}, //D13
- {1, C9_14, C8_14, C7_14}, //D14
- {1, C9_15, C8_15, C6_14}, //D15
- {1, C9_16, C7_15, C6_15} //D16
-};
-#elif defined(RGB_BACKLIGHT_PORTICO)
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-#define ISSI_ADDR_1 0x74
-#define ISSI_ADDR_2 0x77
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- { 0, C2_1, C3_1, C4_1 },
- { 0, C1_1, C3_2, C4_2 },
- { 0, C1_2, C2_2, C4_3 },
- { 0, C1_3, C2_3, C3_3 },
- { 0, C1_4, C2_4, C3_4 },
- { 0, C1_5, C2_5, C3_5 },
- { 0, C1_6, C2_6, C3_6 },
- { 0, C1_7, C2_7, C3_7 },
- { 0, C1_8, C2_8, C3_8 },
- { 1, C2_1, C3_1, C4_1 },
- { 1, C1_1, C3_2, C4_2 },
- { 1, C1_2, C2_2, C4_3 },
- { 1, C1_3, C2_3, C3_3 },
- { 1, C1_4, C2_4, C3_4 },
- { 1, C1_5, C2_5, C3_5 },
-
- { 0, C9_1, C8_1, C7_1 },
- { 0, C9_2, C8_2, C7_2 },
- { 0, C9_3, C8_3, C7_3 },
- { 0, C9_4, C8_4, C7_4 },
- { 0, C9_5, C8_5, C7_5 },
- { 0, C9_6, C8_6, C7_6 },
- { 0, C9_7, C8_7, C6_6 },
- { 0, C9_8, C7_7, C6_7 },
- { 0, C8_8, C7_8, C6_8 },
- { 1, C9_1, C8_1, C7_1 },
- { 1, C9_2, C8_2, C7_2 },
- { 1, C9_3, C8_3, C7_3 },
- { 1, C9_4, C8_4, C7_4 },
- { 1, C9_5, C8_5, C7_5 },
- { 1, C9_6, C8_6, C7_6 },
-
- { 0, C1_9, C3_10, C4_10 },
- { 0, C1_10, C2_10, C4_11 },
- { 0, C1_11, C2_11, C3_11 },
- { 0, C1_12, C2_12, C3_12 },
- { 0, C1_13, C2_13, C3_13 },
- { 0, C1_14, C2_14, C3_14 },
- { 0, C1_15, C2_15, C3_15 },
- { 0, C1_16, C2_16, C3_16 },
- { 1, C1_10, C2_10, C4_11 },
- { 1, C1_11, C2_11, C3_11 },
- { 1, C1_12, C2_12, C3_12 },
- { 1, C1_13, C2_13, C3_13 },
- { 1, C1_14, C2_14, C3_14 },
- { 1, C9_7, C8_7, C6_6 },
-
- { 0, C2_9, C3_9, C4_9 },
- { 0, C9_12, C8_12, C7_12 },
- { 0, C9_13, C8_13, C7_13 },
- { 0, C9_14, C8_14, C7_14 },
- { 0, C9_15, C8_15, C6_14 },
- { 0, C9_16, C7_15, C6_15 },
- { 1, C2_9, C3_9, C4_9 },
- { 1, C1_9, C3_10, C4_10 },
- { 1, C9_9, C8_9, C7_9 },
- { 1, C9_10, C8_10, C7_10 },
- { 1, C9_11, C8_11, C7_11 },
- { 1, C9_14, C8_14, C7_14 },
- { 1, C1_15, C2_15, C3_15 },
- { 1, C1_16, C2_16, C3_16 },
-
- { 0, C9_9, C8_9, C7_9 },
- { 0, C9_10, C8_10, C7_10 },
- { 0, C9_11, C8_11, C7_11 },
- { 0, C8_16, C7_16, C6_16 },
- { 1, C9_12, C8_12, C7_12 },
- { 1, C9_13, C8_13, C7_13 },
- { 1, C9_15, C8_15, C6_14 },
- { 1, C9_16, C7_15, C6_15 },
- { 1, C8_16, C7_16, C6_16 }
-};
-
-#elif defined(RGB_BACKLIGHT_PORTICO75)
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-#define ISSI_ADDR_1 0x30
-#define ISSI_ADDR_2
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, CS18_SW1, CS17_SW1, CS16_SW1},
- {0, CS18_SW2, CS17_SW2, CS16_SW2},
- {0, CS18_SW3, CS17_SW3, CS16_SW3},
- {0, CS18_SW4, CS17_SW4, CS16_SW4},
- {0, CS18_SW5, CS17_SW5, CS16_SW5},
- {0, CS18_SW6, CS17_SW6, CS16_SW6},
- {0, CS18_SW7, CS17_SW7, CS16_SW7},
- {0, CS18_SW8, CS17_SW8, CS16_SW8},
- {0, CS18_SW9, CS17_SW9, CS16_SW9},
-
- {0, CS21_SW1, CS20_SW1, CS19_SW1},
- {0, CS21_SW2, CS20_SW2, CS19_SW2},
- {0, CS21_SW3, CS20_SW3, CS19_SW3},
- {0, CS21_SW4, CS20_SW4, CS19_SW4},
- {0, CS21_SW5, CS20_SW5, CS19_SW5},
- {0, CS21_SW6, CS20_SW6, CS19_SW6}, //Encoder, NO_LED
-
- {0, CS15_SW1, CS14_SW1, CS13_SW1},
- {0, CS15_SW2, CS14_SW2, CS13_SW2},
- {0, CS15_SW3, CS14_SW3, CS13_SW3},
- {0, CS15_SW4, CS14_SW4, CS13_SW4},
- {0, CS15_SW5, CS14_SW5, CS13_SW5},
- {0, CS15_SW6, CS14_SW6, CS13_SW6},
- {0, CS15_SW7, CS14_SW7, CS13_SW7},
- {0, CS15_SW8, CS14_SW8, CS13_SW8},
- {0, CS15_SW9, CS14_SW9, CS13_SW9},
-
- {0, CS24_SW1, CS23_SW1, CS22_SW1},
- {0, CS24_SW2, CS23_SW2, CS22_SW2},
- {0, CS24_SW3, CS23_SW3, CS22_SW3},
- {0, CS24_SW4, CS23_SW4, CS22_SW4},
- {0, CS24_SW5, CS23_SW5, CS22_SW5},
- {0, CS24_SW6, CS23_SW6, CS22_SW6},
-
- {0, CS12_SW1, CS11_SW1, CS10_SW1},
- {0, CS12_SW2, CS11_SW2, CS10_SW2},
- {0, CS12_SW3, CS11_SW3, CS10_SW3},
- {0, CS12_SW4, CS11_SW4, CS10_SW4},
- {0, CS12_SW5, CS11_SW5, CS10_SW5},
- {0, CS12_SW6, CS11_SW6, CS10_SW6},
- {0, CS12_SW7, CS11_SW7, CS10_SW7},
- {0, CS12_SW8, CS11_SW8, CS10_SW8},
- {0, CS12_SW9, CS11_SW9, CS10_SW9},
-
- {0, CS27_SW1, CS26_SW1, CS25_SW1},
- {0, CS27_SW2, CS26_SW2, CS25_SW2},
- {0, CS27_SW3, CS26_SW3, CS25_SW3},
- {0, CS27_SW4, CS26_SW4, CS25_SW4},
- {0, CS27_SW5, CS26_SW5, CS25_SW5},
- {0, CS27_SW6, CS26_SW6, CS25_SW6},
-
- {0, CS9_SW1, CS8_SW1, CS7_SW1},
- {0, CS9_SW2, CS8_SW2, CS7_SW2},
- {0, CS9_SW3, CS8_SW3, CS7_SW3},
- {0, CS9_SW4, CS8_SW4, CS7_SW4},
- {0, CS9_SW5, CS8_SW5, CS7_SW5},
- {0, CS9_SW6, CS8_SW6, CS7_SW6},
- {0, CS9_SW7, CS8_SW7, CS7_SW7},
- {0, CS9_SW8, CS8_SW8, CS7_SW8},
- {0, CS9_SW9, CS8_SW9, CS7_SW9},
-
- {0, CS30_SW1, CS29_SW1, CS28_SW1},
- {0, CS30_SW2, CS29_SW2, CS28_SW2},
- {0, CS30_SW3, CS29_SW3, CS28_SW3},
- {0, CS30_SW4, CS29_SW4, CS28_SW4},
-
- {0, CS6_SW1, CS5_SW1, CS4_SW1},
- {0, CS6_SW2, CS5_SW2, CS4_SW2},
- {0, CS6_SW3, CS5_SW3, CS4_SW3},
- {0, CS6_SW4, CS5_SW4, CS4_SW4},
- {0, CS6_SW5, CS5_SW5, CS4_SW5},
- {0, CS6_SW6, CS5_SW6, CS4_SW6},
- {0, CS6_SW7, CS5_SW7, CS4_SW7},
- {0, CS6_SW8, CS5_SW8, CS4_SW8},
- {0, CS6_SW9, CS5_SW9, CS4_SW9},
-
- {0, CS33_SW1, CS32_SW1, CS31_SW1},
- {0, CS33_SW2, CS32_SW2, CS31_SW2},
- {0, CS33_SW3, CS32_SW3, CS31_SW3},
- {0, CS33_SW4, CS32_SW4, CS31_SW4},
-
- {0, CS3_SW1, CS2_SW1, CS1_SW1},
- {0, CS3_SW2, CS2_SW2, CS1_SW2},
- {0, CS3_SW3, CS2_SW3, CS1_SW3},
- {0, CS3_SW6, CS2_SW6, CS1_SW6},
- {0, CS3_SW8, CS2_SW8, CS1_SW8},
- {0, CS3_SW9, CS2_SW9, CS1_SW9},
-
- {0, CS36_SW1, CS35_SW1, CS34_SW1},
- {0, CS36_SW2, CS35_SW2, CS34_SW2},
- {0, CS36_SW3, CS35_SW3, CS34_SW3},
-
-/*UNDERGLOW*/
- {0, CS39_SW1, CS38_SW1, CS37_SW1},
- {0, CS39_SW2, CS38_SW2, CS37_SW2},
- {0, CS39_SW3, CS38_SW3, CS37_SW3},
- {0, CS39_SW4, CS38_SW4, CS37_SW4},
- {0, CS39_SW5, CS38_SW5, CS37_SW5},
- {0, CS39_SW6, CS38_SW6, CS37_SW6},
- {0, CS39_SW7, CS38_SW7, CS37_SW7},
- {0, CS39_SW8, CS38_SW8, CS37_SW8},
- {0, CS39_SW9, CS38_SW9, CS37_SW9},
-
- {0, CS36_SW4, CS35_SW4, CS34_SW4},
- {0, CS36_SW5, CS35_SW5, CS34_SW5},
- {0, CS36_SW6, CS35_SW6, CS34_SW6},
- {0, CS36_SW7, CS35_SW7, CS34_SW7},
- {0, CS36_SW8, CS35_SW8, CS34_SW8},
- {0, CS36_SW9, CS35_SW9, CS34_SW9},
-
- {0, CS33_SW5, CS32_SW5, CS31_SW5},
- {0, CS33_SW6, CS32_SW6, CS31_SW6},
- {0, CS33_SW7, CS32_SW7, CS31_SW7}
-};
-
-#elif defined(RGB_BACKLIGHT_M6_B)
- // Driver has fixed mapping of index to the red, green and blue LEDs
-#elif defined(RGB_BACKLIGHT_M10_C)
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-#define ISSI_ADDR_1 0x74
-#define ISSI_ADDR_2
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
- {0, C1_9, C3_10, C4_10}, // LB1
- {0, C1_10, C2_10, C4_11}, // LB2
- {0, C1_11, C2_11, C3_11}, // LB3
- {0, C1_12, C2_12, C3_12}, // LB4
- {0, C1_13, C2_13, C3_13}, // LB5
- {0, C1_14, C2_14, C3_14}, // LB6
- {0, C9_11, C8_11, C7_11}, // LB11
- {0, C9_12, C8_12, C7_12}, // LB12
- {0, C9_13, C8_13, C7_13}, // LB13
- {0, C9_14, C8_14, C7_14}, // LB14
- {0, C9_15, C8_15, C6_14}, // LB15
- {0, C9_16, C7_15, C6_15} // LB16
-};
-#else
-// This is a 7-bit address, that gets left-shifted and bit 0
-// set to 0 for write, 1 for read (as per I2C protocol)
-#define ISSI_ADDR_1 0x74
-#define ISSI_ADDR_2 0x76
-
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
-/* Refer to IS31 manual for these locations
- * driver
- * | R location
- * | | G location
- * | | | B location
- * | | | | */
- {0, C2_1, C3_1, C4_1}, // LA0
- {0, C1_1, C3_2, C4_2}, // LA1
- {0, C1_2, C2_2, C4_3}, // LA2
- {0, C1_3, C2_3, C3_3}, // LA3
- {0, C1_4, C2_4, C3_4}, // LA4
- {0, C1_5, C2_5, C3_5}, // LA5
- {0, C1_6, C2_6, C3_6}, // LA6
- {0, C1_7, C2_7, C3_7}, // LA7
- {0, C1_8, C2_8, C3_8}, // LA8
- {0, C9_1, C8_1, C7_1}, // LA9
- {0, C9_2, C8_2, C7_2}, // LA10
- {0, C9_3, C8_3, C7_3}, // LA11
- {0, C9_4, C8_4, C7_4}, // LA12
- {0, C9_5, C8_5, C7_5}, // LA13
- {0, C9_6, C8_6, C7_6}, // LA14
- {0, C9_7, C8_7, C6_6}, // LA15
- {0, C9_8, C7_7, C6_7}, // LA16
- {0, C8_8, C7_8, C6_8}, // LA17
-
- {0, C2_9, C3_9, C4_9}, // LB0
- {0, C1_9, C3_10, C4_10}, // LB1
- {0, C1_10, C2_10, C4_11}, // LB2
- {0, C1_11, C2_11, C3_11}, // LB3
- {0, C1_12, C2_12, C3_12}, // LB4
- {0, C1_13, C2_13, C3_13}, // LB5
- {0, C1_14, C2_14, C3_14}, // LB6
- {0, C1_15, C2_15, C3_15}, // LB7
- {0, C1_16, C2_16, C3_16}, // LB8
- {0, C9_9, C8_9, C7_9}, // LB9
- {0, C9_10, C8_10, C7_10}, // LB10
- {0, C9_11, C8_11, C7_11}, // LB11
- {0, C9_12, C8_12, C7_12}, // LB12
- {0, C9_13, C8_13, C7_13}, // LB13
- {0, C9_14, C8_14, C7_14}, // LB14
- {0, C9_15, C8_15, C6_14}, // LB15
- {0, C9_16, C7_15, C6_15}, // LB16
- {0, C8_16, C7_16, C6_16}, // LB17
-
- {1, C2_1, C3_1, C4_1}, // LC0
- {1, C1_1, C3_2, C4_2}, // LC1
- {1, C1_2, C2_2, C4_3}, // LC2
- {1, C1_3, C2_3, C3_3}, // LC3
- {1, C1_4, C2_4, C3_4}, // LC4
- {1, C1_5, C2_5, C3_5}, // LC5
- {1, C1_6, C2_6, C3_6}, // LC6
- {1, C1_7, C2_7, C3_7}, // LC7
- {1, C1_8, C2_8, C3_8}, // LC8
- {1, C9_1, C8_1, C7_1}, // LC9
- {1, C9_2, C8_2, C7_2}, // LC10
- {1, C9_3, C8_3, C7_3}, // LC11
- {1, C9_4, C8_4, C7_4}, // LC12
- {1, C9_5, C8_5, C7_5}, // LC13
- {1, C9_6, C8_6, C7_6}, // LC14
- {1, C9_7, C8_7, C6_6}, // LC15
- {1, C9_8, C7_7, C6_7}, // LC16
- {1, C8_8, C7_8, C6_8}, // LC17
-
- {1, C2_9, C3_9, C4_9}, // LD0
- {1, C1_9, C3_10, C4_10}, // LD1
- {1, C1_10, C2_10, C4_11}, // LD2
- {1, C1_11, C2_11, C3_11}, // LD3
- {1, C1_12, C2_12, C3_12}, // LD4
- {1, C1_13, C2_13, C3_13}, // LD5
- {1, C1_14, C2_14, C3_14}, // LD6
- {1, C1_15, C2_15, C3_15}, // LD7
- {1, C1_16, C2_16, C3_16}, // LD8
- {1, C9_9, C8_9, C7_9}, // LD9
- {1, C9_10, C8_10, C7_10}, // LD10
- {1, C9_11, C8_11, C7_11}, // LD11
- {1, C9_12, C8_12, C7_12}, // LD12
- {1, C9_13, C8_13, C7_13}, // LD13
- {1, C9_14, C8_14, C7_14}, // LD14
- {1, C9_15, C8_15, C6_14}, // LD15
- {1, C9_16, C7_15, C6_15}, // LD16
- {1, C8_16, C7_16, C6_16}, // LD17
-};
-#endif
-
-
typedef struct Point {
uint8_t x;
uint8_t y;
@@ -1773,34 +980,34 @@ void backlight_update_pwm_buffers(void)
#if defined(RGB_BACKLIGHT_M6_B)
is31fl3218_update_pwm_buffers();
#elif defined(RGB_BACKLIGHT_PORTICO75)
- is31fl3741_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3741_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3741_update_pwm_buffers( IS31FL3741_I2C_ADDRESS_1, 0 );
+ is31fl3741_update_led_control_registers( IS31FL3741_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_M10_C)
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_HS60)
- is31fl3733_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3733_update_pwm_buffers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_NK65) || defined(RGB_BACKLIGHT_NEBULA68) || defined(RGB_BACKLIGHT_NK87) || defined(RGB_BACKLIGHT_KW_MEGA)
- is31fl3733_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3733_update_pwm_buffers( ISSI_ADDR_2, 1 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_pwm_buffers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_pwm_buffers( IS31FL3733_I2C_ADDRESS_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_NEBULA12)
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_U80_A)
static uint8_t driver = 0;
switch ( driver )
{
case 0:
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
break;
case 1:
- is31fl3731_update_pwm_buffers( ISSI_ADDR_2, 1 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_2, 1 );
break;
case 2:
- is31fl3731_update_pwm_buffers( ISSI_ADDR_3, 2 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_3, 2 );
break;
}
if ( ++driver > 2 )
@@ -1808,10 +1015,10 @@ void backlight_update_pwm_buffers(void)
driver = 0;
}
#else
- is31fl3731_update_pwm_buffers( ISSI_ADDR_1, 0 );
- is31fl3731_update_pwm_buffers( ISSI_ADDR_2, 1 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3731_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_pwm_buffers( IS31FL3731_I2C_ADDRESS_2, 1 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_2, 1 );
#endif
}
@@ -1831,12 +1038,12 @@ void backlight_set_color( int index, uint8_t red, uint8_t green, uint8_t blue )
is31fl3733_set_color( index, red, green, blue );
}
#elif defined(RGB_BACKLIGHT_DAWN60)
- if( index < RGB_MATRIX_LED_COUNT ) {
+ if( index < IS31FL3731_LED_COUNT ) {
is31fl3731_set_color( index, red, green, blue );
} else {
- g_ws2812_leds[index - RGB_MATRIX_LED_COUNT].r = red;
- g_ws2812_leds[index - RGB_MATRIX_LED_COUNT].g = green;
- g_ws2812_leds[index - RGB_MATRIX_LED_COUNT].b = blue;
+ g_ws2812_leds[index - IS31FL3731_LED_COUNT].r = red;
+ g_ws2812_leds[index - IS31FL3731_LED_COUNT].g = green;
+ g_ws2812_leds[index - IS31FL3731_LED_COUNT].b = blue;
ws2812_setleds(g_ws2812_leds, WS2812_LED_TOTAL);
}
#else
@@ -2125,9 +1332,9 @@ void backlight_effect_alphas_mods(void)
for (int i = 0; i < WS2812_LED_TOTAL; i++) {
if ((RGB_UNDERGLOW_ALPHA_TOP_START <= i && i <= RGB_UNDERGLOW_ALPHA_TOP_END) ||
(RGB_UNDERGLOW_ALPHA_BOT_START <= i && i <= RGB_UNDERGLOW_ALPHA_BOT_END)) {
- backlight_set_color(i + RGB_MATRIX_LED_COUNT, rgb1.r, rgb1.g, rgb1.b);
+ backlight_set_color(i + IS31FL3731_LED_COUNT, rgb1.r, rgb1.g, rgb1.b);
} else {
- backlight_set_color(i + RGB_MATRIX_LED_COUNT, rgb2.r, rgb2.g, rgb2.b);
+ backlight_set_color(i + IS31FL3731_LED_COUNT, rgb2.r, rgb2.g, rgb2.b);
}
}
#endif
@@ -2915,10 +2122,21 @@ void backlight_init_drivers(void)
#if defined(RGB_BACKLIGHT_M6_B)
is31fl3218_init();
+
+ for ( int index = 0; index < IS31FL3218_LED_COUNT; index++ )
+ {
+ bool enabled = true;
+
+ // This only caches it for later
+ is31fl3218_set_led_control_register( index, enabled, enabled, enabled );
+ }
+
+ // This actually updates the LED drivers
+ is31fl3218_update_led_control_registers();
#elif defined(RGB_BACKLIGHT_HS60)
- is31fl3733_init( ISSI_ADDR_1, 0 );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
#if defined(HS60_ANSI)
bool enabled = !( ( index == 48-1 ) || //LA48
@@ -2935,12 +2153,12 @@ void backlight_init_drivers(void)
is31fl3733_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_NK65)
- is31fl3733_init( ISSI_ADDR_1, 0 );
- is31fl3733_init( ISSI_ADDR_2, 0 );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
bool enabled = !( ( index == 61-1 ) || //LA61
( index > 6+64-1 ) ); //LB7-LB64
@@ -2949,13 +2167,13 @@ void backlight_init_drivers(void)
}
is31fl3733_set_led_control_register( 7+64-1, 0, 1, 0 ); //Enable LB7 green enable for indicators
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_NK87)
- is31fl3733_init( ISSI_ADDR_1, 0 );
- is31fl3733_init( ISSI_ADDR_2, 0 );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
bool enabled = !( ( index == 61-1 ) || //LA61
( (index >= 2+64-1) && (index <= 4+64-1) ) ||
@@ -2979,13 +2197,13 @@ void backlight_init_drivers(void)
}
is31fl3733_set_led_control_register( 48+64-1, 0, 0, 1 ); //Enable LB48 blue enable for indicators
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_NEBULA68)
- is31fl3733_init( ISSI_ADDR_1, 0 );
- is31fl3733_init( ISSI_ADDR_2, 0 );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
bool enabled = !( ( index == 61-1 ) || //LA61
( index > 5+64-1 ) ); //LB6-LB64
@@ -2993,22 +2211,22 @@ void backlight_init_drivers(void)
is31fl3733_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#elif defined(RGB_BACKLIGHT_PORTICO75)
- is31fl3741_init( ISSI_ADDR_1 );
+ is31fl3741_init( IS31FL3741_I2C_ADDRESS_1 );
bool enabled = true;
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < IS31FL3741_LED_COUNT; index++ )
{
is31fl3741_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3741_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3741_update_led_control_registers( IS31FL3741_I2C_ADDRESS_1, 0 );
#elif defined(RGB_BACKLIGHT_KW_MEGA)
- is31fl3733_init( ISSI_ADDR_1, 0 );
- is31fl3733_init( ISSI_ADDR_2, 0 );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_1, IS31FL3733_SYNC_NONE );
+ is31fl3733_init( IS31FL3733_I2C_ADDRESS_2, IS31FL3733_SYNC_NONE );
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < IS31FL3733_LED_COUNT; index++ )
{
bool enabled = !( ( index == 61-1 ) || //LA61
( index > 6+64-1 ) ); //LB7-LB64
@@ -3016,18 +2234,18 @@ void backlight_init_drivers(void)
is31fl3733_set_led_control_register( index, enabled, enabled, enabled );
}
// This actually updates the LED drivers
- is31fl3733_update_led_control_registers( ISSI_ADDR_1, 0 );
- is31fl3733_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_1, 0 );
+ is31fl3733_update_led_control_registers( IS31FL3733_I2C_ADDRESS_2, 1 );
#else
// Init the #1 driver
- is31fl3731_init( ISSI_ADDR_1 );
+ is31fl3731_init( IS31FL3731_I2C_ADDRESS_1 );
// Init the #2 driver (if used)
#if !defined(RGB_BACKLIGHT_NEBULA12) && !defined(RGB_BACKLIGHT_M10_C)
- is31fl3731_init( ISSI_ADDR_2 );
+ is31fl3731_init( IS31FL3731_I2C_ADDRESS_2 );
#endif
// Init the #3 driver (if used)
#if defined(RGB_BACKLIGHT_U80_A)
- is31fl3731_init( ISSI_ADDR_3 );
+ is31fl3731_init( IS31FL3731_I2C_ADDRESS_3 );
#endif
// Experimental feature, not in configuration yet
@@ -3035,7 +2253,7 @@ void backlight_init_drivers(void)
bool disable_spacebar_stab_leds = false;
#endif
- for ( int index = 0; index < RGB_MATRIX_LED_COUNT; index++ )
+ for ( int index = 0; index < BACKLIGHT_LED_COUNT; index++ )
{
// OR the possible "disabled" cases together, then NOT the result to get the enabled state
// LC6 LD13 not present on Zeal65
@@ -3160,12 +2378,12 @@ void backlight_init_drivers(void)
}
// This actually updates the LED drivers
// TODO: refactor this to use DRIVER_COUNT
- is31fl3731_update_led_control_registers( ISSI_ADDR_1, 0 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_1, 0 );
#if !defined(RGB_BACKLIGHT_NEBULA12) && !defined(RGB_BACKLIGHT_M10_C)
- is31fl3731_update_led_control_registers( ISSI_ADDR_2, 1 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_2, 1 );
#endif
#if defined(RGB_BACKLIGHT_U80_A)
- is31fl3731_update_led_control_registers( ISSI_ADDR_3, 2 );
+ is31fl3731_update_led_control_registers( IS31FL3731_I2C_ADDRESS_3, 2 );
#endif
#endif
diff --git a/keyboards/wilba_tech/zeal60/config.h b/keyboards/wilba_tech/zeal60/config.h
index e57bafe20d..225c878b20 100644
--- a/keyboards/wilba_tech/zeal60/config.h
+++ b/keyboards/wilba_tech/zeal60/config.h
@@ -16,8 +16,9 @@
#pragma once
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/config.h b/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/config.h
deleted file mode 100644
index 68c4b9ed33..0000000000
--- a/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/config.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#pragma once
-
-/* enable/disable LEDs based on layout */
-#undef RGB_BACKLIGHT_USE_SPLIT_BACKSPACE
-#define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 1
-
-#undef RGB_BACKLIGHT_USE_SPLIT_LEFT_SHIFT
-#define RGB_BACKLIGHT_USE_SPLIT_LEFT_SHIFT 0
-
-#undef RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT
-#define RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT 1
-
-#undef RGB_BACKLIGHT_USE_7U_SPACEBAR
-#define RGB_BACKLIGHT_USE_7U_SPACEBAR 1
-
-#undef RGB_BACKLIGHT_USE_ISO_ENTER
-#define RGB_BACKLIGHT_USE_ISO_ENTER 0
-
-#undef RGB_BACKLIGHT_DISABLE_HHKB_BLOCKER_LEDS
-#define RGB_BACKLIGHT_DISABLE_HHKB_BLOCKER_LEDS 0
-
-// disable backlight when USB suspended (PC sleep/hibernate/shutdown)
-//
-#undef RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED 1
-
-#undef RGB_BACKLIGHT_EFFECT
-#define RGB_BACKLIGHT_EFFECT 5
-
-#undef RGB_BACKLIGHT_CAPS_LOCK_INDICATOR
-#undef RGB_BACKLIGHT_LAYER_2_INDICATOR
-#undef RGB_BACKLIGHT_LAYER_3_INDICATOR
-
-#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 0, .s= 255}, .index = 254}
-#define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 150, .s = 255 }, .index = 60-1 } //blue
-#define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 100, .s = 255 }, .index = 60-1 } //blue
-
diff --git a/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/keymap.c b/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/keymap.c
deleted file mode 100644
index 898d80eaee..0000000000
--- a/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/keymap.c
+++ /dev/null
@@ -1,46 +0,0 @@
-// ANSI split backspace/right shift layout for Zeal60
-#include QMK_KEYBOARD_H
-
-#define KC_CAFN LT(1,KC_CAPS)
-#define KC_ENFN LT(3,KC_ENT)
-#define KC_RSUP RSFT_T(KC_UP)
-#define KC_RGLT RALT_T(KC_LEFT)
-#define KC_RGDN RGUI_T(KC_DOWN)
-#define KC_RCRT RCTL_T(KC_RIGHT)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-// Default layer
-[0] = LAYOUT_60_ansi_split_bs_rshift(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
- KC_CAFN, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENFN,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSUP, TL_LOWR,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_TRNS, KC_RGLT, KC_RGDN, KC_RCRT),
-
-// Fn1 Layer
-[1] = LAYOUT_60_ansi_split_bs_rshift(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_INS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-// Fn2 Layer
-[2] = LAYOUT_60_ansi_split_bs_rshift(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-// Fn3 Layer (zeal60 Configuration)
-[3] = LAYOUT_60_ansi_split_bs_rshift(
- QK_BOOT, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BR_DEC, BR_INC, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, ES_DEC, ES_INC, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
-};
diff --git a/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/rules.mk b/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/rules.mk
deleted file mode 100644
index 0158bb397a..0000000000
--- a/keyboards/wilba_tech/zeal60/keymaps/sethBarberee/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-VIA_ENABLE = yes
diff --git a/keyboards/wilba_tech/zeal60/rules.mk b/keyboards/wilba_tech/zeal60/rules.mk
index 4f810f3d32..d1ce11b473 100644
--- a/keyboards/wilba_tech/zeal60/rules.mk
+++ b/keyboards/wilba_tech/zeal60/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/zeal60/zeal60.c b/keyboards/wilba_tech/zeal60/zeal60.c
index b8c2e2f83f..dd49ccabe9 100644
--- a/keyboards/wilba_tech/zeal60/zeal60.c
+++ b/keyboards/wilba_tech/zeal60/zeal60.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_ZEAL60
-#error RGB_BACKLIGHT_ZEAL60 not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_ZEAL60 not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_ZEAL60)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
#endif
diff --git a/keyboards/wilba_tech/zeal65/config.h b/keyboards/wilba_tech/zeal65/config.h
index 4a73ed3b27..71977f4090 100644
--- a/keyboards/wilba_tech/zeal65/config.h
+++ b/keyboards/wilba_tech/zeal65/config.h
@@ -16,8 +16,9 @@
#pragma once
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 72
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 72
// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/wilba_tech/zeal65/keymaps/zyber/config.h b/keyboards/wilba_tech/zeal65/keymaps/zyber/config.h
deleted file mode 100644
index 2d35bacc56..0000000000
--- a/keyboards/wilba_tech/zeal65/keymaps/zyber/config.h
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#pragma once
-
-/**
- * Enable/disable LEDs based on layout
- */
-#undef RGB_BACKLIGHT_USE_SPLIT_BACKSPACE
-#define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 0
-
-
-/**
- * Switch off Backlight when computer is suspended
- */
-#undef RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED
-#define RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED 1
-
-
-/**
- * Use http://colorizer.org/ to get a 0-360 hue value
- * then convert it into a 0-255 value with n = (hue / 360 * 255).
- */
-#undef RGB_BACKLIGHT_CAPS_LOCK_INDICATOR
-#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 255, .s = 255 }, .index = 254 }
-#undef RGB_BACKLIGHT_LAYER_1_INDICATOR
-#define RGB_BACKLIGHT_LAYER_1_INDICATOR { .color = { .h = 87, .s = 255 }, .index = 254 }
-#undef RGB_BACKLIGHT_LAYER_2_INDICATOR
-#define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 167, .s = 255 }, .index = 254 }
-#undef RGB_BACKLIGHT_LAYER_3_INDICATOR
-#define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
diff --git a/keyboards/wilba_tech/zeal65/keymaps/zyber/keymap.c b/keyboards/wilba_tech/zeal65/keymaps/zyber/keymap.c
deleted file mode 100644
index a1abd7b5e2..0000000000
--- a/keyboards/wilba_tech/zeal65/keymaps/zyber/keymap.c
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2022 ZyBeR (@ZyberSE)
-// SPDX-License-Identifier: GPL-2.0
-
-#include "zyber.h"
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // Default layer
- [0] = LAYOUT_65_normie(
- QK_GESC, KC_1, KC_2, KC_3, TD(SSHT),KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD(LBRC), KC_RBRC, KC_BSLS, TD(END_HOME),
- CTRL_C_UP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN), TD(QUOT), KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
- KC_LALT, KC_LCMD, KC_SPC, TL_UPPR, TL_LOWR, KC_LEFT, KC_DOWN, KC_RGHT),
-
- // Fn1 Layer
- [1] = LAYOUT_65_normie(
- KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_LALT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
- // Fn2 Layer
- [2] = LAYOUT_65_normie(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
- // Fn3 Layer (zeal60 Configuration)
- [3] = LAYOUT_65_normie(
- QK_BOOT, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BR_DEC, BR_INC, EE_CLR, KC_TRNS,
- C_BLK, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-};
diff --git a/keyboards/wilba_tech/zeal65/rules.mk b/keyboards/wilba_tech/zeal65/rules.mk
index 4f810f3d32..d1ce11b473 100644
--- a/keyboards/wilba_tech/zeal65/rules.mk
+++ b/keyboards/wilba_tech/zeal65/rules.mk
@@ -22,5 +22,5 @@ CIE1931_CURVE = yes
SRC = keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
- drivers/led/issi/is31fl3731.c \
- i2c_master.c
+ drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/wilba_tech/zeal65/zeal65.c b/keyboards/wilba_tech/zeal65/zeal65.c
index 540c93080a..a4550031b3 100644
--- a/keyboards/wilba_tech/zeal65/zeal65.c
+++ b/keyboards/wilba_tech/zeal65/zeal65.c
@@ -14,5 +14,93 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_ZEAL65
-#error RGB_BACKLIGHT_ZEAL65 not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_ZEAL65 not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_ZEAL65)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C2_1, C3_1, C4_1}, // LA0
+ {0, C1_1, C3_2, C4_2}, // LA1
+ {0, C1_2, C2_2, C4_3}, // LA2
+ {0, C1_3, C2_3, C3_3}, // LA3
+ {0, C1_4, C2_4, C3_4}, // LA4
+ {0, C1_5, C2_5, C3_5}, // LA5
+ {0, C1_6, C2_6, C3_6}, // LA6
+ {0, C1_7, C2_7, C3_7}, // LA7
+ {0, C1_8, C2_8, C3_8}, // LA8
+ {0, C9_1, C8_1, C7_1}, // LA9
+ {0, C9_2, C8_2, C7_2}, // LA10
+ {0, C9_3, C8_3, C7_3}, // LA11
+ {0, C9_4, C8_4, C7_4}, // LA12
+ {0, C9_5, C8_5, C7_5}, // LA13
+ {0, C9_6, C8_6, C7_6}, // LA14
+ {0, C9_7, C8_7, C6_6}, // LA15
+ {0, C9_8, C7_7, C6_7}, // LA16
+ {0, C8_8, C7_8, C6_8}, // LA17
+
+ {0, C2_9, C3_9, C4_9}, // LB0
+ {0, C1_9, C3_10, C4_10}, // LB1
+ {0, C1_10, C2_10, C4_11}, // LB2
+ {0, C1_11, C2_11, C3_11}, // LB3
+ {0, C1_12, C2_12, C3_12}, // LB4
+ {0, C1_13, C2_13, C3_13}, // LB5
+ {0, C1_14, C2_14, C3_14}, // LB6
+ {0, C1_15, C2_15, C3_15}, // LB7
+ {0, C1_16, C2_16, C3_16}, // LB8
+ {0, C9_9, C8_9, C7_9}, // LB9
+ {0, C9_10, C8_10, C7_10}, // LB10
+ {0, C9_11, C8_11, C7_11}, // LB11
+ {0, C9_12, C8_12, C7_12}, // LB12
+ {0, C9_13, C8_13, C7_13}, // LB13
+ {0, C9_14, C8_14, C7_14}, // LB14
+ {0, C9_15, C8_15, C6_14}, // LB15
+ {0, C9_16, C7_15, C6_15}, // LB16
+ {0, C8_16, C7_16, C6_16}, // LB17
+
+ {1, C2_1, C3_1, C4_1}, // LC0
+ {1, C1_1, C3_2, C4_2}, // LC1
+ {1, C1_2, C2_2, C4_3}, // LC2
+ {1, C1_3, C2_3, C3_3}, // LC3
+ {1, C1_4, C2_4, C3_4}, // LC4
+ {1, C1_5, C2_5, C3_5}, // LC5
+ {1, C1_6, C2_6, C3_6}, // LC6
+ {1, C1_7, C2_7, C3_7}, // LC7
+ {1, C1_8, C2_8, C3_8}, // LC8
+ {1, C9_1, C8_1, C7_1}, // LC9
+ {1, C9_2, C8_2, C7_2}, // LC10
+ {1, C9_3, C8_3, C7_3}, // LC11
+ {1, C9_4, C8_4, C7_4}, // LC12
+ {1, C9_5, C8_5, C7_5}, // LC13
+ {1, C9_6, C8_6, C7_6}, // LC14
+ {1, C9_7, C8_7, C6_6}, // LC15
+ {1, C9_8, C7_7, C6_7}, // LC16
+ {1, C8_8, C7_8, C6_8}, // LC17
+
+ {1, C2_9, C3_9, C4_9}, // LD0
+ {1, C1_9, C3_10, C4_10}, // LD1
+ {1, C1_10, C2_10, C4_11}, // LD2
+ {1, C1_11, C2_11, C3_11}, // LD3
+ {1, C1_12, C2_12, C3_12}, // LD4
+ {1, C1_13, C2_13, C3_13}, // LD5
+ {1, C1_14, C2_14, C3_14}, // LD6
+ {1, C1_15, C2_15, C3_15}, // LD7
+ {1, C1_16, C2_16, C3_16}, // LD8
+ {1, C9_9, C8_9, C7_9}, // LD9
+ {1, C9_10, C8_10, C7_10}, // LD10
+ {1, C9_11, C8_11, C7_11}, // LD11
+ {1, C9_12, C8_12, C7_12}, // LD12
+ {1, C9_13, C8_13, C7_13}, // LD13
+ {1, C9_14, C8_14, C7_14}, // LD14
+ {1, C9_15, C8_15, C6_14}, // LD15
+ {1, C9_16, C7_15, C6_15}, // LD16
+ {1, C8_16, C7_16, C6_16}, // LD17
+};
+#endif \ No newline at end of file
diff --git a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/README.md b/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/README.md
deleted file mode 100644
index 86b79b4621..0000000000
--- a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# DudeOfAwesome's Big Series 1-key layout
-
-## Features
-
-### Tap dancing taps:
-1. Media Play / Pause
-1. Media Next
-1. RGB Mode Next
-1. RGB Mode Previous
-
-## Building and flashing
-
-1. Put your board in DFU mode with the button on the bottom
-1. Flash:
- ```bash
- $ make bigseries:dudeofawesome:dfu
- ```
-
diff --git a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/config.h b/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/config.h
deleted file mode 100644
index 131c755d4a..0000000000
--- a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-Copyright 2018 Cole Markham
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#define TAPPING_TERM 1000
-#define PERMISSIVE_HOLD
-
-#endif
diff --git a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/keymap.c b/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/keymap.c
deleted file mode 100755
index 2c754c3a68..0000000000
--- a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/keymap.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-Copyright 2018 Cole Markham
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include QMK_KEYBOARD_H
-
-enum TAP_DANCE {
- TD_PLAY = 0,
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- LAYOUT(TD(TD_PLAY)),
-};
-
-void tap_dance (tap_dance_state_t *state, void *user_data) {
- switch (state->count) {
- case 0 ... 1:
- register_code(KC_MEDIA_PLAY_PAUSE);
- unregister_code(KC_MEDIA_PLAY_PAUSE);
- break;
- case 2:
- register_code(KC_MEDIA_NEXT_TRACK);
- unregister_code(KC_MEDIA_NEXT_TRACK);
- break;
- case 3:
- rgblight_step();
- break;
- case 4: default:
- rgblight_step_reverse();
- break;
- }
-}
-
-//Tap Dance Definitions
-tap_dance_action_t tap_dance_actions[] = {
- [TD_PLAY] = ACTION_TAP_DANCE_FN(tap_dance),
-};
diff --git a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/rules.mk b/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/rules.mk
deleted file mode 100644
index e5ddcae8d9..0000000000
--- a/keyboards/woodkeys/bigseries/1key/keymaps/dudeofawesome/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/woodkeys/meira/TWIlib.c b/keyboards/woodkeys/meira/TWIlib.c
deleted file mode 100755
index 89e03a73d4..0000000000
--- a/keyboards/woodkeys/meira/TWIlib.c
+++ /dev/null
@@ -1,300 +0,0 @@
-/*
- * TWIlib.c
- *
- * Created: 6/01/2014 10:41:33 PM
- * Author: Chris Herring
- */
-
-#include <avr/io.h>
-#include <avr/interrupt.h>
-#include "TWIlib.h"
-#include <util/delay.h>
-#include "print.h"
-
-// Global transmit buffer
-volatile uint8_t *TWITransmitBuffer;
-// Global receive buffer
-volatile uint8_t TWIReceiveBuffer[RXMAXBUFLEN];
-// Buffer indexes
-volatile int TXBuffIndex; // Index of the transmit buffer. Is volatile, can change at any time.
-int RXBuffIndex; // Current index in the receive buffer
-// Buffer lengths
-int TXBuffLen; // The total length of the transmit buffer
-int RXBuffLen; // The total number of bytes to read (should be less than RXMAXBUFFLEN)
-
-TWIInfoStruct TWIInfo;
-
-void TWIInit(void)
-{
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = 0xFF;
- TWIInfo.repStart = 0;
- // Set pre-scalers (no pre-scaling)
- TWSR = 0;
- // Set bit rate
- TWBR = ((F_CPU / TWI_FREQ) - 16) / 2;
- // Enable TWI and interrupt
- TWCR = (1 << TWIE) | (1 << TWEN);
-}
-
-uint8_t isTWIReady(void)
-{
- if ( (TWIInfo.mode == Ready) | (TWIInfo.mode == RepeatedStartSent) )
- {
-
-// xprintf("i2c ready\n");
- return 1;
- }
- else
- {
- if(TWIInfo.mode == Initializing){
- switch(TWIInfo.errorCode){
- case TWI_SUCCESS:
- break;
- case TWI_NO_RELEVANT_INFO:
-
- break;
- case TWI_LOST_ARBIT:
- case TWI_MT_DATA_NACK:
- // Some kind of I2C error, reset and re-init
- xprintf("I2C init error: %d\n", TWIInfo.errorCode);
- TWCR = (1 << TWINT)|(1 << TWSTO);
- TWIInit();
- break;
- default:
- xprintf("Other i2c init error: %d\n", TWIInfo.errorCode);
- }
- }
- return 0;
- }
-}
-
-
-void TWITransmitData(void *const TXdata, uint8_t dataLen, uint8_t repStart, uint8_t blocking)
-{
- // Wait until ready
- while (!isTWIReady()) {_delay_us(1);}
- // Reset the I2C stuff
- TWCR = (1 << TWINT)|(1 << TWSTO);
- TWIInit();
- // Set repeated start mode
- TWIInfo.repStart = repStart;
- // Copy transmit info to global variables
- TWITransmitBuffer = (uint8_t *)TXdata;
- TXBuffLen = dataLen;
- TXBuffIndex = 0;
-
- // If a repeated start has been sent, then devices are already listening for an address
- // and another start does not need to be sent.
- if (TWIInfo.mode == RepeatedStartSent)
- {
- TWIInfo.mode = Initializing;
- TWDR = TWITransmitBuffer[TXBuffIndex++]; // Load data to transmit buffer
- TWISendTransmit(); // Send the data
- }
- else // Otherwise, just send the normal start signal to begin transmission.
- {
- TWIInfo.mode = Initializing;
- TWISendStart();
- }
- if(blocking){
- // Wait until ready
- while (!isTWIReady()){_delay_us(1);}
- }
-}
-
-
-// uint8_t TWITransmitData(void *const TXdata, uint8_t dataLen, uint8_t repStart)
-// {
-// if (dataLen <= TXMAXBUFLEN)
-// {
-// // Wait until ready
-// while (!isTWIReady()) {_delay_us(1);}
-// // Set repeated start mode
-// TWIInfo.repStart = repStart;
-// // Copy data into the transmit buffer
-// uint8_t *data = (uint8_t *)TXdata;
-// for (int i = 0; i < dataLen; i++)
-// {
-// TWITransmitBuffer[i] = data[i];
-// }
-// // Copy transmit info to global variables
-// TXBuffLen = dataLen;
-// TXBuffIndex = 0;
-
-// // If a repeated start has been sent, then devices are already listening for an address
-// // and another start does not need to be sent.
-// if (TWIInfo.mode == RepeatedStartSent)
-// {
-// TWIInfo.mode = Initializing;
-// TWDR = TWITransmitBuffer[TXBuffIndex++]; // Load data to transmit buffer
-// TWISendTransmit(); // Send the data
-// }
-// else // Otherwise, just send the normal start signal to begin transmission.
-// {
-// TWIInfo.mode = Initializing;
-// TWISendStart();
-// }
-
-// }
-// else
-// {
-// return 1; // return an error if data length is longer than buffer
-// }
-// return 0;
-// }
-
-uint8_t TWIReadData(uint8_t TWIaddr, uint8_t bytesToRead, uint8_t repStart)
-{
- // Check if number of bytes to read can fit in the RXbuffer
- if (bytesToRead < RXMAXBUFLEN)
- {
- // Reset buffer index and set RXBuffLen to the number of bytes to read
- RXBuffIndex = 0;
- RXBuffLen = bytesToRead;
- // Create the one value array for the address to be transmitted
- uint8_t TXdata[1];
- // Shift the address and AND a 1 into the read write bit (set to write mode)
- TXdata[0] = (TWIaddr << 1) | 0x01;
- // Use the TWITransmitData function to initialize the transfer and address the slave
- TWITransmitData(TXdata, 1, repStart, 0);
- }
- else
- {
- return 0;
- }
- return 1;
-}
-
-ISR (TWI_vect)
-{
- switch (TWI_STATUS)
- {
- // ----\/ ---- MASTER TRANSMITTER OR WRITING ADDRESS ----\/ ---- //
- case TWI_MT_SLAW_ACK: // SLA+W transmitted and ACK received
- // Set mode to Master Transmitter
- TWIInfo.mode = MasterTransmitter;
- case TWI_START_SENT: // Start condition has been transmitted
- case TWI_MT_DATA_ACK: // Data byte has been transmitted, ACK received
- if (TXBuffIndex < TXBuffLen) // If there is more data to send
- {
- TWDR = TWITransmitBuffer[TXBuffIndex++]; // Load data to transmit buffer
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendTransmit(); // Send the data
- }
- // This transmission is complete however do not release bus yet
- else if (TWIInfo.repStart)
- {
- TWIInfo.errorCode = 0xFF;
- TWISendStart();
- }
- // All transmissions are complete, exit
- else
- {
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = 0xFF;
- TWISendStop();
- }
- break;
-
- // ----\/ ---- MASTER RECEIVER ----\/ ---- //
-
- case TWI_MR_SLAR_ACK: // SLA+R has been transmitted, ACK has been received
- // Switch to Master Receiver mode
- TWIInfo.mode = MasterReceiver;
- // If there is more than one byte to be read, receive data byte and return an ACK
- if (RXBuffIndex < RXBuffLen-1)
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendACK();
- }
- // Otherwise when a data byte (the only data byte) is received, return NACK
- else
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendNACK();
- }
- break;
-
- case TWI_MR_DATA_ACK: // Data has been received, ACK has been transmitted.
-
- /// -- HANDLE DATA BYTE --- ///
- TWIReceiveBuffer[RXBuffIndex++] = TWDR;
- // If there is more than one byte to be read, receive data byte and return an ACK
- if (RXBuffIndex < RXBuffLen-1)
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendACK();
- }
- // Otherwise when a data byte (the only data byte) is received, return NACK
- else
- {
- TWIInfo.errorCode = TWI_NO_RELEVANT_INFO;
- TWISendNACK();
- }
- break;
-
- case TWI_MR_DATA_NACK: // Data byte has been received, NACK has been transmitted. End of transmission.
-
- /// -- HANDLE DATA BYTE --- ///
- TWIReceiveBuffer[RXBuffIndex++] = TWDR;
- // This transmission is complete however do not release bus yet
- if (TWIInfo.repStart)
- {
- TWIInfo.errorCode = 0xFF;
- TWISendStart();
- }
- // All transmissions are complete, exit
- else
- {
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = 0xFF;
- TWISendStop();
- }
- break;
-
- // ----\/ ---- MT and MR common ----\/ ---- //
-
- case TWI_MR_SLAR_NACK: // SLA+R transmitted, NACK received
- case TWI_MT_SLAW_NACK: // SLA+W transmitted, NACK received
- case TWI_MT_DATA_NACK: // Data byte has been transmitted, NACK received
- case TWI_LOST_ARBIT: // Arbitration has been lost
- // Return error and send stop and set mode to ready
- if (TWIInfo.repStart)
- {
- TWIInfo.errorCode = TWI_STATUS;
- TWISendStart();
- }
- // All transmissions are complete, exit
- else
- {
- TWIInfo.mode = Ready;
- TWIInfo.errorCode = TWI_STATUS;
- TWISendStop();
- }
- break;
- case TWI_REP_START_SENT: // Repeated start has been transmitted
- // Set the mode but DO NOT clear TWINT as the next data is not yet ready
- TWIInfo.mode = RepeatedStartSent;
- break;
-
- // ----\/ ---- SLAVE RECEIVER ----\/ ---- //
-
- // TODO IMPLEMENT SLAVE RECEIVER FUNCTIONALITY
-
- // ----\/ ---- SLAVE TRANSMITTER ----\/ ---- //
-
- // TODO IMPLEMENT SLAVE TRANSMITTER FUNCTIONALITY
-
- // ----\/ ---- MISCELLANEOUS STATES ----\/ ---- //
- case TWI_NO_RELEVANT_INFO: // It is not really possible to get into this ISR on this condition
- // Rather, it is there to be manually set between operations
- break;
- case TWI_ILLEGAL_START_STOP: // Illegal START/STOP, abort and return error
- TWIInfo.errorCode = TWI_ILLEGAL_START_STOP;
- TWIInfo.mode = Ready;
- TWISendStop();
- break;
- }
-
-}
diff --git a/keyboards/woodkeys/meira/TWIlib.h b/keyboards/woodkeys/meira/TWIlib.h
deleted file mode 100755
index 8ba261c6e5..0000000000
--- a/keyboards/woodkeys/meira/TWIlib.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * TWIlib.h
- *
- * Created: 6/01/2014 10:38:42 PM
- * Author: Chris Herring
- */
-
-
-#ifndef TWILIB_H_
-#define TWILIB_H_
-// TWI bit rate
-#define TWI_FREQ 400000
-// Get TWI status
-#define TWI_STATUS (TWSR & 0xF8)
-// Transmit buffer length
-#define TXMAXBUFLEN 20
-// Receive buffer length
-#define RXMAXBUFLEN 20
-
-typedef enum {
- Ready,
- Initializing,
- RepeatedStartSent,
- MasterTransmitter,
- MasterReceiver,
- SlaceTransmitter,
- SlaveReciever
- } TWIMode;
-
- typedef struct TWIInfoStruct{
- TWIMode mode;
- uint8_t errorCode;
- uint8_t repStart;
- }TWIInfoStruct;
-
-extern TWIInfoStruct TWIInfo;
-
-// TWI Status Codes
-#define TWI_START_SENT 0x08 // Start sent
-#define TWI_REP_START_SENT 0x10 // Repeated Start sent
-// Master Transmitter Mode
-#define TWI_MT_SLAW_ACK 0x18 // SLA+W sent and ACK received
-#define TWI_MT_SLAW_NACK 0x20 // SLA+W sent and NACK received
-#define TWI_MT_DATA_ACK 0x28 // DATA sent and ACK received
-#define TWI_MT_DATA_NACK 0x30 // DATA sent and NACK received
-// Master Receiver Mode
-#define TWI_MR_SLAR_ACK 0x40 // SLA+R sent, ACK received
-#define TWI_MR_SLAR_NACK 0x48 // SLA+R sent, NACK received
-#define TWI_MR_DATA_ACK 0x50 // Data received, ACK returned
-#define TWI_MR_DATA_NACK 0x58 // Data received, NACK returned
-
-// Miscellaneous States
-#define TWI_LOST_ARBIT 0x38 // Arbitration has been lost
-#define TWI_NO_RELEVANT_INFO 0xF8 // No relevant information available
-#define TWI_ILLEGAL_START_STOP 0x00 // Illegal START or STOP condition has been detected
-#define TWI_SUCCESS 0xFF // Successful transfer, this state is impossible from TWSR as bit2 is 0 and read only
-
-
-#define TWISendStart() (TWCR = (1<<TWINT)|(1<<TWSTA)|(1<<TWEN)|(1<<TWIE)) // Send the START signal, enable interrupts and TWI, clear TWINT flag to resume transfer.
-#define TWISendStop() (TWCR = (1<<TWINT)|(1<<TWSTO)|(1<<TWEN)|(1<<TWIE)) // Send the STOP signal, enable interrupts and TWI, clear TWINT flag.
-#define TWISendTransmit() (TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWIE)) // Used to resume a transfer, clear TWINT and ensure that TWI and interrupts are enabled.
-#define TWISendACK() (TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWIE)|(1<<TWEA)) // FOR MR mode. Resume a transfer, ensure that TWI and interrupts are enabled and respond with an ACK if the device is addressed as a slave or after it receives a byte.
-#define TWISendNACK() (TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWIE)) // FOR MR mode. Resume a transfer, ensure that TWI and interrupts are enabled but DO NOT respond with an ACK if the device is addressed as a slave or after it receives a byte.
-
-// Function declarations
-void TWITransmitData(void *const TXdata, uint8_t dataLen, uint8_t repStart, uint8_t blocking);
-void TWIInit(void);
-uint8_t TWIReadData(uint8_t TWIaddr, uint8_t bytesToRead, uint8_t repStart);
-uint8_t isTWIReady(void);
-
-#endif // TWICOMMS_H_ \ No newline at end of file
diff --git a/keyboards/woodkeys/meira/config.h b/keyboards/woodkeys/meira/config.h
index 4b3491cfa1..1b0803602a 100644
--- a/keyboards/woodkeys/meira/config.h
+++ b/keyboards/woodkeys/meira/config.h
@@ -21,5 +21,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12
-
-#define BACKLIGHT_PWM_MAP {2, 4, 8, 16, 40, 55, 70, 128, 200, 255}
diff --git a/keyboards/woodkeys/meira/featherble/config.h b/keyboards/woodkeys/meira/featherble/config.h
index eab64b36b9..fd224b2d50 100644
--- a/keyboards/woodkeys/meira/featherble/config.h
+++ b/keyboards/woodkeys/meira/featherble/config.h
@@ -32,7 +32,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// Column pins to demux in LSB order
#define MATRIX_COL_PINS { C7, B7, B6, C6, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN }
#define MATRIX_COL_PINS_SCANNED { C7, B7, B6, C6 }
-#define LED_EN_PIN D2
#define AUDIO_PIN B5
#define AUDIO_VOICES
diff --git a/keyboards/woodkeys/meira/info.json b/keyboards/woodkeys/meira/info.json
index 5905c00d2d..5fbcc9deaf 100644
--- a/keyboards/woodkeys/meira/info.json
+++ b/keyboards/woodkeys/meira/info.json
@@ -8,16 +8,6 @@
"pid": "0x6061",
"device_version": "0.0.1"
},
- "backlight": {
- "driver": "custom",
- "levels": 10
- },
- "rgblight": {
- "led_count": 15
- },
- "ws2812": {
- "pin": "D3"
- },
"processor": "atmega32u4",
"bootloader": "caterina",
"layout_aliases": {
diff --git a/keyboards/woodkeys/meira/issi.c b/keyboards/woodkeys/meira/issi.c
deleted file mode 100755
index 600a465ba3..0000000000
--- a/keyboards/woodkeys/meira/issi.c
+++ /dev/null
@@ -1,286 +0,0 @@
-#ifdef ISSI_ENABLE
-
-#include <stdlib.h>
-#include <stdint.h>
-#include <util/delay.h>
-#include <avr/sfr_defs.h>
-#include <avr/io.h>
-#include <util/twi.h>
-#include "issi.h"
-#include "print.h"
-#include "TWIlib.h"
-
-#define ISSI_ADDR_DEFAULT 0xE8
-
-#define ISSI_REG_CONFIG 0x00
-#define ISSI_REG_CONFIG_PICTUREMODE 0x00
-#define ISSI_REG_CONFIG_AUTOPLAYMODE 0x08
-
-#define ISSI_CONF_PICTUREMODE 0x00
-#define ISSI_CONF_AUTOFRAMEMODE 0x04
-#define ISSI_CONF_AUDIOMODE 0x08
-
-#define ISSI_REG_PICTUREFRAME 0x01
-
-#define ISSI_REG_SHUTDOWN 0x0A
-#define ISSI_REG_AUDIOSYNC 0x06
-
-#define ISSI_COMMANDREGISTER 0xFD
-#define ISSI_BANK_FUNCTIONREG 0x0B // helpfully called 'page nine'
-uint8_t control[8][9] = {
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0},
-};
-ISSIDeviceStruct *issi_devices[4] = {0, 0, 0, 0};
-
-#ifndef cbi
-#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
-#endif
-
-#ifndef sbi
-#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
-#endif
-
-#define I2C_WRITE 0
-#define F_SCL 400000UL // SCL frequency
-#define Prescaler 1
-#define TWBR_val ((((F_CPU / F_SCL) / Prescaler) - 16 ) / 2)
-
-uint8_t i2c_start(uint8_t address)
-{
- // reset TWI control register
- TWCR = 0;
- // transmit START condition
- TWCR = (1<<TWINT) | (1<<TWSTA) | (1<<TWEN);
- // wait for end of transmission
- while( !(TWCR & (1<<TWINT)) );
-
- // check if the start condition was successfully transmitted
- if((TWSR & 0xF8) != TW_START){ return 1; }
-
- // load slave address into data register
- TWDR = address;
- // start transmission of address
- TWCR = (1<<TWINT) | (1<<TWEN);
- // wait for end of transmission
- while( !(TWCR & (1<<TWINT)) );
-
- // check if the device has acknowledged the READ / WRITE mode
- uint8_t twst = TW_STATUS & 0xF8;
- if ( (twst != TW_MT_SLA_ACK) && (twst != TW_MR_SLA_ACK) ) return 1;
-
- return 0;
-}
-
-uint8_t i2c_write(uint8_t data)
-{
- // load data into data register
- TWDR = data;
- // start transmission of data
- TWCR = (1 << TWINT) | (1 << TWEN);
- // wait for end of transmission
- while (!(TWCR & (1 << TWINT)))
- ;
-
- if ((TWSR & 0xF8) != TW_MT_DATA_ACK) {
- return 1;
- }
- return 0;
-}
-
-uint8_t i2c_transmit(uint8_t address, uint8_t* data, uint16_t length)
-{
- TWBR = (uint8_t)TWBR_val;
- if (i2c_start(address | I2C_WRITE))
- return 1;
- for (uint16_t i = 0; i < length; i++) {
- if (i2c_write(data[i]))
- return 1;
- }
- // transmit STOP condition
- TWCR = (1 << TWINT) | (1 << TWEN) | (1 << TWSTO);
- return 0;
-}
-
-void setFrame(uint8_t device, uint8_t frame)
-{
- static uint8_t current_frame = -1;
- if(current_frame != frame){
- uint8_t payload[] = {
- ISSI_ADDR_DEFAULT | device << 1,
- ISSI_COMMANDREGISTER,
- frame
- };
- TWITransmitData(payload, sizeof(payload), 0, 1);
- }
- // static uint8_t current_frame = 0xFF;
- // if(current_frame == frame){
- // // return;
- // }
- // uint8_t payload[2] = { ISSI_COMMANDREGISTER, frame };
- // i2c_transmit(ISSI_ADDR_DEFAULT | device << 1, payload, 2);
- // current_frame = frame;
-}
-
-void writeRegister8(uint8_t device, uint8_t frame, uint8_t reg, uint8_t data)
-{
- // Set the frame
- setFrame(device, frame);
-
- // Write to the register
- uint8_t payload[] = {
- ISSI_ADDR_DEFAULT | device << 1,
- reg,
- data
- };
- TWITransmitData(payload, sizeof(payload), 0, 1);
-}
-
-// void activateLED(uint8_t matrix, uint8_t cx, uint8_t cy, uint8_t pwm)
-// {
-// xprintf("activeLED: %02X %02X %02X %02X\n", matrix, cy, cx, pwm);
-// uint8_t x = cx - 1; // funciton takes 1 based counts, but we need 0...
-// uint8_t y = cy - 1; // creating them once for less confusion
-// if(pwm == 0){
-// cbi(control[matrix][y], x);
-// }else{
-// sbi(control[matrix][y], x);
-// }
-// uint8_t device = (matrix & 0x06) >> 1;
-// uint8_t control_reg = (y << 1) | (matrix & 0x01);
-// uint8_t pwm_reg = 0;
-// switch(matrix & 0x01){
-// case 0:
-// pwm_reg = 0x24;
-// break;
-// case 1:
-// pwm_reg = 0x2C;
-// break;
-// }
-// pwm_reg += (y << 4) + x;
-// xprintf(" device: %02X\n", device);
-// xprintf(" control: %02X %02X\n", control_reg, control[matrix][y]);
-// xprintf(" pwm: %02X %02X\n", pwm_reg, pwm);
-// writeRegister8(device, 0, control_reg, control[matrix][y]);
-// writeRegister8(device, 0, control_reg + 0x12, control[matrix][y]);
-// writeRegister8(device, 0, pwm_reg, pwm);
-// }
-
-void activateLED(uint8_t matrix, uint8_t cx, uint8_t cy, uint8_t pwm)
-{
- uint8_t device_addr = (matrix & 0x06) >> 1;
- ISSIDeviceStruct *device = issi_devices[device_addr];
- if(device == 0){
- return;
- }
- // xprintf("activeLED: %02X %02X %02X %02X\n", matrix, cy, cx, pwm);
- uint8_t x = cx - 1; // funciton takes 1 based counts, but we need 0...
- uint8_t y = cy - 1; // creating them once for less confusion
- uint8_t control_reg = (y << 1) | (matrix & 0x01);
- if(pwm == 0){
- cbi(device->led_ctrl[control_reg], x);
- cbi(device->led_blink_ctrl[control_reg], x);
- }else{
- sbi(device->led_ctrl[control_reg], x);
- sbi(device->led_blink_ctrl[control_reg], x);
- }
- uint8_t pwm_reg = 0;
- switch(matrix & 0x01){
- case 0:
- pwm_reg = 0x00;
- break;
- case 1:
- pwm_reg = 0x08;
- break;
- }
- pwm_reg += (y << 4) + x;
- // xprintf(" device_addr: %02X\n", device_addr);
- // xprintf(" control: %02X %02X\n", control_reg, control[matrix][y]);
- // xprintf(" pwm: %02X %02X\n", pwm_reg, pwm);
- // writeRegister8(device_addr, 0, control_reg, control[matrix][y]);
- device->led_pwm[pwm_reg] = pwm;
- device->led_dirty = 1;
-
- // writeRegister8(device_addr, 0, control_reg + 0x12, control[matrix][y]);
- // writeRegister8(device_addr, 0, pwm_reg, pwm);
-}
-
-void update_issi(uint8_t device_addr, uint8_t blocking)
-{
- // This seems to take about 6ms
- ISSIDeviceStruct *device = issi_devices[device_addr];
- if(device != 0){
- if(device->fn_dirty){
- device->fn_dirty = 0;
- setFrame(device_addr, ISSI_BANK_FUNCTIONREG);
- TWITransmitData(&device->fn_device_addr, sizeof(device->fn_registers) + 2, 0, 1);
- }
- if(device->led_dirty){
- device->led_dirty = 0;
- setFrame(device_addr, 0);
- TWITransmitData(&device->led_device_addr, 0xB6, 0, blocking);
- }
- }
-}
-
-void issi_init(void)
-{
- // Set LED_EN/SDB high to enable the chip
- xprintf("Enabing SDB on pin: %d\n", LED_EN_PIN);
- _SFR_IO8((LED_EN_PIN >> 4) + 1) &= ~_BV(LED_EN_PIN & 0xF); // IN
- _SFR_IO8((LED_EN_PIN >> 4) + 2) |= _BV(LED_EN_PIN & 0xF); // HI
- TWIInit();
- for(uint8_t device_addr = 0; device_addr < 4; device_addr++){
- xprintf("ISSI Init device: %d\n", device_addr);
- // If this device has been previously allocated, free it
- if(issi_devices[device_addr] != 0){
- free(issi_devices[device_addr]);
- }
- // Try to shutdown the device, if this fails skip this device
- writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00);
- while (!isTWIReady()){_delay_us(1);}
- if(TWIInfo.errorCode != 0xFF){
- xprintf("ISSI init failed %d %02X %02X\n", device_addr, TWIInfo.mode, TWIInfo.errorCode);
- continue;
- }
- // Allocate the device structure - calloc zeros it for us
- ISSIDeviceStruct *device = (ISSIDeviceStruct *)calloc(sizeof(ISSIDeviceStruct) * 2, 1);
- issi_devices[device_addr] = device;
- device->fn_device_addr = ISSI_ADDR_DEFAULT | device_addr << 1;
- device->fn_register_addr = 0;
- device->led_device_addr = ISSI_ADDR_DEFAULT | device_addr << 1;
- device->led_register_addr = 0;
- // set dirty bits so that all of the buffered data is written out
- device->fn_dirty = 1;
- device->led_dirty = 1;
- update_issi(device_addr, 1);
- // Set the function register to picture mode
- // device->fn_reg[ISSI_REG_CONFIG] = ISSI_REG_CONFIG_PICTUREMODE;
- writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01);
- }
-
- // Shutdown and set all registers to 0
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00);
- // for(uint8_t bank = 0; bank <= 7; bank++){
- // for (uint8_t reg = 0x00; reg <= 0xB3; reg++) {
- // writeRegister8(device_addr, bank, reg, 0x00);
- // }
- // }
- // for (uint8_t reg = 0; reg <= 0x0C; reg++) {
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, reg, 0x00);
- // }
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_CONFIG, ISSI_REG_CONFIG_PICTUREMODE);
- // writeRegister8(device_addr, ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01);
- // picture mode
- // writeRegister8(ISSI_BANK_FUNCTIONREG, 0x01, 0x01);
-
- //Enable blink
- // writeRegister8(ISSI_BANK_FUNCTIONREG, 0x05, 0x48B);
-
- //Enable Breath
-
-}
-
-#endif
diff --git a/keyboards/woodkeys/meira/issi.h b/keyboards/woodkeys/meira/issi.h
deleted file mode 100755
index 74379ddbc8..0000000000
--- a/keyboards/woodkeys/meira/issi.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#pragma once
-
-#ifdef ISSI_ENABLE
-
-typedef struct ISSIDeviceStruct{
- uint8_t fn_dirty; // function registers need to be resent
- uint8_t fn_device_addr;
- uint8_t fn_register_addr;
- uint8_t fn_registers[13];
- uint8_t led_dirty; // LED data has changed and needs to be resent
- uint8_t led_device_addr;
- uint8_t led_register_addr;
- uint8_t led_ctrl[18];
- uint8_t led_blink_ctrl[18];
- uint8_t led_pwm[144];
-}ISSIDeviceStruct;
-
-extern ISSIDeviceStruct *issi_devices[];
-
-// Low level commands- 'device' is the 2-bit i2c id.
-void issi_init(void);
-void set_shutdown(uint8_t device, uint8_t shutdown);
-void writeRegister8(uint8_t device, uint8_t frame, uint8_t reg, uint8_t data);
-
-// Higher level, no device is given, but it is calculated from 'matrix'
-// Each device has 2 blocks, max of 4 devices:
-// Device | Block = Matrix
-// 0 A 0
-// 0 B 1
-// 1 A 2
-// 1 B 3
-// 2 A 4
-// 2 B 5
-// 3 A 6
-// 3 B 7
-void activateLED(uint8_t matrix, uint8_t cx, uint8_t cy, uint8_t pwm);
-void update_issi(uint8_t device_addr, uint8_t blocking);
-
-#endif
diff --git a/keyboards/woodkeys/meira/keymaps/cole/keymap.c b/keyboards/woodkeys/meira/keymaps/cole/keymap.c
index b85da25a28..91a03d8861 100644
--- a/keyboards/woodkeys/meira/keymaps/cole/keymap.c
+++ b/keyboards/woodkeys/meira/keymaps/cole/keymap.c
@@ -14,7 +14,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "lighting.h"
#ifdef RGBLIGHT_ENABLE
//Following line allows macro to read current RGB settings
diff --git a/keyboards/woodkeys/meira/keymaps/default/keymap.c b/keyboards/woodkeys/meira/keymaps/default/keymap.c
index af3dca37a8..8aedffc675 100644
--- a/keyboards/woodkeys/meira/keymaps/default/keymap.c
+++ b/keyboards/woodkeys/meira/keymaps/default/keymap.c
@@ -14,7 +14,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "lighting.h"
#ifdef RGBLIGHT_ENABLE
// Following line allows macro to read current RGB settings
diff --git a/keyboards/woodkeys/meira/keymaps/grahampheath/keymap.c b/keyboards/woodkeys/meira/keymaps/grahampheath/keymap.c
index 8057bcf2b4..c95a3183b1 100644
--- a/keyboards/woodkeys/meira/keymaps/grahampheath/keymap.c
+++ b/keyboards/woodkeys/meira/keymaps/grahampheath/keymap.c
@@ -268,15 +268,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
break;
- case BL_TOGG:
-#ifdef ISSI_ENABLE
- if (record->event.pressed) {
- print("Enabling backlight\n");
- issi_init();
- }
-#endif
- return false;
- break;
case BL_STEP:
if (record->event.pressed) {
print("Stepping backlight\n");
diff --git a/keyboards/woodkeys/meira/keymaps/grahampheath/rules.mk b/keyboards/woodkeys/meira/keymaps/grahampheath/rules.mk
index 1c61fe1c12..c4e55a1a65 100644
--- a/keyboards/woodkeys/meira/keymaps/grahampheath/rules.mk
+++ b/keyboards/woodkeys/meira/keymaps/grahampheath/rules.mk
@@ -1,5 +1,3 @@
AUDIO_ENABLE = yes # Audio output on port C6
LTO_ENABLE = yes # -4-7k
MOUSEKEY_ENABLE = no # Mouse keys(-47kb)
-ISSI_ENABLE = no
-BACKLIGHT_ENABLE = no \ No newline at end of file
diff --git a/keyboards/woodkeys/meira/keymaps/takmiya/keymap.c b/keyboards/woodkeys/meira/keymaps/takmiya/keymap.c
index 8e3c41c332..cf1b2b8ce6 100644
--- a/keyboards/woodkeys/meira/keymaps/takmiya/keymap.c
+++ b/keyboards/woodkeys/meira/keymaps/takmiya/keymap.c
@@ -14,7 +14,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
-#include "lighting.h"
#ifdef RGBLIGHT_ENABLE
//Following line allows macro to read current RGB settings
@@ -189,15 +188,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
break;
- case BL_TOGG:
-#ifdef ISSI_ENABLE
- if (record->event.pressed) {
- print("Enabling backlight\n");
- issi_init();
- }
-#endif
- return false;
- break;
case BL_STEP:
if (record->event.pressed) {
print("Stepping backlight\n");
diff --git a/keyboards/woodkeys/meira/lighting.c b/keyboards/woodkeys/meira/lighting.c
deleted file mode 100755
index 6a17250a29..0000000000
--- a/keyboards/woodkeys/meira/lighting.c
+++ /dev/null
@@ -1,84 +0,0 @@
-#ifdef ISSI_ENABLE
-
-
-#include <avr/sfr_defs.h>
-#include <avr/timer_avr.h>
-#include <avr/wdt.h>
-#include "meira.h"
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
-#include "debug.h"
-#include "audio.h"
-
-
-const uint8_t backlight_pwm_map[BACKLIGHT_LEVELS] = BACKLIGHT_PWM_MAP;
-
- const uint8_t switch_matrices[] = {0, 1};
-
-void backlight_set(uint8_t level){
-#ifdef BACKLIGHT_ENABLE
- uint8_t pwm_value = 0;
- if(level >= BACKLIGHT_LEVELS){
- level = BACKLIGHT_LEVELS;
- }
- if(level > 0){
- pwm_value = backlight_pwm_map[level-1];
- }
- xprintf("BACKLIGHT_LEVELS: %d\n", BACKLIGHT_LEVELS);
- xprintf("backlight_set level: %d pwm: %d\n", level, pwm_value);
- for(int x = 1; x <= 9; x++){
- for(int y = 1; y <= 9; y++){
- activateLED(switch_matrices[0], x, y, pwm_value);
- activateLED(switch_matrices[1], x, y, pwm_value);
- }
- }
-#endif
-}
-
-
-
-void set_backlight_by_keymap(uint8_t col, uint8_t row){
-// dprintf("LED: %02X, %d %d %d\n", lookup_value, matrix, led_col, led_row);
-// activateLED(matrix, led_col, led_row, 255);
-}
-
-void force_issi_refresh(void){
- issi_devices[0]->led_dirty = true;
- update_issi(0, true);
- issi_devices[3]->led_dirty = true;
- update_issi(3, true);
-}
-
-void led_test(void){
-#ifdef WATCHDOG_ENABLE
- // This test take a long time to run, disable the WTD until its complete
- wdt_disable();
-#endif
- backlight_set(0);
- force_issi_refresh();
-// for(uint8_t x = 0; x < sizeof(rgb_sequence); x++){
-// set_rgb(rgb_sequence[x], 255, 0, 0);
-// force_issi_refresh();
-// _delay_ms(250);
-// set_rgb(rgb_sequence[x], 0, 255, 0);
-// force_issi_refresh();
-// _delay_ms(250);
-// set_rgb(rgb_sequence[x], 0, 0, 255);
-// force_issi_refresh();
-// _delay_ms(250);
-// set_rgb(rgb_sequence[x], 0, 0, 0);
-// force_issi_refresh();
-// }
-#ifdef WATCHDOG_ENABLE
- wdt_enable(WDTO_250MS);
-#endif
-}
-
-void backlight_init_ports(void){
- xprintf("backlight_init_ports\n");
- issi_init();
-}
-
-#endif
-
diff --git a/keyboards/woodkeys/meira/lighting.h b/keyboards/woodkeys/meira/lighting.h
deleted file mode 100755
index 42fee8ac92..0000000000
--- a/keyboards/woodkeys/meira/lighting.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#pragma once
-
-void led_test(void);
-void force_issi_refresh(void);
-void set_backlight(uint8_t level);
-void set_backlight_by_keymap(uint8_t col, uint8_t row);
diff --git a/keyboards/woodkeys/meira/matrix.c b/keyboards/woodkeys/meira/matrix.c
index 145750a418..e08782dd40 100644
--- a/keyboards/woodkeys/meira/matrix.c
+++ b/keyboards/woodkeys/meira/matrix.c
@@ -19,18 +19,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/*
* scan matrix
*/
-#include <stdint.h>
-#include <stdbool.h>
-#if defined(__AVR__)
-#include <avr/io.h>
-#endif
+#include "matrix.h"
#include "meira.h"
#include "wait.h"
#include "print.h"
#include "debug.h"
-#include "util.h"
-#include "matrix.h"
-#include "config.h"
#include "timer.h"
#ifndef DEBOUNCE
diff --git a/keyboards/woodkeys/meira/meira.c b/keyboards/woodkeys/meira/meira.c
index 1f4c2557b0..cca87a1b51 100644
--- a/keyboards/woodkeys/meira/meira.c
+++ b/keyboards/woodkeys/meira/meira.c
@@ -14,24 +14,12 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "meira.h"
-#include "issi.h"
-#include "TWIlib.h"
-#include "lighting.h"
-#include "quantum.h"
-
-extern void backlight_set(uint8_t level);
void matrix_init_kb(void)
{
debug_enable=true;
print("meira matrix_init_kb\n");
-#ifdef ISSI_ENABLE
- issi_init();
-#endif
-#ifdef BACKLIGHT_ENABLE
- backlight_set(5);
-#endif
#ifdef WATCHDOG_ENABLE
// This is done after turning the layer LED red, if we're caught in a loop
// we should get a flashing red light
@@ -48,30 +36,6 @@ void matrix_scan_kb(void)
#ifdef WATCHDOG_ENABLE
wdt_reset();
#endif
-#ifdef ISSI_ENABLE
- // switch/underglow lighting update
- static uint32_t issi_device = 0;
- static uint32_t twi_last_ready = 0;
- if(twi_last_ready > 1000){
- // Its been way too long since the last ISSI update, reset the I2C bus and start again
- xprintf("TWI failed to recover, TWI re-init\n");
- twi_last_ready = 0;
- TWIInit();
- force_issi_refresh();
- }
- if(isTWIReady()){
- twi_last_ready = 0;
- // If the i2c bus is available, kick off the issi update, alternate between devices
- update_issi(issi_device, issi_device);
- if(issi_device){
- issi_device = 0;
- }else{
- issi_device = 3;
- }
- }else{
- twi_last_ready++;
- }
-#endif
matrix_scan_user();
}
@@ -80,9 +44,8 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
// set_backlight_by_keymap(record->event.key.col, record->event.key.row);
if (keycode == QK_BOOT) {
reset_keyboard_kb();
- } else {
}
- return process_record_user(keycode, record);
+ return process_record_user(keycode, record);
}
void reset_keyboard_kb(void){
diff --git a/keyboards/woodkeys/meira/meira.h b/keyboards/woodkeys/meira/meira.h
index 46d9791e48..cdf5b5adbe 100644
--- a/keyboards/woodkeys/meira/meira.h
+++ b/keyboards/woodkeys/meira/meira.h
@@ -16,6 +16,5 @@
#pragma once
#include "quantum.h"
-#include "issi.h"
void reset_keyboard_kb(void);
diff --git a/keyboards/woodkeys/meira/post_rules.mk b/keyboards/woodkeys/meira/post_rules.mk
deleted file mode 100644
index 5d85581c6e..0000000000
--- a/keyboards/woodkeys/meira/post_rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-SRC += matrix.c TWIlib.c issi.c lighting.c
-
-#ifeq ($(strip $(ISSI_ENABLE)), yes)
-# OPT_DEFS += -DISSI_ENABLE
-#endif
-
-#ifeq ($(strip $(WATCHDOG_ENABLE)), yes)
-# OPT_DEFS += -DWATCHDOG_ENABLE
-#endif
diff --git a/keyboards/woodkeys/meira/promicro/config.h b/keyboards/woodkeys/meira/promicro/config.h
index 6c52f0fd11..6fda5d7ab3 100644
--- a/keyboards/woodkeys/meira/promicro/config.h
+++ b/keyboards/woodkeys/meira/promicro/config.h
@@ -33,8 +33,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_COL_PINS { B1, B3, B2, B6, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN }
#define MATRIX_COL_PINS_SCANNED { B1, B3, B2, B6 }
-#define LED_EN_PIN D2
-
/*
* Feature disable options
* These options are also useful to firmware size reduction.
diff --git a/keyboards/woodkeys/meira/rules.mk b/keyboards/woodkeys/meira/rules.mk
index 63586244c0..bad7949ec0 100644
--- a/keyboards/woodkeys/meira/rules.mk
+++ b/keyboards/woodkeys/meira/rules.mk
@@ -7,11 +7,11 @@ EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality, also set ISSI_ENABLE below for Meira
-ISSI_ENABLE = yes # If the I2C pullup resistors aren't install this must be disabled
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = yes
+SRC += matrix.c
DEFAULT_FOLDER = woodkeys/meira/promicro
diff --git a/keyboards/woodkeys/scarletbandana/rules.mk b/keyboards/woodkeys/scarletbandana/rules.mk
index 3de47dd4a0..3e736b56e5 100644
--- a/keyboards/woodkeys/scarletbandana/rules.mk
+++ b/keyboards/woodkeys/scarletbandana/rules.mk
@@ -9,5 +9,5 @@ COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
AUDIO_ENABLE = yes # Audio output
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality, also set ISSI_ENABLE below for Miera
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
LTO_ENABLE = yes
diff --git a/keyboards/work_louder/micro/keymaps/peterfalken/config.h b/keyboards/work_louder/micro/keymaps/peterfalken/config.h
deleted file mode 100644
index dc1dd935a9..0000000000
--- a/keyboards/work_louder/micro/keymaps/peterfalken/config.h
+++ /dev/null
@@ -1,7 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#define CUSTOM_KEYMAP_LAYERS
-#define CUSTOM_LAYER_STATE
diff --git a/keyboards/work_louder/micro/keymaps/peterfalken/keymap.c b/keyboards/work_louder/micro/keymaps/peterfalken/keymap.c
deleted file mode 100644
index abb902597b..0000000000
--- a/keyboards/work_louder/micro/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,113 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "peterfalken.h"
-
-enum keymap_layers {
- _L0,
- _L1,
- _L2,
- _L3,
- _L4,
- _L5,
- _L6,
- _ADJUST
-};
-
-// Shorter custom keycodes
-#define CK_UNDO LGUI(KC_Z) // UNDO = CMD + Z
-#define CK_REDO SGUI(KC_Z) // REDO = CMD + SHIFT + Z
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_L0] = LAYOUT(
- KC_MPLY, KC_9, KC_0, KC_NO,
- KC_5, KC_6, KC_7, KC_8,
- KC_1, KC_2, KC_3, KC_4,
- TO(1), KC_DOT, KC_COMM, _______
- ),
- [_L1] = LAYOUT(
- KC_1, KC_2, KC_3, KC_4,
- KC_5, KC_6, KC_7, KC_8,
- KC_9, KC_0, KC_A, KC_B,
- TO(2), KC_C, KC_D, KC_E
- ),
- [_L2] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- TO(3), _______, _______, _______
- ),
- [_L3] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- TO(4), _______, _______, _______
- ),
- [_L4] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- TO(5), _______, _______, _______
- ),
- [_L5] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- TO(6), _______, _______, _______
- ),
- [_L6] = LAYOUT(
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- TO(7), _______, _______, _______
- ),
- [_ADJUST] = LAYOUT(
- QK_BOOT, _______, _______, _______,
- _______, _______, _______, _______,
- _______, _______, _______, _______,
- TO(0), _______, _______, _______
- ),
-};
-
-typedef union {
- uint32_t raw;
- struct {
- uint8_t led_level : 3;
- };
-} work_louder_config_t;
-
-work_louder_config_t work_louder_config;
-
-#if defined(ENCODER_MAP_ENABLE)
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(CK_UNDO, CK_REDO) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
- { ENCODER_CCW_CW(_______, _______), ENCODER_CCW_CW(_______, _______) },
-};
-#endif // defined(ENCODER_MAP_ENABLE)
-
-layer_state_t layer_state_set_user(layer_state_t state) {
- // Get highest layer as number
- int layer = get_highest_layer(state);
- // Toggle leds based on binary layer number [1 2 3]
- layer & 0x04 ? work_louder_micro_led_1_on(): work_louder_micro_led_1_off();
- layer & 0x02 ? work_louder_micro_led_2_on(): work_louder_micro_led_2_off();
- layer & 0x01 ? work_louder_micro_led_3_on(): work_louder_micro_led_3_off();
- return state;
-}
-
-void eeconfig_init_user(void) {
- work_louder_config.raw = 0;
- work_louder_config.led_level = 1;
- eeconfig_update_user(work_louder_config.raw);
-}
-
-void matrix_init_user(void) {
- work_louder_config.raw = eeconfig_read_user();
- work_louder_micro_led_all_set((uint8_t)(work_louder_config.led_level * 255 / 4));
-}
diff --git a/keyboards/work_louder/micro/keymaps/peterfalken/readme.md b/keyboards/work_louder/micro/keymaps/peterfalken/readme.md
deleted file mode 100644
index f64d682a51..0000000000
--- a/keyboards/work_louder/micro/keymaps/peterfalken/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Copyright 2023 LEG <ucaboys@gmail.com> @PeterFalken
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/work_louder/micro/keymaps/peterfalken/rules.mk b/keyboards/work_louder/micro/keymaps/peterfalken/rules.mk
deleted file mode 100644
index 59ffb099c2..0000000000
--- a/keyboards/work_louder/micro/keymaps/peterfalken/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# Setup QMK features
-ENCODER_MAP_ENABLE = yes
-RGB_MATRIX_ENABLE = no # Disable RGB key matrix
diff --git a/keyboards/work_louder/rgb_functions.c b/keyboards/work_louder/rgb_functions.c
index 138779465e..b4d1a2ad72 100644
--- a/keyboards/work_louder/rgb_functions.c
+++ b/keyboards/work_louder/rgb_functions.c
@@ -24,7 +24,7 @@
#include "ws2812_bitbang.c"
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds) {
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds) {
ws2812_setleds(start_led, num_leds);
}
#endif
diff --git a/keyboards/work_louder/work_board/keymaps/drashna/config.h b/keyboards/work_louder/work_board/keymaps/drashna/config.h
deleted file mode 100644
index b3bcaca25d..0000000000
--- a/keyboards/work_louder/work_board/keymaps/drashna/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define RGBLIGHT_EFFECT_KNIGHT_LED_NUM 12
-
-#undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
-#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255
diff --git a/keyboards/work_louder/work_board/keymaps/drashna/keymap.c b/keyboards/work_louder/work_board/keymaps/drashna/keymap.c
deleted file mode 100644
index 2c20225742..0000000000
--- a/keyboards/work_louder/work_board/keymaps/drashna/keymap.c
+++ /dev/null
@@ -1,167 +0,0 @@
-/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "drashna.h"
-
-#define PLNK_1 SP_LWER
-#define PLNK_2 BK_LWER
-#define PLNK_3 DL_RAIS
-#define PLNK_4 ET_RAIS
-
-/*
- * The `LAYOUT_ortho_4x12_base` macro is a template to allow the use of identical
- * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
- * that there is no need to set them up for each layout, and modify all of
- * them if I want to change them. This helps to keep consistency and ease
- * of use. K## is a placeholder to pass through the individual keycodes
- */
-// clang-format off
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-#define LAYOUT_base( \
- K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
- K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \
- K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
- ) \
- LAYOUT_wrapper( \
- KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_DEL, KC_MUTE, \
- LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \
- KC_MLSF, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), KC_ENT, \
- OS_LSFT, OS_LCTL, OS_LALT, OS_LGUI, PLNK_1, PLNK_2, PLNK_3, PLNK_4, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
- )
-#define LAYOUT_base_wrapper(...) LAYOUT_base(__VA_ARGS__)
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper(
- _________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
- _________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
- _________________QWERTY_L3_________________, _________________QWERTY_R3_________________
- ),
-
- [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper(
- ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________,
- ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________,
- ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________
- ),
- [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper(
- _________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
- _________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
- _________________COLEMAK_L3________________, _________________COLEMAK_R3________________
- ),
-
- [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper(
- _________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
- _________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
- _________________DVORAK_L3_________________, _________________DVORAK_R3_________________
- ),
-
- [_LOWER] = LAYOUT_wrapper(
- KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_BSPC, _______,
- KC_DEL, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE,
- _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-
- [_RAISE] = LAYOUT_wrapper(
- KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, KC_BSPC, _______,
- KC_DEL, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
- _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
- _______, _______, _______, _______, _______, _______, _______, _________________RAISE_R3__________________
- ),
-
- [_ADJUST] = LAYOUT_wrapper(
- QK_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, QK_BOOT, _______,
- VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EE_CLR,
- _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, RGB_IDL,
- KEYLOCK, _______, _______, _______, _______, KC_NUKE, _______, _______, _______, _______, _______, TG_MODS
- )
-
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [_DEFAULT_LAYER_1] = { { KC_DOWN, KC_UP } },
- [_DEFAULT_LAYER_2] = { { _______, _______ } },
- [_DEFAULT_LAYER_3] = { { _______, _______ } },
- [_DEFAULT_LAYER_4] = { { _______, _______ } },
- [_GAMEPAD] = { { _______, _______ } },
- [_DIABLO] = { { _______, _______ } },
- [_MOUSE] = { { KC_WH_D, KC_WH_U } },
- [_MEDIA] = { { _______, _______ } },
- [_RAISE] = { { KC_VOLD, KC_VOLU } },
- [_LOWER] = { { RGB_MOD, RGB_RMOD} },
- [_ADJUST] = { { CK_DOWN, CK_UP } },
-};
-// clang-format on
-#endif
-
-bool rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max) {
- uint8_t this_mod = get_mods();
- led_t this_led = host_keyboard_led_state();
- uint8_t this_osm = get_oneshot_mods();
-#define THUMB_LED 6
-#define RGB_MATRIX_INDICATOR_SET_COLOR_wrapper(...) RGB_MATRIX_INDICATOR_SET_COLOR(__VA_ARGS__)
-
- if (get_keyboard_lock()) {
- RGB_MATRIX_INDICATOR_SET_COLOR_wrapper(THUMB_LED, RGB_OFF);
- } else {
- switch (get_highest_layer(default_layer_state)) {
- case _DEFAULT_LAYER_1:
- RGB_MATRIX_INDICATOR_SET_COLOR_wrapper(THUMB_LED, DEFAULT_LAYER_1_RGB);
- break;
- case _DEFAULT_LAYER_2:
- RGB_MATRIX_INDICATOR_SET_COLOR_wrapper(THUMB_LED, DEFAULT_LAYER_2_RGB);
- break;
- case _DEFAULT_LAYER_3:
- RGB_MATRIX_INDICATOR_SET_COLOR_wrapper(THUMB_LED, DEFAULT_LAYER_3_RGB);
- break;
- case _DEFAULT_LAYER_4:
- RGB_MATRIX_INDICATOR_SET_COLOR_wrapper(THUMB_LED, DEFAULT_LAYER_4_RGB);
- break;
- }
- }
-
- if ((this_mod | this_osm) & MOD_MASK_SHIFT || this_led.caps_lock) {
- if (!layer_state_is(_ADJUST)) {
- RGB_MATRIX_INDICATOR_SET_COLOR(12, 0x00, 0xFF, 0x00);
- RGB_MATRIX_INDICATOR_SET_COLOR(13, 0x00, 0xFF, 0x00);
- }
- RGB_MATRIX_INDICATOR_SET_COLOR(24, 0x00, 0xFF, 0x00);
- }
- if ((this_mod | this_osm) & MOD_MASK_CTRL) {
- RGB_MATRIX_INDICATOR_SET_COLOR(11, 0xFF, 0x00, 0x00);
- RGB_MATRIX_INDICATOR_SET_COLOR(23, 0xFF, 0x00, 0x00);
- RGB_MATRIX_INDICATOR_SET_COLOR(14, 0xFF, 0x00, 0x00);
- }
- if ((this_mod | this_osm) & MOD_MASK_GUI) {
- RGB_MATRIX_INDICATOR_SET_COLOR(9, 0xFF, 0xD9, 0x00);
- }
- if ((this_mod | this_osm) & MOD_MASK_ALT) {
- RGB_MATRIX_INDICATOR_SET_COLOR(10, 0x00, 0x00, 0xFF);
- RGB_MATRIX_INDICATOR_SET_COLOR(25, 0x00, 0x00, 0xFF);
- RGB_MATRIX_INDICATOR_SET_COLOR(36, 0x00, 0x00, 0xFF);
- }
- if (layer_state_is(_LOWER)) {
- RGB_MATRIX_INDICATOR_SET_COLOR(7, 0x00, 0xFF, 0x00);
- RGB_MATRIX_INDICATOR_SET_COLOR(8, 0x00, 0xFF, 0x00);
- }
- if (layer_state_is(_RAISE)) {
- RGB_MATRIX_INDICATOR_SET_COLOR(4, 0xFF, 0xFF, 0x00);
- RGB_MATRIX_INDICATOR_SET_COLOR(5, 0xFF, 0xFF, 0x00);
- }
-
- return true;
-}
diff --git a/keyboards/work_louder/work_board/keymaps/drashna/rules.mk b/keyboards/work_louder/work_board/keymaps/drashna/rules.mk
deleted file mode 100644
index 8bdc486929..0000000000
--- a/keyboards/work_louder/work_board/keymaps/drashna/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-BOOTMAGIC_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-TAP_DANCE_ENABLE = no
-NKRO_ENABLE = yes
-RGBLIGHT_STARTUP_ANIMATION = no
-ENCODER_MAP_ENABLE = yes
-
-AUTOCORRECT_ENABLE = no
-CUSTOM_UNICODE_ENABLE = no
diff --git a/keyboards/work_louder/work_board/keymaps/peterfalken/keymap.c b/keyboards/work_louder/work_board/keymaps/peterfalken/keymap.c
deleted file mode 100644
index 785322b8af..0000000000
--- a/keyboards/work_louder/work_board/keymaps/peterfalken/keymap.c
+++ /dev/null
@@ -1,88 +0,0 @@
-// Copyright 2023 Peter.Falken (@PeterFalken)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include "peterfalken.h"
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Qwerty
- * ,-----------------------------------------------------------------------------------.
- * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Tab | A | S | D | F | G | H | J | K | L | ; | ' |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | Ctrl | Opt | Cmd | LWR | Space | RSE | Left | Down | Up |Right |
- * `-----------------------------------------------------------------------------------'
- */
-[_QWERTY] = LAYOUT(
- KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, _______,
- KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
- _______, KC_LCTL, KC_LOPT, KC_LCMD, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
-),
-
-/* Lower
- * ,-----------------------------------------------------------------------------------.
- * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_LOWER] = LAYOUT(
- KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, _______,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Raise
- * ,-----------------------------------------------------------------------------------.
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | Next | Vol- | Vol+ | Play |
- * `-----------------------------------------------------------------------------------'
- */
-[_RAISE] = LAYOUT(
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, _______,
- KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
-),
-
-/* Adjust (Lower + Raise)
- * ,-----------------------------------------------------------------------------------.
- * | RSET | ▽ | M.AP | M.AL | LPAD | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | Del |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ | SLEP |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | CPWD | UN | CU | CO | PA | MV | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * |------+------+------+------+------+------+------+------+------+------+------+------|
- * | ▽ | ▽ | ▽ | ▽ | ▽ | ▽ ▽ | ▽ | ▽ | ▽ | ▽ | ▽ |
- * `-----------------------------------------------------------------------------------'
- */
-[_ADJUST] = LAYOUT(
- QK_BOOT, _______, CK_M1, KC_MCTL, KC_LPAD, _______, _______, _______, _______, _______, _______, KC_DEL, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CK_SLP,
- CK_CW, _______, CK_CU, CK_CO, CK_PA, CK_MV, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-)
-
-};
-
-#ifdef ENCODER_MAP_ENABLE
-const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
- [_QWERTY] = { { KC_VOLU, KC_VOLD } },
- [_RAISE] = { { _______, _______ } },
- [_LOWER] = { { _______, _______ } },
- [_ADJUST] = { { _______, _______ } },
-};
-#endif // ENCODER_ENABLE
diff --git a/keyboards/work_louder/work_board/keymaps/peterfalken/readme.md b/keyboards/work_louder/work_board/keymaps/peterfalken/readme.md
deleted file mode 100644
index f64d682a51..0000000000
--- a/keyboards/work_louder/work_board/keymaps/peterfalken/readme.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Copyright 2023 LEG <ucaboys@gmail.com> @PeterFalken
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/keyboards/work_louder/work_board/keymaps/peterfalken/rules.mk b/keyboards/work_louder/work_board/keymaps/peterfalken/rules.mk
deleted file mode 100644
index e2a6e1084e..0000000000
--- a/keyboards/work_louder/work_board/keymaps/peterfalken/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# Setup QMK features
-ENCODER_MAP_ENABLE = yes
-RGB_MATRIX_ENABLE = no # Disable RGB key matrix
diff --git a/keyboards/xbows/knight/config.h b/keyboards/xbows/knight/config.h
index 0875283a78..d28ca9eac4 100644
--- a/keyboards/xbows/knight/config.h
+++ b/keyboards/xbows/knight/config.h
@@ -47,10 +47,9 @@
# define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110110
-# define DRIVER_ADDR_3 0b1110101
-# define DRIVER_COUNT 3
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+# define IS31FL3731_I2C_ADDRESS_3 IS31FL3731_I2C_ADDRESS_SCL
# define DRIVER_1_LED_TOTAL 36
# define DRIVER_2_LED_TOTAL 35
# define DRIVER_3_LED_TOTAL 15
diff --git a/keyboards/xbows/knight/knight.c b/keyboards/xbows/knight/knight.c
index 5be49f9d6f..05ff84060c 100644
--- a/keyboards/xbows/knight/knight.c
+++ b/keyboards/xbows/knight/knight.c
@@ -15,7 +15,7 @@
*/
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
- const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C1_3, C2_3, C3_3}, // L01
{0, C1_4, C2_4, C3_4}, // L02
diff --git a/keyboards/xbows/knight_plus/config.h b/keyboards/xbows/knight_plus/config.h
index f8ec6d273b..433d8d994f 100644
--- a/keyboards/xbows/knight_plus/config.h
+++ b/keyboards/xbows/knight_plus/config.h
@@ -47,10 +47,9 @@
# define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110110
-# define DRIVER_ADDR_3 0b1110101
-# define DRIVER_COUNT 3
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+# define IS31FL3731_I2C_ADDRESS_3 IS31FL3731_I2C_ADDRESS_SCL
# define DRIVER_1_LED_TOTAL 36
# define DRIVER_2_LED_TOTAL 35
# define DRIVER_3_LED_TOTAL 15
diff --git a/keyboards/xbows/knight_plus/knight_plus.c b/keyboards/xbows/knight_plus/knight_plus.c
index ce718d22a5..b84f6b964b 100644
--- a/keyboards/xbows/knight_plus/knight_plus.c
+++ b/keyboards/xbows/knight_plus/knight_plus.c
@@ -15,7 +15,7 @@
*/
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
- const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C1_3, C2_3, C3_3}, // L01
{0, C1_4, C2_4, C3_4}, // L02
diff --git a/keyboards/xbows/nature/config.h b/keyboards/xbows/nature/config.h
index be7fbeaa64..1710e17c2f 100644
--- a/keyboards/xbows/nature/config.h
+++ b/keyboards/xbows/nature/config.h
@@ -49,10 +49,9 @@
# define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110110
-# define DRIVER_ADDR_3 0b1110101
-# define DRIVER_COUNT 3
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+# define IS31FL3731_I2C_ADDRESS_3 IS31FL3731_I2C_ADDRESS_SCL
# define DRIVER_1_LED_TOTAL 36
# define DRIVER_2_LED_TOTAL 36
# define DRIVER_3_LED_TOTAL 15
diff --git a/keyboards/xbows/nature/nature.c b/keyboards/xbows/nature/nature.c
index da0cb54a60..1ba964e453 100644
--- a/keyboards/xbows/nature/nature.c
+++ b/keyboards/xbows/nature/nature.c
@@ -15,7 +15,7 @@
*/
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
- const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C1_3, C2_3, C3_3}, // L01
{0, C1_4, C2_4, C3_4}, // L02
diff --git a/keyboards/xbows/numpad/config.h b/keyboards/xbows/numpad/config.h
index 1276efe191..df025a850d 100644
--- a/keyboards/xbows/numpad/config.h
+++ b/keyboards/xbows/numpad/config.h
@@ -47,7 +47,6 @@
# define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out
-# define DRIVER_ADDR_1 0b1110111
-# define DRIVER_COUNT 1
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_VCC
# define RGB_MATRIX_LED_COUNT 22
#endif
diff --git a/keyboards/xbows/numpad/numpad.c b/keyboards/xbows/numpad/numpad.c
index da20172f34..519a1b36f4 100644
--- a/keyboards/xbows/numpad/numpad.c
+++ b/keyboards/xbows/numpad/numpad.c
@@ -15,7 +15,7 @@
*/
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
- const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C3_3, C2_3, C1_3}, // L01
{0, C3_4, C2_4, C1_4}, // L02
diff --git a/keyboards/xbows/ranger/config.h b/keyboards/xbows/ranger/config.h
index 68c8227da0..92bcfa492c 100644
--- a/keyboards/xbows/ranger/config.h
+++ b/keyboards/xbows/ranger/config.h
@@ -46,10 +46,9 @@
# define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110101
-# define DRIVER_ADDR_3 0b1110110
-# define DRIVER_COUNT 3
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SCL
+# define IS31FL3731_I2C_ADDRESS_3 IS31FL3731_I2C_ADDRESS_SDA
# define DRIVER_1_LED_TOTAL 36
# define DRIVER_2_LED_TOTAL 36
# define DRIVER_3_LED_TOTAL 15
diff --git a/keyboards/xbows/ranger/ranger.c b/keyboards/xbows/ranger/ranger.c
index 4ae55e7d68..028b5fca5c 100644
--- a/keyboards/xbows/ranger/ranger.c
+++ b/keyboards/xbows/ranger/ranger.c
@@ -17,7 +17,7 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C3_3, C2_3, C1_3}, // L01
{0, C3_4, C2_4, C1_4}, // L02
diff --git a/keyboards/xbows/woody/config.h b/keyboards/xbows/woody/config.h
index bfdbcce8c2..7d06b7abda 100644
--- a/keyboards/xbows/woody/config.h
+++ b/keyboards/xbows/woody/config.h
@@ -56,9 +56,8 @@
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-# define DRIVER_ADDR_1 0b1110100
-# define DRIVER_ADDR_2 0b1110110
-# define DRIVER_COUNT 2
+# define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+# define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
# define DRIVER_1_LED_TOTAL 35
# define DRIVER_2_LED_TOTAL 32
# define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
diff --git a/keyboards/xbows/woody/woody.c b/keyboards/xbows/woody/woody.c
index fa0ba7f768..e58ec15e10 100644
--- a/keyboards/xbows/woody/woody.c
+++ b/keyboards/xbows/woody/woody.c
@@ -1,6 +1,6 @@
#include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
{0, C8_8, C7_8, C6_8}, // LA17
{0, C9_8, C7_7, C6_7}, // LA16
diff --git a/keyboards/xelus/dawn60/rev1/config.h b/keyboards/xelus/dawn60/rev1/config.h
index d3b505447a..2552942635 100644
--- a/keyboards/xelus/dawn60/rev1/config.h
+++ b/keyboards/xelus/dawn60/rev1/config.h
@@ -16,8 +16,9 @@
#pragma once
// IS31FL3731 driver
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT 64
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
+#define IS31FL3731_LED_COUNT 64
// Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
#define LOCKING_SUPPORT_ENABLE
diff --git a/keyboards/xelus/dawn60/rev1/rev1.c b/keyboards/xelus/dawn60/rev1/rev1.c
index 2d0b465bcc..47ea0ffbaa 100644
--- a/keyboards/xelus/dawn60/rev1/rev1.c
+++ b/keyboards/xelus/dawn60/rev1/rev1.c
@@ -14,5 +14,85 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RGB_BACKLIGHT_DAWN60
-#error RGB_BACKLIGHT_DAWN60 not defined, you done goofed somehao, brah
+# error RGB_BACKLIGHT_DAWN60 not defined, you done goofed somehao, brah
+#else
+# include "drivers/led/issi/is31fl3731.h"
+#endif
+
+#if defined(RGB_MATRIX_ENABLE) || defined(RGB_BACKLIGHT_DAWN60)
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
+/* Refer to IS31 manual for these locations
+ * driver
+ * | R location
+ * | | G location
+ * | | | B location
+ * | | | | */
+ {0, C1_1, C3_2, C4_2}, //A1
+ {0, C1_2, C2_2, C4_3}, //A2
+ {0, C1_3, C2_3, C3_3}, //A3
+ {0, C1_4, C2_4, C3_4}, //A4
+ {0, C1_5, C2_5, C3_5}, //A5
+ {0, C1_6, C2_6, C3_6}, //A6
+ {0, C1_7, C2_7, C3_7}, //A7
+ {0, C1_8, C2_8, C3_8}, //A8
+ {0, C9_1, C8_1, C7_1}, //A9
+ {0, C9_2, C8_2, C7_2}, //A10
+ {0, C9_3, C8_3, C7_3}, //A11
+ {0, C9_4, C8_4, C7_4}, //A12
+ {0, C9_5, C8_5, C7_5}, //A13
+ {0, C9_6, C8_6, C7_6}, //A14
+ {0, C9_7, C8_7, C6_6}, //A15
+ {0, C9_8, C7_7, C6_7}, //A16
+
+ {0, C1_9, C3_10, C4_10}, //B1
+ {0, C1_10, C2_10, C4_11}, //B2
+ {0, C1_11, C2_11, C3_11}, //B3
+ {0, C1_12, C2_12, C3_12}, //B4
+ {0, C1_13, C2_13, C3_13}, //B5
+ {0, C1_14, C2_14, C3_14}, //B6
+ {0, C1_15, C2_15, C3_15}, //B7
+ {0, C1_16, C2_16, C3_16}, //B8
+ {0, C9_9, C8_9, C7_9}, //B9
+ {0, C9_10, C8_10, C7_10}, //B10
+ {0, C9_11, C8_11, C7_11}, //B11
+ {0, C9_12, C8_12, C7_12}, //B12
+ {0, C9_13, C8_13, C7_13}, //B13
+ {0, C9_14, C8_14, C7_14}, //B14
+ {0, C9_15, C8_15, C6_14}, //B15
+ {0, C9_16, C7_15, C6_15}, //B16
+
+ {1, C1_1, C3_2, C4_2}, //C1
+ {1, C1_2, C2_2, C4_3}, //C2
+ {1, C1_3, C2_3, C3_3}, //C3
+ {1, C1_4, C2_4, C3_4}, //C4
+ {1, C1_5, C2_5, C3_5}, //C5
+ {1, C1_6, C2_6, C3_6}, //C6
+ {1, C1_7, C2_7, C3_7}, //C7
+ {1, C1_8, C2_8, C3_8}, //C8
+ {1, C9_1, C8_1, C7_1}, //C9
+ {1, C9_2, C8_2, C7_2}, //C10
+ {1, C9_3, C8_3, C7_3}, //C11
+ {1, C9_4, C8_4, C7_4}, //C12
+ {1, C9_5, C8_5, C7_5}, //C13
+ {1, C9_6, C8_6, C7_6}, //C14
+ {1, C9_7, C8_7, C6_6}, //C15
+ {1, C9_8, C7_7, C6_7}, //C16
+
+ {1, C1_9, C3_10, C4_10}, //D1
+ {1, C1_10, C2_10, C4_11}, //D2
+ {1, C1_11, C2_11, C3_11}, //D3
+ {1, C1_12, C2_12, C3_12}, //D4
+ {1, C1_13, C2_13, C3_13}, //D5
+ {1, C1_14, C2_14, C3_14}, //D6
+ {1, C1_15, C2_15, C3_15}, //D7
+ {1, C1_16, C2_16, C3_16}, //D8
+ {1, C9_9, C8_9, C7_9}, //D9
+ {1, C9_10, C8_10, C7_10}, //D10
+ {1, C9_11, C8_11, C7_11}, //D11
+ {1, C9_12, C8_12, C7_12}, //D12
+ {1, C9_13, C8_13, C7_13}, //D13
+ {1, C9_14, C8_14, C7_14}, //D14
+ {1, C9_15, C8_15, C6_14}, //D15
+ {1, C9_16, C7_15, C6_15} //D16
+};
#endif
diff --git a/keyboards/xelus/dawn60/rev1/rules.mk b/keyboards/xelus/dawn60/rev1/rules.mk
index d4e70bfbec..0a72a60eca 100644
--- a/keyboards/xelus/dawn60/rev1/rules.mk
+++ b/keyboards/xelus/dawn60/rev1/rules.mk
@@ -26,4 +26,4 @@ SRC += keyboards/wilba_tech/wt_main.c \
quantum/color.c \
drivers/led/issi/is31fl3731.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/xelus/dawn60/rev1_qmk/config.h b/keyboards/xelus/dawn60/rev1_qmk/config.h
index ad399bd962..4e6d418f21 100644
--- a/keyboards/xelus/dawn60/rev1_qmk/config.h
+++ b/keyboards/xelus/dawn60/rev1_qmk/config.h
@@ -24,14 +24,13 @@
#define WS2812_LED_TOTAL 20
//RGB Matrix defines
-#define DRIVER_ADDR_1 0x74
-#define DRIVER_ADDR_2 0x76
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
-#define DRIVER_COUNT 2
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
-#define ISSI_DRIVER_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL + WS2812_LED_TOTAL)
+#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
+#define RGB_MATRIX_LED_COUNT (IS31FL3731_LED_COUNT + WS2812_LED_TOTAL)
#define RGB_MATRIX_DEFAULT_VAL 80
#define RGB_MATRIX_KEYPRESSES
diff --git a/keyboards/xelus/dawn60/rev1_qmk/rev1_qmk.c b/keyboards/xelus/dawn60/rev1_qmk/rev1_qmk.c
index 7b77807326..35ac5a06b2 100644
--- a/keyboards/xelus/dawn60/rev1_qmk/rev1_qmk.c
+++ b/keyboards/xelus/dawn60/rev1_qmk/rev1_qmk.c
@@ -23,9 +23,9 @@
#include "ws2812.h"
#ifdef RGB_MATRIX_ENABLE
-LED_TYPE rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
+rgb_led_t rgb_matrix_ws2812_array[WS2812_LED_TOTAL];
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -99,28 +99,6 @@ const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
{1, C9_14, C8_14, C7_14}, //D14
{1, C9_15, C8_15, C6_14}, //D15
{1, C9_16, C7_15, C6_15}, //D16
-
- //fake underglows 1- 20
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0},
- {2, 0, 0, 0}
};
__attribute__ ((weak))
@@ -167,32 +145,32 @@ led_config_t g_led_config = { {
//Custom Driver
static void init(void) {
i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
- is31fl3731_init(DRIVER_ADDR_2);
- for (int index = 0; index < ISSI_DRIVER_TOTAL; index++) {
+ is31fl3731_init(IS31FL3731_I2C_ADDRESS_1);
+ is31fl3731_init(IS31FL3731_I2C_ADDRESS_2);
+ for (int index = 0; index < IS31FL3731_LED_COUNT; index++) {
bool enabled = true;
is31fl3731_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
- is31fl3731_update_led_control_registers(DRIVER_ADDR_2, 1);
+ is31fl3731_update_led_control_registers(IS31FL3731_I2C_ADDRESS_1, 0);
+ is31fl3731_update_led_control_registers(IS31FL3731_I2C_ADDRESS_2, 1);
//RGB Underglow ws2812
}
static void flush(void) {
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_2, 1);
+ is31fl3731_update_pwm_buffers(IS31FL3731_I2C_ADDRESS_1, 0);
+ is31fl3731_update_pwm_buffers(IS31FL3731_I2C_ADDRESS_2, 1);
ws2812_setleds(rgb_matrix_ws2812_array, WS2812_LED_TOTAL);
}
static void set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
- if (index < ISSI_DRIVER_TOTAL) {
+ if (index < IS31FL3731_LED_COUNT) {
is31fl3731_set_color(index, red, green, blue);
} else {
- rgb_matrix_ws2812_array[index - ISSI_DRIVER_TOTAL].r = red;
- rgb_matrix_ws2812_array[index - ISSI_DRIVER_TOTAL].g = green;
- rgb_matrix_ws2812_array[index - ISSI_DRIVER_TOTAL].b = blue;
+ rgb_matrix_ws2812_array[index - IS31FL3731_LED_COUNT].r = red;
+ rgb_matrix_ws2812_array[index - IS31FL3731_LED_COUNT].g = green;
+ rgb_matrix_ws2812_array[index - IS31FL3731_LED_COUNT].b = blue;
}
}
diff --git a/keyboards/xelus/dawn60/rev1_qmk/rules.mk b/keyboards/xelus/dawn60/rev1_qmk/rules.mk
index 4a799710d2..edb15fa760 100644
--- a/keyboards/xelus/dawn60/rev1_qmk/rules.mk
+++ b/keyboards/xelus/dawn60/rev1_qmk/rules.mk
@@ -25,6 +25,6 @@ COMMON_VPATH += $(DRIVER_PATH)/issi
# project specific files
SRC += drivers/led/issi/is31fl3731.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
LTO_ENABLE = yes
diff --git a/keyboards/xelus/kangaroo/rev1/config.h b/keyboards/xelus/kangaroo/rev1/config.h
index 7f246458f5..c174b67e57 100644
--- a/keyboards/xelus/kangaroo/rev1/config.h
+++ b/keyboards/xelus/kangaroo/rev1/config.h
@@ -35,6 +35,3 @@
// I2C EEPROM
#define EEPROM_I2C_CAT24C512
-
-// Dynamic EEPROM
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 65535
diff --git a/keyboards/xelus/kangaroo/rev1/info.json b/keyboards/xelus/kangaroo/rev1/info.json
index ca5fa293e9..f40d455b9f 100644
--- a/keyboards/xelus/kangaroo/rev1/info.json
+++ b/keyboards/xelus/kangaroo/rev1/info.json
@@ -8,6 +8,9 @@
"rows": ["A9", "A8", "B15", "B14", "B13", "B12", "A4", "A5", "A6", "A7", "B0", "B1"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32F072",
"bootloader": "stm32-dfu"
}
diff --git a/keyboards/xelus/kangaroo/rev1/rules.mk b/keyboards/xelus/kangaroo/rev1/rules.mk
index a6006b7150..80aff9822d 100644
--- a/keyboards/xelus/kangaroo/rev1/rules.mk
+++ b/keyboards/xelus/kangaroo/rev1/rules.mk
@@ -9,5 +9,3 @@ COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/xelus/kangaroo/rev2/config.h b/keyboards/xelus/kangaroo/rev2/config.h
index 790db9b30a..dfe8035b10 100644
--- a/keyboards/xelus/kangaroo/rev2/config.h
+++ b/keyboards/xelus/kangaroo/rev2/config.h
@@ -20,6 +20,3 @@
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
-
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE WEAR_LEVELING_LOGICAL_SIZE*2
diff --git a/keyboards/xelus/kangaroo/rev2/info.json b/keyboards/xelus/kangaroo/rev2/info.json
index 196f11860b..9e639df034 100644
--- a/keyboards/xelus/kangaroo/rev2/info.json
+++ b/keyboards/xelus/kangaroo/rev2/info.json
@@ -8,6 +8,11 @@
"rows": ["A9", "A8", "B15", "B14", "B13", "B12", "A4", "A5", "A6", "A7", "B0", "B1"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"processor": "STM32L412",
"bootloader": "stm32-dfu"
}
diff --git a/keyboards/xelus/kangaroo/rev2/rules.mk b/keyboards/xelus/kangaroo/rev2/rules.mk
index 613adf3a22..80aff9822d 100644
--- a/keyboards/xelus/kangaroo/rev2/rules.mk
+++ b/keyboards/xelus/kangaroo/rev2/rules.mk
@@ -9,8 +9,3 @@ COMMAND_ENABLE = yes # Commands for debug and configuration
NKRO_ENABLE = yes # Enable N-Key Rollover
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
diff --git a/keyboards/xelus/pachi/rgb/rev1/config.h b/keyboards/xelus/pachi/rgb/rev1/config.h
index 1007f5b3de..e12b1af443 100644
--- a/keyboards/xelus/pachi/rgb/rev1/config.h
+++ b/keyboards/xelus/pachi/rgb/rev1/config.h
@@ -36,16 +36,11 @@
// I2C EEPROM
#define EEPROM_I2C_24LC64
-// More EEPROM for layers
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191
-
// RGB Matrix defines
-#define DRIVER_ADDR_1 0b0110000
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define DRIVER_1_LED_TOTAL 117
-#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-#define ISSI_DRIVER_TOTAL RGB_MATRIX_LED_COUNT
+#define IS31FL3741_LED_COUNT DRIVER_1_LED_TOTAL
#define RGB_MATRIX_DEFAULT_VAL 80
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/xelus/pachi/rgb/rev1/info.json b/keyboards/xelus/pachi/rgb/rev1/info.json
index 90ab8c19ef..092021b23a 100644
--- a/keyboards/xelus/pachi/rgb/rev1/info.json
+++ b/keyboards/xelus/pachi/rgb/rev1/info.json
@@ -17,6 +17,9 @@
"rows": ["B14", "B13", "B12", "B2", "A8", "B15"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32L422",
"bootloader": "stm32-dfu",
"layout_aliases": {
diff --git a/keyboards/xelus/pachi/rgb/rev1/rev1.c b/keyboards/xelus/pachi/rgb/rev1/rev1.c
index 156c5228da..e43726115e 100644
--- a/keyboards/xelus/pachi/rgb/rev1/rev1.c
+++ b/keyboards/xelus/pachi/rgb/rev1/rev1.c
@@ -22,7 +22,7 @@ void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }
#ifdef RGB_MATRIX_ENABLE
#include "i2c_master.h"
#include "drivers/led/issi/is31fl3741.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -188,8 +188,8 @@ led_config_t g_led_config = { {
static void init(void) {
i2c_init();
- is31fl3741_init(DRIVER_ADDR_1);
- for (int index = 0; index < ISSI_DRIVER_TOTAL; index++) {
+ is31fl3741_init(IS31FL3741_I2C_ADDRESS_1);
+ for (int index = 0; index < IS31FL3741_LED_COUNT; index++) {
bool enabled = !( ( index == -1+0+13) || //A13
( index == -1+13+3) || //B3
( index == -1+13+13) || //B13
@@ -223,16 +223,12 @@ static void init(void) {
);
is31fl3741_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3741_update_led_control_registers(DRIVER_ADDR_1, 0);
-}
-
-static void flush(void) {
- is31fl3741_update_pwm_buffers(DRIVER_ADDR_1, 0);
+ is31fl3741_update_led_control_registers(IS31FL3741_I2C_ADDRESS_1, 0);
}
const rgb_matrix_driver_t rgb_matrix_driver = {
.init = init,
- .flush = flush,
+ .flush = is31fl3741_flush,
.set_color = is31fl3741_set_color,
.set_color_all = is31fl3741_set_color_all
};
diff --git a/keyboards/xelus/pachi/rgb/rev1/rules.mk b/keyboards/xelus/pachi/rgb/rev1/rules.mk
index cec6f3c13d..4c27f45008 100644
--- a/keyboards/xelus/pachi/rgb/rev1/rules.mk
+++ b/keyboards/xelus/pachi/rgb/rev1/rules.mk
@@ -11,8 +11,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
-EEPROM_DRIVER = i2c
-
RGB_MATRIX_ENABLE = yes
COMMON_VPATH += $(DRIVER_PATH)/issi
diff --git a/keyboards/xelus/pachi/rgb/rev2/config.h b/keyboards/xelus/pachi/rgb/rev2/config.h
index a11aa27d3b..f852602705 100644
--- a/keyboards/xelus/pachi/rgb/rev2/config.h
+++ b/keyboards/xelus/pachi/rgb/rev2/config.h
@@ -37,12 +37,10 @@
#define EEPROM_I2C_24LC64
// RGB Matrix defines
-#define DRIVER_ADDR_1 0b0110000
+#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
-#define DRIVER_COUNT 1
#define DRIVER_1_LED_TOTAL 117
-#define RGB_MATRIX_LED_COUNT DRIVER_1_LED_TOTAL
-#define ISSI_DRIVER_TOTAL RGB_MATRIX_LED_COUNT
+#define IS31FL3741_LED_COUNT DRIVER_1_LED_TOTAL
#define RGB_MATRIX_DEFAULT_VAL 80
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
diff --git a/keyboards/xelus/pachi/rgb/rev2/info.json b/keyboards/xelus/pachi/rgb/rev2/info.json
index 64aa3172c0..e0b5dc7d1a 100644
--- a/keyboards/xelus/pachi/rgb/rev2/info.json
+++ b/keyboards/xelus/pachi/rgb/rev2/info.json
@@ -16,6 +16,9 @@
"rows": ["A5", "A6", "B0", "A7", "A8", "B1", "B4", "B5", "A15", "B3", "A13", "A14"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32L422",
"bootloader": "stm32-dfu",
"layout_aliases": {
diff --git a/keyboards/xelus/pachi/rgb/rev2/rev2.c b/keyboards/xelus/pachi/rgb/rev2/rev2.c
index d7c74730f8..25d1406653 100644
--- a/keyboards/xelus/pachi/rgb/rev2/rev2.c
+++ b/keyboards/xelus/pachi/rgb/rev2/rev2.c
@@ -22,7 +22,7 @@ void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }
#ifdef RGB_MATRIX_ENABLE
#include "i2c_master.h"
#include "drivers/led/issi/is31fl3741.h"
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -194,8 +194,8 @@ led_config_t g_led_config = { {
static void init(void) {
i2c_init();
- is31fl3741_init(DRIVER_ADDR_1);
- for (int index = 0; index < ISSI_DRIVER_TOTAL; index++) {
+ is31fl3741_init(IS31FL3741_I2C_ADDRESS_1);
+ for (int index = 0; index < IS31FL3741_LED_COUNT; index++) {
bool enabled = !( ( index == -1+0+13) || //A13
( index == -1+13+3) || //B3
( index == -1+13+13) || //B13
@@ -229,16 +229,12 @@ static void init(void) {
);
is31fl3741_set_led_control_register(index, enabled, enabled, enabled);
}
- is31fl3741_update_led_control_registers(DRIVER_ADDR_1, 0);
-}
-
-static void flush(void) {
- is31fl3741_update_pwm_buffers(DRIVER_ADDR_1, 0);
+ is31fl3741_update_led_control_registers(IS31FL3741_I2C_ADDRESS_1, 0);
}
const rgb_matrix_driver_t rgb_matrix_driver = {
.init = init,
- .flush = flush,
+ .flush = is31fl3741_flush,
.set_color = is31fl3741_set_color,
.set_color_all = is31fl3741_set_color_all
};
diff --git a/keyboards/xelus/pachi/rgb/rev2/rules.mk b/keyboards/xelus/pachi/rgb/rev2/rules.mk
index d5c0eee734..62bb12bfb0 100644
--- a/keyboards/xelus/pachi/rgb/rev2/rules.mk
+++ b/keyboards/xelus/pachi/rgb/rev2/rules.mk
@@ -10,8 +10,6 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
RGB_MATRIX_ENABLE = yes
COMMON_VPATH += $(DRIVER_PATH)/issi
diff --git a/keyboards/xelus/rs108/config.h b/keyboards/xelus/rs108/config.h
index 9ff25facc8..45f2a54530 100644
--- a/keyboards/xelus/rs108/config.h
+++ b/keyboards/xelus/rs108/config.h
@@ -30,14 +30,7 @@
#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
// EEPROM config
-// 24LC32
-#define EXTERNAL_EEPROM_BYTE_COUNT 4096
-#define EXTERNAL_EEPROM_PAGE_SIZE 32
-#define EXTERNAL_EEPROM_ADDRESS_SIZE 2
-#define EXTERNAL_EEPROM_WRITE_TIME 5
-
-// More EEPROM for layers
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 4095
+#define EEPROM_I2C_24LC32A
// Hardware Defines
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
diff --git a/keyboards/xelus/rs108/info.json b/keyboards/xelus/rs108/info.json
index fd2358d68d..0342177e64 100644
--- a/keyboards/xelus/rs108/info.json
+++ b/keyboards/xelus/rs108/info.json
@@ -14,6 +14,9 @@
"rows": ["B5", "B6", "B7", "A1", "A0", "C13", "B0", "A7", "A5", "A4", "A3", "A2"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"indicators": {
"caps_lock": "A6",
"num_lock": "A14",
diff --git a/keyboards/xelus/rs108/rules.mk b/keyboards/xelus/rs108/rules.mk
index 612c1d666a..b763de52c7 100644
--- a/keyboards/xelus/rs108/rules.mk
+++ b/keyboards/xelus/rs108/rules.mk
@@ -11,8 +11,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
# Save hid interface
KEYBOARD_SHARED_EP = yes
diff --git a/keyboards/xelus/rs60/rev2_0/config.h b/keyboards/xelus/rs60/rev2_0/config.h
index 9ff25facc8..45f2a54530 100644
--- a/keyboards/xelus/rs60/rev2_0/config.h
+++ b/keyboards/xelus/rs60/rev2_0/config.h
@@ -30,14 +30,7 @@
#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2
// EEPROM config
-// 24LC32
-#define EXTERNAL_EEPROM_BYTE_COUNT 4096
-#define EXTERNAL_EEPROM_PAGE_SIZE 32
-#define EXTERNAL_EEPROM_ADDRESS_SIZE 2
-#define EXTERNAL_EEPROM_WRITE_TIME 5
-
-// More EEPROM for layers
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 4095
+#define EEPROM_I2C_24LC32A
// Hardware Defines
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE
diff --git a/keyboards/xelus/rs60/rev2_0/info.json b/keyboards/xelus/rs60/rev2_0/info.json
index ac976a4cb4..499a5a922f 100644
--- a/keyboards/xelus/rs60/rev2_0/info.json
+++ b/keyboards/xelus/rs60/rev2_0/info.json
@@ -8,6 +8,9 @@
"rows": ["B15", "B14", "B12", "B1", "B0"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"indicators": {
"caps_lock": "A1"
},
diff --git a/keyboards/xelus/rs60/rev2_0/rules.mk b/keyboards/xelus/rs60/rev2_0/rules.mk
index 965f4edaef..b763de52c7 100644
--- a/keyboards/xelus/rs60/rev2_0/rules.mk
+++ b/keyboards/xelus/rs60/rev2_0/rules.mk
@@ -10,7 +10,6 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
# Save hid interface
KEYBOARD_SHARED_EP = yes
diff --git a/keyboards/xelus/rs60/rev2_1/config.h b/keyboards/xelus/rs60/rev2_1/config.h
index 1c5fe4a336..430a5a47f7 100644
--- a/keyboards/xelus/rs60/rev2_1/config.h
+++ b/keyboards/xelus/rs60/rev2_1/config.h
@@ -21,6 +21,3 @@
// Locking resynchronize hack
#define LOCKING_RESYNC_ENABLE
-// Emulated EEPROM
-#define WEAR_LEVELING_LOGICAL_SIZE 2048
-#define WEAR_LEVELING_BACKING_SIZE WEAR_LEVELING_LOGICAL_SIZE*2
diff --git a/keyboards/xelus/rs60/rev2_1/info.json b/keyboards/xelus/rs60/rev2_1/info.json
index 118a671547..fe87561e61 100644
--- a/keyboards/xelus/rs60/rev2_1/info.json
+++ b/keyboards/xelus/rs60/rev2_1/info.json
@@ -8,6 +8,11 @@
"rows": ["B15", "B14", "B12", "B1", "B0"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "wear_leveling": {
+ "backing_size": 4096
+ }
+ },
"indicators": {
"caps_lock": "A1",
"on_state": 0
diff --git a/keyboards/xelus/rs60/rev2_1/rules.mk b/keyboards/xelus/rs60/rev2_1/rules.mk
index 9eeaa8553b..b763de52c7 100644
--- a/keyboards/xelus/rs60/rev2_1/rules.mk
+++ b/keyboards/xelus/rs60/rev2_1/rules.mk
@@ -11,9 +11,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = wear_leveling
-WEAR_LEVELING_DRIVER = embedded_flash
-
# Save hid interface
KEYBOARD_SHARED_EP = yes
diff --git a/keyboards/xelus/valor/rev2/config.h b/keyboards/xelus/valor/rev2/config.h
index e5acad6f9c..9a0146172d 100644
--- a/keyboards/xelus/valor/rev2/config.h
+++ b/keyboards/xelus/valor/rev2/config.h
@@ -36,9 +36,6 @@
// I2C EEPROM
#define EEPROM_I2C_24LC64
-// More EEPROM for layers
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191
-
/* RGB Matrix */
#define RGB_MATRIX_LED_COUNT 28
#define NOP_FUDGE 0.4
diff --git a/keyboards/xelus/valor/rev2/info.json b/keyboards/xelus/valor/rev2/info.json
index cdb3bb9947..c082afbca2 100644
--- a/keyboards/xelus/valor/rev2/info.json
+++ b/keyboards/xelus/valor/rev2/info.json
@@ -20,6 +20,9 @@
"rows": ["B11", "B10", "A3", "A1", "A2"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32L422",
"bootloader": "stm32-dfu",
"community_layouts": ["alice", "alice_split_bs"],
diff --git a/keyboards/xelus/valor/rev2/rules.mk b/keyboards/xelus/valor/rev2/rules.mk
index e0caab1474..7fd72e35e7 100644
--- a/keyboards/xelus/valor/rev2/rules.mk
+++ b/keyboards/xelus/valor/rev2/rules.mk
@@ -12,7 +12,6 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
RGB_MATRIX_ENABLE = yes
RGB_MATRIX_CUSTOM_KB = yes
-EEPROM_DRIVER = i2c
OPT = 2
LTO_ENABLE = yes
diff --git a/keyboards/xelus/valor_frl_tkl/rev1/config.h b/keyboards/xelus/valor_frl_tkl/rev1/config.h
index a03694deaa..af702fcafd 100644
--- a/keyboards/xelus/valor_frl_tkl/rev1/config.h
+++ b/keyboards/xelus/valor_frl_tkl/rev1/config.h
@@ -35,10 +35,4 @@
#define I2C1_TIMINGR_SCLL 9U
// I2C EEPROM
-// 24LC64
#define EEPROM_I2C_24LC64
-
-// Dynamic EEPROM
-// Something sensible or else VIA may crash
-// Users may enable more if they wish
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 4095
diff --git a/keyboards/xelus/valor_frl_tkl/rev1/info.json b/keyboards/xelus/valor_frl_tkl/rev1/info.json
index 838396caaf..4816a9a3a5 100644
--- a/keyboards/xelus/valor_frl_tkl/rev1/info.json
+++ b/keyboards/xelus/valor_frl_tkl/rev1/info.json
@@ -8,6 +8,9 @@
"rows": ["A15", "A14", "A1", "B3", "B4"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"processor": "STM32F072",
"bootloader": "stm32-dfu"
}
diff --git a/keyboards/xelus/valor_frl_tkl/rev1/rules.mk b/keyboards/xelus/valor_frl_tkl/rev1/rules.mk
index efbd7d0e9b..5356b24d77 100644
--- a/keyboards/xelus/valor_frl_tkl/rev1/rules.mk
+++ b/keyboards/xelus/valor_frl_tkl/rev1/rules.mk
@@ -10,6 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/xelus/xs108/config.h b/keyboards/xelus/xs108/config.h
index 8a6ab123c4..4b3b447c95 100644
--- a/keyboards/xelus/xs108/config.h
+++ b/keyboards/xelus/xs108/config.h
@@ -34,6 +34,3 @@
// I2C EEPROM
#define EEPROM_I2C_24LC64
-
-// More EEPROM for layers
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191
diff --git a/keyboards/xelus/xs108/info.json b/keyboards/xelus/xs108/info.json
index ab9bf597dd..c9c65f7f8b 100644
--- a/keyboards/xelus/xs108/info.json
+++ b/keyboards/xelus/xs108/info.json
@@ -13,6 +13,9 @@
"rows": ["C14", "C13", "A10", "A3", "A1", "A0"]
},
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"indicators": {
"caps_lock": "A2",
"num_lock": "B7",
diff --git a/keyboards/xelus/xs108/rules.mk b/keyboards/xelus/xs108/rules.mk
index 5ed7b869ae..5356b24d77 100644
--- a/keyboards/xelus/xs108/rules.mk
+++ b/keyboards/xelus/xs108/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
diff --git a/keyboards/xelus/xs60/hotswap/config.h b/keyboards/xelus/xs60/hotswap/config.h
index d1138c735d..56ecd57ec9 100644
--- a/keyboards/xelus/xs60/hotswap/config.h
+++ b/keyboards/xelus/xs60/hotswap/config.h
@@ -34,9 +34,6 @@
// I2C EEPROM
#define EEPROM_I2C_24LC64
-// More EEPROM for layers
-#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191
-
// RGBLIGHT
#define RGBLIGHT_LAYERS
#define WS2812_EXTERNAL_PULLUP
diff --git a/keyboards/xelus/xs60/hotswap/info.json b/keyboards/xelus/xs60/hotswap/info.json
index 81cf86498b..45a5e57542 100644
--- a/keyboards/xelus/xs60/hotswap/info.json
+++ b/keyboards/xelus/xs60/hotswap/info.json
@@ -17,6 +17,9 @@
"processor": "STM32L422",
"bootloader": "stm32-dfu",
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"matrix_pins": {
"cols": ["B0", "B1", "A8", "A9", "B5", "A6", "C14", "C15", "A0", "A5", "A4", "A3", "A2", "A1"],
"rows": ["B4", "B3", "A15", "A14", "A7"]
diff --git a/keyboards/xelus/xs60/hotswap/rules.mk b/keyboards/xelus/xs60/hotswap/rules.mk
index 4819456d51..f632b896ab 100644
--- a/keyboards/xelus/xs60/hotswap/rules.mk
+++ b/keyboards/xelus/xs60/hotswap/rules.mk
@@ -10,8 +10,6 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
RGBLIGHT_ENABLE = yes
LTO_ENABLE = yes
diff --git a/keyboards/xelus/xs60/soldered/info.json b/keyboards/xelus/xs60/soldered/info.json
index 20de0ef837..41af87ba7c 100644
--- a/keyboards/xelus/xs60/soldered/info.json
+++ b/keyboards/xelus/xs60/soldered/info.json
@@ -17,6 +17,9 @@
"processor": "STM32L422",
"bootloader": "stm32-dfu",
"diode_direction": "COL2ROW",
+ "eeprom": {
+ "driver": "i2c"
+ },
"matrix_pins": {
"cols": ["B0", "B1", "A8", "A9", "B5", "A6", "C14", "C15", "A0", "A5", "A4", "A3", "A2", "A1"],
"rows": ["B4", "B3", "A15", "A14", "A7"]
diff --git a/keyboards/xelus/xs60/soldered/rules.mk b/keyboards/xelus/xs60/soldered/rules.mk
index 4819456d51..f632b896ab 100644
--- a/keyboards/xelus/xs60/soldered/rules.mk
+++ b/keyboards/xelus/xs60/soldered/rules.mk
@@ -10,8 +10,6 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
-EEPROM_DRIVER = i2c
-
RGBLIGHT_ENABLE = yes
LTO_ENABLE = yes
diff --git a/keyboards/xiudi/xd002/keymaps/multilayer_rgb/rgblite.h b/keyboards/xiudi/xd002/keymaps/multilayer_rgb/rgblite.h
index 8a14a8f956..1fa6f899b9 100644
--- a/keyboards/xiudi/xd002/keymaps/multilayer_rgb/rgblite.h
+++ b/keyboards/xiudi/xd002/keymaps/multilayer_rgb/rgblite.h
@@ -4,6 +4,6 @@
#include "color.h"
static inline void rgblite_setrgb(uint8_t _r, uint8_t _g, uint8_t _b) {
- LED_TYPE leds[RGBLED_NUM] = {{.r = _r, .g = _g, .b = _b}, {.r = _r, .g = _g, .b = _b}};
+ rgb_led_t leds[RGBLED_NUM] = {{.r = _r, .g = _g, .b = _b}, {.r = _r, .g = _g, .b = _b}};
ws2812_setleds(leds, RGBLED_NUM);
}
diff --git a/keyboards/xiudi/xd002/keymaps/rgb_lite/rgblite.h b/keyboards/xiudi/xd002/keymaps/rgb_lite/rgblite.h
index b7919f9767..15ee0c0f6b 100644
--- a/keyboards/xiudi/xd002/keymaps/rgb_lite/rgblite.h
+++ b/keyboards/xiudi/xd002/keymaps/rgb_lite/rgblite.h
@@ -4,7 +4,7 @@
#include "color.h"
static inline void rgblite_setrgb(uint8_t _r, uint8_t _g, uint8_t _b) {
- LED_TYPE leds[RGBLED_NUM] = {{.r = _r, .g = _g, .b = _b}, {.r = _r, .g = _g, .b = _b}};
+ rgb_led_t leds[RGBLED_NUM] = {{.r = _r, .g = _g, .b = _b}, {.r = _r, .g = _g, .b = _b}};
ws2812_setleds(leds, RGBLED_NUM);
}
diff --git a/keyboards/xiudi/xd004/keymaps/narze/keymap.c b/keyboards/xiudi/xd004/keymaps/narze/keymap.c
deleted file mode 100644
index 9aa47081b4..0000000000
--- a/keyboards/xiudi/xd004/keymaps/narze/keymap.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2021 narze
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
- // 0: Base Layer
- LAYOUT_ortho_1x4(HYPR(KC_F2), HYPR(KC_F1), LCTL(KC_B), LCTL(KC_X)),
-
-};
diff --git a/keyboards/xiudi/xd004/keymaps/narze/readme.md b/keyboards/xiudi/xd004/keymaps/narze/readme.md
deleted file mode 100644
index 6f4bca9a90..0000000000
--- a/keyboards/xiudi/xd004/keymaps/narze/readme.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# narze Keymap for XD004 PCB
-
-(Key 1 is on the opposite of USB port side, so I flip the keys to make usb port be on the left)
-
-- Key 1 : Hyper + F2
-- Key 2 : Hyper + F1
-- Key 3 : Ctrl + B (Microphone : Toggle mute)
-- Key 4 : Ctrl + X (Microphone : Push to talk)
-
-## Build & Flash
-
-- Put this board in DFU : bridge the last two pins (#5 & 6) of the 6-pin "J2" header on the opposite edge of the board to the USB port.
-- `make xd004/v1:narze:flash` or `qmk flash -kb xd004/v1 -km narze`
diff --git a/keyboards/xiudi/xd75/keymaps/billypython/config.h b/keyboards/xiudi/xd75/keymaps/billypython/config.h
deleted file mode 100644
index 36e6b67851..0000000000
--- a/keyboards/xiudi/xd75/keymaps/billypython/config.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-
-#define FORCE_NKRO
-
-#define MOUSEKEY_DELAY 50
-#define MOUSEKEY_INTERVAL 15
-#define MOUSEKEY_MAX_SPEED 4
-#define MOUSEKEY_TIME_TO_MAX 50
-#define MOUSEKEY_WHEEL_MAX_SPEED 1
-#define MOUSEKEY_WHEEL_TIME_TO_MAX 50
-
-#define PERMISSIVE_HOLD
-#define TAPPING_TERM 200
-#define TAPPING_TOGGLE 2
diff --git a/keyboards/xiudi/xd75/keymaps/billypython/keymap.c b/keyboards/xiudi/xd75/keymaps/billypython/keymap.c
deleted file mode 100644
index d8301194f8..0000000000
--- a/keyboards/xiudi/xd75/keymaps/billypython/keymap.c
+++ /dev/null
@@ -1,119 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define TOP LCTL(KC_HOME)
-#define BOTTOM LCTL(KC_END)
-
-#define FN MO(L_FN)
-#define FN_CAPS LT(L_FN, KC_CAPS)
-#define FN_FNLK TT(L_FN)
-
-#define COMMA UC(0x002C)
-#define L_PAREN UC(0x0028)
-#define R_PAREN UC(0x0029)
-#define EQUALS UC(0x003D)
-#define TIMES UC(0x00D7)
-#define DIVIDE UC(0x00F7)
-#define MINUS UC(0x2212)
-
-void eeconfig_init_user(void) {
- set_unicode_input_mode(UNICODE_MODE_LINUX);
-}
-
-enum layers {
- L_BASE,
- L_FN,
- L_NUMPAD,
-};
-
-enum custom_keycodes {
- CLEAR = SAFE_RANGE,
- NUMPAD,
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case CLEAR:
- if (record->event.pressed) {
- SEND_STRING(SS_LCTL("a") SS_TAP(X_DELETE));
- }
- return false;
-
- case NUMPAD:
- if (record->event.pressed) {
- layer_invert(L_NUMPAD);
- bool num_lock = host_keyboard_led_state().num_lock;
- if (num_lock != (bool)IS_LAYER_ON(L_NUMPAD)) {
- tap_code(KC_NUM_LOCK); // Toggle Num Lock to match layer state.
- }
- }
- return false;
-
- default:
- return true;
- }
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │Tab│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bsp│Del│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │FnC│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │Ent│Ent│PgU│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │LSf│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RSf│RSf│ ↑ │PgD│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │LCt│LGu│LAl│Spc│Spc│Spc│Spc│Spc│Spc│RAl│FnL│RCt│ ← │ ↓ │ → │
- * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
- */
- [L_BASE] = LAYOUT_ortho_5x15(
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_DEL,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT, KC_PGUP,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, KC_PGDN,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, FN_FNLK, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
- ),
-
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Num│Scr│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │M4 │M2 │M↑ │M1 │M3 │M5 │ │PgU│ ↑ │PgD│Ply│Prv│Nxt│Clr│Ins│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │M← │M↓ │M→ │MW↑│ │Hom│ ← │ ↓ │ → │End│ │ │ │Top│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │MA0│MA2│MW←│MW→│ │ │ │VoD│VoU│Mut│ │ │PgU│Btm│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │MW↓│MW↓│MW↓│ │ │ │ │ │App│Hom│PgD│End│
- * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
- */
- [L_FN] = LAYOUT_ortho_5x15(
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, NUMPAD, KC_PSCR,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, KC_PGUP, KC_UP, KC_PGDN, KC_MPLY, KC_MPRV, KC_MNXT, CLEAR, KC_INS,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, _______, _______, _______, TOP,
- _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PGUP, BOTTOM,
- _______, _______, _______, KC_WH_D, KC_WH_D, KC_WH_D, _______, _______, _______, _______, _______, KC_APP, KC_HOME, KC_PGDN, KC_END
- ),
-
- /* Numpad layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Num│ │ │ │ │ │ │P7 │P8 │P9 │P- │ − │ = │Num│ │
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │ │ │ │ │P4 │P5 │P6 │P+ │ ( │ ) │ │ │
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │ │ │ │ │P1 │P2 │P3 │P* │ × │PEn│PEn│ │
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │ │ │ │ │P0 │ , │P. │P/ │ ÷ │ │ │ │
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
- * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
- */
- [L_NUMPAD] = LAYOUT_ortho_5x15(
- NUMPAD, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PMNS, MINUS, EQUALS, NUMPAD, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, L_PAREN, R_PAREN, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PAST, TIMES, KC_PENT, KC_PENT, _______,
- _______, _______, _______, _______, _______, _______, _______, KC_P0, COMMA, KC_PDOT, KC_PSLS, DIVIDE, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
-};
diff --git a/keyboards/xiudi/xd75/keymaps/billypython/rules.mk b/keyboards/xiudi/xd75/keymaps/billypython/rules.mk
deleted file mode 100644
index a4fd56ac18..0000000000
--- a/keyboards/xiudi/xd75/keymaps/billypython/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-AUDIO_ENABLE = no
-BACKLIGHT_ENABLE = no
-BLUETOOTH_ENABLE = no
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MIDI_ENABLE = no
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-RGBLIGHT_ENABLE = no
-SLEEP_LED_ENABLE = no
-TAP_DANCE_ENABLE = no
-UNICODE_ENABLE = yes
-VISUALIZER_ENABLE = no
diff --git a/keyboards/xiudi/xd75/keymaps/ericgebhart/config.h b/keyboards/xiudi/xd75/keymaps/ericgebhart/config.h
deleted file mode 100644
index 68baabaf92..0000000000
--- a/keyboards/xiudi/xd75/keymaps/ericgebhart/config.h
+++ /dev/null
@@ -1,21 +0,0 @@
-#pragma once
-
-#undef RGBLED_NUM
-#define RGBLED_NUM 6
-#define RGBLIGHT_LAYERS
-
-#undef RGBLIGHT_EFFECT_BREATHING
-#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
-#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL
-#undef RGBLIGHT_EFFECT_SNAKE
-#undef RGBLIGHT_EFFECT_KNIGHT
-#undef RGBLIGHT_EFFECT_CHRISTMAS
-#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
-#undef RGBLIGHT_EFFECT_RGB_TEST
-#undef RGBLIGHT_EFFECT_ALTERNATING
-#undef RGBLIGHT_EFFECT_TWINKLE
-//#define RGBLIGHT_HUE_STEP 8
-//#define RGBLIGHT_SAT_STEP 8
-
-
-// place overrides here
diff --git a/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c b/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c
deleted file mode 100644
index c534fe3c6d..0000000000
--- a/keyboards/xiudi/xd75/keymaps/ericgebhart/keymap.c
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- Copyright 2018-2022 Eric Gebhart <e.a.gebhart@gmail.com>
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-// See: users/ericgebhart.
diff --git a/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk b/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk
deleted file mode 100644
index f171387f29..0000000000
--- a/keyboards/xiudi/xd75/keymaps/ericgebhart/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-RGBLIGHT_ENABLE = yes
-RGBLIGHT_ANIMATION = no
-# BACKLIGHT_ENABLE = yes
diff --git a/keyboards/xiudi/xd75/keymaps/jarred/keymap.c b/keyboards/xiudi/xd75/keymaps/jarred/keymap.c
deleted file mode 100644
index ff45939ba9..0000000000
--- a/keyboards/xiudi/xd75/keymaps/jarred/keymap.c
+++ /dev/null
@@ -1,37 +0,0 @@
-#include QMK_KEYBOARD_H
-
-#define _QW 0
-#define _LW 1
-#define _NV 2
-#define _NM 3
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QW] = LAYOUT_ortho_5x15(
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_MUTE, KC_VOLD, KC_VOLU, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_BSPC,
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_INS , KC_HOME, KC_PGUP, KC_Y , KC_U , KC_I , KC_O , KC_P , KC_BSPC,
- MO(_NV), KC_A , KC_S , KC_D , KC_F , KC_G , KC_DEL , KC_END , KC_PGDN, KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , _______, KC_UP , _______, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT,
- KC_LCTL, KC_LGUI, MO(_NM), KC_LALT, MO(_LW), KC_SPC , KC_LEFT, KC_DOWN, KC_RGHT, KC_ENT , MO(_LW), KC_RALT, KC_RGUI, KC_APP , KC_RCTL
- ),
- [_LW] = LAYOUT_ortho_5x15(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , _______, _______, _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______,
- _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , _______, _______, _______, KC_F11 , KC_MINS, KC_EQL , KC_LBRC, KC_RBRC, KC_BSLS,
- _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , _______, _______, _______, KC_F12 , KC_GRV , _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_NV] = LAYOUT_ortho_5x15(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, KC_DEL , KC_BSPC, _______, _______, _______, _______, KC_HOME, KC_UP , KC_END , KC_INS , _______,
- _______, _______, _______, KC_LSFT, KC_LCTL, KC_ENT , _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL , _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- ),
- [_NM] = LAYOUT_ortho_5x15(
- _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______,
- QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
- )
-};
diff --git a/keyboards/xiudi/xd75/keymaps/jarred/readme.md b/keyboards/xiudi/xd75/keymaps/jarred/readme.md
deleted file mode 100644
index 4070bb3eed..0000000000
--- a/keyboards/xiudi/xd75/keymaps/jarred/readme.md
+++ /dev/null
@@ -1 +0,0 @@
-# Jarreds xd75 keymap
diff --git a/keyboards/xiudi/xd75/keymaps/odyssey/keymap.c b/keyboards/xiudi/xd75/keymaps/odyssey/keymap.c
index 4fe70b9cca..61eb4a2dcf 100644
--- a/keyboards/xiudi/xd75/keymaps/odyssey/keymap.c
+++ b/keyboards/xiudi/xd75/keymaps/odyssey/keymap.c
@@ -49,7 +49,7 @@ int speed = 300;
void set_colors(int r, int g, int b) {
for(int i = 0; i<6; i++) {
- sethsv(r, g, b, (LED_TYPE *)&led[i]);
+ sethsv(r, g, b, (rgb_led_t *)&led[i]);
}
rgblight_set();
}
@@ -213,7 +213,7 @@ void matrix_scan_user(void) {
if (rc == 0) {
rc = speed;
for(int i = 0; i<6; i++) {
- sethsv(42*((t+i)%6), 255, 255, (LED_TYPE *)&led[i]);
+ sethsv(42*((t+i)%6), 255, 255, (rgb_led_t *)&led[i]);
}
rgblight_set();
t++; t = t % 6;
@@ -224,9 +224,9 @@ void matrix_scan_user(void) {
col = (col + 1) % 36;
for (int i = 0; i<6; i++) {
if (i==t)
- sethsv(42*(((col-1)/6)%6), 255, 255, (LED_TYPE *)&led[(right ? t : 5-t)]);
+ sethsv(42*(((col-1)/6)%6), 255, 255, (rgb_led_t *)&led[(right ? t : 5-t)]);
else
- sethsv(0, 0, 0, (LED_TYPE *)&led[right ? i : 5-i]);
+ sethsv(0, 0, 0, (rgb_led_t *)&led[right ? i : 5-i]);
}
rgblight_set();
t++; t = t % 6;
diff --git a/keyboards/xiudi/xd75/keymaps/raoeus/keymap.c b/keyboards/xiudi/xd75/keymaps/raoeus/keymap.c
index 22578350c1..8c57995f2f 100644
--- a/keyboards/xiudi/xd75/keymaps/raoeus/keymap.c
+++ b/keyboards/xiudi/xd75/keymaps/raoeus/keymap.c
@@ -16,7 +16,6 @@
*/
#include QMK_KEYBOARD_H
-#include "keymap_steno.h"
void matrix_init_user(void) {
steno_set_mode(STENO_MODE_GEMINI);
diff --git a/keyboards/xiudi/xd75/keymaps/scheiklp/config.h b/keyboards/xiudi/xd75/keymaps/scheiklp/config.h
deleted file mode 100644
index b20cb2f4f3..0000000000
--- a/keyboards/xiudi/xd75/keymaps/scheiklp/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-// place overrides here
-#define AUTO_SHIFT_TIMEOUT 175
-#define NO_AUTO_SHIFT_SPECIAL
-
-// Mouse control
-// constant mode (velocity)
-#define MK_3_SPEED
-// KC_ACL0 < KC_ACL1 < unmodified < KC_ACL2
-// Cursor offset per movement (unmodified)
-#define MK_C_OFFSET_UNMOD 16
-// Time between cursor movements (unmodified)
-#define MK_C_INTERVAL_UNMOD 16
-// Cursor offset per movement (KC_ACL0)
-#define MK_C_OFFSET_0 1
-// Time between cursor movements (KC_ACL0)
-#define MK_C_INTERVAL_0 32
-// Cursor offset per movement (KC_ACL1)
-#define MK_C_OFFSET_1 4
-// Time between cursor movements (KC_ACL1)
-#define MK_C_INTERVAL_1 16
-// Cursor offset per movement (KC_ACL2)
-#define MK_C_OFFSET_2 32
-// Time between cursor movements (KC_ACL2)
-#define MK_C_INTERVAL_2 16
diff --git a/keyboards/xiudi/xd75/keymaps/scheiklp/keymap.c b/keyboards/xiudi/xd75/keymaps/scheiklp/keymap.c
deleted file mode 100644
index 241d07275e..0000000000
--- a/keyboards/xiudi/xd75/keymaps/scheiklp/keymap.c
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#include QMK_KEYBOARD_H
-#include "koy_keys_on_quertz_de_latin1.h"
-
-// Layer shorthand
-#define _1 0
-#define _3 1
-#define _4 2
-#define _7 3
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
-/* Layer 1
- * .---------------------------------------------------------------------------------------------------------------------------------------------------.
- * | ESC | 1 | 2 | 3 | 4 | 5 | Record 1 | Play 1 | 6 | 7 | 8 | 9 | 0 | DEL | BACKSP |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | TAB | K | . | O | , | Y | Record 2 | Play 2P | V | G | C | L | ẞ | Z | |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | Layer 3 | H | A | E | I | U | Undo | Stop Rec. | D | T | R | N | S | F | Layer 3 |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LSHIFT | X | Q | Ä | Ü | Ö | Copy | Cut | B | P | W | M | J | RSHIFT | RSHIFT |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LCTRL | Layer 4 | | LGUI | LALT | SPACE | Paste | SPACE | SPACE | Layer 4 | RCTRL | | | KEYLOCK | Layer 7 |
- * '---------------------------------------------------------------------------------------------------------------------------------------------------'
- */
-
- [_1] = LAYOUT_ortho_5x15( /* KOY */
- KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, DM_REC1, DM_PLY1, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_BSPC,
- KC_TAB, KC_K, KC_DOT, KC_O, KC_COMM, N_Y, DM_REC2, DM_PLY2, KC_V, KC_G, KC_C, KC_L, N_SS, N_Z, KC_TRNS,
- MO(_3), KC_H, KC_A, KC_E, KC_I, KC_U, N_UNDO, DM_RSTP, KC_D, KC_T, KC_R, KC_N, KC_S, KC_F, MO(_3),
- KC_LSFT, KC_X, KC_Q, N_AE, N_UE, N_OE, N_COPY, N_CUT, KC_B, KC_P, KC_W, KC_M, KC_J, KC_RSFT, KC_RSFT,
- KC_LCTL, MO(_4), KC_TRNS, KC_LGUI, KC_LALT, KC_SPC, N_PASTE, KC_SPC, KC_SPC, MO(_4), KC_RCTL, KC_TRNS, KC_TRNS,QK_LOCK, MO(_7)
- ),
-
-/* Layer 3
- * .---------------------------------------------------------------------------------------------------------------------------------------------------.
- * | ESC | F1 | F2 | F3 | F4 | F5 | | | F6 | F7 | F8 | F9 | F0 | DEL | BACKSP |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | TAB | … | _ | [ | ] | ^ | | | ! | < | > | = | & | | |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | Layer 5 | \ | / | { | } | * | | | ? | ( | ) | - | : | @ | Layer 5 |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LSHIFT | # | $ | | | ~ | ` | | | + | % | " | ' | ; | RSHIFT | RSHIFT |
- * |---------+---------+--------+--------+--------+--------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LCTRL | | | | LALT | | | | | | | | | | |
- * '---------------------------------------------------------------------------------------------------------------------------------------------------'
- */
- [_3] = LAYOUT_ortho_5x15( /* Layer 3 */
- KC_ESC, KC_F1, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
- KC_TAB, N_DOTS, N_USC, N_LSQBR, N_RSQBR, N_CIRC, KC_TRNS, KC_TRNS, N_EXKL, N_LT, N_GT, N_EQ, N_AMP, KC_TRNS, KC_TRNS,
- KC_TRNS, N_BSLS, N_SLSH, N_LCUBR, N_RCUBR, N_ASTR, KC_TRNS, KC_TRNS, N_QUES, N_LPARN, N_RPARN, N_MINS, N_COLN, N_AT, KC_TRNS,
- KC_LSFT, N_HASH, N_DLR, N_PIPE, N_TILD, N_GRAVE, KC_TRNS, KC_TRNS, N_PLUS, N_PERC, N_QUOT, N_SING, N_SEMI, KC_RSFT, KC_RSFT,
- KC_LCTL, KC_TRNS, KC_TRNS, KC_LALT, KC_TRNS, KC_SPC, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-/* Layer 4
- * .------------------------------------------------------------------------------------------------------------------------------------------------------.
- * | ESC | | | | | | | | | | | | | | |
- * |---------+---------+--------+--------+--------+-----------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | TAB | Page up | BACKSP | Up | DEL | Page down | | | / | 7 | 8 | 9 | − | | |
- * |---------+---------+--------+--------+--------+-----------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | | Home | Left | Down | Right | End | | | * | 4 | 5 | 6 | . | | |
- * |---------+---------+--------+--------+--------+-----------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LSHIFT | ESC | TAB | Insert | Enter | Undo | | | Enter | 1 | 2 | 3 | ; | RSHIFT | RSHIFT |
- * |---------+---------+--------+--------+--------+-----------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LCTRL | | | LALT | | 0 | | 0 | 0 | | | | | | |
- * '------------------------------------------------------------------------------------------------------------------------------------------------------'
- */
- [_4] = LAYOUT_ortho_5x15( /* Layer 4 */
- KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TAB, KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_PGDN, KC_TRNS, KC_TRNS, KC_KP_SLASH, KC_7, KC_8, KC_9, KC_KP_MINUS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_TRNS, KC_TRNS, KC_KP_ASTERISK, KC_4, KC_5, KC_6, KC_KP_PLUS, KC_TRNS, KC_TRNS,
- KC_LSFT, KC_ESC, KC_TAB, KC_INS, KC_ENTER, N_UNDO, KC_TRNS, KC_TRNS, KC_KP_ENTER, KC_1, KC_2, KC_3, KC_KP_DOT, KC_RSFT, KC_RSFT,
- KC_LCTL, KC_TRNS, KC_TRNS, KC_LALT, KC_TRNS, KC_0, KC_TRNS, KC_0, KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
-/* Layer 7
- * .--------------------------------------------------------------------------------------------------------------------------------------------------------------.
- * | ESC | | | Button 3 | | | | | | | | | | | QK_BOOT |
- * |---------+----------+----------+----------+----------+------------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | TAB | Wheel up | Button 2 | Up | Button 1 | Wheel down | | | | | | | | | |
- * |---------+----------+----------+----------+----------+------------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | | Veloc 0 | Left | Down | Right | | | | | | | | | | |
- * |---------+----------+----------+----------+----------+------------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LSHIFT | Veloc 1 | | | | | | | | | | | | | |
- * |---------+----------+----------+----------+----------+------------+-----------+-----------+--------+---------+--------+--------+--------+-----------+---------|
- * | LCTRL | Veloc 2 | | LALT | | | | | | | | | | | |
- * '--------------------------------------------------------------------------------------------------------------------------------------------------------------'
- */
- [_7] = LAYOUT_ortho_5x15( /* Layer 7 */
- KC_ESC, KC_TRNS, KC_TRNS, KC_MS_BTN3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
- KC_TAB, KC_MS_WH_UP, KC_MS_BTN2, KC_MS_UP, KC_MS_BTN1, KC_MS_WH_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_MS_ACCEL0, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LSFT, KC_MS_ACCEL1, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_LCTL, KC_MS_ACCEL2, KC_TRNS, KC_LALT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- )
-
-};
-
diff --git a/keyboards/xiudi/xd75/keymaps/scheiklp/readme.md b/keyboards/xiudi/xd75/keymaps/scheiklp/readme.md
deleted file mode 100644
index c8c2dc9a2c..0000000000
--- a/keyboards/xiudi/xd75/keymaps/scheiklp/readme.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# KOY Layout for the xd75 pcb board
-Compile the layout
-```bash
-qmk compile -kb xiudi/xd75 -km scheiklp
-```
-and flash it to the board
-```bash
-qmk flash -kb xiudi/xd75 -km scheiklp
-```
diff --git a/keyboards/xiudi/xd75/keymaps/scheiklp/rules.mk b/keyboards/xiudi/xd75/keymaps/scheiklp/rules.mk
deleted file mode 100644
index 0b00a6654d..0000000000
--- a/keyboards/xiudi/xd75/keymaps/scheiklp/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 2021 Paul Maria Scheikl (@ScheiklP)
-# SPDX-License-Identifier: GPL-2.0-or-later
-
-BOOTMAGIC_ENABLE = no
-COMMAND_ENABLE = no
-RGBLIGHT_ENABLE = no
-DYNAMIC_MACRO_ENABLE = yes
-AUTO_SHIFT_ENABLE = yes
-KEY_LOCK_ENABLE = yes
diff --git a/keyboards/xiudi/xd75/keymaps/zigotica/config.h b/keyboards/xiudi/xd75/keymaps/zigotica/config.h
deleted file mode 100644
index 23e276cf6e..0000000000
--- a/keyboards/xiudi/xd75/keymaps/zigotica/config.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2023 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-// these should work better for homerow modifiers
-#define TAPPING_TERM 350
-#define PERMISSIVE_HOLD
-#define QUICK_TAP_TERM 0
-
-// needed to get same layers as split keyboards
-// see users/zigotica/zigotica.h
-#define ORTHOLINEAR_KEYBOARD
-
diff --git a/keyboards/xiudi/xd75/keymaps/zigotica/keymap.c b/keyboards/xiudi/xd75/keymaps/zigotica/keymap.c
deleted file mode 100644
index 4133b57e72..0000000000
--- a/keyboards/xiudi/xd75/keymaps/zigotica/keymap.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Copyright 2023 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_wrapper(
- KC_ESC, ____NUM15, _BLANK_3, ____NUM60, KC_DEL,
- KC_TAB, _STENAI_L1, _BLANK_3, _STENAI_R1, _______,
- KC_EQL, _STENAI_L2, _BLANK_3, _STENAI_R2, KC_ENT,
- KC_LSFT, _STENAI_L3, ____TARRS, _STENAI_R3, KC_RSFT,
- ____LORTH, _STENAI_LT, ____BARRS, _STENAI_RT, ____RORTH
- ),
-
- [_NUM] = LAYOUT_wrapper(
- QK_MAKE, _BLANK_ROW, _BLANK_3, _BLANK_ROW, _______,
- _______, ____NUM_L1, _BLANK_3, ____NUM_R1, _______,
- _______, ____NUM_L2, _BLANK_3, ____NUM_R2, _______,
- _______, ____NUM_L3, _BLANK_3, ____NUM_R3, _______,
- _BLANK_4, ____NUM_LT, _BLANK_3, ____NUM_RT, _BLANK_4
- ),
-
- [_NAV] = LAYOUT_wrapper(
- QK_MAKE, _BLANK_ROW, _BLANK_3, _BLANK_ROW, _______,
- _______, ____NAV_L1, _BLANK_3, ____NAV_R1, _______,
- _______, ____NAV_L2, _BLANK_3, ____NAV_R2, _______,
- _______, ____NAV_L3, _BLANK_3, ____NAV_R3, _______,
- _BLANK_4, ____NAV_LT, _BLANK_3, ____NAV_RT, _BLANK_4
- ),
-
- [_SYM] = LAYOUT_wrapper(
- QK_MAKE, _BLANK_ROW, _BLANK_3, _BLANK_ROW, _______,
- _______, ____SYM_L1, _BLANK_3, ____SYM_R1, _______,
- _______, ____SYM_L2, _BLANK_3, ____SYM_R2, _______,
- _______, ____SYM_L3, _BLANK_3, ____SYM_R3, _______,
- _BLANK_4, ____SYM_LT, _BLANK_3, ____SYM_RT, _BLANK_4
- ),
-
- [_FN] = LAYOUT_wrapper(
- QK_MAKE, ____FN_15, _BLANK_3, ____FN_60, _______,
- _______, ____FN_L1, _BLANK_3, ____FN_R1, _______,
- _______, ____FN_L2, _BLANK_3, ____FN_R2, _______,
- _______, ____FN_L3, _BLANK_3, ____FN_R3, _______,
- _BLANK_4, ____FN_LT, _BLANK_3, ____FN_RT, _BLANK_4
- ),
-};
-
-
diff --git a/keyboards/xiudi/xd75/keymaps/zigotica/rules.mk b/keyboards/xiudi/xd75/keymaps/zigotica/rules.mk
deleted file mode 100644
index c41232e8f9..0000000000
--- a/keyboards/xiudi/xd75/keymaps/zigotica/rules.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-OLED_SUPPORTED = no
-ENCODER_SUPPORTED = no
-
-MOUSEKEY_ENABLE = yes
-COMBO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/xiudi/xd84/rules.mk b/keyboards/xiudi/xd84/rules.mk
index c6c7f4ef93..89d05c5487 100644
--- a/keyboards/xiudi/xd84/rules.mk
+++ b/keyboards/xiudi/xd84/rules.mk
@@ -17,4 +17,4 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += pca9555.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/xiudi/xd96/rules.mk b/keyboards/xiudi/xd96/rules.mk
index c6c7f4ef93..89d05c5487 100644
--- a/keyboards/xiudi/xd96/rules.mk
+++ b/keyboards/xiudi/xd96/rules.mk
@@ -17,4 +17,4 @@ CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += pca9555.c matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/yanghu/unicorne/keymaps/bcat/config.h b/keyboards/yanghu/unicorne/keymaps/bcat/config.h
deleted file mode 100644
index 6a27f2aa96..0000000000
--- a/keyboards/yanghu/unicorne/keymaps/bcat/config.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-#define BCAT_ORTHO_LAYERS
diff --git a/keyboards/yanghu/unicorne/keymaps/bcat/keymap.c b/keyboards/yanghu/unicorne/keymaps/bcat/keymap.c
deleted file mode 100644
index 4cffd9c32e..0000000000
--- a/keyboards/yanghu/unicorne/keymaps/bcat/keymap.c
+++ /dev/null
@@ -1,83 +0,0 @@
-/* Copyright 2021 Jonathan Rascher
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include QMK_KEYBOARD_H
-
-#include "bcat.h"
-
-#if defined(OLED_ENABLE)
-# include "bcat_oled.h"
-#endif
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // clang-format off
- /* Default layer: http://www.keyboard-layout-editor.com/#/gists/b6d0b16a913e7d1faeafc9fc751c413f */
- [LAYER_DEFAULT] = LAYOUT(
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
- KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
- KC_MPLY, KC_LCTL, LY_LWR, KC_SPC, KC_ENT, LY_RSE, KC_RALT, KC_MUTE
- ),
- /* Lower layer: http://www.keyboard-layout-editor.com/#/gists/99dd65d3b857a272be7a1804b20bc266 */
- [LAYER_LOWER] = LAYOUT(
- MC_ALTT, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
- KY_CSPC, KY_ZMRST, KY_ZMOUT, KY_ZMIN, KC_WBAK, KC_WFWD, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_TILD,
- _______, KC_APP, KC_PSCR, KC_SCRL, KC_PAUS, KC_LGUI, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_GRV,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /* Raise layer: http://www.keyboard-layout-editor.com/#/gists/cf9e899867763dc45b65917ce4cf93ff */
- [LAYER_RAISE] = LAYOUT(
- KC_CAPS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_F11, KC_DEL,
- _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_F12, KC_INS,
- _______, _______, _______, _______, _______, _______, _______, _______
- ),
- /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/7eb0f1c437169f30cc18eac271ad2302 */
- [LAYER_ADJUST] = LAYOUT(
- _______, MU_TOGG, KC_MPLY, KC_VOLU, KC_MSTP, _______, EE_CLR, QK_BOOT, _______, _______, _______, _______,
- _______, MU_NEXT, KC_MPRV, KC_VOLD, KC_MNXT, _______, RGB_RMOD, RGB_VAD, RGB_VAI, RGB_MOD, RGB_SPI, _______,
- _______, _______, _______, KC_MUTE, _______, _______, RGB_HUI, RGB_SAD, RGB_SAI, RGB_HUD, RGB_SPD, _______,
- _______, _______, _______, _______, RGB_TOG, _______, _______, _______
- ),
- // clang-format on
-};
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- switch (index) {
- case 0:
- /* Left encoder (scrolling) */
- tap_code(clockwise ? KC_PGDN : KC_PGUP);
- return false;
- case 1:
- /* Right encoder (volume) */
- tap_code(clockwise ? KC_VOLU : KC_VOLD);
- return false;
- default:
- return true;
- }
-}
-
-#if defined(OLED_ENABLE)
-oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_270; }
-
-void oled_task_keymap(const oled_keyboard_state_t *keyboard_state) {
- render_oled_layers();
- oled_advance_page(/*clearPageRemainder=*/false);
- oled_advance_page(/*clearPageRemainder=*/false);
- render_oled_wpm(keyboard_state->wpm);
- render_oled_pet(/*col=*/0, /*line=*/6, keyboard_state);
-}
-#endif
diff --git a/keyboards/yanghu/unicorne/keymaps/bcat/readme.md b/keyboards/yanghu/unicorne/keymaps/bcat/readme.md
deleted file mode 100644
index 5c30911d5e..0000000000
--- a/keyboards/yanghu/unicorne/keymaps/bcat/readme.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# bcat's Unicorne layout
-
-This ergo layout follows my preferred [split 3x6 + 3 thumb
-keys](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/split_3x6_3/bcat)
-layout, adding bindings for the two rotary encoders on the bottom row. (The
-left encoder scrolls vertically and the right encoder adjusts volume.) Also,
-since the Unicorne keyboard has a speaker, I added bindings on the adjust layer
-to activate and configure music mode. Finally, an adorable unicorn prances on
-the OLED, running faster the quicker you type.
-
-## Default layer
-
-![Default layer layout](https://i.imgur.com/Max5R0T.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/b6d0b16a913e7d1faeafc9fc751c413f))
-
-## Lower layer
-
-![Lower layer layout](https://i.imgur.com/E8Cfowc.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/99dd65d3b857a272be7a1804b20bc266))
-
-## Raise layer
-
-![Raise layer layout](https://i.imgur.com/KomdMyB.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/cf9e899867763dc45b65917ce4cf93ff))
-
-## Adjust layer
-
-![Adjust layer layout](https://i.imgur.com/EtshZbn.png)
-
-([KLE](http://www.keyboard-layout-editor.com/#/gists/7eb0f1c437169f30cc18eac271ad2302))
diff --git a/keyboards/yanghu/unicorne/keymaps/bcat/rules.mk b/keyboards/yanghu/unicorne/keymaps/bcat/rules.mk
deleted file mode 100644
index e9a4fda1f7..0000000000
--- a/keyboards/yanghu/unicorne/keymaps/bcat/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BCAT_OLED_PET = isda
diff --git a/keyboards/yiancardesigns/barleycorn/rules.mk b/keyboards/yiancardesigns/barleycorn/rules.mk
index b56efe3ef9..3808b0d3f2 100644
--- a/keyboards/yiancardesigns/barleycorn/rules.mk
+++ b/keyboards/yiancardesigns/barleycorn/rules.mk
@@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = lite
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/yiancardesigns/gingham/rules.mk b/keyboards/yiancardesigns/gingham/rules.mk
index 2fce424de8..cd47b89aed 100644
--- a/keyboards/yiancardesigns/gingham/rules.mk
+++ b/keyboards/yiancardesigns/gingham/rules.mk
@@ -1,5 +1,5 @@
-SRC = matrix.c \
- i2c_master.c
+SRC = matrix.c
+I2C_DRIVER_REQUIRED = yes
# Build Options
# change yes to no to disable
diff --git a/keyboards/yiancardesigns/seigaiha/rules.mk b/keyboards/yiancardesigns/seigaiha/rules.mk
index b56efe3ef9..3808b0d3f2 100644
--- a/keyboards/yiancardesigns/seigaiha/rules.mk
+++ b/keyboards/yiancardesigns/seigaiha/rules.mk
@@ -14,4 +14,4 @@ AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = lite
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/ymdk/id75/info.json b/keyboards/ymdk/id75/info.json
index 692ef7e8b7..e30afaf717 100644
--- a/keyboards/ymdk/id75/info.json
+++ b/keyboards/ymdk/id75/info.json
@@ -3,7 +3,6 @@
"keyboard_name": "Idobao x YMDK ID75",
"maintainer": "qmk",
"bootloader": "uf2boot",
- "board": "STM32_F103_STM32DUINO",
"diode_direction": "ROW2COL",
"features": {
"bootmagic": true,
diff --git a/keyboards/ymdk/melody96/hotswap/info.json b/keyboards/ymdk/melody96/hotswap/info.json
new file mode 100644
index 0000000000..61112d88ab
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/info.json
@@ -0,0 +1,501 @@
+{
+ "keyboard_name": "Melody96 Hotswap",
+ "manufacturer": "YMDK",
+ "url": "",
+ "maintainer": "qmk",
+ "usb": {
+ "vid": "0x594D",
+ "pid": "0x4D97",
+ "device_version": "0.0.1"
+ },
+ "matrix_pins": {
+ "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"],
+ "rows": ["B7", "B3", "B2", "B1", "B0", "E6", "F0", "F1", "F4", "F5", "F6", "F7"]
+ },
+ "diode_direction": "ROW2COL",
+ "features": {
+ "audio": false,
+ "backlight": true,
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
+ "backlight": {
+ "pin": "B6",
+ "levels": 5
+ },
+ "rgblight": {
+ "led_count": 18,
+ "saturation_steps": 8,
+ "brightness_steps": 8,
+ "animations": {
+ "breathing": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true,
+ "snake": true,
+ "knight": true,
+ "christmas": true,
+ "static_gradient": true,
+ "rgb_test": true,
+ "alternating": true,
+ "twinkle": true
+ }
+ },
+ "ws2812": {
+ "pin": "E2"
+ },
+ "indicators": {
+ "caps_lock": "C7",
+ "num_lock": "C6",
+ "scroll_lock": "B5",
+ "on_state": 0
+ },
+ "bootmagic": {
+ "matrix": [5, 0]
+ },
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "community_layouts": ["96_ansi", "96_iso"],
+ "layouts": {
+ "LAYOUT_96_iso": {
+ "layout": [
+ {"matrix": [5, 0], "x": 0, "y": 0},
+ {"matrix": [5, 1], "x": 1, "y": 0},
+ {"matrix": [5, 2], "x": 2, "y": 0},
+ {"matrix": [5, 3], "x": 3, "y": 0},
+ {"matrix": [5, 4], "x": 4, "y": 0},
+ {"matrix": [5, 5], "x": 5, "y": 0},
+ {"matrix": [5, 6], "x": 6, "y": 0},
+ {"matrix": [5, 7], "x": 7, "y": 0},
+ {"matrix": [5, 8], "x": 8, "y": 0},
+ {"matrix": [11, 8], "x": 9, "y": 0},
+ {"matrix": [11, 7], "x": 10, "y": 0},
+ {"matrix": [11, 5], "x": 11, "y": 0},
+ {"matrix": [11, 4], "x": 12, "y": 0},
+ {"matrix": [11, 3], "x": 13, "y": 0},
+ {"matrix": [11, 6], "x": 14, "y": 0},
+ {"matrix": [11, 2], "x": 15, "y": 0},
+ {"matrix": [11, 1], "x": 16, "y": 0},
+ {"matrix": [11, 0], "x": 17, "y": 0},
+ {"matrix": [6, 3], "x": 18, "y": 0},
+
+ {"matrix": [4, 0], "x": 0, "y": 1},
+ {"matrix": [4, 1], "x": 1, "y": 1},
+ {"matrix": [4, 2], "x": 2, "y": 1},
+ {"matrix": [4, 3], "x": 3, "y": 1},
+ {"matrix": [4, 4], "x": 4, "y": 1},
+ {"matrix": [4, 5], "x": 5, "y": 1},
+ {"matrix": [4, 6], "x": 6, "y": 1},
+ {"matrix": [4, 7], "x": 7, "y": 1},
+ {"matrix": [4, 8], "x": 8, "y": 1},
+ {"matrix": [10, 8], "x": 9, "y": 1},
+ {"matrix": [10, 7], "x": 10, "y": 1},
+ {"matrix": [10, 5], "x": 11, "y": 1},
+ {"matrix": [10, 4], "x": 12, "y": 1},
+ {"matrix": [10, 6], "x": 13, "y": 1, "w": 2},
+ {"matrix": [10, 2], "x": 15, "y": 1},
+ {"matrix": [10, 1], "x": 16, "y": 1},
+ {"matrix": [10, 0], "x": 17, "y": 1},
+ {"matrix": [6, 4], "x": 18, "y": 1},
+
+ {"matrix": [3, 0], "x": 0, "y": 2, "w": 1.5},
+ {"matrix": [3, 1], "x": 1.5, "y": 2},
+ {"matrix": [3, 2], "x": 2.5, "y": 2},
+ {"matrix": [3, 3], "x": 3.5, "y": 2},
+ {"matrix": [3, 4], "x": 4.5, "y": 2},
+ {"matrix": [3, 5], "x": 5.5, "y": 2},
+ {"matrix": [3, 6], "x": 6.5, "y": 2},
+ {"matrix": [3, 7], "x": 7.5, "y": 2},
+ {"matrix": [3, 8], "x": 8.5, "y": 2},
+ {"matrix": [9, 8], "x": 9.5, "y": 2},
+ {"matrix": [9, 7], "x": 10.5, "y": 2},
+ {"matrix": [9, 5], "x": 11.5, "y": 2},
+ {"matrix": [9, 4], "x": 12.5, "y": 2},
+ {"matrix": [9, 6], "x": 15, "y": 2},
+ {"matrix": [9, 2], "x": 16, "y": 2},
+ {"matrix": [9, 1], "x": 17, "y": 2},
+ {"matrix": [8, 0], "x": 18, "y": 2, "h": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 3},
+ {"matrix": [2, 2], "x": 2.75, "y": 3},
+ {"matrix": [2, 3], "x": 3.75, "y": 3},
+ {"matrix": [2, 4], "x": 4.75, "y": 3},
+ {"matrix": [2, 5], "x": 5.75, "y": 3},
+ {"matrix": [2, 6], "x": 6.75, "y": 3},
+ {"matrix": [2, 7], "x": 7.75, "y": 3},
+ {"matrix": [2, 8], "x": 8.75, "y": 3},
+ {"matrix": [8, 8], "x": 9.75, "y": 3},
+ {"matrix": [8, 7], "x": 10.75, "y": 3},
+ {"matrix": [8, 5], "x": 11.75, "y": 3},
+ {"matrix": [8, 4], "x": 12.75, "y": 3},
+ {"matrix": [9, 3], "x": 13.75, "y": 2, "w": 1.25, "h": 2},
+ {"matrix": [8, 6], "x": 15, "y": 3},
+ {"matrix": [8, 2], "x": 16, "y": 3},
+ {"matrix": [8, 1], "x": 17, "y": 3},
+
+ {"matrix": [1, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [1, 1], "x": 1.25, "y": 4},
+ {"matrix": [1, 2], "x": 2.25, "y": 4},
+ {"matrix": [1, 3], "x": 3.25, "y": 4},
+ {"matrix": [1, 4], "x": 4.25, "y": 4},
+ {"matrix": [1, 5], "x": 5.25, "y": 4},
+ {"matrix": [1, 6], "x": 6.25, "y": 4},
+ {"matrix": [1, 7], "x": 7.25, "y": 4},
+ {"matrix": [1, 8], "x": 8.25, "y": 4},
+ {"matrix": [7, 8], "x": 9.25, "y": 4},
+ {"matrix": [7, 7], "x": 10.25, "y": 4},
+ {"matrix": [7, 5], "x": 11.25, "y": 4},
+ {"matrix": [7, 4], "x": 12.25, "y": 4, "w": 1.75},
+ {"matrix": [7, 3], "x": 14, "y": 4},
+ {"matrix": [7, 6], "x": 15, "y": 4},
+ {"matrix": [7, 2], "x": 16, "y": 4},
+ {"matrix": [7, 1], "x": 17, "y": 4},
+ {"matrix": [6, 0], "x": 18, "y": 4, "h": 2},
+
+ {"matrix": [0, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [0, 1], "x": 1.25, "y": 5, "w": 1.25},
+ {"matrix": [0, 2], "x": 2.5, "y": 5, "w": 1.25},
+ {"matrix": [0, 6], "x": 3.75, "y": 5, "w": 6.25},
+ {"matrix": [0, 8], "x": 10, "y": 5},
+ {"matrix": [0, 7], "x": 11, "y": 5},
+ {"matrix": [0, 5], "x": 12, "y": 5},
+ {"matrix": [0, 4], "x": 13, "y": 5},
+ {"matrix": [0, 3], "x": 14, "y": 5},
+ {"matrix": [6, 6], "x": 15, "y": 5},
+ {"matrix": [6, 2], "x": 16, "y": 5},
+ {"matrix": [6, 1], "x": 17, "y": 5}
+ ]
+ },
+ "LAYOUT_96_iso_rwkl": {
+ "layout": [
+ {"matrix": [5, 0], "x": 0, "y": 0},
+ {"matrix": [5, 1], "x": 1, "y": 0},
+ {"matrix": [5, 2], "x": 2, "y": 0},
+ {"matrix": [5, 3], "x": 3, "y": 0},
+ {"matrix": [5, 4], "x": 4, "y": 0},
+ {"matrix": [5, 5], "x": 5, "y": 0},
+ {"matrix": [5, 6], "x": 6, "y": 0},
+ {"matrix": [5, 7], "x": 7, "y": 0},
+ {"matrix": [5, 8], "x": 8, "y": 0},
+ {"matrix": [11, 8], "x": 9, "y": 0},
+ {"matrix": [11, 7], "x": 10, "y": 0},
+ {"matrix": [11, 5], "x": 11, "y": 0},
+ {"matrix": [11, 4], "x": 12, "y": 0},
+ {"matrix": [11, 3], "x": 13, "y": 0},
+ {"matrix": [11, 6], "x": 14, "y": 0},
+ {"matrix": [11, 2], "x": 15, "y": 0},
+ {"matrix": [11, 1], "x": 16, "y": 0},
+ {"matrix": [11, 0], "x": 17, "y": 0},
+ {"matrix": [6, 3], "x": 18, "y": 0},
+
+ {"matrix": [4, 0], "x": 0, "y": 1},
+ {"matrix": [4, 1], "x": 1, "y": 1},
+ {"matrix": [4, 2], "x": 2, "y": 1},
+ {"matrix": [4, 3], "x": 3, "y": 1},
+ {"matrix": [4, 4], "x": 4, "y": 1},
+ {"matrix": [4, 5], "x": 5, "y": 1},
+ {"matrix": [4, 6], "x": 6, "y": 1},
+ {"matrix": [4, 7], "x": 7, "y": 1},
+ {"matrix": [4, 8], "x": 8, "y": 1},
+ {"matrix": [10, 8], "x": 9, "y": 1},
+ {"matrix": [10, 7], "x": 10, "y": 1},
+ {"matrix": [10, 5], "x": 11, "y": 1},
+ {"matrix": [10, 4], "x": 12, "y": 1},
+ {"matrix": [10, 6], "x": 13, "y": 1, "w": 2},
+ {"matrix": [10, 2], "x": 15, "y": 1},
+ {"matrix": [10, 1], "x": 16, "y": 1},
+ {"matrix": [10, 0], "x": 17, "y": 1},
+ {"matrix": [6, 4], "x": 18, "y": 1},
+
+ {"matrix": [3, 0], "x": 0, "y": 2, "w": 1.5},
+ {"matrix": [3, 1], "x": 1.5, "y": 2},
+ {"matrix": [3, 2], "x": 2.5, "y": 2},
+ {"matrix": [3, 3], "x": 3.5, "y": 2},
+ {"matrix": [3, 4], "x": 4.5, "y": 2},
+ {"matrix": [3, 5], "x": 5.5, "y": 2},
+ {"matrix": [3, 6], "x": 6.5, "y": 2},
+ {"matrix": [3, 7], "x": 7.5, "y": 2},
+ {"matrix": [3, 8], "x": 8.5, "y": 2},
+ {"matrix": [9, 8], "x": 9.5, "y": 2},
+ {"matrix": [9, 7], "x": 10.5, "y": 2},
+ {"matrix": [9, 5], "x": 11.5, "y": 2},
+ {"matrix": [9, 4], "x": 12.5, "y": 2},
+ {"matrix": [9, 6], "x": 15, "y": 2},
+ {"matrix": [9, 2], "x": 16, "y": 2},
+ {"matrix": [9, 1], "x": 17, "y": 2},
+ {"matrix": [8, 0], "x": 18, "y": 2, "h": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 3},
+ {"matrix": [2, 2], "x": 2.75, "y": 3},
+ {"matrix": [2, 3], "x": 3.75, "y": 3},
+ {"matrix": [2, 4], "x": 4.75, "y": 3},
+ {"matrix": [2, 5], "x": 5.75, "y": 3},
+ {"matrix": [2, 6], "x": 6.75, "y": 3},
+ {"matrix": [2, 7], "x": 7.75, "y": 3},
+ {"matrix": [2, 8], "x": 8.75, "y": 3},
+ {"matrix": [8, 8], "x": 9.75, "y": 3},
+ {"matrix": [8, 7], "x": 10.75, "y": 3},
+ {"matrix": [8, 5], "x": 11.75, "y": 3},
+ {"matrix": [8, 4], "x": 12.75, "y": 3},
+ {"matrix": [9, 3], "x": 13.75, "y": 2, "w": 1.25, "h": 2},
+ {"matrix": [8, 6], "x": 15, "y": 3},
+ {"matrix": [8, 2], "x": 16, "y": 3},
+ {"matrix": [8, 1], "x": 17, "y": 3},
+
+ {"matrix": [1, 0], "x": 0, "y": 4, "w": 1.25},
+ {"matrix": [1, 1], "x": 1.25, "y": 4},
+ {"matrix": [1, 2], "x": 2.25, "y": 4},
+ {"matrix": [1, 3], "x": 3.25, "y": 4},
+ {"matrix": [1, 4], "x": 4.25, "y": 4},
+ {"matrix": [1, 5], "x": 5.25, "y": 4},
+ {"matrix": [1, 6], "x": 6.25, "y": 4},
+ {"matrix": [1, 7], "x": 7.25, "y": 4},
+ {"matrix": [1, 8], "x": 8.25, "y": 4},
+ {"matrix": [7, 8], "x": 9.25, "y": 4},
+ {"matrix": [7, 7], "x": 10.25, "y": 4},
+ {"matrix": [7, 5], "x": 11.25, "y": 4},
+ {"matrix": [7, 4], "x": 12.25, "y": 4, "w": 1.75},
+ {"matrix": [7, 3], "x": 14, "y": 4},
+ {"matrix": [7, 6], "x": 15, "y": 4},
+ {"matrix": [7, 2], "x": 16, "y": 4},
+ {"matrix": [7, 1], "x": 17, "y": 4},
+ {"matrix": [6, 0], "x": 18, "y": 4, "h": 2},
+
+ {"matrix": [0, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [0, 1], "x": 1.25, "y": 5, "w": 1.25},
+ {"matrix": [0, 2], "x": 2.5, "y": 5, "w": 1.25},
+ {"matrix": [0, 6], "x": 3.75, "y": 5, "w": 6.25},
+ {"matrix": [0, 8], "x": 10, "y": 5, "w": 1.5},
+ {"matrix": [0, 5], "x": 11.5, "y": 5, "w": 1.5},
+ {"matrix": [0, 4], "x": 13, "y": 5},
+ {"matrix": [0, 3], "x": 14, "y": 5},
+ {"matrix": [6, 6], "x": 15, "y": 5},
+ {"matrix": [6, 2], "x": 16, "y": 5},
+ {"matrix": [6, 1], "x": 17, "y": 5}
+ ]
+ },
+ "LAYOUT_96_ansi": {
+ "layout": [
+ {"matrix": [5, 0], "x": 0, "y": 0},
+ {"matrix": [5, 1], "x": 1, "y": 0},
+ {"matrix": [5, 2], "x": 2, "y": 0},
+ {"matrix": [5, 3], "x": 3, "y": 0},
+ {"matrix": [5, 4], "x": 4, "y": 0},
+ {"matrix": [5, 5], "x": 5, "y": 0},
+ {"matrix": [5, 6], "x": 6, "y": 0},
+ {"matrix": [5, 7], "x": 7, "y": 0},
+ {"matrix": [5, 8], "x": 8, "y": 0},
+ {"matrix": [11, 8], "x": 9, "y": 0},
+ {"matrix": [11, 7], "x": 10, "y": 0},
+ {"matrix": [11, 5], "x": 11, "y": 0},
+ {"matrix": [11, 4], "x": 12, "y": 0},
+ {"matrix": [11, 3], "x": 13, "y": 0},
+ {"matrix": [11, 6], "x": 14, "y": 0},
+ {"matrix": [11, 2], "x": 15, "y": 0},
+ {"matrix": [11, 1], "x": 16, "y": 0},
+ {"matrix": [11, 0], "x": 17, "y": 0},
+ {"matrix": [6, 3], "x": 18, "y": 0},
+
+ {"matrix": [4, 0], "x": 0, "y": 1},
+ {"matrix": [4, 1], "x": 1, "y": 1},
+ {"matrix": [4, 2], "x": 2, "y": 1},
+ {"matrix": [4, 3], "x": 3, "y": 1},
+ {"matrix": [4, 4], "x": 4, "y": 1},
+ {"matrix": [4, 5], "x": 5, "y": 1},
+ {"matrix": [4, 6], "x": 6, "y": 1},
+ {"matrix": [4, 7], "x": 7, "y": 1},
+ {"matrix": [4, 8], "x": 8, "y": 1},
+ {"matrix": [10, 8], "x": 9, "y": 1},
+ {"matrix": [10, 7], "x": 10, "y": 1},
+ {"matrix": [10, 5], "x": 11, "y": 1},
+ {"matrix": [10, 4], "x": 12, "y": 1},
+ {"matrix": [10, 6], "x": 13, "y": 1, "w": 2},
+ {"matrix": [10, 2], "x": 15, "y": 1},
+ {"matrix": [10, 1], "x": 16, "y": 1},
+ {"matrix": [10, 0], "x": 17, "y": 1},
+ {"matrix": [6, 4], "x": 18, "y": 1},
+
+ {"matrix": [3, 0], "x": 0, "y": 2, "w": 1.5},
+ {"matrix": [3, 1], "x": 1.5, "y": 2},
+ {"matrix": [3, 2], "x": 2.5, "y": 2},
+ {"matrix": [3, 3], "x": 3.5, "y": 2},
+ {"matrix": [3, 4], "x": 4.5, "y": 2},
+ {"matrix": [3, 5], "x": 5.5, "y": 2},
+ {"matrix": [3, 6], "x": 6.5, "y": 2},
+ {"matrix": [3, 7], "x": 7.5, "y": 2},
+ {"matrix": [3, 8], "x": 8.5, "y": 2},
+ {"matrix": [9, 8], "x": 9.5, "y": 2},
+ {"matrix": [9, 7], "x": 10.5, "y": 2},
+ {"matrix": [9, 5], "x": 11.5, "y": 2},
+ {"matrix": [9, 4], "x": 12.5, "y": 2},
+ {"matrix": [9, 3], "x": 13.5, "y": 2, "w": 1.5},
+ {"matrix": [9, 6], "x": 15, "y": 2},
+ {"matrix": [9, 2], "x": 16, "y": 2},
+ {"matrix": [9, 1], "x": 17, "y": 2},
+ {"matrix": [8, 0], "x": 18, "y": 2, "h": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 3},
+ {"matrix": [2, 2], "x": 2.75, "y": 3},
+ {"matrix": [2, 3], "x": 3.75, "y": 3},
+ {"matrix": [2, 4], "x": 4.75, "y": 3},
+ {"matrix": [2, 5], "x": 5.75, "y": 3},
+ {"matrix": [2, 6], "x": 6.75, "y": 3},
+ {"matrix": [2, 7], "x": 7.75, "y": 3},
+ {"matrix": [2, 8], "x": 8.75, "y": 3},
+ {"matrix": [8, 8], "x": 9.75, "y": 3},
+ {"matrix": [8, 7], "x": 10.75, "y": 3},
+ {"matrix": [8, 5], "x": 11.75, "y": 3},
+ {"matrix": [8, 4], "x": 12.75, "y": 3, "w": 2.25},
+ {"matrix": [8, 6], "x": 15, "y": 3},
+ {"matrix": [8, 2], "x": 16, "y": 3},
+ {"matrix": [8, 1], "x": 17, "y": 3},
+
+ {"matrix": [1, 0], "x": 0, "y": 4, "w": 2.25},
+ {"matrix": [1, 2], "x": 2.25, "y": 4},
+ {"matrix": [1, 3], "x": 3.25, "y": 4},
+ {"matrix": [1, 4], "x": 4.25, "y": 4},
+ {"matrix": [1, 5], "x": 5.25, "y": 4},
+ {"matrix": [1, 6], "x": 6.25, "y": 4},
+ {"matrix": [1, 7], "x": 7.25, "y": 4},
+ {"matrix": [1, 8], "x": 8.25, "y": 4},
+ {"matrix": [7, 8], "x": 9.25, "y": 4},
+ {"matrix": [7, 7], "x": 10.25, "y": 4},
+ {"matrix": [7, 5], "x": 11.25, "y": 4},
+ {"matrix": [7, 4], "x": 12.25, "y": 4, "w": 1.75},
+ {"matrix": [7, 3], "x": 14, "y": 4},
+ {"matrix": [7, 6], "x": 15, "y": 4},
+ {"matrix": [7, 2], "x": 16, "y": 4},
+ {"matrix": [7, 1], "x": 17, "y": 4},
+ {"matrix": [6, 0], "x": 18, "y": 4, "h": 2},
+
+ {"matrix": [0, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [0, 1], "x": 1.25, "y": 5, "w": 1.25},
+ {"matrix": [0, 2], "x": 2.5, "y": 5, "w": 1.25},
+ {"matrix": [0, 6], "x": 3.75, "y": 5, "w": 6.25},
+ {"matrix": [0, 8], "x": 10, "y": 5},
+ {"matrix": [0, 7], "x": 11, "y": 5},
+ {"matrix": [0, 5], "x": 12, "y": 5},
+ {"matrix": [0, 4], "x": 13, "y": 5},
+ {"matrix": [0, 3], "x": 14, "y": 5},
+ {"matrix": [6, 6], "x": 15, "y": 5},
+ {"matrix": [6, 2], "x": 16, "y": 5},
+ {"matrix": [6, 1], "x": 17, "y": 5}
+ ]
+ },
+ "LAYOUT_96_ansi_rwkl": {
+ "layout": [
+ {"matrix": [5, 0], "x": 0, "y": 0},
+ {"matrix": [5, 1], "x": 1, "y": 0},
+ {"matrix": [5, 2], "x": 2, "y": 0},
+ {"matrix": [5, 3], "x": 3, "y": 0},
+ {"matrix": [5, 4], "x": 4, "y": 0},
+ {"matrix": [5, 5], "x": 5, "y": 0},
+ {"matrix": [5, 6], "x": 6, "y": 0},
+ {"matrix": [5, 7], "x": 7, "y": 0},
+ {"matrix": [5, 8], "x": 8, "y": 0},
+ {"matrix": [11, 8], "x": 9, "y": 0},
+ {"matrix": [11, 7], "x": 10, "y": 0},
+ {"matrix": [11, 5], "x": 11, "y": 0},
+ {"matrix": [11, 4], "x": 12, "y": 0},
+ {"matrix": [11, 3], "x": 13, "y": 0},
+ {"matrix": [11, 6], "x": 14, "y": 0},
+ {"matrix": [11, 2], "x": 15, "y": 0},
+ {"matrix": [11, 1], "x": 16, "y": 0},
+ {"matrix": [11, 0], "x": 17, "y": 0},
+ {"matrix": [6, 3], "x": 18, "y": 0},
+
+ {"matrix": [4, 0], "x": 0, "y": 1},
+ {"matrix": [4, 1], "x": 1, "y": 1},
+ {"matrix": [4, 2], "x": 2, "y": 1},
+ {"matrix": [4, 3], "x": 3, "y": 1},
+ {"matrix": [4, 4], "x": 4, "y": 1},
+ {"matrix": [4, 5], "x": 5, "y": 1},
+ {"matrix": [4, 6], "x": 6, "y": 1},
+ {"matrix": [4, 7], "x": 7, "y": 1},
+ {"matrix": [4, 8], "x": 8, "y": 1},
+ {"matrix": [10, 8], "x": 9, "y": 1},
+ {"matrix": [10, 7], "x": 10, "y": 1},
+ {"matrix": [10, 5], "x": 11, "y": 1},
+ {"matrix": [10, 4], "x": 12, "y": 1},
+ {"matrix": [10, 6], "x": 13, "y": 1, "w": 2},
+ {"matrix": [10, 2], "x": 15, "y": 1},
+ {"matrix": [10, 1], "x": 16, "y": 1},
+ {"matrix": [10, 0], "x": 17, "y": 1},
+ {"matrix": [6, 4], "x": 18, "y": 1},
+
+ {"matrix": [3, 0], "x": 0, "y": 2, "w": 1.5},
+ {"matrix": [3, 1], "x": 1.5, "y": 2},
+ {"matrix": [3, 2], "x": 2.5, "y": 2},
+ {"matrix": [3, 3], "x": 3.5, "y": 2},
+ {"matrix": [3, 4], "x": 4.5, "y": 2},
+ {"matrix": [3, 5], "x": 5.5, "y": 2},
+ {"matrix": [3, 6], "x": 6.5, "y": 2},
+ {"matrix": [3, 7], "x": 7.5, "y": 2},
+ {"matrix": [3, 8], "x": 8.5, "y": 2},
+ {"matrix": [9, 8], "x": 9.5, "y": 2},
+ {"matrix": [9, 7], "x": 10.5, "y": 2},
+ {"matrix": [9, 5], "x": 11.5, "y": 2},
+ {"matrix": [9, 4], "x": 12.5, "y": 2},
+ {"matrix": [9, 3], "x": 13.5, "y": 2, "w": 1.5},
+ {"matrix": [9, 6], "x": 15, "y": 2},
+ {"matrix": [9, 2], "x": 16, "y": 2},
+ {"matrix": [9, 1], "x": 17, "y": 2},
+ {"matrix": [8, 0], "x": 18, "y": 2, "h": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.75},
+ {"matrix": [2, 1], "x": 1.75, "y": 3},
+ {"matrix": [2, 2], "x": 2.75, "y": 3},
+ {"matrix": [2, 3], "x": 3.75, "y": 3},
+ {"matrix": [2, 4], "x": 4.75, "y": 3},
+ {"matrix": [2, 5], "x": 5.75, "y": 3},
+ {"matrix": [2, 6], "x": 6.75, "y": 3},
+ {"matrix": [2, 7], "x": 7.75, "y": 3},
+ {"matrix": [2, 8], "x": 8.75, "y": 3},
+ {"matrix": [8, 8], "x": 9.75, "y": 3},
+ {"matrix": [8, 7], "x": 10.75, "y": 3},
+ {"matrix": [8, 5], "x": 11.75, "y": 3},
+ {"matrix": [8, 4], "x": 12.75, "y": 3, "w": 2.25},
+ {"matrix": [8, 6], "x": 15, "y": 3},
+ {"matrix": [8, 2], "x": 16, "y": 3},
+ {"matrix": [8, 1], "x": 17, "y": 3},
+
+ {"matrix": [1, 0], "x": 0, "y": 4, "w": 2.25},
+ {"matrix": [1, 2], "x": 2.25, "y": 4},
+ {"matrix": [1, 3], "x": 3.25, "y": 4},
+ {"matrix": [1, 4], "x": 4.25, "y": 4},
+ {"matrix": [1, 5], "x": 5.25, "y": 4},
+ {"matrix": [1, 6], "x": 6.25, "y": 4},
+ {"matrix": [1, 7], "x": 7.25, "y": 4},
+ {"matrix": [1, 8], "x": 8.25, "y": 4},
+ {"matrix": [7, 8], "x": 9.25, "y": 4},
+ {"matrix": [7, 7], "x": 10.25, "y": 4},
+ {"matrix": [7, 5], "x": 11.25, "y": 4},
+ {"matrix": [7, 4], "x": 12.25, "y": 4, "w": 1.75},
+ {"matrix": [7, 3], "x": 14, "y": 4},
+ {"matrix": [7, 6], "x": 15, "y": 4},
+ {"matrix": [7, 2], "x": 16, "y": 4},
+ {"matrix": [7, 1], "x": 17, "y": 4},
+ {"matrix": [6, 0], "x": 18, "y": 4, "h": 2},
+
+ {"matrix": [0, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [0, 1], "x": 1.25, "y": 5, "w": 1.25},
+ {"matrix": [0, 2], "x": 2.5, "y": 5, "w": 1.25},
+ {"matrix": [0, 6], "x": 3.75, "y": 5, "w": 6.25},
+ {"matrix": [0, 8], "x": 10, "y": 5, "w": 1.5},
+ {"matrix": [0, 5], "x": 11.5, "y": 5, "w": 1.5},
+ {"matrix": [0, 4], "x": 13, "y": 5},
+ {"matrix": [0, 3], "x": 14, "y": 5},
+ {"matrix": [6, 6], "x": 15, "y": 5},
+ {"matrix": [6, 2], "x": 16, "y": 5},
+ {"matrix": [6, 1], "x": 17, "y": 5}
+ ]
+ }
+ }
+}
diff --git a/keyboards/ymdk/melody96/hotswap/keymaps/default/keymap.c b/keyboards/ymdk/melody96/hotswap/keymaps/default/keymap.c
new file mode 100644
index 0000000000..90a18f965f
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/default/keymap.c
@@ -0,0 +1,23 @@
+// Copyright 2023 James Young for QMK (@noroadsleft)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT_96_iso(
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_DEL,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, KC_PPLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(1), KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT
+ ),
+ [1] = LAYOUT_96_iso(
+ QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______,
+ BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/ymdk/melody96/hotswap/keymaps/via/keymap.c b/keyboards/ymdk/melody96/hotswap/keymaps/via/keymap.c
new file mode 100644
index 0000000000..90a18f965f
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/via/keymap.c
@@ -0,0 +1,23 @@
+// Copyright 2023 James Young for QMK (@noroadsleft)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [0] = LAYOUT_96_iso(
+ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_DEL,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, KC_PPLS,
+ KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6,
+ KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(1), KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT
+ ),
+ [1] = LAYOUT_96_iso(
+ QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______,
+ BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, BL_DOWN, BL_TOGG, BL_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/via/rules.mk b/keyboards/ymdk/melody96/hotswap/keymaps/via/rules.mk
index 36b7ba9cbc..36b7ba9cbc 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/via/rules.mk
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/via/rules.mk
diff --git a/keyboards/ymdk/melody96/keymaps/zunger/config.h b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/config.h
index cc06440e0d..cc06440e0d 100644
--- a/keyboards/ymdk/melody96/keymaps/zunger/config.h
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/config.h
diff --git a/keyboards/ymdk/melody96/hotswap/keymaps/zunger/keymap.c b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/keymap.c
new file mode 100644
index 0000000000..c84f656080
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/keymap.c
@@ -0,0 +1,489 @@
+/* Copyright 2019 Yonatan Zunger
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+#include <assert.h>
+
+// This keymap is designed to make it easy to type in a wide variety of languages, as well as
+// generate mathematical symbols (à la Space Cadet).
+//
+// LAYER MAGIC (aka, typing in many alphabets)
+// This keyboard has three "base" layers: QWERTY, GREEK, and CADET. The GREEK and CADET layers
+// are actually full of Unicode points, and so which point they generate depends on things like
+// whether the shift key is down. To handle this, each of those layers is actually *two* layers, one
+// with and one without shift. In our main loop, we manage modifier state detection, as well as
+// layer switch detection, and pick the right layer on the fly.
+// Layers are selected with a combination of three keys. The "Greek" and "Cadet" keys act like
+// modifiers: When held down, they transiently select the indicated base layer. The "Layer Lock" key
+// locks the value of the base layer at whatever is currently held; so e.g., if you hold Greek +
+// Layer Lock, you'll stay in Greek mode until you hit Layer Lock again without any of the mods
+// held.
+// TODO: This system of layer selection is nice for math, but it's not very nice for actually
+// typing in multiple languages. It seems like a better plan will be to reserve one key for each
+// base layer -- maybe fn + F(n) -- which can either be held as a modifier or tapped to switch
+// layers. That will open up adding some more languages, like Yiddish, but to do this effectively
+// we'll need to find a good UI with which to show the currently selected layer. Need to check what
+// the melody96 has in the way of outputs (LEDs, sound, etc).
+//
+// ACCENT MAGIC (aka, typing conveniently in Romance languages)
+// We want to support easy typing of diacritical marks. We can't rely on the host OS for this,
+// because (e.g.) on MacOS, to make any of the other stuff work, we need to be using the Unicode
+// input method at the OS level, which breaks all the normal accent stuff on that end. So we do it
+// ourselves. Accents can actually be invoked in two different ways: one fast and very compatible,
+// one very versatile but with occasional compatibility problems.
+//
+// THE MAIN WAY: You can hit one of the "accent request" key patterns immediately *before* typing
+// a letter to be accented. It will emit the corresponding accented Unicode. For example, you can
+// hit fn-e to request an acute accent, followed by i, and it will output í, U+00ED LATIN SMALL
+// LETTER I WITH ACUTE. These "combined characters" are in Unicode normal form C (NFKC), which is
+// important because many European websites and apps, in particular, tend to behave very badly
+// (misunderstanding and/or crashing) when presented with characters in other forms! The catch is
+// that this only works for the various combinations of letters and accents found in the Latin-1
+// supplement block of Unicode -- basically, things you need for Western European languages.
+//
+// (NB: If you make an accent request followed by a letter which can't take the corresponding
+// accent, it will output the uncombined form of the accent followed by whatever you typed; so
+// e.g., if you hit fn-e followed by f, it will output ´f, U+00B4 ACUTE ACCENT followed by an
+// ordinary f. This is very similar to the default behavior of MacOS.)
+//
+// THE FLEXIBLE WAY: If you hit the accent request with a shift -- e.g., fn-shift-e -- it will
+// instead immediately output the corresponding *combining* Unicode accent mark, which will modify
+// the *previous* character you typed. For example, if you type i followed by fn-shift-e, it will
+// generate í. But don't be fooled by visual similarity: unlike the previous example, this one is
+// an ordinary i followed by U+0301 COMBINING ACUTE ACCENT. It's actually *two symbols*, and this
+// is Unicode normal form D (NFKD). Unlike NFKC, there are NFKD representations of far more
+// combinations of letters and accents, and it's easy to add more of these if you need. (The NFKC
+// representation of such combinations is identical to their NFKD representation)
+//
+// Programs that try to compare Unicode strings *should* first normalize them by converting them
+// all into one normal form or another, and there are functions in every programming language to
+// do this -- e.g., JavaScript's string.normalize() -- but lots of programmers fail to understand
+// this, and so write code that massively freaks out when it encounters the wrong form.
+//
+// The current accent request codes are modeled on the ones in MacOS.
+//
+// fn+` Grave accent (`)
+// fn+e Acute accent (´)
+// fn+i Circumflex (^)
+// fn+u Diaresis / umlaut / trema (¨)
+// fn+c Cedilla (¸)
+// fn+n Tilde (˜)
+//
+// Together, these functions make for a nice "polyglot" keyboard: one that can easily type in a wide
+// variety of languages, which is very useful for people who, well, need to type in a bunch of
+// languages.
+//
+// The major TODOs are:
+// - Update the layer selection logic (and add visible layer cues);
+// - Factor the code below so that the data layers are more clearly separated from the code logic,
+// so that other users of this keymap can easily add whichever alphabets they need without
+// having to deeply understand the implementation.
+
+
+enum custom_keycodes {
+ // We provide special layer management keys:
+ // GREEK triggers the Greek (aka "Front") layer, or the SHIFTGREEK layer when shift is held.
+ // (Because we use Unicode, we need to implement shift-handling at the firmware level,
+ // rather than the OS level like we do in the QWERTY layer)
+ // CADET or GREEK+ALT triggers the Cadet (aka "Top") layer, or the SHIFTCADET layer when
+ // shift is held.
+ // LAYER_LOCK locks the "base" layer (i.e., QWERTY, GREEK, or CADET) to the value which is
+ // pressed at the moment that it is being released. When a layer lock is set, the
+ // analogous layer modifier key is reversed; e.g., if you lock the GREEK layer, then the
+ // GREEK button bounces you back to QWERTY.
+ //
+ // We also parse the shift, alt, and caps lock keys to provide management of those which is
+ // compatible with these various layers.
+ KC_GREEK = SAFE_RANGE,
+ KC_CADET,
+ KC_LAYER_LOCK,
+
+ // These are the keycodes generated by the various "accent request" keystrokes.
+ KC_ACCENT_START,
+ KC_CGRV = KC_ACCENT_START, // Grave accent
+ KC_CAGU, // Acute accent
+ KC_CDIA, // Diaresis / umlaut / trema
+ KC_CCIR, // Circumflex
+ KC_CCED, // Cedilla
+ KC_CTIL, // Tilde
+ KC_ACCENT_END,
+};
+
+enum layers_keymap {
+ _QWERTY = 0,
+ _FUNCTION,
+
+ _GREEK,
+ _SHIFTGREEK,
+ _CADET,
+ _SHIFTCADET,
+};
+
+// This is so that H(xxxx) has the same width as _______, which makes the grids more legible.
+#define H(x) UC(0x##x)
+#define MO_FN MO(_FUNCTION)
+#define KC_LLCK KC_LAYER_LOCK
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ // NB: Using GESC for escape in the QWERTY layer as a temporary hack because I messed up the
+ // switch on the KC_GRV key; change back to KC_ESC once this is fixed.
+ [_QWERTY] = LAYOUT_96_ansi(
+ QK_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_MPLY, KC_BRK,
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_LLCK, KC_PSLS, KC_PAST, KC_PMNS,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9,
+ KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3,
+ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, MO_FN, KC_GREEK,KC_CADET,KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT),
+ /* The Greek layers. Shown here are the QWERTY layer (for visual reference) and the two Greek
+ * layers.
+ * ,----------------------------------------------------------------------------
+ * | ` |F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|HOM|END|PGU|PGD|MUT|BRK| QWERTY
+ * | ` | ₁ | ₂ | ₃ | ₄ | ₅ | ₆ | ₇ | ₈ | ₉ | ₀ | ₋ | ₊ | ₍ | ₎ | | | | | SHIFTGREEK
+ * | ` | ¹ | ² | ³ | ⁴ | ⁵ | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | ⁻ | ⁺ | ⁽ | ⁾ | | | | | GREEK
+ * |---------------------------------------------------------------------------|
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | + | BKSPC |LCK| / | * | - |
+ * | ` | ¿ | | € | | | | | | | | | ≁ | BKSPC |LCK| | ⊗ | |
+ * | | | | | | | | | | | | ∝ | ∼ | BKSPC |LCK| ⊘ | ⊙ | ⊖ |
+ * |---------------------------------------------------------------------------|
+ * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | 7 | 8 | 9 | |
+ * | | Θ | Ω | Ε | Ρ | Τ | Ψ | Υ | Ι | Ο | Π | | | | | | | |
+ * | | θ | ω | ε | ρ | τ | ψ | υ | ι | ο | π | | | | | | | |
+ * |-----------------------------------------------------------------------| + |
+ * | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | RET | 4 | 5 | 6 | ⊕ |
+ * | CTRL | Α | Σ | Δ | Φ | Γ | Η | | Κ | Λ | … | ∴ | RET | | | | |
+ * | CTRL | α | σ | δ | φ | γ | η | ϑ | κ | λ | ⋯ | ⋅ | RET | | | | |
+ * |-----------------------------------------------------------------------|---|
+ * | SHIFT | Z | X | C | V | B | N | M | , | . | / |SHFT | ↑ | 1 | 2 | 3 | |
+ * | SHIFT | Ζ | Ξ | Χ | ✔ | Β | Ν | Μ | ≲ | ≳ | |SHFT | | | | | |
+ * | SHIFT | ζ | ξ | χ | ς | β | ν | μ | ≪ | ≫ | ∫ |SHFT | | | | | |
+ * |-----------------------------------------------------------------------|ENT|
+ * | CTL | ALT| CMD| SPACE | α | β | γ | ← | ↓ | → | 0 | . | |
+ * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
+ * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
+ * `---------------------------------------------------------------------------'
+ */
+ [_GREEK] = LAYOUT_96_ansi(
+ KC_GRV, H(00b9), H(00b2), H(00b3), H(2074), H(2075), H(2076), H(2077), H(2078), H(2079), H(2070), H(207b), H(207a), H(207d), H(207e), XXXXXXX, XXXXXXX, XXXXXXX, _______,
+ KC_GRV, _______, _______, _______, _______, _______, _______, _______, H(00b0), _______, _______, H(221d), H(223c), _______, _______, H(2298), H(2299), H(2296),
+ _______, H(03b8), H(03c9), H(03b5), H(03c1), H(03c4), H(03c8), H(03c5), H(03b9), H(03bf), H(03c0), KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9,
+ _______, H(03b1), H(03c3), H(03b4), H(03c6), H(03b3), H(03b7), H(03d1), H(03ba), H(03bb), H(22ef), H(22c5), _______, KC_P4, KC_P5, KC_P6, H(2295),
+ _______, H(03b6), H(03be), H(03c7), H(03c2), H(03b2), H(03bd), H(03bc), H(226a), H(226b), H(222b), _______, _______, KC_P1, KC_P2, KC_P3,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
+ [_SHIFTGREEK] = LAYOUT_96_ansi(
+ KC_GRV, H(2081), H(2082), H(2083), H(2084), H(2085), H(2086), H(2087), H(2088), H(2089), H(2080), H(208b), H(208a), H(208d), H(208e), XXXXXXX, XXXXXXX, XXXXXXX, _______,
+ KC_GRV, H(00bf), _______, H(20ac), _______, _______, _______, _______, _______, _______, _______, XXXXXXX, H(2241), _______, _______, XXXXXXX, H(2297), XXXXXXX,
+ _______, H(0398), H(03a9), H(0395), H(03a1), H(03a4), H(03a8), H(03a5), H(0399), H(039f), H(03a0), KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9,
+ _______, H(0391), H(03a3), H(0394), H(03a6), H(0393), H(0397), XXXXXXX, H(039a), H(039b), H(2026), H(2234), _______, KC_P4, KC_P5, KC_P6, H(2295),
+ _______, H(0396), H(039e), H(03a7), H(2714), H(0392), H(039d), H(039c), H(2272), H(2273), XXXXXXX, _______, _______, KC_P1, KC_P2, KC_P3,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
+ /* The Cadet layers. Again, we show the QWERTY layer and the two cadet layers.
+ * ,----------------------------------------------------------------------------
+ * | ` |F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|HOM|END|PGU|PGD|MUT|BRK| QWERTY
+ * | ∅ | | | | | | | | | | | | | | | | | | | SHIFTCADET
+ * | ¬ | | | | | | | | | | | | | | | | | | | CADET
+ * |---------------------------------------------------------------------------|
+ * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | + | BKSPC |LCK| / | * | - |
+ * | ` | ¡ | | £ | | | | | ° | | | * | ∓ | BKSPC |LCK| | | |
+ * | | | | | | | | | | | | | ± | BKSPC |LCK| | × | |
+ * |---------------------------------------------------------------------------|
+ * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | 7 | 8 | 9 | |
+ * | | ℚ | | | ℝ | ⊆ | ⊇ | | ℵ | ∄ | | ∉ | | | * | * | * | |
+ * | | ∧ | ∨ | ∩ | ∪ | ⊂ | ⊃ | ∀ | ∞ | ∃ | ∂ | ∈ | | | * | * | * | | [1]
+ * |-----------------------------------------------------------------------| + |
+ * | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | RET | 4 | 5 | 6 | ⊕ |
+ * | CTRL | Å | | ∇ | | ⇑ | ⇓ | ⇐ | ⇒ | ⇔ | | | RET | * | * | * | |
+ * | CTRL | ⟘ | ⊤ | ⊢ | ⊣ | ↑ | ↓ | ← | → | ↔ | | | RET | * | * | * | | [1]
+ * |-----------------------------------------------------------------------|---|
+ * | SHIFT | Z | X | C | V | B | N | M | , | . | / |SHFT | ↑ | 1 | 2 | 3 | |
+ * | SHIFT | ℤ | ℂ | | ≉ | ≢ | ℕ | | | | |SHFT | | * | * | * | |
+ * | SHIFT | | ≠ | | ≈ | ≡ | ≤ | ≥ | | | ÷ |SHFT | | * | * | * | | [1]
+ * |-----------------------------------------------------------------------|ENT|
+ * | CTL | ALT| CMD| SPACE | α | β | γ | ← | ↓ | → | 0 | . | |
+ * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
+ * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
+ * `---------------------------------------------------------------------------'
+ * [1] CADET + numpad moves the mouse. SHIFT+CADET+NUMPAD moves it more quickly. CADET+5
+ * clicks the mouse, and SHIFT+CADET+FIVE right-clicks.
+ */
+ [_CADET] = LAYOUT_96_ansi(
+ H(00AC), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
+ KC_GRV, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, H(00b1), _______, _______, XXXXXXX, H(00d7), XXXXXXX,
+ _______, H(2227), H(2228), H(2229), H(222a), H(2282), H(2283), H(2200), H(221e), H(2203), H(2202), H(2208), XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9,
+ _______, H(22a5), H(22a4), H(22a2), H(22a3), H(2191), H(2193), H(2190), H(2192), H(2194), XXXXXXX, XXXXXXX, _______, KC_P4, KC_P5, KC_P6, XXXXXXX,
+ _______, XXXXXXX, H(2260), XXXXXXX, H(2248), H(2261), H(2264), H(2265), XXXXXXX, XXXXXXX, H(00f7), _______, _______, KC_P1, KC_P2, KC_P3,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
+ [_SHIFTCADET] = LAYOUT_96_ansi(
+ H(2205), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
+ KC_GRV, H(00a1), XXXXXXX, H(00a3), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, H(2213), _______, _______, XXXXXXX, XXXXXXX, XXXXXXX,
+ _______, H(211a), XXXXXXX, XXXXXXX, H(211d), H(2286), H(2287), XXXXXXX, H(2135), H(2204), XXXXXXX, H(2209), XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9,
+ _______, H(212b), XXXXXXX, H(2207), XXXXXXX, H(21d1), H(21d3), H(21d0), H(21d2), H(21d4), XXXXXXX, XXXXXXX, _______, KC_P4, KC_P5, KC_P6, XXXXXXX,
+ _______, H(2124), H(2102), XXXXXXX, H(2249), H(2262), H(2115), XXXXXXX, XXXXXXX, XXXXXXX, H(00f7), _______, _______, KC_P1, KC_P2, KC_P3,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
+
+ // Function layer is mostly for keyboard meta-control operations, but also contains the combining
+ // accent marks. These are deliberately placed to match where the analogous controls go on Mac OS.
+ [_FUNCTION] = LAYOUT_96_ansi(
+ KC_CGRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, QK_BOOT,
+ KC_CGRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, KC_CAGU, _______, _______, _______, KC_CDIA, KC_CCIR, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, UC_MAC, UC_LINX, UC_WIN, UC_BSD, UC_WINC, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, KC_CCED, _______, _______, KC_CTIL, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
+};
+
+////////////////////////////////////////////////////////////////////////////////////////////////////
+// Accent implementation
+//
+// In the body of process_record_user, we store an "accent_request", which is the accent keycode if
+// one was just selected, or zero otherwise. When the *next* key is hit, we look up whether the
+// accent request plus that next keycode (plus the state of the shift key) together amount to an
+// interesting combined (NFKC) character, and if so, emit it; otherwise, we emit the accent as a
+// separate character and then process the next key normally. The resulting UI behavior is similar
+// to that of the combining accent keys in MacOS.
+//
+// We store two arrays, depending on whether shift is or isn't held. Each is two-dimensional, with
+// its outer key by the next keycode struck, and the inner key by the accent requested. The outer
+// array has KC_Z + 1 as its upper bound, so that we can save memory by only coding alphabetic keys.
+// The contents are either Unicode code points, or zero to indicate that we don't have a point for
+// this combination.
+
+#define KC_NUM_ACCENTS (KC_ACCENT_END - KC_ACCENT_START)
+#define KC_NUM_SLOTS (KC_Z + 1)
+
+const uint16_t PROGMEM unshifted_accents[KC_NUM_SLOTS][KC_NUM_ACCENTS] = {
+ // KC_CGRV, KC_CAGU, KC_CDIA, KC_CCIR, KC_CCED, KC_CTIL
+ [KC_A] = { 0x00e0, 0x00e1, 0x00e4, 0x00e2, 0, 0x00e3 },
+ [KC_E] = { 0x00e8, 0x00e9, 0x00eb, 0x00ea, 0, 0 },
+ [KC_I] = { 0x00ec, 0x00ed, 0x00ef, 0x00ee, 0, 0 },
+ [KC_O] = { 0x00f2, 0x00f3, 0x00f6, 0x00f4, 0, 0x00f5 },
+ [KC_U] = { 0x00f9, 0x00fa, 0x00fc, 0x00fb, 0, 0 },
+ [KC_Y] = { 0, 0, 0x00ff, 0, 0, 0 },
+ [KC_N] = { 0, 0, 0, 0, 0, 0x00f1 },
+ [KC_C] = { 0, 0, 0, 0, 0x00e7, 0 },
+};
+
+const uint16_t PROGMEM shifted_accents[KC_NUM_SLOTS][KC_NUM_ACCENTS] = {
+ // KC_CGRV, KC_CAGU, KC_CDIA, KC_CCIR, KC_CCED, KC_CTIL
+ [KC_A] = { 0x00c0, 0x00c1, 0x00c4, 0x00c2, 0, 0x00c3 },
+ [KC_E] = { 0x00c8, 0x00c9, 0x00cb, 0x00ca, 0, 0 },
+ [KC_I] = { 0x00cc, 0x00cd, 0x00cf, 0x00ce, 0, 0 },
+ [KC_O] = { 0x00d2, 0x00d3, 0x00d6, 0x00d4, 0, 0x00d5 },
+ [KC_U] = { 0x00d9, 0x00da, 0x00dc, 0x00db, 0, 0 },
+ [KC_Y] = { 0, 0, 0x00df, 0, 0, 0 },
+ [KC_N] = { 0, 0, 0, 0, 0, 0x00d1 },
+ [KC_C] = { 0, 0, 0, 0, 0x00c7, 0 },
+};
+
+// The uncombined and combined forms of the accents, for when we want to emit them as single
+// characters.
+const uint16_t PROGMEM uncombined_accents[KC_NUM_ACCENTS] = {
+ [KC_CGRV - KC_ACCENT_START] = 0x0060,
+ [KC_CAGU - KC_ACCENT_START] = 0x00b4,
+ [KC_CDIA - KC_ACCENT_START] = 0x00a8,
+ [KC_CCIR - KC_ACCENT_START] = 0x005e,
+ [KC_CCED - KC_ACCENT_START] = 0x00b8,
+ [KC_CTIL - KC_ACCENT_START] = 0x02dc,
+};
+
+const uint16_t PROGMEM combined_accents[KC_NUM_ACCENTS] = {
+ [KC_CGRV - KC_ACCENT_START] = 0x0300,
+ [KC_CAGU - KC_ACCENT_START] = 0x0301,
+ [KC_CDIA - KC_ACCENT_START] = 0x0308,
+ [KC_CCIR - KC_ACCENT_START] = 0x0302,
+ [KC_CCED - KC_ACCENT_START] = 0x0327,
+ [KC_CTIL - KC_ACCENT_START] = 0x0303,
+};
+
+// This function manages keypresses that happen after an accent has been selected by an earlier
+// keypress.
+// Args:
+// accent_key: The accent key which was earlier selected. This must be in the range
+// [KC_ACCENT_START, KC_ACCENT_END).
+// keycode: The keycode which was just pressed.
+// is_shifted: The current shift state (as set by a combination of shift and caps lock)
+// force_no_accent: If true, we're in a situation where we want to force there to be no
+// accent combination -- if e.g. we're in a non-QWERTY layer, or if other modifier keys
+// are held.
+//
+// Returns true if the keycode has been completely handled by this function (and so should not be
+// processed further by process_record_user) or false otherwise.
+bool process_key_after_accent(
+ uint16_t accent_key,
+ uint16_t keycode,
+ bool is_shifted,
+ bool force_no_accent
+) {
+ assert(accent_key >= KC_ACCENT_START);
+ assert(accent_key < KC_ACCENT_END);
+ const int accent_index = accent_key - KC_ACCENT_START;
+
+ // If the keycode is outside A..Z, or force_no_accent is set, we know we shouldn't even bother
+ // with a table lookup.
+ if (keycode <= KC_Z && !force_no_accent) {
+ // Pick the correct array. Because this is progmem, we're going to need to do the
+ // two-dimensional array indexing by hand, and so we just cast it to a single-dimensional array.
+ const uint16_t *points = (const uint16_t*)(is_shifted ? shifted_accents : unshifted_accents);
+ const uint16_t code_point = pgm_read_word_near(points + KC_NUM_ACCENTS * keycode + accent_index);
+ if (code_point) {
+ register_unicode(code_point);
+ return true;
+ }
+ }
+
+ // If we get here, there was no accent match. Emit the accent as its own character, and then let
+ // the caller figure out what to do next.
+ register_unicode(pgm_read_word_near(uncombined_accents + accent_index));
+ return false;
+}
+
+// Layer bitfields.
+#define GREEK_LAYER (1UL << _GREEK)
+#define SHIFTGREEK_LAYER (1UL << _SHIFTGREEK)
+#define CADET_LAYER (1UL << _CADET)
+#define SHIFTCADET_LAYER (1UL << _SHIFTCADET)
+// The layers we don't touch.
+#define LAYER_MASK ~(GREEK_LAYER|SHIFTGREEK_LAYER|CADET_LAYER|SHIFTCADET_LAYER)
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ // We track these persistent globals and manage them on our own, rather than trying to rely on
+ // get_mods or the like, because this function is called *before* that's updated!
+ static bool shift_held = false;
+ static bool alt_held = false;
+ static bool ctrl_held = false;
+ static bool super_held = false;
+ static bool greek_held = false;
+ static bool cadet_held = false;
+
+ // These are where we remember the values of lock states.
+ static bool shift_lock = false;
+ static int layer_lock = _QWERTY;
+
+ // The accent request, or zero if there isn't one.
+ static uint16_t accent_request = 0;
+
+ // If this is set to true, don't trigger any handling of pending accent requests. That's what we
+ // want to do if e.g. the user just hit the shift key or something.
+ bool ignore_accent_change = !record->event.pressed;
+
+ // Step 1: Process any modifier key state changes, so we can maintain that state.
+ if (keycode == KC_LSFT || keycode == KC_RSFT) {
+ shift_held = record->event.pressed;
+ ignore_accent_change = true;
+ } else if (keycode == KC_LALT || keycode == KC_RALT) {
+ alt_held = record->event.pressed;
+ ignore_accent_change = true;
+ } else if (keycode == KC_LCTL || keycode == KC_RCTL) {
+ ctrl_held = record->event.pressed;
+ ignore_accent_change = true;
+ } else if (keycode == KC_LGUI || keycode == KC_RGUI) {
+ super_held = record->event.pressed;
+ ignore_accent_change = true;
+ } else if (keycode == KC_GREEK) {
+ greek_held = record->event.pressed;
+ ignore_accent_change = true;
+ } else if (keycode == KC_CADET) {
+ cadet_held = record->event.pressed;
+ ignore_accent_change = true;
+ }
+
+ // Step 2: Figure out which layer we're supposed to be in, by transforming all the prior stuff
+ // into layer requests.
+ const bool greek_request = (greek_held && !alt_held);
+ const bool cadet_request = (cadet_held || (greek_held && alt_held));
+
+ // Now, handle the lock keys. We store next_layer_lock in a local variable so that we can
+ // determine the layer to pick right now before we update layer_lock.
+ int next_layer_lock = layer_lock;
+ if (keycode == KC_CAPS) {
+ // If we're in QWERTY mode, caps lock is already going to be managed by the host OS, but by
+ // tracking it ourselves we can also usefully apply it to the GREEK and CADET layers.
+ if (record->event.pressed) {
+ shift_lock = !shift_lock;
+ }
+ } else if (keycode == KC_LAYER_LOCK) {
+ if (record->event.pressed) {
+ if (cadet_request) {
+ next_layer_lock = _CADET;
+ } else if (greek_request) {
+ next_layer_lock = _GREEK;
+ } else {
+ next_layer_lock = _QWERTY;
+ }
+ }
+ }
+
+ // OK! Now we know which buttons are being held, and the current and upcoming states of the locks.
+ // We can compute our new base layer. Remember that the CADET and GREEK keys act as their own
+ // antonyms if they match the layer lock -- e.g., if you have CADET locked, then CADET+X generates
+ // QWERTY-X.
+ int base_layer;
+ if (cadet_request) {
+ base_layer = (layer_lock == _CADET ? _QWERTY : _CADET);
+ } else if (greek_request) {
+ base_layer = (layer_lock == _GREEK ? _QWERTY : _GREEK);
+ } else {
+ base_layer = layer_lock;
+ }
+
+ const bool shifted = (shift_held != shift_lock);
+ int actual_layer;
+ if (base_layer == _CADET) {
+ actual_layer = (shifted ? _SHIFTCADET : _CADET);
+ } else if (base_layer == _GREEK) {
+ actual_layer = (shifted ? _SHIFTGREEK : _GREEK);
+ } else {
+ // We don't do shifting for the QWERTY layer, since for that we emit USB HID codes and shifting
+ // is managed by the host OS.
+ actual_layer = _QWERTY;
+ }
+
+ // And now we can update the layer lock and the actual firmware layer selector.
+ layer_lock = next_layer_lock;
+ layer_state_t new_layer_state = (layer_state & LAYER_MASK) | (1UL << actual_layer);
+ if (new_layer_state != layer_state) {
+ layer_state_set(new_layer_state);
+ }
+
+ // Step 3: Handle accents. If there's a pending accent request, process it. If what the user just
+ // hit creates a new accent request, update the pending state for the next keypress.
+ if (!ignore_accent_change && accent_request && record->event.pressed) {
+ // Only do the accent stuff if we're in the QWERTY layer and we aren't modifying something.
+ const bool force_no_accent = (
+ actual_layer != _QWERTY ||
+ ctrl_held ||
+ super_held ||
+ alt_held
+ );
+ const uint16_t old_accent = accent_request;
+ accent_request = 0;
+ if (process_key_after_accent(old_accent, keycode, shifted, force_no_accent)) {
+ return false;
+ }
+ }
+
+ // And if a new accent request just arrived, update accent_request.
+ if (keycode >= KC_ACCENT_START && keycode < KC_ACCENT_END && record->event.pressed) {
+ if (shifted) {
+ // Shift + accent request generates the combining accent key, and leaves accent_request alone.
+ register_unicode(pgm_read_word_near(combined_accents + keycode - KC_ACCENT_START));
+ return false;
+ } else {
+ accent_request = keycode;
+ }
+ }
+
+ return true;
+}
diff --git a/keyboards/ymdk/melody96/keymaps/zunger/readme.md b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/readme.md
index 3eb64a2e73..3eb64a2e73 100644
--- a/keyboards/ymdk/melody96/keymaps/zunger/readme.md
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/readme.md
diff --git a/keyboards/ymdk/melody96/keymaps/zunger/rules.mk b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/rules.mk
index a61cfa33fa..a61cfa33fa 100644
--- a/keyboards/ymdk/melody96/keymaps/zunger/rules.mk
+++ b/keyboards/ymdk/melody96/hotswap/keymaps/zunger/rules.mk
diff --git a/keyboards/ymdk/melody96/hotswap/matrix_diagram.md b/keyboards/ymdk/melody96/hotswap/matrix_diagram.md
new file mode 100644
index 0000000000..77f7e6a925
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/matrix_diagram.md
@@ -0,0 +1,23 @@
+# Matrix Diagram for YMDK Melody96 Hotswap
+
+```
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+│50 │51 │52 │53 │54 │55 │56 │57 │58 │B8 │B7 │B5 │B4 │B3 │B6 │B2 │B1 │B0 │63 │
+├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┴───┼───┼───┼───┼───┤
+│40 │41 │42 │43 │44 │45 │46 │47 │48 │A8 │A7 │A5 │A4 │A6 │A2 │A1 │A0 │64 │
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┼───┼───┼───┤ ┌─────┐
+│30 │31 │32 │33 │34 │35 │36 │37 │38 │98 │97 │95 │94 │93 │96 │92 │91 │80 │ │ │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┤ │ ┌──┴┐93 │ ISO Enter
+│20 │21 │22 │23 │24 │25 │26 │27 │28 │88 │87 │85 │84 │86 │82 │81 │ │ │84 │ │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┼───┤ └───┴────┘
+│10 │11 │12 │13 │14 │15 │16 │17 │18 │78 │77 │75 │74 │73 │76 │72 │71 │60 │
+├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┼───┼───┤ │
+│00 │01 │02 │06 │08 │07 │05 │04 │03 │66 │62 │61 │ │
+└────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
+┌────────┐
+│10 │ 2.25u LShift
+└────────┘
+┌────┬────┬────┬────────────────────────┬─────┬─────┐
+│00 │01 │02 │06 │08 │05 │ RWKL
+└────┴────┴────┴────────────────────────┴─────┴─────┘
+```
diff --git a/keyboards/ymdk/melody96/hotswap/readme.md b/keyboards/ymdk/melody96/hotswap/readme.md
new file mode 100644
index 0000000000..9fd379b273
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/readme.md
@@ -0,0 +1,19 @@
+# YMDK Melody96 Hotswap
+
+![melody96](https://i.imgur.com/9o0a6XFh.png)
+
+A 96% hotswap keyboard from YMDK, available in four different layouts.
+
+* Keyboard Maintainer: [The QMK Community](https://github.com/qmk)
+* Hardware Supported: Melody96 Hotswap PCBs
+* Hardware Availability: [YMDK](https://ymdkey.com/products/ymdk-hot-swap-hot-swappable-kailh-socket-96-pcb-qmk-fully-programmable-support-ansi-iso-interchange-melody-96-ymd96), [AliExpress](https://www.aliexpress.us/item/2251832770844523.html)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make ymdk/melody96/hotswap:default
+
+Flashing example for this keyboard:
+
+ make ymdk/melody96/hotswap:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/ymdk/melody96/hotswap/rules.mk b/keyboards/ymdk/melody96/hotswap/rules.mk
new file mode 100644
index 0000000000..6e7633bfe0
--- /dev/null
+++ b/keyboards/ymdk/melody96/hotswap/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank
diff --git a/keyboards/ymdk/melody96/keymaps/konstantin/config.h b/keyboards/ymdk/melody96/keymaps/konstantin/config.h
deleted file mode 100644
index 4b511eb848..0000000000
--- a/keyboards/ymdk/melody96/keymaps/konstantin/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define LAYER_FN
diff --git a/keyboards/ymdk/melody96/keymaps/konstantin/keymap.c b/keyboards/ymdk/melody96/keymaps/konstantin/keymap.c
deleted file mode 100644
index 5dff7a249a..0000000000
--- a/keyboards/ymdk/melody96/keymaps/konstantin/keymap.c
+++ /dev/null
@@ -1,77 +0,0 @@
-#include QMK_KEYBOARD_H
-#include "konstantin.h"
-
-static const HSV *colors[] = { &godspeed_blue, &godspeed_yellow };
-static const size_t cnum = ARRAY_SIZE(colors);
-static size_t cidx = 0;
-
-enum keycodes_keymap {
- RGB_SET = RANGE_KEYMAP,
-};
-
-void eeconfig_init_keymap(void) {
- rgblight_sethsv(colors[cidx]->h, colors[cidx]->s, colors[cidx]->v);
-}
-
-bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case RGB_SET:
- if (record->event.pressed) {
- cidx = (cidx + 1) % cnum;
- rgblight_sethsv(colors[cidx]->h, colors[cidx]->s, colors[cidx]->v);
- }
- break;
- }
-
- return true;
-}
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* Base layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │Esc│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│PSc│Ins│Hom│End│PgU│PgD│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │Del│NLk│P/ │P* │P- │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┼───┼───┼───┤
- * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Bspc │P7 │P8 │P9 │ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┤P+ │
- * │FnCaps│ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │P4 │P5 │P6 │ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┼───┤
- * │LSft│RAG│ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RSfRCt│ ↑ │P1 │P2 │P3 │ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┼───┼───┤PEn│
- * │LCtl│LGui│LAlt│ Space │RAlGu│FnFLk│ ← │ ↓ │ → │P0 │P. │ │
- * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┴───┴───┴───┘
- */
- [L_BASE] = LAYOUT(
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_INS, KC_HOME, KC_END, KC_PGUP, KC_PGDN,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, KC_P7, KC_P8, KC_P9, XXXXXXX,
- FN_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS,
- KC_LSFT, RAL_RGU, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSF_RCT, KC_UP, KC_P1, KC_P2, KC_P3, XXXXXXX,
- KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, RAL_RGU, XXXXXXX, FN_FNLK, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT
- ),
-
- /* Fn layer
- * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
- * │ │ │ │ │ │ │ │ │ │ │ │ │ │Sys│SLk│Pau│Brk│Top│Btm│
- * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
- * │ │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ │ │RTg│ ÷ │ × │ − │
- * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┼───┼───┼───┤
- * │ M4 │M2 │M↑ │M1 │M3 │M5 │ │UCM│ │Stp│Ply│Prv│Nxt│Clear│RH+│RS+│RV+│ │
- * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┤RSt│
- * │ │M← │M↓ │M→ │MW↑│ │ │ │ │ │ │ │ │RH-│RS-│RV-│ │
- * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┼───┤
- * │ │ │MA0│MA2│MW←│MW→│ │ │App│Vo-│Vo+│Mut│ │PgU│RMR│RMS│RMB│ │
- * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┼───┼───┤RMP│
- * │ │DtPR│DtNA│ MW↓ │ │ │ │Hom│PgD│End│RM-│RM+│ │
- * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
- */
- [L_FN] = LAYOUT(
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, SYSRQ, KC_SCRL, KC_PAUS, BREAK, TOP, BOTTOM,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, DIVIDE, TIMES, MINUS,
- KC_BTN4, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, KC_BTN5, _______, UC_NEXT, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, CLEAR, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX,
- _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SET,
- _______, _______, KC_ACL0, KC_ACL2, KC_WH_L, KC_WH_R, _______, _______, KC_APP, KC_VOLD, KC_VOLU, KC_MUTE, _______, KC_PGUP, RGB_M_R, RGB_M_SN,RGB_M_B, XXXXXXX,
- _______, DST_P_R, DST_N_A, KC_WH_D, _______, XXXXXXX, _______, KC_HOME, KC_PGDN, KC_END, RGB_RMOD,RGB_MOD, RGB_M_P
- ),
-};
diff --git a/keyboards/ymdk/melody96/keymaps/konstantin/rules.mk b/keyboards/ymdk/melody96/keymaps/konstantin/rules.mk
deleted file mode 100644
index b315c8e6b9..0000000000
--- a/keyboards/ymdk/melody96/keymaps/konstantin/rules.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# Generic features
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-COMMAND_ENABLE = yes
-CONSOLE_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-UNICODEMAP_ENABLE = yes
-
-# Keyboard-specific features
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = yes
-VIA_ENABLE = yes
-
-# Firmware size reduction
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/ymdk/melody96/keymaps/zunger/keymap.c b/keyboards/ymdk/melody96/keymaps/zunger/keymap.c
deleted file mode 100644
index d65f10dcec..0000000000
--- a/keyboards/ymdk/melody96/keymaps/zunger/keymap.c
+++ /dev/null
@@ -1,489 +0,0 @@
-/* Copyright 2019 Yonatan Zunger
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include <assert.h>
-
-// This keymap is designed to make it easy to type in a wide variety of languages, as well as
-// generate mathematical symbols (à la Space Cadet).
-//
-// LAYER MAGIC (aka, typing in many alphabets)
-// This keyboard has three "base" layers: QWERTY, GREEK, and CADET. The GREEK and CADET layers
-// are actually full of Unicode points, and so which point they generate depends on things like
-// whether the shift key is down. To handle this, each of those layers is actually *two* layers, one
-// with and one without shift. In our main loop, we manage modifier state detection, as well as
-// layer switch detection, and pick the right layer on the fly.
-// Layers are selected with a combination of three keys. The "Greek" and "Cadet" keys act like
-// modifiers: When held down, they transiently select the indicated base layer. The "Layer Lock" key
-// locks the value of the base layer at whatever is currently held; so e.g., if you hold Greek +
-// Layer Lock, you'll stay in Greek mode until you hit Layer Lock again without any of the mods
-// held.
-// TODO: This system of layer selection is nice for math, but it's not very nice for actually
-// typing in multiple languages. It seems like a better plan will be to reserve one key for each
-// base layer -- maybe fn + F(n) -- which can either be held as a modifier or tapped to switch
-// layers. That will open up adding some more languages, like Yiddish, but to do this effectively
-// we'll need to find a good UI with which to show the currently selected layer. Need to check what
-// the melody96 has in the way of outputs (LEDs, sound, etc).
-//
-// ACCENT MAGIC (aka, typing conveniently in Romance languages)
-// We want to support easy typing of diacritical marks. We can't rely on the host OS for this,
-// because (e.g.) on MacOS, to make any of the other stuff work, we need to be using the Unicode
-// input method at the OS level, which breaks all the normal accent stuff on that end. So we do it
-// ourselves. Accents can actually be invoked in two different ways: one fast and very compatible,
-// one very versatile but with occasional compatibility problems.
-//
-// THE MAIN WAY: You can hit one of the "accent request" key patterns immediately *before* typing
-// a letter to be accented. It will emit the corresponding accented Unicode. For example, you can
-// hit fn-e to request an acute accent, followed by i, and it will output í, U+00ED LATIN SMALL
-// LETTER I WITH ACUTE. These "combined characters" are in Unicode normal form C (NFKC), which is
-// important because many European websites and apps, in particular, tend to behave very badly
-// (misunderstanding and/or crashing) when presented with characters in other forms! The catch is
-// that this only works for the various combinations of letters and accents found in the Latin-1
-// supplement block of Unicode -- basically, things you need for Western European languages.
-//
-// (NB: If you make an accent request followed by a letter which can't take the corresponding
-// accent, it will output the uncombined form of the accent followed by whatever you typed; so
-// e.g., if you hit fn-e followed by f, it will output ´f, U+00B4 ACUTE ACCENT followed by an
-// ordinary f. This is very similar to the default behavior of MacOS.)
-//
-// THE FLEXIBLE WAY: If you hit the accent request with a shift -- e.g., fn-shift-e -- it will
-// instead immediately output the corresponding *combining* Unicode accent mark, which will modify
-// the *previous* character you typed. For example, if you type i followed by fn-shift-e, it will
-// generate í. But don't be fooled by visual similarity: unlike the previous example, this one is
-// an ordinary i followed by U+0301 COMBINING ACUTE ACCENT. It's actually *two symbols*, and this
-// is Unicode normal form D (NFKD). Unlike NFKC, there are NFKD representations of far more
-// combinations of letters and accents, and it's easy to add more of these if you need. (The NFKC
-// representation of such combinations is identical to their NFKD representation)
-//
-// Programs that try to compare Unicode strings *should* first normalize them by converting them
-// all into one normal form or another, and there are functions in every programming language to
-// do this -- e.g., JavaScript's string.normalize() -- but lots of programmers fail to understand
-// this, and so write code that massively freaks out when it encounters the wrong form.
-//
-// The current accent request codes are modeled on the ones in MacOS.
-//
-// fn+` Grave accent (`)
-// fn+e Acute accent (´)
-// fn+i Circumflex (^)
-// fn+u Diaresis / umlaut / trema (¨)
-// fn+c Cedilla (¸)
-// fn+n Tilde (˜)
-//
-// Together, these functions make for a nice "polyglot" keyboard: one that can easily type in a wide
-// variety of languages, which is very useful for people who, well, need to type in a bunch of
-// languages.
-//
-// The major TODOs are:
-// - Update the layer selection logic (and add visible layer cues);
-// - Factor the code below so that the data layers are more clearly separated from the code logic,
-// so that other users of this keymap can easily add whichever alphabets they need without
-// having to deeply understand the implementation.
-
-
-enum custom_keycodes {
- // We provide special layer management keys:
- // GREEK triggers the Greek (aka "Front") layer, or the SHIFTGREEK layer when shift is held.
- // (Because we use Unicode, we need to implement shift-handling at the firmware level,
- // rather than the OS level like we do in the QWERTY layer)
- // CADET or GREEK+ALT triggers the Cadet (aka "Top") layer, or the SHIFTCADET layer when
- // shift is held.
- // LAYER_LOCK locks the "base" layer (i.e., QWERTY, GREEK, or CADET) to the value which is
- // pressed at the moment that it is being released. When a layer lock is set, the
- // analogous layer modifier key is reversed; e.g., if you lock the GREEK layer, then the
- // GREEK button bounces you back to QWERTY.
- //
- // We also parse the shift, alt, and caps lock keys to provide management of those which is
- // compatible with these various layers.
- KC_GREEK = SAFE_RANGE,
- KC_CADET,
- KC_LAYER_LOCK,
-
- // These are the keycodes generated by the various "accent request" keystrokes.
- KC_ACCENT_START,
- KC_CGRV = KC_ACCENT_START, // Grave accent
- KC_CAGU, // Acute accent
- KC_CDIA, // Diaresis / umlaut / trema
- KC_CCIR, // Circumflex
- KC_CCED, // Cedilla
- KC_CTIL, // Tilde
- KC_ACCENT_END,
-};
-
-enum layers_keymap {
- _QWERTY = 0,
- _FUNCTION,
-
- _GREEK,
- _SHIFTGREEK,
- _CADET,
- _SHIFTCADET,
-};
-
-// This is so that H(xxxx) has the same width as _______, which makes the grids more legible.
-#define H(x) UC(0x##x)
-#define MO_FN MO(_FUNCTION)
-#define KC_LLCK KC_LAYER_LOCK
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- // NB: Using GESC for escape in the QWERTY layer as a temporary hack because I messed up the
- // switch on the KC_GRV key; change back to KC_ESC once this is fixed.
- [_QWERTY] = LAYOUT_hotswap(
- QK_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_MPLY, KC_BRK,
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_LLCK, KC_PSLS, KC_PAST, KC_PMNS,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9,
- KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS,
- KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3,
- KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, MO_FN, KC_GREEK,KC_CADET,KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT),
- /* The Greek layers. Shown here are the QWERTY layer (for visual reference) and the two Greek
- * layers.
- * ,----------------------------------------------------------------------------
- * | ` |F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|HOM|END|PGU|PGD|MUT|BRK| QWERTY
- * | ` | ₁ | ₂ | ₃ | ₄ | ₅ | ₆ | ₇ | ₈ | ₉ | ₀ | ₋ | ₊ | ₍ | ₎ | | | | | SHIFTGREEK
- * | ` | ¹ | ² | ³ | ⁴ | ⁵ | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | ⁻ | ⁺ | ⁽ | ⁾ | | | | | GREEK
- * |---------------------------------------------------------------------------|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | + | BKSPC |LCK| / | * | - |
- * | ` | ¿ | | € | | | | | | | | | ≁ | BKSPC |LCK| | ⊗ | |
- * | | | | | | | | | | | | ∝ | ∼ | BKSPC |LCK| ⊘ | ⊙ | ⊖ |
- * |---------------------------------------------------------------------------|
- * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | 7 | 8 | 9 | |
- * | | Θ | Ω | Ε | Ρ | Τ | Ψ | Υ | Ι | Ο | Π | | | | | | | |
- * | | θ | ω | ε | ρ | τ | ψ | υ | ι | ο | π | | | | | | | |
- * |-----------------------------------------------------------------------| + |
- * | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | RET | 4 | 5 | 6 | ⊕ |
- * | CTRL | Α | Σ | Δ | Φ | Γ | Η | | Κ | Λ | … | ∴ | RET | | | | |
- * | CTRL | α | σ | δ | φ | γ | η | ϑ | κ | λ | ⋯ | ⋅ | RET | | | | |
- * |-----------------------------------------------------------------------|---|
- * | SHIFT | Z | X | C | V | B | N | M | , | . | / |SHFT | ↑ | 1 | 2 | 3 | |
- * | SHIFT | Ζ | Ξ | Χ | ✔ | Β | Ν | Μ | ≲ | ≳ | |SHFT | | | | | |
- * | SHIFT | ζ | ξ | χ | ς | β | ν | μ | ≪ | ≫ | ∫ |SHFT | | | | | |
- * |-----------------------------------------------------------------------|ENT|
- * | CTL | ALT| CMD| SPACE | α | β | γ | ← | ↓ | → | 0 | . | |
- * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
- * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
- * `---------------------------------------------------------------------------'
- */
- [_GREEK] = LAYOUT_hotswap(
- KC_GRV, H(00b9), H(00b2), H(00b3), H(2074), H(2075), H(2076), H(2077), H(2078), H(2079), H(2070), H(207b), H(207a), H(207d), H(207e), XXXXXXX, XXXXXXX, XXXXXXX, _______,
- KC_GRV, _______, _______, _______, _______, _______, _______, _______, H(00b0), _______, _______, H(221d), H(223c), _______, _______, H(2298), H(2299), H(2296),
- _______, H(03b8), H(03c9), H(03b5), H(03c1), H(03c4), H(03c8), H(03c5), H(03b9), H(03bf), H(03c0), KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9,
- _______, H(03b1), H(03c3), H(03b4), H(03c6), H(03b3), H(03b7), H(03d1), H(03ba), H(03bb), H(22ef), H(22c5), _______, KC_P4, KC_P5, KC_P6, H(2295),
- _______, H(03b6), H(03be), H(03c7), H(03c2), H(03b2), H(03bd), H(03bc), H(226a), H(226b), H(222b), _______, _______, KC_P1, KC_P2, KC_P3,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
- [_SHIFTGREEK] = LAYOUT_hotswap(
- KC_GRV, H(2081), H(2082), H(2083), H(2084), H(2085), H(2086), H(2087), H(2088), H(2089), H(2080), H(208b), H(208a), H(208d), H(208e), XXXXXXX, XXXXXXX, XXXXXXX, _______,
- KC_GRV, H(00bf), _______, H(20ac), _______, _______, _______, _______, _______, _______, _______, XXXXXXX, H(2241), _______, _______, XXXXXXX, H(2297), XXXXXXX,
- _______, H(0398), H(03a9), H(0395), H(03a1), H(03a4), H(03a8), H(03a5), H(0399), H(039f), H(03a0), KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9,
- _______, H(0391), H(03a3), H(0394), H(03a6), H(0393), H(0397), XXXXXXX, H(039a), H(039b), H(2026), H(2234), _______, KC_P4, KC_P5, KC_P6, H(2295),
- _______, H(0396), H(039e), H(03a7), H(2714), H(0392), H(039d), H(039c), H(2272), H(2273), XXXXXXX, _______, _______, KC_P1, KC_P2, KC_P3,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
- /* The Cadet layers. Again, we show the QWERTY layer and the two cadet layers.
- * ,----------------------------------------------------------------------------
- * | ` |F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|HOM|END|PGU|PGD|MUT|BRK| QWERTY
- * | ∅ | | | | | | | | | | | | | | | | | | | SHIFTCADET
- * | ¬ | | | | | | | | | | | | | | | | | | | CADET
- * |---------------------------------------------------------------------------|
- * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | + | BKSPC |LCK| / | * | - |
- * | ` | ¡ | | £ | | | | | ° | | | * | ∓ | BKSPC |LCK| | | |
- * | | | | | | | | | | | | | ± | BKSPC |LCK| | × | |
- * |---------------------------------------------------------------------------|
- * | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | 7 | 8 | 9 | |
- * | | ℚ | | | ℝ | ⊆ | ⊇ | | ℵ | ∄ | | ∉ | | | * | * | * | |
- * | | ∧ | ∨ | ∩ | ∪ | ⊂ | ⊃ | ∀ | ∞ | ∃ | ∂ | ∈ | | | * | * | * | | [1]
- * |-----------------------------------------------------------------------| + |
- * | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | RET | 4 | 5 | 6 | ⊕ |
- * | CTRL | Å | | ∇ | | ⇑ | ⇓ | ⇐ | ⇒ | ⇔ | | | RET | * | * | * | |
- * | CTRL | ⟘ | ⊤ | ⊢ | ⊣ | ↑ | ↓ | ← | → | ↔ | | | RET | * | * | * | | [1]
- * |-----------------------------------------------------------------------|---|
- * | SHIFT | Z | X | C | V | B | N | M | , | . | / |SHFT | ↑ | 1 | 2 | 3 | |
- * | SHIFT | ℤ | ℂ | | ≉ | ≢ | ℕ | | | | |SHFT | | * | * | * | |
- * | SHIFT | | ≠ | | ≈ | ≡ | ≤ | ≥ | | | ÷ |SHFT | | * | * | * | | [1]
- * |-----------------------------------------------------------------------|ENT|
- * | CTL | ALT| CMD| SPACE | α | β | γ | ← | ↓ | → | 0 | . | |
- * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
- * | CTL | ALT| CMD| SPACE | α | β | γ | | | | | | |
- * `---------------------------------------------------------------------------'
- * [1] CADET + numpad moves the mouse. SHIFT+CADET+NUMPAD moves it more quickly. CADET+5
- * clicks the mouse, and SHIFT+CADET+FIVE right-clicks.
- */
- [_CADET] = LAYOUT_hotswap(
- H(00AC), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- KC_GRV, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, H(00b1), _______, _______, XXXXXXX, H(00d7), XXXXXXX,
- _______, H(2227), H(2228), H(2229), H(222a), H(2282), H(2283), H(2200), H(221e), H(2203), H(2202), H(2208), XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9,
- _______, H(22a5), H(22a4), H(22a2), H(22a3), H(2191), H(2193), H(2190), H(2192), H(2194), XXXXXXX, XXXXXXX, _______, KC_P4, KC_P5, KC_P6, XXXXXXX,
- _______, XXXXXXX, H(2260), XXXXXXX, H(2248), H(2261), H(2264), H(2265), XXXXXXX, XXXXXXX, H(00f7), _______, _______, KC_P1, KC_P2, KC_P3,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
- [_SHIFTCADET] = LAYOUT_hotswap(
- H(2205), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
- KC_GRV, H(00a1), XXXXXXX, H(00a3), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, H(2213), _______, _______, XXXXXXX, XXXXXXX, XXXXXXX,
- _______, H(211a), XXXXXXX, XXXXXXX, H(211d), H(2286), H(2287), XXXXXXX, H(2135), H(2204), XXXXXXX, H(2209), XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9,
- _______, H(212b), XXXXXXX, H(2207), XXXXXXX, H(21d1), H(21d3), H(21d0), H(21d2), H(21d4), XXXXXXX, XXXXXXX, _______, KC_P4, KC_P5, KC_P6, XXXXXXX,
- _______, H(2124), H(2102), XXXXXXX, H(2249), H(2262), H(2115), XXXXXXX, XXXXXXX, XXXXXXX, H(00f7), _______, _______, KC_P1, KC_P2, KC_P3,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_PENT),
-
- // Function layer is mostly for keyboard meta-control operations, but also contains the combining
- // accent marks. These are deliberately placed to match where the analogous controls go on Mac OS.
- [_FUNCTION] = LAYOUT_hotswap(
- KC_CGRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, QK_BOOT,
- KC_CGRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_CAGU, _______, _______, _______, KC_CDIA, KC_CCIR, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, UC_MAC, UC_LINX, UC_WIN, UC_BSD, UC_WINC, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, KC_CCED, _______, _______, KC_CTIL, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______),
-};
-
-////////////////////////////////////////////////////////////////////////////////////////////////////
-// Accent implementation
-//
-// In the body of process_record_user, we store an "accent_request", which is the accent keycode if
-// one was just selected, or zero otherwise. When the *next* key is hit, we look up whether the
-// accent request plus that next keycode (plus the state of the shift key) together amount to an
-// interesting combined (NFKC) character, and if so, emit it; otherwise, we emit the accent as a
-// separate character and then process the next key normally. The resulting UI behavior is similar
-// to that of the combining accent keys in MacOS.
-//
-// We store two arrays, depending on whether shift is or isn't held. Each is two-dimensional, with
-// its outer key by the next keycode struck, and the inner key by the accent requested. The outer
-// array has KC_Z + 1 as its upper bound, so that we can save memory by only coding alphabetic keys.
-// The contents are either Unicode code points, or zero to indicate that we don't have a point for
-// this combination.
-
-#define KC_NUM_ACCENTS (KC_ACCENT_END - KC_ACCENT_START)
-#define KC_NUM_SLOTS (KC_Z + 1)
-
-const uint16_t PROGMEM unshifted_accents[KC_NUM_SLOTS][KC_NUM_ACCENTS] = {
- // KC_CGRV, KC_CAGU, KC_CDIA, KC_CCIR, KC_CCED, KC_CTIL
- [KC_A] = { 0x00e0, 0x00e1, 0x00e4, 0x00e2, 0, 0x00e3 },
- [KC_E] = { 0x00e8, 0x00e9, 0x00eb, 0x00ea, 0, 0 },
- [KC_I] = { 0x00ec, 0x00ed, 0x00ef, 0x00ee, 0, 0 },
- [KC_O] = { 0x00f2, 0x00f3, 0x00f6, 0x00f4, 0, 0x00f5 },
- [KC_U] = { 0x00f9, 0x00fa, 0x00fc, 0x00fb, 0, 0 },
- [KC_Y] = { 0, 0, 0x00ff, 0, 0, 0 },
- [KC_N] = { 0, 0, 0, 0, 0, 0x00f1 },
- [KC_C] = { 0, 0, 0, 0, 0x00e7, 0 },
-};
-
-const uint16_t PROGMEM shifted_accents[KC_NUM_SLOTS][KC_NUM_ACCENTS] = {
- // KC_CGRV, KC_CAGU, KC_CDIA, KC_CCIR, KC_CCED, KC_CTIL
- [KC_A] = { 0x00c0, 0x00c1, 0x00c4, 0x00c2, 0, 0x00c3 },
- [KC_E] = { 0x00c8, 0x00c9, 0x00cb, 0x00ca, 0, 0 },
- [KC_I] = { 0x00cc, 0x00cd, 0x00cf, 0x00ce, 0, 0 },
- [KC_O] = { 0x00d2, 0x00d3, 0x00d6, 0x00d4, 0, 0x00d5 },
- [KC_U] = { 0x00d9, 0x00da, 0x00dc, 0x00db, 0, 0 },
- [KC_Y] = { 0, 0, 0x00df, 0, 0, 0 },
- [KC_N] = { 0, 0, 0, 0, 0, 0x00d1 },
- [KC_C] = { 0, 0, 0, 0, 0x00c7, 0 },
-};
-
-// The uncombined and combined forms of the accents, for when we want to emit them as single
-// characters.
-const uint16_t PROGMEM uncombined_accents[KC_NUM_ACCENTS] = {
- [KC_CGRV - KC_ACCENT_START] = 0x0060,
- [KC_CAGU - KC_ACCENT_START] = 0x00b4,
- [KC_CDIA - KC_ACCENT_START] = 0x00a8,
- [KC_CCIR - KC_ACCENT_START] = 0x005e,
- [KC_CCED - KC_ACCENT_START] = 0x00b8,
- [KC_CTIL - KC_ACCENT_START] = 0x02dc,
-};
-
-const uint16_t PROGMEM combined_accents[KC_NUM_ACCENTS] = {
- [KC_CGRV - KC_ACCENT_START] = 0x0300,
- [KC_CAGU - KC_ACCENT_START] = 0x0301,
- [KC_CDIA - KC_ACCENT_START] = 0x0308,
- [KC_CCIR - KC_ACCENT_START] = 0x0302,
- [KC_CCED - KC_ACCENT_START] = 0x0327,
- [KC_CTIL - KC_ACCENT_START] = 0x0303,
-};
-
-// This function manages keypresses that happen after an accent has been selected by an earlier
-// keypress.
-// Args:
-// accent_key: The accent key which was earlier selected. This must be in the range
-// [KC_ACCENT_START, KC_ACCENT_END).
-// keycode: The keycode which was just pressed.
-// is_shifted: The current shift state (as set by a combination of shift and caps lock)
-// force_no_accent: If true, we're in a situation where we want to force there to be no
-// accent combination -- if e.g. we're in a non-QWERTY layer, or if other modifier keys
-// are held.
-//
-// Returns true if the keycode has been completely handled by this function (and so should not be
-// processed further by process_record_user) or false otherwise.
-bool process_key_after_accent(
- uint16_t accent_key,
- uint16_t keycode,
- bool is_shifted,
- bool force_no_accent
-) {
- assert(accent_key >= KC_ACCENT_START);
- assert(accent_key < KC_ACCENT_END);
- const int accent_index = accent_key - KC_ACCENT_START;
-
- // If the keycode is outside A..Z, or force_no_accent is set, we know we shouldn't even bother
- // with a table lookup.
- if (keycode <= KC_Z && !force_no_accent) {
- // Pick the correct array. Because this is progmem, we're going to need to do the
- // two-dimensional array indexing by hand, and so we just cast it to a single-dimensional array.
- const uint16_t *points = (const uint16_t*)(is_shifted ? shifted_accents : unshifted_accents);
- const uint16_t code_point = pgm_read_word_near(points + KC_NUM_ACCENTS * keycode + accent_index);
- if (code_point) {
- register_unicode(code_point);
- return true;
- }
- }
-
- // If we get here, there was no accent match. Emit the accent as its own character, and then let
- // the caller figure out what to do next.
- register_unicode(pgm_read_word_near(uncombined_accents + accent_index));
- return false;
-}
-
-// Layer bitfields.
-#define GREEK_LAYER (1UL << _GREEK)
-#define SHIFTGREEK_LAYER (1UL << _SHIFTGREEK)
-#define CADET_LAYER (1UL << _CADET)
-#define SHIFTCADET_LAYER (1UL << _SHIFTCADET)
-// The layers we don't touch.
-#define LAYER_MASK ~(GREEK_LAYER|SHIFTGREEK_LAYER|CADET_LAYER|SHIFTCADET_LAYER)
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- // We track these persistent globals and manage them on our own, rather than trying to rely on
- // get_mods or the like, because this function is called *before* that's updated!
- static bool shift_held = false;
- static bool alt_held = false;
- static bool ctrl_held = false;
- static bool super_held = false;
- static bool greek_held = false;
- static bool cadet_held = false;
-
- // These are where we remember the values of lock states.
- static bool shift_lock = false;
- static int layer_lock = _QWERTY;
-
- // The accent request, or zero if there isn't one.
- static uint16_t accent_request = 0;
-
- // If this is set to true, don't trigger any handling of pending accent requests. That's what we
- // want to do if e.g. the user just hit the shift key or something.
- bool ignore_accent_change = !record->event.pressed;
-
- // Step 1: Process any modifier key state changes, so we can maintain that state.
- if (keycode == KC_LSFT || keycode == KC_RSFT) {
- shift_held = record->event.pressed;
- ignore_accent_change = true;
- } else if (keycode == KC_LALT || keycode == KC_RALT) {
- alt_held = record->event.pressed;
- ignore_accent_change = true;
- } else if (keycode == KC_LCTL || keycode == KC_RCTL) {
- ctrl_held = record->event.pressed;
- ignore_accent_change = true;
- } else if (keycode == KC_LGUI || keycode == KC_RGUI) {
- super_held = record->event.pressed;
- ignore_accent_change = true;
- } else if (keycode == KC_GREEK) {
- greek_held = record->event.pressed;
- ignore_accent_change = true;
- } else if (keycode == KC_CADET) {
- cadet_held = record->event.pressed;
- ignore_accent_change = true;
- }
-
- // Step 2: Figure out which layer we're supposed to be in, by transforming all the prior stuff
- // into layer requests.
- const bool greek_request = (greek_held && !alt_held);
- const bool cadet_request = (cadet_held || (greek_held && alt_held));
-
- // Now, handle the lock keys. We store next_layer_lock in a local variable so that we can
- // determine the layer to pick right now before we update layer_lock.
- int next_layer_lock = layer_lock;
- if (keycode == KC_CAPS) {
- // If we're in QWERTY mode, caps lock is already going to be managed by the host OS, but by
- // tracking it ourselves we can also usefully apply it to the GREEK and CADET layers.
- if (record->event.pressed) {
- shift_lock = !shift_lock;
- }
- } else if (keycode == KC_LAYER_LOCK) {
- if (record->event.pressed) {
- if (cadet_request) {
- next_layer_lock = _CADET;
- } else if (greek_request) {
- next_layer_lock = _GREEK;
- } else {
- next_layer_lock = _QWERTY;
- }
- }
- }
-
- // OK! Now we know which buttons are being held, and the current and upcoming states of the locks.
- // We can compute our new base layer. Remember that the CADET and GREEK keys act as their own
- // antonyms if they match the layer lock -- e.g., if you have CADET locked, then CADET+X generates
- // QWERTY-X.
- int base_layer;
- if (cadet_request) {
- base_layer = (layer_lock == _CADET ? _QWERTY : _CADET);
- } else if (greek_request) {
- base_layer = (layer_lock == _GREEK ? _QWERTY : _GREEK);
- } else {
- base_layer = layer_lock;
- }
-
- const bool shifted = (shift_held != shift_lock);
- int actual_layer;
- if (base_layer == _CADET) {
- actual_layer = (shifted ? _SHIFTCADET : _CADET);
- } else if (base_layer == _GREEK) {
- actual_layer = (shifted ? _SHIFTGREEK : _GREEK);
- } else {
- // We don't do shifting for the QWERTY layer, since for that we emit USB HID codes and shifting
- // is managed by the host OS.
- actual_layer = _QWERTY;
- }
-
- // And now we can update the layer lock and the actual firmware layer selector.
- layer_lock = next_layer_lock;
- layer_state_t new_layer_state = (layer_state & LAYER_MASK) | (1UL << actual_layer);
- if (new_layer_state != layer_state) {
- layer_state_set(new_layer_state);
- }
-
- // Step 3: Handle accents. If there's a pending accent request, process it. If what the user just
- // hit creates a new accent request, update the pending state for the next keypress.
- if (!ignore_accent_change && accent_request && record->event.pressed) {
- // Only do the accent stuff if we're in the QWERTY layer and we aren't modifying something.
- const bool force_no_accent = (
- actual_layer != _QWERTY ||
- ctrl_held ||
- super_held ||
- alt_held
- );
- const uint16_t old_accent = accent_request;
- accent_request = 0;
- if (process_key_after_accent(old_accent, keycode, shifted, force_no_accent)) {
- return false;
- }
- }
-
- // And if a new accent request just arrived, update accent_request.
- if (keycode >= KC_ACCENT_START && keycode < KC_ACCENT_END && record->event.pressed) {
- if (shifted) {
- // Shift + accent request generates the combining accent key, and leaves accent_request alone.
- register_unicode(pgm_read_word_near(combined_accents + keycode - KC_ACCENT_START));
- return false;
- } else {
- accent_request = keycode;
- }
- }
-
- return true;
-}
diff --git a/keyboards/ymdk/melody96/matrix_diagram.md b/keyboards/ymdk/melody96/matrix_diagram.md
deleted file mode 100644
index e589bcc469..0000000000
--- a/keyboards/ymdk/melody96/matrix_diagram.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Matrix Diagram for YMDK Melody96
-
-```
-┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
-│50 │51 │52 │53 │54 │55 │56 │57 │58 │B8 │B7 │B5 │B4 │B3 │B6 │B2 │B1 │B0 │63 │
-├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ ┌───────┐
-│40 │41 │42 │43 │44 │45 │56 │47 │48 │A8 │A7 │A5 │A4 │A3 │A6 │A2 │A1 │A0 │64 │ │A6 │ 2u Backpsace
-├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┼───┼───┼───┤ └─┬─────┤ ┌───┐
-│30 │31 │32 │33 │34 │35 │36 │37 │38 │98 │97 │95 │94 │84 │96 │92 │91 │90 │ │ │ │ │
-├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┼───┤ ┌──┴┐93 │ ISO Enter │80 │ Numpad "+" 2u
-│20 │21 │22 │23 │24 │25 │26 │27 │28 │88 │87 │85 │93 │86 │82 │81 │80 │ │84 │ │ │ │
-├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┼───┤ └───┴────┘ ├───┤
-│10 │11 │12 │13 │14 │15 │16 │17 │18 │78 │77 │75 │74 │73 │76 │72 │71 │70 │ │ │
-├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┼───┼───┼───┤ ┌───────┐ │60 │ Numpad Enter 2U
-│00 │01 │02 │06 │08 │07 │05 │04 │03 │66 │62 │61 │60 │ Numpad 0 2u │62 │ │ │
-└────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┴───┴───┴───┘ └───────┘ └───┘
-┌────────┐ ┌──────────┐
-│10 │ 2.25u LShift 2.75u RShift │74 │
-└────────┘ └──────────┘
-┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐
-│00 │01 │02 │06 │08 │07 │04 │03 │ 4x1.25u Right Mod
-└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
-┌─────┬─────┬───────────────────────────┬───┬───┬───┬───┬───┐
-│00 │01 │06 │08 │07 │05 │04 │03 │ 2x1.5u Left Mod
-└─────┴─────┴───────────────────────────┴───┴───┴───┴───┴───┘
-┌─────┬───┬─────┬───────────────────────┬─────┬─────┬───┬───┐
-│00 │01 │02 │06 │08 │05 │04 │03 │ Tsangan Left Mod, 2x1.5u-2x1u Right Mod
-└─────┴───┴─────┴───────────────────────┴─────┴─────┴───┴───┘
-┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
-│00 │01 │02 │06 │07 │04 │03 │ Tsangan/WKL/HHKB
-└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
-┌─────┬───┬─────┬───────────────────────────┬───┬───┬───┬───┐
-│00 │01 │02 │06 │07 │05 │04 │03 │ 4x1u Right Mod
-└─────┴───┴─────┴───────────────────────────┴───┴───┴───┴───┘
-```
diff --git a/keyboards/ymdk/melody96/readme.md b/keyboards/ymdk/melody96/readme.md
deleted file mode 100644
index e0e57a081e..0000000000
--- a/keyboards/ymdk/melody96/readme.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# YMDK Melody96 Soldered
-
-![melody96](https://i.imgur.com/9o0a6XFh.png)
-
-96-key Keyboard from YMDK. The PCB for this board is also commonly used in the NYM96.
-
-* Keyboard Maintainer: [superuser41](https://github.com/kaylanm)
-* Hardware Supported: Melody96 Soldered PCBs
-* Hardware Availability: [YMDK on Geekhack, group buy closed](https://geekhack.org/index.php?topic=93614.0), [NYM96 on Massdrop](https://www.massdrop.com/buy/nym96-aluminum-mechanical-keyboard?mode=guest_open)
-
-Make example for this keyboard (after setting up your build environment):
-
- make ymdk/melody96:default
-
-Flashing example for this keyboard:
-
- make ymdk/melody96:default:flash
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/ymdk/melody96/rules.mk b/keyboards/ymdk/melody96/rules.mk
index 3d5cb57ad5..806543977b 100644
--- a/keyboards/ymdk/melody96/rules.mk
+++ b/keyboards/ymdk/melody96/rules.mk
@@ -1,12 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
+DEFAULT_FOLDER = ymdk/melody96/soldered
diff --git a/keyboards/ymdk/melody96/config.h b/keyboards/ymdk/melody96/soldered/config.h
index 5f36081323..5f36081323 100644
--- a/keyboards/ymdk/melody96/config.h
+++ b/keyboards/ymdk/melody96/soldered/config.h
diff --git a/keyboards/ymdk/melody96/info.json b/keyboards/ymdk/melody96/soldered/info.json
index f941c65970..f941c65970 100644
--- a/keyboards/ymdk/melody96/info.json
+++ b/keyboards/ymdk/melody96/soldered/info.json
diff --git a/keyboards/ymdk/melody96/keymaps/crilith/keymap.c b/keyboards/ymdk/melody96/soldered/keymaps/crilith/keymap.c
index e5eff6ee9d..e5eff6ee9d 100644
--- a/keyboards/ymdk/melody96/keymaps/crilith/keymap.c
+++ b/keyboards/ymdk/melody96/soldered/keymaps/crilith/keymap.c
diff --git a/keyboards/ymdk/melody96/keymaps/default/keymap.c b/keyboards/ymdk/melody96/soldered/keymaps/default/keymap.c
index cc5a7cc0e5..cc5a7cc0e5 100644
--- a/keyboards/ymdk/melody96/keymaps/default/keymap.c
+++ b/keyboards/ymdk/melody96/soldered/keymaps/default/keymap.c
diff --git a/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c b/keyboards/ymdk/melody96/soldered/keymaps/default_96_with60_split_num0/keymap.c
index 6e4af827d6..6e4af827d6 100644
--- a/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c
+++ b/keyboards/ymdk/melody96/soldered/keymaps/default_96_with60_split_num0/keymap.c
diff --git a/keyboards/ymdk/melody96/keymaps/dvz/config.h b/keyboards/ymdk/melody96/soldered/keymaps/dvz/config.h
index 380e11a3a1..380e11a3a1 100644
--- a/keyboards/ymdk/melody96/keymaps/dvz/config.h
+++ b/keyboards/ymdk/melody96/soldered/keymaps/dvz/config.h
diff --git a/keyboards/ymdk/melody96/keymaps/dvz/keymap.c b/keyboards/ymdk/melody96/soldered/keymaps/dvz/keymap.c
index 20d4d1e510..20d4d1e510 100644
--- a/keyboards/ymdk/melody96/keymaps/dvz/keymap.c
+++ b/keyboards/ymdk/melody96/soldered/keymaps/dvz/keymap.c
diff --git a/keyboards/ymdk/melody96/keymaps/dvz/readme.md b/keyboards/ymdk/melody96/soldered/keymaps/dvz/readme.md
index d82055244e..d82055244e 100644
--- a/keyboards/ymdk/melody96/keymaps/dvz/readme.md
+++ b/keyboards/ymdk/melody96/soldered/keymaps/dvz/readme.md
diff --git a/keyboards/ymdk/melody96/keymaps/dvz/rules.mk b/keyboards/ymdk/melody96/soldered/keymaps/dvz/rules.mk
index a1e85f13f4..a1e85f13f4 100644
--- a/keyboards/ymdk/melody96/keymaps/dvz/rules.mk
+++ b/keyboards/ymdk/melody96/soldered/keymaps/dvz/rules.mk
diff --git a/keyboards/ymdk/melody96/keymaps/via/keymap.c b/keyboards/ymdk/melody96/soldered/keymaps/via/keymap.c
index 897d86acb7..897d86acb7 100644
--- a/keyboards/ymdk/melody96/keymaps/via/keymap.c
+++ b/keyboards/ymdk/melody96/soldered/keymaps/via/keymap.c
diff --git a/keyboards/ymdk/melody96/keymaps/via/rules.mk b/keyboards/ymdk/melody96/soldered/keymaps/via/rules.mk
index 36b7ba9cbc..36b7ba9cbc 100644
--- a/keyboards/ymdk/melody96/keymaps/via/rules.mk
+++ b/keyboards/ymdk/melody96/soldered/keymaps/via/rules.mk
diff --git a/keyboards/ymdk/melody96/soldered/matrix_diagram.md b/keyboards/ymdk/melody96/soldered/matrix_diagram.md
new file mode 100644
index 0000000000..af8ba0ec81
--- /dev/null
+++ b/keyboards/ymdk/melody96/soldered/matrix_diagram.md
@@ -0,0 +1,35 @@
+# Matrix Diagram for YMDK Melody96 Soldered
+
+```
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
+│50 │51 │52 │53 │54 │55 │56 │57 │58 │B8 │B7 │B5 │B4 │B3 │B6 │B2 │B1 │B0 │63 │
+├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ ┌───────┐
+│40 │41 │42 │43 │44 │45 │56 │47 │48 │A8 │A7 │A5 │A4 │A3 │A6 │A2 │A1 │A0 │64 │ │A6 │ 2u Backpsace
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┼───┼───┼───┤ └─┬─────┤ ┌───┐
+│30 │31 │32 │33 │34 │35 │36 │37 │38 │98 │97 │95 │94 │84 │96 │92 │91 │90 │ │ │ │ │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┼───┤ ┌──┴┐93 │ ISO Enter │80 │ Numpad "+" 2u
+│20 │21 │22 │23 │24 │25 │26 │27 │28 │88 │87 │85 │93 │86 │82 │81 │80 │ │84 │ │ │ │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┼───┤ └───┴────┘ ├───┤
+│10 │11 │12 │13 │14 │15 │16 │17 │18 │78 │77 │75 │74 │73 │76 │72 │71 │70 │ │ │
+├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┼───┼───┼───┤ ┌───────┐ │60 │ Numpad Enter 2U
+│00 │01 │02 │06 │08 │07 │05 │04 │03 │66 │62 │61 │60 │ Numpad 0 2u │62 │ │ │
+└────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┴───┴───┴───┘ └───────┘ └───┘
+┌────────┐ ┌──────────┐
+│10 │ 2.25u LShift 2.75u RShift │74 │
+└────────┘ └──────────┘
+┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐
+│00 │01 │02 │06 │08 │07 │04 │03 │ 4x1.25u Right Mod
+└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+┌─────┬─────┬───────────────────────────┬───┬───┬───┬───┬───┐
+│00 │01 │06 │08 │07 │05 │04 │03 │ 2x1.5u Left Mod
+└─────┴─────┴───────────────────────────┴───┴───┴───┴───┴───┘
+┌─────┬───┬─────┬───────────────────────┬─────┬─────┬───┬───┐
+│00 │01 │02 │06 │08 │05 │04 │03 │ Tsangan Left Mod, 2x1.5u-2x1u Right Mod
+└─────┴───┴─────┴───────────────────────┴─────┴─────┴───┴───┘
+┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
+│00 │01 │02 │06 │07 │04 │03 │ Tsangan/WKL/HHKB
+└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
+┌─────┬───┬─────┬───────────────────────────┬───┬───┬───┬───┐
+│00 │01 │02 │06 │07 │05 │04 │03 │ 4x1u Right Mod
+└─────┴───┴─────┴───────────────────────────┴───┴───┴───┴───┘
+```
diff --git a/keyboards/ymdk/melody96/soldered/readme.md b/keyboards/ymdk/melody96/soldered/readme.md
new file mode 100644
index 0000000000..8cd3889a6c
--- /dev/null
+++ b/keyboards/ymdk/melody96/soldered/readme.md
@@ -0,0 +1,19 @@
+# YMDK Melody96 Soldered
+
+![melody96](https://i.imgur.com/9o0a6XFh.png)
+
+96-key Keyboard from YMDK. The PCB for this board is also commonly used in the NYM96.
+
+* Keyboard Maintainer: [superuser41](https://github.com/kaylanm)
+* Hardware Supported: Melody96 Soldered PCBs
+* Hardware Availability: [YMDK on Geekhack, group buy closed](https://geekhack.org/index.php?topic=93614.0), [NYM96 on Massdrop](https://www.massdrop.com/buy/nym96-aluminum-mechanical-keyboard?mode=guest_open)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make ymdk/melody96/soldered:default
+
+Flashing example for this keyboard:
+
+ make ymdk/melody96/soldered:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/ymdk/melody96/soldered/rules.mk b/keyboards/ymdk/melody96/soldered/rules.mk
new file mode 100644
index 0000000000..3d5cb57ad5
--- /dev/null
+++ b/keyboards/ymdk/melody96/soldered/rules.mk
@@ -0,0 +1,12 @@
+# Build Options
+# change yes to no to disable
+#
+BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
+MOUSEKEY_ENABLE = yes # Mouse keys
+EXTRAKEY_ENABLE = yes # Audio control and System control
+CONSOLE_ENABLE = no # Console for debug
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = yes # Enable N-Key Rollover
+BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
+AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/ymdk/sp64/rules.mk b/keyboards/ymdk/sp64/rules.mk
index df9380f361..56da806510 100644
--- a/keyboards/ymdk/sp64/rules.mk
+++ b/keyboards/ymdk/sp64/rules.mk
@@ -14,4 +14,4 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
CUSTOM_MATRIX = yes
SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/z12/keymaps/zigotica/config.h b/keyboards/z12/keymaps/zigotica/config.h
deleted file mode 100644
index eaae9053d1..0000000000
--- a/keyboards/z12/keymaps/zigotica/config.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X32
-#endif
-
-// EC11 encoders' resolution.
-// Reduce the value to 2 if you feel missing values:
-#define ENCODER_RESOLUTION 4
-
-// Allows correct registered values by rotary encoder:
-#define TAP_CODE_DELAY 10
diff --git a/keyboards/z12/keymaps/zigotica/encoder.c b/keyboards/z12/keymaps/zigotica/encoder.c
deleted file mode 100644
index f55b9b5ae9..0000000000
--- a/keyboards/z12/keymaps/zigotica/encoder.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-
-bool encoder_update_user(uint8_t index, bool clockwise) {
- switch(get_highest_layer(layer_state)){
- case _VIM:
- if (index == 0) { // LEFT
- // Cycle through buffers
- if (clockwise) {
- register_code(KC_ESC);
- SEND_STRING(":bprevious");
- register_code(KC_ENT);
- unregister_code(KC_ESC);
- unregister_code(KC_ENT);
- } else {
- register_code(KC_ESC);
- SEND_STRING(":bnext");
- register_code(KC_ENT);
- unregister_code(KC_ESC);
- unregister_code(KC_ENT);
- }
- } else { // RIGHT
- // Scroll
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
- break;
- case _BROWSER:
- if (index == 0) { // LEFT
- // Cycle through Tabs
- if (clockwise) {
- tap_code16(C(KC_TAB));
- } else {
- tap_code16(S(C(KC_TAB)));
- }
- } else { // RIGHT
- // Scroll up/down
- if (clockwise) {
- register_code(KC_WH_U);
- unregister_code(KC_WH_U);
- } else {
- register_code(KC_WH_D);
- unregister_code(KC_WH_D);
- }
- }
- break;
- case _FIGMA:
- if (index == 0) { // LEFT
- // Cycle through Tabs
- if (clockwise) {
- tap_code16(C(KC_TAB));
- } else {
- tap_code16(S(C(KC_TAB)));
- }
- } else { // RIGHT
- // Zoom in/out
- if (clockwise) {
- register_code(KC_LGUI);
- register_code(KC_WH_D);
- unregister_code(KC_WH_D);
- unregister_code(KC_LGUI);
- } else {
- register_code(KC_LGUI);
- register_code(KC_WH_U);
- unregister_code(KC_WH_U);
- unregister_code(KC_LGUI);
- }
- }
- break;
- case _BASE:
- default:
- if (index == 0) { // LEFT
- // Volume control.
- if (clockwise) {
- tap_code(KC_VOLU);
- } else {
- tap_code(KC_VOLD);
- }
- } else { // RIGHT
- // Scroll
- if (clockwise) {
- tap_code(KC_PGDN);
- } else {
- tap_code(KC_PGUP);
- }
- }
- break;
- }
- return false;
-}
-
-
diff --git a/keyboards/z12/keymaps/zigotica/encoder.h b/keyboards/z12/keymaps/zigotica/encoder.h
deleted file mode 100644
index 2422c68f28..0000000000
--- a/keyboards/z12/keymaps/zigotica/encoder.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-#include "zigotica.h"
diff --git a/keyboards/z12/keymaps/zigotica/keymap.c b/keyboards/z12/keymaps/zigotica/keymap.c
deleted file mode 100644
index f4f5709fe0..0000000000
--- a/keyboards/z12/keymaps/zigotica/keymap.c
+++ /dev/null
@@ -1,189 +0,0 @@
-/* Copyright 2020
- Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-#include "raw_hid.h"
-
-#ifdef RAW_ENABLE
-void raw_hid_receive(uint8_t* data, uint8_t length) {
- layer_clear();
- if (data[0] == 99) {
- layer_on(_BASE);
- }
- else {
- layer_on(data[0]);
- }
-}
-#endif
-
-// Custom Keycodes
-#define MODE_1 TO(_BASE)
-#define MODE_2 TO(_FIGMA)
-#define MODE_3 TO(_BROWSER)
-#define MODE_4 TO(_VIM)
-
-enum custom_keycodes {
- VIM_SIF = SAFE_RANGE,
- VIM_FORMAT,
- VIM_GODEF,
- VIM_RENSYM,
- VIM_CODEACT,
- VIM_NEW
-};
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case VIM_SIF:// Search in File
- if (record->event.pressed) {
- register_code(KC_ESC);
- tap_code(KC_SPACE);
- tap_code(KC_S);
- tap_code(KC_C);
- } else { // released
- unregister_code(KC_ESC);
- }
- break;
- case VIM_FORMAT:// Autoformat file
- if (record->event.pressed) {
- register_code(KC_ESC);
- tap_code(KC_F9);
- } else { // released
- unregister_code(KC_ESC);
- }
- break;
- case VIM_GODEF:// Go to Definition
- if (record->event.pressed) {
- register_code(KC_ESC);
- tap_code(KC_G);
- tap_code(KC_D);
- } else { // released
- unregister_code(KC_ESC);
- }
- break;
- case VIM_CODEACT:// Code actions
- if (record->event.pressed) {
- register_code(KC_ESC);
- tap_code(KC_SPACE);
- tap_code(KC_C);
- tap_code(KC_A);
- } else { // released
- unregister_code(KC_ESC);
- }
- break;
- case VIM_RENSYM:// Rename symbol
- if (record->event.pressed) {
- register_code(KC_ESC);
- tap_code(KC_SPACE);
- tap_code(KC_R);
- } else { // released
- unregister_code(KC_ESC);
- }
- break;
- case VIM_NEW:// New buffer
- if (record->event.pressed) {
- SEND_STRING("\e:vnew\n");
- } else { // released
- unregister_code(KC_ENT);
- unregister_code(KC_ESC);
- }
- break;
- }
- return true;
-};
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * BASE Layer
- *
- * ,-----------------------------.
- * | | BASE | FIGM | |
- * |-------+------+------+-------|
- * |VOL/PLY| BROW | VIM | SCROLL|
- * |-------+------+------+-------|
- * |-------+-------+-------|
- * | o | o | o |
- * |-------+-------+-------|
- * | o | o | o |
- * |-------+-------+-------|
- */
- [_BASE] = LAYOUT(
- MODE_1, MODE_2,
- ZK_MEDIA, MODE_3, MODE_4, _______,
- _______, _______, _______,
- _______, _______, _______
- ),
-/*
- * FIGMA Layer
- *
- * ,-----------------------------.
- * | | BASE | FIGM | |
- * |-------+------+------+-------|
- * | TABS | BROW | VIM | ZOOM |
- * |-------+------+------+-------|
- * |-------+-------+-------|
- * |ZOOMFIT| GRIDS | FULL |
- * |-------+-------+-------|
- * |ZOOM100| NEXT | COLOR |
- * |-------+-------+-------|
- */
- [_FIGMA] = LAYOUT(
- _______, _______,
- _______, _______, _______, _______,
- LSFT(KC_1), LCTL(KC_G), LGUI(KC_BSLS),
- LSFT(KC_0), KC_N, LCTL(KC_C)
- ),
-/*
- * BROWSER Layer
- *
- * ,-----------------------------.
- * | | BASE | FIGM | |
- * |-------+------+------+-------|
- * | TABS | BROW | VIM | SCROLL|
- * |-------+------+------+-------|
- * |-------+-------+-------|
- * |SEARCH | BOOKM | DEVTL |
- * |-------+-------+-------|
- * |ZOOM100| MUTE | READ |
- * |-------+-------+-------|
- */
- [_BROWSER] = LAYOUT(
- _______, _______,
- _______, _______, _______, _______,
- G(KC_F), G(KC_D), G(A(KC_I)),
- G(KC_0), C(KC_M), G(A(KC_R))
- ),
-/*
- * VIM Layer
- *
- * ,-----------------------------.
- * | | BASE | FIGM | |
- * |-------+------+------+-------|
- * |BUFFER | BROW | VIM | SCROLL|
- * |-------+------+------+-------|
- * |-------+-------+-------|
- * |SRCH FL| FORMAT|NEW BUF|
- * |-------+-------+-------|
- * |REN SYM|GO DEF |CODEACT|
- * |-------+-------+-------|
- */
- [_VIM] = LAYOUT(
- _______, _______,
- _______, _______, _______, _______,
- VIM_SIF, VIM_FORMAT, VIM_NEW,
- VIM_RENSYM, VIM_GODEF, VIM_CODEACT
- ),
-};
diff --git a/keyboards/z12/keymaps/zigotica/oled.c b/keyboards/z12/keymaps/zigotica/oled.c
deleted file mode 100644
index c1befb08d3..0000000000
--- a/keyboards/z12/keymaps/zigotica/oled.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-
-static void render_status(void) {
- switch (get_highest_layer(layer_state)) {
- case _BASE:
- oled_write_P(PSTR("Volume Scroll"), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(" z12 v1.1"), false);
- break;
- case _FIGMA:
- oled_write_P(PSTR("Tabs Zoom"), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("ZoomFit Grids Full"), false);
- oled_write_P(PSTR("Zoom100 Next Color"), false);
- break;
- case _BROWSER:
- oled_write_P(PSTR("Tabs Scroll"), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("Search Fav DevTool"), false);
- oled_write_P(PSTR("Zoom100 Mute Read"), false);
- break;
- case _VIM:
- oled_write_P(PSTR("Buffer Scroll"), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR("Find-F Format New"), false);
- oled_write_P(PSTR("Rename Go-Def Action"), false);
- break;
- default:
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(" "), false);
- oled_write_P(PSTR(" "), false);
- }
-}
-
-bool oled_task_user(void) {
- render_status();
- return false;
-}
diff --git a/keyboards/z12/keymaps/zigotica/oled.h b/keyboards/z12/keymaps/zigotica/oled.h
deleted file mode 100644
index 2422c68f28..0000000000
--- a/keyboards/z12/keymaps/zigotica/oled.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-#include "zigotica.h"
diff --git a/keyboards/z12/keymaps/zigotica/readme.md b/keyboards/z12/keymaps/zigotica/readme.md
deleted file mode 100644
index a3746a88d2..0000000000
--- a/keyboards/z12/keymaps/zigotica/readme.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# zigotica's z12 Layout
-
-This layout uses `RAW_ENABLE = yes`, and benefits from [active-app-qmk-layer-updater](https://github.com/zigotica/active-app-qmk-layer-updater) node script (run by the host system) to change layers programmatically depending on the current active app.
diff --git a/keyboards/z12/keymaps/zigotica/rules.mk b/keyboards/z12/keymaps/zigotica/rules.mk
deleted file mode 100644
index 02e37aa80b..0000000000
--- a/keyboards/z12/keymaps/zigotica/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-OLED_ENABLE = yes # Enables the use of OLED displays
-RAW_ENABLE = yes
-TAP_DANCE_ENABLE = yes
-MOUSEKEY_ENABLE = yes
diff --git a/keyboards/z34/keymaps/zigotica/config.h b/keyboards/z34/keymaps/zigotica/config.h
deleted file mode 100644
index 9fe28b9675..0000000000
--- a/keyboards/z34/keymaps/zigotica/config.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#pragma once
-
-
-#define MASTER_RIGHT
-
-// these should work better for homerow modifiers
-#define TAPPING_TERM 350
-#define PERMISSIVE_HOLD
-#define QUICK_TAP_TERM 0
-
diff --git a/keyboards/z34/keymaps/zigotica/keymap.c b/keyboards/z34/keymaps/zigotica/keymap.c
deleted file mode 100644
index 88c6a3db1b..0000000000
--- a/keyboards/z34/keymaps/zigotica/keymap.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright 2020 Sergi Meseguer <zigotica@gmail.com>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "zigotica.h"
-
-#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [BASE] = LAYOUT_wrapper(
- _STENAI_L1, _STENAI_R1,
- _STENAI_L2, _STENAI_R2,
- _STENAI_L3, _STENAI_R3,
- _STENAI_LT, _STENAI_RT
- ),
-
- [_NUM] = LAYOUT_wrapper(
- ____NUM_L1, ____NUM_R1,
- ____NUM_L2, ____NUM_R2,
- ____NUM_L3, ____NUM_R3,
- ____NUM_LT, ____NUM_RT
- ),
-
- [_NAV] = LAYOUT_wrapper(
- ____NAV_L1, ____NAV_R1,
- ____NAV_L2, ____NAV_R2,
- ____NAV_L3, ____NAV_R3,
- ____NAV_LT, ____NAV_RT
- ),
-
- [_SYM] = LAYOUT_wrapper(
- ____SYM_L1, ____SYM_R1,
- ____SYM_L2, ____SYM_R2,
- ____SYM_L3, ____SYM_R3,
- ____SYM_LT, ____SYM_RT
- ),
-
- [_FN] = LAYOUT_wrapper(
- ____FN_L1, ____FN_R1,
- ____FN_L2, ____FN_R2,
- ____FN_L3, ____FN_R3,
- ____FN_LT, ____FN_RT
- ),
-};
-
diff --git a/keyboards/z34/keymaps/zigotica/rules.mk b/keyboards/z34/keymaps/zigotica/rules.mk
deleted file mode 100644
index 9abdfb40b4..0000000000
--- a/keyboards/z34/keymaps/zigotica/rules.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-# There are no extra pins, so we make sure to disable OLED and Encoders
-OLED_SUPPORTED = no
-ENCODER_SUPPORTED = no
-
-MOUSEKEY_ENABLE = yes
-COMBO_ENABLE = yes
-TAP_DANCE_ENABLE = yes
diff --git a/keyboards/zoo/wampus/config.h b/keyboards/zoo/wampus/config.h
index eafc776bef..e0ddfaca88 100644
--- a/keyboards/zoo/wampus/config.h
+++ b/keyboards/zoo/wampus/config.h
@@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define BACKLIGHT_PAL_MODE 1
// SPI RGB Driver
-#define WS2812_SPI SPID2
+#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13
diff --git a/keyboards/zykrah/fuyu/config.h b/keyboards/zykrah/fuyu/config.h
index 0f24dfe7e3..20b0feb523 100644
--- a/keyboards/zykrah/fuyu/config.h
+++ b/keyboards/zykrah/fuyu/config.h
@@ -14,8 +14,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
diff --git a/keyboards/zykrah/fuyu/info.json b/keyboards/zykrah/fuyu/info.json
index 874114bfca..5431d14329 100644
--- a/keyboards/zykrah/fuyu/info.json
+++ b/keyboards/zykrah/fuyu/info.json
@@ -19,6 +19,9 @@
"rgb_matrix": true
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
"matrix_pins": {
"rows": ["GP13", "GP12", "GP11", "GP10", "GP15", "GP14"],
"cols": ["GP29", "GP28", "GP26", "GP25", "GP24", "GP23", "GP22", "GP21", "GP20", "GP19", "GP18", "GP17", "GP16", "GP27", "GP9", "GP1", "GP0"]
diff --git a/keyboards/zykrah/fuyu/keymaps/via/keymap.c b/keyboards/zykrah/fuyu/keymaps/via/keymap.c
index 11f33854ce..95eb2692cb 100644
--- a/keyboards/zykrah/fuyu/keymaps/via/keymap.c
+++ b/keyboards/zykrah/fuyu/keymaps/via/keymap.c
@@ -73,15 +73,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Code for Caps Locks indicator
#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
-#define CAPS_LOCK_MAX_BRIGHTNESS 0xFF
-#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS
- #undef CAPS_LOCK_MAX_BRIGHTNESS
+#if !defined(CAPS_LOCK_MAX_BRIGHTNESS)
#define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
#endif
-#define CAPS_LOCK_VAL_STEP 8
-#ifdef RGB_MATRIX_VAL_STEP
- #undef CAPS_LOCK_VAL_STEP
+#if !defined(CAPS_LOCK_VAL_STEP)
#define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP
#endif
@@ -106,7 +102,7 @@ bool rgb_matrix_indicators_user(void) {
#if defined(RGB_MATRIX_ENABLE)
#define INDICATOR_RGB_DIVISOR 4
-extern LED_TYPE rgb_matrix_ws2812_array[DRIVER_LED_TOTAL];
+extern rgb_led_t rgb_matrix_ws2812_array[DRIVER_LED_TOTAL];
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
for (uint8_t i = led_min; i < led_max; i++) {
if (g_led_config.flags[i] & LED_FLAG_INDICATOR) {
diff --git a/keyboards/zykrah/slime88/config.h b/keyboards/zykrah/slime88/config.h
index eb91a14f6e..e1a00bae4a 100644
--- a/keyboards/zykrah/slime88/config.h
+++ b/keyboards/zykrah/slime88/config.h
@@ -14,7 +14,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 6
-
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
diff --git a/keyboards/zykrah/slime88/info.json b/keyboards/zykrah/slime88/info.json
index bf1719352d..8b15524cca 100644
--- a/keyboards/zykrah/slime88/info.json
+++ b/keyboards/zykrah/slime88/info.json
@@ -18,6 +18,9 @@
"nkro": true
},
"diode_direction": "COL2ROW",
+ "dynamic_keymap": {
+ "layer_count": 6
+ },
"matrix_pins": {
"rows": ["GP2", "GP29", "GP28", "GP27", "GP11", "GP12"],
"cols": ["GP26", "GP25", "GP24", "GP23", "GP22", "GP21", "GP20", "GP19", "GP18", "GP17", "GP16", "GP15", "GP14", "GP13", "GP0", "GP1", "GP3"]