Commit Graph

37431 Commits

Author SHA1 Message Date
Alexis Guijarro 43b8900bec hwdef: Removed duplication for AP_STATS_ENABLED 2024-10-11 09:51:27 +11:00
Peter Barker b36f539c7c SITL: avoid floating point exception around rangefinder distance
projecting onto an infinite plane can cause exceptionally long rangefinder distances - for now jsut cap the distance that the simulated rangefinder can return to avoid floating point exceptions.

the FPE is caused in the Plane FlyEachFrame autotest when flying quadplane-copter_tailsitter - which ends up with a rangefinder at yaw-minus-180.
2024-10-10 20:44:04 +11:00
Andy Piper cb111504e2 AP_InertialSensor: cope with negative ESC frequencies in notch updates 2024-10-09 18:31:57 +11:00
Tiziano Fiorenzani 57157d470f AP_DDS: Airspeed topic 2024-10-09 10:00:32 +11:00
Peter Barker dec10a1a58 hwdef: GEPRCF745BTHD: remove parachute and bl-flashing support (flash overflow) 2024-10-09 08:24:12 +11:00
Henry Wurzburg b71ed41c32 AP_BLHeli:correct RVMASK metadata 2024-10-08 20:58:16 +11:00
Peter Barker 8ba2dae936 AP_NavEKF2: clarify wind direction descriptions 2024-10-08 20:57:36 +11:00
Peter Barker 197d837b6c SITL: clarify wind direction descriptions 2024-10-08 20:57:36 +11:00
Peter Barker 8edcb4b8d3 AP_NavEKF3: clarify wind direction descriptions 2024-10-08 20:57:36 +11:00
Peter Barker 8487657137 AP_AHRS: DCM: log estimated wind 2024-10-08 20:57:36 +11:00
Peter Barker 56de7243f5 AP_AHRS: DCM: tidy variable creation 2024-10-08 20:57:25 +11:00
muramura 6c1a5bf3d0 AP_Logger: Align the order of definitions 2024-10-08 20:57:01 +11:00
Peter Barker 41753b43d7 AP_AHRS: DCM: remove unused variable 2024-10-08 11:10:26 +11:00
Peter Barker 3273f58851 AP_HAL: remove defines for boards which don't exist
we'll now get compilation failures if code is introduced depending on these...
2024-10-08 11:04:28 +11:00
Peter Barker 93174e3240 AP_HAL: avoid include of non-existant file
this file doesn't exist
2024-10-08 11:04:28 +11:00
olliw42 4616fec1be AP_SerialManager: RegisteredPort, add bytes_per_second/baudrate methods 2024-10-08 10:42:21 +11:00
Thomas Watson e9e7eba799 AP_DroneCAN: properly convert timeout to deadline for aux frames
The timeout specified for auxiliary driver frames was passed to the
driver where a deadline was expected. The transmission was then started
after its "deadline", thereby causing it to be canceled and the data
lost if the frame could not be sent immediately.

