Commit Graph

31329 Commits

Author SHA1 Message Date
Peter Barker
e43b1dd2eb SITL: tidy simulated proximity sensor constructors 2022-12-28 21:52:27 +11:00
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
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
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
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
Mohammad Hefny
feece150c6 AP_HAL_Linux: Raspberry 64OS Address fix 2022-12-27 10:03:41 +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
Henry Wurzburg
6348fd5f86 AP_HAL_ChibiOS: free space on 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
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
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
Tatsuya Yamaguchi
43160efba8 AP_Scripting: modify example script of README.md
- avoid to call set_output_pwm before setting origin
- make get_home() once
2022-12-22 13:25:35 +09:00
Andrew Tridgell
441a2ee00d hwdef: added RM3100 compass to C-RTK2-HP 2022-12-21 19:52:31 +11:00
Andrew Tridgell
e966e272ac hwdef: fixed build for f103-Trigger 2022-12-21 19:52:31 +11:00
Andrew Tridgell
d768c721ee HAL_ChibiOS: make it fatal to have I2C devices without an I2C_ORDER
otherwise it is very confusing when you end up with AP_HAL_Dummy for
I2C manager
2022-12-21 19:52:31 +11:00
Randy Mackay
1a4f51d782 AP_Mount: servo driver loses unnecessary closest_limits method 2022-12-21 18:45:33 +11:00
Tom Pittenger
f8ee112e47 AP_TemperatureSensor: fix param count change when loading drivers 2022-12-20 15:19:14 -03:00
Andrew Tridgell
1f100710d2 hwdef: go to minimal GPS for MatekF405-CAN
fixes flash overflow
2022-12-20 12:14:24 +11:00
Iampete1
34d2a5acaa AP_WindVane: add Arduino script and readme to allow conection to Bluetooth wind-vane 2022-12-20 12:13:46 +11:00
Iampete1
e142747d1f AP_Airspeed: Periph: remove useage of hidden params and remove tuber order 2022-12-20 11:12:25 +11:00
Andrew Tridgell
8e93265928 hwdef: added MatekL431-BattMon firmware 2022-12-20 10:44:52 +11:00
Andrew Tridgell
24d4a4cf5e AP_BattMonitor: added support for INA239 SPI battery monitor 2022-12-20 10:44:52 +11:00
Andrew Tridgell
76d0c0f408 AP_BattMonitor: hide unused parameters in peripherals 2022-12-20 10:44:52 +11:00
Andrew Tridgell
eb704510d6 HAL_ChibiOS: default to one battery monitor backend in peripherals 2022-12-20 10:44:52 +11:00
Andrew Tridgell
87b4b031bf AP_AHRS: if DCM has no yaw source then don't fallback when hovering
this copes with quadplanes with no compass. With a compass we are
better off using EKF when not in fly-forward as it will give better
height control.

This makes QHOVER for takeoff in quadplanes with no compass a lot more
flyable
2022-12-20 10:34:22 +11:00
Andrew Tridgell
56c8cffc07 AP_AHRS: auto-enable EKF3 for misconfiguration
this fixes a "climb away" in quadplanes when AHRS_EKF_TYPE=2 and
EK2_ENABLE=0. The user has ARMING_CHECK=5390 to disable key arming
checks, and the plane flew on DCM as the configured EKF wasn't
enabled.

This resulted in AHRS::get_origin() returning false as it couldn't ask
EKF2 for the origin (as EKF2 was not enabled or instantiated)

The result was an incorrect calculation for target height during the
descent stage of QRTL, resulting in a climb away until the user took
over
2022-12-20 10:34:22 +11:00
Andrew Tridgell
8bf8d4889a AP_NavEKF3: added get_enable() 2022-12-20 10:34:22 +11:00
Andrew Tridgell
fadb9007d0 AP_NavEKF2: added get_enable() 2022-12-20 10:34:22 +11:00
Andrew Tridgell
f53c865c7a AP_GPS: only create GPS logs for active GPS backends 2022-12-20 10:23:58 +11:00
Andrew Tridgell
fc5ae600ef AP_GPS: fixed handling of empty HDT/THS sentences
fixes #22432
2022-12-20 10:23:58 +11:00