Commit Graph

35405 Commits

Author SHA1 Message Date
Andrew Tridgell
b2246a2fa1 AP_InertialSensor: stop sensors converging if motors arm
if the user arms within 30s of startup then stop the re-init of the
sensors. This can give less accurate frequency as the sample rate may
not have settled yet, but it is better than doing init of the filters
while the vehicle may be flying

also fix a 32 bit millis wrap
2024-12-03 11:07:40 +11:00
Andrew Tridgell
ee1756968d AP_InertialSensor: fixed Q calculation for notch filters
when doing the init() we must use the reference frequency, not the
current frequency. Using the current frequency leaves us with an
incorrect value for Q. If the current frequency is below the reference
frequency (which shouldn't happen in 4.5, but has been seen in 4.3)
then the Q can be much too low and massive phase lag can happen.

The vulnerability in 4.5.x is that the current frequency could be well
above the reference frequency. For example, the user may be doing a
motor test at 30s after boot, which is when we stop the
sensors_converging() test, and thus is the last time we call
init(). In that case we can end up with a Q which is much larger than
the one that should come from INS_HNTCH_FREQ and INS_HNTCH_BW, and
thus end up with a filter that produces a lot less attenuation than is
desired, potentially leading to instability due to high noise.

There are other scenarios that can cause this - for example a motor
test of a fwd motor at 30s after boot, or a spurious FFT peak due to
someone knocking the aircraft, or the vibration of a IC engine.
2024-12-03 11:07:40 +11:00
Randy Mackay
2b30e7fc30 AP_GPS: revert backport to copter 4.5 the correct satellite count for NrSv do-not-use value
This reverts commit 62fe90bb64.
2024-10-15 10:20:43 +11:00
rishabsingh3003
449a56fd52 AP_Proximity: Include database push in MR72 driver 2024-09-27 14:25:03 +09:00
bugobliterator
f403594390 AP_DroneCAN: Fix constructor initialization order
bad ordering was leading to dronecan dna server getting initialised before canard interface is initialised leading
2024-09-27 14:25:03 +09:00
Andy Piper
a133a918da AP_RCProtocol: only update rc value for GHST on rc frames 2024-09-27 14:25:03 +09:00
Andy Piper
92d678f486 AP_HAL_ChibiOS: correctly uninvert RX/TX on F4 with inverter support 2024-09-27 14:25:03 +09:00
Ferruccio Vicari
53cb764912 AP_Motors: fix DDVP tail servo initialization 2024-09-27 14:25:03 +09:00
Andrew Tridgell
4e008d942c AP_DroneCAN: prevent saturation of CPU with DroneCAN thread 2024-09-27 14:25:03 +09:00
Andrew Tridgell
06e3b2051d HAL_ChibiOS: limit RX timeout to 100ms
this prevents a very long timeout in begin(), replacement with a mutex
will happen in a separate PR
2024-09-27 14:25:03 +09:00
caijie
842edc7fc0 AP_HAL_ChibiOS: add VUAV-V7pro 2024-09-27 14:25:03 +09:00
Chiara de Saint Giniez
2f6ac7f942 AP_GPS: backport to copter 4.5 the correct satellite count for NrSv do-not-use value 2024-09-27 14:25:03 +09:00
Ryan Friedman
d00568ac09 AP_DDS: Correct compilation of tests without external odom
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-09-27 14:25:03 +09:00
Andrew Tridgell
6e20752f82 AP_DDS: fixed cell voltages
the std:copy was copying from uint16_t to float
2024-09-27 14:25:03 +09:00
Ryan Friedman
5c315cbf04 AP_DDS: Use common quaternion initialization function
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-27 14:25:03 +09:00
Rhys Mainwaring
cd7f325565 AP_DDS: ensure zero rotation quaternions are normalised
- ROS expects quaternions to be normalised and the default message constructor does not enforce this.
- Fix normalisation for pose stamped.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-09-27 14:25:03 +09:00
Rhys Mainwaring
63a6004db9 AP_DDS: add param DDS_DOMAIN_ID
- Require reboot.
- Set DDS_DOMAIN_ID range: 0 to 232..

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-09-27 14:25:03 +09:00
cuav-chen2
73c708a3fb hwdef: backport CUAV-7-Nano hwdef defines 2024-09-12 09:23:45 +09:00
EternAlmox
a168f0128e AP_HAL_ChibiOS: added MFT-SEMA100 2024-08-21 19:33:38 +10:00
Iampete1
25cf1cc388 AP_HAL_ChibiOS: GPIO: read: support virtual read of IOMCU pins 2024-08-21 19:33:38 +10:00
Iampete1
ba20f2cda2 AP_HAL_ChibiOS: GPIO: Check IOMCU after local pins for speed 2024-08-21 19:33:38 +10:00
Iampete1
fa134e949a AP_HAL_ChibiOS: RCOut banner: check for GPIO on IOMCU 2024-08-21 19:33:38 +10:00
Iampete1
77a7a7799d AP_IOMCU: add GPIO mask getter and GPIO virtual read 2024-08-21 19:33:38 +10:00
Peter Barker
223a7f808f hwdef: correct ZeroOne LED defines for backport 2024-08-21 19:33:38 +10:00
“Jane_ZeroOne”
310a13cda1 AP_HAL_ChibiOS: add ZeroOneX6 2024-08-21 19:33:38 +10:00
Andy Piper
820d53d357 AP_HAL_ChibiOS: iFlight 2RAWH743 2024-08-21 19:33:38 +10:00
Andy Piper
e95c743e5c AP_Logger: correctly read file header for block logger 2024-08-21 19:33:38 +10:00
Andy Piper
a49d6565db AP_MSP: use highest ESC temp rather than motor temp 2024-08-21 19:33:38 +10:00
Andy Piper
153266b8db AP_ESC_Telem: use highest ESC temp rather than motor temp 2024-08-21 19:33:38 +10:00
Andy Piper
245119b99f AP_OSD: use highest ESC temp rather than motor temp 2024-08-21 19:33:38 +10:00
Andy Piper
890c46d95b AP_HAL_ChibiOS: fix TMotor H743 with BMI270 2024-08-21 19:33:38 +10:00
Andy Piper
84f2fd9436 AP_HAL_ChibiOS: add servo outputs as motors to FoxeerF405v2 2024-08-21 19:33:37 +10:00
cuav-chen2
5fbc98eb3b HAL_ChibiOS: Added support for CUAV-7-Nano flight controller 2024-08-21 19:33:37 +10:00
cuav-chen2
3cccafd35d AP_Baro: Add in BMP581 Driver 2024-08-21 19:33:37 +10:00
James O'Shannessy
1bd343c33e AP_InertialSensor: Check the gyro/accel id has not been previously registered
If the Gyro/Accel ID is already in the registered list, do not try to add it again.

This stops an issue seen on a CubeOrangePlus BG3 where, during the very first boot after a parameter wipe, software incorrectly registers a fourth IMU.
The Fourth IMU is registered because the AUX IMU is the same DevID as the third ICM45686.
2024-08-21 19:33:37 +10:00
James O'Shannessy
fda351d38b AP_InertialSensor: Fix persistent storing of IMU Z Scale
Fixes INSn_ACCSCAL_Z not being stored in persistent storage when bootloader is flashed.
2024-08-21 19:33:37 +10:00
Randy Mackay
988fee5a75 AP_SmartRTL: add point made public 2024-08-21 19:33:37 +10:00
Oleksiy Protas
18b9a0cfbc AP_Camera: proper string formatting
Incoming strings are 32 bytes and may not be null-terminated if the full width is used
2024-08-21 19:33:37 +10:00
Andrew Tridgell
15f3c7ad11 AP_Baro: avoid i2c errors with ICP101XX
this sensor doesn't like reading at higher than expected rate
2024-08-21 19:33:37 +10:00
Iampete1
04e69d738d AC_PID: correct error caculation to use latest target 2024-08-21 19:33:37 +10:00
Vincent Poon
0e45d89491 Update Pixhawk6C hwdef.dat
Fix https://github.com/ArduPilot/ardupilot/issues/25840

The overcurrent detection of the HIPOWER current limiting chip is connected to PC11 on the Pixhawk 6C.
2024-08-21 19:33:37 +10:00
Peter Barker
2726d42712 SITL: correct valgrind failure in SIM_GPS_SBP 2024-08-21 19:33:37 +10:00
Leonardo Garcia
a72ea68175 AP_HAL_ChibiOS: Support for 3DR Control Zero H7 OEM rev G
Co-authored-by: Alexis Guijarro <totonzx@gmail.com>
Co-authored-by: Andy Piper <github@andypiper.com>
2024-08-21 19:33:37 +10:00
Ryan Friedman
54a5f9c2f2 SITL: fix GPS headings
* Rename NMEA heading to ground_course_deg
* Rename heading() utility to ground course (it was wrong)
* Add _rad prefix to be pedantic about units
* Add missing degrees conversion in NMEA because NMEA is not SI

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-21 19:33:37 +10:00
Ryan Friedman
767e380f18 AP_GPS: fix GPS headings
* If you don't wrap the heading, you can get a flyaway

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-21 19:33:37 +10:00
Andy Piper
cb38ac9c15 SITL: squash static_assert warnings 2024-08-21 19:33:37 +10:00
Andy Piper
c56cd341b6 AP_Logger: remove unused variables 2024-08-21 19:33:37 +10:00
Andy Piper
c6d511418f AP_Param: remove unused variable 2024-08-21 19:33:37 +10:00
Andy Piper
cd49e7e347 AP_RCProtocol: squash compile warning 2024-08-21 19:33:37 +10:00
Andy Piper
216905532a AP_Mount: squash static_assert warnings 2024-08-21 19:33:37 +10:00