Commit Graph

65137 Commits

Author SHA1 Message Date
George Zogopoulos 6ce6ef8fff Plane: Takeoff improvements
- TAKEOFF and AUTO flight modes now should have identical takeoff
- Prevent behaviour switching past climb altitude in TAKEOFF mode.
- Refactor set_pitch_min/max methods.
  Max was already there, now renamed.
  Min is newly introduced.
  behaviour.
- Remove enforcement of min takeoff throttle logic from servos.cpp.
  It is now handled only by takeoff.cpp.
- Take TKOFF_LVL_ALT into consideration in AUTO as well.
- Fixed pitch setpoint when TKOFF_ROTATE_SPD>0.
- Roll navigation in mode TAKEOFF during climb should now work again.
- Now the TAKEOFF loiter waypoint is set by the bearing of the
aircraft while on TKOFF_LVL_ALT, as in the last stable release, instead
of TKOFF_ALT.
- Using TRIM_THROTTLE in takeoffs, when TKOFF_THR_MIN==0
2024-10-02 17:09:07 +10:00
George Zogopoulos 880ebbcdad AP_TECS: Takeoff improvements
- Refactor and split set_pitch_max_limit method.
- New _update_pitch_limits to encapsulate all relevant functionality.
- Automatically reset if pitch and throttle are overriden.
- nullified TAKEOFF alt_dem offset on external throttle.
- Simplify use of TKOFF_THR_MIN.
- Prevent takeoff altitude overshoot by capping the altitude setpoint offset.
- Move pitch limits after vertical acceleration limitation.
2024-10-02 17:09:07 +10:00
Tarik 5ea787a46d Autotest: Modify look_for_wiggle to test for individual servo movements 2024-10-02 17:05:45 +10:00
Tarik 9d58bfb91e Plane: Stage control surface wiggles one after another 2024-10-02 17:05:45 +10:00
Peter Barker b73bef5b13 autotest: correct frame in reposition command 2024-10-02 12:10:16 +10:00
Bayu Laksono efe003743c AP_Notify: Add GPIO driver and buzzer 2024-10-01 21:06:39 -05:00
Bayu Laksono 6d672d42b9 AP_HAL_ESP32: Add GPIO driver and buzzer 2024-10-01 21:06:39 -05:00
Stephen Dade dad98d99eb Tools: Fix message rate setting in tests 2024-10-02 09:22:43 +10:00
Stephen Dade 9042e7de1a Tools: Add test for SET_MESSAGE_INTERVAL limiting 2024-10-02 09:22:43 +10:00
Stephen Dade 9a563e222f GCS_MAVLink: Check if set_message_interval is too fast 2024-10-02 09:22:43 +10:00
Willian Galvani 1a15e50434 CI: add navigator64 build 2024-10-02 06:18:32 +10:00
Willian Galvani 64b9d0ebea Tools: ardupilotwaf: add entry for 64bit versions of Navigator 2024-10-02 06:18:32 +10:00
Ryan Friedman 9d6190b4fd Tools: Do not use system packages on openSUSE
* We only tested on apt, don't blindly change dev env stuff that's not
  tested in CI

Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-10-01 16:00:56 +10:00
Ryan Friedman 1bdc635ba8 AP_DDS: Implement joystick support
Signed-off-by: Ryan Friedman <ryan.friedman+github@avinc.com>
Co-Authored-by: Tiziano Fiorenzani
2024-10-01 10:46:35 +10:00
Andrew Tridgell b6f20e3786 AP_Scripting: docs update 2024-10-01 10:45:10 +10:00
Andrew Tridgell 3bbde7c302 AP_Scripting: test update 2024-10-01 10:45:10 +10:00
Andrew Tridgell 6a16bce001 AP_Scripting: added bindings for IPv4 address/string
and make socket recv return the source address and port
2024-10-01 10:45:10 +10:00
Henry Wurzburg 6304eb99b4 Copter: add turtle mode to flight modes metadata 2024-10-01 10:35:45 +10:00
Peter Barker 8dec79d136 AP_GPS: use AP_GPS_FixType for ExternalAHRS fix type 2024-10-01 10:32:11 +10:00
Peter Barker f66815b200 AP_ExternalAHRS: use AP_GPS_FixType for ExternalAHRS fix type 2024-10-01 10:32:11 +10:00
Peter Barker efec7ccdc5 SITL: remove stale parameter metadata
now done by having the subgroup in its own file
2024-10-01 10:25:49 +10:00
Iampete1 d7599f225c GCS_MAVLink: Common: Allow scripting to receive messages which fail CRC check 2024-10-01 10:25:22 +10:00
Iampete1 902f1e6476 AP_Scripting: modules: MAVLink: update to latest version of generated code 2024-10-01 10:25:22 +10:00
Peter Barker 981c500845 Rover: adjust for AP_Mission logging mission-item-starts 2024-10-01 10:19:29 +10:00
Peter Barker 48c9cd6eae ArduSub: adjust for AP_Mission logging mission-item-starts 2024-10-01 10:19:29 +10:00
Peter Barker 0c0a615403 ArduPlane: adjust for AP_Mission logging mission-item-starts 2024-10-01 10:19:29 +10:00
Peter Barker 9f1690ac20 ArduCopter: adjust for AP_Mission logging mission-item-starts 2024-10-01 10:19:29 +10:00
Peter Barker 163f49827f AP_Mission: split logging of mission-upload vs mission-execution 2024-10-01 10:19:29 +10:00
Peter Barker 4237a33ce6 AP_Logger: split logging of mission-upload vs mission-execution 2024-10-01 10:19:29 +10:00
Peter Barker 1d947396b3 AP_Mission: move Mission log structures into Mission library 2024-10-01 10:19:29 +10:00
Peter Barker b98e682ec6 AP_Logger: move Mission log structures into Mission library 2024-10-01 10:19:29 +10:00
Peter Barker bdecbb5369 Blimp: correct parameter documentation
Blimp doesn't send this stuff
2024-10-01 10:13:06 +10:00
Peter Barker 456f70d4d9 ArduSub: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Peter Barker 1470176ca1 ArduPlane: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Peter Barker 47618ccb72 ArduCopter: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Peter Barker 423daaa71f GCS_MAVLink: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Peter Barker a401c98c74 AP_Terrain: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Bob Long 11014cae06 AP_BattMonitor: add option minimum volt option 2024-10-01 10:05:01 +10:00
Andrew Tridgell 52169f25da HAL_ChibiOS: replace volatile bools with mutexes
this replaces the two booleans used to mediate TX and RX buffer
protection with mutexes.

The booleans were a hangover from the very early HAL_ChibiOS code, and
can lead to a deadlock. The sequence is as follows:

 - a very high CAN bus bandwidth usage, triggered by MissionPlanner
   requesting CAN_FORWARD on a CAN serial port. That causes a
   "infinite" number of CAN_FRAME messages which saturates the bus,
   and leads to the DroneCAN thread looping with no pause

 - a serial port configured as GPS type AUTO, auto-probing for a GPS
   that isn't there. This calls begin() periodically

 - the UART TX thread assocated with that UART not making progress as
   the TX thread priority is below the DroneCAN thread priority

 - this causes the begin() in main thread waiting for _in_tx_timer to
   loop forever, which triggers a watchdog
2024-10-01 09:54:26 +10:00
Peter Barker 5ab9cda206 autotest: add autotest for invalid battery backend checks 2024-10-01 09:48:13 +10:00
Peter Barker 0cd6e330a5 AP_BattMonitor: add more-specific prearm failure when SUM backend not available 2024-10-01 09:48:13 +10:00
Peter Barker 721a9b846e AP_BattMonitor: print unhealthy message if battery backend not as expected
a backend which fails to allocate, or where the user has changed the backend type without rebooting will cause an "unhealthy" message to be emitted
2024-10-01 09:48:13 +10:00
Henry Wurzburg 4b5f490e9f Tools:remove BATTRY_SUM from <1K builds 2024-10-01 09:48:13 +10:00
Peter Barker 34b775259f Rover: remove handling of prearm empty-string case
it is clear by inspection that this string can never be empty when the called function returns false.  AP_OAPathPlanner::pre_arm_check is not that complicated!
2024-10-01 08:40:44 +09:00
tompsontan c5964ecd35 Tools: add board X-MAV-AP-H743v2
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2024-10-01 09:39:55 +10:00
tompsontan 84fbaa3abc AP_HAL_ChibiOS: add board X-MAV-AP-H743v2
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2024-10-01 09:39:55 +10:00
Thomas Watson 8e5ee61b02 AP_NavEKF3: derivation: don't generate unused equations
The code is left in for the future when they might be used.
2024-10-01 09:28:54 +10:00
Thomas Watson f9fa2565c4 AP_NavEKF3: document provenance of tilt error variance equations
This is also from the older version of the generator.

Note that as documented, some of the equations have been removed and
rearranged slightly as it is assumed their terms are zero. Additionally,
the result is taken as the sum of the diagonal entries of the matrix.
2024-10-01 09:28:54 +10:00
Thomas Watson 34fba4dfd7 AP_NavEKF3: document provenance of drag force fusion equations
It's from the older version of the generator as well.

Update variable names in the real code to be the same as the generated
code. Skip generation of the unused alternate form of the equations.

Delete `acc_bf_generated.cpp` as we know exactly how to generate it now.
2024-10-01 09:28:54 +10:00
Thomas Watson ef1c31bd50 AP_NavEKF3: document provenance of yaw fusion equations
Requires digging up old versions of the generator script.

The equations have been rearranged somewhat after generation to choose
the appropriate method but they do match overall. The auto-substitution
of the power functions caused slight changes to the generated syntax so
we make those to the real code as well.

Delete `yaw_generated.cpp` as we know exactly how to generate it now.
2024-10-01 09:28:54 +10:00