- at start perform full sensor signal path reset and wait for max time
- issue full sensor reset on any error
- only allocate DRDY perf counter if GPIO is available
- allow running faster than accel ODR (safe limit of 2 kHz in place)
- perform full sensor signal path reset and wait for max time (100 ms)
- issue full sensor reset on any error
- always read FIFO count before transfersj
- only allocate drdy perf counter if GPIO is available
- perform full sensor signal path reset and wait for max time (100 ms)
- issue full sensor reset on any error
- always read FIFO count before transfersj
- only allocate drdy perf counter if GPIO is available
- IMU integration move from drivers (PX4Accelerometer/PX4Gyroscope) to sensors/vehicle_imu
- sensors: voted_sensors_update now consumes vehicle_imu
- delete sensor_accel_integrated, sensor_gyro_integrated
- merge sensor_accel_status/sensor_gyro_status into vehicle_imu_status
- sensors status output minor improvements (ordering, whitespace, show selected sensor device id and instance)
This is a workaround for a warning in GCC 10.1:
src/drivers/gps/devices/src/ubx.cpp:520:8: error: writing 4 bytes into a
region of size 0 [-Werror=stringop-overflow=]
Also see:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91707
- this is done to minimize real end-to-end latency
- actual pulse width only updated for next period regardless of output module
- add cycle interval perf counter
- always check with state machine before reboot/shutdown
- respect BOARD_HAS_POWER_CONTROL (shutdown from command, low battery, power button)
- px4_shutdown_request add optional delay and always execute from HPWORK
- px4_shutdown_request split out px4_reboot_request
- increased REP_XY and REP_Z: improves accuracy a bit, while increasing
measurement time (still allows to go to 50Hz, previous max was 100Hz)
- avoid extra transfer in measure()
- extend regdump output
- general code style cleanup
- 30Hz is the sensors max update rate in continous mode
(though not in forced mode as we are using it)
- 30Hz allows to increase the quality of the measurements
- create common uORB::PublicationBase
- uORB::PublicationQueued types are now type aliases
- ORB_PRIO use enum type everywhere to avoid accidental misuse
- PX4Accelerometer/PX4Gyroscope/etc driver libs explicitly advertise on construction, unadvertise on destruction. This is a workaround for any potential issues that might appear when accel/gyro cdev and uORB indexing doesn't align.