Compare commits

...
68 Commits
Author SHA1 Message Date
Ryan 7ef98e7f61 CLI: Add qmk clean (#10785) 2020-11-04 19:18:47 +00:00
d46fa2274c Adds support for XD84 Pro (#9750)
Co-authored-by: Ryan <[email protected]>
Co-authored-by: katawajojo <vibri@localhost>
Co-authored-by: katawajojo <[email protected]>
2020-11-04 11:39:12 +11:00
Ryan e024147ce5 Freyr refactor (#10833) 2020-11-04 10:39:11 +11:00
Ryan c60cafae41 KC60 refactor (#10834) 2020-11-02 16:55:22 -08:00
Drashna Jaelre 38162af5a7 [Keyboard] Fixes for PloopyCo mouse and readmes (#10841) 2020-11-03 00:17:05 +00:00
kaylanm e680af98d2 Enable extrakeys, mousekeys for all VIA keymaps. (#10740) 2020-11-02 21:23:05 +00:00
Reibl János Dániel 4ba0cb7ebc Add OLED support for Riblee F411 (#10778)
* Add OLED support for Riblee F422

* Fix typo
2020-11-02 21:20:22 +00:00
yiancar 4b839db384 NK65 eeprom compatibility with 128KB and 256KB (#10804)
* NK65 define hack for 128kb 256kb versions of F303

* Updated to chibios define
2020-11-03 06:09:48 +11:00
e041ec1655 Add support for Noxary Vulcan (#10822)
Co-authored-by: Ryan <[email protected]>
Co-authored-by: ai03 <[email protected]>
2020-11-03 00:45:02 +11:00
Frothy 75201c73a0 Enable media keys support for Canoe VIA keymap (#10829) 2020-11-03 00:35:38 +11:00
Ryan 8e71d3d053 Phantom refactor (#10805) 2020-11-02 20:23:54 +11:00
Ryan e69da2db2c qmk info: Add --ascii flag (#10793)
* `qmk info`: Add `--ascii` flag

* Fix typo

* Force ASCII for Windows/MSYS2

* Make it gooder

* Remove redundant windows check

* ...And this too

* Make pytest work on Windows
2020-11-02 00:41:01 -08:00
Rich Saunders dc40f00aaf [Keymap] Corrected the dvorak layout for kinesis advantage (#10808) 2020-11-01 17:25:50 -08:00
Xelus22 c1481629fd [Keyboard] Fix keyboard matrix scan rate with F072 (#10226)
* fix matrix scan rate

* Update trinityxttkl.c

* Update rev2.c
2020-11-01 16:44:38 -08:00
James Young 83eecdce22 [Keyboard] nullbitsco/nibble Configurator rework (#10814)
* nullbitsco/nibble: rework LAYOUT_all

... and update via keymap accordingly.

* compress info.json LAYOUT_all tree

Only changes the white space.

* rebuild info.json LAYOUT_all tree

Note: this commit makes the visual layout the ANSI layout with a split left Shift, instead of being the same as the ISO layout.

* unify code styles

Make logically-unchanged code blocks similar in appearance to logically-changed blocks.

* correct LAYOUT_iso key sequence

Move ISO Enter's object to its proper place.
2020-11-01 12:42:50 -08:00
MechMerlinandRyan 780b7722fb [Keyboard] VIA Support: Exent 65% (#10797)
* exent VIA support

* minor cleanups

* Update keyboards/exent/config.h

Co-authored-by: Ryan <[email protected]>

* Update keyboards/exent/config.h

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Ryan <[email protected]>
2020-11-01 11:50:23 -08:00
KnoblesseObligeandRyan 86ac56cd7f [Keyboard] Add keebsforall/freebird60 (#10774)
* Added ad/freebird60.

* Moved freebird60 keyboard. Added VIA keymap.

* Updated `keebsforall/freebird60` README to include image.

* Update keyboards/keebsforall/freebird60/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/keebsforall/freebird60/readme.md

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Ryan <[email protected]>
2020-11-01 11:13:34 -08:00
Ole WestendorffandRyan c1e69bcef0 add 65_ansi_split_bs to default community layouts (#10770)
* add 65_ansi_split_bs to default community layouts

* Update layouts/default/65_ansi_split_bs/layout.json

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Ryan <[email protected]>
2020-11-01 11:09:32 -08:00
78019c3e21 [Keyboard] add bebol keyboard (#10763)
* add bebol keyboard

* Change PID

* Update keyboards/handwired/swiftrax/bebol/rules.mk

Co-authored-by: Drashna Jaelre <[email protected]>

Co-authored-by: Swiftrax <[email protected]>
Co-authored-by: Drashna Jaelre <[email protected]>
2020-11-01 10:57:30 -08:00
Keys of KingsandRyan 76bc235508 [Keyboard] Add keysofkings folder and twokey keyboard (#10754)
* Add keysofkings folder and twokey keyboard

* Update readme.md

* Update readme.md

* Update config.h

* Update config.h

* Update keymap.c

* Update twokey.c

* Update twokey.h

* Update keyboards/keysofkings/twokey/config.h

Co-authored-by: Ryan <[email protected]>

* Update keyboards/keysofkings/twokey/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/keysofkings/twokey/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/keysofkings/twokey/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/keysofkings/twokey/readme.md

Co-authored-by: Ryan <[email protected]>

* Update info.json

* Update keymap.c

* Update keyboards/keysofkings/twokey/info.json

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Ryan <[email protected]>
2020-11-01 10:53:17 -08:00
XyverzandIan Sterling fed9c97ddb [Keymap] Added layout for my Keyboardio Atreus (#10726)
* Adding Evan Travers' Keyboardio Atreus branch.

Initial commit of my KeyboardIO Atreus layout.
This is a direct copy of my default Atreus layout, with blank spaces
for the two additional keys.

* Added MACLOCK macro to keymap.c

* Updates to Keyboardio Atreus keymap and readme.

* Adding arrows to bottom row of RAISE and LOWER layers

* bringing the rest of the master branch to my working branch.

* Changes to my KeyboardIO Atreus keymap & readme

* Changes to keymap.

* Adding Evan Travers' Keyboardio Atreus branch.

Initial commit of my KeyboardIO Atreus layout.
This is a direct copy of my default Atreus layout, with blank spaces
for the two additional keys.

* Added MACLOCK macro to keymap.c

* Updates to Keyboardio Atreus keymap and readme.

* Adding arrows to bottom row of RAISE and LOWER layers

* bringing the rest of the master branch to my working branch.

* Changes to my KeyboardIO Atreus keymap & readme

* Changes to keymap.

* Added GPL2+ compatible license header.

Co-authored-by: Ian Sterling <[email protected]>
2020-11-01 10:50:12 -08:00
9f0dbc21a3 [Keyboard] beta support for the Rocketboard-16 macro/num pad (#10688)
* Firmware initial commit, still has a few bugs - mainly rotary encoders do not work and needs cleaning up

* Fixed the volume control issue and limited the RGB brightness (can be really bright), added the ability to switch LED mode with left encoder click, and added via support (untested)

* Remove define that should go in config.h

* Removed define that should be in config.h

* Removed LTO_ENABLE as suggested - has issues on ARM

Co-authored-by: Drashna Jaelre <[email protected]>

* Added the correct define for OLED screen size

* Applied suggested change to remove description

Co-authored-by: Ryan <[email protected]>

* Made suggested change to remove backslashes

Co-authored-by: Ryan <[email protected]>

* Suggested change made to rgblight

Co-authored-by: Ryan <[email protected]>

* Suggested change made to rgblight

Co-authored-by: Ryan <[email protected]>

* Suggested change made to remove backslashes

Co-authored-by: Ryan <[email protected]>

* Suggested change made to rgblight

Co-authored-by: Ryan <[email protected]>

* Update keyboards/rocketboard_16/rocketboard_16.c

Co-authored-by: Ryan <[email protected]>

* Added suggested comments

Co-authored-by: Ryan <[email protected]>

* Made suggested changes to rules file

Co-authored-by: Ryan <[email protected]>

* Added suggested change to rgblight

Co-authored-by: Ryan <[email protected]>

* Added info.json for QMK configurator

* Update readme.md

* This change makes the firmware work... through magic... seriously, no idea - but it works!

* Updated dimming step, OLED functionality, and rules for formatting

- Changed the dimming step size for smoother dimming with the reduced range
- Added lots of OLED functionality - QMK logo and title at top, num/caps/scroll lock status, and backlight brightness level
- Updated the rules.mk file to comply more closely with the formatting guidelines

* Fixed tab issues

Co-authored-by: Ryan <[email protected]>

* Updated to use bootmagic lite with the key that usually turns rgb on/off

Co-authored-by: Drashna Jaelre <[email protected]>
Co-authored-by: Ryan <[email protected]>
2020-11-01 10:46:00 -08:00
c731432765 [Keyboard] Fix IIC stall bug (#10700)
* Add Z70Ultra which is a Hotsawp RGB 65% keyboard

* Update keyboards/melgeek/z70ultra/z70ultra.h

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/default/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/via/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/rev1/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.h

Co-authored-by: Ryan <[email protected]>

* Update readme.md

* Update info.json

update the name of layout to consistent the keyboard.

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/info.json

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/default/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/via/keymap.c

Co-authored-by: Ryan <[email protected]>

* Add Z70Ultra

* Support Z70Ultra
  [Modified] info.json to support two different layouts
  [Add]      rules.mk to support default folder

* Update keyboards/melgeek/z70ultra/rev1/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/z70ultra/config.h

Co-authored-by: Ryan <[email protected]>

* remove excessive arguments from LAYOUT_split_space

* Update keyboards/melgeek/z70ultra/info.json

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/info.json

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/default/keymap.c

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.h

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.h

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/via/keymap.c

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/default/keymap.c

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/rev1/rules.mk

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/via/keymap.c

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/default/keymap.c

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/via/keymap.c

Co-authored-by: James Young <[email protected]>

* Update keyboards/melgeek/z70ultra/keymaps/via/keymap.c

Co-authored-by: James Young <[email protected]>

* Use macro replace with the literal for CS & SW

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Drashna Jaelre <[email protected]>

* [Keyboard]  Support MJ61 which is a 60% ANSI STD Hotswap RGB keyboard

* Update keyboards/melgeek/mj61/mj61.c

Co-authored-by: Drashna Jaelre <[email protected]>

* Update keyboards/melgeek/mj61/mj61.c

Co-authored-by: Drashna Jaelre <[email protected]>

* [Keyboard] MJ61 Add license header for files and the link for readme

* Update keyboards/melgeek/mj61/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/mj61/rev1/config.h

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/mj61/rev1/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/mj61/mj61.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/melgeek/mj61/mj61.c

Co-authored-by: Ryan <[email protected]>

* Add GPL for files

* Update keymaps/default/keymap.c

* Update keymaps/via/keymap.c

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Drashna Jaelre <[email protected]>

* Update keyboards/melgeek/z70ultra/z70ultra.c

Co-authored-by: Drashna Jaelre <[email protected]>

* [Fixed] remove this code cause it's useless.

Co-authored-by: Ryan <[email protected]>
Co-authored-by: James Young <[email protected]>
Co-authored-by: Drashna Jaelre <[email protected]>
2020-11-01 10:38:08 -08:00
f450bdbb41 [Keyboard] Add The Railroad (rev 0) (#10474)
* Add The Railroad keyboard, rev 0

* Update keyboards/nopunin10did/railroad/config.h

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/config.h

Co-authored-by: ridingqwerty <[email protected]>

* Update config.h

* Update keyboards/nopunin10did/railroad/rules.mk

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/config.h

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/keymaps/nopunin10did/keymap.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/keymaps/nopunin10did/keymap.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/keymaps/nopunin10did/keymap.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/keymaps/default/keymap.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/keymaps/default/keymap.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/rules.mk

Co-authored-by: ridingqwerty <[email protected]>

* Update rules.mk

* Update config.h

* Update keymap.c

* Update keyboards/nopunin10did/railroad/railroad.h

Co-authored-by: ridingqwerty <[email protected]>

* Update railroad.h

* Update keyboards/nopunin10did/railroad/railroad.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/keymaps/default/keymap.c

Co-authored-by: ridingqwerty <[email protected]>

* Update keyboards/nopunin10did/railroad/rules.mk

Co-authored-by: Joel Challis <[email protected]>

* Update keyboards/nopunin10did/railroad/config.h

Co-authored-by: James Young <[email protected]>

* Update keyboards/nopunin10did/railroad/readme.md

Co-authored-by: James Young <[email protected]>

* Updates from peer review to correct render

* Update keyboards/nopunin10did/railroad/info.json

Co-authored-by: James Young <[email protected]>

* Update keyboards/nopunin10did/railroad/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/nopunin10did/railroad/info.json

Co-authored-by: James Young <[email protected]>

* Relocate most files inside rev0

Co-authored-by: ridingqwerty <[email protected]>
Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: James Young <[email protected]>
Co-authored-by: Ryan <[email protected]>
2020-11-01 10:21:09 -08:00
4fa1924bd7 add beegboy keyboard (#10762)
* add layout macro

* add beegboy keymaps

* fix matrix pins

* Change PID

* Update keyboards/handwired/swiftrax/beegboy/config.h

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Swiftrax <[email protected]>
Co-authored-by: Ryan <[email protected]>
2020-11-01 00:13:06 +00:00
Joel Challis 7b33897b97 protect against those who develop with their fork on master (#10815) 2020-10-31 22:50:53 +00:00
Ryan d705918f50 Efreet refactor (#10806) 2020-11-01 06:56:08 +11:00
a3f1defcd4 [Keyboard] Fix function references IDB 60 (#10810)
Co-authored-by: Ryan <[email protected]>
Co-authored-by: Thorben <[email protected]>
2020-10-31 23:15:26 +11:00
Ryan fb579aae49 Fix implicit declaration of function 'get_host_led_state' (#10803) 2020-10-30 13:29:19 +00:00
Ryan 67654e4a82 DK60 refactor (#10791) 2020-10-31 00:14:13 +11:00
RyanandDrashna Jaelre 952a4c8312 Hnah108 refactor (#10787)
Co-authored-by: Drashna Jaelre <[email protected]>
2020-10-30 22:06:47 +11:00
Ryan b9ea10a80d YMD75 rev3: fix swapped backslash and enter (#10801) 2020-10-30 01:32:24 -07:00
Jay Greco 4e72224aa3 [Keyboard] Adding info.json files for NIBBLE 65% keyboard (#10769) 2020-10-29 01:29:31 -07:00
Leon Anavi 1bfec6ddd9 [Keymap] Add KiCad keymap for ANAVI Macro Pad 8 (#10766)
KiCad is a cross platform, free and open source electronics design
automation (EDA) suite. It was used to create ANAVI Macro Pad 8.

This keymap contains 2 layers for KiCad hotkeys and a 3rd layer
for controlling the backlighting and the underlighting.

- Layer for KiCad Schematic hotkeys:
  m - to move selected component
  r - to rotate selected component
  w - to wire components
  v - to edit component value
  F1 - zoom in
  F2 - zoom out
  F4 - zoom center

- Layer for KiCad PCB layout hotkets:
  m - to move selected component
  r - to rotate selected component
  x - to route a new track
  v - to add a via
  F1 - zoom in
  F2 - zoom out
  F4 - zoom center

Signed-off-by: Leon Anavi <[email protected]>
2020-10-29 01:28:13 -07:00
Benjamin Grosse db9204c7e1 [Keymap] add an autoclicker to my plaid keymap (#10743) 2020-10-29 01:26:15 -07:00
Drashna Jaelre 27b8046867 [Keymap] Add OBS keymap for ANAVI Macro Pad 8 (#10742)
OBS keymap for ANAVI Macro Pad 8 with the following shortcuts:

- Shortcuts useful for switching scenes on the 1st row:
  Hold Left Control, Shift, Alt and GUI and press F9
  Hold Left Control, Shift, Alt and GUI and press F10
  Hold Left Control, Shift, Alt and GUI and press F11
  Hold Left Control, Shift, Alt and GUI and press F12
- Center to screen: Ctrl+D
- Fit to screen: Ctrl+F
- Move source to top of sources list: Ctrl+Home

Signed-off-by: Leon Anavi <[email protected]>
2020-10-29 01:22:34 -07:00
AlisGraveNil 359aff6c49 Roadster Edit (#10784) 2020-10-29 19:22:26 +11:00
Harshit Goel 36f4f1e9b8 [Keyboard] Redox via support added (#10710)
* add via config for Redox OG

* Fix name typo

* clean up via file and move to via pull

* fix typo in readme, align config.h properly
2020-10-29 01:16:51 -07:00
f487b726cd [Keyboard] Adding Little Alby the Arduino Keyboard (#10713)
* Adding little Alby keyboard

* Adding readme and expanding programs

* Updating readme

* adding spirit guide

* changes based on review

* Updating config name and readme

* Update keyboards/littlealby/mute/rules.mk

Update tabbing

Co-authored-by: Ryan <[email protected]>

* Update keyboards/littlealby/mute/rules.mk

Remove other boards

Co-authored-by: Ryan <[email protected]>

* Changes based on review

* Update keyboards/littlealby/mute/config.h

Co-authored-by: Ryan <[email protected]>

* Update keyboards/littlealby/mute/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/littlealby/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/littlealby/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/littlealby/mute/config.h

Co-authored-by: Ryan <[email protected]>

* Adding unique vendor and Product IDs

* Update keyboards/littlealby/mute/config.h

Co-authored-by: Ryan <[email protected]>

* 0x4D55 = MU

* Adding default map

Co-authored-by: Alby Barber <[email protected]>
Co-authored-by: Ryan <[email protected]>
2020-10-29 01:15:38 -07:00
Ryan 5cecc1ea1e Add brightness level API to OLED driver (#10772)
* Add brightness level API to OLED driver

* Set default brightness to 255
2020-10-29 00:12:50 -07:00
bintobeanandRyan b9ed9d33d3 [Keyboard] Add via keymap to E6.5 (#10771)
* Added basic via keymap

* Added via keymaps and changed config Product and Vendor ID

* Update keyboards/exclusive/e65/keymaps/via/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/exclusive/e65/config.h

Co-authored-by: Ryan <[email protected]>

* Refactored via/keymap.c to use LAYOUT_all

* Refactored e65.h to remove nested matrix layouts

* Previous commit missed LAYOUT_65_ansi_blocker. Fixed

Co-authored-by: Ryan <[email protected]>
2020-10-29 00:00:38 -07:00
kaylanm 2ac0927fd7 [Keyboard] Add via keymap for percent booster (#10768) 2020-10-28 23:53:27 -07:00
James Young 9dad914841 xelus/kangaroo: fix info.json layout macro reference (#10765) 2020-10-28 23:20:45 -07:00
Adrian 50481ce7ed [Keyboard] Added polilla keyboard (squashed) (#10686) 2020-10-28 22:35:37 -07:00
Cameron Moon 74a2edd903 docs(massdrop alt/ctrl): update link to loader releases (#10781)
* docs(massdrop alt): update link to loader releases

Update the link to the Massdrop Loader releases page to point to the releases index rather than release 0.0.1

* docs(massdrop ctrl): update link to loader releases
2020-10-29 14:35:11 +11:00
James Young 805e13a6d0 [Keyboard] KBDfans Bella Soldered tidy-up (#10753)
* KBDfans Bella Soldered: add readme

* add image to readme

* tidy-up Configurator layout data

Key positioning was not true to the assembled board.

* reduce readme redundancy
2020-10-28 18:45:10 -07:00
Yasha MostofiandRyan fcd55e2f04 [Keyboard] Add Via support for TG4x (#10571)
* Update vendor ID

* New default layout with RESET mapped

* Add Via keymap

* Update README

* Update keyboards/tg4x/keymaps/via/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/tg4x/config.h

Co-authored-by: Ryan <[email protected]>

* Delete config.h

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

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Ryan <[email protected]>
2020-10-28 18:04:47 -07:00
Angel RojasandRyan 8685409784 GEN ONE Eclipse_65 keyboard addition (#10669)
* Add files via upload

* Add files via upload

* Add files via upload

* Update config.h

* Update rules.mk

* Update config.h

* Update config.h

* Update config.h

* Update config.h

* Add files via upload

* Removing duplicate files

* Resolve VID and PID collisions as requested

Taken the 0xFEED for vendor ID as suggested in vendor documentation and an available PID

* add a GPL2+ compatible license header as requested

Added the GPL2+ header to keymap.c file

* Update keyboards/genone/eclipse_65/config.h

Co-authored-by: Ryan <[email protected]>

* Update keyboards/genone/eclipse_65/readme.md

Co-authored-by: Ryan <[email protected]>

* Update keyboards/genone/eclipse_65/eclipse_65.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/genone/eclipse_65/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/genone/eclipse_65/keymaps/default/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/genone/eclipse_65/keymaps/default/keymap.c

Co-authored-by: Ryan <[email protected]>

* Update keyboards/genone/eclipse_65/eclipse_65.h

Co-authored-by: Ryan <[email protected]>

* Corrected items on rules.mk as suggested 

Thanks for the comment
I removed suggested items, corrected some spacing issues, and added suggested items.

* Deleted genone_main.c file

Thanks for the comment.
Deleted genone_main.c file as requested

Co-authored-by: Ryan <[email protected]>
2020-10-28 15:45:36 -07:00
Ryan 1d85fe176a VN66 refactor (#10776) 2020-10-29 06:14:11 +11:00
Ryan a42e3ba2cb Stella refactor (#10775) 2020-10-29 06:13:52 +11:00
Guillaume Gérard c745cbb77a [Keymap] greatwizard userspace and ortho 4x12 and 5x12 keymaps (#9584) 2020-10-28 10:20:06 -07:00
Zach White 6b1ae7e6aa add rsync to the api update process 2020-10-27 10:48:55 -07:00
stanrc85 a602ef75fb [Keyboard] Add Projectkb/alice/rev2 LAYOUT_alice support (#10697)
* my alice community layout

* add LAYOUT_alice support to projectkb/alice/rev2

* add addition BSPC key to default layout

* add define to support LAYOUT_default
2020-10-27 10:35:38 -07:00
Reibl János DánielandJanos Daniel Reibl 1ba93875ba [Keyboard] Add handwired F411 (#10504)
Co-authored-by: Janos Daniel Reibl <[email protected]>
2020-10-28 01:39:51 +11:00
Drashna JaelreandRyan 33074bcbad [Keyboard] Bug fixes and improvements to PloopyCo devices (#10573)
Co-authored-by: Ryan <[email protected]>
2020-10-27 17:09:11 +11:00
Ryan 555b1640b2 Add layout: 65_iso_blocker_split_bs (#10733)
* Add layout: 65_iso_blocker_split_bs

* Add layout to readme
2020-10-26 16:56:34 -07:00
Sergey Vlasov f149c07d68 Fix KEYBOARD_SHARED_EP incompatibility with VIA (#9930)
The `KEYBOARD_SHARED_EP=yes` option was breaking the VIA support,
because the raw HID interface number in this case was 0 instead of 1,
and the VIA app depends on the exact interface number for raw HID.
Change the interface ordering to put the shared interface before the raw
HID interface if `KEYBOARD_SHARED_EP` is enabled, so that the raw HID
interface can keep its number.
2020-10-27 10:40:59 +11:00
Ryan 2c92ee1f56 Allow modified keycodes in Unicode input (#10658) 2020-10-27 06:14:56 +11:00
0c42f91f4c Generate api data on each push (#10609)
* add new qmk generate-api command, to generate a complete set of API data.

* Generate api data and push it to the keyboard repo

* fix typo

* Apply suggestions from code review

Co-authored-by: Joel Challis <[email protected]>

* fixup api workflow

* remove file-changes-action

* use a more mainstream github action

* fix yaml error

* Apply suggestions from code review

Co-authored-by: Erovia <[email protected]>

* more uniform date handling

* make flake8 happy

* Update lib/python/qmk/decorators.py

Co-authored-by: Erovia <[email protected]>

Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: Erovia <[email protected]>
2020-10-25 14:48:44 -07:00
James Young 8ef82c466e manta60: update Configurator layout data (#10756) 2020-10-25 18:07:02 +00:00
Erovia ad86894ae7 Rename keyboard-level readmes to lower-case (#10759)
This is the recommendation in the [PR
Checklist](https://docs.qmk.fm/#/pr_checklist?id=keyboard-prs) and it
will make working with them easier in the CLI/API/etc.
2020-10-25 15:23:42 +00:00
Filip Paryż af455a8368 [Keyboard] Freoduo - handwired split ortho keyboard. (#10724)
* Freoduo v1 - with fixes from @fauxpark and rebased to master branch of QMK.

* One more suggested fix from @fauxpark

* Fixes after @drashna review.
2020-10-24 16:54:38 -07:00
James Young ac37a94e49 emajesty/eiri: fix info.json key sequence (#10751)
* emajesty/eiri: info.json debug linting

* fix info.json key sequence
2020-10-25 00:07:30 +01:00
Blake 24ae9232e2 draytronics/scarlet: add website and key labels to info.json (#10747)
* Correctly name keyboard in info.json

* Added website and layout key labels to info.json
2020-10-24 12:28:34 -07:00
AlisGraveNilandRyan 14cb662280 [keyboard] Add Roadster support (#10698)
* Roadster

* Update keyboards/clawsome/roadster/rules.mk

Co-authored-by: Ryan <[email protected]>

* Update keyboards/clawsome/roadster/config.h

Co-authored-by: Ryan <[email protected]>

Co-authored-by: Ryan <[email protected]>
2020-10-24 19:17:07 +01:00
James Young 3d183ed7a0 draytronics/scarlet: fix info.json data (#10746) 2020-10-24 13:09:28 +01:00
James Young 4e30f4d102 doodboard/duckboard: fix info.json data (#10745) 2020-10-24 13:07:10 +01:00
Leon Anavi 329eb4b8df [Keymap] Add OBS keymap for ANAVI Macro Pad 8
OBS keymap for ANAVI Macro Pad 8 with the following shortcuts:

- Shortcuts useful for switching scenes on the 1st row:
  Hold Left Control, Shift, Alt and GUI and press F9
  Hold Left Control, Shift, Alt and GUI and press F10
  Hold Left Control, Shift, Alt and GUI and press F11
  Hold Left Control, Shift, Alt and GUI and press F12
- Center to screen: Ctrl+D
- Fit to screen: Ctrl+F
- Move source to top of sources list: Ctrl+Home

Signed-off-by: Leon Anavi <[email protected]>
2020-10-24 10:00:47 +03:00
454 changed files with 16724 additions and 5497 deletions

No files matched your search

+42
View File
@@ -0,0 +1,42 @@
name: Update API Data
on:
push:
branches:
- master
paths:
- 'keyboards/**'
- 'layouts/community/**'
jobs:
api_data:
runs-on: ubuntu-latest
container: qmkfm/base_container
# protect against those who develop with their fork on master
if: github.repository == 'qmk/qmk_firmware'
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 1
persist-credentials: false
- name: Generate API Data
run: qmk generate-api
- name: Install rsync
run: |
apt-get update && apt-get install -y rsync
- name: Upload API Data
uses: JamesIves/[email protected]
with:
ACCESS_TOKEN: ${{ secrets.API_TOKEN_GITHUB }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH: main
FOLDER: api_data/v1
CLEAN: true
GIT_CONFIG_EMAIL: [email protected]
REPOSITORY_NAME: qmk/qmk_keyboards
TARGET_FOLDER: v1
+1
View File
@@ -16,6 +16,7 @@
*.swp *.swp
tags tags
*~ *~
api_data/v1
build/ build/
.build/ .build/
*.bak *.bak
+1
View File
@@ -0,0 +1 @@
theme: jekyll-theme-cayman
+5
View File
@@ -0,0 +1,5 @@
# QMK Keyboard Metadata
This directory contains machine parsable data about keyboards supported by QMK. The latest version is always available online at <https://keyboards.qmk.fm>.
Do not edit anything here by hand. It is generated with the `qmk generate-api` command.
+10
View File
@@ -212,6 +212,16 @@ This command is directory aware. It will automatically fill in KEYBOARD and/or K
qmk new-keymap [-kb KEYBOARD] [-km KEYMAP] qmk new-keymap [-kb KEYBOARD] [-km KEYMAP]
``` ```
## `qmk clean`
This command cleans up the `.build` folder. If `--all` is passed, any .hex or .bin files present in the `qmk_firmware` directory will also be deleted.
**Usage**:
```
qmk clean [-a]
```
--- ---
# Developer Commands # Developer Commands
+9 -2
View File
@@ -140,8 +140,8 @@ void oled_task_user(void) {
|---------------------------|-----------------|--------------------------------------------------------------------------------------------------------------------------| |---------------------------|-----------------|--------------------------------------------------------------------------------------------------------------------------|
|`OLED_DISPLAY_ADDRESS` |`0x3C` |The i2c address of the OLED Display | |`OLED_DISPLAY_ADDRESS` |`0x3C` |The i2c address of the OLED Display |
|`OLED_FONT_H` |`"glcdfont.c"` |The font code file to use for custom fonts | |`OLED_FONT_H` |`"glcdfont.c"` |The font code file to use for custom fonts |
|`OLED_FONT_START` |`0` |The starting characer index for custom fonts | |`OLED_FONT_START` |`0` |The starting character index for custom fonts |
|`OLED_FONT_END` |`223` |The ending characer index for custom fonts | |`OLED_FONT_END` |`223` |The ending character index for custom fonts |
|`OLED_FONT_WIDTH` |`6` |The font width | |`OLED_FONT_WIDTH` |`6` |The font width |
|`OLED_FONT_HEIGHT` |`8` |The font height (untested) | |`OLED_FONT_HEIGHT` |`8` |The font height (untested) |
|`OLED_TIMEOUT` |`60000` |Turns off the OLED screen after 60000ms of keyboard inactivity. Helps reduce OLED Burn-in. Set to 0 to disable. | |`OLED_TIMEOUT` |`60000` |Turns off the OLED screen after 60000ms of keyboard inactivity. Helps reduce OLED Burn-in. Set to 0 to disable. |
@@ -149,6 +149,7 @@ void oled_task_user(void) {
|`OLED_SCROLL_TIMEOUT_RIGHT`|*Not defined* |Scroll timeout direction is right when defined, left when undefined. | |`OLED_SCROLL_TIMEOUT_RIGHT`|*Not defined* |Scroll timeout direction is right when defined, left when undefined. |
|`OLED_IC` |`OLED_IC_SSD1306`|Set to `OLED_IC_SH1106` if you're using the SH1106 OLED controller. | |`OLED_IC` |`OLED_IC_SSD1306`|Set to `OLED_IC_SH1106` if you're using the SH1106 OLED controller. |
|`OLED_COLUMN_OFFSET` |`0` |(SH1106 only.) Shift output to the right this many pixels.<br />Useful for 128x64 displays centered on a 132x64 SH1106 IC.| |`OLED_COLUMN_OFFSET` |`0` |(SH1106 only.) Shift output to the right this many pixels.<br />Useful for 128x64 displays centered on a 132x64 SH1106 IC.|
|`OLED_BRIGHTNESS` |`255` |The default brightness level of the OLED, from 0 to 255. |
## 128x64 & Custom sized OLED Displays ## 128x64 & Custom sized OLED Displays
@@ -304,6 +305,12 @@ bool oled_off(void);
// not // not
bool is_oled_on(void); bool is_oled_on(void);
// Sets the brightness level of the display
uint8_t oled_set_brightness(uint8_t level);
// Gets the current brightness level of the display
uint8_t oled_get_brightness(void);
// Basically it's oled_render, but with timeout management and oled_task_user calling! // Basically it's oled_render, but with timeout management and oled_task_user calling!
void oled_task(void); void oled_task(void);
+16 -1
View File
@@ -107,6 +107,7 @@ OLED_BLOCK_TYPE oled_dirty = 0;
bool oled_initialized = false; bool oled_initialized = false;
bool oled_active = false; bool oled_active = false;
bool oled_scrolling = false; bool oled_scrolling = false;
uint8_t oled_brightness = OLED_BRIGHTNESS;
uint8_t oled_rotation = 0; uint8_t oled_rotation = 0;
uint8_t oled_rotation_width = 0; uint8_t oled_rotation_width = 0;
uint8_t oled_scroll_speed = 0; // this holds the speed after being remapped to ssd1306 internal values uint8_t oled_scroll_speed = 0; // this holds the speed after being remapped to ssd1306 internal values
@@ -193,7 +194,7 @@ bool oled_init(uint8_t rotation) {
} }
} }
static const uint8_t PROGMEM display_setup2[] = {I2C_CMD, COM_PINS, OLED_COM_PINS, CONTRAST, 0x8F, PRE_CHARGE_PERIOD, 0xF1, VCOM_DETECT, 0x40, DISPLAY_ALL_ON_RESUME, NORMAL_DISPLAY, DEACTIVATE_SCROLL, DISPLAY_ON}; static const uint8_t PROGMEM display_setup2[] = {I2C_CMD, COM_PINS, OLED_COM_PINS, CONTRAST, OLED_BRIGHTNESS, PRE_CHARGE_PERIOD, 0xF1, VCOM_DETECT, 0x20, DISPLAY_ALL_ON_RESUME, NORMAL_DISPLAY, DEACTIVATE_SCROLL, DISPLAY_ON};
if (I2C_TRANSMIT_P(display_setup2) != I2C_STATUS_SUCCESS) { if (I2C_TRANSMIT_P(display_setup2) != I2C_STATUS_SUCCESS) {
print("display_setup2 failed\n"); print("display_setup2 failed\n");
return false; return false;
@@ -550,6 +551,20 @@ bool oled_off(void) {
bool is_oled_on(void) { return oled_active; } bool is_oled_on(void) { return oled_active; }
uint8_t oled_set_brightness(uint8_t level) {
uint8_t set_contrast[] = {I2C_CMD, CONTRAST, level};
if (oled_brightness != level) {
if (I2C_TRANSMIT(set_contrast) != I2C_STATUS_SUCCESS) {
print("set_brightness cmd failed\n");
return oled_brightness;
}
oled_brightness = level;
}
return oled_brightness;
}
uint8_t oled_get_brightness(void) { return oled_brightness; }
// Set the specific 8 lines rows of the screen to scroll. // Set the specific 8 lines rows of the screen to scroll.
// 0 is the default for start, and 7 for end, which is the entire // 0 is the default for start, and 7 for end, which is the entire
// height of the screen. For 128x32 screens, rows 4-7 are not used. // height of the screen. For 128x32 screens, rows 4-7 are not used.
+10
View File
@@ -141,6 +141,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#if !defined(OLED_FONT_HEIGHT) #if !defined(OLED_FONT_HEIGHT)
# define OLED_FONT_HEIGHT 8 # define OLED_FONT_HEIGHT 8
#endif #endif
// Default brightness level
#if !defined(OLED_BRIGHTNESS)
# define OLED_BRIGHTNESS 255
#endif
#if !defined(OLED_TIMEOUT) #if !defined(OLED_TIMEOUT)
# if defined(OLED_DISABLE_TIMEOUT) # if defined(OLED_DISABLE_TIMEOUT)
@@ -261,6 +265,12 @@ bool oled_off(void);
// not // not
bool is_oled_on(void); bool is_oled_on(void);
// Sets the brightness of the display
uint8_t oled_set_brightness(uint8_t level);
// Gets the current brightness of the display
uint8_t oled_get_brightness(void);
// Basically it's oled_render, but with timeout management and oled_task_user calling! // Basically it's oled_render, but with timeout management and oled_task_user calling!
void oled_task(void); void oled_task(void);
@@ -1,3 +1,4 @@
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes LTO_ENABLE = yes
MOUSEKEY_ENABLE = no
CONSOLE_ENABLE = no
@@ -1,2 +1 @@
VIA_ENABLE = yes VIA_ENABLE = yes
MOUSEKEY_ENABLE = no
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+3
View File
@@ -1,5 +1,8 @@
#include "rev2.h" #include "rev2.h"
// Tested and verified working on ext65rev2
void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }
#ifdef OLED_DRIVER_ENABLE #ifdef OLED_DRIVER_ENABLE
void board_init(void) { void board_init(void) {
SYSCFG->CFGR1 |= SYSCFG_CFGR1_I2C1_DMA_RMP; SYSCFG->CFGR1 |= SYSCFG_CFGR1_I2C1_DMA_RMP;
File renamed without changes.
@@ -0,0 +1,117 @@
/* Copyright 2020 Leon Anavi <[email protected]>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
#define _SCH 0
#define _PCB 1
#define _FN 2
#define KC_X0 LT(_FN, KC_ESC)
#ifdef RGBLIGHT_ENABLE
// How long (in ms) to wait between animation steps for the rainbow mode
const uint8_t RGBLED_RAINBOW_MOOD_INTERVALS[] PROGMEM = {60, 30, 15};
// How long (in milliseconds) to wait between animation steps for each of the "Swirling rainbow" animations
const uint8_t RGBLED_RAINBOW_SWIRL_INTERVALS[] PROGMEM = {20, 10, 4};
#endif
/*
* The keymap contains 2 layers for KiCad hotkeys and a 3rd layer
* for controlling the backlighting and the underlighting.
*
* - Layer for KiCad Schematic hotkeys:
* m - to move selected component
* r - to rotate selected component
* w - to wire components
* v - to edit component value
* F1 - zoom in
* F2 - zoom out
* F4 - zoom center
*
* - Layer for KiCad PCB layout hotkets:
* m - to move selected component
* r - to rotate selected component
* x - to route a new track
* v - to add a via
* F1 - zoom in
* F2 - zoom out
* F4 - zoom center
*
*/
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_SCH] = LAYOUT_ortho_2x4(
KC_M, KC_R, KC_W, KC_V,
KC_F1, KC_F2, KC_F4, TO(_PCB)
),
[_PCB] = LAYOUT_ortho_2x4(
KC_M, KC_R, KC_X, KC_V,
KC_F1, KC_F2, KC_F4, TO(_FN)
),
[_FN] = LAYOUT_ortho_2x4(
RGB_TOG, RGB_MOD, RGB_M_R, RGB_M_SN,
BL_TOGG, BL_STEP, BL_BRTG, TO(_SCH)
)
};
#ifdef OLED_DRIVER_ENABLE
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
return OLED_ROTATION_180; // flips the display 180 degrees if offhand
}
void oled_task_user(void) {
// Host Keyboard Layer Status
oled_write_ln_P(PSTR("ANAVI Macro Pad 8"), false);
oled_write_P(PSTR("Layer: "), false);
switch (get_highest_layer(layer_state)) {
case _SCH:
oled_write_ln_P(PSTR("KiCad Schema"), false);
break;
case _PCB:
oled_write_ln_P(PSTR("KiCad PCB"), false);
break;
case _FN:
oled_write_ln_P(PSTR("FN "), false);
break;
default:
// Or use the write_ln shortcut over adding '\n' to the end of your string
oled_write_ln_P(PSTR("N/A"), false);
}
// Host Keyboard LED Status
led_t led_state = host_keyboard_led_state();
oled_write_P(PSTR("Num Lock: "), false);
oled_write_ln_P(led_state.num_lock ? PSTR("On") : PSTR("Off"), false);
oled_write_P(PSTR("Caps Lock: "), false);
oled_write_ln_P(led_state.caps_lock ? PSTR("On") : PSTR("Off"), false);
oled_write_P(PSTR("Scroll Lock: "), false);
oled_write_ln_P(led_state.scroll_lock ? PSTR("On") : PSTR("Off"), false);
oled_write_P(PSTR("Backlit: "), false);
oled_write_ln_P(is_backlight_enabled() ? PSTR("On") : PSTR("Off"), false);
#ifdef RGBLIGHT_ENABLE
static char rgbStatusLine1[26] = {0};
snprintf(rgbStatusLine1, sizeof(rgbStatusLine1), "RGB Mode: %d", rgblight_get_mode());
oled_write_ln(rgbStatusLine1, false);
static char rgbStatusLine2[26] = {0};
snprintf(rgbStatusLine2, sizeof(rgbStatusLine2), "h:%d s:%d v:%d", rgblight_get_hue(), rgblight_get_sat(), rgblight_get_val());
oled_write_ln(rgbStatusLine2, false);
#endif
}
#endif
@@ -0,0 +1,97 @@
/* Copyright 2020 Leon Anavi <[email protected]>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
#define _MAIN 0
#define _FN 1
#define KC_X0 LT(_FN, KC_ESC)
#ifdef RGBLIGHT_ENABLE
// How long (in ms) to wait between animation steps for the rainbow mode
const uint8_t RGBLED_RAINBOW_MOOD_INTERVALS[] PROGMEM = {60, 30, 15};
// How long (in milliseconds) to wait between animation steps for each of the "Swirling rainbow" animations
const uint8_t RGBLED_RAINBOW_SWIRL_INTERVALS[] PROGMEM = {20, 10, 4};
#endif
/*
* This keymap contains the following shortcuts for OBS:
*
* - Shortcuts useful for switching scenes on the 1st row:
* Hold Left Control, Shift, Alt and GUI and press F9
* Hold Left Control, Shift, Alt and GUI and press F10
* Hold Left Control, Shift, Alt and GUI and press F11
* Hold Left Control, Shift, Alt and GUI and press F12
* - Center to screen: Ctrl+D
* - Fit to screen: Ctrl+F
* - Move source to top of sources list: Ctrl+Home
*/
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MAIN] = LAYOUT_ortho_2x4(
HYPR(KC_F9), HYPR(KC_F10), HYPR(KC_F11), HYPR(KC_F12),
LCTL(KC_D), LCTL(KC_F), LCTL(KC_HOME), MO(_FN)
),
[_FN] = LAYOUT_ortho_2x4(
RGB_TOG, RGB_MOD, RGB_M_R, RGB_M_SN,
BL_TOGG, BL_STEP, BL_BRTG, _______
)
};
#ifdef OLED_DRIVER_ENABLE
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
return OLED_ROTATION_180; // flips the display 180 degrees if offhand
}
void oled_task_user(void) {
// Host Keyboard Layer Status
oled_write_ln_P(PSTR("ANAVI Macro Pad 8"), false);
oled_write_P(PSTR("Active layer: "), false);
switch (get_highest_layer(layer_state)) {
case _MAIN:
oled_write_ln_P(PSTR("OBS"), false);
break;
case _FN:
oled_write_ln_P(PSTR("FN"), false);
break;
default:
// Or use the write_ln shortcut over adding '\n' to the end of your string
oled_write_ln_P(PSTR("N/A"), false);
}
// Host Keyboard LED Status
led_t led_state = host_keyboard_led_state();
oled_write_P(PSTR("Num Lock: "), false);
oled_write_ln_P(led_state.num_lock ? PSTR("On") : PSTR("Off"), false);
oled_write_P(PSTR("Caps Lock: "), false);
oled_write_ln_P(led_state.caps_lock ? PSTR("On") : PSTR("Off"), false);
oled_write_P(PSTR("Scroll Lock: "), false);
oled_write_ln_P(led_state.scroll_lock ? PSTR("On") : PSTR("Off"), false);
oled_write_P(PSTR("Backlit: "), false);
oled_write_ln_P(is_backlight_enabled() ? PSTR("On") : PSTR("Off"), false);
#ifdef RGBLIGHT_ENABLE
static char rgbStatusLine1[26] = {0};
snprintf(rgbStatusLine1, sizeof(rgbStatusLine1), "RGB Mode: %d", rgblight_get_mode());
oled_write_ln(rgbStatusLine1, false);
static char rgbStatusLine2[26] = {0};
snprintf(rgbStatusLine2, sizeof(rgbStatusLine2), "h:%d s:%d v:%d", rgblight_get_hue(), rgblight_get_sat(), rgblight_get_val());
oled_write_ln(rgbStatusLine2, false);
#endif
}
#endif
-1
View File
@@ -1,2 +1 @@
VIA_ENABLE = yes VIA_ENABLE = yes
MOUSEKEY_ENABLE = no
File renamed without changes.
File renamed without changes.
@@ -1,4 +1,4 @@
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes LTO_ENABLE = yes
EXTRAKEY_ENABLE = no CONSOLE_ENABLE = no
File renamed without changes.
File renamed without changes.
+46
View File
@@ -0,0 +1,46 @@
/*
Copyright 2020 AAClawson (AlisGraveNil)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0x7767
#define PRODUCT_ID 0x0000
#define DEVICE_VER 0x0001
#define MANUFACTURER AlisGraveNil
#define PRODUCT Roadster
/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12
/*
* Keyboard Matrix Assignments
*
* Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
#define MATRIX_ROW_PINS { D2, D3, D0, D1 }
#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5, B6, B2, B3, B1, F7, F6 }
#define DIODE_DIRECTION COL2ROW
+58
View File
@@ -0,0 +1,58 @@
{
"keyboard_name": "Roadster",
"url": "www.clawboards.xyz",
"maintainer": "AAClawson (AlisGraveNil)",
"width": 12,
"height": 4,
"layouts": {
"LAYOUT": {
"layout": [
{"label":"K00 (D2,D4)", "x":0, "y":0},
{"label":"K01 (D2,C6)", "x":1, "y":0},
{"label":"K02 (D2,D7)", "x":2, "y":0},
{"label":"K03 (D2,E6)", "x":3, "y":0},
{"label":"K04 (D2,B4)", "x":4, "y":0},
{"label":"K05 (D2,B5)", "x":5, "y":0},
{"label":"K06 (D2,B6)", "x":6, "y":0},
{"label":"K07 (D2,B2)", "x":7, "y":0},
{"label":"K08 (D2,B3)", "x":8, "y":0},
{"label":"K09 (D2,B1)", "x":9, "y":0},
{"label":"K0A (D2,F7)", "x":10, "y":0},
{"label":"K0B (D2,F6)", "x":11, "y":0},
{"label":"K10 (D3,D4)", "x":0, "y":1, "w":1.5},
{"label":"K11 (D3,C6)", "x":1.5, "y":1},
{"label":"K12 (D3,D7)", "x":2.5, "y":1},
{"label":"K13 (D3,E6)", "x":3.5, "y":1},
{"label":"K14 (D3,B4)", "x":4.5, "y":1},
{"label":"K15 (D3,B5)", "x":5.5, "y":1},
{"label":"K16 (D3,B6)", "x":6.5, "y":1},
{"label":"K17 (D3,B2)", "x":7.5, "y":1},
{"label":"K18 (D3,B3)", "x":8.5, "y":1},
{"label":"K19 (D3,B1)", "x":9.5, "y":1},
{"label":"K1B (D3,F6)", "x":10.5, "y":1, "w":1.5},
{"label":"K20 (D0,D4)", "x":0, "y":2},
{"label":"K21 (D0,C6)", "x":1, "y":2},
{"label":"K22 (D0,D7)", "x":2, "y":2},
{"label":"K23 (D0,E6)", "x":3, "y":2},
{"label":"K24 (D0,B4)", "x":4, "y":2},
{"label":"K25 (D0,B5)", "x":5, "y":2},
{"label":"K26 (D0,B6)", "x":6, "y":2},
{"label":"K27 (D0,B2)", "x":7, "y":2},
{"label":"K28 (D0,B3)", "x":8, "y":2},
{"label":"K29 (D0,B1)", "x":9, "y":2},
{"label":"K2A (D0,F7)", "x":10, "y":2},
{"label":"K2B (D0,F6)", "x":11, "y":2},
{"label":"K30 (D1,D4)", "x":0, "y":3},
{"label":"K31 (D1,C6)", "x":1, "y":3},
{"label":"K32 (D1,D7)", "x":2, "y":3},
{"label":"K34 (D1,B4)", "x":3, "y":3, "w":2},
{"label":"K36 (D1,B6)", "x":5, "y":3, "w":2},
{"label":"K38 (D1,B3)", "x":7, "y":3, "w":2},
{"label":"K39 (D1,B1)", "x":9, "y":3},
{"label":"K3A (D1,F7)", "x":10, "y":3},
{"label":"K3B (D1,F6)", "x":11, "y":3}
]
}
}
}
@@ -1,4 +1,4 @@
/* Copyright 2017 Mathias Andersson <[email protected]> /* Copyright 2020 AAClawson (AlisGraveNil)
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@@ -13,12 +13,15 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include QMK_KEYBOARD_H
#ifndef CONFIG_USER_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#define CONFIG_USER_H [0] = LAYOUT(
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
KC_LSFT, XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_UP, KC_LSFT,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT
),
#include "../../config.h" };
// place overrides here
#endif
+13
View File
@@ -0,0 +1,13 @@
# Roadster
This is a 4x12 keyboard.
* Keyboard Maintainer: [AAClawson](https://github.com/AlisGraveNil)
* Hardware Supported: Roaster; Pro Micro or Elite-C
* Hardware Availability: [Clawsome Boards](https://www.clawboards.xyz/)
Make example for this keyboard (after setting up your build environment):
make clawsome/roadster:default
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
@@ -1,4 +1,4 @@
/* Copyright 2019 HnahKB /* Copyright 2020 AAClawson (AlisGraveNil)
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@@ -13,7 +13,4 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "roadster.h"
#pragma once
// place overrides here
+30
View File
@@ -0,0 +1,30 @@
/* Copyright 2020 AAClawson (AlisGraveNil)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
#define LAYOUT( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1B, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \
K30, K31, K32, K34, K36, K38, K39, K3A, K3B \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, KC_NO, K1B }, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \
{ K30, K31, K32, KC_NO, K34, KC_NO, K36, KC_NO, K38, K39, K3A, K3B }, \
}
+22
View File
@@ -0,0 +1,22 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = caterina
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = no # USB Nkey Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
BLUETOOTH_ENABLE = no # Enable Bluetooth
AUDIO_ENABLE = no # Audio output
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1,3 +1,2 @@
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes LTO_ENABLE = yes
MOUSEKEY_ENABLE = no
@@ -1,3 +1,2 @@
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes LTO_ENABLE = yes
MOUSEKEY_ENABLE = no
@@ -1,3 +1,2 @@
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes LTO_ENABLE = yes
MOUSEKEY_ENABLE = no
File renamed without changes.
+117 -26
View File
@@ -15,36 +15,127 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#ifndef CONFIG_H #pragma once
#define CONFIG_H
#include "config_common.h" #include "config_common.h"
/* USB Device descriptor parameter */ /* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED #define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x6060 #define PRODUCT_ID 0x56C2
#define DEVICE_VER 0x0001 #define DEVICE_VER 0x0001
#define MANUFACTURER DARKOU #define MANUFACTURER DARKOU
#define PRODUCT DK60 #define PRODUCT DK60
#define DESCRIPTION QMK keyboard firmware for DK60 support
/* key matrix size */ /* key matrix size */
#define MATRIX_ROWS 5 #define MATRIX_ROWS 5
#define MATRIX_COLS 13 #define MATRIX_COLS 13
// ROWS: Top to bottom, COLS: Left to right /*
#define MATRIX_ROW_PINS { B6, B4, D7, D6, D4 } * Keyboard Matrix Assignments
#define MATRIX_COL_PINS { B0, B3, B2, B1, D3, D5, B5, B7, C6, C7, D0, D1, D2 } *
#define UNUSED_PINS * Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
#define MATRIX_ROW_PINS { B6, B4, D7, D6, D4 }
#define MATRIX_COL_PINS { B0, B3, B2, B1, D3, D5, B5, B7, C6, C7, D0, D1, D2 }
#define UNUSED_PINS
/* COL2ROW or ROW2COL */ /* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW #define DIODE_DIRECTION COL2ROW
/* Set 0 if debouncing isn't needed */ //#define BACKLIGHT_PIN B7
#define DEBOUNCE 5 //#define BACKLIGHT_LEVELS 3
//#define BACKLIGHT_BREATHING
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ //#define RGB_DI_PIN E2
#define LOCKING_SUPPORT_ENABLE //#ifdef RGB_DI_PIN
/* Locking resynchronize hack */ //# define RGBLED_NUM 16
#define LOCKING_RESYNC_ENABLE //# define RGBLIGHT_HUE_STEP 8
#endif //# define RGBLIGHT_SAT_STEP 8
//# define RGBLIGHT_VAL_STEP 8
//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
/*== all animations enable ==*/
//# define RGBLIGHT_ANIMATIONS
/*== or choose animations ==*/
//# define RGBLIGHT_EFFECT_BREATHING
//# define RGBLIGHT_EFFECT_RAINBOW_MOOD
//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
//# define RGBLIGHT_EFFECT_SNAKE
//# define RGBLIGHT_EFFECT_KNIGHT
//# define RGBLIGHT_EFFECT_CHRISTMAS
//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
//# define RGBLIGHT_EFFECT_RGB_TEST
//# define RGBLIGHT_EFFECT_ALTERNATING
/*== customize breathing effect ==*/
/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
/*==== use exp() and sin() ====*/
//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
//#endif
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
*/
//#define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*
*/
//#define FORCE_NKRO
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
//#define NO_DEBUG
/* disable print */
//#define NO_PRINT
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
/* disable these deprecated features by default */
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION
/* Bootmagic Lite key configuration */
//#define BOOTMAGIC_LITE_ROW 0
//#define BOOTMAGIC_LITE_COLUMN 0
+30 -16
View File
@@ -1,3 +1,20 @@
/*
Copyright 2017 Damien Broqua <[email protected]>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "dk60.h" #include "dk60.h"
extern inline void dk60_caps_led_on(void); extern inline void dk60_caps_led_on(void);
@@ -9,12 +26,10 @@ extern inline void dk60_esc_led_off(void);
extern inline void dk60_led_all_on(void); extern inline void dk60_led_all_on(void);
extern inline void dk60_led_all_off(void); extern inline void dk60_led_all_off(void);
void dk60_blink_all_leds(void) {
void dk60_blink_all_leds(void)
{
dk60_led_all_off(); dk60_led_all_off();
dk60_led_all_on(); dk60_led_all_on();
_delay_ms(500); wait_ms(500);
dk60_led_all_off(); dk60_led_all_off();
} }
@@ -26,19 +41,18 @@ void matrix_init_kb(void) {
} }
void led_init_ports(void) { void led_init_ports(void) {
// * Set our LED pins as output setPinOutput(E6);
DDRE |= (1<<6); setPinOutput(F0);
DDRF |= (1<<0);
} }
void led_set_kb(uint8_t usb_led) { bool led_update_kb(led_t led_state) {
if (usb_led & (1<<USB_LED_CAPS_LOCK)) { if (led_update_user(led_state)) {
// Turn capslock on if (led_state.caps_lock) {
dk60_caps_led_on(); dk60_caps_led_on();
} else { } else {
// Turn capslock off dk60_caps_led_off();
dk60_caps_led_off(); }
} }
led_set_user(usb_led); return true;
} }
+44 -33
View File
@@ -1,41 +1,52 @@
#ifndef DK60_H /*
#define DK60_H Copyright 2017 Damien Broqua <[email protected]>
#include "quantum.h" This program is free software: you can redistribute it and/or modify
#include <util/delay.h> it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
inline void dk60_caps_led_on(void) { PORTE |= (1<<6); } This program is distributed in the hope that it will be useful,
inline void dk60_esc_led_on(void) { PORTF |= (1<<0); } but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
inline void dk60_caps_led_off(void) { PORTE &= ~(1<<6); } You should have received a copy of the GNU General Public License
inline void dk60_esc_led_off(void) { PORTF &= ~(1<<0); } along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
inline void dk60_led_all_on(void) #pragma once
{
dk60_caps_led_on();
dk60_esc_led_on();
}
inline void dk60_led_all_off(void) #include "quantum.h"
{
dk60_caps_led_off();
dk60_esc_led_off();
}
#define ___ KC_NO inline void dk60_caps_led_on(void) { writePinHigh(E6); }
inline void dk60_esc_led_on(void) { writePinHigh(F0); }
#define LAYOUT( \ inline void dk60_caps_led_off(void) { writePinLow(E6); }
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K4B, K4A, \ inline void dk60_esc_led_off(void) { writePinLow(F0); }
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K4C, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
K41, K42, K45, K48, K49 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C }, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C }, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C }, \
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C }, \
{ ___, K41, K42, ___, ___, K45, ___, ___, K48, K49, K4A, K4B, K4C } \
}
#endif inline void dk60_led_all_on(void) {
dk60_caps_led_on();
dk60_esc_led_on();
}
inline void dk60_led_all_off(void) {
dk60_caps_led_off();
dk60_esc_led_off();
}
#define XXX KC_NO
#define LAYOUT( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K4B, K4A, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K4C, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
K41, K42, K45, K48, K49 \
) { \
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C }, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C }, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C }, \
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C }, \
{ XXX, K41, K42, XXX, XXX, K45, XXX, XXX, K48, K49, K4A, K4B, K4C } \
}
+74 -10
View File
@@ -1,13 +1,77 @@
{ {
"keyboard_name": "DK60", "keyboard_name": "DK60",
"url": "", "url": "",
"maintainer": "qmk", "maintainer": "qmk",
"width": 15, "width": 15,
"height": 5, "height": 5,
"layouts": { "layouts": {
"LAYOUT": { "LAYOUT": {
"key_count": 60, "layout": [
"layout": [{"label":"K00", "x":0, "y":0}, {"label":"K01", "x":1, "y":0}, {"label":"K02", "x":2, "y":0}, {"label":"K03", "x":3, "y":0}, {"label":"K04", "x":4, "y":0}, {"label":"K05", "x":5, "y":0}, {"label":"K06", "x":6, "y":0}, {"label":"K07", "x":7, "y":0}, {"label":"K08", "x":8, "y":0}, {"label":"K09", "x":9, "y":0}, {"label":"K0A", "x":10, "y":0}, {"label":"K0B", "x":11, "y":0}, {"label":"K0C", "x":12, "y":0}, {"label":"K4B", "x":13, "y":0}, {"label":"K4A", "x":14, "y":0}, {"label":"K10", "x":0, "y":1, "w":1.5}, {"label":"K11", "x":1.5, "y":1}, {"label":"K12", "x":2.5, "y":1}, {"label":"K13", "x":3.5, "y":1}, {"label":"K14", "x":4.5, "y":1}, {"label":"K15", "x":5.5, "y":1}, {"label":"K16", "x":6.5, "y":1}, {"label":"K17", "x":7.5, "y":1}, {"label":"K18", "x":8.5, "y":1}, {"label":"K19", "x":9.5, "y":1}, {"label":"K1A", "x":10.5, "y":1}, {"label":"K1B", "x":11.5, "y":1}, {"label":"K1C", "x":12.5, "y":1}, {"label":"K4C", "x":13.5, "y":1, "w":1.5}, {"label":"K20", "x":0, "y":2, "w":1.75}, {"label":"K21", "x":1.75, "y":2}, {"label":"K22", "x":2.75, "y":2}, {"label":"K23", "x":3.75, "y":2}, {"label":"K24", "x":4.75, "y":2}, {"label":"K25", "x":5.75, "y":2}, {"label":"K26", "x":6.75, "y":2}, {"label":"K27", "x":7.75, "y":2}, {"label":"K28", "x":8.75, "y":2}, {"label":"K29", "x":9.75, "y":2}, {"label":"K2A", "x":10.75, "y":2}, {"label":"K2B", "x":11.75, "y":2}, {"label":"K2C", "x":12.75, "y":2, "w":2.25}, {"label":"K30", "x":0, "y":3, "w":2.25}, {"label":"K31", "x":2.25, "y":3}, {"label":"K32", "x":3.25, "y":3}, {"label":"K33", "x":4.25, "y":3}, {"label":"K34", "x":5.25, "y":3}, {"label":"K35", "x":6.25, "y":3}, {"label":"K36", "x":7.25, "y":3}, {"label":"K37", "x":8.25, "y":3}, {"label":"K38", "x":9.25, "y":3}, {"label":"K39", "x":10.25, "y":3}, {"label":"K3A", "x":11.25, "y":3}, {"label":"K3B", "x":12.25, "y":3, "w":1.75}, {"label":"K3C", "x":14, "y":3}, {"label":"K41", "x":1.5, "y":4}, {"label":"K42", "x":2.5, "y":4, "w":1.25}, {"label":"K45", "x":3.75, "y":4, "w":7}, {"label":"K48", "x":10.75, "y":4, "w":1.25}, {"label":"K49", "x":12, "y":4}] {"x": 0, "y": 0},
{"x": 1, "y": 0},
{"x": 2, "y": 0},
{"x": 3, "y": 0},
{"x": 4, "y": 0},
{"x": 5, "y": 0},
{"x": 6, "y": 0},
{"x": 7, "y": 0},
{"x": 8, "y": 0},
{"x": 9, "y": 0},
{"x": 10, "y": 0},
{"x": 11, "y": 0},
{"x": 12, "y": 0},
{"x": 13, "y": 0},
{"x": 14, "y": 0},
{"x": 0, "y": 1, "w": 1.5},
{"x": 1.5, "y": 1},
{"x": 2.5, "y": 1},
{"x": 3.5, "y": 1},
{"x": 4.5, "y": 1},
{"x": 5.5, "y": 1},
{"x": 6.5, "y": 1},
{"x": 7.5, "y": 1},
{"x": 8.5, "y": 1},
{"x": 9.5, "y": 1},
{"x": 10.5, "y": 1},
{"x": 11.5, "y": 1},
{"x": 12.5, "y": 1},
{"x": 13.5, "y": 1, "w": 1.5},
{"x": 0, "y": 2, "w": 1.75},
{"x": 1.75, "y": 2},
{"x": 2.75, "y": 2},
{"x": 3.75, "y": 2},
{"x": 4.75, "y": 2},
{"x": 5.75, "y": 2},
{"x": 6.75, "y": 2},
{"x": 7.75, "y": 2},
{"x": 8.75, "y": 2},
{"x": 9.75, "y": 2},
{"x": 10.75, "y": 2},
{"x": 11.75, "y": 2},
{"x": 12.75, "y": 2, "w": 2.25},
{"x": 0, "y": 3, "w": 2.25},
{"x": 2.25, "y": 3},
{"x": 3.25, "y": 3},
{"x": 4.25, "y": 3},
{"x": 5.25, "y": 3},
{"x": 6.25, "y": 3},
{"x": 7.25, "y": 3},
{"x": 8.25, "y": 3},
{"x": 9.25, "y": 3},
{"x": 10.25, "y": 3},
{"x": 11.25, "y": 3},
{"x": 12.25, "y": 3, "w": 1.75},
{"x": 14, "y": 3},
{"x": 1.5, "y": 4},
{"x": 2.5, "y": 4, "w": 1.25},
{"x": 3.75, "y": 4, "w": 7},
{"x": 10.75, "y": 4, "w": 1.25},
{"x": 12, "y": 4}
]
}
} }
}
} }
+70 -69
View File
@@ -1,79 +1,80 @@
/*
Copyright 2017 Damien Broqua <[email protected]>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
enum planck_layers { enum layer_names {
_QWERTY, _QWERTY,
_FN, _FN
_DVORAK,
_LOWER,
_RAISE,
_PLOVER,
_ADJUST
}; };
enum planck_keycodes {
QWERTY = SAFE_RANGE,
FN
};
// Fillers to make layering more clear
#define ______ KC_TRNS
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty gui/alt/space/alt/gui /* Qwerty gui/alt/space/alt/gui
* ,-----------------------------------------------------------------------------------------. * ,-----------------------------------------------------------------------------------------.
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` | * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp | * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Bksp |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | Enter | * | Ctrl | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | Shift | Z | X | C | V | B | N | M | , | . | / | RShift | FN | * | Shift | Z | X | C | V | B | N | M | , | . | / | RShift | FN |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* |LGUI | LAlt | Space | RAlt |RGUI | * |LGUI | LAlt | Space | RAlt |RGUI |
* `-----------------------------------------------------------------' * `-----------------------------------------------------------------'
*/ */
[_QWERTY] = LAYOUT( /* Basic QWERTY */ [_QWERTY] = LAYOUT( /* Basic QWERTY */
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, \ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, \ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, FN, \ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN),
KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI \ KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI
), ),
/* FN Layer /* FN Layer
* ,-----------------------------------------------------------------------------------------. * ,-----------------------------------------------------------------------------------------.
* | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del | * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | CAPS | | | | | | | | Psc | Slck| Paus| Up | | | * | CAPS | | | | | | | | Psc | Slck| Paus| Up | | |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | | Vol-| Vol+| Mute| | | * | / | Home| PgUp| Left|Right| | * | | Vol-| Vol+| Mute| | | * | / | Home| PgUp| Left|Right| |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | | Prev| Play| Next| | | + | - | End |PgDn| Down| | | * | | Prev| Play| Next| | | + | - | End |PgDn| Down| | |
* |-----------------------------------------------------------------------------------------+ * |-----------------------------------------------------------------------------------------+
* | | | | Stop | | * | | | | Stop | |
* `-----------------------------------------------------------------' * `-----------------------------------------------------------------'
*/ */
[_FN] = LAYOUT( /* Layer 1 */ [_FN] = LAYOUT( /* Layer 1 */
______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, \ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
KC_CAPS, ______, ______, ______, ______, ______, ______, ______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, ______, ______, \ KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______,
______, KC_VOLD, KC_VOLU, KC_MUTE, ______, ______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, ______, \ _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
______, KC_MPRV, KC_MPLY, KC_MNXT, ______, ______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, ______, ______, \ _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______,
______, ______, ______, KC_MSTP, ______ \ _______, _______, _______, KC_MSTP, _______
) )
}; };
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) { switch (keycode) {
case FN: case MO(_FN):
if (record->event.pressed) { if (record->event.pressed) {
layer_on(_FN); dk60_esc_led_on();
dk60_esc_led_on(); } else {
} else { dk60_esc_led_off();
layer_off(_FN); }
dk60_esc_led_off(); return false;
} }
return false; return true;
break;
}
return true;
} }
+9 -7
View File
@@ -1,17 +1,19 @@
DK60 # DK60
===
![DK60](https://github.com/Dbroqua/DK60/raw/master/Previews/DK60.png) ![DK60](https://github.com/Dbroqua/DK60/raw/master/Previews/DK60.png)
Another 60% keyboard with different HHKB layout made and sold by dbroqua. [More info on github/dbroqua](https://github.com/Dbroqua/DK60/) Another 60% keyboard with different HHKB layout made and sold by dbroqua.
Keyboard Maintainer: [Damien Broqua aka DarKou](https://github.com/Dbroqua) * Keyboard Maintainer: [Damien Broqua aka DarKou](https://github.com/Dbroqua)
Hardware Supported: DK60 PCB revA * Hardware Supported: DK60 PCB revA
* Hardware Availability: https://github.com/Dbroqua/DK60/
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):
make dk60:default make dk60:default
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Flashing example for this keyboard:
Open Hardware project! make dk60: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).
+18 -21
View File
@@ -2,26 +2,23 @@
MCU = atmega32u4 MCU = atmega32u4
# Bootloader selection # Bootloader selection
# Teensy halfkay
# Pro Micro caterina
# Atmel DFU atmel-dfu
# LUFA DFU lufa-dfu
# QMK DFU qmk-dfu
# ATmega32A bootloadHID
# ATmega328P USBasp
BOOTLOADER = atmel-dfu BOOTLOADER = atmel-dfu
BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration # Build Options
MOUSEKEY_ENABLE = no # Mouse keys # change yes to no to disable
EXTRAKEY_ENABLE = yes # Audio control and System control #
# CONSOLE_ENABLE = yes # Console for debug BOOTMAGIC_ENABLE = full # Virtual DIP switch configuration
# COMMAND_ENABLE = yes # Commands for debug and configuration MOUSEKEY_ENABLE = no # Mouse keys
KEYBOARD_LOCK_ENABLE = yes # Allow locking of keyboard via magic key EXTRAKEY_ENABLE = yes # Audio control and System control
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work CONSOLE_ENABLE = no # Console for debug
RGBLIGHT_ENABLE = no # Enable keyboard underlight functionality COMMAND_ENABLE = no # Commands for debug and configuration
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
MIDI_ENABLE = no # MIDI controls SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend
AUDIO_ENABLE = no # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
UNICODE_ENABLE = yes # Unicode NKRO_ENABLE = yes # USB Nkey Rollover
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
SLEEP_LED_ENABLE = yes RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
BLUETOOTH_ENABLE = no # Enable Bluetooth
AUDIO_ENABLE = no # Audio output
KEYBOARD_LOCK_ENABLE = yes
UNICODE_ENABLE = yes
@@ -15,6 +15,7 @@
*/ */
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
#include "mousekey.h"
enum plaid_layers { enum plaid_layers {
@@ -25,9 +26,13 @@ enum plaid_layers {
}; };
enum plaid_keycodes { enum plaid_keycodes {
QWERTY = SAFE_RANGE AUTOCLICK = SAFE_RANGE
}; };
static bool autoclick = false;
static bool autoclick_state = false;
static uint16_t autoclick_timer = 0;
#define XMONAD LM(_XMONAD, MOD_LGUI) #define XMONAD LM(_XMONAD, MOD_LGUI)
#define SPC_LWR LT(_LOWER, KC_SPACE) #define SPC_LWR LT(_LOWER, KC_SPACE)
#define ENT_RSE LT(_RAISE, KC_ENT) #define ENT_RSE LT(_RAISE, KC_ENT)
@@ -89,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, _______, MU_MOD, AU_ON, AU_OFF, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, RESET, _______, _______, MU_MOD, AU_ON, AU_OFF, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, RESET,
_______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF,_______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF,_______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, AUTOCLICK
) )
}; };
@@ -167,6 +172,16 @@ void matrix_scan_user(void) {
break; break;
} }
} }
if (autoclick && timer_elapsed(autoclick_timer) > (autoclick_state ? 20 : 100)) {
if (!autoclick_state) {
mousekey_on(KC_MS_BTN1);
} else {
mousekey_off(KC_MS_BTN1);
}
mousekey_send();
autoclick_state = !autoclick_state;
autoclick_timer = timer_read();
}
} }
layer_state_t layer_state_set_user(layer_state_t state) { layer_state_t layer_state_set_user(layer_state_t state) {
@@ -186,3 +201,15 @@ layer_state_t layer_state_set_user(layer_state_t state) {
} }
return state; return state;
} }
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case AUTOCLICK:
if (record->event.pressed) {
autoclick = !autoclick;
autoclick_timer = timer_read();
}
break;
}
return true;
};
@@ -15,3 +15,5 @@ old machine.
When any layer is active, the LEDs are "startled". When any layer is active, the LEDs are "startled".
There is an autoclicker for minecraft.
@@ -1,3 +1 @@
VIA_ENABLE = yes VIA_ENABLE = yes
MOUSEKEY_ENABLE = no
EXTRAKEY_ENABLE = no
+2 -2
View File
@@ -19,7 +19,7 @@
{"x": 1, "y": 2}, {"x": 1, "y": 2},
{"x": 2, "y": 2}, {"x": 2, "y": 2},
{"x": 3, "y": 2}, {"x": 3, "y": 2},
{"x": 4, "y": 2}, {"x": 4, "y": 1, "h": 2},
{"x": 1, "y": 3}, {"x": 1, "y": 3},
{"x": 2, "y": 3}, {"x": 2, "y": 3},
@@ -29,7 +29,7 @@
{"x": 1, "y": 4}, {"x": 1, "y": 4},
{"x": 2, "y": 4}, {"x": 2, "y": 4},
{"x": 3, "y": 4}, {"x": 3, "y": 4},
{"x": 4, "y": 4} {"x": 4, "y": 3, "h": 2}
] ]
} }
} }
+34
View File
@@ -0,0 +1,34 @@
{
"keyboard_name": "Draytronics SCARLET",
"url": "https://www.draytronics.co.uk/scarlet",
"maintainer": "ghostseven",
"width": 4,
"height": 5,
"layouts": {
"LAYOUT_numpad_5x4": {
"layout": [
{"label":"Num Lock", "x":0, "y":0},
{"label":"/", "x":1, "y":0},
{"label":"*", "x":2, "y":0},
{"label":"-", "x":3, "y":0},
{"label":"7", "x":0, "y":1},
{"label":"8", "x":1, "y":1},
{"label":"9", "x":2, "y":1},
{"label":"4", "x":0, "y":2},
{"label":"5", "x":1, "y":2},
{"label":"6", "x":2, "y":2},
{"label":"+", "x":3, "y":1, "h":2},
{"label":"1", "x":0, "y":3},
{"label":"2", "x":1, "y":3},
{"label":"3", "x":2, "y":3},
{"label":"0", "x":0, "y":4, "w":2},
{"label":".", "x":2, "y":4},
{"label":"Enter", "x":3, "y":3, "h":2}
]
}
}
}
+43 -114
View File
@@ -20,12 +20,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h" #include "config_common.h"
/* USB Device descriptor parameter */ /* USB Device descriptor parameter */
#define VENDOR_ID 0x534F // "SO" #define VENDOR_ID 0x534F // "SO"
#define PRODUCT_ID 0x0001 #define PRODUCT_ID 0x0001
#define DEVICE_VER 0x0001 #define DEVICE_VER 0x0001
#define MANUFACTURER Soran #define MANUFACTURER Soran
#define PRODUCT Efreet #define PRODUCT Efreet
#define DESCRIPTION A 40% ortholinear keyboard.
/* key matrix size */ /* key matrix size */
#define MATRIX_ROWS 8 #define MATRIX_ROWS 8
@@ -40,50 +39,50 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
* *
*/ */
#define MATRIX_ROW_PINS { B0, D6, D5, D4, D3, D2, D1, C2 } #define MATRIX_ROW_PINS { B0, D6, D5, D4, D3, D2, D1, C2 }
#define MATRIX_COL_PINS { B3, B4, B5, B6, B7, C7 } #define MATRIX_COL_PINS { B3, B4, B5, B6, B7, C7 }
#define UNUSED_PINS #define UNUSED_PINS
/* COL2ROW, ROW2COL*/ /* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW #define DIODE_DIRECTION COL2ROW
/* /*
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
*/ */
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
#define BACKLIGHT_PIN D0 #define BACKLIGHT_PIN D0
#define BACKLIGHT_BREATHING
#define BACKLIGHT_LEVELS 3 #define BACKLIGHT_LEVELS 3
#define BACKLIGHT_BREATHING
// #define RGB_DI_PIN E2 //#define RGB_DI_PIN E2
// #ifdef RGB_DI_PIN //#ifdef RGB_DI_PIN
// #define RGBLED_NUM 16 //# define RGBLED_NUM 16
// #define RGBLIGHT_HUE_STEP 8 //# define RGBLIGHT_HUE_STEP 8
// #define RGBLIGHT_SAT_STEP 8 //# define RGBLIGHT_SAT_STEP 8
// #define RGBLIGHT_VAL_STEP 8 //# define RGBLIGHT_VAL_STEP 8
// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ //# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ //# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
// /*== all animations enable ==*/ /*== all animations enable ==*/
// #define RGBLIGHT_ANIMATIONS //# define RGBLIGHT_ANIMATIONS
// /*== or choose animations ==*/ /*== or choose animations ==*/
// #define RGBLIGHT_EFFECT_BREATHING //# define RGBLIGHT_EFFECT_BREATHING
// #define RGBLIGHT_EFFECT_RAINBOW_MOOD //# define RGBLIGHT_EFFECT_RAINBOW_MOOD
// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL //# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
// #define RGBLIGHT_EFFECT_SNAKE //# define RGBLIGHT_EFFECT_SNAKE
// #define RGBLIGHT_EFFECT_KNIGHT //# define RGBLIGHT_EFFECT_KNIGHT
// #define RGBLIGHT_EFFECT_CHRISTMAS //# define RGBLIGHT_EFFECT_CHRISTMAS
// #define RGBLIGHT_EFFECT_STATIC_GRADIENT //# define RGBLIGHT_EFFECT_STATIC_GRADIENT
// #define RGBLIGHT_EFFECT_RGB_TEST //# define RGBLIGHT_EFFECT_RGB_TEST
// #define RGBLIGHT_EFFECT_ALTERNATING //# define RGBLIGHT_EFFECT_ALTERNATING
// /*== customize breathing effect ==*/ /*== customize breathing effect ==*/
// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 //# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
// /*==== use exp() and sin() ====*/ /*==== use exp() and sin() ====*/
// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 //# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 //# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
// #endif //#endif
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5 #define DEBOUNCE 5
@@ -97,9 +96,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. /* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is userful for the Windows task manager shortcut (ctrl+shift+esc). * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
*/ */
// #define GRAVE_ESC_CTRL_OVERRIDE //#define GRAVE_ESC_CTRL_OVERRIDE
/* /*
* Force NKRO * Force NKRO
@@ -122,55 +121,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
//#define FORCE_NKRO //#define FORCE_NKRO
/*
* Magic Key Options
*
* Magic keys are hotkey commands that allow control over firmware functions of
* the keyboard. They are best used in combination with the HID Listen program,
* found here: https://www.pjrc.com/teensy/hid_listen.html
*
* The options below allow the magic key functionality to be changed. This is
* useful if your keyboard/keypad is missing keys and you want magic key support.
*
*/
/* control how magic key switches layers */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
/* override magic key keymap */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
//#define MAGIC_KEY_HELP H
//#define MAGIC_KEY_HELP_ALT SLASH
//#define MAGIC_KEY_DEBUG D
//#define MAGIC_KEY_DEBUG_MATRIX X
//#define MAGIC_KEY_DEBUG_KBD K
//#define MAGIC_KEY_DEBUG_MOUSE M
//#define MAGIC_KEY_VERSION V
//#define MAGIC_KEY_STATUS S
//#define MAGIC_KEY_CONSOLE C
//#define MAGIC_KEY_LAYER0 0
//#define MAGIC_KEY_LAYER0_ALT GRAVE
//#define MAGIC_KEY_LAYER1 1
//#define MAGIC_KEY_LAYER2 2
//#define MAGIC_KEY_LAYER3 3
//#define MAGIC_KEY_LAYER4 4
//#define MAGIC_KEY_LAYER5 5
//#define MAGIC_KEY_LAYER6 6
//#define MAGIC_KEY_LAYER7 7
//#define MAGIC_KEY_LAYER8 8
//#define MAGIC_KEY_LAYER9 9
//#define MAGIC_KEY_BOOTLOADER B
//#define MAGIC_KEY_BOOTLOADER_ALT ESC
//#define MAGIC_KEY_LOCK CAPS
//#define MAGIC_KEY_EEPROM E
//#define MAGIC_KEY_EEPROM_CLEAR BSPACE
//#define MAGIC_KEY_NKRO N
//#define MAGIC_KEY_SLEEP_LED Z
/* /*
* Feature disable options * Feature disable options
* These options are also useful to firmware size reduction. * These options are also useful to firmware size reduction.
@@ -186,32 +136,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER //#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING //#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT //#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
/* /* disable these deprecated features by default */
* MIDI options #define NO_ACTION_MACRO
*/ #define NO_ACTION_FUNCTION
/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1
/* enable basic MIDI features:
- MIDI notes can be sent when in Music mode is on
*/
//#define MIDI_BASIC
/* enable advanced MIDI features:
- MIDI notes can be added to the keymap
- Octave shift and transpose
- Virtual sustain, portamento, and modulation wheel
- etc.
*/
//#define MIDI_ADVANCED
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 1
/* Bootmagic Lite key configuration */ /* Bootmagic Lite key configuration */
// #define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_ROW 0
// #define BOOTMAGIC_LITE_COLUMN 0 //#define BOOTMAGIC_LITE_COLUMN 0
+1 -35
View File
@@ -13,39 +13,5 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "efreet.h" #include "efreet.h"
// Optional override functions below.
// You can leave any or all of these undefined.
// These are only required if you want to perform custom actions.
/*
void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
}
void matrix_scan_kb(void) {
// put your looping keyboard code here
// runs every cycle (a lot)
matrix_scan_user();
}
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
// put your per-action keyboard code here
// runs for every action, just before processing by the firmware
return process_record_user(keycode, record);
}
void led_set_kb(uint8_t usb_led) {
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
led_set_user(usb_led);
}
*/
+33 -32
View File
@@ -17,7 +17,9 @@
#include "quantum.h" #include "quantum.h"
/* This a shortcut to help you visually see your layout. #define XXX KC_NO
/* This is a shortcut to help you visually see your layout.
* *
* The first section contains all of the arguments representing the physical * The first section contains all of the arguments representing the physical
* layout of the board and position of the keys. * layout of the board and position of the keys.
@@ -25,35 +27,34 @@
* The second converts the arguments into a two-dimensional array which * The second converts the arguments into a two-dimensional array which
* represents the switch matrix. * represents the switch matrix.
*/ */
#define LAYOUT_ortho_4x12( \
k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, \
k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, \
k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, \
k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75 \
) { \
{ k10, k11, k12, k13, k14, k15 }, \
{ k00, k01, k02, k03, k04, k05 }, \
{ k30, k31, k32, k33, k34, k35 }, \
{ k20, k21, k22, k23, k24, k25 }, \
{ k50, k51, k52, k53, k54, k55 }, \
{ k40, k41, k42, k43, k44, k45 }, \
{ k70, k71, k72, k73, k74, k75 }, \
{ k60, k61, k62, k63, k64, k65 } \
}
#define LAYOUT_ortho_4x12( \ #define LAYOUT_planck_mit( \
K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15,\ k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, \
K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35,\ k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, \
K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,\ k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, \
K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75\ k60, k70, k61, k71, k62, k72, k73, k64, k74, k65, k75 \
) { \ ) { \
{ K10, K11, K12, K13, K14, K15 }, \ { k10, k11, k12, k13, k14, k15 }, \
{ K00, K01, K02, K03, K04, K05 }, \ { k00, k01, k02, k03, k04, k05 }, \
{ K30, K31, K32, K33, K34, K35 }, \ { k30, k31, k32, k33, k34, k35 }, \
{ K20, K21, K22, K23, K24, K25 }, \ { k20, k21, k22, k23, k24, k25 }, \
{ K50, K51, K52, K53, K54, K55 }, \ { k50, k51, k52, k53, k54, k55 }, \
{ K40, K41, K42, K43, K44, K45 }, \ { k40, k41, k42, k43, k44, k45 }, \
{ K70, K71, K72, K73, K74, K75 }, \ { k70, k71, k72, k73, k74, k75 }, \
{ K60, K61, K62, K63, K64, K65 } \ { k60, k61, k62, XXX, k64, k65 } \
} }
#define LAYOUT_planck_mit( \
K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15,\
K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35,\
K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,\
K60, K70, K61, K71, K62, K72, K73, K64, K74, K65, K75\
) { \
{ K10, K11, K12, K13, K14, K15 }, \
{ K00, K01, K02, K03, K04, K05 }, \
{ K30, K31, K32, K33, K34, K35 }, \
{ K20, K21, K22, K23, K24, K25 }, \
{ K50, K51, K52, K53, K54, K55 }, \
{ K40, K41, K42, K43, K44, K45 }, \
{ K70, K71, K72, K73, K74, K75 }, \
{ K60, K61, K62, KC_NO, K64, K65 } \
}
+106 -3
View File
@@ -6,10 +6,113 @@
"height": 4, "height": 4,
"layouts": { "layouts": {
"LAYOUT_planck_mit": { "LAYOUT_planck_mit": {
"layout": [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"x":0, "y":3}, {"label":"Ctrl", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"Super", "x":3, "y":3}, {"label":"&dArr;", "x":4, "y":3}, {"x":5, "y":3, "w":2}, {"label":"&uArr;", "x":7, "y":3}, {"label":"&larr;", "x":8, "y":3}, {"label":"&darr;", "x":9, "y":3}, {"label":"&uarr;", "x":10, "y":3}, {"label":"&rarr;", "x":11, "y":3}] "layout": [
{"x": 0, "y": 0},
{"x": 1, "y": 0},
{"x": 2, "y": 0},
{"x": 3, "y": 0},
{"x": 4, "y": 0},
{"x": 5, "y": 0},
{"x": 6, "y": 0},
{"x": 7, "y": 0},
{"x": 8, "y": 0},
{"x": 9, "y": 0},
{"x": 10, "y": 0},
{"x": 11, "y": 0},
{"x": 0, "y": 1},
{"x": 1, "y": 1},
{"x": 2, "y": 1},
{"x": 3, "y": 1},
{"x": 4, "y": 1},
{"x": 5, "y": 1},
{"x": 6, "y": 1},
{"x": 7, "y": 1},
{"x": 8, "y": 1},
{"x": 9, "y": 1},
{"x": 10, "y": 1},
{"x": 11, "y": 1},
{"x": 0, "y": 2},
{"x": 1, "y": 2},
{"x": 2, "y": 2},
{"x": 3, "y": 2},
{"x": 4, "y": 2},
{"x": 5, "y": 2},
{"x": 6, "y": 2},
{"x": 7, "y": 2},
{"x": 8, "y": 2},
{"x": 9, "y": 2},
{"x": 10, "y": 2},
{"x": 11, "y": 2},
{"x": 0, "y": 3},
{"x": 1, "y": 3},
{"x": 2, "y": 3},
{"x": 3, "y": 3},
{"x": 4, "y": 3},
{"x": 5, "y": 3, "w": 2},
{"x": 7, "y": 3},
{"x": 8, "y": 3},
{"x": 9, "y": 3},
{"x": 10, "y": 3},
{"x": 11, "y": 3}
]
}, },
"LAYOUT_ortho_4x12": { "LAYOUT_ortho_4x12": {
"layout": [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"x":0, "y":3}, {"label":"Ctrl", "x":1, "y":3}, {"label":"Alt", "x":2, "y":3}, {"label":"Super", "x":3, "y":3}, {"label":"&dArr;", "x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"label":"&uArr;", "x":7, "y":3}, {"label":"&larr;", "x":8, "y":3}, {"label":"&darr;", "x":9, "y":3}, {"label":"&uarr;", "x":10, "y":3}, {"label":"&rarr;", "x":11, "y":3}] "layout": [
{"x": 0, "y": 0},
{"x": 1, "y": 0},
{"x": 2, "y": 0},
{"x": 3, "y": 0},
{"x": 4, "y": 0},
{"x": 5, "y": 0},
{"x": 6, "y": 0},
{"x": 7, "y": 0},
{"x": 8, "y": 0},
{"x": 9, "y": 0},
{"x": 10, "y": 0},
{"x": 11, "y": 0},
{"x": 0, "y": 1},
{"x": 1, "y": 1},
{"x": 2, "y": 1},
{"x": 3, "y": 1},
{"x": 4, "y": 1},
{"x": 5, "y": 1},
{"x": 6, "y": 1},
{"x": 7, "y": 1},
{"x": 8, "y": 1},
{"x": 9, "y": 1},
{"x": 10, "y": 1},
{"x": 11, "y": 1},
{"x": 0, "y": 2},
{"x": 1, "y": 2},
{"x": 2, "y": 2},
{"x": 3, "y": 2},
{"x": 4, "y": 2},
{"x": 5, "y": 2},
{"x": 6, "y": 2},
{"x": 7, "y": 2},
{"x": 8, "y": 2},
{"x": 9, "y": 2},
{"x": 10, "y": 2},
{"x": 11, "y": 2},
{"x": 0, "y": 3},
{"x": 1, "y": 3},
{"x": 2, "y": 3},
{"x": 3, "y": 3},
{"x": 4, "y": 3},
{"x": 5, "y": 3},
{"x": 6, "y": 3},
{"x": 7, "y": 3},
{"x": 8, "y": 3},
{"x": 9, "y": 3},
{"x": 10, "y": 3},
{"x": 11, "y": 3}
]
} }
} }
} }
+19 -36
View File
@@ -13,43 +13,26 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
// Defines the keycodes used by our macros in process_record_user
enum custom_keycodes {
QMKBEST = SAFE_RANGE,
QMKURL
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_ortho_4x12( [0] = LAYOUT_ortho_4x12(
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
BL_TOGG, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT BL_TOGG, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
), ),
[1] = LAYOUT_ortho_4x12( [1] = LAYOUT_ortho_4x12(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
), ),
[2] = LAYOUT_ortho_4x12( [2] = LAYOUT_ortho_4x12(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
) )
}; };
void matrix_init_user(void) {
}
void matrix_scan_user(void) {
}
void led_set_user(uint8_t usb_led) {
}
+1 -1
View File
@@ -1 +1 @@
# The default keymap for efreet # The default keymap for efreet
+25 -24
View File
@@ -13,31 +13,32 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_ortho_4x12( [0] = LAYOUT_ortho_4x12(
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
BL_TOGG, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT BL_TOGG, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
), ),
[1] = LAYOUT_ortho_4x12( [1] = LAYOUT_ortho_4x12(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
), ),
[2] = LAYOUT_ortho_4x12( [2] = LAYOUT_ortho_4x12(
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
), ),
[3] = LAYOUT_ortho_4x12( [3] = LAYOUT_ortho_4x12(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
) )
}; };
+8 -4
View File
@@ -1,15 +1,19 @@
# Efreet # Efreet
![efreet](https://i.imgur.com/Lh6WLuI.jpg) ![efreet](https://i.imgur.com/Lh6WLuIl.jpg)
Custom PCB for the Efreet (as4x) keyboard. Custom PCB for the Efreet (as4x) keyboard.
Keyboard Maintainer: [Amber Holly](https://github.com/amberstarlight) * Keyboard Maintainer: [Amber Holly](https://github.com/amberstarlight)
Hardware Supported: Efreet PCB * Hardware Supported: Efreet PCB
Hardware Availability: private group buy * Hardware Availability: private group buy
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):
make efreet:default make efreet:default
Flashing example for this keyboard:
make efreet: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). 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).
+10 -17
View File
@@ -2,30 +2,23 @@
MCU = atmega32u2 MCU = atmega32u2
# Bootloader selection # Bootloader selection
# Teensy halfkay
# Pro Micro caterina
# Atmel DFU atmel-dfu
# LUFA DFU lufa-dfu
# QMK DFU qmk-dfu
# ATmega32A bootloadHID
# ATmega328P USBasp
BOOTLOADER = atmel-dfu BOOTLOADER = atmel-dfu
# Build Options # Build Options
# change yes to no to disable # change yes to no to disable
# #
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
MOUSEKEY_ENABLE = yes # Mouse keys MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = yes # USB Nkey Rollover
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
MIDI_ENABLE = no # MIDI support BLUETOOTH_ENABLE = no # Enable Bluetooth
UNICODE_ENABLE = no # Unicode AUDIO_ENABLE = no # Audio output
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = no # Audio output on port C6
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
LAYOUTS = ortho_4x12 planck_mit LAYOUTS = ortho_4x12 planck_mit
+51 -1
View File
@@ -6,7 +6,57 @@
"height": 4.5, "height": 4.5,
"layouts": { "layouts": {
"LAYOUT": { "LAYOUT": {
"layout": [{"x":3, "y":0}, {"x":11, "y":0}, {"x":2, "y":0.25}, {"x":4, "y":0.25}, {"x":10, "y":0.25}, {"x":12, "y":0.25}, {"x":1, "y":0.5}, {"x":5, "y":0.5}, {"x":9, "y":0.5}, {"x":13, "y":0.5}, {"x":0, "y":0.75}, {"x":14, "y":0.75}, {"x":3, "y":1}, {"x":11, "y":1}, {"x":2, "y":1.25}, {"x":4, "y":1.25}, {"x":10, "y":1.25}, {"x":12, "y":1.25}, {"x":1, "y":1.5}, {"x":5, "y":1.5}, {"x":9, "y":1.5}, {"x":13, "y":1.5}, {"x":0, "y":1.75}, {"x":14, "y":1.75}, {"x":3, "y":2}, {"x":11, "y":2}, {"x":2, "y":2.25}, {"x":4, "y":2.25}, {"x":10, "y":2.25}, {"x":12, "y":2.25}, {"x":1, "y":2.5}, {"x":5, "y":2.5}, {"x":9, "y":2.5}, {"x":13, "y":2.5}, {"x":0, "y":2.75}, {"x":14, "y":2.75}, {"x":3, "y":3}, {"x":11, "y":3}, {"x":2, "y":3.25}, {"x":4, "y":3.25}, {"x":10, "y":3.25}, {"x":12, "y":3.25}, {"x":5, "y":3.5}, {"x":6, "y":3.5}, {"x":8, "y":3.5}, {"x":9, "y":3.5}] "layout": [
{"x":0, "y":0.75},
{"x":1, "y":0.5},
{"x":2, "y":0.25},
{"x":3, "y":0},
{"x":4, "y":0.25},
{"x":5, "y":0.5},
{"x":9, "y":0.5},
{"x":10, "y":0.25},
{"x":11, "y":0},
{"x":12, "y":0.25},
{"x":13, "y":0.5},
{"x":14, "y":0.75},
{"x":0, "y":1.75},
{"x":1, "y":1.5},
{"x":2, "y":1.25},
{"x":3, "y":1},
{"x":4, "y":1.25},
{"x":5, "y":1.5},
{"x":9, "y":1.5},
{"x":10, "y":1.25},
{"x":11, "y":1},
{"x":12, "y":1.25},
{"x":13, "y":1.5},
{"x":14, "y":1.75},
{"x":0, "y":2.75},
{"x":1, "y":2.5},
{"x":2, "y":2.25},
{"x":3, "y":2},
{"x":4, "y":2.25},
{"x":5, "y":2.5},
{"x":9, "y":2.5},
{"x":10, "y":2.25},
{"x":11, "y":2},
{"x":12, "y":2.25},
{"x":13, "y":2.5},
{"x":14, "y":2.75},
{"x":2, "y":3.25},
{"x":3, "y":3},
{"x":4, "y":3.25},
{"x":5, "y":3.5},
{"x":6, "y":3.5},
{"x":8, "y":3.5},
{"x":9, "y":3.5},
{"x":10, "y":3.25},
{"x":11, "y":3},
{"x":12, "y":3.25}
]
} }
} }
} }
+2 -2
View File
@@ -19,8 +19,8 @@
#include "config_common.h" #include "config_common.h"
/* USB Device descriptor parameter */ /* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED #define VENDOR_ID 0x4558 // "EX"
#define PRODUCT_ID 0x6060 #define PRODUCT_ID 0xE605 // E6.5
#define DEVICE_VER 0x0001 #define DEVICE_VER 0x0001
#define MANUFACTURER Exclusive / E-Team #define MANUFACTURER Exclusive / E-Team
#define PRODUCT E6.5 #define PRODUCT E6.5
+127 -129
View File
@@ -40,13 +40,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K410, K412, K413, K414, K415 \ K400, K401, K403, K406, K410, K412, K413, K414, K415 \
) LAYOUT_65_all_noblocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K410, K412, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
) }
#define LAYOUT_65_ansi_noblocker_splitbs( \ #define LAYOUT_65_ansi_noblocker_splitbs( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
@@ -54,13 +54,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K410, K412, K413, K414, K415 \ K400, K401, K403, K406, K410, K412, K413, K414, K415 \
) LAYOUT_65_all_noblocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K410, K412, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
) }
#define LAYOUT_65_iso_noblocker( \ #define LAYOUT_65_iso_noblocker( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
@@ -68,13 +68,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K410, K412, K413, K414, K415 \ K400, K401, K403, K406, K410, K412, K413, K414, K415 \
) LAYOUT_65_all_noblocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K410, K412, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
) }
// Ansi layout with bottom row 1.25,1.25,1,25,6.25,1.25,1.25 blocker <-,v,-> // Ansi layout with bottom row 1.25,1.25,1,25,6.25,1.25,1.25 blocker <-,v,->
#define LAYOUT_65_all_blocker( \ #define LAYOUT_65_all_blocker( \
@@ -97,13 +97,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K410, K411, K413, K414, K415 \ K400, K401, K403, K406, K410, K411, K413, K414, K415 \
) LAYOUT_65_all_blocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K410, K411, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_ansi_blocker_splitbs( \ #define LAYOUT_65_ansi_blocker_splitbs( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
@@ -111,13 +111,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K410, K411, K413, K414, K415 \ K400, K401, K403, K406, K410, K411, K413, K414, K415 \
) LAYOUT_65_all_blocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K410, K411, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_iso_blocker( \ #define LAYOUT_65_iso_blocker( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
@@ -125,14 +125,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K410, K411, K413, K414, K415 \ K400, K401, K403, K406, K410, K411, K413, K414, K415 \
) LAYOUT_65_all_blocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K410, K411, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
) }
// ANSI layout with bottom row 1.5,1.5,7,1.5,1.5,<-,v,-> // ANSI layout with bottom row 1.5,1.5,7,1.5,1.5,<-,v,->
#define LAYOUT_65_all_7u_noblocker( \ #define LAYOUT_65_all_7u_noblocker( \
@@ -155,13 +154,14 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K406, K410, K412, K413, K414, K415 \ K400, K401, K406, K410, K412, K413, K414, K415 \
) LAYOUT_65_all_7u_noblocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K406, K410, K412, K413, K414, K415 \ { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
) }
#define LAYOUT_65_ansi_7u_noblocker_splitbs( \ #define LAYOUT_65_ansi_7u_noblocker_splitbs( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
@@ -169,13 +169,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K406, K410, K412, K413, K414, K415 \ K400, K401, K406, K410, K412, K413, K414, K415 \
) LAYOUT_65_all_7u_noblocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K406, K410, K412, K413, K414, K415 \ { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
) }
#define LAYOUT_65_iso_7u_noblocker( \ #define LAYOUT_65_iso_7u_noblocker( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
@@ -183,14 +183,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K406, K410, K412, K413, K414, K415 \ K400, K401, K406, K410, K412, K413, K414, K415 \
) LAYOUT_65_all_7u_noblocker( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K406, K410, K412, K413, K414, K415 \ { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
) }
// ANSI layout with bottom row 1.5,1,1.5,7,1.5, blocker, <-,v,-> // ANSI layout with bottom row 1.5,1,1.5,7,1.5, blocker, <-,v,->
#define LAYOUT_65_all_7u_wk( \ #define LAYOUT_65_all_7u_wk( \
@@ -213,13 +212,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K411, K413, K414, K415 \ K400, K401, K403, K406, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_wk( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K411, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_ansi_7u_wk_splitbs( \ #define LAYOUT_65_ansi_7u_wk_splitbs( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
@@ -227,13 +226,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K411, K413, K414, K415 \ K400, K401, K403, K406, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_wk( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K411, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_iso_7u_wk( \ #define LAYOUT_65_iso_7u_wk( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
@@ -241,13 +240,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K403, K406, K411, K413, K414, K415 \ K400, K401, K403, K406, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_wk( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K403, K406, K411, K413, K414, K415 \ { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
) }
// layout with bottom row 1.5,blocker,1.5,7,1.5, blocker, <-,v,-> // layout with bottom row 1.5,blocker,1.5,7,1.5, blocker, <-,v,->
#define LAYOUT_65_all_7u_wkl( \ #define LAYOUT_65_all_7u_wkl( \
@@ -270,13 +269,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K402, K406, K411, K413, K414, K415 \ K400, K402, K406, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_wkl( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K402, K406, K411, K413, K414, K415 \ { K400, KC_NO, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_ansi_7u_wkl_splitbs( \ #define LAYOUT_65_ansi_7u_wkl_splitbs( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
@@ -284,13 +283,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K402, K406, K411, K413, K414, K415 \ K400, K402, K406, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_wkl( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K402, K406, K411, K413, K414, K415 \ { K400, KC_NO, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_iso_7u_wkl( \ #define LAYOUT_65_iso_7u_wkl( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
@@ -298,14 +297,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K402, K406, K411, K413, K414, K415 \ K400, K402, K406, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_wkl( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K402, K406, K411, K413, K414, K415 \ { K400, KC_NO, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
) }
// layout with bottom row blocker,1,1.5,7,1.5,1, blocker, <-,v,-> // layout with bottom row blocker,1,1.5,7,1.5,1, blocker, <-,v,->
#define LAYOUT_65_all_7u_hhkb( \ #define LAYOUT_65_all_7u_hhkb( \
@@ -328,13 +326,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K406, K410, K411, K413, K414, K415 \ K400, K401, K406, K410, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_hhkb( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K406, K410, K411, K413, K414, K415 \ { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_ansi_7u_hhkb_splitbs( \ #define LAYOUT_65_ansi_7u_hhkb_splitbs( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
@@ -342,13 +340,13 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K406, K410, K411, K413, K414, K415 \ K400, K401, K406, K410, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_hhkb( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K406, K410, K411, K413, K414, K415 \ { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
) }
#define LAYOUT_65_iso_7u_hhkb( \ #define LAYOUT_65_iso_7u_hhkb( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
@@ -356,12 +354,12 @@
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \ K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
K400, K401, K406, K410, K411, K413, K414, K415 \ K400, K401, K406, K410, K411, K413, K414, K415 \
) LAYOUT_65_all_7u_hhkb( \ ) { \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \ { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
K400, K401, K406, K410, K411, K413, K414, K415 \ { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
) }
// clang-format on // clang-format on
@@ -0,0 +1,46 @@
/* Copyright 2020
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You 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_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_TRNS, KC_INS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
KC_LSFT, KC_TRNS, 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_DEL,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_TRNS, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
[1] = LAYOUT_all(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_NO, RESET,
BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME,
RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(1), RGB_SAI, RGB_VAD, RGB_SAD),
[2] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[3] = LAYOUT_all(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
};
@@ -0,0 +1,2 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
+4 -5
View File
@@ -19,12 +19,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h" #include "config_common.h"
#define VENDOR_ID 0x20A0 #define VENDOR_ID 0x5143 // "QC"
#define PRODUCT_ID 0x422D #define PRODUCT_ID 0x4558 // "EX"
#define DEVICE_VER 0x0001 #define DEVICE_VER 0x0001
#define MANUFACTURER Quadcube #define MANUFACTURER Quadcube
#define PRODUCT Exent #define PRODUCT Exent
#define DESCRIPTION 65% Keyboard
#define RGBLED_NUM 18 #define RGBLED_NUM 18
+33
View File
@@ -0,0 +1,33 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* layer 0: qwerty */
[0] = LAYOUT_65_ansi(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
[1] = LAYOUT_65_ansi(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_TRNS,
BL_TOGG, BL_STEP, BL_INC, BL_DEC, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[2] = LAYOUT_65_ansi(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[3] = LAYOUT_65_ansi(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
};
+2
View File
@@ -0,0 +1,2 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1 -1
View File
@@ -31,4 +31,4 @@ AUDIO_ENABLE = no # Audio output on port C6
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
LTO_ENABLE = yes LTO_ENABLE = yes
LAYOUTS = 65_ansi_blocker 65_iso_blocker LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_iso_blocker 65_iso_blocker_split_bs
+92 -16
View File
@@ -20,15 +20,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h" #include "config_common.h"
/* USB Device descriptor parameter */ /* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED #define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x0000 #define PRODUCT_ID 0x1895
#define DEVICE_VER 0x0002 #define DEVICE_VER 0x0002
#define MANUFACTURER HnahKB #define MANUFACTURER HnahKB
#define PRODUCT Freyr #define PRODUCT Freyr
#define DESCRIPTION Custom PCB TKL keyboard
/* key matrix size */ /* key matrix size */
#define MATRIX_ROWS 10 #define MATRIX_ROWS 10
#define MATRIX_COLS 10 #define MATRIX_COLS 10
/* /*
@@ -40,26 +39,103 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
* *
*/ */
#define MATRIX_ROW_PINS { D3, B2, B1, B0, E6, F0, D2, D5, F4, F1 } #define MATRIX_ROW_PINS { D3, B2, B1, B0, E6, F0, D2, D5, F4, F1 }
#define MATRIX_COL_PINS { B4, D7, D6, D4, B5, C7, C6, F5, F6, F7 } #define MATRIX_COL_PINS { B4, D7, D6, D4, B5, C7, C6, F5, F6, F7 }
#define UNUSED_PINS #define UNUSED_PINS
/* COL2ROW, ROW2COL*/ /* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW #define DIODE_DIRECTION COL2ROW
/*
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
*/
#define BACKLIGHT_PIN B6 #define BACKLIGHT_PIN B6
#define BACKLIGHT_BREATHING
#define BACKLIGHT_LEVELS 3 #define BACKLIGHT_LEVELS 3
#define BACKLIGHT_BREATHING
//#define RGB_DI_PIN E2
//#ifdef RGB_DI_PIN
//# define RGBLED_NUM 16
//# define RGBLIGHT_HUE_STEP 8
//# define RGBLIGHT_SAT_STEP 8
//# define RGBLIGHT_VAL_STEP 8
//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
/*== all animations enable ==*/
//# define RGBLIGHT_ANIMATIONS
/*== or choose animations ==*/
//# define RGBLIGHT_EFFECT_BREATHING
//# define RGBLIGHT_EFFECT_RAINBOW_MOOD
//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
//# define RGBLIGHT_EFFECT_SNAKE
//# define RGBLIGHT_EFFECT_KNIGHT
//# define RGBLIGHT_EFFECT_CHRISTMAS
//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
//# define RGBLIGHT_EFFECT_RGB_TEST
//# define RGBLIGHT_EFFECT_ALTERNATING
/*== customize breathing effect ==*/
/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
/*==== use exp() and sin() ====*/
//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
//#endif
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5 #define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
*/
//#define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*
*/
//#define FORCE_NKRO
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
//#define NO_DEBUG
/* disable print */
//#define NO_PRINT
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
/* disable these deprecated features by default */
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION
/* Bootmagic Lite key configuration */ /* Bootmagic Lite key configuration */
#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_ROW 0
#define BOOTMAGIC_LITE_COLUMN 0 //#define BOOTMAGIC_LITE_COLUMN 0
+13 -22
View File
@@ -13,33 +13,24 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "freyr.h" #include "freyr.h"
void matrix_init_kb(void) { void matrix_init_kb(void) {
matrix_init_user(); matrix_init_user();
led_init_ports(); led_init_ports();
}; }
void led_init_ports(void) { void led_init_ports(void) {
setPinOutput(B3); setPinOutput(B3);
setPinOutput(B7); setPinOutput(B7);
} }
void led_set_kb(uint8_t usb_led) { bool led_update_kb(led_t led_state) {
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) { if (led_update_user(led_state)) {
// Turn Caps Lock LED on writePin(B3, !led_state.caps_lock);
writePinLow(B3); writePin(B7, !led_state.scroll_lock);
} else { }
// Turn Caps Lock LED off
writePinHigh(B3); return true;
}
if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
// Turn Scroll Lock LED on
writePinLow(B7);
} else {
// Turn Scroll Lock LED off
writePinHigh(B7);
}
led_set_user(usb_led);
} }
+48 -39
View File
@@ -13,60 +13,69 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#pragma once #pragma once
#include "quantum.h" #include "quantum.h"
#define XXX KC_NO
#define LAYOUT_all( \ #define LAYOUT_all( \
k00, k01, k02, k03, k04, k06, k07, k08,k09, k60, k61, k62, k63, k64, k65, k66, \ k00, k01, k02, k03, k04, k06, k07, k08, k09, k60, k61, k62, k63, k64, k65, k66, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, k74, k75, k76, k67, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, k74, k75, k76, k67, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k83, k78, k77, k68, \ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k83, k78, k77, k68, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k92, k84, \ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k92, k84, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, k85, k93, k79, \ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, k85, k93, k79, \
k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \ k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \
) { \ ) { \
{ k00, k01, k02, k03, k04, KC_NO, k06, k07, k08, k09 }, \ { k00, k01, k02, k03, k04, XXX, k06, k07, k08, k09 }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 }, \ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49}, \ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49 }, \
{ k50, k51, k52, k53, k54, k55, k56, k57, k58, k59 }, \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59 }, \
{ k60, k61, k62, k63, k64, k65, k66, k67, k68, k69 }, \ { k60, k61, k62, k63, k64, k65, k66, k67, k68, k69 }, \
{ k70, k71, k72, k73, k74, k75, k76, k77, k78, k79 }, \ { k70, k71, k72, k73, k74, k75, k76, k77, k78, k79 }, \
{ k80, k81, k82, k83, k84, k85, KC_NO, KC_NO, KC_NO, KC_NO }, \ { k80, k81, k82, k83, k84, k85, XXX, XXX, XXX, XXX }, \
{ k90, k91, k92, k93, k94, k95, KC_NO, KC_NO, KC_NO, KC_NO } \ { k90, k91, k92, k93, k94, k95, XXX, XXX, XXX, XXX } \
} }
#define LAYOUT_tkl_ansi( \ #define LAYOUT_tkl_ansi( \
k00, k01, k02, k03, k04, k06, k07, k08,k09, k60, k61, k62, k63, k64, k65, k66, \ k00, k01, k02, k03, k04, k06, k07, k08, k09, k60, k61, k62, k63, k64, k65, k66, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, k75, k76, k67, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, k75, k76, k67, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k83, k78, k77, k68, \ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k83, k78, k77, k68, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k84, \ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k84, \
k40, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, k93, k79, \ k40, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, k93, k79, \
k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \ k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \
) LAYOUT_all( \ ) { \
k00, k01, k02, k03, k04, k06, k07, k08,k09, k60, k61, k62, k63, k64, k65, k66, \ { k00, k01, k02, k03, k04, XXX, k06, k07, k08, k09 }, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, KC_NO, k75, k76, k67, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k83, k78, k77, k68, \ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, KC_NO, k84, \ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 }, \
k40, KC_NO, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, KC_NO, k93, k79, \ { k40, XXX, k42, k43, k44, k45, k46, k47, k48, k49 }, \
k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59 }, \
) { k60, k61, k62, k63, k64, k65, k66, k67, k68, k69 }, \
{ k70, k71, k72, k73, XXX, k75, k76, k77, k78, k79 }, \
{ k80, k81, k82, k83, k84, XXX, XXX, XXX, XXX, XXX }, \
{ k90, k91, XXX, k93, k94, k95, XXX, XXX, XXX, XXX } \
}
#define LAYOUT_tkl_iso( \ #define LAYOUT_tkl_iso( \
k00, k01, k02, k03, k04, k06, k07, k08,k09, k60, k61, k62, k63, k64, k65, k66, \ k00, k01, k02, k03, k04, k06, k07, k08, k09, k60, k61, k62, k63, k64, k65, k66, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, k75, k76, k67, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, k75, k76, k67, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k78, k77, k68, \ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, k78, k77, k68, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k92, k84, \ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k92, k84, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, k93, k79, \ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, k93, k79, \
k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \ k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \
) LAYOUT_all( \ ) { \
k00, k01, k02, k03, k04, k06, k07, k08,k09, k60, k61, k62, k63, k64, k65, k66, \ { k00, k01, k02, k03, k04, XXX, k06, k07, k08, k09 }, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k70, k71, k72, k73, KC_NO, k75, k76, k67, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k80, k81, k82, KC_NO, k78, k77, k68, \ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k90, k91, k92, k84, \ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 }, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k95, k94, KC_NO, k93, k79, \ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49 }, \
k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k69 \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59 }, \
) { k60, k61, k62, k63, k64, k65, k66, k67, k68, k69 }, \
{ k70, k71, k72, k73, XXX, k75, k76, k77, k78, k79 }, \
{ k80, k81, k82, XXX, k84, XXX, XXX, XXX, XXX, XXX }, \
{ k90, k91, k92, k93, k94, k95, XXX, XXX, XXX, XXX } \
}
+305 -269
View File
@@ -6,284 +6,320 @@
"height": 6.25, "height": 6.25,
"layouts": { "layouts": {
"LAYOUT_all": { "LAYOUT_all": {
"key_count": 91,
"layout": [ "layout": [
{"label":"Esc (k00)", "x":0, "y":0}, {"x": 0, "y": 0},
{"label":"F1 (k01)", "x":2, "y":0},
{"label":"F2 (k02)", "x":3, "y":0}, {"x": 2, "y": 0},
{"label":"F3 (k03)", "x":4, "y":0}, {"x": 3, "y": 0},
{"label":"F4 (k04)", "x":5, "y":0}, {"x": 4, "y": 0},
{"label":"F5 (k06)", "x":6.5, "y":0}, {"x": 5, "y": 0},
{"label":"F6 (k07)", "x":7.5, "y":0},
{"label":"F7 (k08)", "x":8.5, "y":0}, {"x": 6.5, "y": 0},
{"label":"F8 (k09)", "x":9.5, "y":0}, {"x": 7.5, "y": 0},
{"label":"F9 (k60)", "x":11, "y":0}, {"x": 8.5, "y": 0},
{"label":"F10 (k61)", "x":12, "y":0}, {"x": 9.5, "y": 0},
{"label":"F11 (k62)", "x":13, "y":0},
{"label":"F12 (k63)", "x":14, "y":0}, {"x": 11, "y": 0},
{"label":"PrtSc (k64)", "x":15.25, "y":0}, {"x": 12, "y": 0},
{"label":"Scroll Lock (k65)", "x":16.25, "y":0}, {"x": 13, "y": 0},
{"label":"Pause (k66)", "x":17.25, "y":0}, {"x": 14, "y": 0},
{"label":"~ (k10)", "x":0, "y":1.25},
{"label":"! (k11)", "x":1, "y":1.25}, {"x": 15.25, "y": 0},
{"label":"@ (k12)", "x":2, "y":1.25}, {"x": 16.25, "y": 0},
{"label":"# (k13)", "x":3, "y":1.25}, {"x": 17.25, "y": 0},
{"label":"$ (k14)", "x":4, "y":1.25},
{"label":"% (k15)", "x":5, "y":1.25}, {"x": 0, "y": 1.25},
{"label":"^ (k16)", "x":6, "y":1.25}, {"x": 1, "y": 1.25},
{"label":"& (k17)", "x":7, "y":1.25}, {"x": 2, "y": 1.25},
{"label":"* (k18)", "x":8, "y":1.25}, {"x": 3, "y": 1.25},
{"label":"( (k19)", "x":9, "y":1.25}, {"x": 4, "y": 1.25},
{"label":") (k70)", "x":10, "y":1.25}, {"x": 5, "y": 1.25},
{"label":"_ (k71)", "x":11, "y":1.25}, {"x": 6, "y": 1.25},
{"label":"+ (k72)", "x":12, "y":1.25}, {"x": 7, "y": 1.25},
{"label":"Backspace (k73)", "x":13, "y":1.25}, {"x": 8, "y": 1.25},
{"label":"Backspace2 (k74)", "x":14, "y":1.25}, {"x": 9, "y": 1.25},
{"label":"Insert (k75)", "x":15.25, "y":1.25}, {"x": 10, "y": 1.25},
{"label":"Home (k76)", "x":16.25, "y":1.25}, {"x": 11, "y": 1.25},
{"label":"PgUp (k67)", "x":17.25, "y":1.25}, {"x": 12, "y": 1.25},
{"label":"Tab (k20)", "x":0, "y":2.25, "w":1.5}, {"x": 13, "y": 1.25},
{"label":"Q (k21)", "x":1.5, "y":2.25}, {"x": 14, "y": 1.25},
{"label":"W (k22)", "x":2.5, "y":2.25},
{"label":"E (k23)", "x":3.5, "y":2.25}, {"x": 15.25, "y": 1.25},
{"label":"R (k24)", "x":4.5, "y":2.25}, {"x": 16.25, "y": 1.25},
{"label":"T (k25)", "x":5.5, "y":2.25}, {"x": 17.25, "y": 1.25},
{"label":"Y (k26)", "x":6.5, "y":2.25},
{"label":"U (k27)", "x":7.5, "y":2.25}, {"x": 0, "y": 2.25, "w": 1.5},
{"label":"I (k28)", "x":8.5, "y":2.25}, {"x": 1.5, "y": 2.25},
{"label":"O (k29)", "x":9.5, "y":2.25}, {"x": 2.5, "y": 2.25},
{"label":"P (k80)", "x":10.5, "y":2.25}, {"x": 3.5, "y": 2.25},
{"label":"{ (k81)", "x":11.5, "y":2.25}, {"x": 4.5, "y": 2.25},
{"label":"} (k82)", "x":12.5, "y":2.25}, {"x": 5.5, "y": 2.25},
{"label":"| (k83)", "x":13.5, "y":2.25, "w":1.5}, {"x": 6.5, "y": 2.25},
{"label":"Delete (k78)", "x":15.25, "y":2.25}, {"x": 7.5, "y": 2.25},
{"label":"End (k77)", "x":16.25, "y":2.25}, {"x": 8.5, "y": 2.25},
{"label":"PgDn (k68)", "x":17.25, "y":2.25}, {"x": 9.5, "y": 2.25},
{"label":"Caps Lock (k30)", "x":0, "y":3.25, "w":1.75}, {"x": 10.5, "y": 2.25},
{"label":"A (k31)", "x":1.75, "y":3.25}, {"x": 11.5, "y": 2.25},
{"label":"S (k32)", "x":2.75, "y":3.25}, {"x": 12.5, "y": 2.25},
{"label":"D (k33)", "x":3.75, "y":3.25}, {"x": 13.5, "y": 2.25, "w": 1.5},
{"label":"F (k34)", "x":4.75, "y":3.25},
{"label":"G (k35)", "x":5.75, "y":3.25}, {"x": 15.25, "y": 2.25},
{"label":"H (k36)", "x":6.75, "y":3.25}, {"x": 16.25, "y": 2.25},
{"label":"J (k37)", "x":7.75, "y":3.25}, {"x": 17.25, "y": 2.25},
{"label":"K (k38)", "x":8.75, "y":3.25},
{"label":"L (k39)", "x":9.75, "y":3.25}, {"x": 0, "y": 3.25, "w": 1.75},
{"label":": (k90)", "x":10.75, "y":3.25}, {"x": 1.75, "y": 3.25},
{"label":"\" (k91)", "x":11.75, "y":3.25}, {"x": 2.75, "y": 3.25},
{"label":"~ (k92)", "x":12.75, "y":3.25}, {"x": 3.75, "y": 3.25},
{"label":"Enter (k84)", "x":13.75, "y":3.25, "w":1.25}, {"x": 4.75, "y": 3.25},
{"label":"Shift (k40)", "x":0, "y":4.25, "w":1.25}, {"x": 5.75, "y": 3.25},
{"label":"| (k41)", "x":1.25, "y":4.25}, {"x": 6.75, "y": 3.25},
{"label":"Z (k42)", "x":2.25, "y":4.25}, {"x": 7.75, "y": 3.25},
{"label":"X (k43)", "x":3.25, "y":4.25}, {"x": 8.75, "y": 3.25},
{"label":"C (k44)", "x":4.25, "y":4.25}, {"x": 9.75, "y": 3.25},
{"label":"V (k45)", "x":5.25, "y":4.25}, {"x": 10.75, "y": 3.25},
{"label":"B (k46)", "x":6.25, "y":4.25}, {"x": 11.75, "y": 3.25},
{"label":"N (k47)", "x":7.25, "y":4.25}, {"x": 12.75, "y": 3.25},
{"label":"M (k48)", "x":8.25, "y":4.25}, {"x": 13.75, "y": 3.25, "w": 1.25},
{"label":"< (k49)", "x":9.25, "y":4.25},
{"label":"> (k95)", "x":10.25, "y":4.25}, {"x": 0, "y": 4.25, "w": 1.25},
{"label":"? (k94)", "x":11.25, "y":4.25}, {"x": 1.25, "y": 4.25},
{"label":"JP Ro (k85)", "x":12.25, "y":4.25}, {"x": 2.25, "y": 4.25},
{"label":"Shift (k93)", "x":13.25, "y":4.25, "w":1.75}, {"x": 3.25, "y": 4.25},
{"label":"Up (k79)", "x":16.25, "y":4.25}, {"x": 4.25, "y": 4.25},
{"label":"Ctrl (k50)", "x":0, "y":5.25, "w":1.25}, {"x": 5.25, "y": 4.25},
{"label":"Win (k51)", "x":1.25, "y":5.25, "w":1.25}, {"x": 6.25, "y": 4.25},
{"label":"Alt (k52)", "x":2.5, "y":5.25, "w":1.25}, {"x": 7.25, "y": 4.25},
{"label":"Space (k53)", "x":3.75, "y":5.25, "w":6.25}, {"x": 8.25, "y": 4.25},
{"label":"Alt (k54)", "x":10, "y":5.25, "w":1.25}, {"x": 9.25, "y": 4.25},
{"label":"Win (k55)", "x":11.25, "y":5.25, "w":1.25}, {"x": 10.25, "y": 4.25},
{"label":"Menu (k56)", "x":12.5, "y":5.25, "w":1.25}, {"x": 11.25, "y": 4.25},
{"label":"Ctrl (k57)", "x":13.75, "y":5.25, "w":1.25}, {"x": 12.25, "y": 4.25},
{"label":"Left (k58)", "x":15.25, "y":5.25}, {"x": 13.25, "y": 4.25, "w": 1.75},
{"label":"Down (k59)", "x":16.25, "y":5.25},
{"label":"Right (k69)", "x":17.25, "y":5.25} {"x": 16.25, "y": 4.25},
{"x": 0, "y": 5.25, "w": 1.25},
{"x": 1.25, "y": 5.25, "w": 1.25},
{"x": 2.5, "y": 5.25, "w": 1.25},
{"x": 3.75, "y": 5.25, "w": 6.25},
{"x": 10, "y": 5.25, "w": 1.25},
{"x": 11.25, "y": 5.25, "w": 1.25},
{"x": 12.5, "y": 5.25, "w": 1.25},
{"x": 13.75, "y": 5.25, "w": 1.25},
{"x": 15.25, "y": 5.25},
{"x": 16.25, "y": 5.25},
{"x": 17.25, "y": 5.25}
] ]
}, },
"LAYOUT_tkl_ansi": { "LAYOUT_tkl_ansi": {
"key_count": 87,
"layout": [ "layout": [
{"label":"Esc", "x":0, "y":0}, {"x": 0, "y": 0},
{"label":"F1", "x":2, "y":0},
{"label":"F2", "x":3, "y":0}, {"x": 2, "y": 0},
{"label":"F3", "x":4, "y":0}, {"x": 3, "y": 0},
{"label":"F4", "x":5, "y":0}, {"x": 4, "y": 0},
{"label":"F5", "x":6.5, "y":0}, {"x": 5, "y": 0},
{"label":"F6", "x":7.5, "y":0},
{"label":"F7", "x":8.5, "y":0}, {"x": 6.5, "y": 0},
{"label":"F8", "x":9.5, "y":0}, {"x": 7.5, "y": 0},
{"label":"F9", "x":11, "y":0}, {"x": 8.5, "y": 0},
{"label":"F10", "x":12, "y":0}, {"x": 9.5, "y": 0},
{"label":"F11", "x":13, "y":0},
{"label":"F12", "x":14, "y":0}, {"x": 11, "y": 0},
{"label":"PrtSc", "x":15.25, "y":0}, {"x": 12, "y": 0},
{"label":"Scroll Lock", "x":16.25, "y":0}, {"x": 13, "y": 0},
{"label":"Pause", "x":17.25, "y":0}, {"x": 14, "y": 0},
{"label":"~", "x":0, "y":1.25},
{"label":"!", "x":1, "y":1.25}, {"x": 15.25, "y": 0},
{"label":"@", "x":2, "y":1.25}, {"x": 16.25, "y": 0},
{"label":"#", "x":3, "y":1.25}, {"x": 17.25, "y": 0},
{"label":"$", "x":4, "y":1.25},
{"label":"%", "x":5, "y":1.25}, {"x": 0, "y": 1.25},
{"label":"^", "x":6, "y":1.25}, {"x": 1, "y": 1.25},
{"label":"&", "x":7, "y":1.25}, {"x": 2, "y": 1.25},
{"label":"*", "x":8, "y":1.25}, {"x": 3, "y": 1.25},
{"label":"(", "x":9, "y":1.25}, {"x": 4, "y": 1.25},
{"label":")", "x":10, "y":1.25}, {"x": 5, "y": 1.25},
{"label":"_", "x":11, "y":1.25}, {"x": 6, "y": 1.25},
{"label":"+", "x":12, "y":1.25}, {"x": 7, "y": 1.25},
{"label":"Backspace", "x":13, "y":1.25, "w":2}, {"x": 8, "y": 1.25},
{"label":"Insert", "x":15.25, "y":1.25}, {"x": 9, "y": 1.25},
{"label":"Home", "x":16.25, "y":1.25}, {"x": 10, "y": 1.25},
{"label":"PgUp", "x":17.25, "y":1.25}, {"x": 11, "y": 1.25},
{"label":"Tab", "x":0, "y":2.25, "w":1.5}, {"x": 12, "y": 1.25},
{"label":"Q", "x":1.5, "y":2.25}, {"x": 13, "y": 1.25, "w": 2},
{"label":"W", "x":2.5, "y":2.25},
{"label":"E", "x":3.5, "y":2.25}, {"x": 15.25, "y": 1.25},
{"label":"R", "x":4.5, "y":2.25}, {"x": 16.25, "y": 1.25},
{"label":"T", "x":5.5, "y":2.25}, {"x": 17.25, "y": 1.25},
{"label":"Y", "x":6.5, "y":2.25},
{"label":"U", "x":7.5, "y":2.25}, {"x": 0, "y": 2.25, "w": 1.5},
{"label":"I", "x":8.5, "y":2.25}, {"x": 1.5, "y": 2.25},
{"label":"O", "x":9.5, "y":2.25}, {"x": 2.5, "y": 2.25},
{"label":"P", "x":10.5, "y":2.25}, {"x": 3.5, "y": 2.25},
{"label":"{", "x":11.5, "y":2.25}, {"x": 4.5, "y": 2.25},
{"label":"}", "x":12.5, "y":2.25}, {"x": 5.5, "y": 2.25},
{"label":"|", "x":13.5, "y":2.25, "w":1.5}, {"x": 6.5, "y": 2.25},
{"label":"Delete", "x":15.25, "y":2.25}, {"x": 7.5, "y": 2.25},
{"label":"End", "x":16.25, "y":2.25}, {"x": 8.5, "y": 2.25},
{"label":"PgDn", "x":17.25, "y":2.25}, {"x": 9.5, "y": 2.25},
{"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"x": 10.5, "y": 2.25},
{"label":"A", "x":1.75, "y":3.25}, {"x": 11.5, "y": 2.25},
{"label":"S", "x":2.75, "y":3.25}, {"x": 12.5, "y": 2.25},
{"label":"D", "x":3.75, "y":3.25}, {"x": 13.5, "y": 2.25, "w": 1.5},
{"label":"F", "x":4.75, "y":3.25},
{"label":"G", "x":5.75, "y":3.25}, {"x": 15.25, "y": 2.25},
{"label":"H", "x":6.75, "y":3.25}, {"x": 16.25, "y": 2.25},
{"label":"J", "x":7.75, "y":3.25}, {"x": 17.25, "y": 2.25},
{"label":"K", "x":8.75, "y":3.25},
{"label":"L", "x":9.75, "y":3.25}, {"x": 0, "y": 3.25, "w": 1.75},
{"label":":", "x":10.75, "y":3.25}, {"x": 1.75, "y": 3.25},
{"label":"\"", "x":11.75, "y":3.25}, {"x": 2.75, "y": 3.25},
{"label":"Enter", "x":12.75, "y":3.25, "w":2.25}, {"x": 3.75, "y": 3.25},
{"label":"Shift", "x":0, "y":4.25, "w":2.25}, {"x": 4.75, "y": 3.25},
{"label":"Z", "x":2.25, "y":4.25}, {"x": 5.75, "y": 3.25},
{"label":"X", "x":3.25, "y":4.25}, {"x": 6.75, "y": 3.25},
{"label":"C", "x":4.25, "y":4.25}, {"x": 7.75, "y": 3.25},
{"label":"V", "x":5.25, "y":4.25}, {"x": 8.75, "y": 3.25},
{"label":"B", "x":6.25, "y":4.25}, {"x": 9.75, "y": 3.25},
{"label":"N", "x":7.25, "y":4.25}, {"x": 10.75, "y": 3.25},
{"label":"M", "x":8.25, "y":4.25}, {"x": 11.75, "y": 3.25},
{"label":"<", "x":9.25, "y":4.25}, {"x": 12.75, "y": 3.25, "w": 2.25},
{"label":">", "x":10.25, "y":4.25},
{"label":"?", "x":11.25, "y":4.25}, {"x": 0, "y": 4.25, "w": 2.25},
{"label":"Shift", "x":12.25, "y":4.25, "w":2.75}, {"x": 2.25, "y": 4.25},
{"label":"Up", "x":16.25, "y":4.25}, {"x": 3.25, "y": 4.25},
{"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, {"x": 4.25, "y": 4.25},
{"label":"Win", "x":1.25, "y":5.25, "w":1.25}, {"x": 5.25, "y": 4.25},
{"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, {"x": 6.25, "y": 4.25},
{"label":"Space", "x":3.75, "y":5.25, "w":6.25}, {"x": 7.25, "y": 4.25},
{"label":"Alt", "x":10, "y":5.25, "w":1.25}, {"x": 8.25, "y": 4.25},
{"label":"Win", "x":11.25, "y":5.25, "w":1.25}, {"x": 9.25, "y": 4.25},
{"label":"Menu", "x":12.5, "y":5.25, "w":1.25}, {"x": 10.25, "y": 4.25},
{"label":"Ctrl", "x":13.75, "y":5.25, "w":1.25}, {"x": 11.25, "y": 4.25},
{"label":"Left", "x":15.25, "y":5.25}, {"x": 12.25, "y": 4.25, "w": 2.75},
{"label":"Down", "x":16.25, "y":5.25},
{"label":"Right", "x":17.25, "y":5.25} {"x": 16.25, "y": 4.25},
{"x": 0, "y": 5.25, "w": 1.25},
{"x": 1.25, "y": 5.25, "w": 1.25},
{"x": 2.5, "y": 5.25, "w": 1.25},
{"x": 3.75, "y": 5.25, "w": 6.25},
{"x": 10, "y": 5.25, "w": 1.25},
{"x": 11.25, "y": 5.25, "w": 1.25},
{"x": 12.5, "y": 5.25, "w": 1.25},
{"x": 13.75, "y": 5.25, "w": 1.25},
{"x": 15.25, "y": 5.25},
{"x": 16.25, "y": 5.25},
{"x": 17.25, "y": 5.25}
] ]
}, },
"LAYOUT_tkl_iso": { "LAYOUT_tkl_iso": {
"key_count": 88,
"layout": [ "layout": [
{"label":"Esc", "x":0, "y":0}, {"x": 0, "y": 0},
{"label":"F1", "x":2, "y":0},
{"label":"F2", "x":3, "y":0}, {"x": 2, "y": 0},
{"label":"F3", "x":4, "y":0}, {"x": 3, "y": 0},
{"label":"F4", "x":5, "y":0}, {"x": 4, "y": 0},
{"label":"F5", "x":6.5, "y":0}, {"x": 5, "y": 0},
{"label":"F6", "x":7.5, "y":0},
{"label":"F7", "x":8.5, "y":0}, {"x": 6.5, "y": 0},
{"label":"F8", "x":9.5, "y":0}, {"x": 7.5, "y": 0},
{"label":"F9", "x":11, "y":0}, {"x": 8.5, "y": 0},
{"label":"F10", "x":12, "y":0}, {"x": 9.5, "y": 0},
{"label":"F11", "x":13, "y":0},
{"label":"F12", "x":14, "y":0}, {"x": 11, "y": 0},
{"label":"PrtSc", "x":15.25, "y":0}, {"x": 12, "y": 0},
{"label":"Scroll Lock", "x":16.25, "y":0}, {"x": 13, "y": 0},
{"label":"Pause", "x":17.25, "y":0}, {"x": 14, "y": 0},
{"label":"\u00ac", "x":0, "y":1.25},
{"label":"!", "x":1, "y":1.25}, {"x": 15.25, "y": 0},
{"label":"\"", "x":2, "y":1.25}, {"x": 16.25, "y": 0},
{"label":"\u00a3", "x":3, "y":1.25}, {"x": 17.25, "y": 0},
{"label":"$", "x":4, "y":1.25},
{"label":"%", "x":5, "y":1.25}, {"x": 0, "y": 1.25},
{"label":"^", "x":6, "y":1.25}, {"x": 1, "y": 1.25},
{"label":"&", "x":7, "y":1.25}, {"x": 2, "y": 1.25},
{"label":"*", "x":8, "y":1.25}, {"x": 3, "y": 1.25},
{"label":"(", "x":9, "y":1.25}, {"x": 4, "y": 1.25},
{"label":")", "x":10, "y":1.25}, {"x": 5, "y": 1.25},
{"label":"_", "x":11, "y":1.25}, {"x": 6, "y": 1.25},
{"label":"+", "x":12, "y":1.25}, {"x": 7, "y": 1.25},
{"label":"Backspace", "x":13, "y":1.25, "w":2}, {"x": 8, "y": 1.25},
{"label":"Insert", "x":15.25, "y":1.25}, {"x": 9, "y": 1.25},
{"label":"Home", "x":16.25, "y":1.25}, {"x": 10, "y": 1.25},
{"label":"PgUp", "x":17.25, "y":1.25}, {"x": 11, "y": 1.25},
{"label":"Tab", "x":0, "y":2.25, "w":1.5}, {"x": 12, "y": 1.25},
{"label":"Q", "x":1.5, "y":2.25}, {"x": 13, "y": 1.25, "w": 2},
{"label":"W", "x":2.5, "y":2.25},
{"label":"E", "x":3.5, "y":2.25}, {"x": 15.25, "y": 1.25},
{"label":"R", "x":4.5, "y":2.25}, {"x": 16.25, "y": 1.25},
{"label":"T", "x":5.5, "y":2.25}, {"x": 17.25, "y": 1.25},
{"label":"Y", "x":6.5, "y":2.25},
{"label":"U", "x":7.5, "y":2.25}, {"x": 0, "y": 2.25, "w": 1.5},
{"label":"I", "x":8.5, "y":2.25}, {"x": 1.5, "y": 2.25},
{"label":"O", "x":9.5, "y":2.25}, {"x": 2.5, "y": 2.25},
{"label":"P", "x":10.5, "y":2.25}, {"x": 3.5, "y": 2.25},
{"label":"{", "x":11.5, "y":2.25}, {"x": 4.5, "y": 2.25},
{"label":"}", "x":12.5, "y":2.25}, {"x": 5.5, "y": 2.25},
{"label":"Delete", "x":15.25, "y":2.25}, {"x": 6.5, "y": 2.25},
{"label":"End", "x":16.25, "y":2.25}, {"x": 7.5, "y": 2.25},
{"label":"PgDn", "x":17.25, "y":2.25}, {"x": 8.5, "y": 2.25},
{"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"x": 9.5, "y": 2.25},
{"label":"A", "x":1.75, "y":3.25}, {"x": 10.5, "y": 2.25},
{"label":"S", "x":2.75, "y":3.25}, {"x": 11.5, "y": 2.25},
{"label":"D", "x":3.75, "y":3.25}, {"x": 12.5, "y": 2.25},
{"label":"F", "x":4.75, "y":3.25},
{"label":"G", "x":5.75, "y":3.25}, {"x": 15.25, "y": 2.25},
{"label":"H", "x":6.75, "y":3.25}, {"x": 16.25, "y": 2.25},
{"label":"J", "x":7.75, "y":3.25}, {"x": 17.25, "y": 2.25},
{"label":"K", "x":8.75, "y":3.25},
{"label":"L", "x":9.75, "y":3.25}, {"x": 0, "y": 3.25, "w": 1.75},
{"label":":", "x":10.75, "y":3.25}, {"x": 1.75, "y": 3.25},
{"label":"@", "x":11.75, "y":3.25}, {"x": 2.75, "y": 3.25},
{"label":"~", "x":12.75, "y":3.25}, {"x": 3.75, "y": 3.25},
{"label":"Enter", "x":13.75, "y":2.25, "w":1.25, "h":2}, {"x": 4.75, "y": 3.25},
{"label":"Shift", "x":0, "y":4.25, "w":1.25}, {"x": 5.75, "y": 3.25},
{"label":"|", "x":1.25, "y":4.25}, {"x": 6.75, "y": 3.25},
{"label":"Z", "x":2.25, "y":4.25}, {"x": 7.75, "y": 3.25},
{"label":"X", "x":3.25, "y":4.25}, {"x": 8.75, "y": 3.25},
{"label":"C", "x":4.25, "y":4.25}, {"x": 9.75, "y": 3.25},
{"label":"V", "x":5.25, "y":4.25}, {"x": 10.75, "y": 3.25},
{"label":"B", "x":6.25, "y":4.25}, {"x": 11.75, "y": 3.25},
{"label":"N", "x":7.25, "y":4.25}, {"x": 12.75, "y": 3.25},
{"label":"M", "x":8.25, "y":4.25}, {"x": 13.75, "y": 2.25, "w": 1.25, "h": 2},
{"label":"<", "x":9.25, "y":4.25},
{"label":">", "x":10.25, "y":4.25}, {"x": 0, "y": 4.25, "w": 1.25},
{"label":"?", "x":11.25, "y":4.25}, {"x": 1.25, "y": 4.25},
{"label":"Shift", "x":12.25, "y":4.25, "w":2.75}, {"x": 2.25, "y": 4.25},
{"label":"Up", "x":16.25, "y":4.25}, {"x": 3.25, "y": 4.25},
{"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, {"x": 4.25, "y": 4.25},
{"label":"Win", "x":1.25, "y":5.25, "w":1.25}, {"x": 5.25, "y": 4.25},
{"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, {"x": 6.25, "y": 4.25},
{"label":"Space", "x":3.75, "y":5.25, "w":6.25}, {"x": 7.25, "y": 4.25},
{"label":"AltGr", "x":10, "y":5.25, "w":1.25}, {"x": 8.25, "y": 4.25},
{"label":"Win", "x":11.25, "y":5.25, "w":1.25}, {"x": 9.25, "y": 4.25},
{"label":"Menu", "x":12.5, "y":5.25, "w":1.25}, {"x": 10.25, "y": 4.25},
{"label":"Ctrl", "x":13.75, "y":5.25, "w":1.25}, {"x": 11.25, "y": 4.25},
{"label":"Left", "x":15.25, "y":5.25}, {"x": 12.25, "y": 4.25, "w": 2.75},
{"label":"Down", "x":16.25, "y":5.25},
{"label":"Right", "x":17.25, "y":5.25} {"x": 16.25, "y": 4.25},
{"x": 0, "y": 5.25, "w": 1.25},
{"x": 1.25, "y": 5.25, "w": 1.25},
{"x": 2.5, "y": 5.25, "w": 1.25},
{"x": 3.75, "y": 5.25, "w": 6.25},
{"x": 10, "y": 5.25, "w": 1.25},
{"x": 11.25, "y": 5.25, "w": 1.25},
{"x": 12.5, "y": 5.25, "w": 1.25},
{"x": 13.75, "y": 5.25, "w": 1.25},
{"x": 15.25, "y": 5.25},
{"x": 16.25, "y": 5.25},
{"x": 17.25, "y": 5.25}
] ]
} }
} }
+22 -21
View File
@@ -13,32 +13,33 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
enum hnah_layers{ enum layer_names {
_QWERTY, _QWERTY,
_LOWER _LOWER
}; };
#define LOWER MO(_LOWER) #define LOWER MO(_LOWER)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_tkl_iso( [_QWERTY] = LAYOUT_tkl_iso(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS , \ KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,\
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_DEL, KC_END, KC_PGDN,\
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,\
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,\
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_APP, LOWER, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \
),
[_LOWER] = LAYOUT_tkl_iso(
RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS , \
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS \
)
};
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_DEL, KC_END, KC_PGDN,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, LOWER, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
[_LOWER] = LAYOUT_tkl_iso(
RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};
+1 -1
View File
@@ -1 +1 @@
# The default keymap for freyr # The default keymap for freyr
+9 -4
View File
@@ -1,15 +1,20 @@
# freyr # freyr
![Freyr](https://i.imgur.com/MeOrzoI.jpg) ![Freyr](https://i.imgur.com/MeOrzoIl.jpg)
Freyr is a tenkeyless keyboard, support ansi and iso layout.
Freyr is a tenkeyless keyboard, support ansi and iso layout.
[Full layout here](http://www.keyboard-layout-editor.com/#/gists/438ef0c58c46ec28c80d9894ffcff177) [Full layout here](http://www.keyboard-layout-editor.com/#/gists/438ef0c58c46ec28c80d9894ffcff177)
Keyboard Maintainer: [HnahKB](https://github.com/vuhopkep) * Keyboard Maintainer: [HnahKB](https://github.com/vuhopkep)
Hardware Supported: Freyr.revB PCB * Hardware Supported: Freyr.revB PCB
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):
make freyr:default make freyr:default
Flashing example for this keyboard:
make freyr: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). 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).
+6 -17
View File
@@ -2,34 +2,23 @@
MCU = atmega32u4 MCU = atmega32u4
# Bootloader selection # Bootloader selection
# Teensy halfkay
# Pro Micro caterina
# Atmel DFU atmel-dfu
# LUFA DFU lufa-dfu
# QMK DFU qmk-dfu
# ATmega32A bootloadHID
# ATmega328P USBasp
BOOTLOADER = atmel-dfu BOOTLOADER = atmel-dfu
# Build Options # Build Options
# change yes to no to disable # change yes to no to disable
# #
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
MOUSEKEY_ENABLE = no # Mouse keys MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration COMMAND_ENABLE = yes # Commands for debug and configuration
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = yes # USB Nkey Rollover NKRO_ENABLE = yes # USB Nkey Rollover
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
MIDI_ENABLE = no # MIDI support BLUETOOTH_ENABLE = no # Enable Bluetooth
UNICODE_ENABLE = no # Unicode AUDIO_ENABLE = no # Audio output
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = no # Audio output on port C6
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
# Supported layouts
LAYOUTS = tkl_ansi tkl_iso LAYOUTS = tkl_ansi tkl_iso
+47
View File
@@ -0,0 +1,47 @@
/* Copyright 2020 GEN ONE LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x2222
#define DEVICE_VER 0x0001
#define MANUFACTURER GEN ONE LLC
#define PRODUCT Eclipse65
/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15
/*
* Keyboard Matrix Assignments
*
* Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
#define MATRIX_ROW_PINS { B3, B7, B0, B1, B2 }
#define MATRIX_COL_PINS { D0, D1, D2, D3, D5, D4, D6, D7, B4, B5, B6, C6, C7, F7, F6 }
#define UNUSED_PINS
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
+17
View File
@@ -0,0 +1,17 @@
/* Copyright 2020 GEN ONE LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "eclipse_65.h"
+36
View File
@@ -0,0 +1,36 @@
/* Copyright 2020 GEN ONE LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
#define ____ KC_NO
#define LAYOUT_65_ansi( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K312, K313, K314, \
K400, K401, K402, K406, K409, K410, K411, K412, K413, K414 \
) { \
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
{ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, ____, K213, K214 }, \
{ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, ____, K312, K313, K314 }, \
{ K400, K401, K402, ____, ____, ____, K406, ____, ____, K409, K410, K411, K412, K413, K414 } \
}
+12
View File
@@ -0,0 +1,12 @@
{
"keyboard_name": "eclipse_65",
"url": "https://genonemerch.com",
"maintainer": "rojasa1990",
"width": 16,
"height": 5,
"layouts": {
"LAYOUT_65_ansi": {
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0, "w":2}, {"x":15, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"x":0, "y":3, "w":2.25}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4}, {"x":11, "y":4}, {"x":12, "y":4}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]
}
}
}
@@ -0,0 +1,36 @@
/* Copyright 2020 GEN ONE LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You 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] = {
// Default layer
[0] = LAYOUT_65_ansi(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_HOME,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
// Fn1 Layer
[1] = LAYOUT_65_ansi(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_TRNS,
KC_CAPS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
};
+17
View File
@@ -0,0 +1,17 @@
# GEN ONE Eclipse_65
Eclipse_65 is a keyboard PCB supporting 65% layout. [More info at GEN ONE MERCH](https://genonemerch.com)
* Keyboard Maintainer: [rojasa1990](https://github.com/rojasa1990)
* Hardware Supported: GEN ONE Eclipse_65
* Hardware Availability: GEN ONE MERCH
Make example for this keyboard (after setting up your build environment):
make genone/eclipse_65:default
Flashing example for this keyboard:
make genone/eclipse_65: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).
+24
View File
@@ -0,0 +1,24 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = yes # USB Nkey Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keybaord RGB underglow
BLUETOOTH_ENABLE = no # Enable Bluetooth
AUDIO_ENABLE = no # Audio output
LAYOUTS = 65_ansi
@@ -1,2 +1 @@
VIA_ENABLE = yes VIA_ENABLE = yes
MOUSEKEY_ENABLE = no
@@ -1,2 +1,3 @@
VIA_ENABLE = yes VIA_ENABLE = yes
MOUSEKEY_ENABLE = no
CONSOLE_ENABLE = no
@@ -1,2 +1,4 @@
VIA_ENABLE = yes VIA_ENABLE = yes
MOUSEKEY_ENABLE = no LTO_ENABLE = yes
CONSOLE_ENABLE = no
File renamed without changes.
File renamed without changes.
File renamed without changes.
+52
View File
@@ -0,0 +1,52 @@
/*
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xB141
#define PRODUCT_ID 0x0602 //F is 6th in alphabet, 02 as in DUO
#define DEVICE_VER 0x0001
#define MANUFACTURER ParyzFilip
#define PRODUCT Freoduo
/* key matrix size */
/* rows are doubled-up */
#define MATRIX_ROWS 10
#define MATRIX_COLS 6
/* wiring of each half */
#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { B2, B6, F6, B3, B1, F7 }
#define EE_HANDS
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 3
/* serial.c configuration for split keyboard */
#define SOFT_SERIAL_PIN D0
/* ws2812 RGB LED */
#define RGB_DI_PIN D4
#define RGBLIGHT_ANIMATIONS
#define RGBLIGHT_SLEEP
#define RGBLIGHT_HUE_STEP 16
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
+1
View File
@@ -0,0 +1 @@
#include "freoduo.h"
+23
View File
@@ -0,0 +1,23 @@
#pragma once
#include "quantum.h"
#define LAYOUT( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \
L40, L41, L42, L43, L44, R41, R42, R43, R44, R45 \
) \
{ \
{ L00, L01, L02, L03, L04, L05 }, \
{ L10, L11, L12, L13, L14, L15 }, \
{ L20, L21, L22, L23, L24, L25 }, \
{ L30, L31, L32, L33, L34, L35 }, \
{ L40, L41, L42, L43, L44, KC_NO}, \
{ R00, R01, R02, R03, R04, R05 }, \
{ R10, R11, R12, R13, R14, R15 }, \
{ R20, R21, R22, R23, R24, R25 }, \
{ R30, R31, R32, R33, R34, R35 }, \
{ KC_NO, R41, R42, R43, R44, R45 } \
}
+72
View File
@@ -0,0 +1,72 @@
{
"keyboard_name": "Freoduo",
"manufacturer": "Filip Paryz",
"url": "https://github.com/FilipParyz",
"maintainer": "https://github.com/FilipParyz",
"width": 12,
"height": 5,
"layouts": {
"LAYOUT": {
"layout": [
{"x": 0, "y": 0},
{"x": 1, "y": 0},
{"x": 2, "y": 0},
{"x": 3, "y": 0},
{"x": 4, "y": 0},
{"x": 5, "y": 0},
{"x": 7, "y": 0},
{"x": 8, "y": 0},
{"x": 9, "y": 0},
{"x": 10, "y": 0},
{"x": 11, "y": 0},
{"x": 12, "y": 0},
{"x": 0, "y": 1},
{"x": 1, "y": 1},
{"x": 2, "y": 1},
{"x": 3, "y": 1},
{"x": 4, "y": 1},
{"x": 5, "y": 1},
{"x": 7, "y": 1},
{"x": 8, "y": 1},
{"x": 9, "y": 1},
{"x": 10, "y": 1},
{"x": 11, "y": 1},
{"x": 12, "y": 1},
{"x": 0, "y": 2},
{"x": 1, "y": 2},
{"x": 2, "y": 2},
{"x": 3, "y": 2},
{"x": 4, "y": 2},
{"x": 5, "y": 2},
{"x": 7, "y": 2},
{"x": 8, "y": 2},
{"x": 9, "y": 2},
{"x": 10, "y": 2},
{"x": 11, "y": 2},
{"x": 12, "y": 2},
{"x": 0, "y": 3},
{"x": 1, "y": 3},
{"x": 2, "y": 3},
{"x": 3, "y": 3},
{"x": 4, "y": 3},
{"x": 5, "y": 3},
{"x": 7, "y": 3},
{"x": 8, "y": 3},
{"x": 9, "y": 3},
{"x": 10, "y": 3},
{"x": 11, "y": 3},
{"x": 12, "y": 3},
{"x": 0, "y": 4},
{"x": 1, "y": 4},
{"x": 2, "y": 4},
{"x": 3, "y": 4},
{"x": 4, "y": 4, "w": 2},
{"x": 7, "y": 4, "w": 2},
{"x": 9, "y": 4},
{"x": 10, "y": 4},
{"x": 11, "y": 4},
{"x": 12, "y": 4}
]
}
}
}
Loaded 100 of 454 files, more files were not shown because too many files have changed in this diff. Show more