summaryrefslogtreecommitdiff
path: root/drivers/sensors/pmw3360.c
AgeCommit message (Collapse)Author
2022-07-14[Core] PMW33XX drivers overhaul (#17613)Stefan Kerkmann
* PMW33XX drivers overhaul This combines the PMW3389 and PM3360 drivers as they only differ in the firmware blobs and CPI get and set functions. The following changes have been made: * PMW3389 now gets the same multi-sensor feature that is already available on the PMW3360. * Introduced a shared pmw33xx_report_t struct is now directly readable via SPI transactions instead of individual byte-sized reads, saving multiple copies and bitshift operations. * pmw33(89/60)_get_report functions had unreachable branches in their motion detection logic these have been simplied as much as possible. * The fast firmware upload option has been removed as this becomes obsolete by the newly introduced polled waiting functions for ChibiOS polled waiting * PMW33(60/89)_SPI_LSBFIRST and PMW33(60/89)_SPI_MODE config options have been removed as they don't need to be configurable. * All PMW3389 and PMW3360 defines have been unified to a PMW33XX prefix to reduce code duplication and make the defines interchangeable * Adjust keyboards to PMW33XX naming scheme
2022-04-19Add support for multiple sensors to pmw3360 (#15996)uqs
2022-02-12Format code according to conventions (#16322)QMK Bot
2022-01-20[Bug][Core] Fix optical sensor firmware upload (#15919)Drashna Jaelre
2022-01-11Add PMW3389 optical sensor Support (Updated) (#15740)Alabastard-64
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-01-10Optimize initialization of PMW3360 Sensor (#15821)Drashna Jaelre
2022-01-02Format code according to conventions (#15705)QMK Bot
2022-01-02Update pmw3360 comments to match the datasheet better, fix delays. (#15682)uqs
2021-12-27pwm3360 driver cleanup and diff reduction to adns9800 (#15559)uqs
* Diff reduction between ADNS9800 and PMW3360 drivers. They are very similar devices. This (somewhat) unreadable diff is essentially a no-op, but it makes a `vimdiff` between the 2 drivers much more readable. * Cleanup pwm3360 driver some more. Remove redundant calls to spi_start() and spi_stop(), as pmw3360_write() will already call these.
2021-12-27Fix for SPI write timing in PMW3360 driver (#15519)Alabastard-64
Timing does not match Pixart documentation for this sensor (may have been carried forward from adns9800). Not aware of any issues coming from this currently. It should only cause issues when writing to multiple registers in succession which currently only happens during initialization for the PMW3360. This should prevent future issues with write operations if other features of the sensor are added.
2021-12-15Merge remote-tracking branch 'origin/master' into developQMK Bot
2021-12-15[Core] Fix Sensor driver code (#15484)Drashna Jaelre
2021-12-11Merge remote-tracking branch 'origin/master' into developDrashna Jael're
2021-12-08[Core] Add configuration of PMW3360 lift off distance (#15424)Xelus22
* sensor code add * update documentation * add default #define * Update drivers/sensors/pmw3360.c Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-12-08Expand rotational range for PMW3360 Optical Sensor (#15431)Drashna Jaelre
2021-11-14Rework and expand Pointing Device support (#14343)Drashna Jaelre
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2021-11-01Manually format develop (#15003)Joel Challis
2021-10-24Tidy up ADNS9800 and PMW3360 firmware blobs (#14936)Ryan
2021-08-20Improve pmw3360 sensor and make it more hardware agnostic (#14097)Drashna Jaelre
2021-08-13Fix pmw3360 code to only output debug info if mouse debugging is enabled ↵Drashna Jaelre
(#13993)
2021-06-21Move optical sensor code to drivers folder (#13044)Drashna Jaelre