]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
[Keymap] Update to Drashna Keymaps (#5594)
authorDrashna Jaelre <drashna@live.com>
Mon, 22 Apr 2019 18:55:55 +0000 (11:55 -0700)
committerMechMerlin <30334081+mechmerlin@users.noreply.github.com>
Mon, 22 Apr 2019 18:55:55 +0000 (11:55 -0700)
* Start to standardize macro timer

* Update Fractal layout

Specifically, limit the RGB Lighting, since it's too many for the power, and only have the KITT annimation on the front

* Update Iris keymap to use I2C for transport

* Remove TAP_CODE_DELAY from keyboard in favor of global setting

* Remove Woodpad

Since it\'s no longer in my possession

* Only enable LTO on AVR boards

* Run matrix_scans while doing startup light

* Run matrix_scan to get split keyboard code synced properly

* Fix rgb mode

* Remove custom debouncing settings

* Make RGB Light Startup Animation optional

* Fix opt def

* Remove extra tap code delay value

* Fix references to keebio boards

* Add support for LP Iris keyboard

* Add backlight code

* Make startup animation optional

* Update gitlab ci script

* Remove port declaration

* Revert avrgcc changes to gitlab ci file

* Don't re-set mods

* Remove MACRO_TIMER define

* Add custom name for crkbd

* Add name for Prime M pad

* Add names for ortho 4x12 boards

* Add some additional handling for rgb init

* Change thumb clusters on ergodox

* Switch Orthodox to I2C

* Fix Space in ergodox keymap

* Use OSL for ergodox layout

* Ugh, can't find a good layout

* Fix typo

* Fix up animation startup

* Cries in AVR

* Fix makefiles for ergodox ez boards

* Add support for "secret songs" in my userspace

* Reset debounce to 5ms for Ergodox EZ

* Fix gitlab CI yaml file

* More crying in AVR

* Cannot use rgb light and rgb matrix at the same time due to the WS2812 rgb matrix PR until the "Coexistance" PR is merged

* Update ODox for split common and i2c

* Add split config

* Impement Split code

* Add support for xscorpion OLED code

* Add OLED display config

* Fix OLED screen font

* Get OLED set up in vertical mode

* Remove old OLED code

* add per key support for crkbd

* Fix split changes

* RGB Tweeaks

* More OLED tweaks

* Fix rotation stuff

* Fix more OLED stuff

* Remove custom Debounce from Ergodox layout since it's no longer needed

38 files changed:
keyboards/crkbd/keymaps/drashna/config.h
keyboards/crkbd/keymaps/drashna/glcdfont.c [new file with mode: 0644]
keyboards/crkbd/keymaps/drashna/keymap.c
keyboards/crkbd/keymaps/drashna/rules.mk
keyboards/handwired/woodpad/keymaps/drashna/README.md [deleted file]
keyboards/handwired/woodpad/keymaps/drashna/config.h [deleted file]
keyboards/handwired/woodpad/keymaps/drashna/keymap.c [deleted file]
keyboards/handwired/woodpad/keymaps/drashna/rules.mk [deleted file]
keyboards/keebio/iris/keymaps/drashna/config.h
keyboards/keebio/iris/keymaps/drashna/keymap.c
keyboards/keebio/iris/keymaps/drashna/rules.mk
keyboards/keebio/iris/keymaps/drashna_lp/config.h [new file with mode: 0644]
keyboards/keebio/iris/keymaps/drashna_lp/keymap.c [new file with mode: 0644]
keyboards/keebio/iris/keymaps/drashna_lp/rules.mk [new file with mode: 0644]
keyboards/keebio/iris/keymaps/drashna_old/config.h
keyboards/orthodox/keymaps/drashna/config.h
keyboards/orthodox/keymaps/drashna/keymap.c
keyboards/orthodox/keymaps/drashna/rules.mk
layouts/community/ergodox/drashna/config.h
layouts/community/ergodox/drashna/keymap.c
layouts/community/ergodox/drashna/rules.mk
layouts/community/ergodox/drashna_glow/config.h
layouts/community/ergodox/drashna_glow/rules.mk
layouts/community/numpad_5x6/drashna/config.h
layouts/community/numpad_5x6/drashna/rules.mk
layouts/community/ortho_4x12/drashna/config.h
layouts/community/ortho_4x12/drashna/keymap.c
layouts/community/ortho_4x12/drashna/rules.mk
layouts/community/ortho_5x12/drashna/config.h
users/drashna/.gitignore [new file with mode: 0644]
users/drashna/.gitlab-ci.yml
users/drashna/config.h
users/drashna/drashna.c
users/drashna/drashna.h
users/drashna/process_records.c
users/drashna/process_records.h
users/drashna/rgb_stuff.c
users/drashna/rules.mk

index cbc3feeb6165f9d09842f15334c23f59d1c00f85..6f2665f3acb0127bd77f60ce33c4bcafdaf58465 100644 (file)
@@ -27,7 +27,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 // #define MASTER_RIGHT
 #define EE_HANDS
 
-#define SSD1306OLED
+// #define SSD1306OLED
 
 #define USE_SERIAL_PD2
 
@@ -48,3 +48,12 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #define B6_AUDIO
 // #define NO_MUSIC_MODE
 #endif
+
+#undef PRODUCT
+#define PRODUCT Drashna Hacked Corne Keyboard
+
+#define OLED_FONT_H "keyboards/crkbd/keymaps/drashna/glcdfont.c"
+// #define OLED_FONT_WIDTH 5
+// #define OLED_FONT_HEIGHT 7
+
+#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/crkbd/keymaps/drashna/glcdfont.c b/keyboards/crkbd/keymaps/drashna/glcdfont.c
new file mode 100644 (file)
index 0000000..28521b4
--- /dev/null
@@ -0,0 +1,240 @@
+#pragma once
+
+#ifdef __AVR__
+ #include <avr/io.h>
+ #include <avr/pgmspace.h>
+#elif defined(ESP8266)
+ #include <pgmspace.h>
+#else
+ #define PROGMEM
+#endif
+
+// Helidox 8x6 font with QMK Firmware Logo
+// Online editor: http://teripom.x0.com/
+
+const unsigned char font[] PROGMEM = {
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
+0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
+0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
+0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
+0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
+0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
+0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
+0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
+0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
+0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
+0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
+0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
+0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
+0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
+0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
+0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
+0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
+0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
+0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
+0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
+0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
+0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
+0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
+0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
+0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
+0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
+0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
+0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
+0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
+0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
+0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
+0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
+0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
+0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
+0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
+0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
+0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
+0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
+0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
+0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
+0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
+0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
+0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
+0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
+0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
+0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
+0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
+0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
+0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
+0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
+0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
+0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
+0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
+0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
+0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
+0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
+0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
+0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
+0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
+0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
+0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
+0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
+0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
+0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
+0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
+0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
+0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
+0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
+0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
+0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
+0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
+0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
+0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
+0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
+0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
+0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
+0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
+0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
+0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
+0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
+0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
+0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
+0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
+0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
+0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
+0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
+0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
+0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
+0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
+0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
+0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
+0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
+0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
+0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
+0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
+0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
+0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
+0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
+0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
+0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
+0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
+0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
+0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
+0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
+0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
+0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
+0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
+0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
+0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
+0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
+0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
+0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
+0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
+0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
+0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
+0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
+0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
+0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
+0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
+0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
+0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
+0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
+0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
+0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0xC0, 0xE0,
+0xF0, 0xF8, 0xF8, 0x18, 0x00, 0xC0,
+0xF0, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF,
+0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x80, 0xC0, 0xE0, 0xE0,
+0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0,
+0xC0, 0x80, 0x00, 0x00, 0x00, 0x00,
+0x80, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0,
+0xE0, 0xE0, 0xE0, 0xE0, 0xC0, 0x80,
+0x00, 0x00, 0x00, 0xE0, 0xE0, 0xC0,
+0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0x00,
+0x00, 0xE0, 0xE0, 0xC0, 0xC0, 0xE0,
+0xE0, 0xE0, 0xE0, 0xE0, 0xC0, 0x80,
+0x00, 0x00, 0x00, 0x00, 0x80, 0xC0,
+0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0,
+0xE0, 0xE0, 0xC0, 0x80, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0xE0, 0xF0, 0xF0, 0xF0, 0xE0, 0xEC,
+0xEE, 0xF7, 0xF3, 0x70, 0x20, 0x00,
+0x7C, 0x7C, 0x7C, 0x7E, 0x00, 0x7E,
+0x7E, 0x7E, 0x7F, 0x7F, 0x7F, 0x00,
+0x00, 0x80, 0xC0, 0xE0, 0x7E, 0x5B,
+0x4F, 0x5B, 0xFE, 0xC0, 0x00, 0x00,
+0xC0, 0x00, 0xDC, 0xD7, 0xDE, 0xDE,
+0xDE, 0xD7, 0xDC, 0x00, 0xC0, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0xF8, 0xFC, 0xFE,
+0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xFF,
+0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF,
+0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+0xFF, 0x1F, 0x07, 0x01, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0xFF, 0xFF, 0xFF, 0x81, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x81,
+0xC3, 0xC3, 0xC3, 0x00, 0x00, 0xFF,
+0xFF, 0xFF, 0x81, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x81, 0xFF, 0xFF,
+0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
+0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0xFF, 0xFF, 0xFF, 0x01, 0x00,
+0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF,
+0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
+0x9D, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C,
+0x1C, 0x9D, 0xDF, 0xDF, 0xDF, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0x7F,
+0x7F, 0x7F, 0x3F, 0x1E, 0x0C, 0x00,
+0x1F, 0x1F, 0x1F, 0x3F, 0x00, 0x3F,
+0x3F, 0x3F, 0x7F, 0x7F, 0x7F, 0x00,
+0x30, 0x7B, 0x7F, 0x78, 0x30, 0x20,
+0x20, 0x30, 0x78, 0x7F, 0x3B, 0x00,
+0x03, 0x00, 0x0F, 0x7F, 0x0F, 0x0F,
+0x0F, 0x7F, 0x0F, 0x00, 0x03, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x03, 0x0F, 0x1F,
+0x3F, 0x3F, 0x3F, 0x3F, 0x1F, 0x1F,
+0x3F, 0x3F, 0x7F, 0x7F, 0x7F, 0x3F,
+0x3F, 0x1F, 0x3F, 0x7F, 0x7F, 0x7F,
+0x7F, 0x7C, 0x78, 0x78, 0x38, 0x1C,
+0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x01, 0x03, 0x07, 0x07,
+0x07, 0x07, 0x07, 0x07, 0x07, 0x07,
+0x03, 0x01, 0x00, 0x00, 0x00, 0x00,
+0x01, 0x03, 0x07, 0x07, 0x07, 0x07,
+0x07, 0x07, 0x07, 0x07, 0x03, 0x01,
+0x00, 0x00, 0x00, 0x07, 0x07, 0x07,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x07, 0x07, 0x07, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x07, 0x07,
+0x07, 0x00, 0x00, 0x00, 0x01, 0x03,
+0x07, 0x07, 0x07, 0x07, 0x07, 0x07,
+0x07, 0x07, 0x03, 0x01, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+};
index 91f0ebfa2700e290470ee95ad259f62d4b23af07..aaace9483aa853ae4f5787de1469042a55c0ea76 100644 (file)
@@ -7,6 +7,9 @@
 #ifdef SSD1306OLED
   #include "ssd1306.h"
 #endif
+#ifdef OLED_DRIVER_ENABLE
+  #include "oled_driver.h"
+#endif
 
 extern keymap_config_t keymap_config;
 extern uint8_t is_master;
@@ -288,3 +291,123 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
 }
 
 #endif
