Commit Graph

3016 Commits

Author SHA1 Message Date
QMK Bot
5b42ce0ad4 Merge remote-tracking branch 'origin/develop' into xap 2024-10-28 06:20:48 +00:00
フィルターペーパー
25fac5e737
Refactor Breathing effect with runner (#24535) 2024-10-27 23:20:38 -07:00
QMK Bot
1647ce22d2 Merge remote-tracking branch 'origin/develop' into xap 2024-10-28 06:20:17 +00:00
フィルターペーパー
dd7287bf4e
Update Jellybean Raindrops to respect LED range limits (#24534) 2024-10-27 23:20:14 -07:00
フィルターペーパー
d9fedce9b9
Update Pixel Rain to respect LED range limits (#24532) 2024-10-27 23:19:45 -07:00
QMK Bot
b394a465c9 Merge remote-tracking branch 'origin/develop' into xap 2024-10-28 05:51:33 +00:00
フィルターペーパー
644588baef
Refactor Riverflow matrix effect with runner (#24520)
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-10-27 22:51:01 -07:00
QMK Bot
2088bb3774 Merge remote-tracking branch 'origin/develop' into xap 2024-10-25 17:12:26 +00:00
Dasky
f5b495e06e
Move pointing device driver code (#24445)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-10-25 18:11:51 +01:00
QMK Bot
d383244336 Merge remote-tracking branch 'origin/develop' into xap 2024-10-24 04:27:57 +00:00
Ryan
bb9625ba55
RGBLight: Improve RGB Test animation (#24477) 2024-10-24 15:27:24 +11:00
QMK Bot
88b7b9a756 Merge remote-tracking branch 'origin/develop' into xap 2024-10-19 10:25:13 +00:00
Drashna Jaelre
baa29fef9d
[Bug] Fix compiliation issues with OS Detection (#24502) 2024-10-19 12:24:42 +02:00
QMK Bot
595e339f57 Merge remote-tracking branch 'origin/develop' into xap 2024-10-18 07:57:41 +00:00
Stefan Kerkmann
3f9d464412
[Core] usb_device_state: consolidate usb state handling across implementations (#24258)
* usb_device_state: add idle_rate, led and protocol

Previously all usb drivers and platform implementations (expect for our
oddball atsam) tracked the same two global variables:

- keyboard_protocol: to indicate if we are in report or boot protocol
- keyboard_idle: for the idle_rate of the keyboard endpoint

And a local variable that was exposed trough some indirection:

- keyboard_led_state: for the currently set indicator leds (caps lock etc.)

These have all been moved into the usb_device_state struct wich is
accessible by getters and setters.

This reduces code duplication and centralizes the state management
across platforms and drivers.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* usb_device_state: reset protocol on reset

The usb hid specification section 7.2.6 states:

When initialized, all devices default to report protocol. However the
host should not make any assumptions about the device’s state and should
set the desired protocol whenever initializing a device.

Thus on reset we should always do exactly that.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* keyboards: fix oversize warnings

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

---------

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
2024-10-18 09:57:08 +02:00
QMK Bot
c544ea0a58 Merge remote-tracking branch 'origin/develop' into xap 2024-10-12 16:48:35 +00:00
Stefan Kerkmann
5478051d74
[Core] quantum: util: add bit and bitmask helpers (#24229)
quantum: util: add bit and bitmask helpers

These helpers are handy and can prevent off-by-one errors when working
with registers and general low level bit manipulation tasks. The macros
themself are inspired by the bits.h macros from the linux kernel source
code.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
Co-authored-by: Pascal Getreuer <50221757+getreuer@users.noreply.github.com>
2024-10-12 18:48:00 +02:00
QMK Bot
f54b3a244b Merge remote-tracking branch 'origin/develop' into xap 2024-10-12 16:44:22 +00:00
Ryan
6fa11bf219
Separate RGBLight/RGB Matrix keycode handling (#23679)
* Separate RGBLight/RGB Matrix keycode handling

* Remove `_DISABLE_KEYCODES` handling

* Update RGB Matrix keycode docs

* Update underglow keycodes for previously migrated boards

* Update keycodes for boards with custom handling

* Fix typos

* Fix bad merge
2024-10-12 18:43:50 +02:00
QMK Bot
6ed62e1a84 Merge remote-tracking branch 'origin/develop' into xap 2024-10-11 23:14:07 +00:00
フィルターペーパー
8844fba607
Update combo user function variable (#24467) 2024-10-12 00:13:31 +01:00
QMK Bot
31cdc0eb28 Merge remote-tracking branch 'origin/develop' into xap 2024-10-11 23:10:38 +00:00
Ryan
6129af93f4
Rename RGB and HSV structs (#24471) 2024-10-12 00:10:02 +01:00
QMK Bot
ccae9c280d Merge remote-tracking branch 'origin/develop' into xap 2024-10-10 19:56:01 +00:00
QMK Bot
29bc842fe2 Merge remote-tracking branch 'origin/master' into develop 2024-10-10 19:55:27 +00:00
Drashna Jaelre
49a1a12a32
Expand count checks in keymap introspection (#24464)
* Add check Tap Dance count check to keymap introspection

* Add checks for combos and key overrides to introspection
2024-10-11 06:54:53 +11:00
QMK Bot
4620ec420b Merge remote-tracking branch 'origin/develop' into xap 2024-10-06 09:27:36 +00:00
eynsai
2cb35373c6
Extended wheel reports (#24422)
extended wheel reports
2024-10-06 11:26:55 +02:00
QMK Bot
fd2f87fe9f Merge remote-tracking branch 'origin/develop' into xap 2024-10-06 08:51:40 +00:00
Andre Brait
7f475b590a
Tweak OS detect, add OS_DETECTION_SINGLE_REPORT (#24379)
* Default OS_DETECTION_DEBOUNCE bumped from 200ms to 250ms
* Add OS_DETECTION_SINGLE_REPORT to prevent undesired multiple reports
* Prevents random stability issues on ARM MacBooks after switching via KVM
* Works for every device I could test, including ARM MacBooks
* Disabled by default to keep current behavior
* Add Troubleshooting section on documentation
* Tweak reset logic to prevent a freeze with some KVMs

The USB stack on ARM MacBooks is more similar to that of iOS and,
for some reason, it seems to like sending packets that influence
the OS detection and results in a second OS_MACOS report being sent
at a random period of time after plugging the keyboard back. This
does not always happen and the consequences of this vary based on
what the user is doing in the callback, but since this is not
obvious and it's hard to debug, I've decided to add a flag for
those affected by such issue. The stability issue I had in mine was
a combination of factors and I found the actual cause being my own
bad math when changing the default layer, but this change alone is
also confirmed to fix it. Lastly, soem KVMs seem to leave the USB
controlled in a suspended state when cold-booting Windows, meaning
the keyboard would hang and the reset logic would not work. This
tunes it so that it can get out of such state. Also retested for
compatibility with my old KVM to ensure the logic works for both.
2024-10-06 21:50:39 +13:00
QMK Bot
5fe843f207 Merge remote-tracking branch 'origin/develop' into xap 2024-10-06 08:39:50 +00:00
Andre Brait
3cf94cb308
Add easier way to set default single layer (#24376)
* Add set_single_default_layer to match set_single_persistent_default_layer
* Implements exactly the same behavior, except the write to EEPROM
2024-10-06 21:39:21 +13:00
QMK Bot
0402213d51 Merge remote-tracking branch 'origin/develop' into xap 2024-10-06 08:01:38 +00:00
Ryan
208ebf54a9
WS2812 API rework (#24364)
* Begin WS2812 API rework

* Move RGBW conversion, clean up color.h, fix RGBW for AVR bitbang

* Formatting & update PS2AVRGB I2C driver (untested)

* Tested ARM bitbang RGB+RGBW

* Tested ARM SPI RGB - RGBW not working

* Tested ARM PWM RGB+RGBW

* Tested RP2040 PIO driver RGB+RGBW

* Update RGBLight

* Formatting

* Fix BM60HSRGB rev2

* Fix oddforge/vea

* Fix 1k and XD002 RGBLite

* Fix model_m/mschwingen

* Fix handwired/promethium

* Rename `WS2812_LED_TOTAL` for BM60HSRGB

* Fix work_louder boards

* Fix dawn60

* Fix rgbkb/pan

* Fix neson_design/700e and n6

* Fix ergodox_ez/shine

* ergodox_ez/shine: invert indices for left half

* Fix matrix/abelx

* Fix matrix/m20add

* Remove custom rgblight driver for matrix/noah - should be done with lighting layers

* Fix LED indexes for RGBLight split

* Rename `convert_rgb_to_rgbw()` to `ws2812_rgb_to_rgbw()`

* Update WS2812 API docs

* `ergodox_ez/shine`: simplify LED index calculation

* LED/RGB Matrix: Add weak function for LED index resolution

* Bandaid fix for RGB Matrix splits not using WS2812

* `steelseries/prime_plus`: redo custom RGBLight driver

* Update keyboards/steelseries/prime_plus/rgblight_custom.c

Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>

---------

Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2024-10-06 21:01:07 +13:00
QMK Bot
42c37d5fb0 Merge remote-tracking branch 'origin/develop' into xap 2024-09-18 11:45:09 +00:00
Dasky
49e339ba8d
Add LD7032 support to QP. (#20828)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2024-09-18 21:44:33 +10:00
QMK Bot
bb21a2bd73 Merge remote-tracking branch 'origin/develop' into xap 2024-09-15 00:08:59 +00:00
Ryan
e84104fe8d
Reinstate global k_rgb_matrix_split (#24388) 2024-09-15 10:08:29 +10:00
QMK Bot
962a83591c Merge remote-tracking branch 'origin/develop' into xap 2024-09-06 06:27:58 +00:00
Filios92
0fd9909657
Add combo key repress feature (#22858)
Co-authored-by: jack <jack@pngu.org>
2024-09-05 23:27:20 -07:00
QMK Bot
9e5ed8e60d Merge remote-tracking branch 'origin/develop' into xap 2024-09-02 02:48:51 +00:00
Joel Challis
3bd303f204
Remove arm_atsam platform (#24337) 2024-09-02 03:48:17 +01:00
QMK Bot
ac38a2a2b4 Merge remote-tracking branch 'origin/develop' into xap 2024-09-01 03:46:20 +00:00
Thomas Weißschuh
9df36b25da
Remove global k_rgb_matrix_split (#24348)
All users have their own local definition.
2024-08-31 21:45:49 -06:00
QMK Bot
abb09b42de Merge remote-tracking branch 'origin/develop' into xap 2024-08-27 00:52:57 +00:00
Nick Brassel
70cbf08b67
Add new connection keycodes for Bluetooth, 2.4GHz. (#24251) 2024-08-27 10:52:23 +10:00
zvecr
7b8bf3426d Merge remote-tracking branch 'origin/develop' into xap 2024-08-26 04:25:39 +01:00
フィルターペーパー
11f2209087
Segregrate keycode at pre-process record quantum (#24194) 2024-08-26 10:20:30 +10:00
フィルターペーパー
21b84596e7
Enhance overlapping mouse keys control (#23341)
Enhance the overlapping mouse key press acceleration (introduced in #21494) with user preprocessor controls.
2024-08-19 03:18:28 +01:00
Drashna Jaelre
ab4c13e835
Add dynamic macro keyboard callbacks (#24142) 2024-08-18 01:35:10 +01:00