diff options
-rw-r--r-- | docs/feature_pointing_device.md | 1 | ||||
-rw-r--r-- | drivers/sensors/pmw3360.c | 2 | ||||
-rw-r--r-- | drivers/sensors/pmw3360.h | 4 |
3 files changed, 7 insertions, 0 deletions
diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index 031ee52c1..bd7fb3658 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md | |||
@@ -150,6 +150,7 @@ The PMW 3360 is an SPI driven optical sensor, that uses a built in IR LED for su | |||
150 | |`PMW3360_SPI_LSBFIRST` | (Optional) Sets the Least/Most Significant Byte First setting for SPI. | `false` | | 150 | |`PMW3360_SPI_LSBFIRST` | (Optional) Sets the Least/Most Significant Byte First setting for SPI. | `false` | |
151 | |`PMW3360_SPI_MODE` | (Optional) Sets the SPI Mode for the sensor. | `3` | | 151 | |`PMW3360_SPI_MODE` | (Optional) Sets the SPI Mode for the sensor. | `3` | |
152 | |`PMW3360_SPI_DIVISOR` | (Optional) Sets the SPI Divisor used for SPI communication. | _varies_ | | 152 | |`PMW3360_SPI_DIVISOR` | (Optional) Sets the SPI Divisor used for SPI communication. | _varies_ | |
153 | |`PMW3360_LIFTOFF_DISTANCE` | (Optional) Sets the lift off distance at run time | `0x02` | | ||
153 | |`ROTATIONAL_TRANSFORM_ANGLE` | (Optional) Allows for the sensor data to be rotated +/- 30 degrees directly in the sensor. | `0` | | 154 | |`ROTATIONAL_TRANSFORM_ANGLE` | (Optional) Allows for the sensor data to be rotated +/- 30 degrees directly in the sensor. | `0` | |
154 | 155 | ||
155 | The CPI range is 100-12000, in increments of 100. Defaults to 1600 CPI. | 156 | The CPI range is 100-12000, in increments of 100. Defaults to 1600 CPI. |
diff --git a/drivers/sensors/pmw3360.c b/drivers/sensors/pmw3360.c index 2b27dccbb..7e830cdde 100644 --- a/drivers/sensors/pmw3360.c +++ b/drivers/sensors/pmw3360.c | |||
@@ -186,6 +186,8 @@ bool pmw3360_init(void) { | |||
186 | 186 | ||
187 | spi_write_adv(REG_Angle_Tune, constrain(ROTATIONAL_TRANSFORM_ANGLE, -30, 30)); | 187 | spi_write_adv(REG_Angle_Tune, constrain(ROTATIONAL_TRANSFORM_ANGLE, -30, 30)); |
188 | 188 | ||
189 | spi_write_adv(REG_Lift_Config, PMW3360_LIFTOFF_DISTANCE); | ||
190 | |||
189 | bool init_success = pmw3360_check_signature(); | 191 | bool init_success = pmw3360_check_signature(); |
190 | 192 | ||
191 | writePinLow(PMW3360_CS_PIN); | 193 | writePinLow(PMW3360_CS_PIN); |
diff --git a/drivers/sensors/pmw3360.h b/drivers/sensors/pmw3360.h index 7b2bef5b8..9aa8e13f8 100644 --- a/drivers/sensors/pmw3360.h +++ b/drivers/sensors/pmw3360.h | |||
@@ -46,6 +46,10 @@ | |||
46 | # endif | 46 | # endif |
47 | #endif | 47 | #endif |
48 | 48 | ||
49 | #ifndef PMW3360_LIFTOFF_DISTANCE | ||
50 | # define PMW3360_LIFTOFF_DISTANCE 0x02 | ||
51 | #endif | ||
52 | |||
49 | #ifndef ROTATIONAL_TRANSFORM_ANGLE | 53 | #ifndef ROTATIONAL_TRANSFORM_ANGLE |
50 | # define ROTATIONAL_TRANSFORM_ANGLE 0x00 | 54 | # define ROTATIONAL_TRANSFORM_ANGLE 0x00 |
51 | #endif | 55 | #endif |