+
+
+#ifdef OLED_DRIVER_ENABLE
+oled_rotation_t oled_init_user(oled_rotation_t rotation) {
+  if (is_master) {
+    return OLED_ROTATION_270;
+  } else {
+    return rotation;
+  }
+}
+
+void render_crkbd_logo(void) {
+  static const char PROGMEM crkbd_logo[] = {
+      0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94,
+      0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4,
+      0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4,
+      0};
+  oled_write_P(crkbd_logo, false);
+}
+
+
+void render_status(void) {
+
+  oled_write_P(PSTR("Layer"), false);
+  switch (biton32(layer_state)) {
+    case 0:
+      oled_write_P(PSTR("Base "), false);
+      break;
+    case _RAISE:
+      oled_write_P(PSTR("Raise"), false);
+      break;
+    case _LOWER:
+      oled_write_P(PSTR("Lower"), false);
+      break;
+    case _ADJUST:
+      oled_write_P(PSTR("Adjst"), false);
+      break;
+    default:
+      oled_write_P(PSTR("Unkn "), false);
+      break;
+  }
+  oled_write_P(PSTR("Lyout"), false);
+  switch (biton32(default_layer_state)) {
+    case _QWERTY:
+      oled_write_P(PSTR("QWRTY"), false);
+      break;
+    case _COLEMAK:
+      oled_write_P(PSTR("COLMK"), false);
+      break;
+    case _DVORAK:
+      oled_write_P(PSTR("DVRAK"), false);
+      break;
+    case _WORKMAN:
+      oled_write_P(PSTR("WRKMN"), false);
+      break;
+    case _NORMAN:
+      oled_write_P(PSTR("NORMN"), false);
+      break;
+    case _MALTRON:
+      oled_write_P(PSTR("MLTRN"), false);
+      break;
+    case _EUCALYN:
+      oled_write_P(PSTR("ECLYN"), false);
+      break;
+    case _CARPLAX:
+      oled_write_P(PSTR("CRPLX"), false);
+      break;
+  }
+
+  uint8_t modifiers = get_mods();
+  uint8_t one_shot = get_oneshot_mods();
+
+  oled_write_P(PSTR("Mods:"), false);
+  oled_write_P( (modifiers & MOD_MASK_CTRL  || one_shot & MOD_MASK_CTRL ) ? PSTR(" CTL ") : PSTR("     "), false);
+  oled_write_P( (modifiers & MOD_MASK_GUI   || one_shot & MOD_MASK_GUI  ) ? PSTR(" GUI ") : PSTR("     "), false);
+  oled_write_P( (modifiers & MOD_MASK_ALT   || one_shot & MOD_MASK_ALT  ) ? PSTR(" ALT ") : PSTR("     "), false);
+  oled_write_P( (modifiers & MOD_MASK_SHIFT || one_shot & MOD_MASK_SHIFT) ? PSTR(" SFT ") : PSTR("     "), false);
+
+
+  oled_write_P(PSTR("BTMGK"), false);
+  static const char PROGMEM mode_logo[4][4] = {
+    {0x95,0x96,0x0a,0},
+    {0xb5,0xb6,0x0a,0},
+    {0x97,0x98,0x0a,0},
+    {0xb7,0xb8,0x0a,0} };
+
+  if (keymap_config.swap_lalt_lgui != false) {
+    oled_write_P(mode_logo[0], false);
+    oled_write_P(mode_logo[1], false);
+  } else {
+    oled_write_P(mode_logo[2], false);
+    oled_write_P(mode_logo[3], false);
+  }
+
+  uint8_t led_usb_state = host_keyboard_leds();
+  oled_write_P(PSTR("Lock:"), false);
+  oled_write_P(led_usb_state & (1<<USB_LED_NUM_LOCK)    ? PSTR(" NUM ") : PSTR("     "), false);
+  oled_write_P(led_usb_state & (1<<USB_LED_CAPS_LOCK)   ? PSTR(" CAPS") : PSTR("     "), false);
+  oled_write_P(led_usb_state & (1<<USB_LED_SCROLL_LOCK) ? PSTR(" SCRL") : PSTR("     "), false);
+}
+
+
+void oled_task_user(void) {
+  if (is_master) {
+    render_status();     // Renders the current keyboard state (layer, lock, caps, scroll, etc)
+  } else {
+    render_crkbd_logo();
+    oled_scroll_left();  // Turns on scrolling
+  }
+}
+#endif
+
+uint16_t get_tapping_term(uint16_t keycode) {
+  switch (keycode) {
+    case ALT_T(KC_A):
+      return TAPPING_TERM + 100;
+    default:
+      return TAPPING_TERM;
+  }
+}
index 540534978c9176764c694681fef9196b7aade205..a9a705869ac14af8835059361f0ad7faeb4cc374 100644 (file)
@@ -3,31 +3,24 @@
 #   change to "no" to disable the options, or define them in the Makefile in
 #   the appropriate keymap folder that will get included automatically
 #
-BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000)
-MOUSEKEY_ENABLE = no        # Mouse keys(+4700)
-EXTRAKEY_ENABLE = yes       # Audio control and System control(+450)
-CONSOLE_ENABLE = no         # Console for debug(+400)
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-MIDI_ENABLE = no            # MIDI controls
-AUDIO_ENABLE = no           # Audio output on port C6
-UNICODE_ENABLE = no         # Unicode
-BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
-SWAP_HANDS_ENABLE = no      # Enable one-hand typing
+BOOTMAGIC_ENABLE           = no  # Virtual DIP switch configuration(+1000)
+MOUSEKEY_ENABLE            = no  # Mouse keys(+4700)
+EXTRAKEY_ENABLE            = yes # Audio control and System control(+450)
+CONSOLE_ENABLE             = no  # Console for debug(+400)
+COMMAND_ENABLE             = no  # Commands for debug and configuration
+NKRO_ENABLE                = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+BACKLIGHT_ENABLE           = no  # Enable keyboard backlight functionality
+MIDI_ENABLE                = no  # MIDI controls
+AUDIO_ENABLE               = no  # Audio output on port C6
+UNICODE_ENABLE             = no  # Unicode
+BLUETOOTH_ENABLE           = no  # Enable Bluetooth with the Adafruit EZ-Key HID
+RGBLIGHT_ENABLE            = yes # Enable WS2812 RGB underlight.
+SWAP_HANDS_ENABLE          = no  # Enable one-hand typing
+RGBLIGHT_STARTUP_ANIMATION = yes
 
 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
 SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
 
 BOOTLOADER = qmk-dfu
 
