Commit Graph

35485 Commits

Author SHA1 Message Date
Peter Barker 9a1a412152 AP_Gripper: move gripper up to AP_Vehicle
also make the singleton return a reference rather than a pointer
2024-02-21 21:05:12 +11:00
Peter Barker b22185436e AP_Param: allow AP_PARAM_KEY_DUMP from sim_vehicle cmdline
./Tools/autotest/sim_vehicle.py -v ArduCopter --map --configure-define=AP_PARAM_KEY_DUMP=1
2024-02-21 21:05:12 +11:00
Peter Barker 3a38aeda59 AP_HAL_ChibiOS: set scheduler task to -4 when running callback tasks 2024-02-21 18:56:50 +11:00
bugobliterator 402c8a5e4d GCS_MAVLink: fix version setting in CheckFirmware app descriptor 2024-02-21 18:54:17 +11:00
bugobliterator fd3c723103 AP_CheckFirmware: add separate AP_CheckFirmwareDefine for correctly setting firmware versions 2024-02-21 18:54:17 +11:00
bugobliterator c54521511c AP_CheckFirmware: allow access to app descriptor from bootloader 2024-02-21 18:54:17 +11:00
bugobliterator 7fabce6cb6 AP_Bootloader: add support for printing current firmware and boot status 2024-02-21 18:54:17 +11:00
Peter Barker 3ab5f8139c AP_RCProtocol: remove unused enumeration 2024-02-21 18:35:30 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas 4996c17a75 AP_Stats: Only reset statistics if the user explicitly sets AP_Stats_RESET parameter to zero.
This allows users to load parameter files (in MP, MAVProxy or any other GCS) without
accidentally reseting the statistics, because the AP_STATS_RESET value contained in
the parameter file will be ignored (unless it is zero and it is usually not zero).
The other statistics parameters are read-only, and the GCS should be clever enough to not set those.
2024-02-21 18:28:23 +11:00
Peter Barker d37d70e787 AP_RCProtocol: factor out a poll_protocol method 2024-02-21 18:19:23 +11:00
Andrew Tridgell f8097379cb AP_Scripting: prevent a code path to abort() in scripting
if scripting can't find an error handler it can call abort(). We don't
ever want to do that in ArduPilot
2024-02-21 12:09:48 +11:00
Andrew Tridgell 3d4dbd0aed SITL: use gmtime_r() instead of gmtime() 2024-02-21 12:09:48 +11:00
Andrew Tridgell b3240ac243 AP_Scripting: use gmtime_r() instead of gmtime()
using gmtime_r makes gmtime thread safe
2024-02-21 12:09:48 +11:00
Andrew Tridgell 052ce823ba AP_RTC: use gmtime_r() instead of gmtime()
using gmtime_r makes gmtime thread safe
2024-02-21 12:09:48 +11:00
Andrew Tridgell 476587adf1 AP_NMEA_Output: use gmtime_r() instead of gmtime()
using gmtime_r makes gmtime thread safe
2024-02-21 12:09:48 +11:00
Andrew Tridgell fca0aa3d02 AP_MSP: use gmtime_r() instead of gmtime()
using gmtime_r makes gmtime thread safe
2024-02-21 12:09:48 +11:00
Andrew Tridgell 3cb3e6feda AP_Filesystem: use gmtime_r() instead of gmtime()
using gmtime_r makes gmtime thread safe
2024-02-21 12:09:48 +11:00
Andrew Tridgell 127c41f541 AP_ADSB: use gmtime_r() instead of gmtime()
using gmtime_r makes gmtime thread safe
2024-02-21 12:09:48 +11:00
Andrew Tridgell c0beda3235 AP_JSON: added JSON parsing library 2024-02-21 12:09:48 +11:00
Andrew Tridgell cb01789b9f SITL: use AP_JSON 2024-02-21 12:09:48 +11:00
Peter Barker d5e4d191d5 AP_OSD: use internal enumeration in place of mavlink enumeration
this will let us more-easily compile without the mavlink headers
2024-02-20 22:09:53 +11:00
Peter Barker 1515f0642b SITL: correct documentation around simulated GPS type 2024-02-20 19:35:01 +11:00
Peter Barker 5199be9914 SITL: add diagnostics when bad GPS backend specified 2024-02-20 19:35:01 +11:00
Peter Barker 494d72503a AP_GPS: use probing when probing for GPS, add detected message 2024-02-20 19:35:01 +11:00
Iampete1 c54529aaf8 SITL: SIM_Motor: include momentum drag in derived torque 2024-02-20 12:22:05 +11:00
Peter Barker bedcbc24b6 AC_CustomControl: tidy AC_CustomControl defines / add config file 2024-02-20 11:50:10 +11:00
Peter Barker 0e742fe51c AC_Fence: ensure fencepoint protocol not compiled in if not HAL_GCS_ENABLED
also use GCS_SEND_TEXT a bit
2024-02-20 11:47:32 +11:00
muramura f6d0f52876 AC_Fence: Replace with GCS_SEND_TEXT 2024-02-20 11:47:32 +11:00
Iampete1 5907e49cb1 AP_Scripting: ensure that all pass by refence values are initialized 2024-02-20 11:05:36 +11:00
Patrick José Pereira 3f2c82df12 GCS_MAVLink: Remove wrong usage of COMMAND_ACK message
SET_MODE message does not exist inside the MAV_CMD enum
as described in the mavlink specification.
The system that is using SET_MODE to communicate with the
vehicle should rely on HEARTBEAT message to detect if
the mode was set correctly.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2024-02-20 10:08:06 +11:00
xianglunkai 9123554db3 AP_OAPathPlanner: using static constexpr instead const 2024-02-20 09:30:13 +11:00
Peter Barker c2f77d0593 AP_Generator: tidy RichenPower defines 2024-02-20 09:27:43 +11:00
Peter Barker 9c97dc99b1 AP_Logger: correct compilation when GCS not available
... can't expect to do mavlink logging without GCS available...
2024-02-20 09:16:59 +11:00
Peter Barker ee3c9765a4 AP_ICEngine: correct compilation when ICEngine disabled
the starter class does things with various other objects which may not be avaialb.e  Honour AP_ICENGINE_ENABLED
2024-02-20 09:16:23 +11:00
Andy Piper d7ae8b8bb3 AP_RCProtocol: correctly process bytes from standalone UART 2024-02-19 22:46:58 +11:00
Peter Barker cca292f222 AP_RCTelemetry: correct CSRF->CRSF
Co-authored-by: Andy Piper <github@andypiper.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-02-19 21:38:39 +11:00
Peter Barker 3b9c9497aa AP_RCProtocol: correct CSRF->CRSF
Co-authored-by: Andy Piper <github@andypiper.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-02-19 21:38:39 +11:00
Iampete1 6c4c7a2130 AC_AttitudeControl: fix reset_target_and_rate method 2024-02-19 09:15:58 +09:00
Andrew Tridgell 303c33411f AP_Scripting: fixed pitch param reversion in revert_param.lua 2024-02-19 09:41:18 +11:00
Andrew Tridgell 9225b9f76d SITL: added 4 motor tilt vectored quadplane
from 2 motors tilt for "quadplane-tilt". This is the most common tilt
quadplane setup
2024-02-18 16:28:43 +11:00
Andrew Tridgell 388b04d671 SITL: fixed SITL for tilted motors
vector math was done in the wrong order
2024-02-18 16:28:43 +11:00
Peter Barker c0deee23a3 AP_TemperatureSensor: correct compilation when GCS not available
This variable becomes unused
2024-02-16 12:52:04 -08:00
Iampete1 ff00d562fe AP_DroneCAN: DNA_Server: log driver index in CAND 2024-02-16 21:55:07 +11:00
Peter Barker 594f96670a AP_Torqeedo: correct compilation when GCS not available
this variable is unused in that case
2024-02-16 09:02:14 +11:00
Peter Barker 4113290153 AP_HAL_ChibiOS: remove HerePro
to be replaced by a HereProAP
2024-02-15 13:42:14 +11:00
Andrew Tridgell df45140a56 AP_Param: fixed build of CubeOrange-periph 2024-02-15 13:41:29 +11:00
Andrew Tridgell 08468904db AP_Param: fixed cygwin build
the cygwin build is not generating binaries failing with:

   undefined reference to `AP_Param::load_param_defaults(char const volatile*, int, bool)

there is a 2nd problem that the CI test for cygwin doesn't fail when
the build fails. That will be addressed separately
2024-02-15 13:41:29 +11:00
Randy Mackay a16d71ced4 AP_Camera: fix video recording while armed 2024-02-15 12:17:44 +11:00
Peter Barker 2263dced74 AP_Scripting use scheduler semaphore only if AP_SCHEDULER_ENABLED 2024-02-15 12:17:07 +11:00
Peter Barker e787fc5dfd GCS_MAVLink: allow AP_Periph to use mavlink library 2024-02-15 12:17:07 +11:00
Peter Barker 5d421e8ee3 AP_HAL_ChibiOS: allow AP_Periph to use mavlink library 2024-02-15 12:17:07 +11:00
Peter Barker ad3724177d RC_Channel: use AUX_FUNC instead of typedef aux_func_t 2024-02-15 08:41:30 +11:00
Iampete1 c48759f4ba AP_Filesystem: crc32: Ensure checksum value is initialized 2024-02-15 07:36:39 +11:00
Iampete1 46e4588cf7 AP_Scripting: add file system crc32 binding 2024-02-15 07:36:39 +11:00
Peter Barker e15f9d3f39 AP_BattMonitor: tidy defines in scripting backend 2024-02-14 23:43:41 +11:00
Peter Barker 40f0001aea AP_BattMonitor: fix compilation when scripting in but scripted-battery out
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-02-14 23:43:18 +11:00
Peter Barker 43adaf3714 GCS_MAVLink: make guided-mode-change-alt and guided-mode-wp dependant on AP_MISSION_ENABLED
We really should not be using Mission_Command to transfer information between the base-class GCS_MAVLink and subclasses like GCS_MAVLink_Plane.  But until we fix that we can exclude the code if Mission is not available (like on peripherals...)
2024-02-14 14:47:03 +11:00
Peter Barker 29cd0ab179 AP_Mission: remove AP_MISSION_ENABLED special-cases
these are static methods which are called when they really shouldn't be
2024-02-14 14:47:03 +11:00
Dr.-Ing. Amilcar do Carmo Lucas d6b1644710 AP_Mount: send text feedback when gimbal gets detected 2024-02-14 09:03:46 +09:00
Peter Barker 3f34eb12b0 AP_Scripting: include extern-hal line to fix compilation
this external line was coming in from a header file somewhere...
2024-02-13 20:57:12 +11:00
Peter Barker 37a9fd4e14 AP_Vehicle: add missing include in config.h 2024-02-13 20:56:49 +11:00
Peter Barker 57b0a0db62 AP_Vehicle: add AP_VEHICLE_ENABLED guards for Parameters.cpp 2024-02-13 20:56:49 +11:00
Peter Barker 5de4ac4258 AP_Motors: use GCS_SEND_TEXT 2024-02-13 20:56:29 +11:00
Peter Barker d33cc2847d AP_Mount: correct compilation with GCS disabled 2024-02-13 20:56:09 +11:00
Peter Barker 8da89492a7 RC_Channel: correct compilation when AP_MISSION_ENABLED is false 2024-02-13 20:55:54 +11:00
Peter Barker 63c95b32b4 AP_Vehicle: add missing inertialsensor include
we're making this object, so we should include the header
2024-02-13 14:23:47 +11:00
Peter Barker 222fe57915 AP_Vehicle: move parameter storage formatting up to AP_Vehicle 2024-02-13 14:23:35 +11:00
Andrew Tridgell 5d789f46ea AP_Scripting: prevent double close in web server 2024-02-13 12:40:14 +11:00
Andrew Tridgell 7b36adf49d AP_Scripting: prevent re-use of closed socket
this prevents a null pointer dereference after a close of a network
socket
2024-02-13 12:40:14 +11:00
Peter Barker 84913569cd AP_Vehicle: correct compilation when AHRS not available
CubeOrange-periph-heavy was broken
2024-02-13 11:37:00 +11:00
Richard Marko 04b46678a4 treewide: fix shebangs - /bin/bash -> /usr/bin/env bash
Most scripts/tools use non-portable `/bin/bash`, switch
to environment agnostic `/usr/bin/env bash`.
2024-02-13 11:36:23 +11:00
Peter Barker 0e36ca3154 AP_NMEA_Output: take advantage of AP_Vehicle supplying dummy methods 2024-02-13 10:54:29 +11:00
Peter Barker a158b4f7b9 AP_Vehicle: provide dummy implementations of log structure methods
this allows a vehicle that doesnt' want to use logging to just ignore it, rather than provide dummy methods
2024-02-13 10:54:29 +11:00
Peter Barker 7b3a91996b AP_GyroFFT: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 9ce9f88254 AP_Scheduler: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 92be3e7237 AP_RTC: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker fb7ccd327a AP_NMEA_Output: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 477fa3e161 AP_InertialSensor: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker f7886ca14d AP_HAL: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker 0694154f1c AP_Vehicle: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker e39fad1411 AP_Logger: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker dc74f97739 AP_Compass: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Peter Barker eb0c66fc90 AP_AHRS: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Henry Wurzburg dfc1b84186 AC_Fence: fix autofence enable in takeoff mode 2024-02-13 10:45:39 +11:00
Peter Barker aaad98e898 AP_RCProtocol: correct compilation when crossfire not compiled in 2024-02-13 09:36:05 +11:00
Peter Barker bb8047c026 AP_Scripting: correct compilation with AP_FILESYSTEM_FORMAT_ENABLED is false
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-02-12 09:38:29 +11:00
Peter Barker 1862b5dc27 chibios_hwdef.py: allow re-use of bootloader from other boards 2024-02-10 21:41:30 +11:00
Peter Barker 0e67209790 AP_Compass: fixed-yaw requires the AP_AHRS library to exist 2024-02-10 11:47:10 +11:00
Peter Barker 185396ee27 AP_Vehicle: compile with AHRS not available 2024-02-10 11:47:10 +11:00
Peter Barker e7ded62763 AP_Vehicle: compile without ins 2024-02-10 11:47:10 +11:00
Peter Barker 04ae9879f3 AP_Vehicle: compile without scheduler 2024-02-10 11:47:10 +11:00
Peter Barker a949b52b5a AP_Vehicle: add support for compiling arming out 2024-02-10 11:47:10 +11:00
Peter Barker e2543bdcb9 AP_Arming: add support for compiling arming out 2024-02-10 11:47:10 +11:00
Peter Barker 1e50e36000 AP_RCMapper: add rcmapper config 2024-02-10 11:47:10 +11:00
Peter Barker e358d1d237 AP_MSP: add rcmapper config 2024-02-10 11:47:10 +11:00
Peter Barker 821cfcd6ac RC_Channel: move RC bits in mavlink to common code
Plane's semantics change to be like Copter. Rover, Sub and Tracker will start reporting the bits
2024-02-10 11:46:44 +11:00
Peter Barker c23ba04638 GCS_MAVLink: move RC bits in mavlink to common code
Plane's semantics change to be like Copter. Rover, Sub and Tracker will start reporting the bits
2024-02-10 11:46:44 +11:00
Andrew Tridgell e8b4010899 HAL_ChibiOS: fixed CANFD timings (again!)
the timing table was not correct, thanks to APD for pointing this out.

This is recalculated from
https://www.kvaser.com/support/calculators/can-fd-bit-timing-calculator,
with transmitter timing delay compensation added and tested with Salae
captures to ensure we are getting the right bit rates
2024-02-09 18:55:08 +11:00
Hayden Donald 52409d6765 AP_Scripting: Add gyro/accel consistency checks to lua
Added the accels_consistent and gyros_consistent methods to the lua bindings
2024-02-09 18:54:43 +11:00
Hayden Donald fdf56c2ec4 AP_InertialSensor: Move accel/gyro_consistent to AP_IntertialSensor
Move the accel_consistent and gyro_consistent methods from AP_Arming to AP_IntertialSensor
2024-02-09 18:54:43 +11:00
Hayden Donald 2a55e6a030 AP_Arming: Move accel/gyro_consistent to AP_IntertialSensor
Move the accel_consistent and gyro_consistent methods from AP_Arming to AP_IntertialSensor
2024-02-09 18:54:43 +11:00
Randy Mackay 0fca670f85 Mount: Siyi waits for non-zero cam firmware version 2024-02-09 17:00:26 +11:00
bugobliterator 4bcac076f6 AP_GPS: broaden the acceptance criteria for GPS Yaw measurement 2024-02-08 00:59:15 -08:00
Hayden Donald c259d11cd6 AP_Scripting: Add getting of gyro/accel values
Added the ability to get gyro/accel from LUA
2024-02-08 15:24:12 +11:00
Hayden Donald baf8958ee0 AP_Scripting: Add send_text to display binding
Added a notify:send_text and notify:release_text binding to override the text displayed on a display with custom text
2024-02-07 23:52:30 +00:00
Hayden Donald dea51c9c50 AP_Notify: Add send_text for scripting use
Added a send_test_src method to override the text on the display and display custom text on a given row
2024-02-07 23:52:30 +00:00
Peter Barker ae19d032ce AP_RCProtocol: use constructor from parent class in ibus 2024-02-07 19:07:58 +11:00
Iampete1 5b6d86c278 AP_Parachute: do relay conversion if ever enabled 2024-02-07 19:07:29 +11:00
Hayden Donald 14aea255e6 AP_Scripting: Add calibrating method
Add the calibrating method to lua so we can see if the device is currently calibrating
2024-02-07 18:36:33 +11:00
Hayden Donald 85a8b6c414 AP_Scripting: Add filesystem format
Added the ability to format the SD card from LUA
2024-02-07 18:35:36 +11:00
bugobliterator 9919af69bc AP_HAL_ChibiOS: add config to enable sccripting on CANMod 2024-02-07 18:31:02 +11:00
Peter Barker 6da7cfcf4e AP_Vehicle: move scripting up to AP_Vehicle 2024-02-07 18:24:12 +11:00
Henry Wurzburg 2729b11b2f hwdef: add ASP5033 airspeed in minimal builds 2024-02-06 11:27:18 +11:00
Andrew Tridgell 6713a203f0 AP_BattMonitor: added temperature reading to INA2xx driver 2024-02-06 11:26:05 +11:00
Peter Barker 89b2e62b0f AP_Logger: add power status bits to logger metadata 2024-02-06 11:13:14 +11:00
Peter Barker b1ade6ccf5 AP_HAL: add power status bits to logger metadata 2024-02-06 11:13:14 +11:00
Peter Barker 4a1adc69da GCS_MAVLink: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Peter Barker 4c272d21ee AP_HAL_ChibiOS: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Peter Barker 084b0aea24 AP_Compass: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Peter Barker 8cc662163b AP_RCProtocol: add separate define for AP_RCPROTOCOL_DSM_ENABLED 2024-02-06 11:09:12 +11:00
Peter Barker f1457034e2 GCS_MAVLink: provide and use base-method implementation for guided mode request 2024-02-06 11:07:48 +11:00
Peter Barker e660a1925e AP_Vehicle: move can_mgr.init call up to AP_Vehicle
... also adds the call for Blimp...
2024-02-06 11:03:54 +11:00
Peter Barker b1ddbe9904 RC_Channel: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker bed976a8fc AP_Scripting: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker a8bc7761d3 AP_OSD: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker eda6d0b6a0 AP_Motors: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker b48b26ddb8 AP_RCTelemetry: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker c7678042da AP_OSD: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 10a815d3a2 AP_Notify: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker cfab2e08ef AP_MSP: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 55dbee78f8 AP_LTM_Telem: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 7f6cb0eab3 AP_Hott_Telem: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 1f4c129341 AP_BattMonitor: add and use AP_BATTERY_ENABLED 2024-02-06 11:01:02 +11:00
Peter Barker 9961e8c49d hwdef: remove bad hwdef lines
these have no effect
2024-02-06 10:58:44 +11:00
rishabsingh3003 b2dfd14696 AP_Arming: Add check for CAN MR72 2024-02-06 10:57:21 +11:00
rishabsingh3003 b8d08a7211 AP_Proximity: Add support for CAN MR72 2024-02-06 10:57:21 +11:00
rishabsingh3003 0cdfdc6234 AP_CANMangaer: Add support for CAN MR72 2024-02-06 10:57:21 +11:00
Andy Piper d5ba0b6302 AP_RCProtocol: discriminate GHST and CRSF based on first byte
do not change to GHST baudrate unless it has been specifically configured
2024-02-06 09:55:56 +11:00
Andrew Tridgell 1f2b9df290 HAL_Linux: fixed float calc of time for onboard flow 2024-02-06 07:31:21 +11:00
Andrew Tridgell c26f6d0a98 HAL_SITL: use integer maths for clocks
same fix as for HAL_Linux
2024-02-06 07:31:21 +11:00
Andrew Tridgell 45ca3ad4bb HAL_Linux: fixed time function to use integer maths
avoid floating point rounding errors after long uptimes.

thanks to Richard (RSAXVC) for finding this
2024-02-06 07:31:21 +11:00
Peter Barker 49b4a74641 AP_Radio: tidy AP_Radio includes 2024-02-05 09:26:14 +11:00
Peter Barker 0d26118b12 hwdef: tidy AP_Radio includes 2024-02-05 09:26:14 +11:00
Andrew Tridgell 85439360d7 HAL_ChibiOS: fixed I2C4 on STM32G4 2024-02-05 07:36:14 +11:00
Andrew Tridgell 1e4f597e02 HAL_ChibiOS: fixed support for STM32H7A3
need to tell ChibiOS this is a newer H7
2024-02-03 08:36:18 +11:00
Andrew Tridgell 5130f93c03 AP_Param: fixed setting of defaults for dynamic param trees
when we load a VARPTR subtree we need to re-scan the parameter
defaults file from @ROMFS/defaults.parm in case there are defaults
applicable to this subtree
2024-02-03 07:45:51 +11:00
Peter Barker a82b7f20c9 AP_HAL_ChibiOS: use HAL_LOGGING_ENABLED in place of HAL_BOOTLOADER_BUILD
bootloader already disables GCS, so we can rely on HAL_GCS_ENABLED in place of HAL_BOOTLOADER_BUILD
2024-02-02 19:21:58 +11:00
David O'Connor 078697c825 hwdef: add AnyLeaf H7 board 2024-02-01 11:43:57 +11:00
Leonardo Garcia 5749bd5074 AP_HAL_ChibiOS: mRo KitCAN revC board fix
Add RM3100 reversal mask to deal with M10025C board changes.
2024-02-01 11:43:35 +11:00
Andrew Tridgell 33f6a1d87e hwdef: added MatekH7A3 support 2024-02-01 11:43:24 +11:00
Andrew Tridgell 054fb94e9a HAL_ChibiOS: added support for STM32H7A3
interesting MCU as it is the first H7 we support that doesn't have a
128k flash sector size
2024-02-01 11:43:24 +11:00
Andrew Tridgell 3171b5321a HAL_ChibiOS: support flash storage with 8k sectors
this allows for doubling up sectors to give an effective sector size
of 16k, allowing for flash storage with a useful storage size
2024-02-01 11:43:24 +11:00
Andrew Tridgell 07d0418cf9 HAL_ChibiOS: fixed flash support on H7 with 8k page size
the STM32H7A3xx has 8k pages
2024-02-01 11:43:24 +11:00
yjuav 8e71cf83cd hwdef: add YJUAV_A6Ultra board support 2024-02-01 11:29:11 +11:00
olliw42 381aba9c62 AP_Logger: RXLQ in RSSI is in percent 2024-02-01 09:18:08 +11:00
Peter Barker 94be9cb8b6 AP_Vehicle: move call to BoardConfig.init to AP_Vehicle 2024-02-01 07:59:11 +11:00
Andrew Tridgell 30497244d9 HAL_ChibiOS: whitespace fixes 2024-01-30 12:32:23 +11:00
Andrew Tridgell 0a6057f2b3 HAL_ChibiOS: adjust clocks for H723 and H730
FDCAN clock must be 80MHz, and also align no-crystal clocks with
clocks for boards with crystals
2024-01-30 12:32:23 +11:00
Andrew Tridgell aea2863141 hwdef: Added BotBloxSwitch 2024-01-30 12:32:23 +11:00
Andrew Tridgell 1be9c79e35 AP_Networking: fixed network bootloader without serial manager 2024-01-30 12:32:23 +11:00
Andrew Tridgell 967af533b9 HAL_ChibiOS: fixed flash page count on H723
single bank H7 has 8 pages
2024-01-30 12:32:23 +11:00
Andrew Tridgell 4eaf5ef247 HAL_ChibiOS: support STM32H723 boards 2024-01-30 12:32:23 +11:00
Peter Barker 2761a528f3 SITL: remove unused include of AP_Stats.h 2024-01-30 11:12:21 +11:00
Peter Barker 652d2ec198 AP_Vehicle: move AP_Stats to AP_Vehicle 2024-01-30 11:12:21 +11:00
Iampete1 4bcbb13f79 AP_TemperatureSensor: add DroneCAN backend 2024-01-30 10:13:35 +11:00
Iampete1 5fd3be1b75 AP_DroneCAN: add subscribe msgs for TemperatureSensor 2024-01-30 10:13:35 +11:00
Gone4Dirt 6e4ce35fca AP_Temperature: Add DroneCAN source 2024-01-30 10:13:35 +11:00
Andrew Tridgell e772012e01 HAL_ChibiOS: raise SDMMC clock limit on H7
this allows for faster log download on ethernet
2024-01-29 06:51:11 +11:00
TsuyoshiKawamura 8914e5585f AP_BattMonitor: delete unnecessary underscore in description 2024-01-28 22:29:06 +11:00
Andrew Tridgell e039ff2a30 AP_Param: don't enable param backup on all boards
this fixes an issue with resetting of parameters when going between
4.4.x and 4.5.x on MatekH743, and on any other board using flash
storage where the storage size has increased from 16k to 32k between
4.4.x and 4.5.x

The problem is that when you update to 4.5.x the parameter code stored
a backup of parameters in the StorageParamBak storage region which is
in the last section of storage. When you downgrade to 4.4.x the
AP_FlashStorage::load_sector() code tries to load this data and gets
an error as it is beyond the end of the available 16k storage. This
triggers an erase_all() and loss of parameters
2024-01-28 08:42:57 +11:00
Andrew Tridgell a2707b48c5 HAL_ChibiOS: enable clock management on G4
this allows for a different clock tree in the main fw from the
bootloader
2024-01-25 11:44:02 +11:00
Andrew Tridgell 2d031a4d20 HAL_ChibiOS: switched G4 FDCAN clock to 80MHz
this requires main CPU clock at 160 MHz instead of 168 MHz
2024-01-25 11:44:02 +11:00
Andrew Tridgell 1c8048df8f HAL_ChibiOS: fixed CANFD timings
our CANFD timings were resulting in a lot of busoff errors. Here is an
example of master at 1Mbit/5MBit:

Getting @SYS/can0_stats.txt as -
------- Clock Config -------
CAN_CLK_FREQ:   80MHz
Std Timings: bitrate=1000000 presc=7
sjw=0 bs1=7 bs2=0 sample_point=90.00000%
FD Timings:  bitrate=5000000 presc=1
sjw=0 bs1=5 bs2=0 sample_point=90.00000%
------- CAN Interface Stats -------
tx_requests:    2689
tx_rejected:    0
tx_overflow:    443
tx_success:     7
tx_timedout:    2232
tx_abort:       0
rx_received:    18470
rx_overflow:    0
rx_errors:      0
num_busoff_err: 34439
num_events:     18477
ECR:            F8
fdf_rx:         18467
fdf_tx_req:     2182
fdf_tx:         0

here is an example with the new timings:

------- Clock Config -------
CAN_CLK_FREQ:   80MHz
Std Timings: bitrate=1000000 presc=8
sjw=1 bs1=8 bs2=1 sample_point=90.00000%
FD Timings:  bitrate=8000000 presc=2
sjw=3 bs1=8 bs2=3 sample_point=80.00000%
------- CAN Interface Stats -------
tx_requests:    3023
tx_rejected:    0
tx_overflow:    0
tx_success:     3023
tx_timedout:    0
tx_abort:       0
rx_received:    27865
rx_overflow:    0
rx_errors:      0
num_busoff_err: 0
num_events:     30888
ECR:            0
fdf_rx:         27862
fdf_tx_req:     3016
fdf_tx:         3016

I am testing between a CubeOrange and a Pixhawk6X. I tested 1, 2, 4, 5
and 8 MBit (which are the only valid FD bitrates in our parameters)

Many thanks to Kai from Salient Motion for finding this issue and
providing the corrected timing table
2024-01-25 11:44:02 +11:00
Thomas Watson 52468f0238 AP_ROMFS: fix buffer null terminator
Ensure buffer is properly null terminated without changing the indicated
size even for uncompressed data.
2024-01-25 11:24:31 +11:00
Thomas Watson d13193150c AP_ROMFS: store size in file structure instead of compressed stream
Cleans up code.
2024-01-25 11:24:31 +11:00
Thomas Watson d46cb3fd85 AP_ROMFS: embed raw DEFLATE streams
Saves size not including unnecessary headers or code to parse them.
2024-01-25 11:24:31 +11:00
Iampete1 8c72304ab9 AC_Avoidance: AP_OADijkstra: correct use of uninitialised value when retrying fence 2024-01-24 19:20:02 +11:00
Peter Barker c33d665906 GCS_MAVLink: make rally/fence item conversion methods public 2024-01-24 19:14:41 +11:00
Peter Barker 3ef2139f4b AP_FileSystem: permit upload of fence/rally via ftp 2024-01-24 19:14:41 +11:00
Simon Hancock 1bfd9f3763 AP_Logger: Correct for loop condition 2024-01-24 19:09:55 +11:00
Peter Barker 5e5bca2bba GCS_MAVLink: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker f18e196fa9 GCS_MAVLink: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
Peter Barker 475ef8a06d AP_Mission: fix use of uninitialised stack data
loading missions via FTP ends up using uninitialised stack data when storing missions.
2024-01-24 09:04:28 +11:00
Hayden Donald a81f2785aa AP_HAL_ChibiOS: Use correct pin config for ADC2 and ADC3 2024-01-24 08:03:24 +11:00
MallikarjunSE 873e2eac7d AP_HAL_ChibiOS: update truenav hwdef 2024-01-24 07:58:09 +11:00
J.R. Bronkar 784a21bcab AP_Mission: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
Andrew Tridgell 50b95c81ca AP_Param: whitespace fix 2024-01-23 15:00:30 +11:00
Andrew Tridgell b051719836 SITL: fixed name of pitch limit parameters 2024-01-23 15:00:30 +11:00
Andrew Tridgell e714f0a7a3 AP_HAL_ChibiOS: fixed name of pitch limit parameters 2024-01-23 15:00:30 +11:00
Andrew Tridgell 315f4963cc SITL: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell 4f182f3194 AP_Scripting: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell 061ac459f8 RC_Channel: tidy a comment for LAND_PITCH_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell f51fa31aae AP_TECS: fixed param names in comments 2024-01-23 15:00:30 +11:00
Andrew Tridgell 77877584f8 AP_Scripting: fixed example script 2024-01-23 15:00:30 +11:00
Andrew Tridgell 15a9909127 SITL: tidy TRIM_PITCH to PTCH_TRIM_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 3643eb6d2a AP_Vehicle: tidy TRIM_PITCH to PTCH_TRIM_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 04d72d3adc SITL: convert param files for LAND_PITCH_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 2c73c56403 AP_TECS: convert LAND_PITCH_CD to LAND_PITCH_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 3fddc487df AP_Landing: convert LAND_PITCH_CD to LAND_PITCH_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell bea9102d72 SITL: convert param files LIM_ROLL_CD -> ROLL_LIMIT_DEG 2024-01-23 15:00:30 +11:00