Commit Graph

31344 Commits

Author SHA1 Message Date
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
Andrew Tridgell
01cad1c4aa SITL: added SIM_GPS_LOG_NUM
for replaying GPS logs recorded with --enable-gps-logging
2022-12-20 10:23:58 +11:00
Andrew Tridgell
761e4a05e2 AP_GPS: don't consume Heading message if we have RelPosHeading
this avoids 2 conflicting yaw sources
2022-12-20 10:23:58 +11:00
Andrew Tridgell
b0c006deca AP_GPS: suppress string truncation warnings 2022-12-20 10:23:58 +11:00
Andrew Tridgell
898187950e AP_GPS: give yaw information for AP_Periph from Unicore GPS
this allows for CAN GPS yaw with length and height checks with unicore
GPS
2022-12-20 10:23:58 +11:00
Andrew Tridgell
2fd575aca2 AP_GPS: allow for DroneCAN GPS other than u-blox rover with yaw
single module, dual antenna GPS can give yaw information
2022-12-20 10:23:58 +11:00
Andrew Tridgell
907acd6e5f hwdef: added C-RTK2-HP AP_Periph
this is a UM982 Unicore GPS from CUAV with support for dual-antenna
GPS yaw
2022-12-20 10:23:58 +11:00
Andrew Tridgell
d7a3c643a6 AP_GPS: improved unicore setup
log version information and improve auto-bauding
2022-12-20 10:23:58 +11:00
Andrew Tridgell
3c1a54c3df AP_GPS: added measured lag for Unicore GPS
measured as 0.14s from flight log
2022-12-20 10:23:58 +11:00
Andrew Tridgell
9cebe3b880 AP_GPS: added a common velocity_to_speed_course()
this saves flash using common code
2022-12-20 10:23:58 +11:00
Andrew Tridgell
78dac16520 SITL: make serial buffer size configurable
we need a larger buffer size for NMEA GPS modules
2022-12-20 10:23:58 +11:00
Andrew Tridgell
29f1c31854 AP_GPS: added GPYW logging for GPS yaw
this makes it much easier to debug GPS yaw issues, by logging the raw
data even if the yaw is rejected
2022-12-20 10:23:58 +11:00
Andrew Tridgell
c453ff1ce2 AP_GPS: fixed vertical velocity with AGRICA support
and add health check for unicore GPS
2022-12-20 10:23:58 +11:00
Andrew Tridgell
55683c51f5 AP_GPS: review changes 2022-12-20 10:23:58 +11:00
Andrew Tridgell
d2d6dc8ce4 AP_GPS: only give time if we have a 3D fix
and ensure we configure rate for GGA and RMC for Unicore
2022-12-20 10:23:58 +11:00
Andrew Tridgell
6c9cbe1a58 AP_GPS: fixed NMEA time reporting
basic NMEA does not have an itow, so we need to use time_week_ms