Fix by converting the timeout to a deadline before passing to the
driver. The conversion is done in the Canard interface code as it
already does other conversions from timeouts to deadlines.
2024-10-08 10:35:41 +11:00
ARg 47d391fc6d AP_HAL_ESP32: ADC driver ported to new idf 5.x driver and debugged 2024-10-08 10:29:02 +11:00
Ryan Friedman 88c06e07d7 AP_DDS: Wrap all topics in ifdefs
* Give ability to enable/disable any topic in DDS through compile
  options

Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-10-08 10:18:38 +11:00
Nick Exton 77f1efac5e AP_Mission: Set DO_MOUNT_CONTROL.mode when converting command to MAVLink 2024-10-08 08:05:27 +09:00
bnsgeyer e30b4bf090 AP_MotorsHeli: fix cooldown feature with new autorotation RSC library 2024-10-06 14:33:57 +11:00
Leonard Hall 4d116ceefe AR_PosControl: integrate PSC logging update
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-10-04 09:25:56 +09:00
Leonard Hall 399336f7ce AC_PID: AC_P_2D comment fix 2024-10-04 09:25:56 +09:00
Randy Mackay 73dfeac547 AP_Scripting: copter-slung-payload suppresses oscillation
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Randy Mackay bff288d498 AP_Scripting: mavlink_msgs global-position-int and heartbeat 2024-10-04 09:25:56 +09:00
Randy Mackay 51ec6dfd73 AP_Scripting: add copter-posoffset example script
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Randy Mackay 0c81f111fb AP_Scripting: add set_posvelaccel_offset binding
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Leonard Hall 37a7635c66 AC_Loiter: updates to offset handling 2024-10-04 09:25:56 +09:00
Randy Mackay e20c7edf68 AC_Loiter: optimise get-posvelaccel-target usage 2024-10-04 09:25:56 +09:00
Randy Mackay 2753b7030b AC_Circle: get-closest-point-on-circle returns dist 2024-10-04 09:25:56 +09:00
Randy Mackay 9ca47cf465 AC_Circle: integrate pos vel accel offsets
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Leonard Hall 9185b82b7a AC_WPNav: get_closest_point_on_circle uses is_positive 2024-10-04 09:25:56 +09:00
Randy Mackay 951ff473c3 AC_WPNav: support pos vel accel offsets
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Randy Mackay c706d01d7f AC_PosControl: implement singleton 2024-10-04 09:25:56 +09:00
Leonard Hall 9fb8a0f1ac AC_PosControl: support 3D pos, vel, accel offsets
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-10-04 09:25:56 +09:00
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
murata 946e148688 AP_Arming: mark ARMING_RUDDER as Plane,Rover,Copter and Blimp only 2024-09-27 21:51:06 +10:00
muramura 13a5dc8f71 AP_Arming: Set the message buffer size to twice the message size 2024-09-27 21:33:56 +10:00
muramura 0cb49559e1 AP_Mission: Change the IF statement to a SWITCH statement 2024-09-27 21:30:43 +10:00
Bob Long e57994f28f AP_ICEngine: fix send_text severities 2024-09-27 16:12:28 +10:00
Loki077 772cd1dae7 AP_ICEngine: add max retrial of cranking
Added Param MAX_RETRY which If set 0 or less, then there is no limit to retrials. If set to a value greater than 0 then the engine will retry starting the engine this many times before giving up.
2024-09-27 16:12:28 +10:00
Nick Exton eb4224b818 AP_RobotisServo: Send register write values as little-endian 2024-09-27 11:53:06 +10:00
Andrew Tridgell 9dc7dc32c8 AP_DroneCAN: prevent saturation of CPU with DroneCAN thread 2024-09-27 11:06:20 +10:00
Andrew Tridgell 070363e453 HAL_ChibiOS: limit RX timeout to 100ms
this prevents a very long timeout in begin(), replacement with a mutex
will happen in a separate PR
2024-09-27 11:06:20 +10:00
Peter Barker decf484702 AP_Mount: use NaN in place of 0 for camera information message
Co-authored-by: muramura <ma2maru@gmail.com>
2024-09-26 19:26:59 +10:00
Peter Barker 06b763ca94 AP_Param: add and use global NaNf float value 2024-09-26 19:26:59 +10:00
Peter Barker edc0e46614 AP_Mount: add and use global NaNf float value 2024-09-26 19:26:59 +10:00
Peter Barker 7710e3c9bc AP_Math: add and use global NaNf float value 2024-09-26 19:26:59 +10:00
Peter Barker 54247833c0 AP_Logger: add and use global NaNf float value 2024-09-26 19:26:59 +10:00
Peter Barker 08b4cc1374 AP_Camera: add and use global NaNf float value 2024-09-26 19:26:59 +10:00
Andy Piper eeda86ccb4 AC_AttitudeControl: rate_controller_run_dt() takes dt as last argument 2024-09-26 19:25:33 +10:00
Andy Piper 15de449d12 AC_AttitudeControl: raise a config error if rate_controller_run_dt() is called by accident 2024-09-26 19:25:33 +10:00
Andy Piper 053db86abc AC_AttitudeControl: ensure Write_Rate() can be called from autotune 2024-09-26 19:25:33 +10:00
Andy Piper 02a2c788da AC_AttitudeControl: ensure plane always gets the latest gyro 2024-09-26 19:25:33 +10:00
Andy Piper a647b3914c AC_AttitudeControl: remove unused functions 2024-09-26 19:25:33 +10:00
Andy Piper 70067ea7ae AC_AttitudeControl: Write_Rate() should be thread-safe 2024-09-26 19:25:33 +10:00
Andy Piper 829422ecfb AC_AttitudeControl: add commentary about functions which modify the rate loop target 2024-09-26 19:25:33 +10:00
Andy Piper 6b5da48641 AC_AttitudeControl: provide function to reset target modifiers 2024-09-26 19:25:33 +10:00
Leonard Hall 2cddea8d9f AC_Autotune_Multi: Use rate step command 2024-09-26 19:25:33 +10:00
Leonard Hall ddfccb3098 AC_AttitudeControl: Use rate step command 2024-09-26 19:25:33 +10:00
Andy Piper ff002cba3f AC_AttitudeControl: ensure the rate and attitude controllers can't interfere with the target at the same time 2024-09-26 19:25:33 +10:00
Andy Piper c28e38e9b5 AC_AttitudeControl: pass in gyro sample to rate controller 2024-09-26 19:25:33 +10:00
Andrew Tridgell 88957235d2 Scripting: added Lat,Lon to aerobatics POSM/POST
this makes "map POSM POST" work on aerobatic scripts
2024-09-26 16:44:13 +10:00
Rhys Mainwaring 00163ce988 AP_Camera: add Python examples for GStreamer UDP and RTSP video streams
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-09-26 09:32:27 +09:00
Robert Taylor d82e82635f hwdef: switch CAN port definiton on Nucleo-496 hwdef
The CAN port as it was is a valid CAN port for the nucleo, but on the development board the CAN silkscreen is actually on PD0 and PD1. This change makes it easier to get the example running on the Nucleo
2024-09-26 08:31:50 +10:00
Bob Long 8797a07833 AP_ICEngine: clarify ICE_OPTIONS:2 description 2024-09-25 23:44:52 +10:00
Bob Long 8d9ac6451f AP_ICEngine: don't run engine with safety engaged 2024-09-25 23:44:52 +10:00
Peter Barker 14332fad52 hwdef: -Os on MFT-SEMA-100 to avoid flash overflow 2024-09-25 23:44:05 +10:00
Peter Barker c9de940fc8 hwdef: JHEMCU-GSF405A becomes minimize-fpv-osd 2024-09-25 17:12:44 +10:00
Peter Barker 1e26441ae6 AP_Common: Integrate methods for converting hexadecimal characters to numbers
Co-authored-by: muramura <ma2maru@gmail.com>
2024-09-25 08:48:44 +10:00
muramura e4ca54b2e4 AP_CANManager: Integrate methods for converting hexadecimal characters to numbers 2024-09-25 08:48:44 +10:00
Iampete1 4894675977 AP_Scripting: add binding for vehicle `set_target_rate_and_throttle` 2024-09-25 08:47:30 +10:00
Iampete1 fc327fa370 AP_Vehicle: add support for `set_target_rate_and_throttle` 2024-09-25 08:47:30 +10:00
Peter Barker 8e6a1a2b02 AP_Arming: retrieve RC channels directly from RC_Channels
... instead of retrieving values from rcmap and then getting the channel from RC_Channels
2024-09-25 08:46:55 +10:00
Peter Barker 1871170f98 RC_Channel: add accessor for channel number
some places want to be able to report this to the user
2024-09-25 08:46:55 +10:00
muramura 1f5b88cf3b AP_Motors: Change to pass-through 2024-09-24 22:51:23 +10:00
timtuxworth bbd9148b4b AP_Scripting: example for use Location::AltFrame for guided_state.target_alt_frame 2024-09-24 22:51:02 +10:00
Peter Barker 3d4b57cd4a AP_HAL_QURT: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 27df5e0479 AP_HAL_Linux: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker cc9279713a AP_HAL_ESP32: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker ebe9a75a66 SITL: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 68e003fd74 AP_Baro: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker a40b3879fb AC_CustomControl: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker a0978d9d0a AR_WPNav: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 2447be861e AP_SurfaceDistance: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker bb9a0a5b2f AP_Scripting: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 1ce391c6e8 AP_RCTelemetry: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 87fa7a208d AP_RCProtocol: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 53c50b6bc7 AP_NavEKF3: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 8bd1f49a04 AP_NavEKF2: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 5f5fb40753 AP_Motors: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 7147a2deeb AP_InertialSensor: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 5a967a60ff AP_HAL: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 8b9154d115 AP_HAL_ChibiOS: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 2ddec1f9f4 AP_Frsky_Telem: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 291a1ced88 AP_ExternalAHRS: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 3a9f1c1f37 AP_DroneCAN: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker a29dca996e AP_Compass: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker b54c424842 AP_Camera: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 8290f15f2d AP_AHRS: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker aaec6824f6 AP_ADSB: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 6209f31d30 AC_PID: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker 2c150f42bf AC_Avoidance: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Peter Barker b480416c3d AC_AttitudeControl: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Rhys Mainwaring a75b8a9269 AP_DDS: add params for ping timeout and max retries
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-09-24 22:49:49 +10:00
Thomas Watson 5f4a6dc2fb AP_HAL_ChibiOS: remove dependency on tmpnam
tmpnam is never linked and not necessary, and naming it/redefining it
introduces problems on platforms that do have a definition.
2024-09-24 22:49:18 +10:00
Thomas Watson 380d8ca6fc AP_Filesystem: remove dependency on tmpnam
tmpnam is never linked and not necessary, and naming it/redefining it
introduces problems on platforms that do have a definition.
2024-09-24 22:49:18 +10:00
Thomas Watson 8b63488431 AP_Scripting: remove dependency on tmpnam
tmpnam is never linked and not necessary, and naming it/redefining it
introduces problems on platforms that do have a definition.
2024-09-24 22:49:18 +10:00
Peter Barker 75073427a6 AP_SerialManager: avoid use of AP_HAL.h in config file
too easy to create loops with this
2024-09-24 11:59:13 +10:00
Peter Barker 82ac0ead72 AP_Terrain: create and use AP_Terrain_config.h 2024-09-24 11:59:13 +10:00
Peter Barker 4b1e1871c9 AP_Mount: create and use AP_Terrain_config.h 2024-09-24 11:59:13 +10:00
Peter Barker a8cc071d62 AP_Filesystem: rearrange to put mission filesystem last
We're developing loops in our config files, move include to after base FILESYSTEM_READING/FILESYSTEM_WRITING defines
2024-09-24 11:59:13 +10:00
Peter Barker ee830355d2 AC_PrecLand: remove assumption about how precland update method is called
this method may not be being called from the scheduler table.  Have the callers pass in a true value instead
2024-09-24 10:56:57 +09:00
Peter Barker 3e1ad5dab6 AP_Compass: use memcmp to check whoami result code from HMC5843 device
Co-authored-by: muramura <ma2maru@gmail.com>
2024-09-24 11:52:47 +10:00
Peter Barker 9784e28148 AP_WheelEncoder: correct initialisation of WheelRateController objects
the existing constructer sets a slew rate limit to 0.2

