Commit Graph

115 Commits

Author SHA1 Message Date
Daniel Agar 763c3b8fda boards: start enabling multi-EKF by default on F7/H7 2021-01-10 17:56:34 +01:00
Daniel Agar bc1e9f72f7 Jenkins hardware temporarily remove px4_fmu-v2 2021-01-04 09:30:47 -05:00
Daniel Agar 4f62355dec
msg: new estimator_status_flags message for more accessible ekf2 status logging
- log all estimator (ekf2) flags as separate booleans in a new dedicated low rate message (only publishes at 1 Hz or immediately on any change)
 - this is a bit verbose, but it avoids the duplicate bit definitions we currently have across PX4 msgs, ecl analysis script, flight review, and many other custom tools and it's much easier for casual log review in FlightPlot, PlotJuggler, csv, etc
 - for compatibility I've left estimator_status filter_fault_flags, innovation_check_flags, and solution_status_flags in place, but they can gradually be removed as tooling is updated

Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2020-12-29 11:27:21 -05:00
Daniel Agar 053bf7e732 Jenkins HIL tolerate certain failures
- px4_fmu-v5 debug and stackcheck builds initial configuration is best effort
 - nxp_fmuk66-v3 allow overall tests command to fail due to intermittent serial console issues
2020-11-13 21:50:13 -05:00
Daniel Agar 174c5c5797 Jenkins HIL fmu-v5 debug and stackcheck attempt to config conservative defaults before flashing
- keep minimal rate for expensive fmu-v5 debug and stackcheck builds
2020-11-13 18:03:09 -05:00
Daniel Agar dd3c1a3653 Tools/HIL: relax command retry for now 2020-11-13 18:03:09 -05:00
Daniel Agar 3924792c20
Jenkins: HIL improve run_tests.py and run_nsh_cmd.py helper
- switch to python3
 - run_nsh_cmd.py return error if command fails
 - decrease timeout in checking for output
 - Jenkins hardware tests tolerate certain command failures that aren't available on all boards (flash constrained, etc)
2020-11-10 22:45:50 -05:00
Daniel Agar 0f411d6820
Multi-EKF support (ekf2)
- ekf2 can now run in multi-instance mode (currently up to 9 instances)
    - in multi mode all estimates are published to alternate topics (eg estimator_attitude instead of vehicle_attitude)
 - new ekf2 selector runs in multi-instance mode to monitor and compare all instances, selecting a primary (eg N x estimator_attitude => vehicle_attitude)
 - sensors module accel & gyro inconsistency checks are now relative to the mean of all instances, rather than the current primary (when active ekf2 selector is responsible for choosing primary accel & gyro)
 - existing consumers of estimator_status must check estimator_selector_status to select current primary instance status
 - ekf2 single instance mode is still fully supported and the default

Co-authored-by: Paul Riseborough <gncsolns@gmail.com>
2020-10-27 10:56:11 -04:00
David Sidrane 46f0388fc7 Reanable BL Update - Reverts b5267c06073023893d5a11b9011ef009b5291097 2020-09-29 23:44:24 -04:00
Daniel Agar faccb0d948
Jenkins: HIL script minor improvements
- periodically send newline while checking for output or command completion (back to nsh prompt)
 - mtd test
 - fix adc test (now board_adc)
2020-09-28 16:41:28 -04:00
Daniel Agar 8b26b84fd1
Jenkins: hardware disable holybro durandal bootloader update
- this is currently bricking the board
2020-09-21 22:51:11 -04:00
Daniel Agar d61fd0e4ca update all px4-dev-base and px4-dev-nuttx container usage uniformly 2020-09-18 13:03:07 -04:00
Matthias Grob ce9954a919 param: enable reseting specific parameters from shell
Renaming previous "param reset" to "param reset_all".
2020-09-08 12:03:41 +02:00
Daniel Agar 60d613ea04
sensors: sensor_preflight_imu -> sensors_status_imu and run continuously
- inconsistency checks now run continuously instead of only preflight
 - keep inconsistencies for all sensors
 - add per sensor data validator state as overall health flag
2020-09-06 22:06:13 -04:00
Daniel Agar 023f6d3983
NuttX cpuload monitoring optimization
- Nuttx only process all suspend & resume scheduling notes when top is running, otherwise only track IDLE
 - convert cpuload and print load to c++
 - delete unused fields from print_load struct
 - update hrt_store_absolute_time (previous unused)
2020-09-05 14:35:50 -04:00
Daniel Agar f7c364de37 Jenkins hardware print estimator and sensor messages 2020-09-04 10:48:26 -04:00
Daniel Agar 7c2bb6a983 Jenkins: hardware increase timeout 2020-09-02 09:00:34 -04:00
Daniel Agar c76cdaf8a8 commander: mag calibration add simple offset only quick cal using GPS & attitude 2020-08-21 10:12:13 -04:00
Daniel Agar 971b1e4b4d sensors: move mag aggregation to new VehicleMagnetometer WorkItem
- purge all reminaing magnetometer IOCTL usage
 - mag calibration add off diagonal (soft iron) scale factors
