Commit Graph

30313 Commits

Author SHA1 Message Date
Shiv Tyagi
5ff268fa97 AC_PrecLand: return target distance if enabled from SIM_Precland
For rover, we cant measure distance towards target using a rangefinder. Hence, we should must return target distance if enabled through SIM_Precland.
2022-08-18 22:47:43 +10:00
Shiv Tyagi
8411b2ec03 SITL: add param in SIM_Precland to enable return dist to target 2022-08-18 22:47:43 +10:00
nrt
c3d8f0fa45 AP_AHRS: added a getter function to get active source set once the ekf3 filter is started 2022-08-18 02:05:27 -04:00
nrt
5decc08dd4 AP_NavEKF: added a getter function for active source set 2022-08-18 02:05:27 -04:00
nrt
0c65cd1b47 AP_NavEKF3: added a getter function to infer the source index used by ekf3 2022-08-18 02:05:27 -04:00
nrt
2c58206a75 AP_Scripting: added Lua example demonstrating the use of active source set 2022-08-18 02:05:27 -04:00
Peter Barker
35ab667e74 RC_Channel: rename OpticalFlow class to AP_OpticalFlow
Brings us in-line with other classes in ArduPilot.

Removes ambiguity with AP_HAL::OpticalFlow which can cause compilation errors as we start to make code more portable across targets
2022-08-18 14:24:01 +10:00
Peter Barker
cd98fcec87 GCS_MAVLink: rename OpticalFlow class to AP_OpticalFlow
Brings us in-line with other classes in ArduPilot.

Removes ambiguity with AP_HAL::OpticalFlow which can cause compilation errors as we start to make code more portable across targets
2022-08-18 14:24:01 +10:00
Peter Barker
20f73ad55e AP_Scripting: rename OpticalFlow class to AP_OpticalFlow
Brings us in-line with other classes in ArduPilot.

Removes ambiguity with AP_HAL::OpticalFlow which can cause compilation errors as we start to make code more portable across targets
2022-08-18 14:24:01 +10:00
Peter Barker
e45f938056 AP_OpticalFlow: rename OpticalFlow class to AP_OpticalFlow
Brings us in-line with other classes in ArduPilot.

Removes ambiguity with AP_HAL::OpticalFlow which can cause compilation errors as we start to make code more portable across targets
2022-08-18 14:24:01 +10:00
Peter Barker
c95ff4b82b AP_MSP: rename OpticalFlow class to AP_OpticalFlow
Brings us in-line with other classes in ArduPilot.

Removes ambiguity with AP_HAL::OpticalFlow which can cause compilation errors as we start to make code more portable across targets
2022-08-18 14:24:01 +10:00
Peter Barker
4139b7a548 AP_AHRS: rename OpticalFlow class to AP_OpticalFlow
Brings us in-line with other classes in ArduPilot.

Removes ambiguity with AP_HAL::OpticalFlow which can cause compilation errors as we start to make code more portable across targets
2022-08-18 14:24:01 +10:00
Peter Barker
9b1b06fd95 hwdef: remove ICEngine support from many boards
Ran out of room on omnibusf4pro-bdshot.

Removed ICEngine in the same place we were removing OpticalFlow
2022-08-17 17:40:21 +10:00
Peter Barker
dc8862822f AP_HAL_ChibiOS: remove unused HAL_RCIN_PULSE_PPM_ONLY define 2022-08-17 17:39:15 +10:00
Peter Barker
b76e2316bb AP_HAL: do not gate AP_CRASHDUMP_ENABLED on bootloader
Also rename from HAL_CRASHDUMP_ENABLE

Removes code based on define rather than creating empty functions.  Makes it clearer what's going on in the callers.
2022-08-17 17:34:00 +10:00
Peter Barker
4ca0f35943 AP_HAL_ChibiOS: do not gate AP_CRASHDUMP_ENABLED on bootloader
Also rename from HAL_CRASHDUMP_ENABLE

