Commit Graph

89 Commits (c8a28e8e9bf85508a2b34ed0f839f83d8cc77384)

Author SHA1 Message Date
db 65b5969ed5
New RGB Animations - 4 "Starlight" Animation Variations (#22212) 2023-11-26 23:07:32 +11:00
Ryan b52aca0af8
Relocate LED driver init code (#22365) 2023-11-01 00:53:45 +00:00
Dasky f293658147
RGB/LED matrix use limits size optimisation (#22325) 2023-10-25 22:06:51 +01:00
Dasky 7e0147f8e6
Fix compilation error when led/rgb process limit is zero. (#22328)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-10-24 13:45:33 +01:00
Ryan cf7d3435d7
Add `_flush()` functions to LED drivers (#22308) 2023-10-22 18:32:27 +01:00
Ryan d56ee70c52
Rename `DRIVER_ADDR_n` defines (#22200)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-10-21 21:41:59 +10:00
Ryan c0f16be50f
Rename CKLED2001 driver to SNLED27351 (#22071) 2023-10-04 20:10:05 +11:00
Joel Challis 6910ed2de5
Add _DEFAULT_ON lighting configuration options (#21865) 2023-09-29 18:31:21 +01:00
Less/Rikki 346b06d391
refactor: move default RGB/LED matrix #defines (#21938)
* refactor: move default RGB/LED matrix #defines

Moving the fallback definitions of macros like LED_MATRIX_VAL_STEP and
RGB_MATRIX_MAXIMUM_BRIGHTNESS to header files allows keyboards to
leverage these defaults without requiring #ifdef guards (and often
repeating said fallback definitions).

* style: use if(n)def for consistency

and remove redundant UINT8_MAX checks on maximum brightness

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

* refactor: remove INDICATOR_MAX_BRIGHTNESS macro

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

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2023-09-28 11:51:18 +01:00
HorrorTroll 9d526b8d66
Added flower blooming on RGB Matrix effect (#21948) 2023-09-25 12:58:45 +10:00
Ryan f8cea06be3
RGBLight/Backlight: add prefixed driver defines (#22089) 2023-09-21 15:50:01 +10:00
Ryan db68a95cae
LED/RGB Matrix: prefix driver defines (#22088) 2023-09-21 12:16:17 +10:00
Ryan 2aacda3235
Move `PACKED` define to util.h (#22074) 2023-09-20 07:33:54 +01:00
Ryan 1ea54a2d8d
Complete RGB Matrix support for IS31FL3218 (#22004) 2023-09-17 22:11:16 +10:00
Ryan a0aebe5cd5
aw20216: driver naming cleanups (#21891) 2023-09-13 22:45:17 +10:00
Ryan 41bd4e35a0
Clean up RGB LED type (#21859) 2023-09-04 01:19:59 +01:00
Ryan 37bc949945
RGB Matrix: driver naming cleanups (#21594) 2023-08-23 01:00:03 +01:00
Joel Challis dfb6d38f08
Simplfy RGB/LED matrix effect logic (#21703) 2023-08-23 00:03:01 +01: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
Ryan da2d2f947d
quantum: remove direct `quantum.h` includes (#21507) 2023-07-16 23:42:56 +10:00
フィルターペーパー 0035ed6762
Set minimum middle column value (#21365) 2023-07-08 00:35:22 +10: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
Albert Y 3444e9656d
Refactor the rain lighting decision operator (#21139) 2023-06-10 23:55:03 -07: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
André Greiner-Petter 249fb3c2c2
[BUG] Allow multiple IS31FL3741 drivers per board in rgb_matrix (#20988) 2023-05-27 13:26:14 +10: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
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
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
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
Ryan 647c2835e6
WS2812 driver improvements (#20262) 2023-03-30 12:21:02 +11: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