2020-08-21 10:12:13 -04:00
Daniel Agar d92ddffa5d commander: add simple accelerometer quick calibration 2020-08-21 10:12:13 -04:00
Daniel Agar 7354e39893
Jenkins HIL remove mRo Control Zero
- there are issues with the particular harware on the rack (an early prototype)
2020-07-26 19:36:44 -04:00
Daniel Agar 81f57bccb6 px4io: servorail_status -> px4io_status and log all flags 2020-07-21 09:56:13 -04:00
Daniel Agar e79ccd1333 Jenkins: hardware print vehicle_air_data 2020-07-17 09:42:19 -04:00
Daniel Agar f0ceb44f6c Jenkins: hardware print cpuload 2020-07-16 15:11:53 -04:00
Daniel Agar 38fa913fed Jenkins: holybro durandal-v1 switch to generic multicopter with dshot 2020-07-07 18:59:04 -04:00
Daniel Agar 8763d71bf0 Jenkins: set IMU_GYRO_RATEMAX to 4kHz on holybro_durandal-v1_default 2020-07-07 01:29:48 -04:00
Daniel Agar 2af72c05b5 Jenkins: set IMU_GYRO_RATEMAX to 2kHz on px4_fmu-v5_default 2020-07-06 22:17:17 -04:00
Daniel Agar b277840233 boards: create px4_fmu-v5_debug build with assertions enabled 2020-07-06 11:13:15 -04:00
Daniel Agar d360919789 Jenkins: hardware mRo Control Zero skip tests for now
- not quite ready for this one
2020-06-29 11:14:22 -04:00
Daniel Agar 27cf3c7c75 Jenkins hardware add mRo Ctrl Zero F7 2020-06-23 23:40:43 -04:00
Daniel Agar d927d80509 Jenkins hardware ignore nxp_fmuk66-v3 status failures
- this particular hardware on the test rack has a flaky console
2020-06-20 18:53:10 -04:00
Daniel Agar f55ed0992c
accel and gyro calibration refactor and cleanup
- remove all remaining IOCTLs for accel and gyro and handle all calibration entirely in sensors module with parameters
 - sensor_accel and sensor_gyro are now always raw sensor data
 - calibration procedures no longer need to first clear existing values before starting
 - temperature calibration (TC) remove all scale (SCL) parameters
    - gyro and baro scale are completely unused
    - regular accel calibration scale can be used (CAL_ACC*_xSCALE) instead of TC scale
2020-06-17 22:50:09 -04:00
Daniel Agar a1b0634258 Jenkins HIL test fix sensor timeouts
- stop logger when running tests
 - decrease test priorities
 - hrt test don't flush output
2020-06-04 22:09:07 -04:00
Daniel Agar e34bdb4be9
move IMU integration out of drivers to sensors hub to handle accel/gyro sync
- 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)
2020-05-30 11:07:54 -04:00
Daniel Agar 297e4dd589 Jenkins hardware uORB top print all once 2020-05-07 09:31:15 +02:00
Daniel Agar 604258ec71 Jenkins: hardware rack show df, mount, sensor_combined, vehicle_imu per board 2020-05-06 10:51:59 -04:00
Daniel Agar 7bbb7e6b24
Jenkins: hardware print more status and cleanup SD card
- /proc meminfo and uptime
 - gps status, ekf2 status, attitude, local position
 - try to force update px4io on a few boards
 - set SDLOG_DIRS_MAX 1 on board cleanup to minimize usage
2020-04-16 16:01:50 -04:00
Daniel Agar 5634b68354 Jenkins: hardware print px4io status, pwm info for all outputs, pwm_out status 2020-04-15 22:48:24 -04:00
Daniel Agar d5e0a52f3f
Jenkins: increase history for remaining builds 2020-04-14 19:14:10 -04:00
Daniel Agar 60836eabd5
Jenkins HIL remove px4_fmu-v4_optimized
- this was interesting to monitor, but slows down the entire build with only one pixracer on the test rack
2020-04-13 13:48:28 -04:00
Daniel Agar 66eacd24bc
px4_fmu-v5_stackcheck: update stack sizes and add to Jenkins
- increase stack sizes to run cleanly under stackcheck
     - this is likely overkill for most boards, but using stackcheck to set our minimum ensures we have a very safe margin on regular builds and it's something we can currently afford
 - remove holybro_durandal-v1_stackcheck from test rack (there's only one unit)
2020-04-11 21:16:10 -04:00
TSC21 e9aba642fe CI: bump container tags to 2020-04-01 2020-04-02 14:28:38 +01:00
TSC21 40a99f940a bump container tags to 2020-03-29 2020-03-30 09:51:57 +01:00
TSC21 6598ce5a46 CI: bump container tags to 2020-03-16 2020-03-24 13:31:41 +00:00
Daniel Agar b73ec18abb
boards: add px4_fmu-v4 and px4_fmu-v5 optimized (-O3) build variants 2020-03-22 17:50:17 -04:00
Daniel Agar 05b075984f Jenkins hardware clear hardfault log and board cleanup 2020-02-06 09:50:33 +01:00
Daniel Agar 931a3f2684
logger: publish initial logger_status orb message 2020-01-29 17:29:30 -05:00
Daniel Agar bb465ca5b7
sensor accel/gyro message cleanup
- split out integrated data into new standalone messages (sensor_accel_integrated and sensor_gyro_integrated)
 - publish sensor_gyro at full rate and remove sensor_gyro_control
 - limit sensor status publications to 10 Hz
 - remove unused accel/gyro raw ADC fields
 - add device IDs to sensor_bias and sensor_correction
    - vehicle_angular_velocity/vehicle_acceleration: check device ids before using bias and corrections
2020-01-18 01:15:00 -05:00
Julian Oes e64c38fa25 CI: update all docker tags 2020-01-13 21:48:35 +00:00
Julian Oes 18f85ea520 Jenkins: bump docker tags 2020-01-13 21:48:35 +00:00