This is essentially a missing patch from a previous series of PRs which moved dt from being a member variable to being passed into the update call for the PID
2024-09-24 10:46:34 +09:00
Peter Barker 17f501eea5 AC_PID: AC_HELI_PID: override the AC_PID::Default constructor
in place of the existing ordered-fields constructor
2024-09-24 11:43:20 +10:00
Peter Barker 4663382b01 AC_AttitudeControl: use AC_PID defaults to tidy heli rate PID initialisation
makes it look like the Copter initialisation - ie. legible
2024-09-24 11:43:20 +10:00
Peter Barker 6a74a97bf7 AC_AttitudeControl: use AC_PID defaults to tidy rate Sub PID initialisation
makes it look like multi ie. legible
2024-09-24 11:36:38 +10:00
bugobliterator 4d7b94c3cb AP_DroneCAN: Fix constructor initialization order
bad ordering was leading to dronecan dna server getting initialised before canard interface is initialised leading
2024-09-24 11:29:34 +10:00
caijie 42c82f6c5d AP_HAL_ChibiOS: add VUAV-V7pro 2024-09-24 10:07:39 +10:00
Peter Barker 1d91962b96 AP_GPS: move initialisation of some members into header 2024-09-24 09:30:05 +10:00
ARg eb283ce607 SITL: correctly cast types for MegaSquirt error format string
`uint32_t` is `unsigned long int`, not `unsigned int`.
2024-09-24 09:00:29 +10:00
ARg 8204ff4d7c AP_Filesystem: fix esp32 function datatypes
Make them match the superclass and the header file.
2024-09-24 09:00:29 +10:00
Andrew Tridgell 89c2b48286 AP_CANManager: ensure we only remove our own fwd registrations
keep a record of which bus we have registered a callback for and only
unregister with that bus. This prevents us unregistering a multicast
callback when disconnecting from MAVCAN
2024-09-23 21:01:22 +10:00
Andrew Tridgell b98c7c5296 AP_CANManager: fixed de-registering CAN forwarding
this prevented MissionPlanner MAVCAN UI from working reliably as the
CANManager could think we are registered when we are not
2024-09-23 21:01:22 +10:00
Clyde McQueen 8b37100772 autotest: large outliers in sub terrain test have low sq 2024-09-23 19:14:34 +10:00
Peter Barker 44c1e9b896 AP_TemperatureSensor: allow AP_TEMPERATURE_SENSOR_DUMMY_METHODS_ENABLED to be overridden 2024-09-22 20:34:33 +10:00
Peter Barker 83c9b32093 AP_Scripting: add bindings for the AP_TemperatureSensor 2024-09-22 20:34:33 +10:00
muramura 0020cf5fe8 AP_Compass: Add existing devices 2024-09-22 10:11:50 +10:00
cuav-chen2 89a4571c58 AP_Compass: Add in BMM350 Driver 2024-09-21 10:08:36 +10:00
bugobliterator 7513281f65 AP_Scripting: add bindings get/set full mode for GPIO
allows setting alternate pin modes pin drive strengths etc.
2024-09-21 10:07:30 +10:00
Peter Barker fb5c337328 AP_TemperatureSensor: specify units (degC) in comment for get_temperature 2024-09-19 12:37:50 -05:00
Rahul 7d907e9798 AP_TemperatureSensor: new MLX90614 sensor backend driver conversion fix 2024-09-19 22:29:24 +10:00
Ryan Friedman aecb3268c7 AP_DDS: Correct compilation of tests without external odom
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-19 11:45:15 +10:00
muramura c0d14ec397 GCS_MAVLink: Add conditions and delete the same processing 2024-09-19 11:44:57 +10:00
bugobliterator 3d47f01dd4 AP_HAL_ChibiOS: enable TESTs on CubePilot-PPPGW 2024-09-19 11:44:22 +10:00
bugobliterator 5acf25973e AP_Networking: add connector loopback test for Ethernet 2024-09-19 11:44:22 +10:00
Rahul 86b6102267 AP_TemperatureSensor: new MLX90614 sensor backend driver added 2024-09-18 19:10:01 +10:00
Henry Wurzburg 8c3621d021 hwdef: add bdshot to SpeedyBeeF405Wing
Co-authored-by: setup <alxdr64m@gmail.com>
2024-09-18 17:51:26 +10:00
Henry Wurzburg df90b640ca AP_Scripting:Add parameter controller applet 2024-09-18 13:10:26 +10:00
Iampete1 c19e5713ae GCS_MAVLink: Fix Airspeed without AHRS 2024-09-17 22:11:06 +10:00
Peter Barker 8b50f3b54b AP_OSD: don't go via RCMap singleton to get RPTY RC channels 2024-09-17 22:10:53 +10:00
Ruffalo Lavoisier e3f76591fc AP_HAL_ChibiOS: check nullptr 'name' variable
- Check nullptr before using the  'name' variable assigned from malloc()
2024-09-17 22:10:26 +10:00
Thomas Watson 20d04fa823 AP_DroneCAN: DNAServer: remove preferred allocation support
Nothing is known to support it so it can't be tested. Removing it saves
flash and reduces complexity.
2024-09-17 22:10:08 +10:00
Thomas Watson 12a106333c AP_DroneCAN: DNAServer: optimize allocation strategy
Number of allocation messages with 3 nodes (6 trials):

