Allow overriding the spi clock speed for icm42688 (#13346)
commit3726df1b71ad19e1cc7a5938e078be3d46ab3631
authorJames <james.kingdon@gmail.com>
Thu, 8 Feb 2024 14:17:25 +0000 (8 09:17 -0500)
committerGitHub <noreply@github.com>
Thu, 8 Feb 2024 14:17:25 +0000 (8 15:17 +0100)
treef92ef10a8a28da4f90814e08efb9d02be7b63166
parent744ab454b1d2ffd6ba5a6d131bc5e92e1aabb28b
Allow overriding the spi clock speed for icm42688 (#13346)

There was a report of glitches on the raw gyro output of an icm42688
which were resolved by reducing the the SPI clock speed. I don't think
a single report justifies changing the default speed or even adding a
CLI command to make it configurable, but it's relatively low impact to
allow the speed to be set at compile time by passing the value via
EXTRA_FLAGS and this will make it easier to see if changing the speed
solves any future cases that might turn up. Passing the original macro
name caused the cloud builds to fail, so this PR introduces a new, shorter
macro for setting the override value; ICM426XX_CLOCK

When passing a value for a macro through EXTRA_FLAGS for a manual compile
we need to use single quotes, e.g. to set 12MHz we could use

-D'ICM426XX_CLOCK=12000000'

When using the configurator to start a cloud build the value can be placed
in the "Custom Defines" text box as

ICM426XX_CLOCK=12000000

(or whatever value is desired)
src/main/drivers/accgyro/accgyro_spi_icm426xx.c