Commit Graph

55961 Commits

Author SHA1 Message Date
Andy Piper 16ca2e1179 AP_InertialSensor: use 234Hz accel LPF and 532Hz gyro LPF on BMI088 to more closely match Invensense
synchronize fifo reads with backend update on BMI088
2022-12-28 18:18:26 +11:00
Andy Piper d29ccba3f7 AP_Vehicle: constrain FFT notch updates to obey reference frequency 2022-12-28 18:14:56 +11:00
Andy Piper 90cdc1aa52 AP_InertialSensor: allow FFT window to be captured post-filter
selectively apply filters twice to make sure that FFT is not tracking itself
clean-up notch disablement for non-DSP builds
use filter gyro data for FFT when analysing post-filter
always apply LPF after all of the notches
move to a phased application of window information for FFT
tap FFT gyro window at the appropriate place for downsampled FFTs
add accessor for FFT notch
document notch uses cases and flow
2022-12-28 18:14:56 +11:00
Andy Piper 60dcb0423a autotest: add basic FFT post-filter test
record gyro data in FFT postfilter test
check post-filter gyro logging and change notch settings for post-filter FFT
add motor noise test
FFT SNR now has sensible default for post-filter
2022-12-28 18:14:56 +11:00
Andy Piper 9eb561639b AP_InertialSensor: add support for reading and writing INS data from a file in SITL
allow sketch to be stopped at end of SITL samples
2022-12-28 18:14:56 +11:00
Andy Piper ec7be5c417 SITL: add parameters to control reading and writing IMU data to a file
add exit on stop to reading IMU data from a file
2022-12-28 18:14:56 +11:00
Andy Piper 5ea3415a41 AP_HAL_SITL: allow SITL sketches to run
allow sketchname to be set
2022-12-28 18:14:56 +11:00
Andy Piper b19b14404b Copter: log FFT messages at 25Hz if fast filter tuning is set 2022-12-28 18:14:56 +11:00
Andy Piper 7acdaf2dd0 AP_Vehicle: add vehicle motor noise check 2022-12-28 18:14:56 +11:00
Andy Piper 449d9814ab AP_GyroFFT: add FFT_OPTIONS to allow post-filter sampling of IMUs
provide method to determine noise at a particular frequency
add ability to record per-peak SnR
correct bad array indexing leading to free memory read
track all three axes for health and peaks
remove slewed frequency values, since slewing is now done in the filters
ReplayGyroFFT initial implementation
allow IMU data to be read and written from a file
only build Replay on SITL
correctly calibrate FFT in Replay
better noise simulation in Replay
FTN3 logging
allow FFT peaks to swap indefinitely as long as they both still exist.
Leads to much smoother frequency transitions
increase the energy gap required to switch the tracked peak
use exit on stop for Replay
filter noise tracking more aggressively for post-filter samples
remove message and use appropriate gyro window
when using post-filter do not fallback to throttle-based estimate

AP_GyroFFT: default SnR to 10 when using post-filter samples
2022-12-28 18:14:56 +11:00
Peter Barker cbecb20614 autotest: param_parse.py: allow Values and Bitmasks to span multiple lines 2022-12-28 13:21:18 +11:00
Peter Barker f8b8f652db Plane: break FLIGHT_OPTIONS metadata onto separate lines 2022-12-28 13:21:18 +11:00
Peter Barker b716793a0e AP_NavEKF3: remove duplicated lines in parameter metadata 2022-12-28 13:21:18 +11:00
Leonard Hall 78942911b7 AC_AttitudeControl: AC_PosControl: Include FF in _pid_vel_xy integrator initialisation 2022-12-28 08:25:31 +09:00
Henry Wurzburg d6a5d31625 AP_Scripting:add rate based aerobatics 2022-12-27 18:20:34 +11:00
Jeremy 0db6146f60 Plane: Added Y4 config to Quadplane 2022-12-27 15:19:28 +11:00
Peter Barker a71911c19f autotest: ensure vehicle is armed before issuing takeoff command
sending the arm command isn't sufficient if there are other arming problems.

Caught a test failing when throttle was found to be high - I think the rc(3, 1700) was managing to have effect before we processed the arm command because of the way the input queues to ArduPilot SITL work
2022-12-27 11:32:19 +11:00
Peter Barker 89ecd8fb17 autotest: create a context-per-check whentesting motors blocked
without this all subsequent tests will find the string in the context's collection of statustexts.  So use a context-per-mode
2022-12-27 11:32:19 +11:00
Iampete1 da0927b076 Plane: Quadaplane: remove RTL navigate incorrect comment and unnedded check 2022-12-27 11:26:16 +11:00
Iampete1 4a21af22cb Plane: move mode update_target_altitude to correct files 2022-12-27 10:30:14 +11:00
Mohammad Hefny feece150c6 AP_HAL_Linux: Raspberry 64OS Address fix 2022-12-27 10:03:41 +11:00
Peter Barker 5a429a9a79 github: macosx: remove github-installed Python symlinks in /usr/local/bin
installing packages fails as symlinks that brew wants to install already exist

