Commit Graph

1348 Commits (f410dfa091b5c2018377a42dac8b722e4e021bce)

Author SHA1 Message Date
sol 01d2a03258
Fix SPLIT_KEYBOARD compilation for ATMega*U2, which doesn't have VBUS/OTG control (#10460)
Co-authored-by: s-ol <s-ol@users.noreply.github.com>
2020-10-02 04:17:03 +10:00
Ryan 70fce6564f
Add logic for AT90USBxx7 where needed (#10203) 2020-09-27 20:33:03 +10:00
Ryan c16ee22784
`setrgb()`: Use arrow operator (#10451) 2020-09-26 19:42:40 +01:00
Ryan b6f9ca3b09
Fix Belgian sendstring properly (#10444) 2020-09-26 14:14:34 +10:00
Drashna Jaelre 9570b1bbb4
Fix Belgian sendstring file (#10443)
Specifically, the `BE_CIRC` is an alt-ed keycode, which means it 
doesn't fit into the 8 bit keycode range...  It should be `BE_SECT`,
as it is already alt-ed by the alt lut.

Confirmed that this change fixes compilation warnings and works 
correctly, on reddit. 
https://www.reddit.com/r/olkb/comments/iywin1/unsigned_conversion_from_int_to_unsigned_char/g6jvfgl/
2020-09-26 05:34:38 +10:00
cmdremily ef7c79b781 Fix issues with unused variables and functions preventing a clean compile. 2020-09-23 14:15:25 +02:00
cmdremily 8711dda0d3 Allow the use of a single IS31FL3731 LED driver 2020-09-23 14:15:25 +02:00
Wilba bc7a745227
Fix typo in via.c (#10000) 2020-09-21 04:21:19 -07:00
Ryan 0140baf7e0
Add STM32F401/F411 to mcu_selection.mk (#10278)
* Reorder STM32 MCUs

* Add STM32F4xx to mcu_selection.mk

* Set MCU for phoenix and tkw/stoutgat/v2/f411
2020-09-18 20:00:18 -07:00
Xelus22 97122d203b
[Core] DYNAMIC_KEYMAP_EEPROM_MAX_ADDR check (#10315)
* add error check

* remove quotes

* update error message

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

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-09-16 16:16:01 +10:00
Purdea Andrei f7ccbfcea8
quantum/debounce: rename debouncing algorithms (#9564)
* quantum/debounce: rename debouncing algorithms according to Issue 8763

This is the second attempt at implementation, with no ts_ and cy_ prefixes, since those will be implemented with macros.

* Debouncing documentation: Refactor, add some generic info, and merge into a single document
2020-09-06 13:13:49 -07:00
Olivier Li 9bca381b98
Unflip < and > for canadian mutlilingual (#10222)
Co-authored-by: Olivier Li <olivierli@google.com>
2020-09-06 09:51:38 +10:00
Félix Sanz 69804bb243
Fixed Spanish keymap extra ES_DIAE symbol (#10211)
* Fixed Spanish keymap extra ES_DIAE symbol

`ES_DIAE` should be `S(ES_ACUT)` not `S(ES_GRV)`

* Update quantum/keymap_extras/keymap_spanish.h

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

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-09-01 08:23:31 +10:00
QMK Bot a3db72df72 format code according to conventions [skip ci] 2020-08-29 22:57:48 +00:00
Ryan 629cfc7f5e K-Type refactor (#9864)
* K-Type refactor

* Declare QMK in product name again

* Hopefully fix matrix scanning

* Maybe this time

* Partial (literally) RGB Matrix support

* Put RGB_MATRIX_ENABLE into rgb keymap for now

* Add ifdefs for RGB config

* Set layer 1 to actually be layer 1...

* Update keyboards/k_type/readme.md

* Put all RGB config in keymap for now

* Set SDB high?

* Before `rgb_matrix_init()` would be best

* User level, not keyboard

* Combating dropped keys

* Nope

* Readme for RGB keymap

* Remove custom matrix
2020-08-29 14:30:02 -07:00
Ryan b89b2030af Kiibohd bootloader, take 2 (#10129) 2020-08-29 14:30:02 -07:00
Joel Challis 15b5ff1dc2 Remove f072 backlight warning (#10040)
* Remove f072 backlight warning

* Remove f072 backlight warning from docs
2020-08-29 14:30:02 -07:00
Joel Challis 21a00b7f02 ARM backlight - timer implementation (#8291)
* Add GPT timer based backlight driver

* Update to tim15 to avoid conflict with audio

* Update quantum/backlight/backlight_timer.c
2020-08-29 14:30:02 -07:00
Greg Wright 568cae28ec #define AUTO_SHIFT_SETUP (#8441)
* #define AUTO_SHIFT_SETUP

* Clarification

Changed `#ifndef` to `#ifdef` and moved enable disable outside AUTO_SHIFT_SETUP

* AUTO_SHIFT_NO_SETUp
2020-08-29 14:30:02 -07:00
David Kosorin dba8148764 Fix Czech keycodes (#9987) 2020-08-29 14:30:02 -07:00
Tynan Beatty e34eca361f Noeeprom functions for rgb_matrix (#9487)
* Add eeprom_helpers for toggle, mode, sethsv, speed; add set_speed; add noeeprom versions of toggle, step, hue, sat, val, and speed

* qmk cformat rgb_matrix

* Add rgb_matrix_set_speed and *_noeeprom functions

* Do not expose rgb_matrix_*_eeprom_helper functions
2020-08-29 14:30:02 -07:00
Nick Brassel c990dc1e6c Add support for hsv->rgb conversion without using CIE curve. (#9856)
* Add support for hsv->rgb conversion without using CIE curve.

* Modify anavi/macropad8 to disable unicode (was unused), otherwise firmware size is too large.
2020-08-29 14:30:02 -07:00
TerryMathews 4764aa8711 The Key Company project consolidation (#9547)
* Consolidate TKC projects and increase VIA keymap count to 4.

* Updated readme files.

* Removed config.h via limitation of 2 dynamic keymaps

* Reduce dynamic keymaps from 4 to 3 due to EEPROM space limitations.

* Update dynamic_keymap.c

* Restore 4 dynamic keymaps for VIA in TKC projects.

* Update quantum/dynamic_keymap.c
2020-08-29 14:30:02 -07:00
Max Rumpf 4b74f985ec Tweak the Christmas animation effect to be less harsh on the eyes (#7648)
* Tweak the Christmas animation effect to be less harsh on the eyes

* Further improve the tweaked Christmas animation code

- Use constants where it makes sense
- Instead of complicated math, use a static variable to keep track if it's animating from or to red
- Don't use pow (but a simple macro instead)
- Using floating point math is necessary for the fraction in the cubic bezier function to work

* Update docs for the tweaked Christmas animation effect

* Further improve memory usage

- Don't use floats, but 32 bit ints instead (where needed)
- Replace limits.h with constant

* Fix typo
2020-08-29 14:30:02 -07:00
a-chol d4be07dad3 Hid joystick interface (#4226)
* add support for hid gamepad interface
add documentation for HID joystick
Add joystick_task to read analog axes values even when no key is pressed or release. update doc
Update docs/feature_joystick.md
Manage pin setup and read to maintain matrix scan after analog read

* Incorporates patches and changes to HID reporting

There are some patches provided by @a-chol incorporated on this commit,
and also some changes I made to the HID Report structure.

The most interesting is the one dealing with number of buttons: Linux
doesn't seem to care, but Windows requires the HID structure to be byte
aligned (that's in the spec). So if one declares 8/16/32... buttons they
should not have any issues, but this is what happens when you have 9
buttons:

```
 bits |0|1|2|3|4|5|6|7|
      |*|*|*|*|*|*|*|*| axis 0 (report size 8)
      |*|*|*|*|*|*|*|*| ...
      |*|*|*|*|*|*|*|*|
      |*|*|*|*|*|*|*|*|
      |*|*|*|*|*|*|*|*|
      |*|*|*|*|*|*|*|*|
      |*|*|*|*|*|*|*|*| axis 6
      |*|*|*|*|*|*|*|*| first 8 buttons (report size 1)
      |*| | | | | | | | last of 9 buttons, not aligned
```

So for that I added a conditonal that will add a number of reports with
size 1 to make sure it aligns to the next multiple of 8. Those reports
send dummy inputs that don't do anything aside from aligning the data.

Tested on Linux, Windows 10 and Street Fighter (where the joystick is
recognized as direct-input)

* Add save and restore of each pin used in reading joystick (AVR).
Allow output pin to be JS_VIRTUAL_AXIS if the axis is connected to Vcc
instead of an output pin from the MCU.

Fix joystick report id

Fix broken v-usb hid joystick interface. Make it more resilient to unusual settings (none multiple of eight button count, 0 buttons or 0 axes)

Correct adc reading for multiple axes. Piecewise range conversion for uncentered raw value range. Input, output and ground pin configuration per axis.

Documentation fixes

* Fix port addressing for joystick analog read

* The other required set of changes
As per the PR, the changes still holding it up.
Add onekey for testing.
Fix ARM builds.
Fix device descriptor when either axes or buttons is zero.
Add compile-time check for at least one axis or button.
Move definition to try to fix conflict.
PR review comments.
qmk cformat

* avoid float functions to compute range mapping for axis adc reading

* Remove V-USB support for now. Updated docs accordingly.

* Update tmk_core/protocol/lufa/lufa.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update tmk_core/protocol/usb_descriptor.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update tmk_core/protocol/usb_descriptor.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update tmk_core/protocol/usb_descriptor.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Add support for joystick adc reading for stm32 MCUs. Fix joystick hid report sending for chibios

* Fix HID joystick report sending for ChibiOS.
Add one analog axis to the onekey:joystick keymap.
Fix pin state save and restore during joystick analog read for STM32
MCUs.

* Update tmk_core/protocol/chibios/usb_main.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update tmk_core/protocol/lufa/lufa.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Add missing mcuconf.h and halconf.h to onekey:joystick keymap.
Add suggested fixes from PR.

* Switch saveState and restoreState signature to use pin_t type.
onekey:joystick : add a second axis, virtual and programmatically animated.

* Update docs/feature_joystick.md

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update docs/feature_joystick.md

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Add PR corrections

* Remove halconf.h and mcuconf.h from onekey keymaps

* Change ADC_PIN to A0

Co-authored-by: achol <allecooll@hotmail.com>
Co-authored-by: José Júnior <jose.junior@gmail.com>
Co-authored-by: a-chol <achol@notamail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-08-29 14:30:02 -07:00
Drashna Jaelre 9d3b26a475 Update features to use Custom Tapping Term when appropriate (#6259)
* Update Space Cadet to use Custom Tapping Term functionality

* Detect correct keycode for space cadet tapping term

* Update tap dancing to use global custom tapping term

* Update documentation for Tap Dances

* formatting pass

* Apply suggestions from code review

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update docs/feature_tap_dance.md

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>

* Update for future

* Update user keymaps for space cadet

* Fix typos

* Clean up tapping term stuff

* Fix compiler issue if NO_ACTION_TAPPING is enabled

Co-authored-by: fauxpark <fauxpark@gmail.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2020-08-29 14:30:02 -07:00
Pete Sevander b0335b2731 Bigger combo index (#9318)
* Add change log

* Change combo index from uint8_t to uint16_t
2020-08-29 14:30:02 -07:00
Ryan 3b34858b77 Don't compile outputselect.c if Bluetooth is disabled (#9356) 2020-08-29 14:30:02 -07:00
Ryan 69e0ad1b2c Additional cleanups for V-USB code (#9310) 2020-08-29 14:30:02 -07:00
Nick Brassel 385d49cc39 Initial work for consolidation of ChibiOS platform files (#8327)
* Initial work for consolidation of board files and default ChibiOS configs.

* Migrate F401/F411 black pills for testing.

* Add early init bootloader jump flag.

* Add support for I2C in order to use i2c_scanner keymap.

* Add F401/F411 HSE bypass to get things booting.

* Exempt "hooked" ChibiOS conf files from updater script.

* Fix up ordering for bootloader_defs file check.

* Match previous $(KEYBOARD_PATHS) value for Proton-C, updated for all board configs.
2020-08-29 14:30:02 -07:00
Drashna Jaelre b338a4d886
Add noeeprom speed function for RGBLIGHT (#9706)
* [Docs] Add Speed functions to RGB Light docs

* Add noeeprom functions for speed

* Fix wording in doc

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

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-08-25 19:08:09 +10:00
Drashna Jaelre 1fd2f2f022
Compiler warning when using WS2812 (#9955)
Specifically, when rgb matrix is enabled and using the ws2812 driver, and rgb light is enabled at the same time, print a message about coexistance because it can cause issues, since you cannot change pins/config for the WS2812 driver.
2020-08-25 19:05:39 +10:00
nopunin10did b4ae7badd4
Issue 9942: Add LSA, RSA, RCS, LSA_T, RSA_T, and RCS_T (#9943)
* Issue 9942: Add Quantum defines

Add codes to quantum_keycodes for LSA, RSA, RCS, and their corresponding _T macros

* 9942: Add documentation for new defines

Add documentation for new defines in feature request 9942. Also define SAGR and SAGR_T as aliases for RSA and RSA_T.

* Update quantum/quantum_keycodes.h

* Update docs/keycodes.md

* Update docs/keycodes.md

* Update docs/keycodes.md

* Update docs/keycodes.md
2020-08-17 02:08:15 -07:00
Drashna Jaelre 4c14b11fc7
Add Indicator flag for RGB Matrix (#9933)
* Add Indicator flag for RGB Matrix

This adds a new flag for the RGB Matrix feature that lets you specify if the LED is an indicator LED, to be used to indicate the system state of the keyboard (eg caps/num/etc lock status, layer indication, modifer status, etc).

* Better formatting of table
2020-08-05 13:29:04 -07:00
BeefaloKing 349646bfe0
Fix RGB_DISABLE_TIMEOUT overflow warning (#9866) (#9874)
* Fix RGB_DISABLE_TIMEOUT overflow warning (#9866)

* Adjust capitalization (#9874)
2020-08-04 21:03:29 -07:00
Konstantin Đorđević 61b64bb82a
Redefine IS_LAYER_ON/OFF() as aliases for existing layer functions (#6352)
* Add IS_LAYER_ON_STATE()/IS_LAYER_OFF_STATE() macros

* Add docs for IS_LAYER_ON/OFF(_STATE) macros

* Remove IS_LAYER_ON/OFF_STATE redefinition in userspace

* Run clang-format on quantum/quantum.h

* Redefine IS_LAYER_ON/OFF(_STATE) as aliases of existing layer functions

Also update relevant doc entries.

Needs testing to check if this breaks existing IS_LAYER_ON/OFF usage in certain
edge cases (namely calling the macros with 0).

* Reformat layer check function docs
2020-07-16 22:27:55 +10:00
Drashna Jaelre f11437aef3
Allow for user song list (#9281) 2020-07-16 16:45:50 +10:00
Hedgestock fc13315300
Fixed CA_DOTA key code (#9722) 2020-07-16 15:50:51 +10:00
Ryan 72d3270547
Remove `DESCRIPTION` (#9732) 2020-07-16 15:49:18 +10:00
Ryan e8d577c081
Update new keyboard templates (#9636)
* Update new keyboard templates

* Switch on Bootmagic Lite by default

* Remove MIDI_ENABLE and FAUXCLICKY_ENABLE
2020-07-15 18:52:02 +10:00
Drashna Jaelre 584d38b5f5
Fix RGB Matrix using RGBW WS2812 LEDs (#9705)
This should be a pointer, as that is what the function expects.
2020-07-13 23:28:42 +01:00
Joel Challis aec4125989
Refactor ARM backlight (#7959) 2020-07-10 09:12:40 +01:00
Oskar Holstensson ca598c3df6
Changed US_RBRC to KC_RBRC instead of KC_LBRC (#9664) 2020-07-08 21:45:43 +01:00
Guillaume Gérard 5f9fb01020
[Keymap Extra] Add French AZERTY (AFNOR - NF Z71-300) (#9644)
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-07-08 19:55:02 +01:00
QMK Bot 9ae15e8c79 format code according to conventions [skip ci] 2020-07-07 21:43:51 +00:00
Dongfeng Yu 666cb44673
Allowing Pressing the Start Buttons Again to Stop Dynamic Macro Recording (#9446) 2020-07-07 21:59:13 +01:00
QMK Bot 355f075b57 format code according to conventions [skip ci] 2020-07-04 15:01:25 +00:00
Takeshi ISHII c2ca57c8f4
add DIP_SWITCH_MATRIX_GRID support (#8772)
* dipsw test on helix/rev2/sc/back:five_rows

* add peek_matrix() to matrix_common.c

* add DIP_SWITCH_MATRIX_GRID support to quantum/dip_switch.c

* update docs/feature_dip_switch.md about DIP_SWITCH_MATRIX_GRID

* Test end. remove test code. Revert "dipsw test on helix/rev2/sc/back:five_rows"

This reverts commit 6d4304c74557597c9fb4d324f79c3ae4793ae874.
2020-07-04 23:20:49 +09:00
Takeshi ISHII 5c8b23ccff
add SPLIT_HAND_MATRIX_GRID support (#8685)
Co-authored-by: Danny <nooges@users.noreply.github.com>
2020-07-04 15:04:47 +01:00
Olli b30d0361c5
Fix “G” in Neo2 keymap (#9645)
Fix duplicated “NE_H” definition to use “NE_G” in Neo2 keymap,
introduced with commit 44ff14f.
2020-07-04 11:43:52 +01:00
Ryan 00fc35539d
Make sendstring respect `TAP_CODE_DELAY` (#9623) 2020-07-02 18:08:19 +01:00
Guillaume Gérard 9b85bd68a4
feat: add dvorak-fr as extra keymap (#9512) 2020-06-24 22:52:40 -07:00
Joshua Diamond 4b80ee46f8
Add Hebrew keymap aliases (#9383)
* Add Hebrew keymap aliases

* Use NBSP for internal space in box drawings

* Apply suggestions from code review

* More whitespace fixes

* IL_DVAV, IL_DYOD and IL_VYOD were incorrect

* Add IL_DEG, IL_MUL, IL_DIV

* Hebrew is now ISO (no more BAE)

* Use ISO left shift

* Apply suggestions from code review

* DYOD and VYOD were reversed in diagram.

Oops!
2020-06-23 22:35:43 -07:00
Drashna Jaelre 98642ca028
Improve keycode handling for RGB (#7677)
Co-authored-by: drashna <drashna@live.com>
Co-authored-by: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
2020-06-22 09:38:58 +01:00
Nick Brassel 3d6d899666
`qmk cformat` (#9500) 2020-06-22 11:21:48 +10:00
Drashna Jaelre 30cdf9331a
Change `led` variable in rgb_matrix_drivers to avoid conflicts (#9412)
* Change `led` to `led_matrix` in rgb_matrix_drivers

Is a minor change that only affects the driver file. 

However, this will allow somebody to run rgblight along side rgb matrix
using the ws2812 driver, as well.  Specifically, so you can use the
custom driver for rgblight to set a different pin (barring a change to
the `ws2812_setleds` function).  

Courtesy of discord conversion:
https://discordapp.com/channels/440868230475677696/568161140534935572/721555623191248906

* Change name to be super specific

* Update rgb_matrix_drivers.c
2020-06-20 23:07:26 +01:00
MelGeek d9eae3ef03
Support IS31FL3741 and IS31FL3741A. (#9201) 2020-06-20 14:49:15 +10:00
Jason Laqua f7eb030e91
Standardize how unicode is processed (fixes #8768) (#8770)
Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
2020-06-18 08:07:34 +01:00
itsnoteasy 7aa4cc9603
adds support for the atmega328 (#9043)
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-10 22:23:11 +01:00
Adrian cff3c3bf28
Fixed slave-side keyboard half unresponsiveness (#9360)
* Fixed slave-side keyboard half unresponsiveness
due to how LUFA handles USB_Disable()

* changes to formatting

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

Co-authored-by: Joel Challis <git@zvecr.com>
2020-06-10 17:25:45 +01:00
Joel Challis d17572b125
Move encoder_read to common location (#9003) 2020-06-03 00:54:53 +01:00
Drashna Jaelre 1110fe6c6f
Move dip switch init to back of the init process (#9233) 2020-06-03 00:32:02 +01:00
Joshua Diamond 563d5919b3
Fix layer mask size for RGBLIGHT_LAYER_BLINK (#9260) 2020-06-01 17:12:08 -07:00
Joshua Diamond e2e287ec5f
Option to allow lighting layers when RGB Lighting is off (#9051) 2020-06-01 11:02:28 +02:00
Kimat Boven dfcd4f0d25
BE_J should map to KC_J (#9243) 2020-06-01 14:04:44 +10:00
James Young fced377ac0
2020 May 30 Breaking Changes Update (#9215)
* Branch point for 2020 May 30 Breaking Change

* Migrate `ACTION_LAYER_TOGGLE` to `TG()` (#8954)

* Migrate `ACTION_MODS_ONESHOT` to `OSM()` (#8957)

* Migrate `ACTION_DEFAULT_LAYER_SET` to `DF()` (#8958)

* Migrate `ACTION_LAYER_MODS` to `LM()` (#8959)

* Migrate `ACTION_MODS_TAP_KEY` to `MT()` (#8968)

* Convert V-USB usbdrv to a submodule (#8321)

* Unify Tap Hold functions and documentation (#8348)

* Changing board names to prevent confusion (#8412)

* Move the Keyboardio Model01 to a keyboardio/ subdir (#8499)

* Move spaceman keyboards (#8830)

* Migrate miscellaneous `fn_actions` entries (#8977)

* Migrate `ACTION_MODS_KEY` to chained mod keycodes (#8979)

* Organizing my keyboards (plaid, tartan, ergoinu) (#8537)

* Refactor Lily58 to use split_common (#6260)

* Refactor zinc to use split_common (#7114)

* Add a message if bin/qmk doesn't work (#9000)

* Fix conflicting types for 'tfp_printf' (#8269)

* Fixed RGB_DISABLE_AFTER_TIMEOUT to be seconds based & small internals cleanup (#6480)

* Refactor and updates to TKC1800 code (#8472)

* Switch to qmk forks for everything (#9019)

* audio refactor: replace deprecated PLAY_NOTE_ARRAY (#8484)

* Audio enable corrections (2/3) (#8903)

* Split HHKB to ANSI and JP layouts and Add VIA support for each (#8582)

* Audio enable corrections (Part 4) (#8974)

* Fix typo from PR7114 (#9171)

* Augment future branch Changelogs (#8978)

* Revert "Branch point for 2020 May 30 Breaking Change"
2020-05-30 13:14:59 -07:00
Nick Brassel fd4f102977
Fix build. (#9163) 2020-05-22 06:25:03 +10:00
Joel Challis 526c185e7e
Initial arm serial partially based on old lets split code (#7072) 2020-05-21 19:39:51 +01:00
QMK Bot c63fd051da format code according to conventions [skip ci] 2020-05-21 17:39:29 +00:00
zvecr b95979560c Initial arm serial partially based on old lets split code 2020-05-21 18:04:30 +01:00
Joel Challis 205321c377
Slight speed increases for matrix scanning (#9150) 2020-05-21 17:59:56 +01:00
Joel Challis 1816ad01d0
Use LUFA funcs for split_util (#8594) 2020-05-21 17:59:01 +01:00
QMK Bot 010c5b12bd format code according to conventions [skip ci] 2020-05-18 13:42:23 +00:00
Drashna Jaelre d0e0202b27
Add query functions for RGB Light and RGB Matrix (#8960)
* Add additional query functions for RGBLIGHT

* Add additional query functions for RGB Matrix

* Change names of enable check functions

* Fix macro for rgb matrix takeover of rgblight functions

* Add documentation for rgb_matrix_get_hsv()

* Add *_get_hsv function to rgblight
2020-05-18 06:05:35 -07:00
Ryan ce842f912e
Remove `DEBUG_LEVEL` from V-USB rules.mk (#9117) 2020-05-17 21:37:04 +01:00
Zsolt Parragi 805f5cb72b
One shot support for swap hands (#8590)
This commits add the SH_OS keycode, which works similarly to one shot
layers:
* while pressed, the keyboard is swapped
* if no keys were pressed while it was pressed, the next key press is
swapped

SH_OS also supports chaining with one shot layers:
OSL(x) + SH_OS + key interprets the key press on the oneshot layer.

The ONESHOT_TIMEOUT setting used by one shot keys and layers is also
used by oneshot swap hands. In the above chaining scenario the timeout
of the oneshot layer is reset when swap hands is activated.

Resolves #2682
2020-05-14 07:36:55 +10:00
Joshua Diamond a8a8bf0ff3
Allow expanding from 8 to 32 RGB Lighting Layers (#8941)
* Allow 16 lighting layers

* Require #define RGBLIGHT_LAYERS_16 to enable 16 layers

* Override RGBLIGHT_MAX_LAYERS to set maximum number of lighting layers

* Enforce lower bound on RGBLIGHT_MAX_LAYERS

Co-Authored-By: Takeshi ISHII <2170248+mtei@users.noreply.github.com>

* Fix an error in the check for valid RGBLIGHT_MAX_LAYERS

* Don't use bitfield / PACKED, as it causes bloat

* Update documentation re: up to 32 lighting layers

* Run cformat

* Add note about increasing FW size in docs/config_options.md

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

* Remove no-longer-valid comment

* Add doc note that split sync will be slower

Co-authored-by: Takeshi ISHII <2170248+mtei@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-05-13 21:39:05 +01:00
Ryan 44ff14f290
Update Neo2 keymap (#9063) 2020-05-13 19:34:55 +01:00
Ryan 741c7d5eec
Update Canadian Multilingual keymap and add sendstring LUT (#8786) 2020-05-13 19:34:31 +01:00
QMK Bot e7860d673b format code according to conventions [skip ci] 2020-05-09 09:31:49 +00:00
Joshua Diamond 2fe7e221ec
New RGB Lighting effect: Twinkle (#8887)
* Add twinkle RGB Lighting effect

* 2nd twinkle algo - double-buffering

* Further refinement: Per-LED twinkle

* Add documentation for Twinkle RBG Lighting mode

* Bias twinkle saturation closer to the set value

* Fix whitespace
2020-05-09 01:56:16 -07:00
Joshua Diamond e0f548085c
Add ability to blink lighting layer for a specified duration (#8760)
* Implement momentarily blink of lighting layers

* Refactor spidey3 userspace to use rgb layer blink

* Remove un-necessary line from example in documentation

* Revert "Refactor spidey3 userspace to use rgb layer blink"

This reverts commit 831649bb680c41c6d663ae6fa86d13f4f8bebdd8.

* Adds a missing bit of documentation about lighting layer blink

* Update docs/feature_rgblight.md per suggestions

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>

* Update docs/feature_rgblight.md per suggestions

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>

* Update docs/feature_rgblight.md per suggestions

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>

* cformat, as suggested

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2020-05-09 01:38:33 -07:00
Konstantin Đorđević 94fc32f431
Fix bug in UC_RMOD, add shift and audio support for UC_MOD/UC_RMOD(#8674)
* Invert UC_MOD/UC_RMOD direction when Shift is held

Also use MOD_MASK_SHIFT in process_rgb.c

* Allow audio to be played for UC_MOD, UC_RMOD keycodes as well

* Fix signedness bug in reverse input mode cycling

* Misc formatting in process_unicode_common.c

* Address clang-format issues

* Make decode_utf8 helper function file-local (static)
2020-05-09 01:22:02 -07:00
zvecr 406dc2fb2d Move encoder_read to common location 2020-05-02 22:44:36 +01:00
JohSchneider ddd055b1e2
Audio_Enable, AVR template update (#8901)
* Branch point for 2020 May 30 Breaking Change

* audio-configuration: template: audio_avr.c does NOT default to C6

not on its own, it needs a pin configured per define in config.h for audio to actually work
otherwise only parts of the code are included in the firmware, wasting space and possibly breaking builds because auf hitting the firmware-size limits

* audio-configuration: strip comment to bare essentials

Co-Authored-By: Ryan <fauxpark@gmail.com>

* revert future change

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Johannes <you@example.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: zvecr <git@zvecr.com>
2020-05-01 21:30:12 +01:00
Ryan 16a15c1cfc
QMK-ify some GPIO macros (#8315) 2020-04-30 16:24:47 +10:00
QMK Bot 231464c49c format code according to conventions [skip ci] 2020-04-29 11:38:51 +00:00
JohSchneider d26a14c169
add 'togglePin' convenience function (#8734)
* add 'togglePin' conveniance function

for AVR and chibios

* drop outmost parantheses

Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>

* toggle pin on avrs

toggle a pin configured as output by writing the corresponding bit to the PIN register

Co-Authored-By: Takeshi ISHII <2170248+mtei@users.noreply.github.com>

* togglepin: add documentation for newly added function

* Update docs/internals_gpio_control.md

Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>

* on AVR: use PORTD to toggle the output

... since not all MCUs support toggling through writing to PIN

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: Johannes <you@example.com>
Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
Co-authored-by: Takeshi ISHII <2170248+mtei@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-29 04:04:29 -07:00
QMK Bot 812d80efbd format code according to conventions [skip ci] 2020-04-29 08:57:41 +00:00
Drashna Jaelre 86c4c4e91d
Convert clipping variables in rgblight.c to a structure (#7720) 2020-04-29 10:22:28 +02:00
Nick Brassel b17482c3fd
Add SPI master for ChibiOS/ARM. (#8779) 2020-04-29 14:01:20 +10:00
QMK Bot bd639752db format code according to conventions [skip ci] 2020-04-28 07:04:07 +00:00
Ryan aaeef7a833
Add Romanian keymap and sendstring LUT (#8852) 2020-04-28 16:23:48 +10:00
Ryan 43785126a7
Merge pull request #8710 from vomindoraan/keymap_extras_fixup 2020-04-19 19:18:05 +10:00
Konstantin Đorđević ed910c8e97 Add back deprecated SE_AE keycode 2020-04-19 02:56:52 +02:00
joseandres42 195324cc4c
Add dvorak's spanish variant to quantum/keymap_extras (#8732)
* Added dvorak's spanish variant.

* Fixed spacing

* Fixed filename typo

* Applied fixes and suggestions.

* Fixed spacing

* Added sendstring_spanish_dvorak.h

* Fixed sendstring_spanish.h

* Update quantum/keymap_extras/sendstring_spanish_dvorak.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/sendstring_spanish.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/sendstring_spanish_dvorak.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: joseandres42 <joseandres42@Orion-PC.localdomain>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-18 17:12:36 -07:00
Ryan cd5399942b
Merge pull request #8722 from fauxpark/keymap-extras-bepo 2020-04-19 06:58:01 +10:00
Ryan fd4bbd8d11
Update Italian macOS keymaps and add sendstring LUTs (#8701)
* Update Italian macOS keymaps and add sendstring LUTs

* Wrong letter
2020-04-19 06:57:36 +10:00
Ryan f43cb31476
Update French and German macOS keymaps and add sendstring LUTs (#8700) 2020-04-19 06:57:05 +10:00
Ryan 89eb3a9e42
Update Swiss French/German keymaps and add sendstring LUTs (#8689) 2020-04-19 06:56:49 +10:00