Removes code based on define rather than creating empty functions.  Makes it clearer what's going on in the callers.
2022-08-17 17:34:00 +10:00
Peter Barker
680d158f59 AP_Filesystem: do not gate AP_CRASHDUMP_ENABLED on bootloader
Also rename from HAL_CRASHDUMP_ENABLE

Removes code based on define rather than creating empty functions.  Makes it clearer what's going on in the callers.
2022-08-17 17:34:00 +10:00
Iampete1
259e70b2b1 AC_Fence: add options param on plane 2022-08-17 17:21:30 +10:00
Iampete1
e7cb949f5f AC_Fence: plane needs larger circle backup distance 2022-08-17 17:21:30 +10:00
Iampete1
df6a5f0e0d AP_Scripting: reuse uint32 dev operation for idiv 2022-08-17 17:18:26 +10:00
Iampete1
2c8a11885f AP_Scripting: Boxed numerics and maunal bindings use generated arg checker 2022-08-17 17:18:26 +10:00
Randy Mackay
63db93c6d7 AP_Proximity: minor format fix 2022-08-17 10:46:57 +09:00
Randy Mackay
1dd2fb695c AP_Proximity: minor format fix 2022-08-17 10:46:56 +09:00
murata
f3da373beb SRV_Channel: Change the minimum value of minimum PWM for servo output 2022-08-17 09:58:52 +10:00
Henry Wurzburg
db496cf256 AP_Airspeed: correct metadata in libraries failing checks on emitter 2022-08-16 11:50:11 +10:00
Henry Wurzburg
eb3f80da7c AP_ADSB: correct metadata in libraries failing checks on emitter 2022-08-16 11:50:11 +10:00
Henry Wurzburg
ec95f10b81 AC_WPNav: correct metadata in libraries failing checks on emitter 2022-08-16 11:50:11 +10:00
Henry Wurzburg
33ececf782 AC_AttitudeControl: correct metadata in libraries failing checks on emitter 2022-08-16 11:50:11 +10:00
Randy Mackay
1a54236862 GCS_MAVLink: forward mav-cmd-do-gimbal-manager-pitchyaw to AP_Mount 2022-08-15 20:29:25 -04:00
Randy Mackay
c8996c04e1 GCS_MAVLink: replace send-mount-status with send-gimbal-device-attitude-status 2022-08-15 20:29:25 -04:00
Randy Mackay
b4979e2cfa AP_Mount: replace send-mount-status with send-gimbal-device-attitude-status 2022-08-15 20:29:25 -04:00
Peter Barker
e948f79db8 AP_Vehicle: move call to compass cal update up to AP_Vehicle 2022-08-16 10:06:44 +10:00
Michael du Breuil
f5ca2c9e7a AP_Mission: Support storing VTOL_LAND options 2022-08-15 17:05:00 -07:00
Peter Barker
6fc7209c69 AP_OSD: add required include
Was getting APM_BUILD_COPTER_OR_HELI  transitively
2022-08-16 09:45:51 +10:00
Peter Barker
a4186f6884 AP_Arming: remove intermediate method check_severity
this was using an undeclared dependency on GCS_MAVLINK.h
2022-08-16 09:45:51 +10:00
Peter Barker
1b13dd053b AP_NavEKF3: use send_mesage for sending status report 2022-08-16 09:45:51 +10:00
Peter Barker
35c2653a87 GCS_MAVLink: stop using GCS_MAVLINK.h in header files
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
0443c8561b AP_NavEKF3: stop using GCS_MAVLINK.h in header files
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
c46a50f428 AP_NavEKF2: stop using GCS_MAVLINK.h in header files
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
74e651e5d7 AP_ExternalAHRS: stop using GCS_MAVLINK.h in header files
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
a840af1ff5 AP_Airspeed: stop using GCS_MAVLINK.h in header files 2022-08-16 09:45:51 +10:00
Peter Barker
cfb391dc2c AP_AHRS: stop using GCS_MAVLINK.h in header files
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
59c6207a47 AP_HAL_ChibiOS: enable hardware debugging pins in SimOnHardware parameters 2022-08-16 09:39:03 +10:00
Peter Barker
be0ce8c90a hwdef: make NucleoH743 SimOnHW by default
A user doesn't necessarily want to attach an IMU/baro to use their nucleo
2022-08-16 09:39:03 +10:00
Peter Barker
441d83f05e hwdef: split SimOnHW.inc from CubeOrange-SimOnHW config
makes this easier to reuse on other boards
2022-08-16 09:39:03 +10:00
TunaLobster
01035b81b3 AP_HAL_ChibiOS: Add macros for Fuel options
Adds macros for FuelFlow, FuelLevel_PWM, and FuelLevel_Analog. The features are enabled on all 2MB boards.
2022-08-16 09:36:31 +10:00
TunaLobster
aa2c6b8d17 AP_BattMonitor: Add macros for Fuel options
Adds macros for FuelFlow, FuelLevel_PWM, and FuelLevel_Analog. The features are enabled on all 2MB boards.
2022-08-16 09:36:31 +10:00
TunaLobster
6733f75542 AP_BattMonitor: Add Fuel Level Analog driver 2022-08-16 09:36:31 +10:00
Peter Barker
ecde9f8c3f AP_HAL_ChibiOS: make HAL_FLASH_PROTECTION a boolean, stop checking for definition 2022-08-16 08:10:16 +10:00
Andrew Tridgell
b6186db24e AP_OpenDroneID: report if we lose operator location 2022-08-15 12:45:06 +10:00
Andrew Tridgell
a9d97d90c4 hwdef: removed APP_DESCRIPTOR settings
not needed
2022-08-15 09:18:34 +10:00
Andrew Tridgell
8b9570975b hwdef: added AP_OPENDRONEID_ENABLED to hwdef-bl.dat 2022-08-15 09:18:34 +10:00
Andrew Tridgell
a8ab7c3865 HAL_ChibiOS: auto-define AP_CHECK_FIRMWARE_ENABLED for AP_Periph 2022-08-15 09:18:34 +10:00
Andrew Tridgell
f7e4b5c72d AP_Vehicle: use AP_CheckFirmware 2022-08-15 09:18:34 +10:00
Andrew Tridgell
aeb6d2ab89 AP_CheckFirmware: added library for checking firmware ID and CRC 2022-08-15 09:18:34 +10:00
Andrew Tridgell
68f05c7386 AP_OpenDroneID: added AP_OpenDroneID_config.h 2022-08-15 09:18:34 +10:00
Andrew Tridgell
673fed92c7 AP_OpenDroneID: fixed checking of payload space
this fixes DroneCAN operation without a mavlink channel set
2022-08-15 08:54:48 +10:00
Peter Barker
d092e767ea AP_Common: correct gtests
AFAIK it's invalid to new a zero-length array.
2022-08-15 07:39:39 +10:00
Andrew Tridgell
2a95ced697 GCS_MAVLINK: pass OPEN_DRONE_ID_SYSTEM_UPDATE to library 2022-08-14 22:02:43 +10:00
Andrew Tridgell
b52c280704 AP_OpenDroneID: check available tx space and fixed message rates
ensure we don't lose messages due to lack of serial TX space, and
fixed update rate of LOCATION and SYSTEM_UPDATE msgs
2022-08-14 22:02:43 +10:00
Andrew Tridgell
0fc6c813a1 AP_OpenDroneID: implement OPEN_DRONE_ID_SYSTEM_UPDATE
this is a bandwidth efficient way to update the OPEN_DRONE_ID_SYSTEM message data when there is limited uplink bandwidth. Testing on real vehicles shows that with RFD900x radios at an air data rate of 125kbit/s with OPEN_DRONE_ID messages with 1Hz update (as required by FAA RemoteID standard) that there is significant impact on the ability of the GCS to give commands to the flight controller. For example, I got a high degree of packet loss in downloading parameter pre-flight, and many/most in-flight commands failed from the GCS.
By using this message we can use the minimum required bandwidth for updating operator location while remaining FAA RemoteID standard compliant
2022-08-14 22:02:43 +10:00
Peter Barker
26d3ffc27d GCS_MAVLink: correct INS_generic example
segfaults due to lack of singletoin objects in examples
2022-08-13 20:53:29 +10:00
Peter Barker
a4773413e4 AP_InertialSensor: correct INS_generic example
segfaults due to lack of singletoin objects in examples
2022-08-13 20:53:29 +10:00
Andy Piper
3521090dd5 AP_HAL_ChibiOS: correct HAL_SPI_CHECK_CLOCK_FREQ build error 2022-08-12 20:53:36 +10:00
Andy Piper
a6312ac893 AP_InertialSensor: correctly detect bad frames on regular ICM42xxx 2022-08-12 20:53:36 +10:00
Andy Piper
2b7bb84838 AP_HAL_ChibiOS: increase ICM42xxx SPI clock to 16Mhz on MatekH743 2022-08-12 20:53:36 +10:00
Andy Piper
221ab9752e AP_InertialSensor: synchronise fifo reads on the ICM42xxx 2022-08-12 20:53:36 +10:00
Peter Barker
48fd37cd25 AP_DroneID: add missing element to constructor 2022-08-11 21:06:04 +01:00
Peter Barker
67a87800f9 AP_OpenDroneID: correct compilation under gcc 7.5.0 2022-08-11 13:31:59 +10:00
Peter Barker
f345c16fda AP_Math: add dignostic message for SCurve internal error 2022-08-10 22:18:42 +10:00
Peter Barker
5b3a6daa7b AP_Mission: rename contains_terrain_relative->contains_terrain_alt_items
can we rename "constains_terrain_relative" to "contains_terrain_alt"? No big deal of course but "terrain_alt" is what we use in Copter so it's more likely to show up in searches.
2022-08-10 18:04:22 +10:00
Peter Barker
6709c6d72d AP_Arming: rename contains_terrain_relative->contains_terrain_alt_items
can we rename "constains_terrain_relative" to "contains_terrain_alt"? No big deal of course but "terrain_alt" is what we use in Copter so it's more likely to show up in searches.
2022-08-10 18:04:22 +10:00
Peter Barker
1c7e2f5094 AP_HAL_SITL: correct bind-value SIM_RC_FAIL handling
If SITL is not receiving any sitl rc input (so _sitl_rc_in.recv(...) is allways returns -1 then the bind-values code would never be crossed so the RC input values would remain at their initialisation values rather than honouring the SIM_RC_FAIL setting which says they should go to bind values (notably throttle-to-950)
2022-08-10 17:14:21 +10:00
bugobliterator
fce49232b2 hwdef: disable power reset on peripheral line 2022-08-10 17:06:29 +10:00
Andrew Tridgell
cdf8cad801 AP_GPS: fixed undulation for DroneCAN GPS 2022-08-10 05:04:18 +10:00
Andrew Tridgell
74a66ede95 AP_OpenDroneID: prevent sending of lost transmitter msg too fast 2022-08-10 05:04:18 +10:00
Andrew Tridgell
0e037c99f3 hwdef: support moving baseline yaw with Holybro G4 CAN GPS 2022-08-09 21:05:08 +10:00
Andrew Tridgell
6c3de20569 hwdef: support moving baseline GPS yaw on MatekL431-Periph 2022-08-09 21:04:37 +10:00
Shiv Tyagi
998119d011 SITL: fix var naming for precland device center 2022-08-09 18:00:11 +10:00
Andrew Tridgell
23744819dc hwdef: added two OpenDroneID enabled builds 2022-08-09 14:37:08 +10:00
Andrew Tridgell
9ce11159b0 AP_UAVCAN: support OpenDroneID 2022-08-09 14:37:08 +10:00
Joshua Henderson
ed47b10e0c AP_Arming: add OpenDroneID Mandatory Arming Check 2022-08-09 14:37:08 +10:00
Roel Schiphorst
3bd792295c GCS_MAVLINK: add OpenDroneID messages 2022-08-09 14:37:08 +10:00
Joshua Henderson
c52ae2edb4 AP_Vehicle: add OpenDroneID library 2022-08-09 14:37:08 +10:00
Roel Schiphorst
d346633996 AP_OpenDroneID: add OpenDrone ID library 2022-08-09 14:37:08 +10:00
Joshua Henderson
378dff5568 AP_GPS: added get_undulation support 2022-08-09 14:37:08 +10:00
Peter Barker
541cfa022b AP_Terrain: fix bad prearms-pass-when-they-shouldn't issue
The squares surrounding the current location were only checked when we went to send a terrain request.  This means it was possible that:
 - the number of pending requests could go to zero
 - prearm checks would pass
 - vehicle arm is attempted by the user (or a script, or ....)
 - the code would call AP_Terrain::send_requests which would create more pending requests
 - the arming sequence would fail

It's also possible for the arming to succeed, and then we're flying in violation of the intended prearm checks.

Doing things in the update function has the additional advantage of making things more efficient as we can push out terrain requests more often.
2022-08-09 14:31:14 +10:00
Peter Barker
c2d91a3bdb AP_Mission: mark mission as changed upon mission clear 2022-08-09 14:31:14 +10:00
Peter Barker
50fb56a74f AP_Mission: memoise result of contains_terrain_relative
527 items takes ~2200us on CubeOrange which is way too long
2022-08-09 14:31:14 +10:00
Peter Barker
4c674b64fb AP_Terrain: correct wait-for-terrain prearm check
looking at pending is insufficient as we may have more mission items to check to see if they need other pieces of terrain.  That is, terr_pending can go to zero momentarily and then go back to a non-zero number as Terrain's update method checks the mission and rally libraries for more terrain requirements.

Without this patch the prearm checks can momentarily pass, allowing the vehicle to arm.  The vehicle could hit a terrain failsafe later if it doesn't manage to get the data while in flight.
2022-08-09 14:31:14 +10:00
Peter Barker
d688e6068b AP_Terrain: move terrain prearm checks to AP_Terrain 2022-08-09 14:31:14 +10:00
Peter Barker
96ef34acac AP_Arming: move terrain prearm checks to AP_Terrain 2022-08-09 14:31:14 +10:00
Peter Barker
3bcd4fa22a AP_Arming: make terrain checks common between Copter and Plane 2022-08-09 14:31:14 +10:00
Andrew Tridgell
bad0120d3c AP_Mission: added contains_terrain_relative()
used in plane arming check
2022-08-09 14:31:14 +10:00
Iampete1
2d06261be3 AP_Gripper: apply auto close to all backends. 2022-08-09 13:23:35 +10:00
Leonard Hall
4bf622dbaf AP_Gripper: Add feedback when already in state 2022-08-09 13:23:35 +10:00
Leonard Hall
64d69c5977 AP_Gripper: Servo Gipper enhancments 2022-08-09 13:23:35 +10:00
Tamas Nepusz
1ae299b717 RC_Channel: reserve RX aux functions 248-249 for Skybrush 2022-08-09 13:22:07 +10:00
Andy Piper
d6ba508cb9 AP_ESC_Telem: keep RPM updates in the correct order 2022-08-09 11:13:11 +10:00
Andy Piper
2c22bca1a9 AP_Vehicle: make sure that if ESC telemetry is missing notch updates are not misordered 2022-08-09 11:13:11 +10:00