Commit Graph

145 Commits

Author SHA1 Message Date
Ryan
2aacda3235
Move PACKED define to util.h (#22074) 2023-09-20 07:33:54 +01:00
QMK Bot
80fdecdee9 Merge remote-tracking branch 'origin/develop' into xap 2023-09-17 12:11:50 +00:00
Ryan
1ea54a2d8d
Complete RGB Matrix support for IS31FL3218 (#22004) 2023-09-17 22:11:16 +10:00
QMK Bot
7d1a277202 Merge remote-tracking branch 'origin/develop' into xap 2023-09-13 12:45:53 +00:00
Ryan
a0aebe5cd5
aw20216: driver naming cleanups (#21891) 2023-09-13 22:45:17 +10:00
Drashna Jael're
e69909cc53
Merge remote-tracking branch 'origin/develop' into xap 2023-09-05 00:56:56 -07:00
Ryan
41bd4e35a0
Clean up RGB LED type (#21859) 2023-09-04 01:19:59 +01:00
QMK Bot
83b06a83c3 Merge remote-tracking branch 'origin/develop' into xap 2023-08-23 00:00:45 +00:00
Ryan
37bc949945
RGB Matrix: driver naming cleanups (#21594) 2023-08-23 01:00:03 +01:00
QMK Bot
0a66f2fafa Merge remote-tracking branch 'origin/develop' into xap 2023-08-22 23:03:32 +00:00
Joel Challis
dfb6d38f08
Simplfy RGB/LED matrix effect logic (#21703) 2023-08-23 00:03:01 +01:00
QMK Bot
16fb060a23 Merge remote-tracking branch 'origin/develop' into xap 2023-08-22 17:40:06 +00:00
Less/Rikki
0d535381de
fix: restore indicators to jellybean_raindrops (#21792)
After #21169, rgb_matrix_indicators() was limited to running on the
final render iteration. Since the jellybean_raindrops animation
immediately returns false after updating a single LED, the iteration
count no longer ends up high enough to render non-advanced indicators.

This change also brings jellybean_raindrops more in line with raindrops.
2023-08-22 18:39:33 +01:00
QMK Bot
328f325dd1 Merge remote-tracking branch 'origin/develop' into xap 2023-07-16 13:43:35 +00:00
Ryan
da2d2f947d
quantum: remove direct quantum.h includes (#21507) 2023-07-16 23:42:56 +10:00
QMK Bot
c4ea57a6b8 Merge remote-tracking branch 'origin/develop' into xap 2023-07-07 14:39:15 +00:00
フィルターペーパー
0035ed6762
Set minimum middle column value (#21365) 2023-07-08 00:35:22 +10:00
QMK Bot
e9fb04cb0f Merge remote-tracking branch 'origin/develop' into xap 2023-07-02 22:57:29 +00:00
Xelus22
c4f66e5d6e
[Core] RGB Matrix limit basic indicators to the last render (#21169)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-07-02 15:56:48 -07:00
QMK Bot
c3468f9a40 Merge remote-tracking branch 'origin/develop' into xap 2023-06-11 06:55:46 +00:00
Albert Y
3444e9656d
Refactor the rain lighting decision operator (#21139) 2023-06-10 23:55:03 -07:00
QMK Bot
3d94f7e332 Merge remote-tracking branch 'origin/develop' into xap 2023-06-09 00:01:01 +00:00
Xelus22
806b61c2f7
[Core] RGB matrix ws2812 update (#21135)
* ws2812_update boolean to stop update every single cycle

* lint1

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

* lint2

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

* Update quantum/rgb_matrix/rgb_matrix_drivers.c

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2023-06-09 01:00:22 +01:00
QMK Bot
acd439b473 Merge remote-tracking branch 'origin/develop' into xap 2023-05-27 03:27:18 +00:00
André Greiner-Petter
249fb3c2c2
[BUG] Allow multiple IS31FL3741 drivers per board in rgb_matrix (#20988) 2023-05-27 13:26:14 +10:00
Drashna Jael're
5048473f71
Merge remote-tracking branch 'origin/develop' into xap 2023-05-08 13:28:59 -07:00
Drashna Jaelre
5c4b53a143
[Bug] Realign and size check EECONFIG structures (#20541)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-05-08 10:56:03 -07:00
QMK Bot
f700454e49 Merge remote-tracking branch 'origin/develop' into xap 2023-04-30 02:35:42 +00:00
Xelus22
6a619e6403
[Core] Clean up ISSI drivers, Add IS31FL3736 support (#20572)
Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com>
2023-04-30 12:35:27 +10:00
QMK Bot
d2a755b71f Merge remote-tracking branch 'origin/develop' into xap 2023-04-30 01:58:07 +00:00
Jasmin
4887f03dbd
typing_heatmap: Add macro to configure increase steps (#20300)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-04-30 11:57:30 +10:00
QMK Bot
8a70fff1b2 Merge remote-tracking branch 'origin/develop' into xap 2023-04-03 22:46:36 +00:00
CobraSock
d82c6648f5
Fixed split keyboard issue where custom LED indicators could activate incorrect LEDs (#20203) (#20204)
Co-authored-by: N M <ninja.milkman@gmail.com>
Fixed split keyboard issue where custom LED indicators could activate incorrect LEDs (#20203)
2023-04-04 08:46:00 +10:00
QMK Bot
d256806be8 Merge remote-tracking branch 'origin/develop' into xap 2023-03-30 01:21:39 +00:00
Ryan
647c2835e6
WS2812 driver improvements (#20262) 2023-03-30 12:21:02 +11:00
zvecr
42895141de Decouple lighting_map from XAP 2023-03-23 00:48:52 +00:00
Dasky
74770ac79b Merge branch 'master' into develop 2023-02-14 03:05:44 +00:00
Albert Y
cd91a3ced7
Update fractal attribution comment (#19832) 2023-02-13 10:58:27 -07:00
jack
9c6942ea40
Remove config.h include from quantum files (#19817) 2023-02-12 02:40:16 +00:00
Albert Y
0ff52925c0
Refactor pixel rain animation (#19606) 2023-01-16 17:54:51 -08:00
Albert Y
77092675aa
Update RGB matrix reactive gradient timer scale (#19415) 2022-12-30 11:38:15 +11:00
Albert Y
7f2ac4c576
De-obfuscate random8 functions in RGB matrix animations (#19416) 2022-12-27 12:11:31 -08:00
Albert Y
809c05ddf2
Use random8 for jellybean effect (#19418) 2022-12-27 12:10:07 -08:00
Ryan
e12ca14af8
Change RGB_MATRIX_STARTUP_* defines to RGB_MATRIX_DEFAULT_* (#19079) 2022-11-27 04:18:24 +11:00
Joel Challis
8e0945c822
Fix rgb_matrix_set_flags_noeeprom declaration (#18860) 2022-10-27 09:52:51 +01:00
QMK Bot
e59cb51be0
[CI] Format code according to conventions (#18756) 2022-10-18 08:29:19 +11:00
Jamal Bouajjaj
9d4c4ceee1
4 Driver support for IS31FL3737 (#18750)
* Added 4 driver support for the IS31FL3737 LED driver

* Updated docs for IS31FL3737 to support 4 drivers
2022-10-18 08:26:58 +11:00
James Thomson
41159326ca
Fix boundary in RGB_MATRIX_INDICATOR_SET_COLOR (#18650) 2022-10-11 11:33:02 -07:00
Drashna Jaelre
64b1ed4550
Fix Per Key LED Indicator Callbacks (#18450)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-10-04 15:24:22 -07:00
Ryan
ea2819b2c2
Change {LED,RGB}_DISABLE_TIMEOUT to {LED,RGB}_MATRIX_TIMEOUT (#18415) 2022-09-26 14:40:15 +10:00
Ryan
36c410592d
Change DRIVER_LED_COUNT to {LED,RGB}_MATRIX_LED_COUNT (#18399) 2022-09-23 22:46:23 +10:00
QMK Bot
731000533f Merge remote-tracking branch 'origin/master' into develop 2022-09-19 18:35:02 +00:00
Marius Renner
652d1d8a6d
Fix int8_t overflow in RGB heatmap effect (#18410) 2022-09-19 19:34:29 +01:00
Jeff Epler
9632360caa
Use a macro to compute the size of arrays at compile time (#18044)
* Add ARRAY_SIZE and CEILING utility macros

* Apply a coccinelle patch to use ARRAY_SIZE

* fix up some straggling items

* Fix 'make test:secure'

* Enhance ARRAY_SIZE macro to reject acting on pointers

The previous definition would not produce a diagnostic for
```
int *p;
size_t num_elem = ARRAY_SIZE(p)
```
but the new one will.

* explicitly get definition of ARRAY_SIZE

* Convert to ARRAY_SIZE when const is involved

The following spatch finds additional instances where the array is
const and the division is by the size of the type, not the size of
the first element:
```
@ rule5a using "empty.iso" @
type T;
const T[] E;
@@

- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)

@ rule6a using "empty.iso" @
type T;
const T[] E;
@@

- sizeof(E)/sizeof(T)
+ ARRAY_SIZE(E)
```

* New instances of ARRAY_SIZE added since initial spatch run

* Use `ARRAY_SIZE` in docs (found by grep)

* Manually use ARRAY_SIZE

hs_set is expected to be the same size as uint16_t, though it's made
of two 8-bit integers

* Just like char, sizeof(uint8_t) is guaranteed to be 1

This is at least true on any plausible system where qmk is actually used.

Per my understanding it's universally true, assuming that uint8_t exists:
https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1

* Run qmk-format on core C files touched in this branch

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-30 10:20:04 +02:00
Albert Y
cde9dd8b90
Refactor Pixel Fractal effect (#17602)
* Refactor effect with smaller array

* Add RGB_MATRIX_USE_LIMITS call

* Remove spaces

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

Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-11 22:41:42 +01:00
Albert Y
2f73e65837
Add LED limit call (#17679) 2022-07-14 12:37:47 +01:00
Albert Y
1862ac5454
Fix the use of LED limits (#17678) 2022-07-14 12:36:51 +01:00
Albert Y
300dab7962
[Code] Add solid reactive gradient mode (#17228) 2022-07-14 12:22:53 +01:00
Drashna Jaelre
1dfe2bb49a
Update LED/RGB Matrix flag function behavior (#17651) 2022-07-12 22:18:02 -07:00
Dasky
dcdc7290e5
RGB Matrix Heatmap - Skip positions with NO_LED (#17488) 2022-06-29 01:25:03 -07:00
Dasky
be42c5fb98
Fix RGB heatmap to use XY positions and use correct led limits (#17184)
* Fix RGB heatmap to use XY positions

* lower effect area limit and make configurable

* tidy up macro

* Fix triggering in both directions.

* add docs

* fix bug when decreasing value

* performance tweak
2022-06-21 10:53:34 -07:00
KoenGoe
671b62efab
Fixes #16705 : digital rain follows val (#16716)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-04-19 21:02:21 +10:00
Albert Y
e5918cf968
Heatmap incorrect matrix effect workaround (#16315) 2022-04-16 11:34:07 -07:00
QMK Bot
63646e8906
Format code according to conventions (#16322) 2022-02-12 18:29:31 +00:00
Dasky
00cc64638c
Fix right side ws2812 leds having two indices (#15985)
* Fix right side leds having two indices

* remove redundant left check
2022-02-11 20:13:22 +00:00
MasterSpoon
0452ad9479
Add RGB matrix & LED Matrix support for IS31FL3742A, IS31FL3743A, IS31FL3745, IS31FL3746A (#14989)
Co-authored-by: Xelus22 <17491233+Xelus22@users.noreply.github.com>
2022-02-06 09:04:43 -08:00
Adam Lickel
eb8ace0855
RGB Matrix: Reload from EEPROM (#15923)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-02-04 19:08:48 -08:00
QMK Bot
b4ceefde37
Format code according to conventions (#16211) 2022-02-04 19:23:30 +00:00
Albert Y
6a35788b63 [Core] Add Pixel Flow RGB matrix effect (#15829)
* Initial PIXEL FLOW matrix effect commit

* Commit suggested use of rgb_matrix_check_finished_leds

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* Code change support for split RGB

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-02-05 05:58:16 +11:00
QMK Bot
578d3f6951 Merge remote-tracking branch 'origin/master' into develop 2022-02-04 18:57:58 +00:00
Nick Brassel
1fffcbc298
Revert "[Core] Add Pixel Flow RGB matrix effect (#15829)" (#16209)
This reverts commit e8fa329073.
2022-02-05 05:57:21 +11:00
QMK Bot
f2384d062b Merge remote-tracking branch 'origin/master' into develop 2022-02-04 18:56:47 +00:00
Albert Y
e8fa329073
[Core] Add Pixel Flow RGB matrix effect (#15829)
* Initial PIXEL FLOW matrix effect commit

* Commit suggested use of rgb_matrix_check_finished_leds

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* Code change support for split RGB

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-02-05 05:55:51 +11:00
Albert Y
1d3c2ceded
Add init function to clear previous effect (#15815) 2022-01-17 06:48:09 +11:00
Erik Berthold
2c8d46f408
fix RGB_DISABLE_TIMEOUT flicker on split keyboards (#14954) 2021-12-27 13:50:44 +11:00
QMK Bot
25b087925c
Format code according to conventions (#15195) 2021-11-17 20:42:00 +00:00
Albert Y
557e5ddf99
Rename RGB fractal (#15174)
Co-authored-by: filterpaper <filterpaper@localhost>
2021-11-16 11:14:57 -08:00
Drashna Jaelre
160b0558f5
Require explicit enabling of RGB Matrix modes (#15018) 2021-11-15 10:41:04 -08:00
Albert Y
2173b5373c
Add Pixel Rain RGB Matrix effect (#14155)
* Add Pixel animation header file

* Add Pixel animation to documentation

* Add Pixel animation to core include file

* Remove unintended spaces

* Remove seeding of PRNG

* Increase frequency of lit keys

Co-authored-by: filterpaper <filterpaper@localhost>
2021-11-02 10:40:25 +11:00
lalalademaxiya1
f4ea262c17
Add a new led driver for Keychron's keyboards. (#14872)
* Add a new led driver for Keychron's keyboards.

* Update ckled2001.c/ckled2001.h.

* Update ckled2001.c/ckled2001.h.

* Update ckled2001.c/ckled2001.h.

* Update ckled2001.c

* Add a new led driver

* Update ckled2001.c

* Update ckled2001.c

* Update ckled2001.c

* Update ckled2001.c

* Delete ckled2001.c

* Create ckled2001.c

* Update ckled2001.c

* Update chibios-contrib

Co-authored-by: keychron-dev <85598583+keychron-dev@users.noreply.github.com>
Co-authored-by: lokher <lokher@gmail.com>
2021-11-02 09:43:53 +11:00
Vlad K
a29ca1e7f1
Add support for ISSI drivers on both sides of a split keyboard (#13842)
* Gets RGB working on a split keyboard with IS31FL3733. Currently needs small tweak to re-enable WS2812

* Added helper function

* Trying to integrate the function

* Moved functionality into a macro

* Swapped conditional for a macro everywhere

* Tidying up

* More code cleanup

* Documentation updates

* Fixed formatting via linter

* Switching to a function from a macro

* Fixed compile error

* Fixing WS2812 behavior. UNTESTED.

* Updated documentation about the driver addresses.

* Fixed code for WS2812

* Trying to add in LED_MATRIX support

* Updated effects for LED matrix

* Updated third-party effect defines.

* Ran format-c on modified files

* Apply suggestions from code review

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

* Move to static inline. Avoids issues with gcc v8+

* Move helper function for LED_matrix to static inline to avoid issues with gcc v8+

Co-authored-by: Vlad Kvitnevskiy <vladkvit@outlook.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2021-11-02 09:04:37 +11:00
Joel Challis
92385e30cd
Manually format develop (#15003) 2021-11-01 19:18:33 +00:00
Albert Y
4bf7ce2298
Add Fractal RGB matrix effects (#12670)
* Squashed fractal effect commit for easier rebase

* Update documentation

* Squashed fractal effect commit for easier rebase

* Update documentation

* Update doc spacing

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

* Update feature_rgb_matrix.md

Co-authored-by: filterpaper <filterpaper@localhost>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-11-02 04:30:07 +11:00
Ryan
b487e10753
Clean up LED/RGB Matrix driver config (#14760) 2021-10-10 16:57:49 -07:00
Joel Challis
00fd404433
Put back eeconfig_update_ functions (#14751) 2021-10-08 13:44:07 +01:00
Joel Challis
60297a1099
Reuse of EEPROM debounce logic (#14699)
* reuse rgb debounce logic

* Refactor led matrix

* Remove log line

* timeout should not be hard coded
2021-10-07 01:47:14 +01:00
Drashna Jaelre
169d5bd21d
[Bug] Fix IS31fl3741 driver to accept 1 or 2 addresses (#14451)
Co-authored-by: Joel Challis <git@zvecr.com>
2021-09-15 10:07:08 -07:00
Drashna Jaelre
92fa07336c
[Bug] Fix RGB/LED Matrix Suspend code (#14084) 2021-08-20 06:14:42 -07:00
Drashna Jaelre
7da97c293d
Rgb matrix/enable modes explicitly (#13758)
* Change animations to require explicet activation

* Add support for legacy config

* Make default for now

* Add LED Matrix support

* change LED Matrix docs
2021-08-18 04:19:00 +10:00
Joel Challis
3858a784c7
Align AW20216 driver (#13712)
* Align AW20216 driver

* Update drivers/awinic/aw20216.h

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

* Review comments

* formatting fixes

* stop if start failed?

* review comments

Co-authored-by: Ryan <fauxpark@gmail.com>
2021-07-27 23:55:51 +01:00
Ryan
777fffb067
Revert "Add rgblight to RGB Matrix VPATH" (#13559) 2021-07-17 13:39:52 +10:00
Johannes Choo
10d7eca5af
Fix LED Hit Counter for LED/RGB Matrix (#12674) 2021-07-16 09:37:18 -07:00
Chris Cullin
70267b35c3
Dual RGB Matrix IS31FL3737 driver support to address #13442 (#13457)
* initial commit

* removed changes to write_pwm_buffer

* backward compatbility added

* fixed issue with backward compatibility

* documentation update

* removed unneccessary comment. branched from master

* updated per comments #13457

* removed blank line

* cformat on diff files
2021-07-15 22:52:05 +01:00
QMK Bot
38d979189b Merge remote-tracking branch 'origin/master' into develop 2021-06-23 09:45:48 +00:00
Ryan
d61e5c0027
Move LED/RGB Matrix code into their own directories (#13257) 2021-06-22 18:26:23 +10:00