Commit Graph

442 Commits

Author SHA1 Message Date
Nick Brassel
bb34a247b8
Merge remote-tracking branch 'upstream/develop' into xap 2025-03-22 20:45:27 +11:00
Nick Brassel
2b00b846dc
Non-volatile memory data repository pattern (#24356)
* First batch of eeconfig conversions.

* Offset and length for datablocks.

* `via`, `dynamic_keymap`.

* Fix filename.

* Commentary.

* wilba leds

* satisfaction75

* satisfaction75

* more keyboard whack-a-mole

* satisfaction75

* omnikeyish

* more whack-a-mole

* `generic_features.mk` to automatically pick up nvm repositories

* thievery

* deferred variable resolve

* whitespace

* convert api to structs/unions

* convert api to structs/unions

* convert api to structs/unions

* fixups

* code-side docs

* code size fix

* rollback

* nvm_xxxxx_erase

* Updated location of eeconfig magic numbers so non-EEPROM nvm drivers can use them too.

* Fixup build.

* Fixup compilation error with encoders.

* Build fixes.

* Add `via_ci` keymap to onekey to exercise VIA bindings (and thus dynamic keymap et.al.), fixup compilation errors based on preprocessor+sizeof.

* Build failure rectification.
2025-03-21 23:38:34 +11:00
Stefan Kerkmann
c9d62ddc78
[Core] use keycode_string in unit tests (#25042)
* tests: use keycode_string feature

With a proper keycode to string implementation in qmk there is no need
to use the unit tests only implementation anymore.

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

* tests: remove keycode_util feature

This feature is no longer used as we switched the tests to the
keycode string implementation.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
2025-03-21 08:47:22 +01:00
QMK Bot
aefa671701 Merge remote-tracking branch 'origin/develop' into xap 2025-03-19 19:46:30 +00:00
Pascal Getreuer
3484f0a0df
[Core] get_keycode_string(): function to format keycodes as strings, for more readable debug logging. (#24787)
* keycode_string(): Format keycodes as strings.

This adds the `keycode_string()` function described in
https://getreuer.info/posts/keyboards/keycode-string/index.html
as a core feature.

* Fix formatting.

* keycode_string review revisions.

* Rename keycode_string() -> get_keycode_string() for consistency with
  existing string utils like get_u8_str().

* Revise custom keycode names with separate _user and _kb tables.

* Correct indent in builddefs/generic_features.mk.

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

* Add KC_NUHS, KC_NUBS, and KC_CAPS.

* Fix linking error with custom names.

* Attempt at simplifying interface.

* Formatting fix.

* Several fixes and revisions.

* Don't use PSTR in KEYCODE_STRING_NAME, since this fails to build on
  AVR. Store custom names in RAM.
* Revise the internal table of common keycode names to use its own
  storage representation, still in PROGMEM, and now more efficiently
  stored flat in 8 bytes per entry.
* Support Swap Hands keycodes and a few other keycodes.

* Revert "Formatting fix."

This reverts commit 2a2771068c.

* Revert "Attempt at simplifying interface."

This reverts commit 8eaf67de76.

* Simplify custom names API by sigprof's suggestion.

* Support more keycodes.

* Add QK_LOCK keycode.
* Add Secure keycodes.
* Add Joystick keycodes.
* Add Programmable Button keycodes.
* Add macro MC_ keycodes.
* For remaining keys in known code ranges, stringify them as
  "QK_<feature>+<number>". For instance, "QK_MIDI+7".

* Bug fix and a few improvements.

* Fix missing right-hand bit when displaying 5-bit mods numerically.
* Support KC_HYPR, KC_MEH, HYPR_T(kc), MEH_T(kc).
* Exclude one-shot keycodes when NO_ACTION_ONESHOT is defined.

---------

Co-authored-by: Ryan <fauxpark@gmail.com>
2025-03-19 20:45:56 +01:00
QMK Bot
beebcaf9e8 Merge remote-tracking branch 'origin/develop' into xap 2025-02-28 17:40:20 +00:00
Pablo Martínez
e62352e606
[Cleanup] Handling of optional *.mk files (#24952)
replace check + `include` with `-include`
2025-02-28 17:39:43 +00:00
QMK Bot
99204ae0b4 Merge remote-tracking branch 'origin/develop' into xap 2025-02-28 05:46:50 +00:00
Joel Challis
6ee806f376
Implement battery level interface (#24666)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2025-02-28 16:46:14 +11:00
Nick Brassel
25f28bac16
Merge remote-tracking branch 'upstream/develop' into xap 2025-02-28 09:18:17 +11:00
Nick Brassel
1efc82403b
Community modules (#24848) 2025-02-26 22:25:41 +11:00
QMK Bot
09a3fee147 Merge remote-tracking branch 'origin/develop' into xap 2025-01-29 19:23:06 +00:00
QMK Bot
db68fd88bd Merge remote-tracking branch 'origin/master' into develop 2025-01-29 19:21:51 +00:00
dependabot[bot]
ea3a968510
Bump vite from 5.2.14 to 5.4.12 in /builddefs/docsgen (#24852) 2025-01-30 06:20:08 +11:00
QMK Bot
2804d37cf7 Merge remote-tracking branch 'origin/develop' into xap 2025-01-25 06:38:45 +00:00
Ryan
a6e931400e
Relocate base WS2812 code (#24850) 2025-01-25 17:38:12 +11:00
Nick Brassel
0c0d620165
Merge remote-tracking branch 'upstream/develop' into xap 2025-01-21 09:01:32 +11:00
Nick Brassel
a6a0dc8039
Consolidate send_string implementations. (#24817) 2025-01-21 08:24:39 +11:00
QMK Bot
8f75d25312 Merge remote-tracking branch 'origin/develop' into xap 2025-01-10 21:00:43 +00:00
dependabot[bot]
35c6520560
Bump nanoid from 3.3.7 to 3.3.8 in /builddefs/docsgen (#24713)
Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.7 to 3.3.8.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.3.7...3.3.8)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-10 20:59:33 +00:00
QMK Bot
af79bb9e7e Merge remote-tracking branch 'origin/develop' into xap 2024-12-24 18:27:17 +00:00
Joel Challis
a822545da0
Set custom effect defines for LED Matrix (#24745) 2024-12-24 10:26:08 -08:00
QMK Bot
c2ea27d7a2 Merge remote-tracking branch 'origin/develop' into xap 2024-12-01 19:25:48 +00:00
Joel Challis
5eb53be671
Avoid loading keymap rules.mk twice (#24665) 2024-12-02 06:24:44 +11:00
QMK Bot
a9ef84fde3 Merge remote-tracking branch 'origin/develop' into xap 2024-11-24 09:33:03 +00:00
Nick Brassel
7d8f193988
Allow codegen of keymap.json => keymap.c without requiring layers/layout etc. (#23451) 2024-11-24 20:32:30 +11:00
QMK Bot
2d9bfa2a3b Merge remote-tracking branch 'origin/develop' into xap 2024-11-23 16:35:03 +00:00
Dasky
1f7d10902a
Add pointing tests (#24513) 2024-11-23 16:34:32 +00:00
QMK Bot
dd2dbffb16 Merge remote-tracking branch 'origin/develop' into xap 2024-11-23 10:10:04 +00:00
Joel Challis
4a5bae51cd
[Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#24630)
* [Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#21881)

* Apply suggestions from code review

Co-authored-by: Nick Brassel <nick@tzarc.org>

---------

Co-authored-by: Nebuleon <2391500+Nebuleon@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-11-23 10:09:34 +00:00
QMK Bot
6298984d12 Merge remote-tracking branch 'origin/develop' into xap 2024-11-21 06:32:17 +00:00
Drashna Jaelre
36b5559b99
[Core] Add Layer Lock feature (#23430)
Co-authored-by: Daniel <1767914+iamdanielv@users.noreply.github.com>
Co-authored-by: Pascal Getreuer <getreuer@google.com>
Co-authored-by: Pascal Getreuer <50221757+getreuer@users.noreply.github.com>
2024-11-21 17:31:54 +11:00
HorrorTroll
39161b9ee7
Added MCU support for ArteryTek AT32F415 (#23445) 2024-11-21 17:28:28 +11:00
QMK Bot
d2f5a1c1f1 Merge remote-tracking branch 'origin/develop' into xap 2024-11-19 22:54:06 +00:00
Ryan
9c86583981
Backward compatibility for new RGB keycode handling (#24490)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2024-11-20 09:53:33 +11:00
QMK Bot
3b4b59aacc Merge remote-tracking branch 'origin/develop' into xap 2024-11-12 02:22:29 +00:00
QMK Bot
4e77ab66e2 Merge remote-tracking branch 'origin/master' into develop 2024-11-12 02:21:49 +00:00
Ryan
3d4da6de29
[docs] Add "edit this page" link at the bottom (#24585) 2024-11-12 02:20:56 +00:00
QMK Bot
4fb3843630 Merge remote-tracking branch 'origin/develop' into xap 2024-11-09 19:05:21 +00:00
QMK Bot
69093f6de9 Merge remote-tracking branch 'origin/master' into develop 2024-11-09 19:04:48 +00:00
Ryan
3eb172d08e
[docs] Turn on icons for external links (#24580) 2024-11-09 12:04:14 -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
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
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
0677f6b5e3 Merge remote-tracking branch 'origin/develop' into xap 2024-09-24 11:54:29 +00:00
Nick Brassel
9a8f5a80e4
Remove RING_BUFFERED_6KRO_REPORT_ENABLE due to disuse. (#24433) 2024-09-24 12:53:55 +01:00
QMK Bot
72d7c9ff3f Merge remote-tracking branch 'origin/develop' into xap 2024-09-24 08:56:27 +00:00