format code according to conventions [skip ci]
Add ADC support for STM32F3 and STM32F0 devices (#7681)
* Add ADC support for STM32F3 and STM32F0 devices
* Add section about configration options available to the ARM ADC implementation
* Fix STM32 typo
fix kira80 matrix mapping and add more preset layouts (#8361)
* fix kira80 matrix mapping
* add more preset keymaps
* remove uselesss rgb mod keys
Rename qmk json-keymap to qmk json2c (#8372)
format code according to conventions [skip ci]
Feature: RGBLight layers (#7768)
* New feature: RGBLIGHT_LAYERS
This feature allows users to define multiple independent layers of lighting
that can be toggled on and off individually, making it easy to use your
RGB lighting to indicate things like active keyboard layer & modifier state.
* Demonstrate built in functions for layer state checking
Also link the video in the docs.
* Follow existing pattern for setting rgblight_status flags
* Eliminate rgblight_is_static_mode since it's not needed
Just check to see if the timer is enabled directly.
Refactor Equinox PCB revisions (#8266)
* Refactor Equinox PCB revisions
* typo
Replace tab indentation with spaces in is0 default keymap. (#8368)
Fix layer debug calls (#8370)
[Keymap] Added HHKB Keymap and user config (#8119)
* Added my config
* Update my keymap
* Improve quality of brett.c
* Finish cleaning brett.c
* Remove QMK_FIRMWARE_H
* Update keyboards/hhkb/keymaps/brett/keymap.c
Co-Authored-By: Ryan <fauxpark@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Refactor rgblight_reconfig.h (#7773)
* Moved contents of rgblight_reconfig.h to rgblight_post_config.h.
In #3582, rgblight_reconfig.h had to be newly created. Now, the build system of qmk_firmware has a post_cofig feature, so that what was done in rgblight_reconfig.h can now be realized in rgblight_post_config.h.
**This commit does not change the build result.**
Testing script
```shell
# build on master
git checkout master
echo master > /tmp/master_md5.txt
# RGBLIGHT_ENABLE = no
make HELIX=verbose helix/rev2:default:clean
make HELIX=verbose helix/rev2:default
md5 helix_rev2_default.hex >> /tmp/master_md5.txt
# RGBLIGHT_ENABLE = yes, with animations
make HELIX=verbose helix/rev2/back:default:clean
make HELIX=verbose helix/rev2/back:default
md5 helix_rev2_back_default.hex >> /tmp/master_md5.txt
# RGBLIGHT_ENABLE = yes, without animations
make HELIX=verbose,no_ani helix/rev2/back:default:clean
make HELIX=verbose,no_ani helix/rev2/back:default
md5 helix_rev2_back_default.hex >> /tmp/master_md5.txt
# build on refactor_rgblight_reconfig.h
git checkout refactor_rgblight_reconfig.h
echo refactor_rgblight_reconfig.h > /tmp/branch_md5.txt
# RGBLIGHT_ENABLE = no
make HELIX=verbose helix/rev2:default:clean
make HELIX=verbose helix/rev2:default
md5 helix_rev2_default.hex >> /tmp/branch_md5.txt
# RGBLIGHT_ENABLE = yes, with animations
make HELIX=verbose helix/rev2/back:default:clean
make HELIX=verbose helix/rev2/back:default
md5 helix_rev2_back_default.hex >> /tmp/branch_md5.txt
# RGBLIGHT_ENABLE = yes, without animations
make HELIX=verbose,no_ani helix/rev2/back:default:clean
make HELIX=verbose,no_ani helix/rev2/back:default
md5 helix_rev2_back_default.hex >> /tmp/branch_md5.txt
diff -u /tmp/master_md5.txt /tmp/branch_md5.txt
```
Test result:
```
--- /tmp/master_md5.txt 2020-01-03 15:42:22.000000000 +0900
+++ /tmp/branch_md5.txt 2020-01-03 15:42:42.000000000 +0900
@@ -1,4 +1,4 @@
-master
+refactor_rgblight_reconfig.h
MD5 (helix_rev2_default.hex) = f360032edd522448366d471d8f4f8181
MD5 (helix_rev2_back_default.hex) = 0c663acc6cccc44476b3b969ad22a48f
MD5 (helix_rev2_back_default.hex) = e66b1195ff6d38e6e22c975b8ae42fd3
```
* Expressions that are too long are difficult to read, so wrap them.
* Edit the expression again
* remove `defined(RGBLIGHT_ANIMATIONS)` in `tmk_core/common/*/suspend.c`, `tmk_core/protocol/*/main.c`
move contents of rgblight_reconfig.h to rgblight.h.
The following changes were made to rgblight.h.
```diff
+#ifdef RGBLIGHT_USE_TIMER
void rgblight_task(void);
void rgblight_timer_init(void);
void rgblight_timer_enable(void);
void rgblight_timer_disable(void);
void rgblight_timer_toggle(void);
+#else
+#define rgblight_task()
+#define rgblight_timer_init()
+#define rgblight_timer_enable()
+#define rgblight_timer_disable()
+#define rgblight_timer_toggle()
+#endif
```
The following changes were made to tmk_core/common/avr/suspend.c, tmk_core/common/chibios/suspend.c, tmk_core/protocol/chibios/main.c, tmk_core/protocol/lufa/lufa.c, tmk_core/protocol/vusb/main.c.
```diff
-# ifdef RGBLIGHT_ANIMATIONS
rgblight_timer_enable();
-# endif
```
```diff
-#if defined(RGBLIGHT_ANIMATIONS) && defined(RGBLIGHT_ENABLE)
+#if defined(RGBLIGHT_ENABLE)
rgblight_task();
#endif
```
* remove 'defined(RGBLIGHT_ANIMATIONS)' in tmk_core/common/keyboard.c
Co-authored-by: Joel Challis <git@zvecr.com>
[Keyboard] Helix add split common option (#7718)
* is_master, has_usb() move to rev2.[hc]
* Do recent helix/rev2 changes to helix/pico as well.
helix/pico/matrix.c: remove 'is_master'
helix/pico/pico.c: add 'is_master'
helix/pico/pico.h: add 'has_usb()' macro
helix/pico/split_util.c: remove 'setup_handedness()' 'has_usb()', add 'is_helix_master()' etc
* add HELIX=scan option into {rev2/pico}/local_features.mk
Made DEBUG_MATRIX_SCAN_RATE easy to use.
* Changed rules.mk to link "helix/local_drivers/ssd1306.c" only when OLED_ENABLE = yes.
* Added option to use split_common for helix/rev2, helix/pico keyboard.
how to build:
### build helix/pico (HelixPico) with helix current codes
$ make helix/pico:KEY_MAP
$ make helix/pico/back:KEY_MAP
### build helix/rev2 (Helix or Helix beta) with helix current codes
$ make helix:KEY_MAP
$ make helix/rev2/back:KEY_MAP
$ make helix/rev2/under:KEY_MAP
$ make helix/rev2/oled:KEY_MAP
$ make helix/rev2/oled/back:KEY_MAP
$ make helix/rev2/oled/under:KEY_MAP
### build helix/pico (HelixPico) with split_common codes
$ make helix/pico/sc:KEY_MAP
$ make helix/pico/sc/back:KEY_MAP
$ make helix/pico/sc/under:KEY_MAP
### build helix/rev2 (Helix) with split_common codes
$ make helix/rev2/sc:KEY_MAP
$ make helix/rev2/sc/back:KEY_MAP
$ make helix/rev2/sc/under:KEY_MAP
$ make helix/rev2/sc/oled:KEY_MAP
$ make helix/rev2/sc/oledback:KEY_MAP
$ make helix/rev2/sc/oledunder:KEY_MAP
* add matrix_slave_scan_user() to helix/rev2/rev2.c, helix/pico/pico.h
* Changed 'helix:xulkal' to always use split_common and removed ad hoc code.
Added the following line to 'helix/rev2/keymaps/xulkal/rules.mk':
SPLIT_KEYBOARD = yes
Removed the following ad hoc code from 'users/xulkal/custom_oled.c':
#if KEYBOARD_helix_rev2
extern uint8_t is_master;
bool is_keyboard_master(void) { return is_master; }
#endif
* add '#define DIODE_DIRECTION COL2ROW' into helix/{rev2|pico}/config.h
This commit does not change the build result.
* update helix readme
* keyboards/helix/readme.md
* keyboards/helix/pico/keymaps/default/readme.md
* keyboards/helix/rev2/keymaps/default/readme.md
Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
Enable bootmagic lite for CU80 (#8363)
[Keymap] Update personal keymap (#8354)
Remove NO_UART defines from config.h for V-USB boards (#8351)
[Keyboard] Add Kira 80 support (#8342)
* add kira 80 initial support
* Delete config.h
* Update keyboards/kira80/keymaps/default/keymap.c
* Update keyboards/kira80/readme.md
* Update keyboards/kira80/rules.mk
* Update keyboards/kira80/usbconfig.h
* Update keyboards/kira80/usbconfig.h
* Update keyboards/kira80/usbconfig.h
* Update keyboards/kira80/usbconfig.h
* update readme and fix wrong LED assignment (scrolllock instead of numlock)
* Update keyboards/kira80/rules.mk
* fix weird double commit
* exchange images in readme for smaller versions
* Update keyboards/kira80/readme.md
* Update keyboards/kira80/readme.md
* Update keyboards/kira80/readme.md
* Update keyboards/kira80/readme.md
* Apply suggestions from code review
* Apply suggestions from code review
[Keyboard] Add PRKL30 keyboard (#8319)
* Add PRKL30 default keymap
* Modify readmes, fix info.json url
* added layer pictures to readme.md
* edited layer pictures
* edited layer pictures
* edited layer pictures
* edited layout pictures
* edited layout pictures
* Modify default keymap
* Add arrows to Raise layer
* Add perkele macro and adjust symbols
* Add PRKL macro and modify keymap comments
* updated layout pictures
* edited layut pictures
* Add correct minus keycode
* Configure Feather config
* Update keyboards/handwired/prkl30/keymaps/default/keymap.c
* Update keyboards/handwired/prkl30/feather/rules.mk
* Update keyboards/handwired/prkl30/feather/config.h
* Update keyboards/handwired/prkl30/feather/config.h
* Update keyboards/handwired/prkl30/promicro/config.h
* Update keyboards/handwired/prkl30/promicro/rules.mk
* Update keyboards/handwired/prkl30/feather/config.h
* Update keyboards/handwired/prkl30/feather/config.h
* Update keyboards/handwired/prkl30/promicro/config.h
* Update keyboards/handwired/prkl30/feather/rules.mk
* Update keyboards/handwired/prkl30/keymaps/default/keymap.c
* Update keyboards/handwired/prkl30/info.json
* Update keyboards/handwired/prkl30/info.json
* Update keyboards/handwired/prkl30/keymaps/default/keymap.c
* Delete unused config
* Apply suggestions from code review
Commit code review changes
* Remove false comments from rules.mk
* Change layout to layout_all
* Apply suggestions from code review
Co-authored-by: Toni Johansson <toni.r.johansson@gmail.com>
Update Dvorak, Colemak and Workman keycode aliases (#8217)
* Update Dvorak, Colemak and Workman keycode aliases
* Add missing shifted keycode aliases for Workman