before: 44, 36, 35, 92, 107, 41

after: 28, 28, 28, 28, 26, 28
2024-09-17 10:42:05 +10:00
Ryan Friedman dcfbf0ab69 AP_DDS: Add defines for experimental topics such as IMU
* Experimental topics, such as IMU, should have an easy way to be
  disabled at compile time
* This demonstrates a pattern to add in new topics at compile time

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-17 10:40:59 +10:00
Oleksiy Protas 94f2eb4999 AP_Airspeed: Don't fail on REG_WHOAMI_RECHECK_ID
This prevents a false negative ID check for the cases when the AP is rebooted independently of the sensor, with the latter keeping a temporary ID that was set during initialization
2024-09-17 10:36:29 +10:00
Peter Barker cd9e7e095a hwdef: f103-GPS: explicltly nominiate compass backends supported
this target is overflowing as someone is trying to add a new compass..
2024-09-17 10:31:27 +10:00
Andy Piper 71e2b756af AC_AttitudeControl: introduce ANG log message for high resolution attitude logging
Move RATE message to AC_AttitudeControl_Logging.cpp
2024-09-17 10:12:35 +10:00
Andy Piper 64a1fda05a AP_Scheduler: record and make available the last sample time 2024-09-17 10:12:35 +10:00
junan 71a69367df AP_HAL_Linux: file descriptor leaking and other issues in "Storage" of Linux.
- Fixed the fd leaking issue in "_storage_create" found by @peterbarker
- Remove the unnecessary call of "unlinkat" in "_storage_create"
- Simplify the implementation of "init"