-# If you want to change the display of OLED, you need to change here
-SRC +=  ./lib/glcdfont.c \
-        ./lib/logo_reader.c \
-        # ./lib/rgb_state_reader.c \
-        # ./lib/keylogger.c \
-        # ./lib/host_led_state_reader.c \
-        # ./lib/mode_icon_reader.c \
-        # ./lib/layer_state_reader.c \
-        # ./lib/timelogger.c \
+OLED_DRIVER_ENABLE = yes
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/README.md b/keyboards/handwired/woodpad/keymaps/drashna/README.md
deleted file mode 100644 (file)
index f24d2c4..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Overview
-========
-
-This is my personal Numpad (Woodpad) configuration, and my daily driver.
-
-Most of the code resides in my userspace, rather than here, as I have multiple keyboards.
-
-How to build 
-------------
-make handwired/woodpad:drashna:avrdude
-
-Layers
-------
-* NUMLOCK: Num pad, locked to NUM LOCK enabled. 
-* NAV: Navigation codes without needing to enable numlock. 
-* DIABLO: This contains a Diablo 3 layout, that requires much less reaching or shifting. If Tap Dance is enabled, then it has a "spam" feature. See Userspace for details.
-* MACROS: This layer contains a bunch of macros for spamming chat, with a toggle on what key to open up chat with. 
-* MEDIA: Media and RGB commands
-
-All layers have RGB specific indicators, so you can see what layer you're on by the underglow.
-
-Woodpad Specific Code
----------------------
-
-Aside from my userspace code, this includes LED indications for numlock and macro mode.  It also forces NUMLOCK to be enabled.
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/config.h b/keyboards/handwired/woodpad/keymaps/drashna/config.h
deleted file mode 100644 (file)
index c4f2803..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Copyright 2017 REPLACE_WITH_YOUR_NAME
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef CONFIG_USER_H
-#define CONFIG_USER_H
-
-#include QMK_KEYBOARD_CONFIG_H
-
-#if (defined(TAP_DANCE_ENABLE) && !defined(TAPPING_TERM))
-#define TAPPING_TERM 200
-#endif // TAP_DANCE_ENABLE
-
-
-#define B5_AUDIO
-
-
-#ifdef RGBLIGHT_ENABLE
-#define RGB_DI_PIN D3
-#define RGBLED_NUM 14     // Number of LEDs
-#define RGBLIGHT_ANIMATIONS
-#define RGBLIGHT_HUE_STEP 12
-#define RGBLIGHT_SAT_STEP 12
-#define RGBLIGHT_VAL_STEP 12
-#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 4
-#define RGBLIGHT_EFFECT_SNAKE_LENGTH 3
-#define RGBLIGHT_EFFECT_BREATHE_CENTER 1
-#define RGBLIGHT_SLEEP
-#endif // RGBLIGHT_ENABLE
-
-#define FORCE_NKRO
-
-#endif
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/keymap.c b/keyboards/handwired/woodpad/keymaps/drashna/keymap.c
deleted file mode 100644 (file)
index 20b4e06..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Copyright 2017 REPLACE_WITH_YOUR_NAME
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-#include QMK_KEYBOARD_H
-#include "drashna.h"
-
- // Each layer gets a name for readability, which is then used in the keymap matrix below.
- // The underscores don't mean anything - you can have a layer called STUFF or any other name.
- // Layer names don't all need to be of the same length, obviously, and you can also skip them
- // entirely and just use numbers.
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-[_NUMLOCK] = KEYMAP( /* Base */
-    TG(_NAV), TG(_DIABLO), TG(_MACROS), KC_PSLS,\
-    KC_P7,  KC_P8, KC_P9, KC_PAST,   \
-    KC_P4,  KC_P5, KC_P6, KC_PMNS,   \
-    KC_P1,  KC_P2, KC_P3, KC_PPLS,   \
-    LT(_MEDIA,KC_P0), KC_PDOT, KC_COLN, KC_PENT   \
-),
-[_NAV] = KEYMAP( /* Base */
-    _______, _______, _______, _______,\
-    KC_HOME,  KC_UP, KC_PGUP, _______,   \
-    KC_LEFT,  XXXXXXX, KC_RIGHT, _______,   \
-    KC_END,  KC_DOWN, KC_PGDN, _______,   \
-    KC_INS, KC_DEL, _______, _______   \
-),
-[_DIABLO] = KEYMAP( /* Base */
-    KC_ESC, _______, XXXXXXX, _______,\
-    KC_S, KC_I, KC_F, KC_M,   \
-    KC_1, KC_2, KC_3, KC_4, \
-    KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, \
-    XXXXXXX, KC_DIABLO_CLEAR, KC_Q, SFT_T(KC_SPACE)  \
-),
-
-[_MACROS] = KEYMAP( /* Base */
-    KC_OVERWATCH, XXXXXXX,      _______,      XXXXXXX,\
-    KC_JUSTGAME,  XXXXXXX,      XXXXXXX,      KC_C9,   \
-    XXXXXXX,      XXXXXXX,      KC_AIM,       KC_GGEZ,   \
-    KC_SYMM,      KC_TORB,      XXXXXXX,      KC_GOODGAME,   \
-    KC_SALT,      KC_MORESALT,  KC_SALTHARD,  KC_GLHF   \
-),
-[_MEDIA] = KEYMAP( /* Base */
-    KC_RESET, KC_MUTE, KC_VOLD, KC_VOLU,\
-    KC_MAKE, _______, RGB_HUI, RGB_HUD,   \
-    KC_MPLY, KC_MSTP, KC_MPRV, KC_MNXT,   \
-    RGB_TOG, RGB_MOD, RGB_SAI, RGB_VAI,   \
-    _______, KC_RGB_T, RGB_SAD, RGB_VAD   \
-),
-
-};
-
-
-void numlock_led_on(void) {
-  PORTF |= (1 << 7);
-}
-
-void numlock_led_off(void) {
-  PORTF &= ~(1 << 7);
-}
-
-
-
-void matrix_init_keymap(void) {
-  // set Numlock LED to output and low
-  DDRF |= (1 << 7);
-  PORTF &= ~(1 << 7);
-}
-
-void matrix_scan_keymap(void) {
-  numlock_led_off();
-  if ((is_overwatch && biton32(layer_state) == _MACROS) || (biton32(layer_state) == _NUMLOCK)) {
-    numlock_led_on();
-  }
-
-  // Run Diablo 3 macro checking code.
-}
-
-void led_set_keymap(uint8_t usb_led) {
-  if (!(usb_led & (1<<USB_LED_NUM_LOCK))) {
-    register_code(KC_NUMLOCK);
-    unregister_code(KC_NUMLOCK);
-  }
-}
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/rules.mk b/keyboards/handwired/woodpad/keymaps/drashna/rules.mk
deleted file mode 100644 (file)
index 7f7f30e..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-TAP_DANCE_ENABLE  = yes
-COMMAND_ENABLE    = no  # Commands for debug and configuration
-RGBLIGHT_ENABLE   = yes
-MIDI_ENABLE       = no
-CONSOLE_ENABLE    = no
-NKRO_ENABLE       = yes
-MOUSEKEY_ENABLE   = no
-
-EXTRAFLAGS        = -flto
-
index dd247a42a7fe1a9b6fdbd8d9a60eb51bc57936e9..41933b0f3ff2179852e69c2a372c398425697a69 100644 (file)
@@ -19,8 +19,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /* Use I2C or Serial, not both */
 
-#define USE_SERIAL
-#undef USE_I2C
+// #define USE_SERIAL
+#define USE_I2C
 
 /* Select hand configuration */
 
@@ -31,7 +31,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #ifdef RGBLIGHT_ENABLE
 #undef RGBLED_NUM
 #define RGBLED_NUM 18     // Number of LEDs
-
+#define RGBLED_SPLIT { 9, 9 }
 #define RGBLIGHT_HUE_STEP 12
 #define RGBLIGHT_SAT_STEP 12
 #define RGBLIGHT_VAL_STEP 12
@@ -55,7 +55,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #define QMK_SPEAKER C6
 
 #undef PRODUCT
-#ifdef KEYBOARD_iris_rev2
+#ifdef KEYBOARD_keebio_iris_rev2
 #define PRODUCT         Drashna Hacked Iris Rev.2
 #endif
 
index 0c3b0d6d443b47d65933436a817047161850a5ff..b306b6928a20faff4e1cf514132b957498eebcce 100644 (file)
@@ -121,3 +121,14 @@ void matrix_init_keymap(void) {
     writePinHigh(B0);
   #endif
 }
+
+
+void keyboard_post_init_keymap(void) {
+#if BACKLIGHT_ENABLE
+  backlight_enable();
+  backlight_level(5);
+  #ifdef BACKLIGHT_BREATHING
+    breathing_enable();
+  #endif
+#endif
+}
index e8035176efb57c3b63b214c92713d5c9e75089c5..bac5f95f3a113241e2468786601034c2da4ddf3d 100644 (file)
@@ -5,13 +5,14 @@ CONSOLE_ENABLE    = no         # Console for debug(+400)
 COMMAND_ENABLE    = no        # Commands for debug and configuration
 TAP_DANCE_ENABLE  = no
 RGBLIGHT_ENABLE   = yes
-AUDIO_ENABLE      = yes
+AUDIO_ENABLE      = no
 NKRO_ENABLE       = yes
 BACKLIGHT_ENABLE  = no
 SWAP_HANDS_ENABLE = no
 
-INDICATOR_LIGHTS  = yes
+INDICATOR_LIGHTS  = no
 MACROS_ENABLED    = no
 RGBLIGHT_TWINKLE  = no
+RGBLIGHT_STARTUP_ANIMATION = yes
 
 BOOTLOADER        = qmk-dfu