this caused us to always display the time as the start of the GPS week
on NMEA
2022-12-20 10:23:58 +11:00
Andrew Tridgell
a7c5c6b728 AP_GPS: allow for disabling of NMEA Unicore support 2022-12-20 10:23:58 +11:00
Andrew Tridgell
2837471ddf AP_GPS: fixed build without GPS_MOVING_BASELINE 2022-12-20 10:23:58 +11:00
Andrew Tridgell
02d6931c4d AP_GPS: fixed re-probing of NMEA GPS
when we lost fix on a NMEA GPS we should retain the driver as long as
it is still sending us NMEA messages that pass the CRC check. This
fixes a bug where we would re-probe the GPS (searching baudrates) when
we lost position
2022-12-20 10:23:58 +11:00
Andrew Tridgell
ad9dfe2d51 AP_GPS: added support for Unicore NMEA GPS
this includes dual-antenna moving baseline support, 3D velocity and accuracies
2022-12-20 10:23:58 +11:00
Andrew Tridgell
b9642b549b AP_GPS: make GPS_MB parameters clearer
offsets are from the 2nd antenna to the base (primary) antenna
2022-12-20 10:23:58 +11:00
Tatsuya Yamaguchi
366a325fc0 AP_NavEKF3: do not check the second range finder if RANGEFINDER_MAX_INSTANCES is 1 2022-12-20 10:05:24 +11:00
Tatsuya Yamaguchi
a51c3206b2 AP_NavEKF2: do not check the second range finder if RANGEFINDER_MAX_INSTANCES is 1 2022-12-20 10:05:24 +11:00
Andrew Tridgell
0f04611970 AP_Baro: auto-set field elevation from origin 2022-12-20 10:04:38 +11:00
Tatsuya Yamaguchi
ccc5ba3cbd SITL: change HDOP from 2.0 to 1.2 2022-12-19 08:28:45 +09:00
Peter Barker
59a70c6713 AP_TemperatureSensor: correct compilation when TSYS01 compiled out 2022-12-18 09:19:12 +11:00
Kirill Shilov
8a51c73e4a AIRLink: added LTE module enable pin to hwdef 2022-12-18 07:19:42 +11:00
Andrew Tridgell
6dcb137b29 AP_Scripting: fixed error on bad cmd in mission 2022-12-17 15:35:35 +11:00
alexklimaj
6ddf2e039f hwdef: Add ARK RTK GPS AP Periph 2022-12-17 12:46:22 +11:00
Ari Krupnik
205329575a AP_Scripting: Lua applet starts/stops video recording on arm/disarm 2022-12-17 11:55:50 +11:00
MAD-CRAZY-MAN
eb91ab87fa hwdef: added ThePeach K1/R1 2022-12-16 14:16:16 +11:00
Randy Mackay
5fa6914137 AP_Mount: siyi recording send-text demoted to INFO 2022-12-16 08:15:53 +09:00
Randy Mackay
6efa35e889 AP_Mount: Siyi fix for record ON OFF reporting 2022-12-16 08:15:53 +09:00
Randy Mackay
6bd4afeb48 AP_Mount: siyi a8 fix for gimbal-config-info message
Siyi A8 uses a different format from Z10 for this message
2022-12-16 08:15:53 +09:00
Andrew Tridgell
57d60f86b5 AP_Scripting: new version of knife-edge compensation in aerobatics
this is a simpler approach based on sin(roll)*cos(pitch)
2022-12-16 10:09:17 +11:00
Peter Barker
70a5d8be76 GCS_MAVLink: remove unnecessary include of OpticalFlow header in GCS.h
introduces unnecessary dependencies
2022-12-15 21:07:31 +11:00
Peter Barker
54418a319e AP_HAL_ChibiOS: add missing bouncebuffer include 2022-12-15 21:06:30 +11:00
Peter Barker
a874938636 AP_GPS: fix GPS_AUTO example 2022-12-15 21:05:35 +11:00
Randy Mackay
624e731ca5 AP_Arming: correct prefix is ahrs is waiting for home 2022-12-15 10:55:47 +09:00
Randy Mackay
76ef43ddf0 AP_Arming: only compare AHRS vs GPS if GPS is enabled 2022-12-15 10:55:47 +09:00
Randy Mackay
6bc3fcd294 AP_Arming: minor format fix 2022-12-15 10:55:47 +09:00
Paul Riseborough
fd7c4bc841 AP_Logger: Add option to disable disarmed logging on USB connection
AP_Logger: Update LOG_DISARMED parameter description
2022-12-15 10:38:15 +11:00
Peter Barker
4e61de7083 GCS_MAVLink: code-generate chan-fetching methods
A recent PR had to change every single one of these methods, which was kind of unfortunate.

