1
0

Compare commits

...

116 Commits

Author SHA1 Message Date
Michael Büchler
4d994458f0 Document the RP2040-specific PS/2 implementation (#22079)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2023-09-25 13:00:13 +10:00
Andrew Kannan
c10a46aa43 Add is0gr to QMK (#22024)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
2023-09-25 12:59:38 +10:00
Duncan Sutherland
e3cbd8a965 amend 75_(ansi|iso) community_layouts in keyboards/ (#21837) 2023-09-25 12:57:18 +10:00
Duncan Sutherland
2181da4b72 amend split_* community_layouts in keyboards (#21847) 2023-09-25 12:56:33 +10:00
plaublin
131bc92b77 Fix variable misspelling (#21774) 2023-09-25 12:32:50 +10:00
Ben Cooper
4ebb065f94 Fix combo_ref_from_layer respect different default layer [#21780] (#21781) 2023-09-25 12:32:20 +10:00
DeskDaily
9d3c0018c1 Added Wyvern Hotswap by BredWorks (#21141)
Co-authored-by: Neil Brian Ramirez <nightlykeyboards@gmail.com>
Co-authored-by: Neil Brian Ramirez <nightlyboards@gmail.com>
2023-09-25 12:28:48 +10:00
T.A
133be8759a included keyboard.h. To use is_keyboard_master with a split with an i… (#21571)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: tokky <tokky@localhost-live.attlocal.net>
2023-09-25 12:24:57 +10:00
Nick Brassel
9b429bd12d Revert "Update feature_rgblight.md" (#22132) 2023-09-25 11:50:35 +10:00
Tom singleton
ee4e22d5ea Update feature_rgblight.md (#21483) 2023-09-25 11:43:55 +10:00
James Young
f8884640b0 YMDK Melody96 Matrix Touch-Up (#22113)
* Correct layout/matrix diagram

Correct swapped designations for ANSI Backslash and ANSI Enter keys.

[docs]

* Correct matrix data

Correct the matrix data for:

  - `LAYOUT_all`
  - `LAYOUT_96_ansi`
  - `LAYOUT_96_ansi_splitbs`

which all had the matrix positions for ANSI Backslash and ANSI Enter swapped.

[bugfix]

* Implement `LAYOUT_hotswap` directly

Implement `LAYOUT_hotswap` as its own layout, instead of aliasing it to
`LAYOUT_96_ansi`.

[bugfix]

* Specify primary support for Soldered PCBs

Current version of codebase primarily supports Soldered PCBs.

[enhancement] [docs]
2023-09-24 00:57:08 -07:00
Shandon Anderson
26b2288bde [Keyboard] Enable RGB_TEST animation on riot_pad (#22118)
Co-authored-by: ShandonCodes <shandon@shandon.codes>
2023-09-23 13:22:44 -07:00
Ethan Perry
c0d7a43637 Add Jank RP2040 Dactyl (#21973)
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-09-23 01:34:22 -07:00
lendunistus
bd2a33fe77 Add reminder about format-json to PR Checklist (#22055) 2023-09-23 01:18:11 -07:00
James Young
9a5b631ed6 GMMK2 96% ISO: Correct layout data (#22101) 2023-09-22 23:17:15 -07:00
era
7f2f15bc1a [Keyboard] Add SIRIND Klein (#21951)
Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: jack <0x6a73@protonmail.com>
2023-09-22 22:46:13 -07:00
Daniel Osipishin
4590b808da add subrezon/lancer keyboard (#20792)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Daniel Osipishin <danielos@retarus.de>
2023-09-22 22:10:35 -07:00
Duncan Sutherland
ef214e6a3c Add 'dactyl_tracer' keyboard (#20993)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-22 21:45:34 -07:00
Nick Brassel
73ffa4594d Fix up qmk mass-compile makefile indenting. (#22115) 2023-09-23 13:07:38 +10:00
James Young
e001c3349b Shoc: physically arrange keymaps/layout macro (#22100) 2023-09-22 19:55:25 -07:00
Ryan Neff
d49edbcf14 Added OLED SSD1306 128x64 to the verified working table (#22112) 2023-09-23 12:18:37 +10:00
James Young
5cc5270aaf Royal Kludge RK G68 Community Layout Support (#22103)
* Rename `LAYOUT` to `LAYOUT_65_ansi`

[refactor]

* Enable Community Layout support

[enhancement]

* Touch-up keymaps

- fix keycode grid alignment

[style]

* Touch-up readme

- link to maintainer's GitHub profile
- specify codebase is for RGB version of RK G68
- update Hardware Availability links

[docs]
2023-09-22 15:59:41 -07:00
Nick Brassel
abd432fd7a Allow for qmk compile -kb all. (#22022) 2023-09-22 12:12:20 +10:00
Apteryks
a26e1c8b63 keymaps: Fix hacker_dvorak build. (#22102) 2023-09-21 11:17:38 -06:00
dztech
8c52bab930 add odinmini layout (#21983)
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 23:01:55 -07:00
dztech
dc2315ad85 add dz60v2 keyboard (#21862)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 23:01:38 -07:00
lalalademaxiya1
363dee82d8 Keychron q9 plus (#21399)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-09-20 22:45:36 -07:00
Charles Strahan
5858efd6c9 kimiko: mirror encoder pins between halves (#21728) 2023-09-21 06:23:18 +01:00
James Young
e91bf4583f Quarkeys Studio Z67 Hotswap Community Layout Support (#22096) 2023-09-20 22:16:22 -07:00
James Young
f543a44836 Quarkeys Studio Z67 Solder Community Layout Support (#22095) 2023-09-20 22:15:45 -07:00
Poring
4ec3e239ba [Keyboard] Add QCK-75 (#21180)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2023-09-20 20:45:29 -07:00
Duncan Sutherland
e56ea60058 amend 68_(ansi|iso) community_layouts in keyboards/ (#21835) 2023-09-20 20:02:32 -07:00
Joy Lee
4520a584e4 [Keyboard] Add rpk-001 keyboard (#21042)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Joy <chang.li@westberrytech.com>
2023-09-20 19:38:20 -07:00
temp4gh
b5b900200f Add funtions of Encoder and VIA for redragon/k667 (#21917)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: syc <squall_sha@163.com>
2023-09-20 19:36:40 -07:00
Joe Scotto
3d1b9e98a4 Add ScottoLong Keyboard (#20938)
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 19:34:16 -07:00
Joe Scotto
e55220dbe0 Add ScottoMacrodeck Macropad (#20946)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 19:33:57 -07:00
Joe Scotto
9b69921491 Add ScottoFly Keyboard (#20939)
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 19:33:27 -07:00
Joe Scotto
1c62cb7b42 Add ScottoMouse Handwired Macropad (#21074)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
2023-09-20 19:32:45 -07:00
Joe Scotto
4629d6a671 Add ScottoSlant Keyboard (#20942)
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 19:31:16 -07:00
Duncan Sutherland
6dc482b197 apply 66_(ansi|iso) to keyboards (#21834) 2023-09-20 19:14:00 -07:00
Dan Ford
22c576b40b [Keyboard] add Quokka keyboard (#20979)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-20 19:11:24 -07:00
peepeetee
fffea62005 [Keyboard] Momokai Aurora (#20419)
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2023-09-20 19:03:32 -07:00
Joel Challis
cdff9b8da7 Restrict "feature" and "animation" keys (#21895) 2023-09-20 14:13:51 +01:00
Duncan Sutherland
16ad362e67 amend 96_(ansi|iso) community_layouts in keyboards/ (#22066) 2023-09-20 03:38:36 -07:00
James Young
05dfe9f9c5 Alchemist Keyboards OGRN Layout Addition (#22080)
* Add layout/matrix diagram

[docs]

* Friendly-format `info.json`

[style]

* Add `LAYOUT_ortho_5x4`

[enhancement]

* Touch-up keymaps

- update grid-alignment (layer-to-layer consistency)
- fix box drawings

[style]

* Extend Community Layout support

Add `ortho_5x4` to supported Community Layouts.

[enhancement]
2023-09-19 23:35:37 -07:00
James Young
2742935c54 SapuSeven MacroPad12: rename LAYOUT to LAYOUT_ortho_3x4 (#22081) 2023-09-20 00:42:12 +01:00
Deddia Permana
8c92c0a59d Add OLED logo DP3000 macropad (#21936) 2023-09-19 17:08:58 -06:00
James Young
4ce3a1c1e9 Ubest VN Community Layout Support (#22070)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_65_ansi_split_bs`

[enhancement]

* Add `LAYOUT_65_ansi`

[enhancement]

* Add `LAYOUT_65_iso_split_bs`

[enhancement]

* Add `LAYOUT_65_iso`

[enhancement]

* Enable Community Layout support

[enhancement]

* Touch-up keymaps

- apply four-space indent
- grid-align keycodes

[style]
2023-09-19 15:08:09 -07:00
James Young
56a87efbac DZTech Pluto Community Layout support (#22069)
* Add layout/matrix diagram

[docs]

* Friendly-format `info.json`

- apply four-space indent
- sort JSON keys in layout objects

[style]

* Correct `LAYOUT_all` data

Correct key sizes/positions of:

- ANSI Backslash [1, 13]
- ANSI Enter [1, 14]
- Fn [3, 13]

[chore]

* Correct `LAYOUT_iso` data

Correct position of Fn key [3, 13].

[chore]

* Add `LAYOUT_tkl_nofrow_ansi_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_tsangan_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_tsangan`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_wkl`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_tsangan_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_tsangan`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_wkl`

[enhancement]

* Enable Community Layout support

[enhancement]

* Touch-up keymaps

Update keycode grid alignment.

[style]
2023-09-19 14:32:16 -07:00
Shandon Anderson
ef31109ad2 [Keyboard] Add riot pad (#22060)
Co-authored-by: ShandonCodes <shandon@shandon.codes>
2023-09-18 18:00:11 -07:00
Dasky
16f2a3e2f8 Add missing gpio include to ps2 vendor (#22063) 2023-09-18 19:55:51 +01:00
Filip Sund
48b4ce6ddb Adding support for the Pteron56 (PCB) keyboard (#21731) 2023-09-18 13:52:48 +01:00
James Young
cd095c817e Wolf Ziggurat Layout Additions (#22053)
* Add layout/matrix diagram

[docs]

* Friendly-format `info.json`

[style]

* Touch-up layout data

Move the ISO Hash key to the main key area.

[chore]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_65_xt_ansi_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_65_xt_ansi_blocker_tsangan`

[enhancement]

* Add `LAYOUT_65_xt_iso_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_65_xt_iso_blocker_tsangan`

[enhancement]
2023-09-17 21:57:03 -07:00
James Young
6ba53f661a Wolf Silhouette Community Layout Support (#22052)
* Add layout/matrix diagram

[docs]

* Friendly-format `info.json`

[style]

* Touch-up layout data

Move the ISO Hash key to the main key area.

[chore]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_tkl_nofrow_ansi_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_tsangan_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_tsangan`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_wkl`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_tsangan_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_tsangan`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_wkl`

[enhancement]

* Enable Community Layout support

[enhancement]
2023-09-17 21:26:13 -07:00
James Young
25df4ba6bd Wolf Neely65 Touch-Up (#22045)
* Add layout/matrix diagram

[docs]

* Friendly-format `info.json`

[style]

* Touch-up keymaps

- grid-align keycodes
- use QMK-native keycode aliases

[refactor]

* Fix keymaps

Fix keycodes being assigned out of order with respect to `info.json`.

- move XT function keys to left side
- move keycodes for position [2, 14] from Home Row to Number Row

[bugfix]

* Rename `LAYOUT` to `LAYOUT_65_xt_ansi_blocker_tsangan_wkl_split_bs`

[refactor]

* Add `LAYOUT_65_xt_ansi_blocker_tsangan_wkl`

[enhancement]
2023-09-17 20:50:14 -07:00
James Young
b5181e3d06 Viktus Styrka Topre Layout Standardization and Touch-Up (#22044)
* Add layout/matrix diagram

[docs]

* Alias `LAYOUT_all` to `LAYOUT_split_6u`

`LAYOUT_all` and `LAYOUT_split_6u` represent the same matrix positions
and sequence, so implement the former as an alias.

[refactor]

* Touch-up keymaps

- grid-align keycodes
- use QMK-native keycode aliases

[chore]

* Friendly-format `info.json`

[style]

* Correct layout data

Correct key sizes/positioning on the bottom row.

[chore]

* Rename `LAYOUT_2u_6u` to `LAYOUT_65_xt_ansi_blocker`

[refactor]

* Rename `LAYOUT_2u_7u` to `LAYOUT_65_xt_ansi_blocker_tsangan`

[refactor]

* Rename `LAYOUT_split_6u` to `LAYOUT_65_xt_ansi_blocker_split_bs`

[refactor]

* Rename `LAYOUT_split_7u` to `LAYOUT_65_xt_ansi_blocker_tsangan_split_bs`

[refactor]
2023-09-17 20:17:51 -07:00
Controller Works
6129f5f68b Add all RGB Matrix Animations to city42 (#21992) 2023-09-17 11:41:26 -06:00
Moritz Plattner
652c5a9410 geistmaschine/macropod: fix issues waking up after suspend on apple devices (#22023) 2023-09-17 11:35:29 -06:00
Yak
9f9ad95fb4 Fix paragon encoder pinout for soldered version (#22043) 2023-09-17 11:32:44 -06:00
Constantine Karos
1fbd45a594 Add missing gpio and chibios defs to uart.h (#22033) 2023-09-17 13:18:26 +01:00
Joel Challis
39fafdac0f Move Digitizer to "Software Features" (#22031) 2023-09-17 08:11:32 +01:00
James Young
4162d1f056 Sho Studios ARC Layout Addition (#22037)
* Add layout/matrix diagram

[docs]

* Format `info.json`

Apply four-space indent.

[style]

* Add `LAYOUT_ansi_split_bs`

[enhancement]
2023-09-16 14:19:09 -07:00
James Young
6b1b746f66 RuckerMachine RM Fullsize Layout Additions (#22036)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_fullsize_108_ansi`

[enhancement]

* Add `LAYOUT_fullsize_108_ansi_tsangan`

[enhancement]
2023-09-16 13:41:40 -07:00
James Young
71d5d14c13 Rico Phoenix Project No. 1 Layout Additions (#22035)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_65_ansi_rwkl_split_bs`

[enhancement]

* Add `LAYOUT_65_ansi_rwkl`

[enhancement]

* Add `LAYOUT_65_ansi_wkl_split_bs`

[enhancement]

* Add `LAYOUT_65_ansi_wkl`

[enhancement]

* Add `LAYOUT_65_iso_rwkl_split_bs`

[enhancement]

* Add `LAYOUT_65_iso_rwkl`

[enhancement]

* Add `LAYOUT_65_iso_wkl_split_bs`

[enhancement]

* Add `LAYOUT_65_iso_wkl`

[enhancement]
2023-09-15 16:39:34 -07:00
James Young
4767554562 Raindrop Layout Updates (#22032)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT_all` to `LAYOUT_64_ansi_split_bs`

[refactor]

* Add `LAYOUT_60_ansi_split_bs_rshift`

[enhancement]
2023-09-15 15:25:52 -07:00
TreasureTypes
d83ac7a124 [Keyboard] Adding Treasure TYPE-9 series III (#21748)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-09-15 14:44:41 -07:00
ziptyze
29d1a2cc51 [Keyboard] add 1upkeyboards 1upslider8 (#21546)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-09-15 11:56:41 -07:00
harveysch
e7ae5ec07c [Keyboard] Add splitkb.com's Aurora Helix (#21871)
Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-15 11:34:21 -07:00
James Young
49f1cbd40e Neson Design Nico Layout Additions (#22027)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_65_xt_ansi_blocker_split_bs`

[refactor]

* Add `LAYOUT_65_xt_ansi_blocker`

[enhancement]

* Add `LAYOUT_65_xt_ansi_blocker_tsangan`

[enhancement]

* Add `LAYOUT_65_xt_ansi_blocker_tsangan_split_bs`

[enhancement]

* Touch-up keymaps

- grid-align keycodes
- use four-space indent
- use QMK-native keycode aliases

[refactor]

* Update `via` keymap

Update the `via` keymaps to have the same key assignments as the
`default` keymap, which is more fleshed out.

[chore]
2023-09-15 00:47:10 -07:00
James Young
06dfa1cafc Nix Studio Lilith Layout Additions (#22028)
* Add layout/matrix diagram

[docs]

* Sort keys in `info.json`

[style]

* Add `LAYOUT_65_ansi_blocker_split_bs`

[enhancement]

* Add `LAYOUT_65_ansi_blocker_tsangan`

[enhancement]

* Add `LAYOUT_65_iso_blocker_split_bs`

[enhancement]

* Add `LAYOUT_65_iso_blocker_tsangan_split_bs`

[enhancement]

* Extend Community Layout support

[enhancement]
2023-09-14 23:18:28 -07:00
James Young
598303fa95 OwLab Jelly Evolv Solder Layout Additions (#22029)
* Add layout/matrix diagram

[docs]

* Friendly-format `info.json`

[style]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_ansi_blocker`

[enhancement]

* Add `LAYOUT_ansi_blocker_split_bs`

[enhancement]

* Add `LAYOUT_ansi_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_ansi_blocker_tsangan`

[enhancement]

* Add `LAYOUT_iso_blocker`

[enhancement]

* Add `LAYOUT_iso_blocker_split_bs`

[enhancement]

* Add `LAYOUT_iso_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_iso_blocker_tsangan`

[enhancement]
2023-09-14 18:07:48 -07:00
James Young
3d86b92511 QVEX Tech Lynepad2 Layout Update (#22030)
* Add layout/matrix diagram

[docs]

* Update layout data

Update layout data to disambiguate the key/joystick/thumbpad functions
in Configurator.

[chore]
2023-09-14 23:47:03 +01:00
Andrew Kannan
46d679ab11 qmk format-json: Add an in-place mode to format json command (#21610) 2023-09-14 21:38:42 +01:00
James Young
4f26a8b308 MonsGeek M1: Correct layout data (#22026)
Apply vertical offset to the arrow keys.

[chore]
2023-09-14 21:37:24 +01:00
James Young
58c2dae32e Mode M256-WH Community Layout Support (#22019)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_65_ansi_blocker`

[refactor]

* Add `LAYOUT_65_ansi_blocker_tsangan`

[enhancement]

* Enable Community Layout support

[enhancement]
2023-09-14 12:44:07 -07:00
James Young
294fc6caef Mode M256-WS Community Layout Support (#22020)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_65_ansi_blocker_split_bs`

[enhancement]

* Add `LAYOUT_65_ansi_blocker`

[enhancement]

* Add `LAYOUT_65_ansi_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_65_ansi_blocker_tsangan`

[enhancement]

* Add `LAYOUT_65_iso_blocker_split_bs`

[enhancement]

* Add `LAYOUT_65_iso_blocker`

[enhancement]

* patch `LAYOUT_65_iso_blocker_split_bs`

* patch `LAYOUT_65_iso_blocker`

* Add `LAYOUT_65_iso_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_65_iso_blocker_tsangan`

[enhancement]

* Enable Community Layout support

[enhancement]
2023-09-14 12:07:22 -07:00
James Young
269c7b6e5b Mechlovin Zed65 910 Layout Standardization (#22018)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT_65_iso_tsangan_split_bs` to `LAYOUT_iso_split_bs`

[refactor]

* Rename `LAYOUT_65_ansi_tsangan` to `LAYOUT_ansi`

[refactor]

* Rename `LAYOUT_65_ansi_blocker_tsangan` to `LAYOUT_ansi_blocker_tsangan`

[refactor]

* Rename `LAYOUT_65_ansi_tsangan_split_bs` to `LAYOUT_all`

[refactor]
2023-09-14 10:57:44 -07:00
James Young
cfe52b6e6e Maze Studio Jocker 1800 Layout Additions (#22016)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_ansi_split_bs`

[refactor]

* Add `LAYOUT_ansi`

[enhancement]

* Add `LAYOUT_ansi_wkl_split_bs`

[enhancement]

* Add `LAYOUT_ansi_wkl`

[enhancement]
2023-09-14 10:20:14 -07:00
James Young
78eb69ead5 Linworks Fave60a Community Layout Support (#22015)
* Friendly-format `info.json`

[style]

* Correct layout data

[chore]

* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_60_tsangan_hhkb`

[refactor]

* Add `LAYOUT_60_ansi_tsangan`

[enhancement]

* Enable Community Layout support

[enhancement]
2023-09-14 02:48:09 -07:00
James Young
02e6c04ac2 Krado Industries Promenade Layout Additions (#22014)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Correct key order

[bugfix]

* Add `LAYOUT_2x2u`

[enhancement]

* Add `LAYOUT_2x3u`

[enhancement]

* Add `LAYOUT_6u_space`

[enhancement]

* Add `LAYOUT_7u_space`

[enhancement]

* Touch-up `via` keymap

Update keycode grid alignment to match the `default` keymap.

[style]
2023-09-14 02:16:04 -07:00
Luis Garcia
e67a4ba7ce Update to 'peterfalken' userspace configurations (#21836) 2023-09-14 13:08:00 +10:00
James Young
9f0f39555c Kopibeng XT87 Layout Additions & Touch-Up (#22002)
* Add `LAYOUT_tkl_ansi_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_ansi_wkl`

[enhancement]

* Add `LAYOUT_tkl_iso_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_iso_wkl`

[enhancement]

* Correct layout data

Correct key positioning on the function row.

[enhancement]

* Friendly-format `info.json`

[style]

* Move ISO Enter to Home Row

Corrects the implementation of the ISO Community Layouts.

[bugfix]
2023-09-13 19:43:31 -07:00
James Young
f4a702e49f Kibou Suisei Layout Addition (#22001)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_65_ansi_blocker_tsangan_wkl_split_bs`

[refactor]

* Add `LAYOUT_65_ansi_blocker_tsangan_wkl`

[enhancement]
2023-09-13 18:06:19 -07:00
James Young
32f060366f Keebio NyquistPad Layout Updates (#22000)
* Rename `LAYOUT` to `LAYOUT_ortho_5x6`

[refactor]

* Add `LAYOUT_ortho_5x6_1x2u`

[enhancement]
2023-09-13 17:47:25 -07:00
James Young
c6841a51de Jaykeeb Sebelas: Standardize Layout Names (#21999)
* Rename `LAYOUT_65_ansi_blocker` to `LAYOUT_ansi_blocker`

[refactor]

* Rename `LAYOUT_65_ansi_blocker_split_bs` to `LAYOUT_ansi_blocker_split_bs`

[refactor]

* Rename `LAYOUT_65_ansi_blocker_tsangan` to `LAYOUT_ansi_blocker_tsangan`

[refactor]

* Rename `LAYOUT_65_ansi_blocker_tsangan_split_bs` to `LAYOUT_ansi_blocker_tsangan_split_bs`

[refactor]
2023-09-13 14:54:46 -07:00
James Young
33d7fa1180 Inland MK47 Community Layout Support (#21998)
* Rename `LAYOUT` to `LAYOUT_planck_mit`

[refactor]

* Enable Community Layout support

[enhancement]

* Touch-up keymaps

- grid-align keycodes

[style]
2023-09-13 13:44:05 -07:00
James Young
e6ce481179 Handwired ScottoKeebs Configurator Updates (#21990)
* ScottoKeebs ScottoAlp: Correct layout data

[enhancement]

* ScottoKeebs ScottoCMD: Correct layout data

[enhancement]

* ScottoKeebs ScottoErgo: Correct layout data

Add hand separation and vertical stagger to the layout data.

[enhancement]

* ScottoKeebs ScottoFrog: Correct layout data

[enhancement]

* ScottoKeebs ScottoGame: Correct layout data

[enhancement]

* ScottoKeebs ScottoInvader: Correct layout data

[enhancement]

* ScottoKeebs ScottoNum: Correct layout data

[enhancement]

* ScottoKeebs ScottoSplit: Correct layout data

[enhancement]

* ScottoKeebs ScottoStarter: Correct layout data

[enhancement]
2023-09-12 23:05:10 -07:00
James Young
4468662d64 Gray Studio Think65 v3 Layout Additions (#21930)
* Add layout/matrix diagram

[docs]

* Format `info.json` as strict JSON

[style]

* Add `LAYOUT_all`

[enhancement]

* Refactor keymaps to use `LAYOUT_all`

Refactor the `default` and `via` keymaps to use the `LAYOUT_all` macro.

- change second Left Shift key to `KC_NUBS`
- insert `KC_NUHS` keycode
- update keycode grid alignment
- remove trailing whitespace

[refactor]

* Rename `LAYOUT_65_blocker` to `LAYOUT_ansi_blocker`

[refactor]

* Rename `LAYOUT_65_iso_blocker` to `LAYOUT_iso_blocker`

[refactor]

* Correct `LAYOUT_iso_blocker` matrix data

The Quote key was mapped as [1, 14] instead of [2, 12].

[bugfix]

* Add `LAYOUT_ansi_blocker_split_bs`

[enhancement]

* Add `LAYOUT_ansi_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_ansi_blocker_tsangan`

[enhancement]

* Add `LAYOUT_iso_blocker_split_bs`

[enhancement]

* Add `LAYOUT_iso_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_iso_blocker_tsangan`

[enhancement]
2023-09-12 13:57:25 -07:00
James Young
91e0e46e4a Drewkeys Mercury65 Layout Additions (#21924)
* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add layout/matrix diagram

[docs]

* Correct `LAYOUT_all` data

Correct the order of the Up arrow and End keys.

[enhancement]

* Tidy-up `info.json` formatting

- add line breaks between physical rows
- remove trailing spaces

[style]

* Add `LAYOUT_iso_blocker_split_bs`

[enhancement]

* Add `LAYOUT_iso_blocker_tsangan_split_bs`

[enhancement]

* Add `LAYOUT_ansi_blocker_split_bs`

[enhancement]

* Add `LAYOUT_ansi_blocker_tsangan_split_bs`

[enhancement]
2023-09-12 12:57:45 -07:00
Dasky
62105b5c07 Remove oversize binaries (#21976)
This stops a situation where a user could end up flashing oversize firmware soft bricking hardware.
2023-09-12 02:55:05 +01:00
Falco Gerritsjans
3561c3a1f9 Repair malformed links in keyboard README files (#21969) 2023-09-11 21:43:16 +01:00
James Young
9a29ddf6af dnworks FRLTKL Community Layout support (#21922)
* Add layout/matrix diagram

[docs]

* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add `LAYOUT_tkl_nofrow_iso_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_tsangan_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_tsangan`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_iso_wkl`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_tsangan_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_tsangan`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_wkl_split_bs_rshift`

[enhancement]

* Add `LAYOUT_tkl_nofrow_ansi_wkl`

[enhancement]

* Enable Community Layout support

[enhancement]
2023-09-09 12:15:57 -07:00
Vino Rodrigues
ec09c03b64 [Keyboard] Add Binepad Pixie (#21524)
* Add Binepad Pixie

* Post waffle87 and drashna review recommendations applied

* Post-drashna code review suggestions applied

Co-authored-by: Drashna Jaelre <drashna@live.com>

* post zvecr review

---------

Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-09-09 11:17:09 +01:00
James Young
4875bcecc2 customMK EVO70 R2 Layout Additions (#21916)
* Rename `LAYOUT` to `LAYOUT_all`

[refactor]

* Add layout/matrix diagram

[docs]

* Correct layout data

Reduce the gap between the encoder/macro section and the alphanumeric
section by 0.25u.

[enhancement]

* Add `LAYOUT_ansi_blocker`

[enhancement]

* Add `LAYOUT_iso_blocker`

[enhancement]

* Fix redundant `layout_aliases` keys

per dunk2k

[bugfix]
2023-09-08 19:11:07 -07:00
James Young
3e3320e8d9 Cipulot EC Theca Community Layout Support (#21913)
* Alias `LAYOUT_all` as `LAYOUT_tkl_ansi`

The data for `LAYOUT_all` and `LAYOUT_tkl_ansi` is identical, so alias
the former to the latter to reduce redundancy.

[refactor]

* Rename `LAYOUT_tkl_ansi_tsangan_wkl` to `LAYOUT_tkl_ansi_wkl`

[refactor]

* Enable Community Layout support

[enhancement]
2023-09-07 13:53:16 -07:00
James Young
c783325e16 GMMK2 96% ANSI: Correct layout data (#21937)
[enhancement]
2023-09-06 19:57:24 +01:00
3geek14
e3c6467ab9 [Docs] Improve contrast for warnings in dark mode (#21928) 2023-09-05 19:00:14 -07:00
James Young
7fb60519ee GMMK2 65% ISO: Correct layout data (#21925)
Correct key sizes/positioning on the right side of the board.
2023-09-06 00:46:29 +01:00
dependabot[bot]
549708edfa Bump actions/checkout from 3 to 4 (#21907)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-05 18:50:04 +01:00
James Young
6aa3814f6e CannonKeys BastionTKL Layout Additions (#21901)
* [docs] add layout/matrix diagram

* [enhancement] add LAYOUT_tkl_ansi_split_bs_rshift

* [enhancement] add LAYOUT_tkl_ansi_tsangan_split_bs_rshift

* [enhancement] add LAYOUT_tkl_ansi_tsangan

* [enhancement] add LAYOUT_tkl_f13_ansi_tsangan

* [enhancement] add LAYOUT_tkl_f13_ansi_split_bs_rshift

* [enhancement] add LAYOUT_tkl_f13_ansi

* [enhancement] correct LAYOUT_tkl_iso key order

* [enhancement] add LAYOUT_tkl_iso_split_bs_rshift

* [enhancement] add LAYOUT_tkl_iso_tsangan_split_bs_rshift

* [enhancement] add LAYOUT_tkl_iso_tsangan

* [enhancement] add LAYOUT_tkl_f13_iso_split_bs_rshift

* [enhancement] add LAYOUT_tkl_f13_iso

* [enhancement] add LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift

* [enhancement] add LAYOUT_tkl_f13_iso_tsangan

* [enhancement] extend Community Layout support
2023-09-05 00:48:35 -07:00
James Young
809865e9ee CannonKeys Bastion65 Layout Additions (#21888)
* [docs] add layout/matrix diagram

* [refactor] rename LAYOUT to LAYOUT_all

* [enhancement] add LAYOUT_65_ansi_blocker_split_bs

* [enhancement] add LAYOUT_65_ansi_blocker

* [enhancement] add LAYOUT_65_ansi_blocker_tsangan_split_bs

* [enhancement] add LAYOUT_65_ansi_blocker_tsangan

* [enhancement] add LAYOUT_65_iso_blocker_split_bs

* [enhancement] add LAYOUT_65_iso_blocker

* [enhancement] add LAYOUT_65_iso_blocker_tsangan_split_bs

* [enhancement] add LAYOUT_65_iso_blocker_tsangan

* [enhancement] enable Community Layout support
2023-09-05 00:21:15 -07:00
James Young
2f243e2817 CannonKeys Bastion60 Layout Additions (#21887)
* [bugfix] correct LAYOUT_60_iso_tsangan key order

* [docs] add layout/matrix diagram

* [enhancement] add LAYOUT_60_tsangan_hhkb

* [enhancement] add LAYOUT_60_ansi_tsangan

* [enhancement] add LAYOUT_60_iso

* [enhancement] add LAYOUT_60_iso_split_bs_rshift

* [enhancement] add LAYOUT_60_iso_tsangan_split_bs_rshift

* [enhancement] add LAYOUT_60_hhkb

* [enhancement] extend Community Layout support
2023-09-04 23:55:24 -07:00
James Young
2f517041c7 CannonKeys Bastion75 Layout Additions (#21899)
* [docs] add layout/matrix diagram

* [refactor] rename LAYOUT to LAYOUT_all

* [enhancement] add LAYOUT_ansi_blocker_split_bs

* [enhancement] add LAYOUT_ansi_blocker

* [enhancement] add LAYOUT_ansi_blocker_tsangan_split_bs

* [enhancement] add LAYOUT_ansi_blocker_tsangan

* [enhancement] add LAYOUT_iso_blocker_split_bs

* [enhancement] add LAYOUT_iso_blocker

* [enhancement] add LAYOUT_iso_blocker_tsangan_split_bs

* [enhancement] add LAYOUT_iso_blocker_tsangan
2023-09-04 23:34:23 -07:00
Joel Challis
b2ded61796 Auto-label data-driven efforts (#21900) 2023-09-04 09:09:53 +01:00
James Young
fd095bbfae Chosfox CF81: correct layout data (#21902) 2023-09-04 07:56:43 +01:00
James Young
9eaa8a24ed ANAVI Macro Pad 12: rename LAYOUT to LAYOUT_ortho_4x3 (#21886)
[refactor]
2023-09-03 23:17:53 -07:00
James Young
dd17b6be29 AH Haven80 Community Layout support (#21885)
* [enhancement] correct layout data

* [refactor] rename LAYOUT to LAYOUT_tkl_f13_ansi_tsangan

* [enhancement] enable Community Layout support

* Haven80 Solder: add LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift

[enhancement]

* Haven80 Solder: add LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift

[enhancement]

* Haven80 Solder: add LAYOUT_tkl_f13_iso_tsangan

[enhancement]

* Haven80 Solder: extend Community Layout support

[enhancement]
2023-09-03 22:39:35 -07:00
Joel Challis
e26442fc2a redragon/k667: Remove 2 layer VIA restriction (#21889) 2023-09-03 16:57:10 +01:00
NCKiser
8ad43a965f Added kiserdesigns keyboard folder and Madeline keyboard (#21857)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-09-02 21:34:09 -07:00
Wolf Van Herreweghe
47e72a95ef Add M6-C Keyboard Firmware (#21852)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Wolf <contact@vwolf.be>
2023-09-02 21:32:40 -07:00
temp4gh
04ce3497ab [keyboard] add redragon/k667 (#21417)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: syc <squall_sha@163.com>
2023-09-02 21:12:43 -07:00
ziptyze
b03b49fca3 Add 1upkeyboards Super16v3 (#21665)
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2023-09-02 20:43:58 -07:00
Frank Ebel
633d92a68b chore: ignore virtual environment directory (#20905) 2023-09-03 02:24:57 +01:00
Jay Greco
81ea4f9110 nullbitsco/snap: fix broken keymaps (#21877) 2023-09-01 16:46:05 +01:00
James Young
4b1aa1640c AH Haven65 Community Layout support (#21880)
* [refactor] rename LAYOUT to LAYOUT_65_ansi_blocker

* [enhancement] enable Community Layout support
2023-09-01 01:36:53 -07:00
James Young
ab9e74ad5e Abko AK84BT Layout Touch-Up (#21876)
* [refactor] rename LAYOUT_75_ansi to LAYOUT

* [enhancement] touch-up layout
2023-08-31 23:53:20 -07:00
471 changed files with 31327 additions and 3720 deletions

4
.github/labeler.yml vendored
View File

@@ -40,3 +40,7 @@ translation:
- docs/ru-ru/**/*
CI:
- .github/**/*
dd:
- data/constants/**/*
- data/mappings/**/*
- data/schemas/**/*

View File

@@ -25,7 +25,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 1
persist-credentials: false

View File

@@ -27,7 +27,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0

View File

@@ -33,7 +33,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
ref: ${{ github.event.inputs.branch || github.ref }}

View File

@@ -24,7 +24,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive

View File

@@ -15,7 +15,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
token: ${{ secrets.QMK_BOT_TOKEN }}
fetch-depth: 0

View File

@@ -23,7 +23,7 @@ jobs:
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 1

View File

@@ -21,7 +21,7 @@ jobs:
- riot
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
token: ${{ secrets.QMK_BOT_TOKEN }}
fetch-depth: 0

View File

@@ -25,7 +25,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0

View File

@@ -19,7 +19,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0

View File

@@ -18,7 +18,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0

View File

@@ -19,7 +19,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Run qmk generators
run: |

View File

@@ -19,7 +19,7 @@ jobs:
- name: Disable safe.directory check
run : git config --global --add safe.directory '*'
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Run qmk generators
run: |

View File

@@ -26,7 +26,7 @@ jobs:
container: ghcr.io/qmk/qmk_cli
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install dependencies

1
.gitignore vendored
View File

@@ -95,6 +95,7 @@ secrets.tar
# Python things
__pycache__
.python-version
.venv
# Prerequisites for updating ChibiOS
/util/fmpp*

View File

@@ -392,6 +392,8 @@ check-size:
if [ $(MAX_SIZE) -gt 0 ] && [ $(CURRENT_SIZE) -gt 0 ]; then \
$(SILENT) || printf "$(MSG_CHECK_FILESIZE)" | $(AWK_CMD); \
if [ $(CURRENT_SIZE) -gt $(MAX_SIZE) ]; then \
$(REMOVE) $(TARGET).$(FIRMWARE_FORMAT); \
$(REMOVE) $(BUILD_DIR)/$(TARGET).{hex,bin,uf2}; \
printf "\n * $(MSG_FILE_TOO_BIG)"; $(PRINT_ERROR_PLAIN); \
else \
if [ $(FREE_SIZE) -lt $(SIZE_MARGIN) ]; then \

View File

@@ -29,6 +29,10 @@
"minLength": 1,
"maxLength": 250
},
"snake_case": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"layout_macro": {
"oneOf": [
{

View File

@@ -256,7 +256,11 @@
"enabled": {"type": "boolean"}
}
},
"features": {"$ref": "qmk.definitions.v1#/boolean_array"},
"features": {
"$ref": "qmk.definitions.v1#/boolean_array",
"propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
},
"indicators": {
"type": "object",
"properties": {
@@ -370,6 +374,7 @@
"properties": {
"animations": {
"type": "object",
"propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
"additionalProperties": {
"type": "boolean"
}
@@ -419,6 +424,7 @@
"properties": {
"animations": {
"type": "object",
"propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
"additionalProperties": {
"type": "boolean"
}
@@ -471,6 +477,7 @@
"properties": {
"animations": {
"type": "object",
"propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
"additionalProperties": {
"type": "boolean"
}

View File

@@ -80,6 +80,7 @@
* [Caps Word](feature_caps_word.md)
* [Combos](feature_combo.md)
* [Debounce API](feature_debounce_type.md)
* [Digitizer](feature_digitizer.md)
* [EEPROM](feature_eeprom.md)
* [Key Lock](feature_key_lock.md)
* [Key Overrides](feature_key_overrides.md)
@@ -115,7 +116,6 @@
* [Bootmagic Lite](feature_bootmagic.md)
* [Converters](feature_converters.md)
* [Custom Matrix](custom_matrix.md)
* [Digitizer](feature_digitizer.md)
* [DIP Switch](feature_dip_switch.md)
* [Encoders](feature_encoders.md)
* [Haptic Feedback](feature_haptic_feedback.md)

View File

@@ -10,6 +10,7 @@ Tested combinations:
|SSD1306 |128x32 |AVR |Primary support |
|SSD1306 |128x64 |AVR |Verified working |
|SSD1306 |128x32 |Arm | |
|SSD1306 |128x64 |Arm |Verified working |
|SH1106 |128x64 |AVR |No scrolling |
|SH1107 |64x128 |AVR |No scrolling |
|SH1107 |64x128 |Arm |No scrolling |

View File

@@ -155,6 +155,29 @@ In your keyboard config.h:
#endif
```
### RP2040 PIO Version :id=rp2040-pio-version
The `PIO` subsystem is a Raspberry Pi RP2040 specific implementation, using the integrated PIO peripheral and is therefore only available on this MCU.
There are strict requirements for pin ordering but any pair of GPIO pins can be used. The GPIO used for clock must be directly after data, see the included info.json snippet for an example of correct order.
You may optionally switch the PIO peripheral used with the following define in config.h:
```c
#define PS2_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the PS2 implementation uses the PIO0 peripheral
```
Example info.json content:
```json
"ps2": {
"clock_pin": "GP1",
"data_pin": "GP0",
"driver": "vendor",
"enabled": true,
"mouse_enabled": true
}
```
## Additional Settings :id=additional-settings
### PS/2 Mouse Features :id=ps2-mouse-features

View File

@@ -80,6 +80,7 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard
- Encoder Configuration
- Bootmagic Configuration
- LED Indicator Configuration
- Run `qmk format-json` on this file before submitting your PR. Be sure to append the `-i` flag to directly modify the file, or paste the outputted code into the file.
- `readme.md`
- must follow the [template](https://github.com/qmk/qmk_firmware/blob/master/data/templates/keyboard/readme.md)
- flash command is present, and has `:flash` at end

View File

@@ -2,9 +2,13 @@
background-color: #555;
}
.markdown-section p.tip,
.markdown-section tr:nth-child(2n) {
background-color:#444;
background-color:#444;
}
.markdown-section p.tip {
background-color:#555;
color:#FFF;
}
.markdown-section tr {
@@ -16,7 +20,7 @@
}
.markdown-section p.tip code {
background-color: #555;
background-color: #333;
color: #fff;
}

View File

@@ -19,6 +19,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
# include "spi_master.h"
#elif defined(OLED_TRANSPORT_I2C)
# include "i2c_master.h"
# if defined(USE_I2C) && defined(SPLIT_KEYBOARD)
# include "keyboard.h"
# endif
#endif
#include "oled_driver.h"
#include OLED_FONT_H

View File

@@ -0,0 +1,400 @@
/* Copyright 2022 ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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 "analog.h"
#include "qmk_midi.h"
#include "quantum.h"
#include "quantum/midi/midi.h"
#include "quantum/midi/midi_device.h"
uint8_t divisor = 0;
void slider(void) {
if (divisor++) { // only run the slider function 1/256 times it's called
return;
}
midi_send_cc(&midi_device, 2, 0x3E, 0x7F - (analogReadPin(SLIDER_PIN) >> 3));
uprintf("%d string", analogReadPin(SLIDER_PIN));
}
void housekeeping_task_kb(void) {
slider();
housekeeping_task_user();
}
static uint32_t oled_logo_timer = 0;
static bool clear_logo = true;
static const char PROGMEM my_logo[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
0xE0, 0xF0, 0x70, 0x70, 0x70, 0x70,
0xF0, 0xE0, 0xC0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x63, 0xE7, 0xE7, 0xCE, 0xCE,
0xCE, 0xCE, 0xFC, 0xFC, 0x78, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xC0, 0xC0, 0xC1,
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, 0xFF,
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x07, 0x07, 0x07, 0x07, 0x07,
0x07, 0x07, 0x07, 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,
0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
0x00, 0x00, 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, 0x1F, 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,
0xFC, 0xFC, 0xFC, 0x1C, 0x1C, 0x1C,
0x1C, 0x3C, 0xF8, 0xF8, 0xE0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x70,
0x70, 0x70, 0x70, 0x78, 0x3F, 0x3F,
0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xF0,
0xF0, 0xF0, 0x70, 0x70, 0x70, 0x70,
0x70, 0x70, 0x70, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xFF, 0xFF, 0xFF, 0xCE, 0xCE,
0xCE, 0xCE, 0xCE, 0xCE, 0xCE, 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, 0xC1, 0xC1, 0xC1, 0x81,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,
0xFF, 0x39, 0x39, 0x79, 0xF9, 0xF9,
0xDF, 0x9F, 0x0F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x07, 0x07, 0x07, 0x00, 0x00, 0x00,
0x00, 0x03, 0x07, 0x07, 0x06, 0x04,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1C, 0xBE,
0xFF, 0x63, 0x63, 0xFF, 0xBE, 0x1C,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x07, 0x0F, 0x1F, 0x18, 0x18, 0x1F,
0x0F, 0x07, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
return OLED_ROTATION_270;
}
static const char PROGMEM ou_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, 0xFC, 0xFC, 0xCF, 0xCF,
0x03, 0x03, 0x03, 0x03, 0xFF, 0xFF,
0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03,
0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03,
0x03, 0x03, 0xF3, 0xF3, 0x03, 0x03,
0x0C, 0x0C, 0xFC, 0xFC, 0x00, 0x00,
0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0,
0xFF, 0xFF, 0xF0, 0xF0, 0xC3, 0xC3,
0xC0, 0xC0, 0xF0, 0xF0, 0xFF, 0xFF,
0xC0, 0xC0, 0xC0, 0xC0, 0xFC, 0xFC,
0x0C, 0x0C, 0x0F, 0x0F, 0x03, 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
};
static char PROGMEM caps_on[] = {
0x00, 0x00, 0x00, 0xF8, 0x04, 0x04,
0x04, 0x88, 0x00, 0x00, 0xE0, 0x58,
0x44, 0x58, 0xE0, 0x00, 0x00, 0xFC,
0x24, 0x24, 0x24, 0x18, 0x00, 0x00,
0x98, 0x24, 0x24, 0x24, 0xC8, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x01, 0x00, 0x00, 0x81,
0xC0, 0xE0, 0xF0, 0xF0, 0xF0, 0xF1,
0xF0, 0xF1, 0xF0, 0xF0, 0xE0, 0xC0,
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1F,
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
0x3F, 0x3F, 0x1F, 0x0F, 0x07, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
static char PROGMEM caps_off[] = {
0x00, 0x00, 0x00, 0xF8, 0x04, 0x04,
0x04, 0x88, 0x00, 0x00, 0xE0, 0x58,
0x44, 0x58, 0xE0, 0x00, 0x00, 0xFC,
0x24, 0x24, 0x24, 0x18, 0x00, 0x00,
0x98, 0x24, 0x24, 0x24, 0xC8, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x01, 0x00, 0x00, 0x81,
0xC0, 0xE0, 0xF0, 0x70, 0x30, 0x31,
0x30, 0x31, 0x70, 0xF0, 0xE0, 0xC0,
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0x03, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0xFF, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1E,
0x3C, 0x38, 0x30, 0x30, 0x30, 0x30,
0x38, 0x3C, 0x1E, 0x0F, 0x07, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
static const char PROGMEM num_on[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
0x18, 0x20, 0xC0, 0xFC, 0x00, 0x00,
0x00, 0xFC, 0x00, 0x00, 0x00, 0xFC,
0x00, 0x00, 0xFC, 0x18, 0x60, 0x80,
0x60, 0x18, 0xFC, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x00, 0x00, 0x00, 0x81,
0xC0, 0xE0, 0xF0, 0xF0, 0xF1, 0xF1,
0xF1, 0xF0, 0xF0, 0xF0, 0xE1, 0xC0,
0x80, 0x01, 0x00, 0x00, 0x01, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1F,
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
0x3F, 0x3F, 0x1F, 0x0F, 0x07, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
static const char PROGMEM num_off[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
0x18, 0x20, 0xC0, 0xFC, 0x00, 0x00,
0x00, 0xFC, 0x00, 0x00, 0x00, 0xFC,
0x00, 0x00, 0xFC, 0x18, 0x60, 0x80,
0x60, 0x18, 0xFC, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x00, 0x00, 0x00, 0x81,
0xC0, 0xE0, 0xF0, 0x70, 0x31, 0x31,
0x31, 0x30, 0x70, 0xF0, 0xE1, 0xC0,
0x80, 0x01, 0x00, 0x00, 0x01, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0x03, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0xFF, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1E,
0x3C, 0x38, 0x30, 0x30, 0x30, 0x30,
0x38, 0x3C, 0x1E, 0x0F, 0x07, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
static const char PROGMEM scrl_on[] = {
0x00, 0x00, 0x00, 0x98, 0x24, 0x24,
0x24, 0xC8, 0x00, 0x00, 0xF8, 0x04,
0x04, 0x04, 0x88, 0x00, 0x00, 0xFC,
0x24, 0x24, 0xE4, 0x18, 0x00, 0x00,
0x00, 0xFC, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x01, 0x00, 0x00, 0x80,
0xC0, 0xE1, 0xF1, 0xF1, 0xF0, 0xF0,
0xF0, 0xF1, 0xF0, 0xF0, 0xE0, 0xC1,
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1F,
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
0x3F, 0x3F, 0x1F, 0x0F, 0x07, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
static const char PROGMEM scrl_off[] = {
0x00, 0x00, 0x00, 0x98, 0x24, 0x24,
0x24, 0xC8, 0x00, 0x00, 0xF8, 0x04,
0x04, 0x04, 0x88, 0x00, 0x00, 0xFC,
0x24, 0x24, 0xE4, 0x18, 0x00, 0x00,
0x00, 0xFC, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x01, 0x01, 0x00, 0x00, 0x80,
0xC0, 0xE1, 0xF1, 0x71, 0x30, 0x30,
0x30, 0x31, 0x70, 0xF0, 0xE0, 0xC1,
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0x03, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0xFF, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1E,
0x3C, 0x38, 0x30, 0x30, 0x30, 0x30,
0x38, 0x3C, 0x1E, 0x0F, 0x07, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00
};
static void render_oled(void) {
const int combined_size = sizeof(ou_logo) + sizeof(caps_off) + sizeof(num_off) + sizeof(scrl_off);
char combined[combined_size];
led_t led_state = host_keyboard_led_state();
memcpy_P(combined, ou_logo, sizeof(ou_logo));
if (led_state.caps_lock) {
memcpy_P(combined + sizeof(ou_logo), caps_on, sizeof(caps_off));
}
else {
memcpy_P(combined + sizeof(ou_logo), caps_off, sizeof(caps_off));
}
if (led_state.num_lock) {
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off), num_on, sizeof(num_off));
}
else {
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off), num_off, sizeof(num_off));
}
if (led_state.scroll_lock) {
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off) + sizeof(num_off), scrl_on, sizeof(scrl_off));
}
else {
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off) + sizeof(num_off), scrl_off, sizeof(scrl_off));
}
oled_write_raw_P(combined, sizeof(combined));
}
void render_logo(void) {
oled_write_raw_P(my_logo, sizeof(my_logo));
}
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);
}
}
clear_logo = false;
}
}
#define MIDI_CONTROL_CHANGE 0xB0
MidiDevice _midi_device;
void midi_callback(uint8_t cable, uint8_t *midi_data, uint16_t length) {
// Check if this is a MIDI CC message on channel 2
if ((midi_data[0] & 0xF0) == MIDI_CONTROL_CHANGE && midi_data[0] & (0x0F == 1)) {
uprintf("%s string", midi_data );
// ...
}
}
void slider8_cc_callback(struct _midi_device *dev, uint8_t cable, uint8_t code_index, uint8_t value) {
midi_callback(MIDI_CONTROL_CHANGE, &value, 1);
}
void init_timer(void){
oled_logo_timer = timer_read32();
};
void keyboard_post_init_kb(void) {
init_timer();
keyboard_post_init_user();
}
void matrix_init_kb(void) {
midi_register_cc_callback(&_midi_device, slider8_cc_callback);
matrix_init_user();
}
#ifndef SHOW_LOGO
# define SHOW_LOGO 5000
#endif
bool oled_task_kb(void) {
if (!oled_task_user()) { return false; }
if ((timer_elapsed32(oled_logo_timer) < SHOW_LOGO)){
render_logo();
}else{
clear_screen();
render_oled();
}
return false;
}

View File

@@ -0,0 +1,29 @@
/* Copyright 2023 Ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should 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 I2C1_SCL_PIN GP11
#define I2C1_SDA_PIN GP10
#define OLED_BRIGHTNESS 128
#define SLIDER_PIN GP28
#define MIDI_ADVANCED
#define RGB_MATRIX_LED_COUNT 8
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS

View File

@@ -0,0 +1,9 @@
// Copyright 2023 ziptyze
// SPDX-License-Identifier: GPL-2.0-or-later#pragma once
#pragma once
#define HAL_USE_I2C TRUE
#define HAL_USE_ADC TRUE
#include_next <halconf.h>

View File

@@ -0,0 +1,115 @@
{
"manufacturer": "1upkeyboards",
"keyboard_name": "1upslider8",
"maintainer": "ziptyze",
"processor": "RP2040",
"bootloader": "rp2040",
"usb": {
"device_version": "1.0.0",
"pid": "0x5611",
"vid": "0x6F75"
},
"dynamic_keymap": {
"layer_count": 10
},
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": false,
"oled": true,
"midi":true,
"rgb_matrix": true,
"encoder": true
},
"encoder": {
"rotary": [
{
"pin_a": "GP21",
"pin_b": "GP22"
}
]
},
"matrix_pins": {
"direct": [
["GP27", "GP17", "GP18", "GP19", "GP20", "GP15", "GP14", "GP13", "GP16"]
]
},
"bootmagic": {
"matrix": [0, 1]
},
"ws2812": {
"pin": "GP26",
"driver": "vendor"
},
"rgb_matrix": {
"animations": {
"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,
"typing_heatmap": 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": 4, "matrix": [0, 1], "x": 28, "y": 16 },
{ "flags": 4, "matrix": [0, 2], "x": 84, "y": 16 },
{ "flags": 4, "matrix": [0, 3], "x": 140, "y": 16 },
{ "flags": 4, "matrix": [0, 4], "x": 196, "y": 16 },
{ "flags": 4, "matrix": [0, 5], "x": 28, "y": 48 },
{ "flags": 4, "matrix": [0, 6], "x": 84, "y": 48 },
{ "flags": 4, "matrix": [0, 7], "x": 140, "y": 48 },
{ "flags": 4, "matrix": [0, 8], "x": 196, "y": 48 }
]
},
"layouts": {
"LAYOUT": {
"layout": [
{ "label": "enc", "matrix": [0, 0], "x": 3, "y": 0 },
{ "label": "1", "matrix": [0, 1], "x": 0, "y": 1 },
{ "label": "2", "matrix": [0, 2], "x": 1, "y": 1 },
{ "label": "3", "matrix": [0, 3], "x": 2, "y": 1 },
{ "label": "4", "matrix": [0, 4], "x": 3, "y": 1 },
{ "label": "5", "matrix": [0, 5], "x": 0, "y": 2 },
{ "label": "6", "matrix": [0, 6], "x": 1, "y": 2 },
{ "label": "7", "matrix": [0, 7], "x": 2, "y": 2 },
{ "label": "8", "matrix": [0, 8], "x": 3, "y": 2 }
]
}
}
}

View File

@@ -0,0 +1,31 @@
/* Copyright 2022 ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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(
RGB_TOG,
KC_1, KC_2, KC_3, KC_4,
KC_5, KC_6, KC_7, KC_8
)
};
#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[0] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)}
};
#endif

View File

@@ -0,0 +1 @@
ENCODER_MAP_ENABLE = yes

View File

@@ -0,0 +1,31 @@
/* Copyright 2023 ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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(
RGB_TOG,
KC_1, KC_2, KC_3, KC_4,
KC_5, KC_6, KC_7, KC_8
)
};
#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[0] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)}
};
#endif

View File

@@ -0,0 +1,3 @@
VIA_ENABLE = yes
ENCODER_MAP_ENABLE = yes

View File

@@ -0,0 +1,11 @@
// Copyright 2023 ziptyze
// SPDX-License-Identifier: GPL-2.0-or-later#pragma once
#pragma once
#include_next <mcuconf.h>
#undef RP_I2C_USE_I2C1
#undef RP_ADC_USE_ADC1
#define RP_I2C_USE_I2C1 TRUE
#define RP_ADC_USE_ADC1 TRUE

View File

@@ -0,0 +1,27 @@
# slider8
![slider8](https://i.imgur.com/AiVQySnh.jpg)
This keyboard is the slider8 from 1upkeyboards.com, a small macropad with an oled, slide potentiometer, rotary encoder, and 8 switches in a 2x4 ortholinear arrangement with per-key in-switch rgb leds.
The slide potentiometer presents to the computer as a midi device and will need a seperate program to map to device control.
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
Make example for this keyboard (after setting up your build environment):
make 1upkeyboards/1upslider8:default
Flashing example for this keyboard:
make 1upkeyboards/1upslider8: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:
* **Bootmagic reset**: Hold down the top left key and plug in the keyboard
* **Physical reset button**: Hold down the button on the pi pico and plug in the keyboard

View File

@@ -0,0 +1 @@
SRC += analog.c

View File

@@ -0,0 +1,22 @@
/* Copyright 2023 ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should 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 48
#define RGB_MATRIX_KEYPRESSES // reacts to keypresses
#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS

View File

@@ -0,0 +1,164 @@
{
"manufacturer": "1upkeyboards",
"keyboard_name": "1upsuper16v3",
"maintainer": "ziptyze",
"bootloader": "rp2040",
"dynamic_keymap": {
"layer_count": 10
},
"encoder": {
"rotary": [
{"pin_a": "GP20", "pin_b": "GP21"},
{"pin_a": "GP25", "pin_b": "GP26"},
{"pin_a": "GP2", "pin_b": "GP3"},
{"pin_a": "GP6", "pin_b": "GP7"}
]
},
"features": {
"bootmagic": true,
"command": false,
"console": false,
"encoder": true,
"extrakey": true,
"mousekey": true,
"nkro": false,
"rgb_matrix": true
},
"matrix_pins": {
"direct": [
["GP23", "GP24", "GP4", "GP5"],
["GP19", "GP27", "GP1", "GP8"],
["GP18", "GP28", "GP0", "GP9"],
["GP17", "GP16", "GP15", "GP11"]
]
},
"processor": "RP2040",
"rgb_matrix": {
"animations": {
"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_out_in": true,
"cycle_out_in_dual": true,
"cycle_pinwheel": true,
"cycle_spiral": true,
"cycle_up_down": true,
"digital_rain": true,
"dual_beacon": true,
"gradient_left_right": true,
"gradient_up_down": true,
"hue_breathing": true,
"hue_pendulum": true,
"hue_wave": true,
"jellybean_raindrops": true,
"multisplash": true,
"pixel_flow": true,
"pixel_rain": true,
"rainbow_beacon": true,
"rainbow_moving_chevron": true,
"rainbow_pinwheels": true,
"raindrops": true,
"solid_multisplash": true,
"solid_reactive": true,
"solid_reactive_cross": true,
"solid_reactive_multicross": true,
"solid_reactive_multinexus": true,
"solid_reactive_multiwide": true,
"solid_reactive_nexus": true,
"solid_reactive_simple": true,
"solid_reactive_wide": true,
"solid_splash": true,
"splash": true,
"typing_heatmap": true
},
"driver": "ws2812",
"layout": [
{"x": 99, "y": 1, "flags": 2},
{"x": 70, "y": 1, "flags": 2},
{"x": 42, "y": 1, "flags": 2},
{"x": 14, "y": 1, "flags": 2},
{"x": 4, "y": 4, "flags": 2},
{"x": 4, "y": 12, "flags": 2},
{"matrix": [0, 0], "x": 28, "y": 8, "flags": 4},
{"matrix": [0, 1], "x": 84, "y": 8, "flags": 4},
{"x": 4, "y": 20, "flags": 2},
{"x": 4, "y": 28, "flags": 2},
{"matrix": [1, 0], "x": 28, "y": 24, "flags": 4},
{"matrix": [1, 1], "x": 84, "y": 24, "flags": 4},
{"x": 4, "y": 36, "flags": 2},
{"x": 4, "y": 44, "flags": 2},
{"matrix": [2, 0], "x": 28, "y": 40, "flags": 4},
{"matrix": [2, 1], "x": 84, "y": 40, "flags": 4},
{"x": 4, "y": 52, "flags": 2},
{"x": 4, "y": 60, "flags": 2},
{"x": 14, "y": 63, "flags": 2},
{"matrix": [3, 0], "x": 28, "y": 56, "flags": 4},
{"x": 42, "y": 63, "flags": 2},
{"x": 70, "y": 63, "flags": 2},
{"matrix": [3, 1], "x": 84, "y": 56, "flags": 4},
{"x": 99, "y": 63, "flags": 2},
{"x": 126, "y": 63, "flags": 2},
{"matrix": [3, 2], "x": 140, "y": 56, "flags": 4},
{"x": 154, "y": 63, "flags": 2},
{"x": 182, "y": 63, "flags": 2},
{"matrix": [3, 3], "x": 196, "y": 56, "flags": 4},
{"x": 210, "y": 63, "flags": 2},
{"x": 220, "y": 60, "flags": 2},
{"x": 220, "y": 52, "flags": 2},
{"x": 220, "y": 44, "flags": 2},
{"matrix": [2, 3], "x": 196, "y": 40, "flags": 4},
{"matrix": [2, 2], "x": 140, "y": 40, "flags": 4},
{"x": 220, "y": 36, "flags": 2},
{"x": 220, "y": 28, "flags": 2},
{"matrix": [1, 3], "x": 196, "y": 24, "flags": 4},
{"matrix": [1, 2], "x": 140, "y": 24, "flags": 4},
{"x": 220, "y": 20, "flags": 2},
{"x": 220, "y": 12, "flags": 2},
{"matrix": [0, 3], "x": 196, "y": 8, "flags": 4},
{"matrix": [0, 2], "x": 140, "y": 8, "flags": 4},
{"x": 220, "y": 4, "flags": 2},
{"x": 210, "y": 1, "flags": 2},
{"x": 182, "y": 1, "flags": 2},
{"x": 154, "y": 1, "flags": 2},
{"x": 126, "y": 1, "flags": 2}
]
},
"usb": {
"device_version": "1.0.0",
"pid": "0x5610",
"vid": "0x6F75"
},
"ws2812": {
"driver": "vendor",
"pin": "GP29"
},
"community_layouts": ["ortho_4x4"],
"layouts": {
"LAYOUT_ortho_4x4": {
"layout": [
{"label": "00", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "01", "matrix": [0, 1], "x": 1, "y": 0},
{"label": "02", "matrix": [0, 2], "x": 2, "y": 0},
{"label": "03", "matrix": [0, 3], "x": 3, "y": 0},
{"label": "10", "matrix": [1, 0], "x": 0, "y": 1},
{"label": "11", "matrix": [1, 1], "x": 1, "y": 1},
{"label": "12", "matrix": [1, 2], "x": 2, "y": 1},
{"label": "13", "matrix": [1, 3], "x": 3, "y": 1},
{"label": "20", "matrix": [2, 0], "x": 0, "y": 2},
{"label": "21", "matrix": [2, 1], "x": 1, "y": 2},
{"label": "22", "matrix": [2, 2], "x": 2, "y": 2},
{"label": "23", "matrix": [2, 3], "x": 3, "y": 2},
{"label": "30", "matrix": [3, 0], "x": 0, "y": 3},
{"label": "31", "matrix": [3, 1], "x": 1, "y": 3},
{"label": "32", "matrix": [3, 2], "x": 2, "y": 3},
{"label": "33", "matrix": [3, 3], "x": 3, "y": 3}
]
}
}
}

View File

@@ -0,0 +1,39 @@
/* Copyright 2023 ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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_ortho_4x4(
KC_P7, KC_P8, KC_P9, KC_PMNS,
KC_P4, KC_P5, KC_P6, KC_PPLS,
KC_P1, KC_P2, KC_P3, KC_PSLS,
MO(1), KC_P0, KC_PDOT, KC_PENT
),
[1] = LAYOUT_ortho_4x4(
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI,
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD,
RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT
)
};
#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_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }
};
#endif

View File

@@ -0,0 +1 @@
ENCODER_MAP_ENABLE = yes

View File

@@ -0,0 +1,39 @@
/* Copyright 2023 ziptyze
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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_ortho_4x4(
KC_P7, KC_P8, KC_P9, KC_PMNS,
KC_P4, KC_P5, KC_P6, KC_PPLS,
KC_P1, KC_P2, KC_P3, KC_PSLS,
MO(1), KC_P0, KC_PDOT, KC_PENT
),
[1] = LAYOUT_ortho_4x4(
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI,
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD,
RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT
)
};
#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_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }
};
#endif

View File

@@ -0,0 +1,4 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
ENCODER_MAP_ENABLE = yes

View File

@@ -0,0 +1,22 @@
# 1upSuper16v3
This keyboard is the Super16v3 from 1upkeyboards, a 4x4 macropad with the option for up to four encoders in the top row. Notable features include in-switch per-key addressable RGB LEDs and thirty two 1mm underglow RGB LEDs; for bright and smooth lighting effects. The Super16v3 utilises an rp2040 microcontroller, wired using direct pins.
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
Make example for this keyboard (after setting up your build environment):
make 1upkeyboards/1upsuper16v3:default
Flashing example for this keyboard:
make 1upkeyboards/1upsuper16v3: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:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix. For this keyboard it is the top left button
* **Physical reset button**: Hold the button on the back of the PCB and plug in the keyboard

View File

@@ -126,23 +126,27 @@
"pid": "0x4321",
"vid": "0x7654"
},
"layout_aliases": {
"LAYOUT_75_ansi": "LAYOUT"
},
"layouts": {
"LAYOUT_75_ansi": {
"LAYOUT": {
"layout": [
{"label": "ESC", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "F1", "matrix": [0, 2], "x": 2, "y": 0},
{"label": "F2", "matrix": [0, 3], "x": 3, "y": 0},
{"label": "F3", "matrix": [0, 4], "x": 4, "y": 0},
{"label": "F4", "matrix": [0, 5], "x": 5, "y": 0},
{"label": "F5", "matrix": [0, 6], "x": 6.5, "y": 0},
{"label": "F6", "matrix": [0, 7], "x": 7.5, "y": 0},
{"label": "F7", "matrix": [0, 8], "x": 8.5, "y": 0},
{"label": "F8", "matrix": [0, 9], "x": 9.5, "y": 0},
{"label": "F9", "matrix": [0, 10], "x": 11, "y": 0},
{"label": "F10", "matrix": [0, 11], "x": 12, "y": 0},
{"label": "F11", "matrix": [0, 12], "x": 13, "y": 0},
{"label": "F12", "matrix": [0, 13], "x": 14, "y": 0},
{"label": "END", "matrix": [0, 15], "x": 16.5, "y": 0},
{"label": "F1", "matrix": [0, 2], "x": 1.5, "y": 0},
{"label": "F2", "matrix": [0, 3], "x": 2.5, "y": 0},
{"label": "F3", "matrix": [0, 4], "x": 3.5, "y": 0},
{"label": "F4", "matrix": [0, 5], "x": 4.5, "y": 0},
{"label": "F5", "matrix": [0, 6], "x": 6, "y": 0},
{"label": "F6", "matrix": [0, 7], "x": 7, "y": 0},
{"label": "F7", "matrix": [0, 8], "x": 8, "y": 0},
{"label": "F8", "matrix": [0, 9], "x": 9, "y": 0},
{"label": "F9", "matrix": [0, 10], "x": 10.5, "y": 0},
{"label": "F10", "matrix": [0, 11], "x": 11.5, "y": 0},
{"label": "F11", "matrix": [0, 12], "x": 12.5, "y": 0},
{"label": "F12", "matrix": [0, 13], "x": 13.5, "y": 0},
{"label": "END", "matrix": [0, 15], "x": 15, "y": 0},
{"label": "GRV", "matrix": [1, 0], "x": 0, "y": 1.25},
{"label": "1", "matrix": [1, 1], "x": 1, "y": 1.25},
{"label": "2", "matrix": [1, 2], "x": 2, "y": 1.25},
@@ -157,7 +161,8 @@
{"label": "MINS", "matrix": [1, 11], "x": 11, "y": 1.25},
{"label": "EQL", "matrix": [1, 12], "x": 12, "y": 1.25},
{"label": "BSPC", "matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
{"label": "HOME", "matrix": [1, 14], "x": 16.5, "y": 1.25},
{"label": "HOME", "matrix": [1, 14], "x": 15, "y": 1.25},
{"label": "TAB", "matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
{"label": "Q", "matrix": [2, 1], "x": 1.5, "y": 2.25},
{"label": "W", "matrix": [2, 2], "x": 2.5, "y": 2.25},
@@ -172,7 +177,8 @@
{"label": "LBRC", "matrix": [2, 11], "x": 11.5, "y": 2.25},
{"label": "RBRC", "matrix": [2, 12], "x": 12.5, "y": 2.25},
{"label": "BSLS", "matrix": [2, 13], "x": 13.5, "y": 2.25, "w": 1.5},
{"label": "DEL", "matrix": [2, 14], "x": 16.5, "y": 2.25},
{"label": "DEL", "matrix": [2, 14], "x": 15, "y": 2.25},
{"label": "CAPS", "matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
{"label": "A", "matrix": [3, 1], "x": 1.75, "y": 3.25},
{"label": "S", "matrix": [3, 2], "x": 2.75, "y": 3.25},
@@ -185,8 +191,9 @@
{"label": "L", "matrix": [3, 9], "x": 9.75, "y": 3.25},
{"label": "SCLN", "matrix": [3, 10], "x": 10.75, "y": 3.25},
{"label": "QUOT", "matrix": [3, 11], "x": 11.75, "y": 3.25},
{"label": "ENT", "matrix": [3, 13], "x": 13.75, "y": 3.25, "w": 1.25},
{"label": "PGUP", "matrix": [3, 14], "x": 16.5, "y": 3.25},
{"label": "ENT", "matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
{"label": "PGUP", "matrix": [3, 14], "x": 15, "y": 3.25},
{"label": "LSFT", "matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
{"label": "Z", "matrix": [4, 2], "x": 2.25, "y": 4.25},
{"label": "X", "matrix": [4, 3], "x": 3.25, "y": 4.25},
@@ -199,18 +206,19 @@
{"label": "DOT", "matrix": [4, 10], "x": 10.25, "y": 4.25},
{"label": "SLSH", "matrix": [4, 11], "x": 11.25, "y": 4.25},
{"label": "RSFT", "matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"label": "UP", "matrix": [4, 13], "x": 15.25, "y": 4.25},
{"label": "PGDN", "matrix": [4, 14], "x": 16.5, "y": 4.25},
{"label": "UP", "matrix": [4, 13], "x": 14, "y": 4.25},
{"label": "PGDN", "matrix": [4, 14], "x": 15, "y": 4.25},
{"label": "LCTL", "matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.25},
{"label": "LGUI", "matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25},
{"label": "LALT", "matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25},
{"label": "SPC", "matrix": [5, 6], "x": 3.75, "y": 5.25, "w": 6.25},
{"label": "RALT", "matrix": [5, 9], "x": 10, "y": 5.25, "w": 1.25},
{"label": "MO(1)", "matrix": [5, 10], "x": 11.25, "y": 5.25, "w": 1.25},
{"label": "RCTL", "matrix": [5, 11], "x": 13, "y": 5.25, "w": 1.25},
{"label": "LEFT", "matrix": [5, 12], "x": 14.25, "y": 5.25},
{"label": "DOWN", "matrix": [5, 13], "x": 15.25, "y": 5.25},
{"label": "RGHT", "matrix": [5, 14], "x": 16.5, "y": 5.25}
{"label": "RALT", "matrix": [5, 9], "x": 10, "y": 5.25},
{"label": "MO(1)", "matrix": [5, 10], "x": 11, "y": 5.25},
{"label": "RCTL", "matrix": [5, 11], "x": 12, "y": 5.25},
{"label": "LEFT", "matrix": [5, 12], "x": 13, "y": 5.25},
{"label": "DOWN", "matrix": [5, 13], "x": 14, "y": 5.25},
{"label": "RGHT", "matrix": [5, 14], "x": 15, "y": 5.25}
]
}
}

View File

@@ -23,7 +23,7 @@ enum layer_names
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_75_ansi(
[_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_END,
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_DEL,
@@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
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(_FnLay), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT
),
[_FnLay] = LAYOUT_75_ansi(
[_FnLay] = LAYOUT(
QK_BOOT, KC_MY_COMPUTER, KC_WWW_HOME, KC_CALCULATOR, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, KC_MAIL, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,

View File

@@ -44,8 +44,14 @@
"twinkle": true
}
},
"layout_aliases": {
"LAYOUT": "LAYOUT_65_ansi_blocker"
},
"community_layouts": [
"65_ansi_blocker"
],
"layouts": {
"LAYOUT": {
"LAYOUT_65_ansi_blocker": {
"layout": [
{ "label": "Esc", "matrix":[0,0],"x": 0, "y": 0 },
{ "label": "1", "matrix":[0,1],"x": 1, "y": 0 },

View File

@@ -4,7 +4,7 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
[0] = 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_BACKSPACE, 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_INS,
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,
@@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT(
[1] = LAYOUT_65_ansi_blocker(
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_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,

View File

@@ -4,7 +4,7 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
[0] = 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_BACKSPACE, 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_INS,
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,
@@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT(
[1] = LAYOUT_65_ansi_blocker(
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_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,

View File

@@ -9,8 +9,14 @@
"rows": ["F0", "F1", "F4", "F5", "F6", "B1", "B2", "B3", "D3", "D5", "F7"],
"cols": ["D0", "D1", "D2", "B0", "D4", "B4", "D6", "D7", "B5"]
},
"layout_aliases": {
"LAYOUT": "LAYOUT_tkl_f13_ansi_tsangan"
},
"community_layouts": [
"tkl_f13_ansi_tsangan"
],
"layouts": {
"LAYOUT": {
"LAYOUT_tkl_f13_ansi_tsangan": {
"layout": [
{ "label": "Esc", "matrix":[0,0],"x": 0, "y": 0 },
{ "label": "F1", "matrix":[0,1],"x": 1.25, "y": 0 },
@@ -21,90 +27,90 @@
{ "label": "F6", "matrix":[0,6],"x": 6.5, "y": 0 },
{ "label": "F7", "matrix":[0,7],"x": 7.5, "y": 0 },
{ "label": "F8", "matrix":[5,8],"x": 8.5, "y": 0 },
{ "label": "F9", "matrix":[5,7],"x": 9.5, "y": 0 },
{ "label": "F9", "matrix":[5,7],"x": 9.75, "y": 0 },
{ "label": "F10", "matrix":[5,6],"x": 10.75, "y": 0 },
{ "label": "F11", "matrix":[5,5],"x": 11.75, "y": 0 },
{ "label": "F12", "matrix":[5,4],"x": 12.75, "y": 0 },
{ "label": "F13", "matrix":[5,3],"x": 13.75, "y": 0 },
{ "label": "F13", "matrix":[5,3],"x": 14, "y": 0 },
{ "label": "Prtsc", "matrix":[5,2],"x": 15.25, "y": 0 },
{ "label": "Scrlk", "matrix":[5,1],"x": 16.25, "y": 0 },
{ "label": "Pause", "matrix":[5,0],"x": 17.25, "y": 0 },
{ "label": "", "matrix":[1,0],"x": 0, "y": 1.5 },
{ "label": "1", "matrix":[1,1],"x": 1, "y": 1.5 },
{ "label": "2", "matrix":[1,2],"x": 2, "y": 1.5 },
{ "label": "3", "matrix":[1,3],"x": 3, "y": 1.5 },
{ "label": "4", "matrix":[1,4],"x": 4, "y": 1.5 },
{ "label": "5", "matrix":[1,5],"x": 5, "y": 1.5 },
{ "label": "6", "matrix":[1,6],"x": 6, "y": 1.5 },
{ "label": "7", "matrix":[1,7],"x": 7, "y": 1.5 },
{ "label": "8", "matrix":[1,8],"x": 8, "y": 1.5 },
{ "label": "9", "matrix":[6,8],"x": 9, "y": 1.5 },
{ "label": "0", "matrix":[6,7],"x": 10, "y": 1.5 },
{ "label": "-", "matrix":[6,6],"x": 11, "y": 1.5 },
{ "label": "=", "matrix":[6,5],"x": 12, "y": 1.5 },
{ "label": "backspace", "matrix":[6,4],"x": 13, "y": 1.5, "w": 2 },
{ "label": "insert", "matrix":[6,2],"x": 15.25, "y": 1.5 },
{ "label": "home", "matrix":[6,1],"x": 16.25, "y": 1.5 },
{ "label": "pg up", "matrix":[6,0],"x": 17.25, "y": 1.5 },
{ "label": "", "matrix":[1,0],"x": 0, "y": 1.25 },
{ "label": "1", "matrix":[1,1],"x": 1, "y": 1.25 },
{ "label": "2", "matrix":[1,2],"x": 2, "y": 1.25 },
{ "label": "3", "matrix":[1,3],"x": 3, "y": 1.25 },
{ "label": "4", "matrix":[1,4],"x": 4, "y": 1.25 },
{ "label": "5", "matrix":[1,5],"x": 5, "y": 1.25 },
{ "label": "6", "matrix":[1,6],"x": 6, "y": 1.25 },
{ "label": "7", "matrix":[1,7],"x": 7, "y": 1.25 },
{ "label": "8", "matrix":[1,8],"x": 8, "y": 1.25 },
{ "label": "9", "matrix":[6,8],"x": 9, "y": 1.25 },
{ "label": "0", "matrix":[6,7],"x": 10, "y": 1.25 },
{ "label": "-", "matrix":[6,6],"x": 11, "y": 1.25 },
{ "label": "=", "matrix":[6,5],"x": 12, "y": 1.25 },
{ "label": "backspace", "matrix":[6,4],"x": 13, "y": 1.25, "w": 2 },
{ "label": "insert", "matrix":[6,2],"x": 15.25, "y": 1.25 },
{ "label": "home", "matrix":[6,1],"x": 16.25, "y": 1.25 },
{ "label": "pg up", "matrix":[6,0],"x": 17.25, "y": 1.25 },
{ "label": "tab", "matrix":[2,0],"x": 0, "y": 2.5, "w": 1.5 },
{ "label": "q", "matrix":[2,1],"x": 1.5, "y": 2.5 },
{ "label": "w", "matrix":[2,2],"x": 2.5, "y": 2.5 },
{ "label": "e", "matrix":[2,3],"x": 3.5, "y": 2.5 },
{ "label": "r", "matrix":[2,4],"x": 4.5, "y": 2.5 },
{ "label": "t", "matrix":[2,5],"x": 5.5, "y": 2.5 },
{ "label": "y", "matrix":[2,6],"x": 6.5, "y": 2.5 },
{ "label": "u", "matrix":[2,7],"x": 7.5, "y": 2.5 },
{ "label": "i", "matrix":[2,8],"x": 8.5, "y": 2.5 },
{ "label": "o", "matrix":[7,8],"x": 9.5, "y": 2.5 },
{ "label": "p", "matrix":[7,7],"x": 10.5, "y": 2.5 },
{ "label": "{", "matrix":[7,6],"x": 11.5, "y": 2.5 },
{ "label": "}", "matrix":[7,5],"x": 12.5, "y": 2.5 },
{ "label": "|", "matrix":[7,4],"x": 13.5, "y": 2.5, "w": 1.5 },
{ "label": "delete", "matrix":[7,2],"x": 15.25, "y": 2.5 },
{ "label": "end", "matrix":[7,1],"x": 16.25, "y": 2.5 },
{ "label": "pg dn", "matrix":[7,0],"x": 17.25, "y": 2.5 },
{ "label": "tab", "matrix":[2,0],"x": 0, "y": 2.25, "w": 1.5 },
{ "label": "q", "matrix":[2,1],"x": 1.5, "y": 2.25 },
{ "label": "w", "matrix":[2,2],"x": 2.5, "y": 2.25 },
{ "label": "e", "matrix":[2,3],"x": 3.5, "y": 2.25 },
{ "label": "r", "matrix":[2,4],"x": 4.5, "y": 2.25 },
{ "label": "t", "matrix":[2,5],"x": 5.5, "y": 2.25 },
{ "label": "y", "matrix":[2,6],"x": 6.5, "y": 2.25 },
{ "label": "u", "matrix":[2,7],"x": 7.5, "y": 2.25 },
{ "label": "i", "matrix":[2,8],"x": 8.5, "y": 2.25 },
{ "label": "o", "matrix":[7,8],"x": 9.5, "y": 2.25 },
{ "label": "p", "matrix":[7,7],"x": 10.5, "y": 2.25 },
{ "label": "{", "matrix":[7,6],"x": 11.5, "y": 2.25 },
{ "label": "}", "matrix":[7,5],"x": 12.5, "y": 2.25 },
{ "label": "|", "matrix":[7,4],"x": 13.5, "y": 2.25, "w": 1.5 },
{ "label": "delete", "matrix":[7,2],"x": 15.25, "y": 2.25 },
{ "label": "end", "matrix":[7,1],"x": 16.25, "y": 2.25 },
{ "label": "pg dn", "matrix":[7,0],"x": 17.25, "y": 2.25 },
{ "label": "capslock", "matrix":[3,0],"x": 0, "y": 3.5, "w": 1.75 },
{ "label": "a", "matrix":[3,1],"x": 1.75, "y": 3.5 },
{ "label": "s", "matrix":[3,2],"x": 2.75, "y": 3.5 },
{ "label": "d", "matrix":[3,3],"x": 3.75, "y": 3.5 },
{ "label": "f", "matrix":[3,4],"x": 4.75, "y": 3.5 },
{ "label": "g", "matrix":[3,5],"x": 5.75, "y": 3.5 },
{ "label": "h", "matrix":[3,6],"x": 6.75, "y": 3.5 },
{ "label": "j", "matrix":[3,7],"x": 7.75, "y": 3.5 },
{ "label": "k", "matrix":[3,8],"x": 8.75, "y": 3.5 },
{ "label": "l", "matrix":[8,8],"x": 9.75, "y": 3.5 },
{ "label": ";", "matrix":[8,7],"x": 10.75, "y": 3.5 },
{ "label": "'", "matrix":[8,6],"x": 11.75, "y": 3.5 },
{ "label": "enter", "matrix":[8,5],"x": 12.75, "y": 3.5, "w": 2.25 },
{ "label": "capslock", "matrix":[3,0],"x": 0, "y": 3.25, "w": 1.75 },
{ "label": "a", "matrix":[3,1],"x": 1.75, "y": 3.25 },
{ "label": "s", "matrix":[3,2],"x": 2.75, "y": 3.25 },
{ "label": "d", "matrix":[3,3],"x": 3.75, "y": 3.25 },
{ "label": "f", "matrix":[3,4],"x": 4.75, "y": 3.25 },
{ "label": "g", "matrix":[3,5],"x": 5.75, "y": 3.25 },
{ "label": "h", "matrix":[3,6],"x": 6.75, "y": 3.25 },
{ "label": "j", "matrix":[3,7],"x": 7.75, "y": 3.25 },
{ "label": "k", "matrix":[3,8],"x": 8.75, "y": 3.25 },
{ "label": "l", "matrix":[8,8],"x": 9.75, "y": 3.25 },
{ "label": ";", "matrix":[8,7],"x": 10.75, "y": 3.25 },
{ "label": "'", "matrix":[8,6],"x": 11.75, "y": 3.25 },
{ "label": "enter", "matrix":[8,5],"x": 12.75, "y": 3.25, "w": 2.25 },
{ "label": "leftshift", "matrix":[4,0],"x": 0, "y": 4.5, "w": 2.25 },
{ "label": "z", "matrix":[4,1],"x": 2.25, "y": 4.5 },
{ "label": "x", "matrix":[4,2],"x": 3.25, "y": 4.5 },
{ "label": "c", "matrix":[4,3],"x": 4.25, "y": 4.5 },
{ "label": "v", "matrix":[4,4],"x": 5.25, "y": 4.5 },
{ "label": "b", "matrix":[4,5],"x": 6.25, "y": 4.5 },
{ "label": "n", "matrix":[4,6],"x": 7.25, "y": 4.5 },
{ "label": "m", "matrix":[4,7],"x": 8.25, "y": 4.5 },
{ "label": ",", "matrix":[4,8],"x": 9.25, "y": 4.5 },
{ "label": ".", "matrix":[9,8],"x": 10.25, "y": 4.5 },
{ "label": "/", "matrix":[9,7],"x": 11.25, "y": 4.5 },
{ "label": "rightshift", "matrix":[9,6],"x": 12.25, "y": 4.5, "w": 2.75 },
{ "label": "up", "matrix":[8,1],"x": 16.25, "y": 4.5 },
{ "label": "leftshift", "matrix":[4,0],"x": 0, "y": 4.25, "w": 2.25 },
{ "label": "z", "matrix":[4,1],"x": 2.25, "y": 4.25 },
{ "label": "x", "matrix":[4,2],"x": 3.25, "y": 4.25 },
{ "label": "c", "matrix":[4,3],"x": 4.25, "y": 4.25 },
{ "label": "v", "matrix":[4,4],"x": 5.25, "y": 4.25 },
{ "label": "b", "matrix":[4,5],"x": 6.25, "y": 4.25 },
{ "label": "n", "matrix":[4,6],"x": 7.25, "y": 4.25 },
{ "label": "m", "matrix":[4,7],"x": 8.25, "y": 4.25 },
{ "label": ",", "matrix":[4,8],"x": 9.25, "y": 4.25 },
{ "label": ".", "matrix":[9,8],"x": 10.25, "y": 4.25 },
{ "label": "/", "matrix":[9,7],"x": 11.25, "y": 4.25 },
{ "label": "rightshift", "matrix":[9,6],"x": 12.25, "y": 4.25, "w": 2.75 },
{ "label": "up", "matrix":[8,1],"x": 16.25, "y": 4.25 },
{ "label": "lctrl", "matrix":[10,0],"x": 0, "y": 5.5, "w": 1.5 },
{ "label": "lwin", "matrix":[10,1],"x": 1.5, "y": 5.5 },
{ "label": "lalt", "matrix":[10,2],"x": 2.5, "y": 5.5, "w": 1.5 },
{ "label": "space", "matrix":[10,3],"x": 4, "y": 5.5, "w": 7 },
{ "label": "ralt", "matrix":[10,5],"x": 11, "y": 5.5, "w": 1.5 },
{ "label": "rwin", "matrix":[10,6],"x": 12.5, "y": 5.5, "w": 1 },
{ "label": "rctrl", "matrix":[10,7],"x": 13.5, "y": 5.5, "w":1.5},
{ "label": "left", "matrix":[9,2],"x": 15.25, "y": 5.5 },
{ "label": "down", "matrix":[9,1],"x": 16.25, "y": 5.5 },
{ "label": "right", "matrix":[9,0],"x": 17.25, "y": 5.5 }
{ "label": "lctrl", "matrix":[10,0],"x": 0, "y": 5.25, "w": 1.5 },
{ "label": "lwin", "matrix":[10,1],"x": 1.5, "y": 5.25 },
{ "label": "lalt", "matrix":[10,2],"x": 2.5, "y": 5.25, "w": 1.5 },
{ "label": "space", "matrix":[10,3],"x": 4, "y": 5.25, "w": 7 },
{ "label": "ralt", "matrix":[10,5],"x": 11, "y": 5.25, "w": 1.5 },
{ "label": "rwin", "matrix":[10,6],"x": 12.5, "y": 5.25, "w": 1 },
{ "label": "rctrl", "matrix":[10,7],"x": 13.5, "y": 5.25, "w":1.5},
{ "label": "left", "matrix":[9,2],"x": 15.25, "y": 5.25 },
{ "label": "down", "matrix":[9,1],"x": 16.25, "y": 5.25 },
{ "label": "right", "matrix":[9,0],"x": 17.25, "y": 5.25 }
]
}
},
}
}

View File

@@ -4,7 +4,7 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
[0] = LAYOUT_tkl_f13_ansi_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_F13, 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,

View File

@@ -4,7 +4,7 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
[0] = LAYOUT_tkl_f13_ansi_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_F13, 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,

View File

@@ -9,8 +9,17 @@
"rows": ["F0", "F1", "F4", "F5", "C6", "B1", "B2", "B3", "D3", "D5", "D6"],
"cols": ["D0", "D1", "D2", "B0", "C7", "B5", "D7", "B4", "B6"]
},
"layout_aliases": {
"LAYOUT": "LAYOUT_tkl_f13_ansi_tsangan"
},
"community_layouts": [
"tkl_f13_ansi_tsangan",
"tkl_f13_ansi_tsangan_split_bs_rshift",
"tkl_f13_iso_tsangan",
"tkl_f13_iso_tsangan_split_bs_rshift"
],
"layouts": {
"LAYOUT": {
"LAYOUT_tkl_f13_ansi_tsangan": {
"layout": [
{ "label": "Esc", "matrix":[0,0],"x": 0, "y": 0 },
{ "label": "F1", "matrix":[0,1],"x": 1.25, "y": 0 },
@@ -21,90 +30,384 @@
{ "label": "F6", "matrix":[0,6],"x": 6.5, "y": 0 },
{ "label": "F7", "matrix":[0,7],"x": 7.5, "y": 0 },
{ "label": "F8", "matrix":[5,8],"x": 8.5, "y": 0 },
{ "label": "F9", "matrix":[5,7],"x": 9.5, "y": 0 },
{ "label": "F9", "matrix":[5,7],"x": 9.75, "y": 0 },
{ "label": "F10", "matrix":[5,6],"x": 10.75, "y": 0 },
{ "label": "F11", "matrix":[5,5],"x": 11.75, "y": 0 },
{ "label": "F12", "matrix":[5,4],"x": 12.75, "y": 0 },
{ "label": "F13", "matrix":[5,3],"x": 13.75, "y": 0 },
{ "label": "F13", "matrix":[5,3],"x": 14, "y": 0 },
{ "label": "Prtsc", "matrix":[5,2],"x": 15.25, "y": 0 },
{ "label": "Scrlk", "matrix":[5,1],"x": 16.25, "y": 0 },
{ "label": "Pause", "matrix":[5,0],"x": 17.25, "y": 0 },
{ "label": "", "matrix":[1,0],"x": 0, "y": 1.5 },
{ "label": "1", "matrix":[1,1],"x": 1, "y": 1.5 },
{ "label": "2", "matrix":[1,2],"x": 2, "y": 1.5 },
{ "label": "3", "matrix":[1,3],"x": 3, "y": 1.5 },
{ "label": "4", "matrix":[1,4],"x": 4, "y": 1.5 },
{ "label": "5", "matrix":[1,5],"x": 5, "y": 1.5 },
{ "label": "6", "matrix":[1,6],"x": 6, "y": 1.5 },
{ "label": "7", "matrix":[1,7],"x": 7, "y": 1.5 },
{ "label": "8", "matrix":[1,8],"x": 8, "y": 1.5 },
{ "label": "9", "matrix":[6,8],"x": 9, "y": 1.5 },
{ "label": "0", "matrix":[6,7],"x": 10, "y": 1.5 },
{ "label": "-", "matrix":[6,6],"x": 11, "y": 1.5 },
{ "label": "=", "matrix":[6,5],"x": 12, "y": 1.5 },
{ "label": "backspace", "matrix":[6,4],"x": 13, "y": 1.5, "w": 2 },
{ "label": "insert", "matrix":[6,2],"x": 15.25, "y": 1.5 },
{ "label": "home", "matrix":[6,1],"x": 16.25, "y": 1.5 },
{ "label": "pg up", "matrix":[6,0],"x": 17.25, "y": 1.5 },
{ "label": "", "matrix":[1,0],"x": 0, "y": 1.25 },
{ "label": "1", "matrix":[1,1],"x": 1, "y": 1.25 },
{ "label": "2", "matrix":[1,2],"x": 2, "y": 1.25 },
{ "label": "3", "matrix":[1,3],"x": 3, "y": 1.25 },
{ "label": "4", "matrix":[1,4],"x": 4, "y": 1.25 },
{ "label": "5", "matrix":[1,5],"x": 5, "y": 1.25 },
{ "label": "6", "matrix":[1,6],"x": 6, "y": 1.25 },
{ "label": "7", "matrix":[1,7],"x": 7, "y": 1.25 },
{ "label": "8", "matrix":[1,8],"x": 8, "y": 1.25 },
{ "label": "9", "matrix":[6,8],"x": 9, "y": 1.25 },
{ "label": "0", "matrix":[6,7],"x": 10, "y": 1.25 },
{ "label": "-", "matrix":[6,6],"x": 11, "y": 1.25 },
{ "label": "=", "matrix":[6,5],"x": 12, "y": 1.25 },
{ "label": "backspace", "matrix":[6,4],"x": 13, "y": 1.25, "w": 2 },
{ "label": "insert", "matrix":[6,2],"x": 15.25, "y": 1.25 },
{ "label": "home", "matrix":[6,1],"x": 16.25, "y": 1.25 },
{ "label": "pg up", "matrix":[6,0],"x": 17.25, "y": 1.25 },
{ "label": "tab", "matrix":[2,0],"x": 0, "y": 2.5, "w": 1.5 },
{ "label": "q", "matrix":[2,1],"x": 1.5, "y": 2.5 },
{ "label": "w", "matrix":[2,2],"x": 2.5, "y": 2.5 },
{ "label": "e", "matrix":[2,3],"x": 3.5, "y": 2.5 },
{ "label": "r", "matrix":[2,4],"x": 4.5, "y": 2.5 },
{ "label": "t", "matrix":[2,5],"x": 5.5, "y": 2.5 },
{ "label": "y", "matrix":[2,6],"x": 6.5, "y": 2.5 },
{ "label": "u", "matrix":[2,7],"x": 7.5, "y": 2.5 },
{ "label": "i", "matrix":[2,8],"x": 8.5, "y": 2.5 },
{ "label": "o", "matrix":[7,8],"x": 9.5, "y": 2.5 },
{ "label": "p", "matrix":[7,7],"x": 10.5, "y": 2.5 },
{ "label": "{", "matrix":[7,6],"x": 11.5, "y": 2.5 },
{ "label": "}", "matrix":[7,5],"x": 12.5, "y": 2.5 },
{ "label": "|", "matrix":[7,4],"x": 13.5, "y": 2.5, "w": 1.5 },
{ "label": "delete", "matrix":[7,2],"x": 15.25, "y": 2.5 },
{ "label": "end", "matrix":[7,1],"x": 16.25, "y": 2.5 },
{ "label": "pg dn", "matrix":[7,0],"x": 17.25, "y": 2.5 },
{ "label": "tab", "matrix":[2,0],"x": 0, "y": 2.25, "w": 1.5 },
{ "label": "q", "matrix":[2,1],"x": 1.5, "y": 2.25 },
{ "label": "w", "matrix":[2,2],"x": 2.5, "y": 2.25 },
{ "label": "e", "matrix":[2,3],"x": 3.5, "y": 2.25 },
{ "label": "r", "matrix":[2,4],"x": 4.5, "y": 2.25 },
{ "label": "t", "matrix":[2,5],"x": 5.5, "y": 2.25 },
{ "label": "y", "matrix":[2,6],"x": 6.5, "y": 2.25 },
{ "label": "u", "matrix":[2,7],"x": 7.5, "y": 2.25 },
{ "label": "i", "matrix":[2,8],"x": 8.5, "y": 2.25 },
{ "label": "o", "matrix":[7,8],"x": 9.5, "y": 2.25 },
{ "label": "p", "matrix":[7,7],"x": 10.5, "y": 2.25 },
{ "label": "{", "matrix":[7,6],"x": 11.5, "y": 2.25 },
{ "label": "}", "matrix":[7,5],"x": 12.5, "y": 2.25 },
{ "label": "|", "matrix":[7,4],"x": 13.5, "y": 2.25, "w": 1.5 },
{ "label": "delete", "matrix":[7,2],"x": 15.25, "y": 2.25 },
{ "label": "end", "matrix":[7,1],"x": 16.25, "y": 2.25 },
{ "label": "pg dn", "matrix":[7,0],"x": 17.25, "y": 2.25 },
{ "label": "capslock", "matrix":[3,0],"x": 0, "y": 3.5, "w": 1.75 },
{ "label": "a", "matrix":[3,1],"x": 1.75, "y": 3.5 },
{ "label": "s", "matrix":[3,2],"x": 2.75, "y": 3.5 },
{ "label": "d", "matrix":[3,3],"x": 3.75, "y": 3.5 },
{ "label": "f", "matrix":[3,4],"x": 4.75, "y": 3.5 },
{ "label": "g", "matrix":[3,5],"x": 5.75, "y": 3.5 },
{ "label": "h", "matrix":[3,6],"x": 6.75, "y": 3.5 },
{ "label": "j", "matrix":[3,7],"x": 7.75, "y": 3.5 },
{ "label": "k", "matrix":[3,8],"x": 8.75, "y": 3.5 },
{ "label": "l", "matrix":[8,8],"x": 9.75, "y": 3.5 },
{ "label": ";", "matrix":[8,7],"x": 10.75, "y": 3.5 },
{ "label": "'", "matrix":[8,6],"x": 11.75, "y": 3.5 },
{ "label": "enter", "matrix":[8,5],"x": 12.75, "y": 3.5, "w": 2.25 },
{ "label": "capslock", "matrix":[3,0],"x": 0, "y": 3.25, "w": 1.75 },
{ "label": "a", "matrix":[3,1],"x": 1.75, "y": 3.25 },
{ "label": "s", "matrix":[3,2],"x": 2.75, "y": 3.25 },
{ "label": "d", "matrix":[3,3],"x": 3.75, "y": 3.25 },
{ "label": "f", "matrix":[3,4],"x": 4.75, "y": 3.25 },
{ "label": "g", "matrix":[3,5],"x": 5.75, "y": 3.25 },
{ "label": "h", "matrix":[3,6],"x": 6.75, "y": 3.25 },
{ "label": "j", "matrix":[3,7],"x": 7.75, "y": 3.25 },
{ "label": "k", "matrix":[3,8],"x": 8.75, "y": 3.25 },
{ "label": "l", "matrix":[8,8],"x": 9.75, "y": 3.25 },
{ "label": ";", "matrix":[8,7],"x": 10.75, "y": 3.25 },
{ "label": "'", "matrix":[8,6],"x": 11.75, "y": 3.25 },
{ "label": "enter", "matrix":[8,5],"x": 12.75, "y": 3.25, "w": 2.25 },
{ "label": "leftshift", "matrix":[4,0],"x": 0, "y": 4.5, "w": 2.25 },
{ "label": "z", "matrix":[4,1],"x": 2.25, "y": 4.5 },
{ "label": "x", "matrix":[4,2],"x": 3.25, "y": 4.5 },
{ "label": "c", "matrix":[4,3],"x": 4.25, "y": 4.5 },
{ "label": "v", "matrix":[4,4],"x": 5.25, "y": 4.5 },
{ "label": "b", "matrix":[4,5],"x": 6.25, "y": 4.5 },
{ "label": "n", "matrix":[4,6],"x": 7.25, "y": 4.5 },
{ "label": "m", "matrix":[4,7],"x": 8.25, "y": 4.5 },
{ "label": ",", "matrix":[4,8],"x": 9.25, "y": 4.5 },
{ "label": ".", "matrix":[9,8],"x": 10.25, "y": 4.5 },
{ "label": "/", "matrix":[9,7],"x": 11.25, "y": 4.5 },
{ "label": "rightshift", "matrix":[9,6],"x": 12.25, "y": 4.5, "w": 2.75 },
{ "label": "up", "matrix":[8,1],"x": 16.25, "y": 4.5 },
{ "label": "leftshift", "matrix":[4,0],"x": 0, "y": 4.25, "w": 2.25 },
{ "label": "z", "matrix":[4,1],"x": 2.25, "y": 4.25 },
{ "label": "x", "matrix":[4,2],"x": 3.25, "y": 4.25 },
{ "label": "c", "matrix":[4,3],"x": 4.25, "y": 4.25 },
{ "label": "v", "matrix":[4,4],"x": 5.25, "y": 4.25 },
{ "label": "b", "matrix":[4,5],"x": 6.25, "y": 4.25 },
{ "label": "n", "matrix":[4,6],"x": 7.25, "y": 4.25 },
{ "label": "m", "matrix":[4,7],"x": 8.25, "y": 4.25 },
{ "label": ",", "matrix":[4,8],"x": 9.25, "y": 4.25 },
{ "label": ".", "matrix":[9,8],"x": 10.25, "y": 4.25 },
{ "label": "/", "matrix":[9,7],"x": 11.25, "y": 4.25 },
{ "label": "rightshift", "matrix":[9,6],"x": 12.25, "y": 4.25, "w": 2.75 },
{ "label": "up", "matrix":[8,1],"x": 16.25, "y": 4.25 },
{ "label": "lctrl", "matrix":[10,0],"x": 0, "y": 5.5, "w": 1.5 },
{ "label": "lwin", "matrix":[10,1],"x": 1.5, "y": 5.5 },
{ "label": "lalt", "matrix":[10,2],"x": 2.5, "y": 5.5, "w": 1.5 },
{ "label": "space", "matrix":[10,3],"x": 4, "y": 5.5, "w": 7 },
{ "label": "ralt", "matrix":[10,5],"x": 11, "y": 5.5, "w": 1.5 },
{ "label": "rwin", "matrix":[10,6],"x": 12.5, "y": 5.5, "w": 1 },
{ "label": "rctrl", "matrix":[10,7],"x": 13.5, "y": 5.5, "w":1.5},
{ "label": "left", "matrix":[9,2],"x": 15.25, "y": 5.5 },
{ "label": "down", "matrix":[9,1],"x": 16.25, "y": 5.5 },
{ "label": "right", "matrix":[9,0],"x": 17.25, "y": 5.5 }
{ "label": "lctrl", "matrix":[10,0],"x": 0, "y": 5.25, "w": 1.5 },
{ "label": "lwin", "matrix":[10,1],"x": 1.5, "y": 5.25 },
{ "label": "lalt", "matrix":[10,2],"x": 2.5, "y": 5.25, "w": 1.5 },
{ "label": "space", "matrix":[10,3],"x": 4, "y": 5.25, "w": 7 },
{ "label": "ralt", "matrix":[10,5],"x": 11, "y": 5.25, "w": 1.5 },
{ "label": "rwin", "matrix":[10,6],"x": 12.5, "y": 5.25, "w": 1 },
{ "label": "rctrl", "matrix":[10,7],"x": 13.5, "y": 5.25, "w":1.5},
{ "label": "left", "matrix":[9,2],"x": 15.25, "y": 5.25 },
{ "label": "down", "matrix":[9,1],"x": 16.25, "y": 5.25 },
{ "label": "right", "matrix":[9,0],"x": 17.25, "y": 5.25 }
]
},
"LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift": {
"layout": [
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "F1", "matrix": [0, 1], "x": 1.25, "y": 0},
{"label": "F2", "matrix": [0, 2], "x": 2.25, "y": 0},
{"label": "F3", "matrix": [0, 3], "x": 3.25, "y": 0},
{"label": "F4", "matrix": [0, 4], "x": 4.25, "y": 0},
{"label": "F5", "matrix": [0, 5], "x": 5.5, "y": 0},
{"label": "F6", "matrix": [0, 6], "x": 6.5, "y": 0},
{"label": "F7", "matrix": [0, 7], "x": 7.5, "y": 0},
{"label": "F8", "matrix": [5, 8], "x": 8.5, "y": 0},
{"label": "F9", "matrix": [5, 7], "x": 9.75, "y": 0},
{"label": "F10", "matrix": [5, 6], "x": 10.75, "y": 0},
{"label": "F11", "matrix": [5, 5], "x": 11.75, "y": 0},
{"label": "F12", "matrix": [5, 4], "x": 12.75, "y": 0},
{"label": "F13", "matrix": [5, 3], "x": 14, "y": 0},
{"label": "Prtsc", "matrix": [5, 2], "x": 15.25, "y": 0},
{"label": "Scrlk", "matrix": [5, 1], "x": 16.25, "y": 0},
{"label": "Pause", "matrix": [5, 0], "x": 17.25, "y": 0},
{"label": "~", "matrix": [1, 0], "x": 0, "y": 1.25},
{"label": "1", "matrix": [1, 1], "x": 1, "y": 1.25},
{"label": "2", "matrix": [1, 2], "x": 2, "y": 1.25},
{"label": "3", "matrix": [1, 3], "x": 3, "y": 1.25},
{"label": "4", "matrix": [1, 4], "x": 4, "y": 1.25},
{"label": "5", "matrix": [1, 5], "x": 5, "y": 1.25},
{"label": "6", "matrix": [1, 6], "x": 6, "y": 1.25},
{"label": "7", "matrix": [1, 7], "x": 7, "y": 1.25},
{"label": "8", "matrix": [1, 8], "x": 8, "y": 1.25},
{"label": "9", "matrix": [6, 8], "x": 9, "y": 1.25},
{"label": "0", "matrix": [6, 7], "x": 10, "y": 1.25},
{"label": "-", "matrix": [6, 6], "x": 11, "y": 1.25},
{"label": "=", "matrix": [6, 5], "x": 12, "y": 1.25},
{"label": "backspace", "matrix": [6, 4], "x": 13, "y": 1.25},
{"label": "backspace", "matrix": [6, 3], "x": 14, "y": 1.25},
{"label": "insert", "matrix": [6, 2], "x": 15.25, "y": 1.25},
{"label": "home", "matrix": [6, 1], "x": 16.25, "y": 1.25},
{"label": "pg up", "matrix": [6, 0], "x": 17.25, "y": 1.25},
{"label": "tab", "matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
{"label": "q", "matrix": [2, 1], "x": 1.5, "y": 2.25},
{"label": "w", "matrix": [2, 2], "x": 2.5, "y": 2.25},
{"label": "e", "matrix": [2, 3], "x": 3.5, "y": 2.25},
{"label": "r", "matrix": [2, 4], "x": 4.5, "y": 2.25},
{"label": "t", "matrix": [2, 5], "x": 5.5, "y": 2.25},
{"label": "y", "matrix": [2, 6], "x": 6.5, "y": 2.25},
{"label": "u", "matrix": [2, 7], "x": 7.5, "y": 2.25},
{"label": "i", "matrix": [2, 8], "x": 8.5, "y": 2.25},
{"label": "o", "matrix": [7, 8], "x": 9.5, "y": 2.25},
{"label": "p", "matrix": [7, 7], "x": 10.5, "y": 2.25},
{"label": "{", "matrix": [7, 6], "x": 11.5, "y": 2.25},
{"label": "}", "matrix": [7, 5], "x": 12.5, "y": 2.25},
{"label": "|", "matrix": [7, 4], "x": 13.5, "y": 2.25, "w": 1.5},
{"label": "delete", "matrix": [7, 2], "x": 15.25, "y": 2.25},
{"label": "end", "matrix": [7, 1], "x": 16.25, "y": 2.25},
{"label": "pg dn", "matrix": [7, 0], "x": 17.25, "y": 2.25},
{"label": "capslock", "matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
{"label": "a", "matrix": [3, 1], "x": 1.75, "y": 3.25},
{"label": "s", "matrix": [3, 2], "x": 2.75, "y": 3.25},
{"label": "d", "matrix": [3, 3], "x": 3.75, "y": 3.25},
{"label": "f", "matrix": [3, 4], "x": 4.75, "y": 3.25},
{"label": "g", "matrix": [3, 5], "x": 5.75, "y": 3.25},
{"label": "h", "matrix": [3, 6], "x": 6.75, "y": 3.25},
{"label": "j", "matrix": [3, 7], "x": 7.75, "y": 3.25},
{"label": "k", "matrix": [3, 8], "x": 8.75, "y": 3.25},
{"label": "l", "matrix": [8, 8], "x": 9.75, "y": 3.25},
{"label": ";", "matrix": [8, 7], "x": 10.75, "y": 3.25},
{"label": "'", "matrix": [8, 6], "x": 11.75, "y": 3.25},
{"label": "enter", "matrix": [8, 5], "x": 12.75, "y": 3.25, "w": 2.25},
{"label": "leftshift", "matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
{"label": "z", "matrix": [4, 1], "x": 2.25, "y": 4.25},
{"label": "x", "matrix": [4, 2], "x": 3.25, "y": 4.25},
{"label": "c", "matrix": [4, 3], "x": 4.25, "y": 4.25},
{"label": "v", "matrix": [4, 4], "x": 5.25, "y": 4.25},
{"label": "b", "matrix": [4, 5], "x": 6.25, "y": 4.25},
{"label": "n", "matrix": [4, 6], "x": 7.25, "y": 4.25},
{"label": "m", "matrix": [4, 7], "x": 8.25, "y": 4.25},
{"label": ",", "matrix": [4, 8], "x": 9.25, "y": 4.25},
{"label": ".", "matrix": [9, 8], "x": 10.25, "y": 4.25},
{"label": "/", "matrix": [9, 7], "x": 11.25, "y": 4.25},
{"label": "rightshift", "matrix": [9, 6], "x": 12.25, "y": 4.25, "w": 1.75},
{"label": "rightshift", "matrix": [9, 5], "x": 14, "y": 4.25},
{"label": "up", "matrix": [8, 1], "x": 16.25, "y": 4.25},
{"label": "lctrl", "matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
{"label": "lwin", "matrix": [10, 1], "x": 1.5, "y": 5.25},
{"label": "lalt", "matrix": [10, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"label": "space", "matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
{"label": "ralt", "matrix": [10, 5], "x": 11, "y": 5.25, "w": 1.5},
{"label": "rwin", "matrix": [10, 6], "x": 12.5, "y": 5.25},
{"label": "rctrl", "matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
{"label": "left", "matrix": [9, 2], "x": 15.25, "y": 5.25},
{"label": "down", "matrix": [9, 1], "x": 16.25, "y": 5.25},
{"label": "right", "matrix": [9, 0], "x": 17.25, "y": 5.25}
]
},
"LAYOUT_tkl_f13_iso_tsangan": {
"layout": [
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "F1", "matrix": [0, 1], "x": 1.25, "y": 0},
{"label": "F2", "matrix": [0, 2], "x": 2.25, "y": 0},
{"label": "F3", "matrix": [0, 3], "x": 3.25, "y": 0},
{"label": "F4", "matrix": [0, 4], "x": 4.25, "y": 0},
{"label": "F5", "matrix": [0, 5], "x": 5.5, "y": 0},
{"label": "F6", "matrix": [0, 6], "x": 6.5, "y": 0},
{"label": "F7", "matrix": [0, 7], "x": 7.5, "y": 0},
{"label": "F8", "matrix": [5, 8], "x": 8.5, "y": 0},
{"label": "F9", "matrix": [5, 7], "x": 9.75, "y": 0},
{"label": "F10", "matrix": [5, 6], "x": 10.75, "y": 0},
{"label": "F11", "matrix": [5, 5], "x": 11.75, "y": 0},
{"label": "F12", "matrix": [5, 4], "x": 12.75, "y": 0},
{"label": "F13", "matrix": [5, 3], "x": 14, "y": 0},
{"label": "Prtsc", "matrix": [5, 2], "x": 15.25, "y": 0},
{"label": "Scrlk", "matrix": [5, 1], "x": 16.25, "y": 0},
{"label": "Pause", "matrix": [5, 0], "x": 17.25, "y": 0},
{"label": "~", "matrix": [1, 0], "x": 0, "y": 1.25},
{"label": "1", "matrix": [1, 1], "x": 1, "y": 1.25},
{"label": "2", "matrix": [1, 2], "x": 2, "y": 1.25},
{"label": "3", "matrix": [1, 3], "x": 3, "y": 1.25},
{"label": "4", "matrix": [1, 4], "x": 4, "y": 1.25},
{"label": "5", "matrix": [1, 5], "x": 5, "y": 1.25},
{"label": "6", "matrix": [1, 6], "x": 6, "y": 1.25},
{"label": "7", "matrix": [1, 7], "x": 7, "y": 1.25},
{"label": "8", "matrix": [1, 8], "x": 8, "y": 1.25},
{"label": "9", "matrix": [6, 8], "x": 9, "y": 1.25},
{"label": "0", "matrix": [6, 7], "x": 10, "y": 1.25},
{"label": "-", "matrix": [6, 6], "x": 11, "y": 1.25},
{"label": "=", "matrix": [6, 5], "x": 12, "y": 1.25},
{"label": "backspace", "matrix": [6, 4], "x": 13, "y": 1.25, "w": 2},
{"label": "insert", "matrix": [6, 2], "x": 15.25, "y": 1.25},
{"label": "home", "matrix": [6, 1], "x": 16.25, "y": 1.25},
{"label": "pg up", "matrix": [6, 0], "x": 17.25, "y": 1.25},
{"label": "tab", "matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
{"label": "q", "matrix": [2, 1], "x": 1.5, "y": 2.25},
{"label": "w", "matrix": [2, 2], "x": 2.5, "y": 2.25},
{"label": "e", "matrix": [2, 3], "x": 3.5, "y": 2.25},
{"label": "r", "matrix": [2, 4], "x": 4.5, "y": 2.25},
{"label": "t", "matrix": [2, 5], "x": 5.5, "y": 2.25},
{"label": "y", "matrix": [2, 6], "x": 6.5, "y": 2.25},
{"label": "u", "matrix": [2, 7], "x": 7.5, "y": 2.25},
{"label": "i", "matrix": [2, 8], "x": 8.5, "y": 2.25},
{"label": "o", "matrix": [7, 8], "x": 9.5, "y": 2.25},
{"label": "p", "matrix": [7, 7], "x": 10.5, "y": 2.25},
{"label": "{", "matrix": [7, 6], "x": 11.5, "y": 2.25},
{"label": "}", "matrix": [7, 5], "x": 12.5, "y": 2.25},
{"label": "delete", "matrix": [7, 2], "x": 15.25, "y": 2.25},
{"label": "end", "matrix": [7, 1], "x": 16.25, "y": 2.25},
{"label": "pg dn", "matrix": [7, 0], "x": 17.25, "y": 2.25},
{"label": "capslock", "matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
{"label": "a", "matrix": [3, 1], "x": 1.75, "y": 3.25},
{"label": "s", "matrix": [3, 2], "x": 2.75, "y": 3.25},
{"label": "d", "matrix": [3, 3], "x": 3.75, "y": 3.25},
{"label": "f", "matrix": [3, 4], "x": 4.75, "y": 3.25},
{"label": "g", "matrix": [3, 5], "x": 5.75, "y": 3.25},
{"label": "h", "matrix": [3, 6], "x": 6.75, "y": 3.25},
{"label": "j", "matrix": [3, 7], "x": 7.75, "y": 3.25},
{"label": "k", "matrix": [3, 8], "x": 8.75, "y": 3.25},
{"label": "l", "matrix": [8, 8], "x": 9.75, "y": 3.25},
{"label": ";", "matrix": [8, 7], "x": 10.75, "y": 3.25},
{"label": "'", "matrix": [8, 6], "x": 11.75, "y": 3.25},
{"label": "#", "matrix": [7, 4], "x": 12.75, "y": 3.25},
{"label": "enter", "matrix": [8, 5], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"label": "leftshift", "matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
{"label": "\\", "matrix": [9, 3], "x": 1.25, "y": 4.25},
{"label": "z", "matrix": [4, 1], "x": 2.25, "y": 4.25},
{"label": "x", "matrix": [4, 2], "x": 3.25, "y": 4.25},
{"label": "c", "matrix": [4, 3], "x": 4.25, "y": 4.25},
{"label": "v", "matrix": [4, 4], "x": 5.25, "y": 4.25},
{"label": "b", "matrix": [4, 5], "x": 6.25, "y": 4.25},
{"label": "n", "matrix": [4, 6], "x": 7.25, "y": 4.25},
{"label": "m", "matrix": [4, 7], "x": 8.25, "y": 4.25},
{"label": ",", "matrix": [4, 8], "x": 9.25, "y": 4.25},
{"label": ".", "matrix": [9, 8], "x": 10.25, "y": 4.25},
{"label": "/", "matrix": [9, 7], "x": 11.25, "y": 4.25},
{"label": "rightshift", "matrix": [9, 6], "x": 12.25, "y": 4.25, "w": 2.75},
{"label": "up", "matrix": [8, 1], "x": 16.25, "y": 4.25},
{"label": "lctrl", "matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
{"label": "lwin", "matrix": [10, 1], "x": 1.5, "y": 5.25},
{"label": "lalt", "matrix": [10, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"label": "space", "matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
{"label": "ralt", "matrix": [10, 5], "x": 11, "y": 5.25, "w": 1.5},
{"label": "rwin", "matrix": [10, 6], "x": 12.5, "y": 5.25},
{"label": "rctrl", "matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
{"label": "left", "matrix": [9, 2], "x": 15.25, "y": 5.25},
{"label": "down", "matrix": [9, 1], "x": 16.25, "y": 5.25},
{"label": "right", "matrix": [9, 0], "x": 17.25, "y": 5.25}
]
},
"LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift": {
"layout": [
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "F1", "matrix": [0, 1], "x": 1.25, "y": 0},
{"label": "F2", "matrix": [0, 2], "x": 2.25, "y": 0},
{"label": "F3", "matrix": [0, 3], "x": 3.25, "y": 0},
{"label": "F4", "matrix": [0, 4], "x": 4.25, "y": 0},
{"label": "F5", "matrix": [0, 5], "x": 5.5, "y": 0},
{"label": "F6", "matrix": [0, 6], "x": 6.5, "y": 0},
{"label": "F7", "matrix": [0, 7], "x": 7.5, "y": 0},
{"label": "F8", "matrix": [5, 8], "x": 8.5, "y": 0},
{"label": "F9", "matrix": [5, 7], "x": 9.75, "y": 0},
{"label": "F10", "matrix": [5, 6], "x": 10.75, "y": 0},
{"label": "F11", "matrix": [5, 5], "x": 11.75, "y": 0},
{"label": "F12", "matrix": [5, 4], "x": 12.75, "y": 0},
{"label": "F13", "matrix": [5, 3], "x": 14, "y": 0},
{"label": "Prtsc", "matrix": [5, 2], "x": 15.25, "y": 0},
{"label": "Scrlk", "matrix": [5, 1], "x": 16.25, "y": 0},
{"label": "Pause", "matrix": [5, 0], "x": 17.25, "y": 0},
{"label": "~", "matrix": [1, 0], "x": 0, "y": 1.25},
{"label": "1", "matrix": [1, 1], "x": 1, "y": 1.25},
{"label": "2", "matrix": [1, 2], "x": 2, "y": 1.25},
{"label": "3", "matrix": [1, 3], "x": 3, "y": 1.25},
{"label": "4", "matrix": [1, 4], "x": 4, "y": 1.25},
{"label": "5", "matrix": [1, 5], "x": 5, "y": 1.25},
{"label": "6", "matrix": [1, 6], "x": 6, "y": 1.25},
{"label": "7", "matrix": [1, 7], "x": 7, "y": 1.25},
{"label": "8", "matrix": [1, 8], "x": 8, "y": 1.25},
{"label": "9", "matrix": [6, 8], "x": 9, "y": 1.25},
{"label": "0", "matrix": [6, 7], "x": 10, "y": 1.25},
{"label": "-", "matrix": [6, 6], "x": 11, "y": 1.25},
{"label": "=", "matrix": [6, 5], "x": 12, "y": 1.25},
{"label": "backspace", "matrix": [6, 4], "x": 13, "y": 1.25},
{"label": "backspace", "matrix": [6, 3], "x": 14, "y": 1.25},
{"label": "insert", "matrix": [6, 2], "x": 15.25, "y": 1.25},
{"label": "home", "matrix": [6, 1], "x": 16.25, "y": 1.25},
{"label": "pg up", "matrix": [6, 0], "x": 17.25, "y": 1.25},
{"label": "tab", "matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
{"label": "q", "matrix": [2, 1], "x": 1.5, "y": 2.25},
{"label": "w", "matrix": [2, 2], "x": 2.5, "y": 2.25},
{"label": "e", "matrix": [2, 3], "x": 3.5, "y": 2.25},
{"label": "r", "matrix": [2, 4], "x": 4.5, "y": 2.25},
{"label": "t", "matrix": [2, 5], "x": 5.5, "y": 2.25},
{"label": "y", "matrix": [2, 6], "x": 6.5, "y": 2.25},
{"label": "u", "matrix": [2, 7], "x": 7.5, "y": 2.25},
{"label": "i", "matrix": [2, 8], "x": 8.5, "y": 2.25},
{"label": "o", "matrix": [7, 8], "x": 9.5, "y": 2.25},
{"label": "p", "matrix": [7, 7], "x": 10.5, "y": 2.25},
{"label": "{", "matrix": [7, 6], "x": 11.5, "y": 2.25},
{"label": "}", "matrix": [7, 5], "x": 12.5, "y": 2.25},
{"label": "delete", "matrix": [7, 2], "x": 15.25, "y": 2.25},
{"label": "end", "matrix": [7, 1], "x": 16.25, "y": 2.25},
{"label": "pg dn", "matrix": [7, 0], "x": 17.25, "y": 2.25},
{"label": "capslock", "matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
{"label": "a", "matrix": [3, 1], "x": 1.75, "y": 3.25},
{"label": "s", "matrix": [3, 2], "x": 2.75, "y": 3.25},
{"label": "d", "matrix": [3, 3], "x": 3.75, "y": 3.25},
{"label": "f", "matrix": [3, 4], "x": 4.75, "y": 3.25},
{"label": "g", "matrix": [3, 5], "x": 5.75, "y": 3.25},
{"label": "h", "matrix": [3, 6], "x": 6.75, "y": 3.25},
{"label": "j", "matrix": [3, 7], "x": 7.75, "y": 3.25},
{"label": "k", "matrix": [3, 8], "x": 8.75, "y": 3.25},
{"label": "l", "matrix": [8, 8], "x": 9.75, "y": 3.25},
{"label": ";", "matrix": [8, 7], "x": 10.75, "y": 3.25},
{"label": "'", "matrix": [8, 6], "x": 11.75, "y": 3.25},
{"label": "#", "matrix": [7, 4], "x": 12.75, "y": 3.25},
{"label": "enter", "matrix": [8, 5], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"label": "leftshift", "matrix": [4, 0], "x": 0, "y": 4.25, "w": 1.25},
{"label": "\\", "matrix": [9, 3], "x": 1.25, "y": 4.25},
{"label": "z", "matrix": [4, 1], "x": 2.25, "y": 4.25},
{"label": "x", "matrix": [4, 2], "x": 3.25, "y": 4.25},
{"label": "c", "matrix": [4, 3], "x": 4.25, "y": 4.25},
{"label": "v", "matrix": [4, 4], "x": 5.25, "y": 4.25},
{"label": "b", "matrix": [4, 5], "x": 6.25, "y": 4.25},
{"label": "n", "matrix": [4, 6], "x": 7.25, "y": 4.25},
{"label": "m", "matrix": [4, 7], "x": 8.25, "y": 4.25},
{"label": ",", "matrix": [4, 8], "x": 9.25, "y": 4.25},
{"label": ".", "matrix": [9, 8], "x": 10.25, "y": 4.25},
{"label": "/", "matrix": [9, 7], "x": 11.25, "y": 4.25},
{"label": "rightshift", "matrix": [9, 6], "x": 12.25, "y": 4.25, "w": 1.75},
{"label": "rightshift", "matrix": [9, 5], "x": 14, "y": 4.25},
{"label": "up", "matrix": [8, 1], "x": 16.25, "y": 4.25},
{"label": "lctrl", "matrix": [10, 0], "x": 0, "y": 5.25, "w": 1.5},
{"label": "lwin", "matrix": [10, 1], "x": 1.5, "y": 5.25},
{"label": "lalt", "matrix": [10, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"label": "space", "matrix": [10, 3], "x": 4, "y": 5.25, "w": 7},
{"label": "ralt", "matrix": [10, 5], "x": 11, "y": 5.25, "w": 1.5},
{"label": "rwin", "matrix": [10, 6], "x": 12.5, "y": 5.25},
{"label": "rctrl", "matrix": [10, 7], "x": 13.5, "y": 5.25, "w": 1.5},
{"label": "left", "matrix": [9, 2], "x": 15.25, "y": 5.25},
{"label": "down", "matrix": [9, 1], "x": 16.25, "y": 5.25},
{"label": "right", "matrix": [9, 0], "x": 17.25, "y": 5.25}
]
}
},
}
}

View File

@@ -30,29 +30,62 @@
"pid": "0x4F4E",
"vid": "0x414B"
},
"community_layouts": [
"numpad_5x4"
],
"community_layouts": [
"ortho_5x4",
"numpad_5x4"
],
"layouts": {
"LAYOUT_ortho_5x4": {
"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": [2, 3], "x": 3, "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": [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}
]
},
"LAYOUT_numpad_5x4": {
"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": [2, 0], "x": 0, "y": 2},
{"matrix": [2, 1], "x": 1, "y": 2},
{"matrix": [2, 2], "x": 2, "y": 2},
{"h": 2, "matrix": [1, 3], "x": 3, "y": 1},
{"matrix": [1, 3], "x": 3, "y": 1, "h": 2},
{"matrix": [3, 0], "x": 0, "y": 3},
{"matrix": [3, 1], "x": 1, "y": 3},
{"matrix": [3, 2], "x": 2, "y": 3},
{"matrix": [4, 0], "w": 2, "x": 0, "y": 4},
{"matrix": [4, 0], "x": 0, "y": 4, "w": 2},
{"matrix": [4, 2], "x": 2, "y": 4},
{"h": 2, "matrix": [3, 3], "x": 3, "y": 3}
{"matrix": [3, 3], "x": 3, "y": 3, "h": 2}
]
}
}

View File

@@ -6,7 +6,7 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┐
* │TG1│ / │ * │ - │
* │NUM│ / │ * │ - │
* ├───┼───┼───┼───┤
* │ 7 │ 8 │ 9 │ │
* ├───┼───┼───┤ + │
@@ -22,21 +22,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
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
KC_P0, KC_PDOT, KC_PENT
),
/*
* ┌───┬───┬───┬───┐
* │TG1│ / │ * │ - │
* ────────────┤
* │NUM│ / │ * │ - │
* ────────────┤
* │Hom│ ↑ │PgU│ │
* ├───┼───┼───┤ + │
* │ ← │ │ → │ │
* ├───┼───┼──────┤
* ├───┼───┼──────┤
* │End│ ↓ │PgD│ │
* ├───┴───┼───┤Ent│
* │Insert │Del│ │
* └───────┴──────┘
* └───────┴──────┘
*/
[1] = LAYOUT_numpad_5x4(
_______, _______, _______, _______,

View File

@@ -22,21 +22,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
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
KC_P0, KC_PDOT, KC_PENT
),
/*
* ┌───┬───┬───┬───┐
* │ │ / │ * │ - │
* ────────────┤
* │NUM│ / │ * │ - │
* ────────────┤
* │Hom│ ↑ │PgU│ │
* ├───┼───┼───┤ + │
* │ ← │ │ → │ │
* ├───┼───┼──────┤
* ├───┼───┼──────┤
* │End│ ↓ │PgD│ │
* ├───┴───┼───┤Ent│
* │Insert │Del│ │
* └───────┴──────┘
* └───────┴──────┘
*/
[1] = LAYOUT_numpad_5x4(
_______, _______, _______, _______,

View File

@@ -0,0 +1,18 @@
# Matrix Diagram for Alchemist Keyboards OGRN
```
┌───┬───┬───┬───┐
│00 │01 │02 │03 │
┌───┐ ├───┼───┼───┼───┤ ┌───┐
│ │ │10 │11 │12 │13 │ │ │
│10 │ ├───┼───┼───┼───┤ │13 │ 2u Numpad Plus
│ │ │20 │21 │22 │23 │ │ │
├───┤ ├───┼───┼───┼───┤ ├───┤
│ │ │30 │31 │32 │33 │ │ │
│30 │ ├───┼───┼───┼───┤ │33 │ 2u Numpad Enter
│ │ │40 │41 │42 │43 │ │ │
└───┘ └───┴───┴───┴───┘ └───┘
┌───────┬───────┐
│41 │42 │
└───────┴───────┘
```

View File

@@ -4,7 +4,7 @@
This is the QMK firmware repository for the Alpine65, a 65% hotswap keyboard designed by Bitmap Designs and Gondolindrim.
The Alpine65 has entered GB and sucessfully finalized in november 2020; there is no further way to buy an Alpine65 other than the secondhand market. The IC page for the keyboard can be found [here](https://https://geekhack.org/index.php?topic=106974).
The Alpine65 has entered GB and sucessfully finalized in november 2020; there is no further way to buy an Alpine65 other than the secondhand market. The IC page for the keyboard can be found [here](https://geekhack.org/index.php?topic=106974).
## How to compile

View File

@@ -23,6 +23,7 @@
"layout_aliases": {
"LAYOUT": "LAYOUT_all"
},
"community_layouts": ["75_ansi", "75_iso"],
"layouts": {
"LAYOUT_all": {
"layout": [
@@ -118,6 +119,99 @@
{"matrix": [5, 14], "x": 15, "y": 5}
]
},
"LAYOUT_75_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], "x": 13, "y": 0},
{"matrix": [5, 8], "x": 14, "y": 0},
{"matrix": [0, 14], "x": 15, "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, "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, "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, "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, 12], "x": 12.25, "y": 4, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4},
{"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, 5], "x": 3.75, "y": 5, "w": 6.25},
{"matrix": [5, 9], "x": 10, "y": 5},
{"matrix": [5, 10], "x": 11, "y": 5},
{"matrix": [5, 11], "x": 12, "y": 5},
{"matrix": [5, 12], "x": 13, "y": 5},
{"matrix": [5, 13], "x": 14, "y": 5},
{"matrix": [5, 14], "x": 15, "y": 5}
]
},
"LAYOUT_75_ansi_rwkl": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
@@ -210,6 +304,100 @@
{"matrix": [5, 14], "x": 15, "y": 5}
]
},
"LAYOUT_75_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},
{"matrix": [5, 8], "x": 14, "y": 0},
{"matrix": [0, 14], "x": 15, "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, "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, 14], "x": 15, "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, 12], "x": 12.75, "y": 3},
{"matrix": [3, 13], "x": 13.75, "y": 2, "w": 1.25, "h": 2},
{"matrix": [3, 14], "x": 15, "y": 3},
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
{"matrix": [4, 1], "x": 1.25, "y": 4},
{"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, 12], "x": 12.25, "y": 4, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4},
{"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, 5], "x": 3.75, "y": 5, "w": 6.25},
{"matrix": [5, 9], "x": 10, "y": 5},
{"matrix": [5, 10], "x": 11, "y": 5},
{"matrix": [5, 11], "x": 12, "y": 5},
{"matrix": [5, 12], "x": 13, "y": 5},
{"matrix": [5, 13], "x": 14, "y": 5},
{"matrix": [5, 14], "x": 15, "y": 5}
]
},
"LAYOUT_75_iso_rwkl": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},

View File

@@ -43,8 +43,11 @@
"backlight": {
"pin": "GP26"
},
"layout_aliases": {
"LAYOUT": "LAYOUT_ortho_4x3"
},
"layouts": {
"LAYOUT": {
"LAYOUT_ortho_4x3": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},

View File

@@ -8,7 +8,7 @@ enum layer_names {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
[_BASE] = LAYOUT_ortho_4x3(
KC_1, KC_2, KC_3,
KC_4, KC_5, KC_6,
KC_7, KC_8, KC_9,

View File

@@ -3,6 +3,11 @@
"cols": ["F7", "F6", "F5", "F4", "F1", "F0", "C7", "E6", "B0", "B3", "B6", "B5", "B4", "D7", "D4", "D6"],
"rows": ["D2", "D1", "D0", "B2", "B1", "C6"]
},
"encoder": {
"rotary": [
{ "pin_a": "D3", "pin_b": "D5", "resolution": 2 }
]
},
"layouts": {
"LAYOUT_ansi_rwkl": {
"layout": [

View File

@@ -18,11 +18,6 @@
},
"processor": "atmega32u4",
"url": "",
"encoder": {
"rotary": [
{ "pin_a": "D3", "pin_b": "D5", "resolution": 2 }
]
},
"usb": {
"device_version": "1.0.0",
"pid": "0x3449",

View File

@@ -3,6 +3,11 @@
"cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B0", "B1", "B3", "D0", "D1", "D2", "D3", "D7", "D5"],
"rows": ["B2", "C7", "C6", "B6", "B5", "B4"]
},
"encoder": {
"rotary": [
{ "pin_a": "D4", "pin_b": "D6", "resolution": 2 }
]
},
"layouts": {
"LAYOUT_ansi_rwkl": {
"layout": [

View File

@@ -0,0 +1,6 @@
// Copyright 2023 binepad (@binepad)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define ENCODER_DEFAULT_POS 0x3 // enable 1:1 resolution

View File

@@ -0,0 +1,49 @@
{
"manufacturer": "binepad",
"keyboard_name": "PIXIE",
"url": "http://binepad.com",
"maintainer": "binepad",
"processor": "RP2040",
"bootloader": "rp2040",
"diode_direction": "COL2ROW",
"usb": {
"vid": "0x4249",
"pid": "0x5078",
"device_version": "1.0.0"
},
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": false,
"encoder": true
},
"matrix_pins": {
"cols": ["GP19", "GP4"],
"rows": ["GP28", "GP5"]
},
"encoder": {
"rotary": [
{
"pin_a": "GP18",
"pin_b": "GP17"
},
{
"pin_a": "GP20",
"pin_b": "GP21"
}
]
},
"layouts": {
"LAYOUT": {
"layout": [
{ "matrix": [0, 0], "x": 0, "y": 0 },
{ "matrix": [0, 1], "x": 1.25, "y": 0 },
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
{ "matrix": [1, 1], "x": 1.25, "y": 1.25 }
]
}
}
}

View File

@@ -0,0 +1,22 @@
// Copyright 2023 Binepad (@binpad)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_MUTE, KC_MPLY,
KC_MPRV, KC_MNXT
)
};
#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_WH_U, KC_WH_D)
}
};
#endif

View File

@@ -0,0 +1,2 @@
ENCODER_MAP_ENABLE = yes

View File

@@ -0,0 +1,22 @@
// Copyright 2023 Binepad (@binpad)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_MUTE, KC_MPLY,
KC_MPRV, KC_MNXT
)
};
#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_WH_U, KC_WH_D)
}
};
#endif

View File

@@ -0,0 +1,3 @@
VIA_ENABLE = yes
ENCODER_MAP_ENABLE = yes

View File

@@ -0,0 +1,27 @@
# BINEPAD PIXIE
![BINEPAD PIXIE](https://i.imgur.com/OnQnkdUh.jpeg)
*A 2x2 macropad with 2x rotary encoders*
* Keyboard Maintainer: [binepad](https://github.com/binepad)
* Hardware Supported: BINPAD PIXIE
* Hardware Availability: [binepad.com](https://www.binepad.com/pixie)
Make example for this keyboard (after setting up your build environment):
make binepad/pixie:default
Flashing example for this keyboard:
make binepad/pixie: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 (010) in the matrix (the bottom left key) and plug in the keyboard
* **Physical reset button**: Briefly press the PCB button located on the back of the PCB
* **Keycode in layout**: Press the key mapped to `QK_BOOT` or `RESET` if it is available

View File

@@ -0,0 +1 @@
# This file intentionally left blank

View File

@@ -0,0 +1,308 @@
{
"manufacturer": "Bred Works",
"keyboard_name": "Wyvern HS",
"maintainer": "DeskDaily",
"bootloader": "atmel-dfu",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["B3", "B2", "B1", "B0", "F7", "D5", "D3", "D2", "D1", "D0", "E6", "F0", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
"rows": ["B7", "F1", "F6", "F5", "F4"]
},
"processor": "atmega32u4",
"url": "https://bredworks.com/products/wyvern-hotswap-pcb",
"usb": {
"device_version": "0.0.1",
"pid": "0x0001",
"vid": "0x0571"
},
"layouts": {
"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.25, "y": 0},
{"matrix": [0, 5], "x": 5.25, "y": 0},
{"matrix": [0, 6], "x": 6.25, "y": 0},
{"matrix": [0, 7], "x": 7.25, "y": 0},
{"matrix": [0, 8], "x": 8.25, "y": 0},
{"matrix": [0, 9], "x": 9.25, "y": 0},
{"matrix": [0, 10], "x": 10.25, "y": 0},
{"matrix": [0, 11], "x": 11.25, "y": 0},
{"matrix": [0, 12], "x": 12.25, "y": 0},
{"matrix": [0, 13], "x": 13.25, "y": 0},
{"matrix": [0, 14], "x": 14.25, "y": 0},
{"matrix": [0, 15], "x": 15.25, "y": 0},
{"matrix": [0, 16], "x": 16.25, "y": 0},
{"matrix": [0, 17], "x": 17.25, "y": 0},
{"matrix": [0, 19], "x": 19.75, "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.25, "y": 1, "w": 1.5},
{"matrix": [1, 5], "x": 5.75, "y": 1},
{"matrix": [1, 6], "x": 6.75, "y": 1},
{"matrix": [1, 7], "x": 7.75, "y": 1},
{"matrix": [1, 8], "x": 8.75, "y": 1},
{"matrix": [1, 9], "x": 9.75, "y": 1},
{"matrix": [1, 10], "x": 10.75, "y": 1},
{"matrix": [1, 11], "x": 11.75, "y": 1},
{"matrix": [1, 12], "x": 12.75, "y": 1},
{"matrix": [1, 13], "x": 13.75, "y": 1},
{"matrix": [1, 14], "x": 14.75, "y": 1},
{"matrix": [1, 15], "x": 15.75, "y": 1},
{"matrix": [1, 16], "x": 16.75, "y": 1},
{"matrix": [1, 17], "x": 17.75, "y": 1, "w": 1.5},
{"matrix": [1, 19], "x": 19.75, "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.25, "y": 2, "w": 1.75},
{"matrix": [2, 5], "x": 6, "y": 2},
{"matrix": [2, 6], "x": 7, "y": 2},
{"matrix": [2, 7], "x": 8, "y": 2},
{"matrix": [2, 8], "x": 9, "y": 2},
{"matrix": [2, 9], "x": 10, "y": 2},
{"matrix": [2, 10], "x": 11, "y": 2},
{"matrix": [2, 11], "x": 12, "y": 2},
{"matrix": [2, 12], "x": 13, "y": 2},
{"matrix": [2, 13], "x": 14, "y": 2},
{"matrix": [2, 14], "x": 15, "y": 2},
{"matrix": [2, 15], "x": 16, "y": 2},
{"matrix": [2, 16], "x": 17, "y": 2, "w": 2.25},
{"matrix": [2, 19], "x": 19.75, "y": 2},
{"matrix": [3, 0], "x": 0, "y": 3, "h": 2},
{"matrix": [3, 1], "x": 1, "y": 3},
{"matrix": [3, 2], "x": 2, "y": 3},
{"matrix": [3, 3], "x": 3, "y": 3, "h": 2},
{"matrix": [3, 4], "x": 4.25, "y": 3, "w": 1.25},
{"matrix": [3, 5], "x": 5.5, "y": 3},
{"matrix": [3, 6], "x": 6.5, "y": 3},
{"matrix": [3, 7], "x": 7.5, "y": 3},
{"matrix": [3, 8], "x": 8.5, "y": 3},
{"matrix": [3, 9], "x": 9.5, "y": 3},
{"matrix": [3, 10], "x": 10.5, "y": 3},
{"matrix": [3, 11], "x": 11.5, "y": 3},
{"matrix": [3, 12], "x": 12.5, "y": 3},
{"matrix": [3, 13], "x": 13.5, "y": 3},
{"matrix": [3, 14], "x": 14.5, "y": 3},
{"matrix": [3, 15], "x": 15.5, "y": 3},
{"matrix": [3, 16], "x": 16.5, "y": 3, "w": 1.75},
{"matrix": [3, 19], "x": 19.75, "y": 3},
{"matrix": [3, 17], "x": 18.5, "y": 3.25},
{"matrix": [4, 1], "x": 1, "y": 4},
{"matrix": [4, 2], "x": 2, "y": 4},
{"matrix": [4, 4], "x": 4.25, "y": 4, "w": 1.25},
{"matrix": [4, 5], "x": 5.5, "y": 4, "w": 1.25},
{"matrix": [4, 6], "x": 6.75, "y": 4, "w": 1.25},
{"matrix": [4, 8], "x": 8, "y": 4, "w": 2.25},
{"matrix": [4, 10], "x": 10.25, "y": 4, "w": 1.25},
{"matrix": [4, 12], "x": 11.5, "y": 4, "w": 2.75},
{"matrix": [4, 13], "x": 14.25, "y": 4},
{"matrix": [4, 14], "x": 15.25, "y": 4},
{"matrix": [4, 15], "x": 16.25, "y": 4},
{"matrix": [4, 16], "x": 17.5, "y": 4.25},
{"matrix": [4, 17], "x": 18.5, "y": 4.25},
{"matrix": [4, 18], "x": 19.5, "y": 4.25},
{"matrix": [0, 18], "x": 18.25, "y": 0}
]
},
"LAYOUT_mirrored_numpad": {
"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.25, "y": 0},
{"matrix": [0, 5], "x": 5.25, "y": 0},
{"matrix": [0, 6], "x": 6.25, "y": 0},
{"matrix": [0, 7], "x": 7.25, "y": 0},
{"matrix": [0, 8], "x": 8.25, "y": 0},
{"matrix": [0, 9], "x": 9.25, "y": 0},
{"matrix": [0, 10], "x": 10.25, "y": 0},
{"matrix": [0, 11], "x": 11.25, "y": 0},
{"matrix": [0, 12], "x": 12.25, "y": 0},
{"matrix": [0, 13], "x": 13.25, "y": 0},
{"matrix": [0, 14], "x": 14.25, "y": 0},
{"matrix": [0, 15], "x": 15.25, "y": 0},
{"matrix": [0, 16], "x": 16.25, "y": 0},
{"matrix": [0, 17], "x": 17.25, "y": 0},
{"matrix": [0, 19], "x": 19.75, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1, "h": 2},
{"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.25, "y": 1, "w": 1.5},
{"matrix": [1, 5], "x": 5.75, "y": 1},
{"matrix": [1, 6], "x": 6.75, "y": 1},
{"matrix": [1, 7], "x": 7.75, "y": 1},
{"matrix": [1, 8], "x": 8.75, "y": 1},
{"matrix": [1, 9], "x": 9.75, "y": 1},
{"matrix": [1, 10], "x": 10.75, "y": 1},
{"matrix": [1, 11], "x": 11.75, "y": 1},
{"matrix": [1, 12], "x": 12.75, "y": 1},
{"matrix": [1, 13], "x": 13.75, "y": 1},
{"matrix": [1, 14], "x": 14.75, "y": 1},
{"matrix": [1, 15], "x": 15.75, "y": 1},
{"matrix": [1, 16], "x": 16.75, "y": 1},
{"matrix": [1, 17], "x": 17.75, "y": 1, "w": 1.5},
{"matrix": [1, 19], "x": 19.75, "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, 4], "x": 4.25, "y": 2, "w": 1.75},
{"matrix": [2, 5], "x": 6, "y": 2},
{"matrix": [2, 6], "x": 7, "y": 2},
{"matrix": [2, 7], "x": 8, "y": 2},
{"matrix": [2, 8], "x": 9, "y": 2},
{"matrix": [2, 9], "x": 10, "y": 2},
{"matrix": [2, 10], "x": 11, "y": 2},
{"matrix": [2, 11], "x": 12, "y": 2},
{"matrix": [2, 12], "x": 13, "y": 2},
{"matrix": [2, 13], "x": 14, "y": 2},
{"matrix": [2, 14], "x": 15, "y": 2},
{"matrix": [2, 15], "x": 16, "y": 2},
{"matrix": [2, 16], "x": 17, "y": 2, "w": 2.25},
{"matrix": [2, 19], "x": 19.75, "y": 2},
{"matrix": [3, 0], "x": 0, "y": 3, "h": 2},
{"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.25, "y": 3, "w": 1.25},
{"matrix": [3, 5], "x": 5.5, "y": 3},
{"matrix": [3, 6], "x": 6.5, "y": 3},
{"matrix": [3, 7], "x": 7.5, "y": 3},
{"matrix": [3, 8], "x": 8.5, "y": 3},
{"matrix": [3, 9], "x": 9.5, "y": 3},
{"matrix": [3, 10], "x": 10.5, "y": 3},
{"matrix": [3, 11], "x": 11.5, "y": 3},
{"matrix": [3, 12], "x": 12.5, "y": 3},
{"matrix": [3, 13], "x": 13.5, "y": 3},
{"matrix": [3, 14], "x": 14.5, "y": 3},
{"matrix": [3, 15], "x": 15.5, "y": 3},
{"matrix": [3, 16], "x": 16.5, "y": 3, "w": 1.75},
{"matrix": [3, 19], "x": 19.75, "y": 3},
{"matrix": [3, 17], "x": 18.5, "y": 3.25},
{"matrix": [4, 1], "x": 1, "y": 4},
{"matrix": [4, 2], "x": 2, "y": 4, "w": 2},
{"matrix": [4, 4], "x": 4.25, "y": 4, "w": 1.25},
{"matrix": [4, 5], "x": 5.5, "y": 4, "w": 1.25},
{"matrix": [4, 6], "x": 6.75, "y": 4, "w": 1.25},
{"matrix": [4, 8], "x": 8, "y": 4, "w": 2.25},
{"matrix": [4, 10], "x": 10.25, "y": 4, "w": 1.25},
{"matrix": [4, 12], "x": 11.5, "y": 4, "w": 2.75},
{"matrix": [4, 13], "x": 14.25, "y": 4},
{"matrix": [4, 14], "x": 15.25, "y": 4},
{"matrix": [4, 15], "x": 16.25, "y": 4},
{"matrix": [4, 16], "x": 17.5, "y": 4.25},
{"matrix": [4, 17], "x": 18.5, "y": 4.25},
{"matrix": [4, 18], "x": 19.5, "y": 4.25},
{"matrix": [0, 18], "x": 18.25, "y": 0}
]
},
"LAYOUT_regular_numpad": {
"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.25, "y": 0},
{"matrix": [0, 5], "x": 5.25, "y": 0},
{"matrix": [0, 6], "x": 6.25, "y": 0},
{"matrix": [0, 7], "x": 7.25, "y": 0},
{"matrix": [0, 8], "x": 8.25, "y": 0},
{"matrix": [0, 9], "x": 9.25, "y": 0},
{"matrix": [0, 10], "x": 10.25, "y": 0},
{"matrix": [0, 11], "x": 11.25, "y": 0},
{"matrix": [0, 12], "x": 12.25, "y": 0},
{"matrix": [0, 13], "x": 13.25, "y": 0},
{"matrix": [0, 14], "x": 14.25, "y": 0},
{"matrix": [0, 15], "x": 15.25, "y": 0},
{"matrix": [0, 16], "x": 16.25, "y": 0},
{"matrix": [0, 17], "x": 17.25, "y": 0},
{"matrix": [0, 19], "x": 19.75, "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, "h": 2},
{"matrix": [1, 4], "x": 4.25, "y": 1, "w": 1.5},
{"matrix": [1, 5], "x": 5.75, "y": 1},
{"matrix": [1, 6], "x": 6.75, "y": 1},
{"matrix": [1, 7], "x": 7.75, "y": 1},
{"matrix": [1, 8], "x": 8.75, "y": 1},
{"matrix": [1, 9], "x": 9.75, "y": 1},
{"matrix": [1, 10], "x": 10.75, "y": 1},
{"matrix": [1, 11], "x": 11.75, "y": 1},
{"matrix": [1, 12], "x": 12.75, "y": 1},
{"matrix": [1, 13], "x": 13.75, "y": 1},
{"matrix": [1, 14], "x": 14.75, "y": 1},
{"matrix": [1, 15], "x": 15.75, "y": 1},
{"matrix": [1, 16], "x": 16.75, "y": 1},
{"matrix": [1, 17], "x": 17.75, "y": 1, "w": 1.5},
{"matrix": [1, 19], "x": 19.75, "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, 4], "x": 4.25, "y": 2, "w": 1.75},
{"matrix": [2, 5], "x": 6, "y": 2},
{"matrix": [2, 6], "x": 7, "y": 2},
{"matrix": [2, 7], "x": 8, "y": 2},
{"matrix": [2, 8], "x": 9, "y": 2},
{"matrix": [2, 9], "x": 10, "y": 2},
{"matrix": [2, 10], "x": 11, "y": 2},
{"matrix": [2, 11], "x": 12, "y": 2},
{"matrix": [2, 12], "x": 13, "y": 2},
{"matrix": [2, 13], "x": 14, "y": 2},
{"matrix": [2, 14], "x": 15, "y": 2},
{"matrix": [2, 15], "x": 16, "y": 2},
{"matrix": [2, 16], "x": 17, "y": 2, "w": 2.25},
{"matrix": [2, 19], "x": 19.75, "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, "h": 2},
{"matrix": [3, 4], "x": 4.25, "y": 3, "w": 1.25},
{"matrix": [3, 5], "x": 5.5, "y": 3},
{"matrix": [3, 6], "x": 6.5, "y": 3},
{"matrix": [3, 7], "x": 7.5, "y": 3},
{"matrix": [3, 8], "x": 8.5, "y": 3},
{"matrix": [3, 9], "x": 9.5, "y": 3},
{"matrix": [3, 10], "x": 10.5, "y": 3},
{"matrix": [3, 11], "x": 11.5, "y": 3},
{"matrix": [3, 12], "x": 12.5, "y": 3},
{"matrix": [3, 13], "x": 13.5, "y": 3},
{"matrix": [3, 14], "x": 14.5, "y": 3},
{"matrix": [3, 15], "x": 15.5, "y": 3},
{"matrix": [3, 16], "x": 16.5, "y": 3, "w": 1.75},
{"matrix": [3, 19], "x": 19.75, "y": 3},
{"matrix": [3, 17], "x": 18.5, "y": 3.25},
{"matrix": [4, 1], "x": 0, "y": 4, "w": 2},
{"matrix": [4, 2], "x": 2, "y": 4},
{"matrix": [4, 4], "x": 4.25, "y": 4, "w": 1.25},
{"matrix": [4, 5], "x": 5.5, "y": 4, "w": 1.25},
{"matrix": [4, 6], "x": 6.75, "y": 4, "w": 1.25},
{"matrix": [4, 8], "x": 8, "y": 4, "w": 2.25},
{"matrix": [4, 10], "x": 10.25, "y": 4, "w": 1.25},
{"matrix": [4, 12], "x": 11.5, "y": 4, "w": 2.75},
{"matrix": [4, 13], "x": 14.25, "y": 4},
{"matrix": [4, 14], "x": 15.25, "y": 4},
{"matrix": [4, 15], "x": 16.25, "y": 4},
{"matrix": [4, 16], "x": 17.5, "y": 4.25},
{"matrix": [4, 17], "x": 18.5, "y": 4.25},
{"matrix": [4, 18], "x": 19.5, "y": 4.25},
{"matrix": [0, 18], "x": 18.25, "y": 0}
]
}
}
}

View File

@@ -0,0 +1,33 @@
/* Copyright 2023 DeskDaily
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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_mirrored_numpad(
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, 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_PPLS, KC_P7, KC_P8, KC_P9, 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_P4, KC_P5, KC_P6, 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_ENT, KC_P1, KC_P2, KC_P3, 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_LSFT, MO(1), KC_UP,
KC_DEL, KC_P0, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC
),
[1] = LAYOUT_mirrored_numpad(
_______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};

View File

@@ -0,0 +1,33 @@
/* Copyright 2023 DeskDaily
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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_regular_numpad(
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, 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_P7, KC_P8, KC_P9, KC_PPLS, 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_P4, KC_P5, KC_P6, 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_P1, KC_P2, KC_P3, KC_ENT, 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_LSFT, MO(1), KC_UP,
KC_P0, KC_DEL, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC
),
[1] = LAYOUT_regular_numpad(
_______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};

View File

@@ -0,0 +1,33 @@
/* Copyright 2023 DeskDaily
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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(
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, 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_PPLS, KC_P7, KC_P8, KC_P9, 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_PPLS, KC_P4, KC_P5, KC_P6, 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_ENT, KC_P1, KC_P2, KC_P3, 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_LSFT, MO(1), KC_UP,
KC_DEL, KC_P0, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC
),
[1] = LAYOUT_all(
_______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};

View File

@@ -0,0 +1,2 @@
VIA_ENABLE = yes
LTO_ENABLE = yes

View File

@@ -0,0 +1,23 @@
# Bredworks Wyvern HS
* Keyboard Maintainer: [DeskDaily](https://github.com/DeskDaily)
* Hardware Supported: Atmega32u4
* Hardware Availability: [BredWorks](https://bredworks.com/products/wyvern-hotswap-pcb)
Make example for this keyboard (after setting up your build environment):
make bredworks/wyvern_hs:default
Flashing example for this keyboard:
make bredworks/wyvern_hs:default:flash
## Bootloader
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the upper left key/esc) 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
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).

View File

@@ -0,0 +1 @@
# This file intentionally left blank

View File

@@ -38,6 +38,7 @@
}
}
},
"community_layouts": ["split_3x5_2"],
"layouts": {
"LAYOUT_split_3x5_2": {
"layout": [

View File

@@ -49,7 +49,16 @@
"driver": "vendor",
"pin": "GP7"
},
"community_layouts": ["60_ansi", "60_ansi_split_bs_rshift", "60_iso_tsangan"],
"community_layouts": [
"60_ansi",
"60_ansi_split_bs_rshift",
"60_ansi_tsangan",
"60_tsangan_hhkb",
"60_hhkb",
"60_iso",
"60_iso_split_bs_rshift",
"60_iso_tsangan"
],
"layouts": {
"LAYOUT_60_ansi": {
"layout": [
@@ -183,6 +192,354 @@
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
]
},
"LAYOUT_60_ansi_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": [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, 12], "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, 6], "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": [2, 12], "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, 12], "x": 12.25, "y": 3, "w": 1.75},
{"matrix": [3, 13], "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, 6], "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": [2, 12], "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, 12], "x": 12.25, "y": 3, "w": 1.75},
{"matrix": [3, 13], "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, 6], "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_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": [1, 13], "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, "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}
]
},
"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": [2, 12], "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": [1, 13], "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, "w": 1.75},
{"matrix": [3, 13], "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, 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}
]
},
"LAYOUT_60_iso_tsangan": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
@@ -212,7 +569,6 @@
{"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, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"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},
@@ -226,6 +582,7 @@
{"matrix": [2, 10], "x": 10.75, "y": 2},
{"matrix": [2, 11], "x": 11.75, "y": 2},
{"matrix": [1, 13], "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},
@@ -248,6 +605,77 @@
{"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": [2, 12], "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": [1, 13], "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, "w": 1.75},
{"matrix": [3, 13], "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, 6], "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_all": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},

View File

@@ -0,0 +1,24 @@
# Matrix Diagram for CannonKeys Bastion60
```
┌───────┐
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 │46 │4A │4B │4C │4D │
└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
┌────────┐ ┌──────────┐
│30 │ 2.25u LShift 2.75u RShift │3C │
└────────┘ └──────────┘
┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
│40 │41 │42 │46 │4B │4C │4D │ Tsangan/WKL/HHKB
└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
```

View File

@@ -49,8 +49,21 @@
"driver": "vendor",
"pin": "GP7"
},
"layout_aliases": {
"LAYOUT": "LAYOUT_all"
},
"community_layouts": [
"65_ansi_blocker",
"65_ansi_blocker_split_bs",
"65_ansi_blocker_tsangan",
"65_ansi_blocker_tsangan_split_bs",
"65_iso_blocker",
"65_iso_blocker_split_bs",
"65_iso_blocker_tsangan",
"65_iso_blocker_tsangan_split_bs"
],
"layouts": {
"LAYOUT": {
"LAYOUT_all": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
@@ -124,6 +137,610 @@
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_ansi_blocker": {
"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": [0, 14], "x": 15, "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": [1, 14], "x": 15, "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, 13], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [2, 14], "x": 15, "y": 2},
{"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, 12], "x": 12.25, "y": 3, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 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": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_ansi_blocker_split_bs": {
"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": [2, 12], "x": 14, "y": 0},
{"matrix": [0, 14], "x": 15, "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": [1, 14], "x": 15, "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, 13], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [2, 14], "x": 15, "y": 2},
{"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, 12], "x": 12.25, "y": 3, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 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": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_ansi_blocker_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": [0, 14], "x": 15, "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": [1, 14], "x": 15, "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, 13], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [2, 14], "x": 15, "y": 2},
{"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, 12], "x": 12.25, "y": 3, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 6], "x": 4, "y": 4, "w": 7},
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
{"matrix": [4, 12], "x": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_ansi_blocker_tsangan_split_bs": {
"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": [2, 12], "x": 14, "y": 0},
{"matrix": [0, 14], "x": 15, "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": [1, 14], "x": 15, "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, 13], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [2, 14], "x": 15, "y": 2},
{"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, 12], "x": 12.25, "y": 3, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 6], "x": 4, "y": 4, "w": 7},
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
{"matrix": [4, 12], "x": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_iso_blocker": {
"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": [0, 14], "x": 15, "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, 14], "x": 15, "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": [1, 13], "x": 12.75, "y": 2},
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"matrix": [2, 14], "x": 15, "y": 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, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 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": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_iso_blocker_split_bs": {
"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": [2, 12], "x": 14, "y": 0},
{"matrix": [0, 14], "x": 15, "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, 14], "x": 15, "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": [1, 13], "x": 12.75, "y": 2},
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"matrix": [2, 14], "x": 15, "y": 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, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 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": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_iso_blocker_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": [0, 14], "x": 15, "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, 14], "x": 15, "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": [1, 13], "x": 12.75, "y": 2},
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"matrix": [2, 14], "x": 15, "y": 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, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 6], "x": 4, "y": 4, "w": 7},
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
{"matrix": [4, 12], "x": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
},
"LAYOUT_65_iso_blocker_tsangan_split_bs": {
"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": [2, 12], "x": 14, "y": 0},
{"matrix": [0, 14], "x": 15, "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, 14], "x": 15, "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": [1, 13], "x": 12.75, "y": 2},
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
{"matrix": [2, 14], "x": 15, "y": 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, "w": 1.75},
{"matrix": [3, 13], "x": 14, "y": 3},
{"matrix": [3, 14], "x": 15, "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, 6], "x": 4, "y": 4, "w": 7},
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
{"matrix": [4, 12], "x": 13, "y": 4},
{"matrix": [4, 13], "x": 14, "y": 4},
{"matrix": [4, 14], "x": 15, "y": 4}
]
}
}
}

View File

@@ -27,7 +27,7 @@ enum layer_names {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
[_BASE] = 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_DEL, 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,
@@ -35,7 +35,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(_FN1), KC_LEFT, KC_DOWN, KC_RIGHT
),
[_FN1] = LAYOUT(
[_FN1] = LAYOUT_all(
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, _______, _______,
RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,

View File

@@ -27,7 +27,7 @@ enum layer_names {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
[_BASE] = 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_DEL, 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,
@@ -35,7 +35,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(_FN1), KC_LEFT, KC_DOWN, KC_RIGHT
),
[_FN1] = LAYOUT(
[_FN1] = LAYOUT_all(
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, _______, _______,
RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,

View File

@@ -0,0 +1,27 @@
# Matrix Diagram for CannonKeys Bastion65
```
┌───────┐
2u Backspace │0D │
└───────┘
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │2C │0E │
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ ┌─────┐
│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │ │ │
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter
│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │2E │ │1D │ │
├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘
│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │
├────┴┬──┴┬──┴──┬┴───┴───┴──┬┴──┬┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤
│40 │41 │42 │45 │46 │49 │4B │ │4C │4D │4E │
└─────┴───┴─────┴───────────┴───┴───────────┴─────┘ └───┴───┴───┘
┌────────┐
│30 │ 2.25u LShift
└────────┘
┌─────┬───┬─────┬───────────────────────────┬─────┐
│40 │41 │42 │46 │4B │ Blocker Tsangan
└─────┴───┴─────┴───────────────────────────┴─────┘
┌────┬────┬────┬────────────────────────┬────┬────┐
│40 │41 │42 │46 │4A │4B │ Blocker
└────┴────┴────┴────────────────────────┴────┴────┘
```

View File

@@ -49,8 +49,11 @@
"rainbow_swirl": true
}
},
"layout_aliases": {
"LAYOUT": "LAYOUT_all"
},
"layouts": {
"LAYOUT": {
"LAYOUT_all": {
"layout": [
{ "matrix": [0, 0], "x": 0, "y": 0 },
{ "matrix": [0, 1], "x": 1.5, "y": 0 },
@@ -138,6 +141,730 @@
{ "matrix": [5, 13], "x": 14, "y": 5.25 },
{ "matrix": [5, 14], "x": 15, "y": 5.25 }
]
},
"LAYOUT_ansi_blocker": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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, "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, 13], "x": 13.5, "y": 2.25, "w": 1.5},
{"matrix": [2, 14], "x": 15, "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, "w": 2.25},
{"matrix": [3, 14], "x": 15, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"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, "w": 1.25},
{"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_ansi_blocker_split_bs": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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},
{"matrix": [3, 12], "x": 14, "y": 1.25},
{"matrix": [1, 14], "x": 15, "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, 13], "x": 13.5, "y": 2.25, "w": 1.5},
{"matrix": [2, 14], "x": 15, "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, "w": 2.25},
{"matrix": [3, 14], "x": 15, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"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, "w": 1.25},
{"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_ansi_blocker_tsangan": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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, "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, 13], "x": 13.5, "y": 2.25, "w": 1.5},
{"matrix": [2, 14], "x": 15, "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, "w": 2.25},
{"matrix": [3, 14], "x": 15, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_ansi_blocker_tsangan_split_bs": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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},
{"matrix": [3, 12], "x": 14, "y": 1.25},
{"matrix": [1, 14], "x": 15, "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, 13], "x": 13.5, "y": 2.25, "w": 1.5},
{"matrix": [2, 14], "x": 15, "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, "w": 2.25},
{"matrix": [3, 14], "x": 15, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_iso_blocker": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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, "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, "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": [2, 13], "x": 12.75, "y": 3.25},
{"matrix": [3, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"matrix": [3, 14], "x": 15, "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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"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, "w": 1.25},
{"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_iso_blocker_split_bs": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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},
{"matrix": [3, 12], "x": 14, "y": 1.25},
{"matrix": [1, 14], "x": 15, "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, "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": [2, 13], "x": 12.75, "y": 3.25},
{"matrix": [3, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"matrix": [3, 14], "x": 15, "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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"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, "w": 1.25},
{"matrix": [5, 11], "x": 11.25, "y": 5.25, "w": 1.25},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_iso_blocker_tsangan": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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, "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, "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": [2, 13], "x": 12.75, "y": 3.25},
{"matrix": [3, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"matrix": [3, 14], "x": 15, "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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
},
"LAYOUT_iso_blocker_tsangan_split_bs": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1.5, "y": 0},
{"matrix": [0, 2], "x": 2.5, "y": 0},
{"matrix": [0, 3], "x": 3.5, "y": 0},
{"matrix": [0, 4], "x": 4.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.5, "y": 0},
{"matrix": [0, 11], "x": 11.5, "y": 0},
{"matrix": [0, 12], "x": 12.5, "y": 0},
{"matrix": [0, 13], "x": 13.5, "y": 0},
{"matrix": [0, 14], "x": 15, "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},
{"matrix": [3, 12], "x": 14, "y": 1.25},
{"matrix": [1, 14], "x": 15, "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, "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": [2, 13], "x": 12.75, "y": 3.25},
{"matrix": [3, 13], "x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"matrix": [3, 14], "x": 15, "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, 12], "x": 12.25, "y": 4.25, "w": 1.75},
{"matrix": [4, 13], "x": 14, "y": 4.25},
{"matrix": [4, 14], "x": 15, "y": 4.25},
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
{"matrix": [5, 12], "x": 13, "y": 5.25},
{"matrix": [5, 13], "x": 14, "y": 5.25},
{"matrix": [5, 14], "x": 15, "y": 5.25}
]
}
}
}
}

View File

@@ -27,7 +27,7 @@ enum layer_names {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
[_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_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_DEL, 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,
@@ -36,7 +36,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(_FN1), KC_LEFT, KC_DOWN, KC_RIGHT
),
[_FN1] = LAYOUT(
[_FN1] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
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, _______, _______,
RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,

View File

@@ -27,7 +27,7 @@ enum layer_names {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT(
[_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_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_DEL, 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,
@@ -36,7 +36,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(_FN1), KC_LEFT, KC_DOWN, KC_RIGHT
),
[_FN1] = LAYOUT(
[_FN1] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
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, _______, _______,
RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,

View File

@@ -0,0 +1,27 @@
# Matrix Diagram for CannonKeys Bastion75
```
┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┐
│00 │ │01 │02 │03 │04 │ │06 │07 │08 │09 │ │0A │0B │0C │0D │ │0E │
└───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┘
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐
│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │3C │1E │ │1D │ 2u Backspace
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤
│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │2E │ │ │
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐3D │ ISO Enter
│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │3E │ │2D │ │
├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘
│40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4C │4D │4E │
├────┴┬──┴┬──┴──┬┴───┴───┴──┬┴──┬┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤
│50 │51 │52 │55 │56 │59 │5B │ │5C │5D │5E │
└─────┴───┴─────┴───────────┴───┴───────────┴─────┘ └───┴───┴───┘
┌────────┐
│40 │ 2.25u LShift
└────────┘
┌─────┬───┬─────┬───────────────────────────┬─────┐
│50 │51 │52 │56 │5B │ Blocker Tsangan
└─────┴───┴─────┴───────────────────────────┴─────┘
┌────┬────┬────┬────────────────────────┬────┬────┐
│50 │51 │52 │56 │5A │5B │ Blocker
└────┴────┴────┴────────────────────────┴────┴────┘
```

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,27 @@
# Matrix Diagram for CannonKeys BastionTKL
```
┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐┌───┬───┬───┐
│00 │ │02 │03 │04 │05 │ │06 │07 │08 │09 │ │0A │0B │0C │0D ││0E │0F │0G │ F12 Row
└───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘└───┴───┴───┘
┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐
│00 ││01 │02 │03 │04 ││05 │06 │07 │08 ││09 │0A │0B │0C ││0D ││0E │0F │0G │
└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ ┌───────┐
│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │3C ││1E │1F │1G │ │1D │ 2u Backspace
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ └─┬─────┤
│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D ││2E │2F │2G │ │ │
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ ┌──┴┐3D │ ISO Enter
│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │ │2D │ │
├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ └───┴────┘
│40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4C │4D │ │4F │
├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌───┼───┼───┐
│50 │51 │52 │56 │5A │5B │5C │5D ││5E │5F │5G │
└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘
┌────────┐ ┌──────────┐
│40 │ 2.25u LShift 2.75u RShift │4C │
└────────┘ └──────────┘
┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
│50 │51 │52 │56 │5B │5C │5D │ Tsangan/WKL
└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
```

View File

@@ -0,0 +1,32 @@
{
"manufacturer": "CannonKeys",
"keyboard_name": "is0GR",
"maintainer": "awkannan",
"bootloader": "stm32-dfu",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["B3"],
"rows": ["A15"]
},
"processor": "STM32F072",
"url": "https://cannonkeys.com",
"usb": {
"device_version": "0.0.1",
"pid": "0xCA04",
"vid": "0x0028"
},
"community_layouts": ["ortho_1x1"],
"layouts": {
"LAYOUT_ortho_1x1": {
"layout": [
{"matrix": [0, 0], "x": 0.25, "y": 0, "w": 1.25, "h": 2}
]
}
}
}

View File

@@ -0,0 +1,10 @@
// Copyright 2023 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_ortho_1x1(
KC_ENT
),
};

View File

@@ -0,0 +1,11 @@
// Copyright 2023 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_ortho_1x1(
KC_ENT
),
};

View File

@@ -0,0 +1 @@
VIA_ENABLE = yes

View File

@@ -0,0 +1,24 @@
# Alchemist Keyboards is0GR
is0GR Keyboard
Keyboard Maintainer: [Andrew Kannan](https://github.com/awkannan)
Hardware Supported: STM32F072CBT6 or equivalent
Make example for this keyboard (after setting up your build environment):
make cannonkeys/is0gr:default
Flashing example for this keyboard:
make cannonkeys/is0gr: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 (on this board - it's the only key) and plug in the keyboard
* **Physical reset button**: Bridge the two pads labeled "RESET" on the top of the PCB using some tweezers, and hold the tweezers there until the board enters the bootloader mode
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available (it isn't by default)

View File

@@ -0,0 +1,2 @@
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF

View File

@@ -10,7 +10,7 @@
},
"processor": "atmega32u4",
"bootloader": "caterina",
"community_layouts": ["split_3x5_3" "split_3x6_3"],
"community_layouts": ["split_3x5_3", "split_3x6_3"],
"layout_aliases": {
"LAYOUT": "LAYOUT_split_3x6_3"
},

View File

@@ -252,7 +252,7 @@
{ "label": ">", "matrix": [4, 9], "x": 10.25, "y": 4.25 },
{ "label": "?", "matrix": [4, 10], "x": 11.25, "y": 4.25 },
{ "label": "Shift", "matrix": [4, 13], "w": 1.75, "x": 12.25, "y": 4.25 },
{ "label": "Up", "matrix": [4, 14], "x": 14.25, "y": 4.25 },
{ "label": "Up", "matrix": [4, 14], "x": 14.25, "y": 4.5 },
{ "label": "Ctrl", "matrix": [5, 0], "w": 1.25, "x": 0, "y": 5.25 },
{ "label": "Win", "matrix": [5, 1], "w": 1.25, "x": 1.25, "y": 5.25 },
@@ -261,9 +261,9 @@
{ "label": "Alt", "matrix": [5, 9], "x": 10, "y": 5.25 },
{ "label": "Fn", "matrix": [5, 10], "x": 11, "y": 5.25 },
{ "label": "Ctrl", "matrix": [5, 11], "x": 12, "y": 5.25 },
{ "label": "Left", "matrix": [5, 13], "x": 13.25, "y": 5.25 },
{ "label": "Down", "matrix": [5, 14], "x": 14.25, "y": 5.25 },
{ "label": "Right", "matrix": [5, 15], "x": 15.25, "y": 5.25 }
{ "label": "Left", "matrix": [5, 13], "x": 13.25, "y": 5.5 },
{ "label": "Down", "matrix": [5, 14], "x": 14.25, "y": 5.5 },
{ "label": "Right", "matrix": [5, 15], "x": 15.25, "y": 5.5 }
]
}
}

View File

@@ -23,98 +23,15 @@
},
"vid": "0x6369"
},
"layout_aliases": {
"LAYOUT_all": "LAYOUT_tkl_ansi",
"LAYOUT_tkl_ansi_tsangan_wkl": "LAYOUT_tkl_ansi_wkl"
},
"community_layouts": [
"tkl_ansi",
"tkl_ansi_tsangan"
],
"layouts": {
"LAYOUT_all": {
"layout": [
{ "label": "0,0", "matrix": [0, 0], "x": 0, "y": 0 },
{ "label": "0,1", "matrix": [0, 1], "x": 2, "y": 0 },
{ "label": "0,2", "matrix": [0, 2], "x": 3, "y": 0 },
{ "label": "0,3", "matrix": [0, 3], "x": 4, "y": 0 },
{ "label": "0,4", "matrix": [0, 4], "x": 5, "y": 0 },
{ "label": "0,5", "matrix": [0, 5], "x": 6.5, "y": 0 },
{ "label": "0,6", "matrix": [0, 6], "x": 7.5, "y": 0 },
{ "label": "0,7", "matrix": [0, 7], "x": 8.5, "y": 0 },
{ "label": "0,8", "matrix": [0, 8], "x": 9.5, "y": 0 },
{ "label": "0,9", "matrix": [0, 9], "x": 11, "y": 0 },
{ "label": "0,10", "matrix": [0, 10], "x": 12, "y": 0 },
{ "label": "0,11", "matrix": [0, 11], "x": 13, "y": 0 },
{ "label": "0,12", "matrix": [0, 12], "x": 14, "y": 0 },
{ "label": "0,13", "matrix": [0, 13], "x": 15.25, "y": 0 },
{ "label": "0,14", "matrix": [0, 14], "x": 16.25, "y": 0 },
{ "label": "0,15", "matrix": [0, 15], "x": 17.25, "y": 0 },
{ "label": "1,0", "matrix": [1, 0], "x": 0, "y": 1.25 },
{ "label": "1,1", "matrix": [1, 1], "x": 1, "y": 1.25 },
{ "label": "1,2", "matrix": [1, 2], "x": 2, "y": 1.25 },
{ "label": "1,3", "matrix": [1, 3], "x": 3, "y": 1.25 },
{ "label": "1,4", "matrix": [1, 4], "x": 4, "y": 1.25 },
{ "label": "1,5", "matrix": [1, 5], "x": 5, "y": 1.25 },
{ "label": "1,6", "matrix": [1, 6], "x": 6, "y": 1.25 },
{ "label": "1,7", "matrix": [1, 7], "x": 7, "y": 1.25 },
{ "label": "1,8", "matrix": [1, 8], "x": 8, "y": 1.25 },
{ "label": "1,9", "matrix": [1, 9], "x": 9, "y": 1.25 },
{ "label": "1,10", "matrix": [1, 10], "x": 10, "y": 1.25 },
{ "label": "1,11", "matrix": [1, 11], "x": 11, "y": 1.25 },
{ "label": "1,12", "matrix": [1, 12], "x": 12, "y": 1.25 },
{ "label": "1,13", "matrix": [1, 13], "w": 2, "x": 13, "y": 1.25 },
{ "label": "1,14", "matrix": [1, 14], "x": 15.25, "y": 1.25 },
{ "label": "1,15", "matrix": [1, 15], "x": 16.25, "y": 1.25 },
{ "label": "2,15", "matrix": [2, 15], "x": 17.25, "y": 1.25 },
{ "label": "2,0", "matrix": [2, 0], "w": 1.5, "x": 0, "y": 2.25 },
{ "label": "2,1", "matrix": [2, 1], "x": 1.5, "y": 2.25 },
{ "label": "2,2", "matrix": [2, 2], "x": 2.5, "y": 2.25 },
{ "label": "2,3", "matrix": [2, 3], "x": 3.5, "y": 2.25 },
{ "label": "2,4", "matrix": [2, 4], "x": 4.5, "y": 2.25 },
{ "label": "2,5", "matrix": [2, 5], "x": 5.5, "y": 2.25 },
{ "label": "2,6", "matrix": [2, 6], "x": 6.5, "y": 2.25 },
{ "label": "2,7", "matrix": [2, 7], "x": 7.5, "y": 2.25 },
{ "label": "2,8", "matrix": [2, 8], "x": 8.5, "y": 2.25 },
{ "label": "2,9", "matrix": [2, 9], "x": 9.5, "y": 2.25 },
{ "label": "2,10", "matrix": [2, 10], "x": 10.5, "y": 2.25 },
{ "label": "2,11", "matrix": [2, 11], "x": 11.5, "y": 2.25 },
{ "label": "2,12", "matrix": [2, 12], "x": 12.5, "y": 2.25 },
{ "label": "2,13", "matrix": [2, 13], "w": 1.5, "x": 13.5, "y": 2.25 },
{ "label": "2,14", "matrix": [2, 14], "x": 15.25, "y": 2.25 },
{ "label": "3,14", "matrix": [3, 14], "x": 16.25, "y": 2.25 },
{ "label": "3,15", "matrix": [3, 15], "x": 17.25, "y": 2.25 },
{ "label": "3,0", "matrix": [3, 0], "w": 1.75, "x": 0, "y": 3.25 },
{ "label": "3,1", "matrix": [3, 1], "x": 1.75, "y": 3.25 },
{ "label": "3,2", "matrix": [3, 2], "x": 2.75, "y": 3.25 },
{ "label": "3,3", "matrix": [3, 3], "x": 3.75, "y": 3.25 },
{ "label": "3,4", "matrix": [3, 4], "x": 4.75, "y": 3.25 },
{ "label": "3,5", "matrix": [3, 5], "x": 5.75, "y": 3.25 },
{ "label": "3,6", "matrix": [3, 6], "x": 6.75, "y": 3.25 },
{ "label": "3,7", "matrix": [3, 7], "x": 7.75, "y": 3.25 },
{ "label": "3,8", "matrix": [3, 8], "x": 8.75, "y": 3.25 },
{ "label": "3,9", "matrix": [3, 9], "x": 9.75, "y": 3.25 },
{ "label": "3,10", "matrix": [3, 10], "x": 10.75, "y": 3.25 },
{ "label": "3,11", "matrix": [3, 11], "x": 11.75, "y": 3.25 },
{ "label": "3,13", "matrix": [3, 13], "w": 2.25, "x": 12.75, "y": 3.25 },
{ "label": "4,0", "matrix": [4, 0], "w": 2.25, "x": 0, "y": 4.25 },
{ "label": "4,1", "matrix": [4, 1], "x": 2.25, "y": 4.25 },
{ "label": "4,2", "matrix": [4, 2], "x": 3.25, "y": 4.25 },
{ "label": "4,3", "matrix": [4, 3], "x": 4.25, "y": 4.25 },
{ "label": "4,4", "matrix": [4, 4], "x": 5.25, "y": 4.25 },
{ "label": "4,5", "matrix": [4, 5], "x": 6.25, "y": 4.25 },
{ "label": "4,6", "matrix": [4, 6], "x": 7.25, "y": 4.25 },
{ "label": "4,7", "matrix": [4, 7], "x": 8.25, "y": 4.25 },
{ "label": "4,8", "matrix": [4, 8], "x": 9.25, "y": 4.25 },
{ "label": "4,9", "matrix": [4, 9], "x": 10.25, "y": 4.25 },
{ "label": "4,10", "matrix": [4, 10], "x": 11.25, "y": 4.25 },
{ "label": "4,13", "matrix": [4, 13], "w": 2.75, "x": 12.25, "y": 4.25 },
{ "label": "4,14", "matrix": [4, 14], "x": 16.25, "y": 4.25 },
{ "label": "5,0", "matrix": [5, 0], "w": 1.25, "x": 0, "y": 5.25 },
{ "label": "5,1", "matrix": [5, 1], "w": 1.25, "x": 1.25, "y": 5.25 },
{ "label": "5,2", "matrix": [5, 2], "w": 1.25, "x": 2.5, "y": 5.25 },
{ "label": "5,5", "matrix": [5, 5], "w": 6.25, "x": 3.75, "y": 5.25 },
{ "label": "5,10", "matrix": [5, 10], "w": 1.25, "x": 10, "y": 5.25 },
{ "label": "5,11", "matrix": [5, 11], "w": 1.25, "x": 11.25, "y": 5.25 },
{ "label": "5,12", "matrix": [5, 12], "w": 1.25, "x": 12.5, "y": 5.25 },
{ "label": "5,13", "matrix": [5, 13], "w": 1.25, "x": 13.75, "y": 5.25 },
{ "label": "5,14", "matrix": [5, 14], "x": 15.25, "y": 5.25 },
{ "label": "5,15", "matrix": [5, 15], "x": 16.25, "y": 5.25 },
{ "label": "4,15", "matrix": [4, 15], "x": 17.25, "y": 5.25 }
]
},
"LAYOUT_tkl_ansi": {
"layout": [
{ "label": "0,0", "matrix": [0, 0], "x": 0, "y": 0 },
@@ -296,7 +213,7 @@
{ "label": "4,15", "matrix": [4, 15], "x": 17.25, "y": 5.25 }
]
},
"LAYOUT_tkl_ansi_tsangan_wkl": {
"LAYOUT_tkl_ansi_wkl": {
"layout": [
{ "label": "0,0", "matrix": [0, 0], "x": 0, "y": 0 },
{ "label": "0,1", "matrix": [0, 1], "x": 2, "y": 0 },

Some files were not shown because too many files have changed in this diff Show More