* Added the ranges for the new ARK Murata IMUs and added the logic to the driver to handle it
* Ran make format
* sch16t fix COMP_ID
* Revert "sch16t fix COMP_ID"
This reverts commit 38bf02bc8616490a37a57257938086b8e8d5fa0f.
* sch16t add production k10 id
* Added B13 as REV_1
---------
Co-authored-by: Alex Klimaj <alex@arkelectron.com>
* adis16507: enhance driver to handle and recover from all failure modes
- Clean up driver
- Add optional hardware reset
- Fix scale and range for 125 deg/s variant
- Handle communication errors when read returns zeroes
- Improved perf counters
* change prints to PX4_DEBUG, define BURST_READ_CMD, do both soft and hard reset, use ScheduleNow instead of 1ms delay, change read/write stall period to SPI_STALL value
As the sensor can directly report the amount of samples in the fifo, use it to simplify the logic.
Also combine the fifo empty/fifo overflow checks for interrupt and polling modes.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
If DRDY signal is used, the interrupt status needs to be cleared at FIFO reset
in order to make DRDY go back inactive. Otherwise there won't be a falling edge
interrupt at the next sample.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
This prevents accidental misconfiguration via I2C if there are
multiple SPI devices on the same bus. The device may hear it's i2c address
and write some register, while there is data transfer ongoing with another
device.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
It turns out that when you rotate by 45 degrees, as required on the
CubeOrange+, then you can easily get into clipping because the vector
components are constrained after the rotation. In order to avoid that,
we have to avoid getting close to the int16 range and switch from 20 bit
resolution to 16bit resolution earlier.
Signed-off-by: Julian Oes <julian@oes.ch>
- new FIFO_RESET state used to give the sensor more time after successful configuration before sampling begins
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
This state is added to give extra time between FIFO flush command. Some icm42688p IMUs need more time between config -> FIFO reset -> FIFO read. More about the issue #20181