Pascal Getreuer
f4171412a6
Enable community modules to define LED matrix and RGB matrix effects. ( #25187 )
...
Co-authored-by: Joel Challis <git@zvecr.com>
2025-05-12 09:30:19 +10:00
HorrorTroll
02525f683e
Allow LVGL onekey keymap to be able compile for other board ( #25005 )
2025-05-10 19:26:50 +01: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
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
1efc82403b
Community modules ( #24848 )
2025-02-26 22:25:41 +11: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
Ryan
8f6d2ac53c
Update Underglow keycodes ( #23765 )
...
Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-08-25 22:15:07 +10:00
Ryan
c6668b9cd9
Migrate RGBLED_NUM
-> RGBLIGHT_LED_COUNT
in remaining non-user keymaps ( #23128 )
2024-02-22 10:10:16 +00:00
Ryan
2d1aed78a6
Update GPIO macro usages in core ( #23093 )
2024-02-18 17:08:27 +11:00
QMK Bot
61ed48edc3
Merge remote-tracking branch 'origin/master' into develop
2024-01-22 13:18:51 +00:00
Ryan
3495cbc638
Fix missing joystick.h include ( #22946 )
2024-01-22 13:18:20 +00:00
David Hoelscher
e9bd7d7ad3
I2C driver cleanup ( #21273 )
...
* remove i2c_start and i2c_stop from i2c drivers
* remove static i2c_address variable from chibios i2c driver
2024-01-17 14:05:38 +01:00
Ryan
a522b1f156
i2c: rename read/write register functions ( #22905 )
2024-01-16 02:26:40 +00:00
Ryan
e648155113
Rename RGBLED_NUM
-> RGBLIGHT_LED_COUNT
( #22570 )
2023-12-12 15:30:08 +11:00
Joel Challis
4682226e20
Keymap introspection for Dip Switches ( #22543 )
2023-12-11 23:06:18 +00:00
Joel Challis
e884e42ce9
Generalise ADC driver source inclusion ( #22448 )
2023-11-12 22:30:27 +00:00
Ryan
c157c19b81
Dedupe I2C, SPI, UART driver inclusions ( #22253 )
2023-10-13 17:25:32 +11:00
Ryan
1c069b13b9
rgblight: driver selection cleanups ( #21558 )
2023-08-15 11:06:57 +01:00
Ryan
5d2f2af198
OLED: driver naming cleanups ( #21710 )
2023-08-15 10:30:34 +01:00
Ryan
b090354143
haptic: naming cleanups ( #21551 )
2023-07-21 09:17:39 +10:00
Sergey Vlasov
2d7240f730
onekey: Fix console output on AVR ( #19930 )
2023-04-03 14:28:12 +10:00
Ryan
043d8e1140
Remove deprecated Quantum keycodes ( #19712 )
2023-01-29 16:44:16 +00:00
Ryan
cf935d97ae
Fix functions with empty params ( #19647 )
...
* Fix functions with empty params
* Found a bunch more
2023-01-20 16:21:17 +00:00
QMK Bot
3723c0e3d5
Merge remote-tracking branch 'origin/master' into develop
2023-01-19 01:06:08 +00:00
Nick Brassel
327f7ee9a7
Fixup ChibiOS header inclusion search ordering. ( #19623 )
...
* Add STM32F446-Nucleo onekey.
* Fixup onekey build for F446, all keymaps.
* Fixup board inclusion search ordering.
2023-01-19 01:05:29 +00:00
Ryan
1978007fae
Tap Dance: remove qk_
prefix ( #19313 )
2022-12-14 12:40:25 -08:00
jpe230
102f22f7e9
[Core] Quantum Painter - LVGL Integration ( #18499 )
...
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-13 07:51:14 +11:00
Nick Brassel
cf3c26533c
Fixup EFL and F4's sector selection. ( #19221 )
2022-12-02 21:55:28 +11:00
Ryan
1e95f7be8f
Joystick feature improvements ( #19052 )
2022-11-27 03:14:45 +11:00
QMK Bot
8449a4a11f
Merge remote-tracking branch 'origin/master' into develop
2022-11-18 02:17:25 +00:00
Joel Challis
5d882ab6ef
Disable onekey console by default ( #19104 )
2022-11-18 02:16:38 +00:00
Ryan
6cc9513ab0
Digitizer feature improvements ( #19034 )
2022-11-12 23:28:11 +00:00
Ryan
7407347be1
Remove rgblight_list.h ( #18878 )
...
* Remove rgblight_list defines with no usage
* Remove rgblight_setrgb_*[_at] defines
* Remove rgblight_sethsv_* defines
* Remove rgblight_sethsv_noeeprom_* defines
* Delete rgblight_list.h and remove all references
2022-10-27 23:50:14 +01:00
Ryan
6bbe8b6edd
Normalise Joystick and Programmable Button keycodes ( #18832 )
2022-10-24 15:50:33 +01:00
Ryan
c347e732be
Remove legacy EEPROM clear keycodes ( #18782 )
...
* `EEP_RST` -> `EE_CLR`, default-ish keymaps
* `EEP_RST` -> `EE_CLR`, user keymaps
* `EEP_RST` -> `EE_CLR`, community layouts
* `EEP_RST` -> `EE_CLR`, userspace
* `EEP_RST` -> `EE_CLR`, docs & core
2022-10-20 12:20:07 +01:00
Drashna Jaelre
55b9a4d06e
Remove RGBLIGHT_ANIMATION and clean up effect defines for G-K ( #18726 )
2022-10-15 09:55:27 -07:00
QMK Bot
f81123469e
Merge remote-tracking branch 'origin/master' into develop
2022-10-01 02:55:17 +00:00
Ryan
9f0d9b4fbe
onekey: fix quine keymap ( #18555 )
2022-10-01 12:54:42 +10:00
fauxpark
dbb70871fc
Merge remote-tracking branch 'upstream/master' into develop
2022-09-30 05:19:53 +10:00
Ryan
45b5ed5c6e
Onekey: migrate some stuff to data driven ( #18502 )
2022-09-30 04:23:11 +10:00
Ryan
be8907d634
Further refactoring of joystick feature ( #18437 )
2022-09-27 18:37:13 +10: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
Joel Challis
bbc3bc55f2
RESET -> QK_BOOT user keymaps ( #17940 )
2022-08-21 23:55:30 +01:00
Stefan Kerkmann
3f5dc47296
[Core] Use polled waiting on ChibiOS platforms that support it ( #17607 )
...
* Use polled waiting on platforms that support it
Due to context switching overhead waiting a very short amount of time on
a sleeping thread is often not accurate and in fact not usable for timing
critical usage i.e. in a driver. Thus we use polled waiting for ranges
in the us range on platforms that support it instead. The fallback is
the thread sleeping mechanism.
This includes:
* ARM platforms with CYCCNT register (ARMv7, ARMv8) this is
incremented at CPU clock frequency
* GD32VF103 RISC-V port with CSR_MCYCLE register this is incremented at
CPU clock frequency
* RP2040 ARMv6 port which uses the integrated timer peripheral which is
incremented with a fixed 1MHz frequency
* Use wait_us() instead of chSysPolledDelayX
...as it is powered by busy waiting now.
* Add chibios waiting methods test bench
2022-07-11 15:17:05 +02:00
Drashna Jaelre
f090881aeb
[Feature] Add support for multiple switchs/solenoids to Haptic Feedback engine ( #15657 )
2022-05-15 21:24:35 +10:00
Drashna Jaelre
787a68948f
[Core] Add Reboot keycode to core ( #15990 )
2022-05-14 13:35:49 +10:00
Joel Challis
b8245a5507
Expose API for hardware unique ID ( #16869 )
2022-04-18 20:51:40 +10:00
Ryan
c05e8afe45
Joystick feature updates ( #16732 )
...
* Joystick feature updates
* Move new functions to joystick.h
* Docs
2022-03-26 18:38:09 +00:00
Drashna Jaelre
fda5d98242
[Keymap] Fix onekey oled keymap ( #15751 )
2022-01-05 20:03:21 +00:00
Drashna Jaelre
9d235d4fc5
[Core] Change OLED task function to be boolean ( #14864 )
...
* [Core] Add kb level callbacks to OLED driver
* Update keyboards and keymaps
* Update docs
* Update userspace configs
* Add fix for my keymap ...
* update lefty
2021-11-02 09:42:50 +11:00