So generate the methods using a #define so the duplication happens at preprocessor-time.
2022-12-15 08:31:54 +11:00
rishabsingh3003
650f0ff659 AP_UAVCAN: Add proximity support 2022-12-15 07:20:05 +11:00
rishabsingh3003
d8cf7c8bb5 hwdef: Add Proximity hwdef for L431 2022-12-15 07:20:05 +11:00
rishabsingh3003
ea1fb96e7b AP_Proximity: Add DroneCAN backend 2022-12-15 07:20:05 +11:00
Andrew Tridgell
84db577f09 AP_Scripting: fixed aerobatics bug
thanks Andy!
2022-12-15 07:17:06 +11:00
Andrew Tridgell
ca3be1d0c7 AP_Scripting: fixed roll correction at end of partial climbing circle 2022-12-15 07:17:06 +11:00
Andrew Tridgell
afc1a38b73 AP_Scripting: use luaM_malloc instead of allocf
handles GC if needed automatically
2022-12-15 07:17:06 +11:00
Andrew Tridgell
ff6d9a12a4 AP_Scripting: try a gc on alloc fail in logging 2022-12-15 07:17:06 +11:00
Andrew Tridgell
aa8ff87ad2 AP_Scripting: make most object functions local 2022-12-15 07:17:06 +11:00
Andrew Tridgell
aa865e1f9b AP_Scripting: save some class variables 2022-12-15 07:17:06 +11:00
Andrew Tridgell
716adb6d59 AP_Scripting: use metatable object approach for aerobatics
saves about 30k ram for AirShow, about 60k ram for F3AF23
2022-12-15 07:17:06 +11:00
Peter Barker
ee908e8df2 AP_Logger: include PIDInfo header in place of PID header
AC_PID.h includes a remarkable amount of stuff
2022-12-14 22:21:27 +11:00
Andy Piper
7b9126d612 AP_Baro: only log dynamic pressure when compensation is enabled 2022-12-14 19:19:58 +11:00
Andy Piper
e4b8d8a9b6 AP_NavEKF3: ensure wind estimation from airspeed can be used on its own 2022-12-14 19:19:58 +11:00
Andy Piper
d3d841ec98 AP_NavEKF2: ensure wind estimation from airspeed can be used on its own 2022-12-14 19:19:58 +11:00
Andy Piper
56ad3887f7 AP_Baro: add logging of dynamic pressure 2022-12-14 19:19:58 +11:00
Andy Piper
71a27027f1 SITL: add baro wind coefficients for Z-axis. 2022-12-14 19:19:58 +11:00
Andy Piper
5727cfacb9 AP_Baro: add static pressure position error correction in the Z-axis for fast copters at high lean 2022-12-14 19:19:58 +11:00
Peter Barker
3d641fab8d AP_Landing: make and use AP_LANDINGGEAR_ENABLED 2022-12-14 18:30:23 +11:00
Peter Barker
1eb5911bf5 SITL: make and use AP_LANDINGGEAR_ENABLED 2022-12-14 18:30:23 +11:00
Peter Barker
2f76e12522 RC_Channel: make and use AP_LANDINGGEAR_ENABLED 2022-12-14 18:30:23 +11:00
Peter Barker
e10593ee69 AP_LandingGear: make and use AP_LANDINGGEAR_ENABLED 2022-12-14 18:30:23 +11:00
Peter Barker
d60db821cf AP_HAL_ChibiOS: make and use AP_LANDINGGEAR_ENABLED 2022-12-14 18:30:23 +11:00
Leonard Hall
67205f8114 AP_Motors: Support changing update period 2022-12-13 17:10:06 +11:00
Leonard Hall
55e19bbf5b AC_WPNav: Support changing update period 2022-12-13 17:10:06 +11:00
Leonard Hall
3c69d28237 AC_AttitudeControl: Support changing update period 2022-12-13 17:10:06 +11:00
Leonard Hall
6eb57d618a AP_WheelEncoder: Support changing update period 2022-12-13 17:10:06 +11:00
Leonard Hall
2f2143ca6f AP_Control: Support changing update period 2022-12-13 17:10:06 +11:00
Leonard Hall
f0822e5121 Filter: Support changing update period 2022-12-13 17:10:06 +11:00
Leonard Hall
1382923db0 AP_Math: Support changing update period 2022-12-13 17:10:06 +11:00
lthall
0fefe1a05a AC_PID: Support changing update period 2022-12-13 17:10:06 +11:00
Henry Wurzburg
08840b4a65 AP_Airspeed: add warning for large offset cal 2022-12-13 17:08:42 +11:00
Andrew Tridgell
50d00f4e45 AP_UAVCAN: log bus statistics 2022-12-13 16:56:57 +11:00
Andrew Tridgell
21b4a19c6f HAL_SITL: implement CAN get_statistics() 2022-12-13 16:56:57 +11:00
Andrew Tridgell
bfff5548ef HAL_ChibiOS: implement get_statistics() 2022-12-13 16:56:57 +11:00
Andrew Tridgell
05a6c0d026 AP_HAL: added statistics structure for CAN 2022-12-13 16:56:57 +11:00
Peter Barker
1c9d01c8fd AP_HAL: use singleton getter for Baro in SIMState
this instance variable was always nullptr due to constructor ordering
2022-12-13 12:51:39 +11:00
Henry Wurzburg
649c87f1ec Applets:add SportPlaneAirshow schedule 2022-12-13 12:29:41 +11:00
Iampete1
b155731f33 AP_RangeFinder: skip GPIO arming check on analog backend 2022-12-13 12:06:06 +11:00
Moe Bataineh
5b9403527b AP_Mount: Align received data to AP frame for Storm32 Serial
(Note: reversed pitch and yaw) to match NED.

Update AP_Mount_SToRM32_serial.cpp
2022-12-13 09:02:43 +09:00
Shiv Tyagi
560b2545c8 AR_Motors: fix have_skid_steering to return true for omni too 2022-12-12 19:59:17 +09:00
Peter Barker
e06a0c6876 AP_OpticalFlow: add some units to OFCA log message
Mainly just to get the instance column to make graphing axes easier

pbarker@fx:~/rc/ardupilot(master)$ mavlogdump.py logs/00000003.BIN --t FMTU | grep 251
2022-12-12 09:41:47.06: FMTU {TimeUS : 62248424, FmtType : 251, UnitIds : s#-???, MultIds : F00000}
pbarker@fx:~/rc/ardupilot(master)$ mavlogdump.py logs/00000003.BIN --t FMT | grep OFCA
2022-12-12 09:41:46.48: FMT {Type : 251, Length : 25, Name : OFCA, Format : QBBfff, Columns : TimeUS,Axis,Num,FRate,BRate,LPred}

MAV> graph OFCA[1].
OFCA[1].Axis    OFCA[1].BRate   OFCA[1].FRate   OFCA[1].LPred   OFCA[1].Num     OFCA[1].TimeUS
MAV> graph OFCA[1].LPred
2022-12-12 13:27:25 +11:00
Andrew Tridgell
eed6edc3b0 SITL: fixed sign of wind with AHRS_EKF_TYPE=10 and builtin models
an alternative to #21929 that doesn't break RealFlight

needs testing with sailboats
2022-12-11 09:42:07 +11:00
Wiktor Maslowski
be9aec4059 AP_HAL_ESP32: add empty board - without any sensors 2022-12-07 18:21:03 +11:00