qmk-keychron-q3-colemak-dh/keyboards/handwired/tractyl_manuform/5x6_right/f303
Stefan Kerkmann 3c58f98929
[Core] PMW33XX drivers overhaul (#17613)
* 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-07-14 11:50:00 +02:00
..
config.h [Core] PMW33XX drivers overhaul (#17613) 2022-07-14 11:50:00 +02:00
f303.c
f303.h
halconf.h
mcuconf.h
readme.md
rules.mk

Drashna's Blackpill Tractyl Manuform (5x6) with a right side trackball

  • Split Hand Pin, using PC14

  • Full Duplex Serial/USART using PA9 and PA10 on USART1

  • DAC Audio using PA4 and PA5

  • PWM RGB using PA6 TIM3

  • pmw3360 sensor using PA5-PA7 on SPI2, with B as CS pin

  • 8KB SPI EEPROM chip sharing PB13-PB15 on SPI1 with PB9 as CS pin

  • Encoder using PA7 and PA8

  • SSD1306 OLED display (128x64) using PB6 and PB7 on I2C1

  • Keyboard Maintainer: Drashna Jael're

  • Hardware Supported: Design files, WeAct BlackPill (F411), PMW3360 Optical Sensor

Make example for this keyboard (after setting up your build environment):

make handwired/tractyl_manuform/5x6_right/f411:default

Flashing example for this keyboard:

make handwired/tractyl_manuform/5x6_right/f411:default:flash

See the build environment setup and the make instructions for more information. Brand new to QMK? Start with our Complete Newbs Guide.