Compare commits

...

69 Commits

Author SHA1 Message Date
Sắn
440a16dea0 Merge d7019f81dd937303e4cd1af8f7919e0cff00bece into 57f89e5388f0f79e27d0e634c9d4621e5a9c214f 2024-12-31 22:36:16 -08:00
QMK Bot
57f89e5388 [CI] Regenerate Files (#24770)
Regenerate Files
2025-01-01 13:02:16 +11:00
Joel Challis
53680fa6da Fix g_led_config parse warning (#24769) 2025-01-01 01:58:41 +00:00
Joel Challis
fe2200f73a Remove invalid "effect_max" animation from keyboards (#24767) 2024-12-31 12:36:24 +00:00
chillKB
fd0a552fc1 [Keyboard] Ghoul TKL (#24762)
Co-authored-by: jack <jack@pngu.org>
2024-12-30 13:44:51 -08:00
Joel Challis
f549948bbd Skip parsing g_led_config when matrix_size is missing (#24739) 2024-12-28 06:42:54 +11:00
Nick Brassel
5593e73ba7 [bug] Djinn theme fix. (#24754)
Theme fix.
2024-12-28 06:24:53 +11:00
Sắn
d7019f81dd Update keyboard.json
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-12-27 00:17:16 -08:00
Drashna Jaelre
58323017ff Add ArteryTek AT32 dfu to udev rules (#24747) 2024-12-25 02:57:30 +00:00
Joel Challis
a822545da0 Set custom effect defines for LED Matrix (#24745) 2024-12-24 10:26:08 -08:00
James Gzowski
40c93bcdc6 [Keyboard] Add Somei70 (#24444)
* Somei70 addition

* Changes made, added VIA keymap, cleaned formatting

* keymap via

* Create rules.mk

* Add files via upload

* Delete keyboards/somei70/keymaps/via directory

* Fixed RGB and matrix

* Layout corrections and LED positions

* removal of rules.mk

* Moved OLED Settings to somei70.c, formatted C removed TABs, removed _LAYERC

* Forgot to include license header

* Further changes as per suggestions, replaced _user for _kb within somei70.c

* Updated keymap 'changes in Nov24'

* Requested changes
2024-12-24 11:05:43 -07:00
chalex
276f84a9a8 add chlx piche (#24252)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: chalex <alejandrelee+magbogbro@gmail.com>
2024-12-23 23:22:22 -08:00
dztech
0b5e7052f9 add mellow keyboard (#24319)
Co-authored-by: jack <jack@pngu.org>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-12-23 23:13:41 -08:00
era
18f0d11737 [Keyboard] Add SIRIND Brick65S (#24315)
Co-authored-by: Joel Challis <git@zvecr.com>
2024-12-23 23:12:54 -08:00
Bertrand Le Roy
e6fa351d3b DecenTKL numpad (#24696) 2024-12-23 22:26:44 -08:00
Bertrand Le Roy
18cca2062e DecenTKL main keyboard (#24702) 2024-12-23 22:25:37 -08:00
J
58807b0288 Clarify keymap location and format in newbs_building_firmware.md (#24663) 2024-12-22 12:23:14 -08:00
yiancar
9877af9bf8 [Keyboard] Add keycult 1800 (#24729)
Co-authored-by: jack <jack@pngu.org>
Co-authored-by: yiancar <yiancar@gmail.com>
2024-12-22 11:57:25 -08:00
Less/Rikki
f3fe59afe2 fix: mechwild/bb65 coordinate mix-up (#24738) 2024-12-21 22:14:59 -07:00
Andrew Kannan
c988584fc1 Add Reverie to QMK (#24227)
* Add Reverie to QMK

* Add backlight to reverie

* Update reverie readme and copyright notices

* Use format json to update keyboard.json formatting

* Update to have solderable and hotswap variants split

* Update copyright noticeS

* JSON formatting updates

* inherit config.h

* fix broken keymap

* Update reverie hs keyboard.json to be accurate

* Update keyboards/cannonkeys/reverie/hotswap/keyboard.json

Co-authored-by: jack <jack@pngu.org>

* Remove VIA keymaps

* Update keymap

---------

Co-authored-by: jack <jack@pngu.org>
2024-12-18 11:16:25 -07:00
Less/Rikki
a7d12e4e8f [Keyboard] wilba_tech/wt45_h1 (#24717) 2024-12-17 21:02:05 -08:00
Sắn
066d7c9a4d Update keymap.c 2024-12-16 02:49:41 +07:00
Joel Challis
767dfbbd3f Resolve cli.log.warn warnings (#24551) 2024-12-15 15:00:18 +11:00
Xelus22
296e4539f5 [Keyboard] swagkeys integral (#24712)
swagkeys integral

Co-authored-by: Xelus22 <>
2024-12-14 16:15:52 -07:00
Xelus22
2d33a20956 [Keyboard] add swagkeys eave (#24711)
* add swagkeys eave

* fix up

* Update keyboards/swagkeys/eave/keyboard.json

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/swagkeys/eave/keymaps/default/keymap.c

Co-authored-by: jack <jack@pngu.org>

---------

Co-authored-by: Xelus22 <>
Co-authored-by: jack <jack@pngu.org>
2024-12-14 10:19:11 -07:00
Nick Brassel
597bbcb567 Add licensing violations page. (#24697) 2024-12-13 20:42:47 +11:00
Guido Bartolucci
d589dbb05b Added VT-40 keyboard (#24706)
* Added VT-40 keyboard

* Remove commented out code. Oops

Co-authored-by: jack <jack@pngu.org>

* Change name of planck_layers to layers.

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/vt40/keymaps/default/keymap.c

Co-authored-by: jack <jack@pngu.org>

* Removed unused features that I stole from the contra config

* Removed unused features that I stole from the contra config

* fixed lower/raise keys

* make adjust layer accessible

* Added adjust key for real this time

* Update keyboards/vt40/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

---------

Co-authored-by: jack <jack@pngu.org>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-12-12 10:59:07 -07:00
Lostdotfish
d283e27bf8 [Keymap] Update rp2040_orbweaver (#24704)
* Update keymap.c

enhancement - power down indicator LEDs when host sleeps

* Update keyboards/lostdotfish/rp2040_orbweaver/keymaps/default/keymap.c

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/lostdotfish/rp2040_orbweaver/keymaps/default/keymap.c

Co-authored-by: jack <jack@pngu.org>

---------

Co-authored-by: jack <jack@pngu.org>
2024-12-11 13:29:36 -07:00
Cipulot
847257c3c7 Addition of EC TKL X (#24647) 2024-12-08 23:34:07 -07:00
Cipulot
388c3c6d12 Addition of EC65X (#24648) 2024-12-08 23:33:40 -07:00
Lostdotfish
39958fe854 [Keyboard] Add Orbweaver (#24692)
* Create README.md

* Add files via upload

* Create keymap.c

* Update README.md

* Update keyboards/lostdotfish/rp2040_orbweaver/README.md

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

* Update keyboards/lostdotfish/rp2040_orbweaver/keyboard.json

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

* Rename README.md to readme.md

* Update readme.md

* Update keyboards/lostdotfish/rp2040_orbweaver/keyboard.json

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

* Update keyboards/lostdotfish/rp2040_orbweaver/mcuconf.h

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

* Update keyboard.json

* Update keyboards/lostdotfish/rp2040_orbweaver/config.h

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

* Update keyboard.json

* Update mcuconf.h

* Update rp2040_orbweaver.c

* Delete keyboards/lostdotfish/rp2040_orbweaver/halconf.h

* Update config.h

* Update readme.md

* Update readme.md

* Update readme.md

* Update keyboards/lostdotfish/rp2040_orbweaver/keyboard.json

---------

Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: jack <jack@pngu.org>
2024-12-08 23:31:49 -07:00
nuess0r
3c35952944 Adding ctrl-M replacement controller for IBM Model M (#24375)
* This is a configuration of QMK intended to be used with the [ctrl-M controller](https://github.com/nuess0r/ctrl-M).

* Move USB_MAX_POWER_CONSUMPTION to data driven due to upstream change

* Clean up according to PR checklist

Check the keymaps/nuess0r how you can make better use of your Model M
including Windows, multimedia keys etc.

* Move CAPS_HOLD feature from default build to custom keymap

* More data driven configuration

Move layout definition from ctrl_m.h to info.json
Move has_ghost to info.json -> this makes the config.h file obsolete

* Implement changes suggested by review

* Removing user keymap (nuess0r) to follow current guidelines

The nuess0r keymap which is shipped with the ctrl-M controller is kept here:
https://github.com/nuess0r/qmk_firmware/tree/nuess0r_keymap

* Changed image hosting location to Github

requested in review by drashna

* Changed image hosting location to imgur

* Settings removed from info.json that are disabled by default.

* Change URL as suggested by @dunk2k

Not pointing to the QMK firmware but to the replacement controller electronics
project.

* Migrate build target markers to keyboard.json

* Adding tindie link and implement review suggestions

* Removing via keymap to follow current guidelines

Will be moved to the https://github.com/the-via/qmk_userspace_via repo.

* Add LAYOUT_all to support ANSI and ISO keyboards with the same firmware

Add a LAYOUT_all similar to other keyboards that defines all available keys.
Change the default keymap to use the _all layout so both ANSI and ISO Model M
variants work out of the box.

* Remove unnecessary enum from default keymap

Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>

---------

Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
2024-12-08 23:21:49 -07:00
Amund Tenstad
379bb77005 fix: KC_MEDIA_PLAY_PAUSE label (#24693) 2024-12-08 22:44:12 -07:00
Feags
1c6d3d0cbc Adding new keyboard Promenade RP24S (#24689)
* adding keymaps for krado industries

* Modified default keymap.c files to be the same as via.

* Changing vendor ID for Krado Industries

* Suggested changes made

Making changes suggested by zvecr.
Removed dynamic_layer indicator, updated copyright year, deleted unused layers in keymaps.

Co-authored-by: Joel Challis <git@zvecr.com>

* rgbpin for ws2812 changed in info.json

* Added encoder mapping rule file for default keymaps; added Fn layer shortcuts to Promenade layouts

* Added rules.mk with encoder mapping for encoder boards at keymaps level.

* Deleted extra key in LAYOUT

* Update keyboards/kradoindustries/kousa/rules.mk

Move WS2812 Driver from rules.mk to info.json

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/kradoindustries/kousa/info.json

Move WS2812 Driver from rules.mk to info.json

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/kradoindustries/kousa/keymaps/default/keymap.c

Move WS2812 Driver from rules.mk to info.json

Co-authored-by: jack <jack@pngu.org>

* Reverting settings.json

* Encoder map code change [2]>[NUM_DIRECTIONS]

* Adding Promenade RP24S

Adding Promenade RP24S keyboard.json, default keymap, and readme

* Adding layer access to Promenade RP24S

Adding layer access to layers 1 and 2

---------

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: jack <jack@pngu.org>
2024-12-08 20:30:26 -07:00
era
782f91a73a [Keyboard] Add SIRIND Tomak79S (#24684)
* Add Tomak79S

Add Tomak79S

* Update keyboards/era/sirind/tomak79s/keymaps/default/keymap.c

Co-authored-by: jack <0x6a73@protonmail.com>

---------

Co-authored-by: jack <jack@pngu.org>
2024-12-07 23:06:03 -07:00
Ryan
a12ff287ee Organise default community layouts summary (#24500)
* Organise default community layouts summary

* Remove erroneous layout
2024-12-07 09:05:40 +11:00
Patrickemm
03937e0c86 Add Macroflow Original macropad firmware (#24538)
* Adding Macroflow Macropad

* Macroflow_Macropad

* Macroflow_Macropad

* Adding My Macropad

* Adding Macroflow Macropad

* Adding Macroflow Macropad

* Adding Macroflow Macropad

* Adding Macroflow Macropad

* Adding Macroflow Macropad

* Added License Headers

* Updated code for merge

* Added License Header

* Added Encoder Map

* Updated Files

* Fixed Matrix

* Update keyboards/macroflow_original/keyboard.json

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

* Update keyboards/macroflow_original/keymaps/default/keymap.c

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

* Update keyboards/macroflow_original/keymaps/default/keymap.c

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

* Update keyboards/macroflow_original/keymaps/default/rules.mk

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

* Update keyboards/macroflow_original/macroflow_original.c

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

---------

Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-12-05 22:43:35 -07:00
suikagiken
09fdabf37c Fix keymap.json error of keyboard/suikagiken/suika27melo (#24677) 2024-12-06 05:58:28 +11:00
Andrew Kannan
d76f7bfac3 Add Cerberus to QMK (#24226)
* Add Cerberus to QMK

* Update readme to add hotswap callouts

* Update readme formatting

* Use format json to update keyboard.json formatting

* Split Cerberus HS and Solderable into separate folders

* Update JSON formatting

* make solderable keymaps a bit more useful

* Backlight fix on solderable

* Update keyboards/cannonkeys/cerberus/hotswap/keyboard.json

Co-authored-by: jack <jack@pngu.org>

* Remove cerberus VIA keymaps

* Apply suggestions from code review

Change some whitespace

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

* Add RGB control keycodes to cerberus keymap

* Add backlight controls to default keymap on solderable version

* Update keyboards/cannonkeys/cerberus/readme.md

---------

Co-authored-by: jack <jack@pngu.org>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-12-05 11:18:25 -07:00
Vino Rodrigues
3c324cb5e6 [Keyboard] Add Binepad BNK8 keyboard (#24598)
* Add Binepad BNK8 keyboard

* Moved keymap.c to keymap.json

* Fix product page URL

* RGB_ -> RM_ keycodes after this round of breaking changes

Co-authored-by: Ryan <fauxpark@gmail.com>

---------

Co-authored-by: Ryan <fauxpark@gmail.com>
2024-12-04 10:10:11 -07:00
kbd0
d01303c060 [Keyboard] add kbd0 Curve0 60 ANSI (#24609)
* add kbd0/curve0/60_ansi keyboard

* Apply suggestions from code review

Co-authored-by: jack <jack@pngu.org>

* Apply suggestions from code review

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

---------

Co-authored-by: unknown <code-monke>
Co-authored-by: jack <jack@pngu.org>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-12-04 10:07:26 -07:00
Cipulot
5dc92edf11 Addition of EC1-AT (#24645) 2024-12-04 09:57:16 -07:00
Cipulot
8094a1d182 Addition of EC Constellation (#24644)
* Addition of EC Constellation

* Fix layout macro name
2024-12-04 09:55:08 -07:00
Marco Pelegrini
88d4462e52 [Keyboard] Add Marcopad (#24636)
* Marcopad debut

* Applying core review suggestions

* Optional layout with backlit

* Line feeds and replacing dev board configs

* Function to toggle backlight

* Move to RGB Matrix

* Fixing capitalization

* Review comments

---------

Co-authored-by: Marco Pelegrini <mpelegrini@microsoft.com>
2024-12-04 09:51:40 -07:00
Can Baytok
c2bc6e2b3c [Keyboard] Add cans12erv2 (#24628)
Co-authored-by: jack <jack@pngu.org>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Can Baytok <baytok@dydocon.com>
2024-12-04 08:37:02 -08:00
GustawXYZ
a794ceeb51 [Keyboard] Add dactyl_manuform_pi_pico (#23891)
Adds new keyboard under handwired/dactyl_manuform_pi_pico

It is a dactyl_manuform(5x6) running on Pi Pico micro controller
2024-12-03 16:09:24 -07:00
Stephen Edwards
85222dfd8c Add a keyboard entry for yacobo model m replacement control boards (#23827)
* add the keyboard

* Update keyboards/ibm/model_m/yacobo/keyboard.json

Co-authored-by: jack <0x6a73@protonmail.com>

* remove dead file

* PR Comments

* standardize comments

* PR Comments

---------

Co-authored-by: Stephen Edwards <stephenedwardsemail@gmail.com>
Co-authored-by: jack <jack@pngu.org>
2024-12-03 15:43:14 -07:00
Vaarai
e7f1388317 Add cornia keyboard (#24442)
* Add cornia keyboard

* Update Fire keymap

* [Cornia/Doc] Host image on imgur

* [Cornia/config] Remove unnecessary defines

* [Cornia] Move I2C stuff to keyboard level

* [Cornia/config] Remove unnecessary defines & move all callbacks to keymap.c

* [Cornia] Use tri-layer in default keymap

* [Cornia/makefiles] remove license headers & root makefile

* [Cornia] Put common configuration to top keyboard level

* [Cornia] Remove unecessary custom keycodes

* [Cornia] Fix readme

* [Cornia] Fix RGB keycodes

* [Cornia] Fix config files

* [Cornia] Fix readme

* [Cornia] Fix mcuconf.h license
2024-12-03 15:40:07 -07:00
dependabot[bot]
f0eb2460d9 Bump JamesIves/github-pages-deploy-action from 4.7.1 to 4.7.2 (#24672)
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.7.1 to 4.7.2.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](https://github.com/jamesives/github-pages-deploy-action/compare/v4.7.1...v4.7.2)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 19:31:16 +00:00
russell-myers1
93765bb0ef Update hardware_keyboard_guidelines.md to Fix Typos (#24671)
Corrected a typo in the phrase "iOS device need lessthan 100" to "iOS devices need less than 100."
This was to improve clarity and professionalism of the doc.
2024-12-03 11:35:39 -07:00
gtips
c5eeac9686 [Keyboard] Add keyboard reviung46 (#24245)
* add keyboard reviung46

* modified keyboards/reviung/reviung46/readme.md

* modified keyboards/reviung/reviung46/keyboard.json

* modified keyboards/reviung/reviung46/readme.md

* fix keyboards/reviung/reviung46/keyboard.json

* fix keyboards/reviung/reviung46/keymaps/default/keymap.c
fix keyboards/reviung/reviung46/keymaps/via/keymap.c

* fix keyboards/reviung/reviung46/keymaps/via/keymap.c

* fix keyboards/reviung/reviung46/keyboard.json

* fix keyboards/reviung/reviung46/keyboard.json

* modified reviung/reviung46/readme.md

* fixed  keyboards/reviung/reviung46/keyboard.json

* fixed keyboards/reviung/reviung46/keymaps/default/keymap.c
deleted keyboards/reviung/reviung46/keymaps/via/keymap.c
deleted keyboards/reviung/reviung46/keymaps/via/rules.mk

* fix keyboards/reviung/reviung46/keyboard.json and keyboards/reviung/reviung46/keymaps/default/keymap.c

* Update keyboards/reviung/reviung46/readme.md

---------

Co-authored-by: jack <jack@pngu.org>
2024-12-03 00:46:37 -07:00
Sắn
191172aa4e [Keyboard] Add NCR80 ALPS SKFL/FR (#24625)
* ADD NCR80 ALPS SKFL/FR

* fix

* Update config.h

* Update config.h

* Update keyboards/salane/ncr80alpsskfl/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/salane/ncr80alpsskfl/keymaps/default/keymap.c

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/salane/ncr80alpsskfl/keymaps/default/keymap.c

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/salane/ncr80alpsskfl/keyboard.json

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/salane/ncr80alpsskfl/readme.md

Co-authored-by: jack <jack@pngu.org>

---------

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: jack <jack@pngu.org>
2024-12-03 00:35:24 -07:00
VeyPatch
c8fe565ee6 [Keyboard] Add splitkb.com's Halcyon Kyria rev4 (#24512)
* Add Halcyon Kyria Rev4

* Remove bootmagic and unused features

* Fix encoderindex

* Update readme.md

* Remove rgblight

* Implement requested changes

* Add encoder update user

* Remove rules.mk and add VIK configuration

* Move options to config.h

* Update RGB keycodes (qmk#24484)

* implement changes

---------

Co-authored-by: harvey-splitkb <126267034+harvey-splitkb@users.noreply.github.com>
2024-12-02 14:26:10 -07:00
takashicompany
50966934b2 Add new keyboard "Jourkey" (#24409)
* jourkey

* rotary encoder

* fix keymap

* jourkey

* format json

* Update keyboards/takashicompany/jourkey/readme.md

Co-authored-by: Joel Challis <git@zvecr.com>

* fix layout

* Update readme.md

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2024-12-02 10:10:01 -07:00
Josh Hinnebusch
09dfbf8efe [Keyboard] Add h88 gen2 (#24454)
* initial commit

* small updates

* matrix fix

* fix rgb lighting

* updates

* fix rgb pin

* pin fixes

* readme update

* json formatting

* Update keyboards/hineybush/h88_g2/config.h

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

---------

Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-12-02 09:49:11 -07:00
Thomas Queste
e4e66c61ad [murcielago] Enable split watchdog (#24463) 2024-12-02 09:48:26 -07:00
Thanh Son Tran
28320f0cb5 [Keyboard] Add support S6xty5Neo Rev.2 (#24631)
* Update support S6xty5

* Delete chconf.h

* Update manufacturer, community layout for hhkb

* Update layout

* fix row index

* Update tyson60s

* Update community layout and layout name

* Update remove rgb test mode

* Update capslock led

* Apply suggestions from code review

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Add support for S6xty5Neo Rev.2

* Remove deprecated s6xty5

* Update layout

* Apply suggestions from code review

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Move mcuconf and config to outer folder

---------

Co-authored-by: Trần Thanh Sơn <son.tt1@teko.vn>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-12-02 08:37:02 -07:00
suikagiken
cd286e4b9d [Keyboard] Add suika27melo (#24616)
* add keyboard suika27melo

* Update keyboards/suikagiken/suika27melo/keyboard.json

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/suikagiken/suika27melo/keyboard.json

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/suikagiken/suika27melo/readme.md

Co-authored-by: jack <jack@pngu.org>

* Update keyboards/suikagiken/suika27melo/readme.md

Co-authored-by: jack <jack@pngu.org>

* change to imgur link

---------

Co-authored-by: jack <jack@pngu.org>
2024-12-02 08:30:02 -07:00
Thanh Son Tran
0ad3ffdfbc [Keyboard] Add support E8ghty (#24632)
* Update support S6xty5

* Delete chconf.h

* Update manufacturer, community layout for hhkb

* Update layout

* fix row index

* Update tyson60s

* Update community layout and layout name

* Update remove rgb test mode

* Update capslock led

* Apply suggestions from code review

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Remove deprecated s6xty5

* Update support for E8ghty

* remove rgb test mode

* Update community layout

* Update fix pipeline build ci

* Apply suggestions from code review

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

---------

Co-authored-by: Trần Thanh Sơn <son.tt1@teko.vn>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-12-02 08:20:48 -07:00
Sắn
fa3be8a3fb sawnsprojects/bunnygirl65: Fix typo in name (#24668) 2024-12-02 15:02:29 +00:00
Nibell
e592a7da00 [Keyboard] Added nibell micropad4x4 (#24662)
* feat: added nibell micropad4x4

* chore: updated readme

* chore: updated keymap

* feat: added layers

* chore: added bootloader doc

* Added layers

* changed RSHIFT and RCTRL

* Update keyboards/nibell/micropad4x4/keyboard.json

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>

* Update keyboards/nibell/micropad4x4/readme.md

---------

Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Co-authored-by: jack <jack@pngu.org>
2024-12-02 08:00:29 -07:00
Stephen Onnen
be7786bfc6 Addition of Hotdog Pad (#24650)
* Add Hotdog Pad

* remove encoder_map feature

* Add rules.mk

* move rules.mk into keymap

* Update keyboards/onnenon/hotdog_pad/keyboard.json

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/onnenon/hotdog_pad/keyboard.json

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/onnenon/hotdog_pad/keymaps/default/keymap.c

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/onnenon/hotdog_pad/keymaps/default/keymap.c

Co-authored-by: Joel Challis <git@zvecr.com>

* add hotdog_pad.c

* fix reversed encoder pins

* Update keyboards/onnenon/hotdog_pad/hotdog_pad.c

Co-authored-by: Joel Challis <git@zvecr.com>

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2024-12-02 07:57:34 -07:00
Christian C. Berclaz
39c40f55cb Add Xlant XL keyboard (#24608)
Co-authored-by: jack <jack@pngu.org>
2024-12-01 20:05:29 -08:00
Less/Rikki
b022d3bc6b [Keyboard] Add fistbnmp (#24595) 2024-12-01 20:01:05 -08:00
Sắn
9516cf321f Update keyboards/chickenman/kami65/keyboard.json
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-11-15 17:34:21 +07:00
Sắn
79146670e3 Update keyboards/chickenman/kami65/keymaps/default/keymap.c
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-11-15 17:34:15 +07:00
Sắn
4eadea7f1a Update keyboards/chickenman/kami65/keyboard.json
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2024-11-15 17:34:09 +07:00
Sắn
ea6ac87da0 fix typo 2024-11-14 23:16:55 +07:00
Sắn
3b7a7265e3 Add Kami65 2024-11-14 23:10:52 +07:00
348 changed files with 19572 additions and 224 deletions

View File

@ -56,7 +56,7 @@ jobs:
- name: Deploy
if: ${{ github.event_name == 'push' && github.repository == 'qmk/qmk_firmware' }}
uses: JamesIves/github-pages-deploy-action@v4.7.1
uses: JamesIves/github-pages-deploy-action@v4.7.2
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: gh-pages

View File

@ -433,6 +433,13 @@ ifeq ($(strip $(LED_MATRIX_ENABLE)), yes)
SRC += snled27351-mono.c
endif
ifeq ($(strip $(LED_MATRIX_CUSTOM_KB)), yes)
OPT_DEFS += -DLED_MATRIX_CUSTOM_KB
endif
ifeq ($(strip $(LED_MATRIX_CUSTOM_USER)), yes)
OPT_DEFS += -DLED_MATRIX_CUSTOM_USER
endif
endif
# Deprecated driver names - do not use

View File

@ -1140,7 +1140,7 @@
"0x00AE": {
"group": "media",
"key": "KC_MEDIA_PLAY_PAUSE",
"label": "Mute",
"label": "Play/Pause Track",
"aliases": [
"KC_MPLY"
]

View File

@ -21,7 +21,8 @@
{ "text": "Debugging QMK", "link": "/faq_debug" },
{ "text": "Keymap FAQ", "link": "/faq_keymap" },
{ "text": "Squeezing Space from AVR", "link": "/squeezing_avr" },
{ "text": "Glossary", "link": "/reference_glossary" }
{ "text": "Glossary", "link": "/reference_glossary" },
{ "text": "License Violations", "link": "/license_violations" }
]
},
{

View File

@ -111,7 +111,7 @@ The `post_config.h` file can be used for additional post-processing, depending o
#define USB_MAX_POWER_CONSUMPTION 400
#else
// fix iPhone and iPad power adapter issue
// iOS device need lessthan 100
// iOS devices need less than 100
#define USB_MAX_POWER_CONSUMPTION 100
#endif

View File

@ -0,0 +1,96 @@
# License Violations
QMK Firmware has seen its fair share of license violations, which hurts the community and frustrates the QMK maintainers.
Typical non-compliance includes:
* Not providing any source code
* Providing "crippled" source code, such as a wired-only firmware for a wireless-capable board
Boards from vendors who don't provide source code are proving to be a significant time sink as the QMK team and other support helpers volunteer their time trying to determine which board someone has before they can help -- and in these cases they can't help. Occasionally this is followed by abuse; something that QMK and its volunteers should not be subjected to, rather redirected to the vendor in question.
The QMK team now actively directs support requests back to each vendor - vendors must provide their own product support for their boards. The QMK team are volunteers, the vendor must not expect the team to act as their support staff.
## Offending Vendors
The QMK team cannot tell you which boards you should or should not purchase, but please consider the lack of license compliance from the following vendors before making your decision. If you wish to look at the boards upstream QMK Firmware currently supports, you can search [here](https://browse.qmk.fm/).
If you own a board from one of the following vendors already, consider asking them for the equivalent QMK source code if it's not already available. With enough customers demanding corresponding source code, vendors may start to change their policies.
| Vendor | Reason |
|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| BBB Keyboard | Selling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless. |
| Chillkey | |
| CIDOO | Selling wired boards based on QMK without sources, just `via.json` provided. |
| Darmoshark | Selling wired boards based on QMK without sources, just `via.json` provided. |
| Epomaker | Lots of historical keyboards with `via.json` but no corresponding sources. Wireless code for a small handful provided, pending core cleanup for QMK upstreaming. Most other boards have source nowhere to be seen. |
| Ergokbd (IFKB) | At least their crkbd clone ships with QMK+Vial, seemingly refuses to disclose sources despite multiple customers requesting them. |
| iLovBee | Official 30-day copyright source code request issued Sep 11 2024 due to deception on PR, no response received. Ambiguity on PRs -- marketing says wireless, PR author said wired-only, then included wireless code anyway. Seemingly intentionally deceptive. |
| KiiBOOM | Seems to use the same OEM as Epomaker, same problems. |
| Luminkey | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
| Meletrix | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
| mmd / Smartmmd / i-game.tech | Ambiguity on PRs -- marketing says wireless, PR author said wired-only, then included wireless code anyway. Seemingly intentionally deceptive. |
| MyKeyClub | Community-supported JRIS75, vendor was contacted by community members and refused to cooperate. |
| owlab | Selling wired based on QMK without sources, just `via.json` provided. Ambiguous as to whether or not wireless firmware is based on QMK, given that their configuration tool looks very similar to VIA. |
| qwertykeys | Selling wired and tri-mode boards based on QMK without sources, just `via.json` provided. |
| Redragon | Selling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless. |
| Royal Kludge | PRs for fake boards in order to attain VIA compatibility identified. Lots of other keyboards with `via.json` but no corresponding sources, attempted upstreaming crippled firmware without wireless. Wireless code for some provided, pending core cleanup for QMK upstreaming. PRs including different manufacturer names as well. |
| Shenzhen Hangsheng | PR submissions with crippled firmware, debating with maintainers about wireless despite marketing material clearly stating tri-mode. |
| Shortcut Studio | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
| Tacworks | Selling tri-mode boards based on QMK, crippled firmware already merged into QMK without wireless without QMK team realising. |
| TKD / Vertex | Selling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless. |
| WOBKEY | Selling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless. |
| Weikav | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
| Womier | Selling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless. |
| Wuque Studio | Selling wired and tri-mode boards based on QMK without sources, just `via.json` provided. |
| Zuoya | Selling tri-mode boards based on QMK without sources, just `via.json` provided. |
::: danger Violations
Links are not provided above as the QMK team does not wish to inadvertently promote purchases of boards in violation of QMK's license.
:::
## Licensing
QMK Firmware's license requires full disclosure of source code for any firmware which is based on QMK. This includes any of the following scenarios:
* Use of public QMK Firmware, but with "closed source" privately-held board definitions
* Vendor-customised QMK Firmware, which the vendor keeps private for building their own boards
* Any other non-QMK firmware which includes portions of QMK Firmware, such as adaptation of `via.c` into any other non-QMK firmware, even if used as a reference when translated to another programming language.
As per the GPL license requirements, vendors must provide entire source code for the as-shipped firmware.
QMK has traditionally been lenient with this clause -- providing source code to the QMK community is necessary but reproducing the exact build may not be possible. QMK has required functionally-equivalent source code to be made available. In rare cases exact code may be requested; vendors must keep copies regardless.
At minimum, vendors must provide the source code through some distribution mechanism. This could potentially be an clearly available downloadable copy of the code online, a fork of QMK Firmware, or even a DVD accompanying the product in the box.
If sources are unable to be provided in a timely fashion, QMK may revoke the vendor's license, effectively rendering them unable to leverage QMK.
Vendors choosing to keep things closed-source because of a desire to have a "competitive edge" compared to other vendors is unacceptable to both QMK and the community, and is a breach of the QMK license. There's no reason to do so; any new or interesting vendor-specific feature will be quickly replicated by other vendors or the community anyway.
## QMK PR Considerations
Vendors who submit PRs to QMK Firmware whilst not providing full sources for all of their license-violating boards will be put on hold until source code for all violating boards is provided. Intentional deception may result in boards being removed from QMK and all future PRs for that manufacturer being denied outright.
Submitting crippled source code in order to attain a merge into QMK Firmware to pave the way for VIA support is unacceptable. This includes submitting a wired-only firmware for a wireless-capable board, or any other PR which does not include key features as-advertised.
Reusing the `VID` and `PID` for multiple boards (such as for two variants, wired and wireless) is an unacceptable scenario as this creates confusion for support. Many customers have flashed boards with the wrong firmware, which could have been avoided if vendors were obvious about their board identification mechanisms.
If there is sufficient ambiguity about a board, supporting evidence will need to be presented to the QMK team. This may include impartial third parties who can demonstrate a board's existence and can confirm its feature set, such as well-known content producers; popular review sites or notable video creators may be leveraged. If such evidence is unavailable, as a last resort the vendor may be required to ship a fully functional board in full retail packaging to QMK maintainers for verification. Engineering samples will not be accepted, as one-off boards have been deceptively used in the past.
PRs submitted to upstream QMK should not expect an instant merge just because source code has been provided -- code from OEMs has historically been of a quality lower than QMK standards, so as per the [PR checklist](https://docs.qmk.fm/pr_checklist) submitters should make the changes as small as possible and be prepared to change their implementation.
## Detection
If the QMK team identifies or is informed of a license violation from a vendor:
* Any current and future PRs for that vendor will be indefinitely put on hold, preventing merge into QMK Firmware, thus preventing any out-of-the-box VIA support
* Any existing keyboards from the vendor may be removed from QMK Firmware
* Vendors will be added to the _offending vendors_ list above
Repeated violations may result in that vendor being disallowed from contributing the QMK in its entirety. In the worst case, the QMK team may choose to revoke a vendor's license to use QMK Firmware outright.
## Remediation
Vendors must provide fully-featured source code for each of their identified violations, matching the feature capabilities of their as-shipped products. This will usually be in their own fork of QMK Firmware while awaiting a merge into upstream.
Once all identified violations have been remediated, current and future PRs will no longer be on hold and the vendor will be removed from the offending vendors list above.

View File

@ -42,7 +42,7 @@ Look at the output from that command, you should see something like this:
Ψ Created a new keymap called <github_username> in: /home/me/qmk_firmware/keyboards/clueboard/66/rev3/keymaps/<github_username>.
```
This is the location of your new `keymap.c` file.
This is the location of your new keymap file. Your keyboards default keymap file may be a `.json` file or a `.c` file. If your keymap is a `.json` file it can be converted to a `.c` file using QMK's [`json2c`](cli_commands#qmk-json2c) utility.
## Open `keymap.c` In Your Favorite Text Editor

View File

@ -0,0 +1,7 @@
// Copyright 2024 binepad (@binepad)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
// Timing for SK6812
#define WS2812_T1H 650

View File

@ -0,0 +1,88 @@
{
"manufacturer": "binepad",
"keyboard_name": "BNK8",
"maintainer": "binepad",
"bootloader": "stm32duino",
"bootloader_instructions": "Hold down the key at (0x0) in the matrix (the top left key) and plug in the keyboard.",
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{"pin_a": "A7", "pin_b": "A0", "resolution": 2}
]
},
"features": {
"bootmagic": true,
"encoder": true,
"extrakey": true,
"mousekey": true,
"nkro": true,
"rgb_matrix": true
},
"matrix_pins": {
"cols": ["B3", "B4", "C13"],
"rows": ["C14", "B13", "B12"]
},
"processor": "STM32F103",
"rgb_matrix": {
"animations": {
"breathing": true,
"cycle_all": true,
"cycle_left_right": true,
"cycle_pinwheel": true,
"cycle_up_down": true,
"jellybean_raindrops": true,
"riverflow": true,
"solid_reactive": true,
"solid_reactive_simple": true,
"solid_splash": true,
"splash": true,
"starlight": true,
"starlight_dual_hue": true,
"starlight_dual_sat": true
},
"driver": "ws2812",
"layout": [
{"matrix": [0, 0], "x": 80, "y": 0, "flags": 4},
{"matrix": [0, 1], "x": 112, "y": 0, "flags": 4},
{"matrix": [1, 0], "x": 80, "y": 32, "flags": 4},
{"matrix": [1, 1], "x": 112, "y": 32, "flags": 4},
{"matrix": [1, 2], "x": 144, "y": 32, "flags": 4},
{"matrix": [2, 0], "x": 80, "y": 64, "flags": 4},
{"matrix": [2, 1], "x": 112, "y": 64, "flags": 4},
{"matrix": [2, 2], "x": 144, "y": 64, "flags": 4}
],
"led_process_limit": 9,
"max_brightness": 180,
"sleep": true
},
"url": "https://www.binepad.com/product-page/bnk8",
"usb": {
"device_version": "1.0.0",
"vid": "0x4249",
"pid": "0x4E41"
},
"eeprom": {
"wear_leveling": {
"backing_size": 1024
}
},
"ws2812": {
"pin": "C15"
},
"community_layouts": ["ortho_3x3"],
"layouts": {
"LAYOUT_ortho_3x3": {
"layout": [
{"label": "1", "matrix": [0, 0], "x": 0, "y": 0},
{"label": "2", "matrix": [0, 1], "x": 1, "y": 0},
{"label": "Knob", "matrix": [0, 2], "x": 2, "y": 0, "encoder": 0},
{"label": "3", "matrix": [1, 0], "x": 0, "y": 1},
{"label": "4", "matrix": [1, 1], "x": 1, "y": 1},
{"label": "5", "matrix": [1, 2], "x": 2, "y": 1},
{"label": "6", "matrix": [2, 0], "x": 0, "y": 2},
{"label": "7", "matrix": [2, 1], "x": 1, "y": 2},
{"label": "8", "matrix": [2, 2], "x": 2, "y": 2}
]
}
}
}

View File

@ -0,0 +1,40 @@
{
"keyboard": "binepad/bnk8",
"version": 1,
"author": "binepad",
"notes": "Copyright 2024 Binepad (@binepad) \n SPDX-License-Identifier: GPL-2.0-or-later \n This file is a keymap.json file for binepad/bnk8",
"keymap": "default",
"layout": "LAYOUT_ortho_3x3",
"layers": [
[
"KC_P1", "KC_P2", "KC_MUTE",
"KC_P3", "KC_P4", "KC_P5",
"KC_P6", "KC_P7", "LT(1, KC_P8)"
],
[
"RM_HUEU", "RM_SATU", "RM_SPDU",
"RM_HUED", "RM_SATD", "RM_SPDD",
"RM_TOGG", "RM_NEXT", "_______"
]
],
"config": {
"features": {
"encoder_map": true
}
},
"encoders": [
[
{
"ccw": "KC_VOLD",
"cw": "KC_VOLU"
}
],
[
{
"ccw": "RM_VALD",
"cw": "RM_VALU"
}
]
]
}

View File

@ -0,0 +1,26 @@
# BINEPAD BNK8
![BINEPAD BNK8](https://i.imgur.com/HFIZg48h.jpeg)
A compact 8-key 3x3 macropad with a rotary encoder at the top right.
* Keyboard Maintainer: [binepad](https://github.com/binepad)
* Hardware Supported: BINPAD BNK8
* Hardware Availability: [binepad.com](https://binepad.com/products/bnk8)
Make example for this keyboard (after setting up your build environment):
make binepad/bnk8:default
Flashing example for this keyboard:
make binepad/bnk8: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 (usually the top left key) and plug in the keyboard
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available

View File

@ -0,0 +1,9 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define WS2812_SPI_DRIVER SPID2
#define WS2812_SPI_MOSI_PAL_MODE 0
#define WS2812_SPI_SCK_PAL_MODE 0
#define WS2812_SPI_SCK_PIN B13

View File

@ -0,0 +1,9 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define HAL_USE_SPI TRUE
#include_next <halconf.h>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,26 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
enum layer_names {
_BASE,
_FN1,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_all(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV, KC_INS, KC_HOME, KC_PGUP,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(1), KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_LGUI, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
[_FN1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS,
UG_TOGG, UG_HUEU, UG_SATU, UG_VALU, UG_SPDU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, UG_HUED, UG_SATD, UG_VALD, UG_SPDD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, UG_PREV, UG_NEXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
};

View File

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

View File

@ -0,0 +1,50 @@
{
"manufacturer": "CannonKeys",
"maintainer": "awkannan",
"bootloader": "stm32-dfu",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": true,
"console": true,
"extrakey": true,
"mousekey": true,
"nkro": true,
"rgblight": true
},
"matrix_pins": {
"cols": ["B0", "C15", "C14", "A7", "A5", "C13", "A4", "A2", "A1", "A0", "B9", "B8", "B7", "A3", "B6", "B4", "B3", "A15"],
"rows": ["B11", "B10", "B2", "F0", "B5"]
},
"processor": "STM32F072",
"qmk": {
"locking": {
"enabled": true,
"resync": true
}
},
"rgblight": {
"animations": {
"alternating": true,
"breathing": true,
"christmas": true,
"knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
"rgb_test": true,
"snake": true,
"static_gradient": true,
"twinkle": true
},
"led_count": 4
},
"url": "https://cannonkeys.com",
"usb": {
"device_version": "0.0.1",
"vid": "0xCA04"
},
"ws2812": {
"driver": "spi",
"pin": "B15"
}
}

View File

@ -0,0 +1,9 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include_next <mcuconf.h>
#undef STM32_SPI_USE_SPI2
#define STM32_SPI_USE_SPI2 TRUE

View File

@ -0,0 +1,28 @@
# Cerberus Keyboard by CannonKeys
This folder contains firmware for both the Solderable and Hotswap version of Cerberus
The hotswap PCB does not support per-key LEDs and has reduced layout support (no ISO)
* Keyboard Maintainer: [Andrew Kannan](https://github.com/awkannan)
* Hardware Supported: STM32F072CBT6
Make example for this keyboard (after setting up your build environment):
make cannonkeys/cerberus/hotswap:default
make cannonkeys/cerberus/solderable:default
Flashing example for this keyboard:
make cannonkeys/cerberus/hotswap:default:flash
make cannonkeys/cerberus/solderable:default:flash
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
## Bootloader
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Toggle the switch on the back of the pcb to "1" and briefly press the button on the back of the PCB
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available

View File

@ -0,0 +1,8 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define BACKLIGHT_PWM_DRIVER PWMD3
#define BACKLIGHT_PWM_CHANNEL 1
#define BACKLIGHT_PAL_MODE 1

View File

@ -0,0 +1,10 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define HAL_USE_PWM TRUE
#include_next <halconf.h>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,25 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
enum layer_names {
_BASE,
_FN1,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_all(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV, KC_INS, KC_HOME, KC_PGUP,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, MO(1), KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_LGUI, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
[_FN1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS,
UG_TOGG, UG_HUEU, UG_SATU, UG_VALU, UG_SPDU, BL_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, UG_HUED, UG_SATD, UG_VALD, UG_SPDD, BL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, UG_PREV, UG_NEXT, KC_TRNS, BL_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
};

View File

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

View File

@ -0,0 +1,9 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include_next <mcuconf.h>
#undef STM32_PWM_USE_TIM3
#define STM32_PWM_USE_TIM3 TRUE

View File

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

View File

@ -0,0 +1,9 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64

View File

@ -0,0 +1,296 @@
{
"keyboard_name": "Reverie HS",
"usb": {
"pid": "0x0033"
},
"community_layouts": ["65_ansi_blocker", "65_ansi_blocker_split_bs", "65_ansi_blocker_tsangan", "65_ansi_blocker_tsangan_split_bs"],
"layout_aliases": {
"LAYOUT_65_ansi_blocker_split_bs": "LAYOUT_all"
},
"layouts": {
"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_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_all": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [0, 4], "x": 4, "y": 0},
{"matrix": [0, 5], "x": 5, "y": 0},
{"matrix": [0, 6], "x": 6, "y": 0},
{"matrix": [0, 7], "x": 7, "y": 0},
{"matrix": [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}
]
}
}
}

View File

@ -0,0 +1,27 @@
// Copyright 2024 Andrew Kannan
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
enum layer_names {
_BASE,
_FN1
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_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,
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(_FN1), KC_LEFT, KC_DOWN, KC_RIGHT
),
[_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, _______, _______,
_______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_GRV, _______, _______, _______, _______, _______, _______, _______, QK_BOOT
)
};

View File

@ -0,0 +1,24 @@
{
"manufacturer": "CannonKeys",
"maintainer": "awkannan",
"bootloader": "rp2040",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["GP28", "GP8", "GP14", "GP13", "GP12", "GP11", "GP10", "GP9", "GP6", "GP5", "GP4", "GP3", "GP2", "GP1", "GP0"],
"rows": ["GP26", "GP27", "GP15", "GP16", "GP17"]
},
"processor": "RP2040",
"url": "https://cannonkeys.com",
"usb": {
"device_version": "0.0.1",
"vid": "0xCA04"
}
}

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