Signed-off-by: junan <junan76@163.com>
2024-09-17 10:09:05 +10:00
Andrew Tridgell 9cb3354ba0 hwdef: default CAN MCAST enabled for PPPGW builds 2024-09-17 10:02:29 +10:00
Andrew Tridgell f065548866 hwdef: enable CAN multicast support in PPP gateways 2024-09-17 10:02:29 +10:00
Andrew Tridgell cd14b2e1c5 AP_Networking: added multicast UDP CAN server
this allows for operation of CAN interfaces over UDP multicast
networking
2024-09-17 10:02:29 +10:00
Andrew Tridgell cc930bd49f AP_CANManager: update for new callback API 2024-09-17 10:02:29 +10:00
Andrew Tridgell 4a102e2f2b AP_HAL: support more than 1 registered CAN callback
this allows for CAN MCAST and MAVCAN at the same time
2024-09-17 10:02:29 +10:00
Andrew Tridgell 21b6b1b229 AP_HAL: allow for multicast sockets in bootloader 2024-09-17 10:02:29 +10:00
Andrew Tridgell 05d43fd00b HAL_ChibiOS: allow for MCAST UDP with no CAN link
this allows the CAN interface to operate without a CAN cable, allowing
for bridging of MCAST UDP CAN
2024-09-17 10:02:29 +10:00
Thomas Watson db18d37ed2 AP_DroneCAN: DNAServer: avoid resetting when server node ID changes
Avoids confusing the user and removes weirdness with multiple servers
sharing the same storage. Does leak the registration for the old ID but
in the unlikely event the table fills up the user can simply reset the
database.

