Commit Graph

30318 Commits

Author SHA1 Message Date
Peter Barker 1e8e100409 AP_Terrain: rename HAL_MISSION_ENABLED to AP_MISSION_ENABLED 2022-08-18 22:49:10 +10:00
Peter Barker f9b409ce01 AP_Mission: rename HAL_MISSION_ENABLED to AP_MISSION_ENABLED 2022-08-18 22:49:10 +10:00
Peter Barker bf5817e108 AP_Logger: rename HAL_MISSION_ENABLED to AP_MISSION_ENABLED 2022-08-18 22:49:10 +10:00
Peter Barker e4bc7a0ef5 AP_HAL_ChibiOS: rename HAL_MISSION_ENABLED to AP_MISSION_ENABLED 2022-08-18 22:49:10 +10:00
Peter Barker 936fef11e2 AP_Filesystem: rename HAL_MISSION_ENABLED to AP_MISSION_ENABLED 2022-08-18 22:49:10 +10:00
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