https://github.com/orgs/Homebrew/discussions/3895
2022-12-26 14:14:38 +11:00
Leonard Hall d8f95208ad Copter: Auto: return bool in wp_start 2022-12-24 16:03:39 +09:00
Leonard Hall 13df33b87c Copter: Use wp_start() in do_nav_wp() 2022-12-24 16:03:39 +09:00
Andrew Tridgell 97e1c14114 Revert "Plane: default takeoff pitch to 15 deg for PPDS"
This reverts commit 210dac7356.

this was committed by mistake
2022-12-24 13:26:31 +11:00
Peter Barker ec0b51dadd Tools: add --no-merge-base option to size_compare_branches.py 2022-12-24 08:56:49 +11:00
Andrew Tridgell 36d2c267fe AP_HAL: allow for a wider range of simulation backends in SIM-on-hw 2022-12-24 07:27:04 +11:00
Andrew Tridgell 057190caa8 SITL: update SITL on hw docs 2022-12-24 07:27:04 +11:00
Andrew Tridgell 0da81f7269 SITL: remove old sitl-on-hw.sh 2022-12-24 07:27:04 +11:00
Andrew Tridgell 87a220991b SITL: new sitl-on-hw.py script
this makes it easier to build SITL on hardware for a wide range of
frames
2022-12-24 07:27:04 +11:00
Andrew Tridgell fdd0d0ae53 SITL: default SIM_RATE_HZ to 400 in SITL-on-hw 2022-12-24 07:27:04 +11:00
Andrew Tridgell 5f8e655f98 AP_HAL: allow override of frame class and string for SITL on hw 2022-12-24 07:27:04 +11:00
Peter Barker fb18adb035 hwdef: fix build for ARK_RTK_GPS 2022-12-23 21:14:15 +11:00
Randy Mackay 0816d5306d Copter: 4.3.2 release notes 2022-12-23 10:01:02 +09:00
Henry Wurzburg 6348fd5f86 AP_HAL_ChibiOS: free space on ReaperF745 2022-12-23 11:04:35 +11:00
Henry Wurzburg 5cf6bf1520 Tools: rename to ReaperF745 2022-12-23 11:04:35 +11:00
Henry Wurzburg 182326a76f AP_HAL_ChibiOS: rename to ReaperF745 2022-12-23 11:04:35 +11:00
Henry Wurzburg 2c5b85c9c5 AP_HAL_ChibiOS:modify hwdef for V3 of ReaperF745 2022-12-23 11:04:35 +11:00
Andrew Tridgell 8686589cc0 Plane: release notes for 4.3.2 2022-12-23 10:18:29 +11:00
Bredemeier, Fabian (TD-M) 2abfb1bec8 Copter: Simulink Model and init scripts
- arducopter.slx: Simulates ArduCopter Stabilize and Althold controller and optional plant model
- sid_pre.m: Loads *.bin files to Matlab structs
- sid_sim_init.m: Loads signals and parameters from Matlab structure into Simulink model
- sid_controller_validation.m: Validation of the flight controller model with the flight data loaded to the Matlab workspace.
2022-12-23 09:57:21 +11:00
Tatsuya Yamaguchi dd539f8ec9 AP_DAL: call start_frame for all backends 2022-12-23 09:56:29 +11:00
Andy Piper 96060ef31e AP_HAL_ChibiOS: add UART baudrate accessor 2022-12-22 18:38:31 +00:00
Andy Piper 445aad17c9 AP_HAL: add UART baudrate accessor 2022-12-22 18:38:31 +00:00
Andy Piper aaa6b284bd RC_Channel: add option to support ELRS at 420kbaud 2022-12-22 18:38:31 +00:00
Andy Piper 9356ccbd32 Copter: read radio more frequently to support more modern RX/TX 2022-12-22 18:38:31 +00:00
Andy Piper 78c70c74dc AP_RCTelemetry: report CRSF link rate rather than mode.
Encode actual protocol being used
cleanup is_elrs() and version numbers
2022-12-22 18:38:31 +00:00
Andy Piper 425f2b946e AP_RCProtocol: check for 3 good frames for CRSF
Move get_link_rate() and get_protocol_string() to CRSF protocol
allow ELRS at 420kbaud to be configured
allow CRSF to bootstrap at ELRS desired baudrate
2022-12-22 18:38:31 +00:00
Bill Geyer 93b0519ad2 AP_MotorsHeli: improve collective to yaw compensation 2022-12-22 07:07:34 -05:00
Andrew Tridgell f742845552 AP_Scripting: changed airshow rolling circle
make it more achievable
2022-12-22 21:13:30 +11:00
Peter Barker f44a50bdd8 autotest: use epsilon when testing for zero variance in EK3_RNG_USE_HGT 2022-12-22 21:12:39 +11:00