diff --git a/keyboards/keebio/iris/keymaps/drashna_lp/config.h b/keyboards/keebio/iris/keymaps/drashna_lp/config.h
new file mode 100644 (file)
index 0000000..4e2bf72
--- /dev/null
@@ -0,0 +1,48 @@
+/*
+Copyright 2017 Danny Nguyen <danny@keeb.io>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+/* Use I2C or Serial, not both */
+#include "../drashna/config.h"
+
+#ifdef RGBLIGHT_ENABLE
+#undef RGBLED_NUM
+#define RGBLED_NUM 16     // Number of LEDs
+#undef RGBLED_SPLIT
+#define RGBLED_SPLIT { 8, 8 }
+#endif
+
+#undef PRODUCT
+#ifdef KEYBOARD_keebio_iris_rev2
+#define PRODUCT         Drashna Hacked Iris LP Rev.2 (Backlit)
+#endif
+
+#undef SHFT_LED1
+#define SHFT_LED1 5
+#undef SHFT_LED2
+#define SHFT_LED2 10
+
+#undef CTRL_LED1
+#define CTRL_LED1 6
+#undef CTRL_LED2
+#define CTRL_LED2 9
+
+#undef ALT_LED1
+#define ALT_LED1 7
+#undef GUI_LED1
+#define GUI_LED1 8
diff --git a/keyboards/keebio/iris/keymaps/drashna_lp/keymap.c b/keyboards/keebio/iris/keymaps/drashna_lp/keymap.c
new file mode 100644 (file)
index 0000000..ff7bd09
--- /dev/null
@@ -0,0 +1 @@
+// placeholder
diff --git a/keyboards/keebio/iris/keymaps/drashna_lp/rules.mk b/keyboards/keebio/iris/keymaps/drashna_lp/rules.mk
new file mode 100644 (file)
index 0000000..d3f6f55
--- /dev/null
@@ -0,0 +1,7 @@
+USER_NAME := drashna
+SRC += ../drashna/keymap.c
+
+include $(KEYBOARD_PATH_2)/keymaps/drashna/rules.mk
+
+AUDIO_ENABLE      = no
+BACKLIGHT_ENABLE  = yes
index b985c4dfc12cc5828f81449928884e730188b4f4..1b462d8cad643898262ca358bd3ddc1c203fb23b 100644 (file)
@@ -23,10 +23,12 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #ifdef RGBLIGHT_ENABLE
 #undef RGBLED_NUM
 #define RGBLED_NUM 16     // Number of LEDs
+#undef RGBLED_SPLIT
+#define RGBLED_SPLIT { 8, 8 }
 #endif
 
 #undef PRODUCT
-#ifdef KEYBOARD_iris_rev2
+#ifdef KEYBOARD_keebio_iris_rev2
 #define PRODUCT         Drashna Hacked Iris Rev.2 (16 LED)
 #endif
 
index a2eaf63c30210eb91e5d34d609010f175311f020..1f04d5298c9c73fa6508aa3f5d84c365d11ee7e4 100644 (file)
@@ -23,8 +23,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /* Use I2C or Serial, not both */
 
-#define USE_SERIAL
-#undef USE_I2C
+// #define USE_SERIAL
+#define USE_I2C
 
 /* Select hand configuration */
 
@@ -41,6 +41,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #ifdef RGBLIGHT_ENABLE
 #define RGB_DI_PIN D3
 #define RGBLED_NUM 16     // Number of LEDs
+#define RGBLED_SPLIT { 8, 8 }
 
 #define RGBLIGHT_HUE_STEP 12
 #define RGBLIGHT_SAT_STEP 12
index 0f23bd9aa0caf69bb15afe555d8e761775ab9234..b1d40690558963ae6018910b9fc84f023bd00737 100644 (file)
@@ -38,7 +38,7 @@ uint8_t last_osm;
   ) \
   LAYOUT_wrapper( \
     KC_ESC,  K01,    K02,     K03,      K04,     K05,                                                             K06,     K07,     K08,     K09,     K0A,     KC_BSPC, \
-    KC_TAB,  K11,    K12,     K13,      K14,     K15,              OS_LALT, OS_LGUI,   OS_RALT, OS_RGUI,          K16,     K17,     K18,     K19,     K1A,     KC_QUOT, \
+    KC_TAB,  K11,    K12,     K13,      K14,     K15,              OS_LALT, OS_LGUI,   OS_RALT, RAISE,          K16,     K17,     K18,     K19,     K1A,     KC_QUOT, \
     KC_MLSF, CTL_T(K21), K22, K23,      K24,     K25,     LOWER,   KC_SPACE,KC_BSPC,   KC_DEL,  KC_ENT,  RAISE,   K26,     K27,     K28,     K29,  CTL_T(K2A), KC_MRSF  \
   )
 #define LAYOUT_orthodox_base_wrapper(...)       LAYOUT_orthodox_base(__VA_ARGS__)
index a826c664a7bfd9c0140d9c50d8cbf506d3320ce5..fdbfc94c9ba79e0c698f3d09043cc6712432651e 100644 (file)
@@ -5,11 +5,13 @@ CONSOLE_ENABLE    = no         # Console for debug(+400)
 COMMAND_ENABLE    = no        # Commands for debug and configuration
 TAP_DANCE_ENABLE  = no
 RGBLIGHT_ENABLE   = yes
-AUDIO_ENABLE      = yes
+AUDIO_ENABLE      = no
 NKRO_ENABLE       = yes
 
 INDICATOR_LIGHTS  = yes
 MACROS_ENABLED    = no
 RGBLIGHT_TWINKLE  = no
+RGBLIGHT_STARTUP_ANIMATION = yes
+
 
 BOOTLOADER        = qmk-dfu
index 089441e52c2cfc675145f8bfb7949220e7e1a5b5..7b2ad4fa1ca151cc9198ffc30df730695cb468d8 100644 (file)
@@ -14,4 +14,3 @@
 #define PRODUCT         DrashnaDox - Hacked ErgoDox EZ Shine
 
 #undef DEBOUNCE
-#define DEBOUNCE 5
index 428706e2d58c438a362cdb1cb3322e862ba7d3fb..e7f43ad6696717767d867fcb3df673f30ff8781d 100644 (file)
@@ -44,10 +44,10 @@ bool skip_leds = false;
       KC_TAB,  K01,    K02,     K03,      K04,     K05,     TG(_DIABLO),         TG(_DIABLO), K06,     K07,     K08,     K09,     K0A,     KC_BSLS, \
       KC_C1R3, K11,    K12,     K13,      K14,     K15,                                       K16,     K17,     K18,     K19,     K1A,     KC_QUOT, \
       KC_MLSF, CTL_T(K21), K22, K23,      K24,     K25,     TG(_GAMEPAD),       TG(_GAMEPAD), K26,     K27,     K28,     K29,  CTL_T(K2A), KC_MRSF, \
