Daniel Agar
ae3070bbf1
ekf2: make filter update period configurable
...
- introduces new parameter EKF2_PREDICT_US to configure the filter
update period in microseconds
- actual filter update period will be an integer multiple of IMU
2022-01-26 10:57:09 -05:00
Daniel Agar
3f25349eb9
commander: don't reject VEHICLE_CMD_DO_SET_ACTUATOR
2022-01-25 18:44:58 -05:00
Daniel Agar
8d03e71c16
drivers/magnetometer/bosch/bmm150: init and self test improvements
...
- if self test fails consistently proceed with startup, but report failure
2022-01-24 16:16:03 -05:00
Daniel Agar
8217e0f335
drivers/magnetometer/bosch/bmm150: add self test fail perf counter to status
2022-01-24 13:06:32 -05:00
Daniel Agar
5ded1aedcb
sensors/vehicle_angular_velocity: add IMU_GYRO_DNF_HMC to configure number of ESC RPM notch filter harmonics
2022-01-24 09:23:03 -05:00
Daniel Agar
07e6c274d5
uavcan/uavcannode: bridge LogMessage and PX4 ORB_ID(log_message_s)
2022-01-23 20:21:39 -05:00
Daniel Agar
4de9c598fa
bmm150: retry probe up to 3 times
2022-01-21 15:51:43 -05:00
Daniel Agar
7cb8ed3a1f
sensors/vehicle_gps_position: don't work with 64 time with 32 bit floats
2022-01-21 09:18:49 -05:00
Daniel Agar
446729566d
platforms/nuttx: px4io_serial always cleanup DMA before next bus exchange
...
- this really shouldn't be necessary, but worst case it's harmless and
much better than potentially falling out of the sky
2022-01-19 18:00:18 -05:00
Daniel Agar
92a5bbe97f
ekf2: improve ring buffer sizing and dynamically allocate
2022-01-19 09:04:53 -05:00
Daniel Agar
36605bfff6
sensors: lower SENS_MAG_RATE default
...
- reduce estimator 3D mag fusion cpu load (-3% on Pixhawk4)
2022-01-19 08:51:57 -05:00
Daniel Agar
dd6b7fa98f
sensors: switch status PX4_INFO -> PX4_INFO_RAW
2022-01-18 15:00:18 -05:00
Daniel Agar
b1d2a0cc4e
sensors: simplify timestamp data validator handling
2022-01-18 14:57:18 -05:00
Daniel Agar
8067207ea6
px4_work_queue: rename serial port WQs
2022-01-18 14:56:15 -05:00
Daniel Agar
7eee949a81
Jenkins: hardware tolerate irrelevant uorb status failure
2022-01-18 12:23:05 -05:00
Daniel Agar
548b7d5ece
sensors/vehicle_imu: on calibration change don't resume in flight calibration learning immediately
2022-01-18 11:22:41 -05:00
Daniel Agar
ece09064c4
parameters: perform verification pass twice
...
- on NuttX with MTD storage this is to ensure we are verifying what's
actually stored on ramtron or eeprom, not just what's cached by bchlib
2022-01-18 09:47:28 -05:00
Daniel Agar
2fb82789fe
lib/wind_estimator: pass q_att as const reference
2022-01-17 16:59:28 -05:00
Daniel Agar
98a9748bb8
drivers/dshot: use uORB::PublicationMulti for ORB_ID(esc_status)
...
- there can be multiple different outupt modules publishing esc_status (eg dshot & uavcan)
2022-01-14 12:17:49 -05:00
Daniel Agar
81ecd130fc
uavcan: ESC publish esc_status in callback instead of timer
...
- this ensures every ESC status gets published with minimal latency
- also prevents publishing ORB_ID(esc_status) when there's no actual
data (bug)
2022-01-14 12:17:49 -05:00
Daniel Agar
bb1177d504
sensor_calibration: refactor and centralize calibration slot logic
...
- centralize logic for selecting a preferred calibration slot
- automatically use existing calibration slot if it exists, otherwise
find first available slot, with a preference for a requested index
- existing commander calibration methods rewrite all calibration slots
to match current sensor ordering
2022-01-12 16:16:26 -05:00
Daniel Agar
463513f31f
Jenkins: hardware disable auto cal before on board tests
2022-01-11 11:47:02 -05:00
Daniel Agar
2eec7842ae
sensors/vehicle_imu: fix SENS_IMU_AUTOCAL saving logic
...
- on cycles that don't check for updated calibraton (estimated bias) we
check if there's anything valid to save (when disarmed)
2022-01-11 11:47:02 -05:00
Daniel Agar
cc1fee525a
lib/sensor_calibration: handle calibration slot change on parameter update
2022-01-10 17:16:50 -05:00
Daniel Agar
ab547bb982
sensors/vehicle_angular_velocity: RPM notch don't fully disable if first harmonic frequency drops below minimum frequency
...
- keep higher frequency harmonics enabled per ESC
- cleanup timestamp handling (timeouts, etc)
2022-01-10 14:51:29 -05:00
Daniel Agar
b58922a5d7
sensors/vehicle_angular_velocity: notch filters automatically reset on sufficient parameter change
2022-01-10 14:51:29 -05:00
Daniel Agar
7d632254be
NotchFilter push initialization/reset into filter
...
- this simplifies the reset by allowing a notch filter to reset as
needed
- improves cascade initialization, on reset each filter will reset
properly from the previous
2022-01-10 14:51:29 -05:00
Daniel Agar
2e2ac36cab
drivers/uavcan: make firmware server available on both CAN1/CAN2 always (if enabled)
...
- uavcan firmware server no longer shuts down when arming (nodes might restart in flight)
- always handle UAVCAN parameters with or without the FW server active
- remove legacy ESC enumeration in FW server
2022-01-10 11:13:02 -05:00
Daniel Agar
d9e7315420
sensors: automatically set initial accel/gyro calibration if stable bias available
2022-01-10 10:46:37 -05:00
Daniel Agar
e731fcdbc0
sensors (accel/gyro/mag) determine if external with device id
2022-01-10 10:31:07 -05:00
Daniel Agar
45040be669
ekf2: accel/gyro/mag sensor cal minor cleanup
...
- cleanup obsolete comments
- remove debug helpers
- add additional variance requirements to mag bias stable (matching accel & gyro)
2022-01-10 09:55:59 -05:00
Daniel Agar
c3ca40a98f
drivers/px4io: delete monitor command
...
- the px4io console isn't even connected on most flight controllers
2022-01-10 09:51:11 -05:00
Daniel Agar
e5d49f6fff
drivers/px4io: delete unused detect
2022-01-10 09:51:11 -05:00
Daniel Agar
d077ca15fb
delete PWM_SERVO_SET, PWM_SERVO_SET_MODE, systemcmds/motor_ramp, and pwm_out test
2022-01-10 09:51:11 -05:00
Daniel Agar
df44df2df6
delete systemcmds/esc_calib
...
- this is redundant with commander esc_calibration
2022-01-10 09:51:11 -05:00
Daniel Agar
03bdc460d8
drivers/px4io: PWM_SERVO_GET_FAILSAFE_PWM don't get registers directly
2022-01-10 09:51:11 -05:00
Daniel Agar
d3301ba826
delete PWM_SERVO_GET_TRIM_PWM
2022-01-10 09:51:11 -05:00
Daniel Agar
8de59dad32
delete PWM_SERVO_SET_TERMINATION_FAILSAFE
2022-01-10 09:51:11 -05:00
Daniel Agar
1739ecc981
delete PWM_SERVO_SET_FORCE_FAILSAFE
2022-01-10 09:51:11 -05:00
Daniel Agar
649d3e3f55
delete PWM_SERVO_SET_DISABLE_LOCKDOWN/PWM_SERVO_GET_DISABLE_LOCKDOWN
2022-01-10 09:51:11 -05:00
Daniel Agar
b7ed4fd3e0
delete PWM_SERVO_SET_DISARMED_PWM
2022-01-10 09:51:11 -05:00
Daniel Agar
551a31ce2f
delete PWM_SERVO_SET_FAILSAFE_PWM
2022-01-10 09:51:11 -05:00
Daniel Agar
daa925137c
boards: move default battery calibration defines to parameter defaults
2022-01-10 09:49:36 -05:00
Daniel Agar
78b3d22471
lib/mixer_module: consume output_limit library
2022-01-10 11:59:55 +01:00
Daniel Agar
71d8b15b73
commander: fix COM_HOME_EN missing case
...
- VEHICLE_CMD_COMPONENT_ARM_DISARM is yet another path that calls set_home_position()
2022-01-09 20:52:07 -05:00
Daniel Agar
0b1402afe2
Tools/HIL/test_airframes.sh enable all mavlink and GPS
2022-01-08 18:11:43 -05:00
Daniel Agar
6c97700eaa
move sensor calibration parameters to yaml
2022-01-07 19:00:41 -05:00
Daniel Agar
c17a9e8003
sensors/vehicle_imu: refactor SensorCalibrationUpdate() to separate accel/gyro cal saving
2022-01-07 09:40:51 -05:00
Daniel Agar
aec97e0020
sensors: minor IMU bias saving updates
...
- sensors/vehicle_imu: reset learned cal on any calibration change
during parameter update
- sensors/vehicle_imu: cleanup logic estimated bias -> calibration offset
saving
- don't invalidate saved calibration (the point is to keep the last valid)
- remove old debug code, etc
- sensors/vehicle_imu: notify parameter changes if accel or gyro
calibration has changed
- lib/sensor_calibration: add calibrated() and calibration_index()
getters, keep Accelerometer/Gyroscope/Magnetometer in sync
2022-01-07 09:40:51 -05:00
Daniel Agar
30ccfdb2ed
sensors/vehicle_magnetomeer: fix copyright year
2022-01-06 20:27:56 -05:00
Daniel Agar
170849c8f8
ekf2: expand accel bias stability criteria
2022-01-04 13:57:49 -05:00
Daniel Agar
e835a7c4ea
boards: enable readline history and tab completion on newer boards
2022-01-03 10:44:32 -05:00
Daniel Agar
9d1558af25
ekf2: selector use status timestamp for timeout rather than timestamp_sample (delayed time horizon)
...
- update stale checks for publication to use hrt elapsed time from
timestamp sample
2022-01-03 09:20:44 -05:00
Daniel Agar
333edfe12f
ekf2: use delayed IMU timestamp for publication's timestamp_sample
2022-01-03 09:20:44 -05:00
Daniel Agar
35502c249d
ekf2: don't use Vectors for height innovations (baro, rng, etc)
2022-01-03 09:20:20 -05:00
Daniel Agar
75bb2f8dd2
Jenkins: hardware temporarily tolerate sd_bench failures on px4_fmu-v5_debug
2022-01-02 14:47:52 -05:00
Daniel Agar
673d4544d1
parameters: verify param backup after export
2022-01-02 10:46:34 -05:00
Daniel Agar
8e26b33009
tinybson: file write error add more detail
2022-01-02 10:46:34 -05:00
Daniel Agar
80ef6e19df
tinybson: explicitly append int32 or int64
2022-01-02 10:46:34 -05:00
Daniel Agar
9cbb5c9920
parameters: fix export shutdown locking
...
- in NuttX bchlib keeps a sector sized buffer that might not be written
out to RAMTRON until the file is closed
2022-01-02 10:46:34 -05:00
Daniel Agar
2153710917
Tools/HIL/monitor_firmware_upload.py don't fail on any ERROR
...
- on first boot we only care that it completes (gets to nsh prompt)
2022-01-02 10:05:30 -05:00
Daniel Agar
c421bff73c
Tools/HIL: use pyserial spy:// to log all serial traffic and dump on failure
2022-01-01 22:25:29 -05:00
Daniel Agar
7df1721d32
ROMFS: rcS disable simplistic SD I/O test
...
- this was added when trying to identify SD card issues at boot and
trigger a format, but didn't provide any value
2022-01-01 18:43:27 -05:00
Daniel Agar
f76aa0e772
cmake: NuttX ARMV7M_STACKCHECK skip ekf2
...
- px4_fmu-v5_stackcheck switch from icm20689 -> bmi055 (lower rate)
- this is to make performance tolerable
2022-01-01 18:43:27 -05:00
Daniel Agar
e9283d90cc
systemcmds/netman: fix code style
2022-01-01 18:40:47 -05:00
Daniel Agar
0029317e55
Jenkins: hardware additional reboots no longer required
2022-01-01 14:06:05 -05:00
Daniel Agar
439ad7daea
Jenkins: hardware disable calib_delay (too slow) and manual SD format
2022-01-01 12:10:28 -05:00
Daniel Agar
501474993e
Tools/HIL: default to USB UART if available
2022-01-01 10:49:30 -05:00
Daniel Agar
77b65ee564
boards: px4_fmu-v5_debug disable stack check
...
- this is redundant with px4_fmu-v5_stackcheck
2021-12-31 19:34:18 -05:00
Daniel Agar
247b975675
Tools/HIL: disable XON/XOFF, consistent timeouts, proper input buffer clear
2021-12-31 19:28:40 -05:00
Daniel Agar
03371f8522
NuttX with bch flush backport
2021-12-31 10:59:56 -08:00
Daniel Agar
1b6700592b
parameters: require valid BSON document size
2021-12-30 16:36:23 -05:00
Daniel Agar
3514458f42
Tools/HIL/test_airframes.sh: dump all parameter storage after bootup to verify contents
2021-12-30 12:43:00 -05:00
Daniel Agar
b06215d038
Tools/HIL/test_airframes.sh: run param dump after save to verify BSON
2021-12-30 11:11:14 -05:00
Daniel Agar
6706d9b434
Jenkins: always fully clean git workspace
2021-12-29 17:14:11 -05:00
Daniel Agar
6d0339ba0c
I2CSPIDriverBase: sensor start failure ERROR if internal, WARN if external
2021-12-28 11:05:35 -05:00
Daniel Agar
990d7c159d
pwm_out: cleanup and prep for linux compatibility
2021-12-28 11:04:00 -05:00
Daniel Agar
10f4a2e91f
boards: omnibus_f4sd_default disable systemcmds to save flash
2021-12-27 12:19:55 -05:00
Daniel Agar
3ef9c2d16c
boards: holybro_kakutef7_default disable modules/gyro_calibration to save flash
2021-12-27 12:19:55 -05:00
Daniel Agar
d94767ef88
cmake: NuttX use cygwin friendly path for linker script
2021-12-27 12:19:12 -05:00
Daniel Agar
3f17acdcc9
boards: mro_ctrl-zerl-h7-oem pin fixes (sync with mro_ctrl-zero-h7)
2021-12-27 09:25:21 -05:00
Daniel Agar
0f4e1dd9f9
boards: mro ctrl-zero-h7 pin fixes
2021-12-27 09:25:21 -05:00
Daniel Agar
236794235a
parameters: export empty BSON document even if there are no parameters to save
...
- otherwise a 'param reset_all' won't be saved until a parameter is changed
2021-12-27 09:17:00 -05:00
Daniel Agar
33d7b42040
parameters: import quietly retry if there's no data (as a precuation)
2021-12-27 09:17:00 -05:00
Daniel Agar
20d3e6f4e1
parameters: add simple BSON verification pass after export
2021-12-27 09:17:00 -05:00
Daniel Agar
98d706772e
boards: px4_fmu-v2_rover disable events module to save flash
2021-12-24 20:06:13 -05:00
Daniel Agar
712353ea56
gyro_calibration: increase required samples (to be more conservative)
...
- make sure variance is checked across all available sensors
2021-12-24 19:53:44 -05:00
Daniel Agar
3f3836afa8
parameters: simplify import mark_unsaved and don't fail bson decode unnecessarily
2021-12-24 14:32:40 -05:00
Daniel Agar
d1cd4904dc
parameters: param_value_is_default avoid locking if value unchanged
2021-12-24 14:32:40 -05:00
Daniel Agar
c0b8f2952c
parameters: param_get_default_value avoid locking if value is static default
2021-12-24 14:32:40 -05:00
Daniel Agar
27a113ecab
parameters: param_get avoid locking if value is static default
2021-12-24 14:32:40 -05:00
Daniel Agar
cd8ce4d01e
parameters: remove obsolete perf_end
2021-12-24 14:32:40 -05:00
Daniel Agar
38731662c6
parameters use bitset for mark_unsaved
2021-12-24 14:32:40 -05:00
Daniel Agar
0e0639a5bf
Jenkins: hardware don't tolerate logger failures
2021-12-24 14:31:21 -05:00
Daniel Agar
b054fc7b8b
navigator: trivial code style fix
2021-12-24 10:55:20 -05:00
Daniel Agar
00eae055ac
lib/sensor_calibration: don't save uninitialized priority parameter immediately
2021-12-23 17:49:11 -05:00
Daniel Agar
e694fa906b
tinybson: add more error output on node name overflow
2021-12-23 17:45:50 -05:00
Daniel Agar
47d6a6c63d
Tools/HIL/test_airframes.sh dump parameters before reboot (for verification)
2021-12-23 17:45:50 -05:00
Daniel Agar
14c2225b1c
ROMFS: rcS dump parameter backup contents before using
...
- this is mainly for debug comparion
2021-12-23 17:45:50 -05:00
Daniel Agar
38af93085b
linux_pwm_out: use PWM_MAIN parameter prefix
...
- this keeps things simpler for now across the old and new output
configuration
2021-12-23 15:57:11 -05:00