summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2025-11-30[CI] Format code according to conventions (#25828)QMK Bot2-3/+3
Format code according to conventions
2025-11-30Merge remote-tracking branch 'origin/master' into developQMK Bot24-89/+65
2025-11-30[CI] Format code according to conventions (#25827)QMK Bot24-89/+65
Format code according to conventions
2025-11-12Add PixArt PAW-3222 mouse sensor driver (#25763)ploopyco2-0/+221
2025-11-11Merge remote-tracking branch 'origin/master' into developQMK Bot17-60/+96
2025-11-11[Bugfix] QP error handling (#25591)Pablo Martínez17-60/+96
* change QP so that any func can return error (`void` -> `bool` returns)
2025-11-11Add I2C Transmit and Receive function (#25637)Drashna Jaelre1-0/+15
* feat: adds a transmit and receive i2c method * fix: address the i2c transmit and receive length on u16 * Add AVR/LUFA implementation Didn't add a progmem version, since that would only apply to receive. Figured it wasn't worth it, but can add. * Rearrange order of functions * Add docs * Fix doc gen error * Fix lint issues * fix more lint issues
2025-11-08Merge remote-tracking branch 'origin/master' into developQMK Bot1-1/+1
2025-11-08Fix pmw33xx sensor initialisation (#25777)Joel Challis1-1/+1
2025-10-07[QP] Minor cleanup and support for RGB888 surface (#25706)Pablo Martínez7-8/+159
Co-authored-by: Drashna Jaelre <drashna@live.com>
2025-09-09Merge remote-tracking branch 'origin/master' into developQMK Bot1-2/+2
2025-09-09docs: fix misspellings (#25555)François Magimel1-2/+2
* docs: fix misspellings * docs: do line breaks with HTML instead of spaces To remove trailing spaces and to avoid breaking things, line breaks can be done with the HTML br tag.
2025-09-09Update default OLED font (#25565)Ryan1-12/+252
2025-08-17Refactor battery driver (#25550)Joel Challis3-99/+13
2025-07-07Compilation fixes for `-fno-common` (#25436)Joel Challis9-9/+9
2025-06-14Add core handling for pointing device failures. (#25315)Dasky21-117/+128
2025-05-22Add `compiler_support.h` (#25274)Pablo Martínez4-7/+12
2025-05-12Fix Wear Leveling compilation (#25254)Joel Challis1-0/+1
2025-05-12Add raw_hid support to host driver (#25255)Joel Challis2-0/+10
2025-05-06Remove force disable of NKRO when Bluetooth enabled (#25201)Joel Challis2-0/+9
2025-05-05Bind Bluetooth driver to `host_driver_t` (#25199)Joel Challis3-53/+114
2025-05-05Add battery changed callbacks (#25207)Joel Challis2-0/+22
2025-04-21Implement connection keycode logic (#25176)Joel Challis2-84/+10
2025-04-19Remove `bluefruit_le_read_battery_voltage` function (#25129)Joel Challis2-25/+0
2025-04-13[chore]: move and rename mouse/scroll min/max defines (#25141)Stefan Kerkmann1-6/+6
* 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-03-26Fix outdated GPIO control function usage (#25060)jack1-8/+8
2025-03-21Non-volatile memory data repository pattern (#24356)Nick Brassel1-1/+1
* 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-06Add EOL to non-keyboard files (#24990)Joel Challis4-4/+4
2025-02-28Implement battery level interface (#24666)Joel Challis4-0/+149
Co-authored-by: Nick Brassel <nick@tzarc.org>
2025-02-17Created SH1107 driver for quantum painter (#24724)Steve Storck3-0/+307
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2025-01-26Unify spi_master headers (#24857)Ryan1-0/+116
* Move default config to .c file * Explicitly define PAL modes for boards with custom init * Unify spi_master headers
2025-01-26Unify i2c_master headers (#24846)Ryan1-0/+141
* Unify i2c_master headers * More documentation improvements * Reorganise PAL mode defaults
2025-01-26Unify UART headers (#24855)Ryan1-0/+62
* Remove deprecated defines * Move default config to .c files * Unify UART headers * Clean up docs * Reorganise PAL mode defaults
2025-01-25Relocate base WS2812 code (#24850)Ryan2-0/+0
2025-01-20LED drivers: remove deprecated defines (#24837)Ryan14-2537/+0
2025-01-13Bugfix and update for AT32F415 (#24807)HorrorTroll1-1/+1
2025-01-10Azoteq - improve I2C behaviour while polling. (#24611)Dasky2-32/+26
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2025-01-08Patch up issue when compile with APA102 driver (#24800)HorrorTroll2-2/+2
2024-10-25Move pointing device driver code (#24445)Dasky18-8/+497
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-10-18[Core] `usb_device_state`: consolidate usb state handling across ↵Stefan Kerkmann1-1/+1
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-12Rename RGB and HSV structs (#24471)Ryan3-5/+5
2024-10-06WS2812 API rework (#24364)Ryan2-13/+47
* 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-06Remove binary blobs from optical sensors. (#24428)Dasky6-789/+61
* remove pmw srom * remove adns9800 srom * Update drivers/sensors/pmw33xx_common.c
2024-09-26Merge remote-tracking branch 'origin/master' into developQMK Bot1-0/+2
2024-09-26input_club/ergodox_infinity ST7565 call spi_stop (#24429)Eric1-0/+2
2024-09-18Merge remote-tracking branch 'origin/master' into developQMK Bot1-8/+10
2024-09-18Fix ADNS-9800 read (#24406)Dasky1-8/+10
2024-09-18Add LD7032 support to QP. (#20828)Dasky3-0/+522
Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2024-08-26Add ability to poweroff ADNS5050 sensor (#24223)Colin Kinloch2-0/+16
* Add ability to poweroff ADNS5050 sensor * ploopyco/trackball_nano: Poweroff ADNS5050 on suspend
2024-07-03Normalise mouse keycodes (#23975)Ryan1-1/+1