-      KC_GRV,  OS_MEH, OS_HYPR, KC_LBRC, KC_RBRC,                                            KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, UC(0x2E2E), \
-                                                  OS_LALT, OS_LGUI,                 OS_RGUI, CTL_T(KC_ESCAPE), \
-                                                           KC_HOME,                 KC_PGUP, \
-                             LT(_LOWER, KC_SPACE),KC_BSPC, KC_END,                  KC_PGDN, KC_DEL,  LT(_RAISE, KC_ENTER)                          \
+      KC_GRV,  OS_MEH, OS_HYPR, KC_LBRC, KC_RBRC,                                            KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, UC(0x2E2E),        \
+                                                  OS_LALT, OS_LGUI,                 OS_RGUI, CTL_T(KC_ESCAPE),                                      \
+                                                           KC_APP,                  KC_MENU,                                                        \
+                              KC_SPC, LT(_LOWER, KC_BSPC), OS_LWR,                  OS_RSE, LT(_RAISE, KC_DEL), KC_ENT                              \
     )
 
 #define LAYOUT_ergodox_pretty_base_wrapper(...)       LAYOUT_ergodox_pretty_base(__VA_ARGS__)
@@ -270,8 +270,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
   [_LOWER] = LAYOUT_ergodox_pretty_wrapper(
              KC_F12,  _________________FUNC_LEFT_________________, _______,                 _______, _________________FUNC_RIGHT________________, KC_F11,
-             KC_TILD, _________________LOWER_L1__________________, _______,                 _______, _________________LOWER_R1__________________, _______,
-             _______, ___________________BLANK___________________,                                   _________________LOWER_R2__________________, KC_PIPE,
+             KC_TILD, _________________LOWER_L1__________________, _______,                 _______, _________________LOWER_R1__________________, KC_PIPE,
+             _______, ___________________BLANK___________________,                                   _________________LOWER_R2__________________, KC_DQUO,
              _______, ___________________BLANK___________________, _______,                 _______, _________________LOWER_R3__________________, KC_PSCR,
              _______, _______, _______, _______, _______,                                                     _______, _______, _______, _______, KC_PAUS,
                                                           _______, _______,                 _______, _______,
@@ -281,8 +281,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
   [_RAISE] = LAYOUT_ergodox_pretty_wrapper(
              KC_F12,  _________________FUNC_LEFT_________________, _______,                 _______, _________________FUNC_RIGHT________________, KC_F11,
-             KC_GRV,  _________________RAISE_L1__________________, _______,                 _______, _________________RAISE_R1__________________, _______,
-             _______, _________________RAISE_L2__________________,                                   _________________RAISE_R2__________________, KC_BSLS,
+             KC_GRV,  _________________RAISE_L1__________________, _______,                 _______, _________________RAISE_R1__________________, KC_BSLS,
+             _______, _________________RAISE_L2__________________,                                   _________________RAISE_R2__________________, KC_QUOT,
              _______, _________________RAISE_L3__________________, _______,                 _______, _________________RAISE_R3__________________, KC_PSCR,
              _______, _______, _______, _______, _______,                                                     KC_HOME, KC_PGDN, KC_PGUP, KC_END,  KC_SLCK,
                                                           _______, _______,                 _______, _______,
index 31488108b98eccb0325a8c2c0351e5e69fd63d80..ee231321e3bedfda92bd98fde1178fa1d83d19ca 100644 (file)
@@ -14,3 +14,6 @@ UNICDOEMAP_ENABLE = no
 MACROS_ENABLED    = no
 RGBLIGHT_TWINKLE  = no
 INDICATOR_LIGHTS  = no
+RGBLIGHT_STARTUP_ANIMATION = yes
+
+DEBOUNCE_TYPE     = eager_pk
index a10c4bb297c71d9a7125f96c31f844817e533dc3..e2d95942675d31fb353991286098e99ca566f4d8 100644 (file)
@@ -5,17 +5,11 @@
 #undef PRODUCT
 #define PRODUCT         DrashnaDox - Hacked ErgoDox EZ Glow
 
-#undef DEBOUNCE
-#define DEBOUNCE 5
-
 #ifdef RGB_MATRIX_ENABLE
-// #define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot)
+#define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot)
 // #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened)
 // #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
 #define RGB_DISABLE_WHEN_USB_SUSPENDED  true// turn off effects when suspended
 // #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255
 // #define EECONFIG_RGB_MATRIX (uint32_t *)16
 #endif
-
-#undef DEBOUNCE
-#define DEBOUNCE 1
index 5cb47dae4e37a613dafc5dce5d34964cce39a2c9..ae9a2fb16c227558f4bb5469a5a270f24d072773 100644 (file)
@@ -1,7 +1,10 @@
 USER_NAME := drashna
-SRC += ../drashna/keymap.c
 
--include $(LAYOUT_KEYMAP_PATH)/../drashna/rules.mk
+CORRECTED_LAYOUT := $(LAYOUTS_REPO)/$(LAYOUT)/drashna
+
+SRC += $(CORRECTED_LAYOUT)/keymap.c
+
+-include $(CORRECTED_LAYOUT)/rules.mk
 
 ifneq (,$(findstring ergodox_ez,$(KEYBOARD)))
   RGBLIGHT_ENABLE = no
index ec66940e02271b9a326c60001b15ee3692c2e574..e3a70694a78fec8b45c6a4aba4c14234387a9a51 100644 (file)
@@ -14,5 +14,7 @@
 #define RGBLIGHT_EFFECT_BREATHE_CENTER 1
 #endif // RGBLIGHT_ENABLE
 
-
-#define TAP_CODE_DELAY 10
+#if defined(KEYBOARD_primekb_prime_m)
+#undef PRODUCT
+#define PRODUCT Drashna Hacked Prime_M Macro Pad
+#endif
index ed6fa8c791931ae4f36062bbf18e906cb2cee2b2..62bbc365d17b81801865167cf14bad7872bce244 100644 (file)
@@ -7,3 +7,4 @@ INDICATOR_LIGHTS  = no
 RGBLIGHT_TWINKLE  = yes
 MACROS_ENABLED    = no
 MAKE_BOOTLOADER   = yes
+RGBLIGHT_STARTUP_ANIMATION = yes
index 1858ee3a4f5dc5a81364cc78343ab62f29fba712..f8e12f33d7e37ccaa50bb5a43849f240da79c23a 100644 (file)
 #endif // KEYBOARD_planck_light
 
 
+#if defined(KEYBOARD_planck)
+#undef PRODUCT
+#if defined(KEYBOARD_planck_light)
+#define PRODUCT Drashna Hacked RGB Beacon (Planck Light)
+#elif defined(KEYBOARD_planck_rev6)
+#define PRODUCT Drashna Hacked Planck Rev6
+#elif defined(KEYBOARD_planck_EZ)
+#define PRODUCT Drashna Hacked Planck EZ
+#endif
+#endif
+
 /*
  * MIDI options
  */
@@ -59,5 +70,3 @@
 
 /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
 //#define MIDI_TONE_KEYCODE_OCTAVES 2
-
-#define TAP_CODE_DELAY 10
index 28da1b204279f1cc3807e994266ef09965e6b3ca..16defede9671cdbe1fcb0d3556526cfa2954efc9 100644 (file)
@@ -139,10 +139,8 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
         #ifdef BACKLIGHT_ENABLE
           backlight_step();
         #endif
-        PORTE &= ~(1<<6);
       } else {
         unregister_code(KC_RSFT);
-        PORTE |= (1<<6);
       }
       return false;
       break;
index f8804326745e13aa3515c3b852eb9294a677e462..89acba9eb81e3008394d52621009bb32c2653fa5 100644 (file)
@@ -6,13 +6,15 @@ COMMAND_ENABLE    = no        # Commands for debug and configuration
 TAP_DANCE_ENABLE  = no
 AUDIO_ENABLE      = yes
 ifeq (,$(findstring planck/rev6,$(KEYBOARD))) # Make sure it's NOT the Planck Rev6
-  RGBLIGHT_ENABLE   = yes
-  INDICATOR_LIGHTS  = yes
-  RGBLIGHT_TWINKLE  = yes
+  RGBLIGHT_ENABLE             = yes
+  INDICATOR_LIGHTS            = yes
+  RGBLIGHT_TWINKLE            = yes
+  RGBLIGHT_STARTUP_ANIMATION  = yes
 endif
 ifneq (,$(findstring planck/light,$(KEYBOARD))) # Make sure it IS the Planck Light
-  RGB_MATRIX_ENABLE   = yes
-  RGBLIGHT_ENABLE     = yes
+  RGB_MATRIX_ENABLE           = yes
+  RGBLIGHT_ENABLE             = no
+  RGBLIGHT_STARTUP_ANIMATION  = no
 endif
 
 ifeq ($(strip $(PROTOCOL)), VUSB)
index e41dadc60155dd9c03b0b633cb4bb7639b685a90..480bf658c365f540b5a918f99c90cc234455788c 100644 (file)
   #define RGBLIGHT_SAT_STEP 8
   #undef RGBLIGHT_VAL_STEP
   #define RGBLIGHT_VAL_STEP 8
+  #define RGBLIGHT_LIMIT_VAL 175
+  #define RGBLIGHT_SLEEP
+
+  #define RGBLIGHT_EFFECT_KNIGHT_OFFSET 3
+  #define RGBLIGHT_EFFECT_KNIGHT_LED_NUM 14
+
 #endif
diff --git a/users/drashna/.gitignore b/users/drashna/.gitignore
new file mode 100644 (file)
index 0000000..f84d34d
--- /dev/null
@@ -0,0 +1,3 @@
+secrets.c
+secrets.h
+drashna_song_list.h
\ No newline at end of file
index 9b18d44fb32e9de41fb12e2620f375c89cd0371a..92813a27d3eb3bd2fc592f038215a92661a0265c 100644 (file)
@@ -3,7 +3,7 @@ stages:
   - build
   - deploy
 
-Tests:
+Preliminary Test:
   stage: test
   variables:
     GIT_SUBMODULE_STRATEGY: recursive
@@ -12,12 +12,12 @@ Tests:
   image: ubuntu:18.10
   before_script:
     - apt-get update -qy
-    - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip
+    - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi git libnewlib-arm-none-eabi gcc-avr unzip wget zip
     - avr-gcc --version
     - uname -a
   script:
     - make test:all
-    - make planck/rev6:default
+    - make planck/rev6:default planck/rev5:default
 
 QMK Firmware Defaults:
   stage: deploy
@@ -47,29 +47,7 @@ Drashna Firmware:
     - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip
     - avr-gcc --version
   script:
-    - make iris/rev2:drashna iris/rev2:drashna_old ergodox_ez:drashna ergodox_ez:drashna_glow viterbi/rev1:drashna orthodox/rev1:drashna orthodox/rev3:drashna crkbd:drashna planck/light:drashna planck/rev6:drashna fractal:drashna
-  artifacts:
-    name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
-    paths:
-      - ./*.hex
-      - ./*.bin
-    expire_in: 1 month
-
-Firmware Deploy:
-  stage: deploy
-  dependencies:
-    - Drashna Firmware
-  variables:
-    GIT_SUBMODULE_STRATEGY: recursive
-  tags:
-    - linux
-  image: ubuntu:18.10
-  before_script:
-    - apt-get update -qy
-    - apt-get install -y build-essential avr-libc binutils-arm-none-eabi binutils-avr dfu-programmer dfu-util gcc gcc-arm-none-eabi gcc-avr git libnewlib-arm-none-eabi unzip wget zip
-    - avr-gcc --version
-  script:
-    - make iris/rev2:drashna:production iris/rev2:drashna_old:production ergodox_ez:drashna ergodox_ez:drashna_glow viterbi/rev1:drashna:production orthodox/rev1:drashna:production orthodox/rev3:drashna:production crkbd:drashna:production planck/light:drashna planck/rev6:drashna fractal:drashna:production
+    - make keebio/iris/rev2:drashna keebio/iris/rev2:drashna_old ergodox_ez:drashna ergodox_ez:drashna_glow keebio/viterbi/rev1:drashna orthodox/rev1:drashna orthodox/rev3:drashna crkbd:drashna planck/light:drashna planck/rev6:drashna fractal:drashna primekb/prime_m:drashna -j16 --output-sync
   artifacts:
     name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
     paths:
index 2abd326dac94aeba36a104fd8cb60e1a9990b287..1680eb4cb113abfdc3ad932803a4c3fba5923702 100644 (file)
@@ -82,4 +82,4 @@
 #define NO_ACTION_MACRO
 #define NO_ACTION_FUNCTION
 
-#define MACRO_TIMER 5
+#define TAP_CODE_DELAY 5
index 6968a4b9285866db4939a841d6c1f0e030f7355a..ec249dd22448d6f36a4ec32bd21b166edc6fc49b 100644 (file)
@@ -38,9 +38,9 @@ bool send_game_macro(const char *str, keyrecord_t *record, bool override) {
     }
     clear_keyboard();
     tap_code(keycode);
-    wait_ms(50);
-    send_string_with_delay(str, MACRO_TIMER);
-    wait_ms(50);
+    wait_ms(TAP_CODE_DELAY);
+    send_string_with_delay(str, TAP_CODE_DELAY);
+    wait_ms(TAP_CODE_DELAY);
     tap_code(KC_ENTER);
   }
   if (override) wait_ms(3000);
@@ -53,12 +53,10 @@ bool mod_key_press_timer (uint16_t code, uint16_t mod_code, bool pressed) {
       this_timer= timer_read();
   } else {
       if (timer_elapsed(this_timer) < TAPPING_TERM){
-          register_code(code);
-          unregister_code(code);
+          tap_code(code);
       } else {
           register_code(mod_code);
-          register_code(code);
-          unregister_code(code);
+          tap_code(code);
           unregister_code(mod_code);
       }
   }
@@ -70,12 +68,10 @@ bool mod_key_press (uint16_t code, uint16_t mod_code, bool pressed, uint16_t thi
       this_timer= timer_read();
   } else {
       if (timer_elapsed(this_timer) < TAPPING_TERM){
-          register_code(code);
-          unregister_code(code);
+          tap_code(code);
       } else {
           register_code(mod_code);
-          register_code(code);
-          unregister_code(code);
+          tap_code(code);
           unregister_code(mod_code);
       }
   }
index c19b189434694352fab9b81dff6bd50f09b6b85c..6645626d98196b4afa364cf43fce59fe84c113bb 100644 (file)
@@ -27,7 +27,11 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE)
   #include "rgb_stuff.h"
 #endif
-
+#if defined(AUDIO_ENABLE) && __GNUC__ > 7
+  #if __has_include("drashna_song_list.h")
+    #include "drashna_song_list.h"
+  #endif
+#endif
 
 /* Define layer names */
 enum userspace_layers {
index 2d9025b375b78ccb6d7f1631dc071a2b6d6e51bf..2b6ccf510cb7bd76a43785c90694345f18fcd8de 100644 (file)
@@ -18,7 +18,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 
   // If console is enabled, it will print the matrix position and status of each key pressed
 #ifdef KEYLOGGER_ENABLE
-  #if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_iris_rev2)
+  #if defined(KEYBOARD_ergodox_ez) || defined(KEYBOARD_keebio_iris_rev2)
     xprintf("KL: kc: %u, col: %u, row: %u, pressed: %u\n", keycode, record->event.key.row, record->event.key.col, record->event.pressed);
   #else
     xprintf("KL: kc: %u, col: %u, row: %u, pressed: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed);
@@ -37,31 +37,29 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
       uint8_t temp_mod = get_mods();
       uint8_t temp_osm = get_oneshot_mods();
       clear_mods(); clear_oneshot_mods();
-      send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), MACRO_TIMER);
+      send_string_with_delay_P(PSTR("make " QMK_KEYBOARD ":" QMK_KEYMAP), TAP_CODE_DELAY);
 #ifndef MAKE_BOOTLOADER
       if ( ( temp_mod | temp_osm ) & MOD_MASK_SHIFT )
 #endif
       {
         #if defined(__arm__)
-          send_string_with_delay_P(PSTR(":dfu-util"), MACRO_TIMER);
+          send_string_with_delay_P(PSTR(":dfu-util"), TAP_CODE_DELAY);
         #elif defined(BOOTLOADER_DFU)
-          send_string_with_delay_P(PSTR(":dfu"), MACRO_TIMER);
+          send_string_with_delay_P(PSTR(":dfu"), TAP_CODE_DELAY);
         #elif defined(BOOTLOADER_HALFKAY)
-          send_string_with_delay_P(PSTR(":teensy"), MACRO_TIMER);
+          send_string_with_delay_P(PSTR(":teensy"), TAP_CODE_DELAY);
         #elif defined(BOOTLOADER_CATERINA)
-          send_string_with_delay_P(PSTR(":avrdude"), MACRO_TIMER);
+          send_string_with_delay_P(PSTR(":avrdude"), TAP_CODE_DELAY);
         #endif // bootloader options
        }
-      if ( ( temp_mod | temp_osm ) & MOD_MASK_CTRL) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), MACRO_TIMER); }
-      send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), MACRO_TIMER);
-      set_mods(temp_mod);
-      set_oneshot_mods(temp_osm);
+      if ( ( temp_mod | temp_osm ) & MOD_MASK_CTRL) { send_string_with_delay_P(PSTR(" -j8 --output-sync"), TAP_CODE_DELAY); }
+      send_string_with_delay_P(PSTR(SS_TAP(X_ENTER)), TAP_CODE_DELAY);
     }
     break;
 
   case VRSN: // Prints firmware version
     if (record->event.pressed) {
-      send_string_with_delay_P(PSTR(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE), MACRO_TIMER);
+      send_string_with_delay_P(PSTR(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE), TAP_CODE_DELAY);
     }
     break;
 
