invensense icm20602 improvements

- checked register mechanism and simple watchdog
    - driver checks for errors gradually and can reconfigure itself
 - respect IMU_GYRO_RATEMAX at the driver level
 - fixed sensor INT16_MIN and INT16_MAX handling (y & z axis are flipped before publishing)
 - increased sensor_gyro_fifo max size (enables running the driver much slower, but still transferring all raw data)
 - PX4Accelerometer/PX4Gyroscope remove unnecessary memsets
This commit is contained in:
Daniel Agar
2020-02-18 19:21:20 -05:00
parent 40921241e7
commit 22499effb9
12 changed files with 423 additions and 177 deletions
@@ -50,13 +50,13 @@ namespace wq_configurations
{
static constexpr wq_config_t rate_ctrl{"wq:rate_ctrl", 1600, 0}; // PX4 inner loop highest priority
static constexpr wq_config_t SPI0{"wq:SPI0", 1900, -1};
static constexpr wq_config_t SPI1{"wq:SPI1", 1900, -2};
static constexpr wq_config_t SPI2{"wq:SPI2", 1900, -3};
static constexpr wq_config_t SPI3{"wq:SPI3", 1900, -4};
static constexpr wq_config_t SPI4{"wq:SPI4", 1900, -5};
static constexpr wq_config_t SPI5{"wq:SPI5", 1900, -6};
static constexpr wq_config_t SPI6{"wq:SPI6", 1900, -7};
static constexpr wq_config_t SPI0{"wq:SPI0", 2000, -1};
static constexpr wq_config_t SPI1{"wq:SPI1", 2000, -2};
static constexpr wq_config_t SPI2{"wq:SPI2", 2000, -3};
static constexpr wq_config_t SPI3{"wq:SPI3", 2000, -4};
static constexpr wq_config_t SPI4{"wq:SPI4", 2000, -5};
static constexpr wq_config_t SPI5{"wq:SPI5", 2000, -6};
static constexpr wq_config_t SPI6{"wq:SPI6", 2000, -7};
static constexpr wq_config_t I2C0{"wq:I2C0", 1400, -8};
static constexpr wq_config_t I2C1{"wq:I2C1", 1400, -9};