Pablo Martínez
955809bd5a
Add compiler_support.h
( #25274 )
2025-05-22 23:31:15 +10:00
Joel Challis
3e7ce54902
Fix Wear Leveling compilation ( #25254 )
2025-05-12 08:39:38 +10:00
Joel Challis
88c094908b
Add raw_hid support to host driver ( #25255 )
2025-05-12 08:38:48 +10:00
Joel Challis
ab1332bb6c
Remove force disable of NKRO when Bluetooth enabled ( #25201 )
2025-05-06 06:47:44 +01:00
Joel Challis
842c840145
Bind Bluetooth driver to host_driver_t
( #25199 )
2025-05-05 04:05:04 +01:00
Joel Challis
5611a40064
Add battery changed callbacks ( #25207 )
2025-05-05 03:28:33 +01:00
Joel Challis
c7cb7ba976
Implement connection keycode logic ( #25176 )
2025-04-21 22:27:56 +01:00
Joel Challis
ce8b8414d9
Remove bluefruit_le_read_battery_voltage
function ( #25129 )
2025-04-19 22:52:25 +01:00
Stefan Kerkmann
a7bf8e64a5
[chore]: move and rename mouse/scroll min/max defines ( #25141 )
...
* protocol: move {XY/HV}_REPORT_{MIN,MAX} into report.h
..to allow easier re-use in other code implementations.
* protocol: rename {XY/HV}_REPORT_{MIN/MAX} to MOUSE_REPORT_{XY/HV}_{MIN/MAX}
..to avoid naming collisions.
2025-04-13 18:36:13 +02:00
jack
86c22a15ab
Fix outdated GPIO control function usage ( #25060 )
2025-03-26 07:51:56 +00: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
6e1d3d6d07
Add EOL to non-keyboard files ( #24990 )
2025-03-06 23:17:51 +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
Steve Storck
c00b0c5bc9
Created SH1107 driver for quantum painter ( #24724 )
...
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2025-02-17 08:41:07 +11:00
Ryan
ee63d39058
Unify spi_master headers ( #24857 )
...
* Move default config to .c file
* Explicitly define PAL modes for boards with custom init
* Unify spi_master headers
2025-01-26 22:37:37 +01:00
Ryan
ef29a46c87
Unify i2c_master headers ( #24846 )
...
* Unify i2c_master headers
* More documentation improvements
* Reorganise PAL mode defaults
2025-01-26 13:48:46 +01:00
Ryan
291d154d7b
Unify UART headers ( #24855 )
...
* Remove deprecated defines
* Move default config to .c files
* Unify UART headers
* Clean up docs
* Reorganise PAL mode defaults
2025-01-26 13:46:46 +01:00
Ryan
a6e931400e
Relocate base WS2812 code ( #24850 )
2025-01-25 17:38:12 +11:00
Ryan
47575d4af1
LED drivers: remove deprecated defines ( #24837 )
2025-01-20 15:30:19 +00:00
HorrorTroll
7f1c236c75
Bugfix and update for AT32F415 ( #24807 )
2025-01-13 21:20:36 -08:00
Dasky
62e98327d2
Azoteq - improve I2C behaviour while polling. ( #24611 )
...
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2025-01-10 17:29:58 -08:00
HorrorTroll
c1565bebce
Patch up issue when compile with APA102 driver ( #24800 )
2025-01-08 08:51:28 -08: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
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
Ryan
6129af93f4
Rename RGB and HSV structs ( #24471 )
2024-10-12 00:10:02 +01: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
Dasky
43e82ed5c7
Remove binary blobs from optical sensors. ( #24428 )
...
* remove pmw srom
* remove adns9800 srom
* Update drivers/sensors/pmw33xx_common.c
2024-10-06 20:41:55 +13:00
QMK Bot
928b5fdf50
Merge remote-tracking branch 'origin/master' into develop
2024-09-26 18:44:11 +00:00
Eric
805cde674d
input_club/ergodox_infinity ST7565 call spi_stop ( #24429 )
2024-09-26 11:43:39 -07:00
QMK Bot
17be3e4a54
Merge remote-tracking branch 'origin/master' into develop
2024-09-18 14:46:48 +00:00
Dasky
1c03574424
Fix ADNS-9800 read ( #24406 )
2024-09-18 15:46:13 +01: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
Colin Kinloch
cc3bc2af11
Add ability to poweroff ADNS5050 sensor ( #24223 )
...
* Add ability to poweroff ADNS5050 sensor
* ploopyco/trackball_nano: Poweroff ADNS5050 on suspend
2024-08-26 14:06:53 -06:00
Ryan
f8596b40a4
Normalise mouse keycodes ( #23975 )
2024-07-03 18:35:54 +10:00
Ryan
bc0c69570b
Rename encoder pins defines ( #24003 )
2024-07-03 17:18:27 +10:00
Nick Brassel
7bc3eef8cc
SPI flash API cleanup, add async erase capability. ( #23894 )
2024-07-02 10:16:41 +10:00
Dasky
a7aa58cc81
Change ADNS9800 and PMW33XX SROM uploads to opt in. ( #24001 )
...
Make SROM upload optional
2024-06-27 05:10:13 +01:00
Ryan
55538b2e1e
APA102: API rework ( #23355 )
2024-06-13 22:19:45 +10:00
Fernando Birra
a82b0628b3
GC9xxx LCD family drivers (GC9107 and GC9A01) ( #23091 )
...
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: jack <0x6A73@pm.me>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: フィルターペーパー <76888457+filterpaper@users.noreply.github.com>
Co-authored-by: rookiebwoy <81021475+rookiebwoy@users.noreply.github.com>
Fixup boardsource/equals (#23106 )
Fix make clean test:os_detection (#23112 )
Fix make clean test:os_detection (#23112 )"
Fixup boardsource/equals (#23106 )"
2024-06-05 08:41:26 +10:00
Purdea Andrei
267dffda15
EEPROM: Don't erase if we don't have to. Adding eeprom_driver_format abstraction. ( #18332 )
2024-05-28 12:49:55 +01:00
Michael Büchler
a850f7d695
Fix PS/2 Trackpoint mouse clicks ( #22265 ) ( #23694 )
2024-05-21 00:36:48 +01:00
Ryan
d0cf7b8519
Update GPIO expander API naming ( #23375 )
2024-03-29 16:57:21 +00:00
Ryan
f7cf40fa77
Add init function to RGBLight driver struct ( #23076 )
2024-03-18 22:03:27 +11:00
Ryan
23b7a02ebe
LED drivers: add support for IS31FL3236 ( #23264 )
2024-03-17 19:23:14 +11:00
Ryan
c371cb3bc4
IS31FL3729 updates ( #23109 )
2024-02-22 17:51:49 +11:00
Drashna Jaelre
66780783c7
[Bug] Fix pmw33xx sensor corruption on get-cpi call ( #23116 )
2024-02-20 11:36:28 +11:00
Nick Brassel
9d9cdaaa2d
Add encoder abstraction. ( #21548 )
2024-02-18 21:17:15 +11:00
Ryan
2d1aed78a6
Update GPIO macro usages in core ( #23093 )
2024-02-18 17:08:27 +11:00
Pablo Martínez
5383335717
[Driver] ILI9486 on Quantum Painter ( #18521 )
...
Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-02-17 18:36:05 +11:00
HorrorTroll
f6709e65eb
Add RGB matrix & LED Matrix support for IS31FL3729 ( #21944 )
...
Co-authored-by: Xelus22 <preyas22@gmail.com>
Co-authored-by: dexter93 <d3xter93@gmail.com>
2024-02-17 01:41:35 +11:00