index f7f2193ec6b1413db672ec1790f74f037f3d2444..5e3374d3f2c9711acec8e3eb7c4c26785e02c1c5 100644 (file)
@@ -56,6 +56,8 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
 #define ADJUST MO(_ADJUST)
 #define TG_MODS TG(_MODS)
 #define TG_GAME TG(_GAMEPAD)
+#define OS_LWR OSL(_LOWER)
+#define OS_RSE OSL(_RAISE)
 
 #define KC_SEC1 KC_SECRET_1
 #define KC_SEC2 KC_SECRET_2
index a98ad590cc73ec27f1d6c57aa38d4f81b8974d22..b5e145842f6e2d0ba7d916ff218e8b6f81fada2b 100644 (file)
@@ -247,17 +247,20 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) {
 
 
 void keyboard_post_init_rgb(void) {
-#ifdef RGBLIGHT_ENABLE
-       rgblight_enable_noeeprom();
-       layer_state_set_user(layer_state);
-  uint16_t old_hue = rgblight_config.hue;
-       rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
-       for (uint16_t i = 360; i > 0; i--) {
-               rgblight_sethsv_noeeprom( ( i + old_hue) % 360, 255, 255);
-    wait_ms(10);
-       }
-       layer_state_set_user(layer_state);
+#if defined(RGBLIGHT_ENABLE) && defined(RGBLIGHT_STARTUP_ANIMATION)
+  if (userspace_config.rgb_layer_change) { rgblight_enable_noeeprom(); }
+       if (rgblight_config.enable) {
+    layer_state_set_user(layer_state);
+    uint16_t old_hue = rgblight_config.hue;
+    rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+    for (uint16_t i = 360; i > 0; i--) {
+      rgblight_sethsv_noeeprom( ( i + old_hue) % 360, 255, 255);
+      matrix_scan();
+      wait_ms(10);
+    }
+  }
 #endif
+  layer_state_set_user(layer_state);
 }
 
 void matrix_scan_rgb(void) {
@@ -278,7 +281,7 @@ uint32_t layer_state_set_rgb(uint32_t state) {
     switch (biton32(state)) {
     case _MACROS:
       rgblight_sethsv_noeeprom_orange();
-      userspace_config.is_overwatch ? rgblight_effect_snake(RGBLIGHT_MODE_SNAKE + 2) : rgblight_effect_snake(RGBLIGHT_MODE_SNAKE + 3);
+      userspace_config.is_overwatch ? rgblight_mode_noeeprom(RGBLIGHT_MODE_SNAKE + 2) : rgblight_mode_noeeprom(RGBLIGHT_MODE_SNAKE + 3);
       break;
     case _MEDIA:
       rgblight_sethsv_noeeprom_chartreuse();
index 5050704a53b3571464774cbcdc467ff23535da63..bef25e25948df3d76810db3778897eead6a6ab90 100644 (file)
@@ -9,7 +9,9 @@ ifeq ($(strip $(TAP_DANCE_ENABLE)), yes)
   SRC += tap_dances.c
 endif
 
-EXTRAFLAGS += -flto
+ifeq ($(PLATFORM),AVR)
+  EXTRAFLAGS += -flto
+endif
 
 ifeq ($(strip $(NO_SECRETS)), yes)
     OPT_DEFS += -DNO_SECRETS
@@ -26,6 +28,9 @@ ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)
   ifeq ($(strip $(RGBLIGHT_NOEEPROM)), yes)
     OPT_DEFS += -DRGBLIGHT_NOEEPROM
   endif
+  ifeq ($(strip $(RGBLIGHT_STARTUP_ANIMATION)), yes)
+    OPT_DEFS += -DRGBLIGHT_STARTUP_ANIMATION
+  endif
 endif
 
 ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes)