Commit Graph

37196 Commits

Author SHA1 Message Date
George Zogopoulos
68003a5eb4 AP_TECS: Reverted pitch limitation order 2024-10-02 17:09:07 +10:00
George Zogopoulos
121adf5f6d AP_TECS: Throttle limits refactor 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
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
9a563e222f GCS_MAVLink: Check if set_message_interval is too fast 2024-10-02 09:22:43 +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
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
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
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
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
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
Thomas Watson
ad5da01077 AP_NavEKF3: document provenance of covariance matrix equations
Validated that the generated code matches exactly the code in AP_NavEKF3
(except for the early exits).

Delete `covariance_generated.cpp` as we know exactly how to generate it
now (and it was out of date anyway).
2024-10-01 09:28:54 +10:00
Thomas Watson
4184980537 AP_NavEKF3: derivation: pin generator library versions
Document exactly which versions were used when generating the code.
Sympy is the most important so it is explicitly checked.

Also add an alternate generate script which uses `nix-shell` to make it
convenient to automatically use these versions.
2024-10-01 09:28:54 +10:00
Thomas Watson
57082257fd AP_NavEKF3: derivation: make generation slightly easier
Add a shell script to run the generate_1.py file. Foresight tells us
that we will need multiple such files.

Also ignore the generated code files as they are already out of date and
we are aiming to document provenance and make them unnecessary anyway.
2024-10-01 09:28:54 +10:00
Thomas Watson
c880bf57cd AP_NavEKF3: derivation: auto-substitute optimized power functions
Avoids the need to manually insert them after generation.
2024-10-01 09:28:54 +10:00
ARg
1ef0f1a63f AP_HAL_ESP32: Migration of ESP32 targets from idf 4.4 to 5.3 consisting of:
- modification of CMakeLists to use new component names of idf 5.3;
- removing big sdkconfig, which changes a lot, when upgrading idf and to use sdkconfig.defaults, which contain only non default defines;
- Updated idf installation packages list, according to espressif documentation;
- Updated README.md to reflect changes in sdkconfig handling;
- Fixed WDT in Scheduler, it was broken with idf 5.3;
- fixed compilation issues with GCC 13 (which is used by idf 5.3);
- fixed bug in case when HAL_ESP32_WIFI defined as 0 (disable wifi)
- Added ESP32 targets sdkconfig (auto generated) to .gitignore
2024-10-01 09:25:35 +10:00
Peter Barker
b234729398 AP_HAL_ChibiOS: CubeRedPrimary: probe external compasses 2024-10-01 09:22:42 +10:00
Nick Exton
2989d623bd AP_Scripting: Add binding for AP_Camera::set_stream_information() 2024-10-01 08:18:54 +09:00
Nick Exton
cb620126b3 AP_Camera: Add capability to set VIDEO_STREAM_INFORMATION from Lua 2024-10-01 08:18:54 +09:00
Nick Exton
919a711f17 AP_HAL_ChibiOS: Disable VIDEO_STREAM_INFORMATION in minimize_common.inc 2024-10-01 08:18:54 +09:00
Nick Exton
67642867e3 GCS_MAVLink: Add handler for VIDEO_STREAM_INFORMATION request 2024-10-01 08:18:54 +09:00
Nick Exton
e6ac9c3108 AP_Scripting: Add binding for AP_Camera::set_camera_information() 2024-10-01 08:18:54 +09:00
Nick Exton
fed948c98d AP_HAL_ChibiOS: Disable CAMERA_INFO_FROM_SCRIPT in minimize_common.inc 2024-10-01 08:18:54 +09:00
Nick Exton
30a212b4cf AP_Camera: Add capability to set CAMERA_INFORMATION from Lua 2024-10-01 08:18:54 +09:00
Andrew Tridgell
cb924d1363 AP_L1_Control: make reached_loiter_target() more reliable
if our target loiter radius is unachievable then we can reach the
loiter target on initial capture but be unable to maintain it. This
ensures that once we capture we return true on reached_loiter_target()

This is critical for any mission type where we take an action on
reached_loiter_target() and another condition (such as being lined up
for a waypoint). Otherwise we may continue loitering forever
2024-10-01 07:15:44 +10:00
Tdogb
f282c8db65 hwdef: add DPS280 to baros present on FlyWooF745 2024-09-30 19:58:04 +10:00
Andrew Tridgell
1e310ac86f AP_AHRS: add option to disable the EKF check for airspeed
for some flight profiles (such as glider pullup) the EKF airpeed
consistency check may be triggered, leading to a valid airspeed being
ignored, which can lead TECS to be in non-airspeed mode
2024-09-29 11:06:05 +10:00
juvinski
413452aa1a AP_Baro: fix example: fixing missing objects
This fix  a crash running on beaglebone boards reported
       https://github.com/ArduPilot/ardupilot/issues/21321
2024-09-29 09:40:37 +10:00
muramura
8de103d6ee AP_RangeFinder: Move the flag setting location of has_data 2024-09-29 09:40:20 +10:00
muramura
637aec0085 SITL: Change division to multiplication 2024-09-28 11:01:41 +10:00