We keep the check for an existing registration to avoid dirtying the
storage every boot unnecessarily. We also factor out the deletion of an
existing registration (which is very unlikely but technically possible)
to save some flash.
2024-09-17 10:01:45 +10:00
Leonard Hall ea226637c9 AC_AttitudeControl: Vector3f multiplication clean up 2024-09-17 09:59:55 +10:00
Leonard Hall 5e27e3111d AC_AttitudeControl: Fix dt update order 2024-09-17 09:59:55 +10:00
muramura b1b4ac8d58 AP_ExternalAHRS: Correct the judgment 2024-09-17 09:35:13 +10:00
Valentin Bugrov 167dd7f447 SITL: unify names in ILabs sim 2024-09-17 09:34:32 +10:00
Valentin Bugrov 2b3ee0e7e4 AP_ExternalAHRS: unify names in ILabs EAHRS handler 2024-09-17 09:34:32 +10:00
Bob Long 4a1e4ebcd6 RCOutput: initialize _esc_pwm_min and _esc_pwm_max
Further protection from potential dangerous behavior when these do not
get initialized for some reason.
2024-09-17 09:18:36 +10:00
Bob Long 8e707ef4e2 AP_DroneCAN: prevent invalid numbers spinning ESCs
This prevents bugs and misconfigurations from causing DroneCAN ESCs to
spin at full speed while the vehicle is disarmed.
2024-09-17 09:18:36 +10:00
shipp02 dcc526ec19 Copter: Give better error in opendroneid build when DID_ENABLE=0. 2024-09-17 09:17:24 +10:00
Iampete1 8318109546 GCS_MAVLink: add support for AIRSPEED message 2024-09-17 09:10:17 +10:00
Peter Barker 091ba2782c RC_Channel: adjust description of aux function 90 (EK3 Source Set 2024-09-16 22:34:34 +10:00
Peter Barker 12d8a4d543 AP_Scripting: adjust description of aux function 90 (EK3 Source Set 2024-09-16 22:34:34 +10:00
Peter Barker 6d8f0decac RC_Channel: rename EKF_POS_SOURCE to EKF_SOURCE_SET
Co-authored-by: Michelle Rossouw <michelleros128@gmail.com>

these data sources span more than just position
2024-09-16 22:34:34 +10:00
Yuxin Pan d1562d5119 SITL: update baro param group info 2024-09-16 17:25:02 +10:00
Yuxin Pan ac2751c17b SITL: add baro param file 2024-09-16 17:25:02 +10:00
Valentin Bugrov 79bd82308c SITL: Actualize InertialLabs sim 2024-09-14 19:29:02 +10:00
Valentin Bugrov 092a95e88c AP_ExternalAHRS: add GCS mesages sending for the ILabs EAHRS 2024-09-14 19:29:02 +10:00
Valentin Bugrov 0344cc36ad AP_ExternalAHRS: actualize ILabs EAHRS data processing 2024-09-14 19:29:02 +10:00
Andrew Tridgell cbba88fccd AP_Scripting: added 2nd supply voltage to SkyPower EFI driver
and accept both extended and 11-bit CAN
2024-09-14 09:24:03 +10:00
Ryan Friedman 2aa5db5e73 AP_ExternalAHRS: Remove GPS week comment
* It's a hold-over from MSP. None of AP handles 0xFFFF in a special way

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-14 09:18:33 +10:00
Andrew Tridgell fea279b181 SITL: support more rangefinder orientations
allows for quadplane tailsitter rangefinders
2024-09-14 08:39:51 +10:00
Bob Long 72a013952c AP_EFI: Hirth: fix sensor health bitmask 2024-09-13 18:52:48 +10:00
Bob Long e32d3ceaf7 AP_EFI: Hirth: remove crankshaft sensor status
There is no crankshaft sensor status reported by this EFI. This line is
misleading and should be removed. The sensor health bitmask is already
logged elsewhere.
2024-09-13 18:52:48 +10:00
Andy Piper ef1be6fe01 AP_RCProtocol: only update rc value for GHST on rc frames 2024-09-13 18:52:05 +10:00
Benjamin Menkuec 09286e6f53 AP_MSP: MSP_RAW_GPS cog should be decidegrees not centidegrees 2024-09-13 12:45:22 +10:00
muramura 9e28bec87a AP_NavEKF3: use UINT8_MAX as flag value in place of 255 2024-09-13 09:17:17 +10:00
muramura 8b5c5fcdb7 AP_AHRS: use UINT8_MAX as flag value in place of 255 2024-09-13 09:17:17 +10:00
yuri-rage cd4501e62d AP_Scripting: add advance-wp.lua 2024-09-12 14:23:43 +10:00
muramura a9a2696368 AP_Mission: Change the magic number to a defined value 2024-09-12 14:23:10 +10:00
muramura 68bb55841a AP_HAL_ESP32: Change the magic number to a defined value 2024-09-12 14:23:10 +10:00
muramura 70046e0d58 AP_HAL_ChibiOS: Change the magic number to a defined value 2024-09-12 14:23:10 +10:00
weavVN e5f4f87b9e AP_ExternalAHRS: VectorNav: rename dataflash log message names 2024-09-12 14:22:54 +10:00
Bob Long 2c14176f6a AP_EFI: fix ECYL log message
- Convert temperatures Celsius to match the docs
- Fix format specifier for CHT2
2024-09-12 14:22:39 +10:00
Andrew Tridgell 53a4b5a843 AP_Scripting: add handle_external_position_estimate binding
can be used for offboard navigation systems
2024-09-12 06:58:57 +10:00
Yuxin Pan 61afab2b70 SITL: remove params from whiltelist 2024-09-12 06:54:15 +10:00
Peter Barker 66a2788663 hwdef: RadioLinkPIX6 uses SPL06 driver 2024-09-11 18:27:47 +10:00
Wu 3f577793a1 AP_Baro: SPx06 adds Background mode 2024-09-11 18:27:47 +10:00
Wu c70150e531 AP_Baro: add SPA06 to SPx06 driver 2024-09-11 18:27:47 +10:00
Andrew Tridgell 96cf157df9 AP_Networking: update comment 2024-09-11 16:11:22 +10:00
Bob Long 2b903d20b4 AP_ESC_Telem: tidy old calls to _telem_data
When #27755 was first opened, #26252 had not been merged yet. #26252
refactored a bit, but the change was not applied to #27755. This commit
fixes that.

This should not change the behavior of the code.
2024-09-11 10:23:00 +10:00
Yuxin Pan 41ffc7c860 SITL: SITL.cpp parameters documentation update 2024-09-11 10:22:22 +10:00
koehlert 9beca76f44 GCS_MAVLink: fix includes to ap_message
"GSC_config.h" is needed for HIGHRES_IMU_ENABLED flag.
2024-09-11 08:57:24 +09:00
Andy Piper bb2249f766 AC_AttitudeControl: record latest gyro value and time used for logging
move Write_Rate() to AC_AttitudeControl
move RATE log structure to AC_AttitudeControl
2024-09-10 16:33:04 +01:00