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