Commit Graph

35407 Commits

Author SHA1 Message Date
Andrew Tridgell d34c1940c4 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 16:39:50 +09:00
Andrew Tridgell 6a5889726c 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 16:39:48 +09:00
Willian Galvani f17cca848f AP_HAL: add BMP390 option for navigator 2024-11-05 10:07:25 +09:00
Randy Mackay 131e04e6a9 AP_GPS: revert backport to copter 4.5 the correct satellite count for NrSv do-not-use value
This reverts commit 62fe90bb64.
2024-10-16 10:47:47 +09:00
rishabsingh3003 6721f424d6 AP_Proximity: Include database push in MR72 driver 2024-09-27 14:19:56 +09:00
bugobliterator 4c01cbbbcd 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:19:56 +09:00
Andy Piper 129ca14ee3 AP_RCProtocol: only update rc value for GHST on rc frames 2024-09-27 14:19:56 +09:00
Andy Piper cceec91c7c AP_HAL_ChibiOS: correctly uninvert RX/TX on F4 with inverter support 2024-09-27 14:19:56 +09:00
Ferruccio Vicari 03035f081e AP_Motors: fix DDVP tail servo initialization 2024-09-27 14:19:56 +09:00
Andrew Tridgell c68a9cf26f AP_DroneCAN: prevent saturation of CPU with DroneCAN thread 2024-09-27 14:19:56 +09:00
Andrew Tridgell acee3f7594 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:19:56 +09:00
caijie f07865c40e AP_HAL_ChibiOS: add VUAV-V7pro 2024-09-27 14:19:56 +09:00
Chiara de Saint Giniez eff242a7c7 AP_GPS: backport to copter 4.5 the correct satellite count for NrSv do-not-use value 2024-09-27 14:19:56 +09:00
Ryan Friedman b43c139752 AP_DDS: Correct compilation of tests without external odom
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-09-27 14:19:56 +09:00
Andrew Tridgell 776297dcc8 AP_DDS: fixed cell voltages
the std:copy was copying from uint16_t to float
2024-09-27 14:19:56 +09:00
Ryan Friedman b630940981 AP_DDS: Use common quaternion initialization function
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-27 14:19:56 +09:00
Rhys Mainwaring 600f6eade0 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:19:56 +09:00
Rhys Mainwaring c685b919cd 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:19:56 +09:00
cuav-chen2 0cab92a806 hwdef: backport CUAV-7-Nano hwdef defines 2024-09-12 09:24:09 +09:00
Randy Mackay 24abff5fb1 AP_DroneCAN: fixup to fix of handling of empty entry
This resolves a small difference between vehicles for the 4.5.6-beta1 release
2024-08-22 08:37:22 +09:00
EternAlmox 62e64b1772 AP_HAL_ChibiOS: added MFT-SEMA100 2024-08-21 20:39:44 +09:00
Iampete1 d59b629e7f AP_HAL_ChibiOS: GPIO: read: support virtual read of IOMCU pins 2024-08-21 20:39:44 +09:00
Iampete1 bafaffb07e AP_HAL_ChibiOS: GPIO: Check IOMCU after local pins for speed 2024-08-21 20:39:44 +09:00
Iampete1 06a61f5dd9 AP_HAL_ChibiOS: RCOut banner: check for GPIO on IOMCU 2024-08-21 20:39:44 +09:00
Iampete1 767aac01f1 AP_IOMCU: add GPIO mask getter and GPIO virtual read 2024-08-21 20:39:44 +09:00
Peter Barker 2101f75b1c hwdef: correct ZeroOne LED defines for backport 2024-08-21 20:39:44 +09:00
“Jane_ZeroOne” 7c4baaf4e4 AP_HAL_ChibiOS: add ZeroOneX6 2024-08-21 20:39:44 +09:00
Andy Piper 3c17a9925a AP_HAL_ChibiOS: iFlight 2RAWH743 2024-08-21 20:39:44 +09:00
Andy Piper 5234a75037 AP_Logger: correctly read file header for block logger 2024-08-21 20:39:44 +09:00
Andy Piper f807fccf7a AP_MSP: use highest ESC temp rather than motor temp 2024-08-21 20:39:44 +09:00
Andy Piper 90cf21b1c9 AP_ESC_Telem: use highest ESC temp rather than motor temp 2024-08-21 20:39:44 +09:00
Andy Piper 0b3ce4aa63 AP_OSD: use highest ESC temp rather than motor temp 2024-08-21 20:39:44 +09:00
Andy Piper a31c5ea943 AP_HAL_ChibiOS: fix TMotor H743 with BMI270 2024-08-21 20:39:44 +09:00
Thomas Watson f2d66886c9 AP_DroneCAN: DNA_Server: fix handling of empty entry
Replaces the check for a CRC of 0 with a check that the hwid is 0.
Substantially reduces 1/256 chance that a particular node ID couldn't be
stored.
2024-08-21 20:39:44 +09:00
Andy Piper df283a1739 AP_HAL_ChibiOS: add servo outputs as motors to FoxeerF405v2 2024-08-21 20:39:44 +09:00
cuav-chen2 123eeae2fb HAL_ChibiOS: Added support for CUAV-7-Nano flight controller 2024-08-21 20:39:44 +09:00
cuav-chen2 3554e6eba9 AP_Baro: Add in BMP581 Driver 2024-08-21 20:39:44 +09:00
James O'Shannessy 3d66fb83b4 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 20:39:44 +09:00
James O'Shannessy 30cf6c8ad4 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 20:39:44 +09:00
Randy Mackay 4200902c4e AP_SmartRTL: add point made public 2024-08-21 20:39:44 +09:00
Oleksiy Protas 19223fba1e 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 20:39:44 +09:00
Andrew Tridgell 39715c0a9d AP_Baro: avoid i2c errors with ICP101XX
this sensor doesn't like reading at higher than expected rate
2024-08-21 20:39:44 +09:00
Iampete1 b2ea324391 AC_PID: correct error caculation to use latest target 2024-08-21 20:39:44 +09:00
Vincent Poon b969123b5c 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 20:39:44 +09:00
Peter Barker fa41be703f SITL: correct valgrind failure in SIM_GPS_SBP 2024-08-21 20:39:44 +09:00
Leonardo Garcia 33581552f4 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 20:39:44 +09:00
Ryan Friedman f8fe5df4de 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 20:39:44 +09:00
Ryan Friedman bf394c8165 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 20:39:44 +09:00
Andy Piper 3606c6e3a6 SITL: squash static_assert warnings 2024-08-21 20:39:44 +09:00
Andy Piper ec85c7aba6 AP_Logger: remove unused variables 2024-08-21 20:39:44 +09:00