Commit Graph

35398 Commits

Author SHA1 Message Date
Andy Piper 2eac45c4bf AP_IOMCU: account for possibility of SBUS_OUT in PWM structures 2024-04-30 20:29:20 +09:00
Andy Piper a7d93582bc AP_HAL_ChibiOS: iFlight BLITZ Mini F745 2024-04-30 20:29:20 +09:00
Andy Piper d1a41dd87b AP_HAL_ChibiOS: iFlight Blitz F745 2024-04-30 20:29:20 +09:00
Randy Mackay 578e5a0193 AP_DAL: visual odom get_delay_ms return fix 2024-04-30 20:29:20 +09:00
Randy Mackay 4b9a4cad65 RC_Channel: add mount LRF enable aux function 2024-04-30 20:29:20 +09:00
Randy Mackay b7e4aecc99 AP_Mount: add set_rangefinder_enable for ViewPro 2024-04-30 20:29:20 +09:00
Tim Tuxworth 1da6100907 AP_Mount: Do not override default mode when first connecting to RC 2024-04-30 20:29:20 +09:00
Andy Piper e3b8a7b4bd AP_HAL_ChibiOS: fixups for FoxeerF405v2 2024-04-30 20:29:20 +09:00
Paul Riseborough 9cfd082b5c AP_NavEKF3: Change yaw source to stop compass use when calibrating 2024-04-30 20:29:20 +09:00
Andrew Tridgell 0c4a1f86d7 hwdef: the RM3100 should run at max 1MHz on SPI bus 2024-04-30 20:29:20 +09:00
Andy Piper 47eb646de4 AP_HAL_ChibiOS: allow H7RF to build 2024-04-30 20:29:20 +09:00
Andy Piper 2cd660408a AP_HAL_ChibiOS: fixup FoxeerF405v2 build 2024-04-30 20:29:20 +09:00
Randy Mackay ce448c4228 AP_NavEKF3: define Yaw alignment min GPS speed per vehicle 2024-04-30 20:29:20 +09:00
Randy Mackay c549794c05 RC_Channel: integrate AP_CAMERA_SET_CAMERA_SOURCE_ENABLED 2024-04-30 20:29:20 +09:00
Randy Mackay e89721e428 AP_Mission: support set-camera-source 2024-04-30 20:29:20 +09:00
Randy Mackay c42230211d AP_Mount: add set_camera_source support 2024-04-30 20:29:20 +09:00
Randy Mackay 9f8e081813 AP_Camera: support set-camera-source mavlink command 2024-04-30 20:29:20 +09:00
Randy Mackay 987f095f9f GCS_MAVLink: forward set-camera-source to AP_Camera 2024-04-30 20:29:20 +09:00
Ryan Friedman 5405dff072 AP_ExternalAHRS: Only use GPS data when populating GPS fields
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman 28975fff27 AP_ExternalAHRS: Check backend pre-arm before origin
* This allows the backend to report more detailed errors
* Before this, many pre-arm errors were hidden by origin failure
* If pre-arm could report multiple errors, that would be ideal

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman ed92abc1b4 Save flash, reduce code duplication
* Add generic health and time utils
* Fix bug only checking first GNSS system
* Use common logging struct
* Improve pre-arm log checks

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman 39ea2b9a13 AP_ExternalAHRS: Don't send init message till booted up
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman a8c16131bf AP_ExternalAHRS: Use state watching instead
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman 6caf427dd2 AP_ExternalAHRS: Provide warning for init failure
* If the device hasn't initialized in 5 seconds, give a warning

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman 29fde1d6bd AP_ExternalAHRS: Use filter data to populate EKF status report
* Variances vs uncertainties may still be off
* Requires enabling the following packets in SensorConnect:
  * Position Uncertainty (LLH)
  * Velocity Uncertainty (NED)

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman a8255f6c23 AP_HAL: Fix incorrect return type
* This caused position quantization errors in the MicroStrain7

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Ryan Friedman f733f700ef AP_DDS: Fix incorrect port param name
* We want to support TCP and UDP in the future, so make sure we call it
  UDP here

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-04-30 20:29:20 +09:00
Andy Piper dbfcd6c678 AP_HAL_ChibiOS: FoxeerF405v2 2024-04-30 20:29:20 +09:00
Randy Mackay f28e0fc1d1 AC_PosControl: always update yaw targets 2024-04-30 20:29:20 +09:00
davidsastresas efd832425c AP_Mount: fix gimbal-device-attitude-status yaw frame flag 2024-04-30 20:29:20 +09:00
Randy Mackay 06a79ad4f5 AP_Mount: get-gimbal-device-flags reports lock state 2024-04-30 20:29:20 +09:00
Randy Mackay 1e047a9d32 AP_Mount: do-gimbal-manager-pitch-yaw can set lock state
Co-authored-by: davidsastresas <davidsastresas@gmail.com>
2024-04-30 20:29:20 +09:00
Randy Mackay 925fed10fe AP_Mount: clarify yaw_lock comments 2024-04-30 20:29:20 +09:00
Randy Mackay a1b12a86b2 AP_Mount: RC targeting mode lock state from previous mode
This leads to smoother transitions between RC and GCS control
2024-04-30 20:29:20 +09:00
Andrew Tridgell 02af8ac143 AP_RCProtocol: fixed underflow wrap in GHST 2024-04-08 12:08:53 +09:00
Andrew Tridgell 55724c2a63 AP_RCProtocol: added random data test
this triggers the CRSF crash bug that was just fixed
2024-04-08 12:08:53 +09:00
Andrew Tridgell a617f3d617 AP_RCProtocol: fixed crc memory range error in CRSF
this fixes a crash bug that caused a watchdog for Henry on a
F765-Wing. The bug happens with corrupt serial data causing an
underflow in the length argument to the crc call
2024-04-08 12:08:53 +09:00
FoxSuzuran 49464303bb AP_Proximity: add RPLidarC1 support
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-03-22 15:36:19 +09:00
Tom Pittenger 9fcdace5f5 AP_Networking: change NET_ENABLED to NET_ENABLE 2024-03-22 15:36:19 +09:00
Tim Tuxworth 6d5b043226 AP_Networking: change NET_ENABLED to NET_ENABLE 2024-03-22 15:36:19 +09:00
Tim Tuxworth b9cd488cd8 Chibios: CubeRed - change NET_ENABLED to NET_ENABLE 2024-03-22 15:36:19 +09:00
Andrew Tridgell 93a06789b9 HAL_ChibioOS: fixed FDCAN -> CAN labels
we use CAN1_RX not FDCAN1_RX in our MCU files
2024-03-22 15:36:19 +09:00
Andrew Tridgell ce490163fe AP_Logger: avoid logging dma.txt for normal builds
logging of dma.txt currently does no good as the first time you read
it you get no content. It then enables statistics in the shared_dma
code which makes all DMA operations slower, so all we are doing is
making DMA slower
2024-03-22 15:36:19 +09:00
Randy Mackay fc705cf229 AP_Mount: viewpro fix for swapped ahrs roll pitch 2024-03-22 15:36:19 +09:00
root 9242fd9397 AP_VideoTX:add additional freq bands(Band X) 2024-03-22 15:36:19 +09:00
Andrew Tridgell 9a19cf81e3 HAL_ChibiOS: fixed a cache corruption issue on H7
This fixes a bug introduced in this PR:

https://github.com/ArduPilot/ardupilot/pull/25900

the bug is that when we don't go via the bouncebuffer on H7 we were
also skipping the cache invalidate/flush ops. This caused data
corruption for filesystem operations, particularly noticible as lua
scripts failing to load with parse errors or log corruption
2024-03-22 15:36:19 +09:00
Minderring 6d7c267955 hwdef: added MicoAir405v2 2024-03-22 15:36:19 +09:00
Andy Piper 355e834acd AP_HAL_ChibiOS: Orqa F405 Pro 2024-03-22 15:36:19 +09:00
Ryan Friedman a1e40c4216 AP_ExternalAHRS: SIM_MicroStrain support quaternion attitude
* This replaces IMU orientation
* Fixed some usage docs

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-03-22 15:36:19 +09:00
Ryan Friedman 2a78b59526 AP_ExternalAHRS: Populate orientation from filter
* Populating AHRS orientation from IMU was not correct

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-03-22 15:36:18 +09:00
Iampete1 312061b76c AP_Filesystem: crc32: Ensure checksum value is initialized 2024-03-14 09:33:55 +09:00
Andrew Tridgell 431ef6b4ba AP_InertialSensor: fixed accel cal simple to remove unused IMUs
when we change EAHRS_SENSORS to remove use of IMU from an external
AHRS we need to be able to zero the accel and gyro offsets to get
prearms to pass
2024-03-14 09:33:55 +09:00
Andy Piper 0426686c92 AP_HAL_ChibiOS: always normalize ESC channel when using iomcu 2024-03-14 09:33:55 +09:00
Andy Piper a1b9897b37 AP_HAL_ChibiOS: use standard FPV config for SpeedyBeeF405WING 2024-03-14 09:33:55 +09:00
Randy Mackay 2680b1188d AP_HAL_ChibiOS: CubeRedSecondary IMU orientation fix
Also remove duplicate RC_IN serial protocol
2024-03-14 09:33:55 +09:00
Andrew Tridgell 884c3eeb34 AP_HAL_ChibiOS: remove iomcu dshot from Pixhawk1-1M and add to Pixhawk1-bdshot
add support for removing ROMFS from hwdef
2024-03-14 09:33:55 +09:00
Andrew Tridgell dba0497541 hwdef: fixed Pixhawk1-1M build 2024-03-14 09:33:55 +09:00
Peter Barker e9ef9c04a5 GCS_MAVLink: make rally/fence item conversion methods public 2024-03-14 09:33:55 +09:00
Peter Barker 95046e617e AP_FileSystem: permit upload of fence/rally via ftp 2024-03-14 09:33:55 +09:00
subashchandar 809a76d419 AP_HAL_ChibiOS: hwdef: Add new hardware pixflamingo f7 2024-03-14 09:33:55 +09:00
Randy Mackay 7df12b4d22 AP_HAL_ChibiOS: AP_Periph does not use AP_VisualOdom 2024-03-14 09:33:55 +09:00
Randy Mackay fc5f6bcd69 AP_Scripting: EKF source switching for ExtNav and optflow 2024-03-14 09:33:55 +09:00
Randy Mackay 67a289686f AP_Scripting: add VisualOdom bindings 2024-03-14 09:33:55 +09:00
Randy Mackay 855aa66bd0 AP_DDS: send quality of zero to AP_VisualOdom 2024-03-14 09:33:55 +09:00
Randy Mackay d7837c7098 GCS_MAVLink: send Odometry quality to VisualOdom 2024-03-14 09:33:55 +09:00
Randy Mackay 4fcd8b1068 AP_VisualOdom: use Odometry quality 2024-03-14 09:33:55 +09:00
Randy Mackay 94150368ee SITL: vicon send odometry with quality of 50 2024-03-14 09:33:55 +09:00
Randy Mackay a2bc0ca858 SITL: vicon param descriptions 2024-03-14 09:33:55 +09:00
Andrew Tridgell da052f4a10 AP_Scripting: add file system crc32 binding 2024-03-14 09:33:55 +09:00
Andrew Tridgell f8767d6443 AP_Arming: added arming check for fence storage 2024-03-14 09:33:55 +09:00
Andrew Tridgell 1dfa76b1e5 AC_Fence: allow for fence storage on microSD 2024-03-14 09:33:55 +09:00
Andrew Tridgell 42ba8ac8d6 AP_BoardConfig: added BRD_SD_FENCE
allow for fence storage on microSD
2024-03-14 09:33:55 +09:00
Andrew Tridgell 421f3f20dd RC_Channel: disable GPS on external AHRS with GPS_DISABLE 2024-03-14 09:33:55 +09:00
Andrew Tridgell 9931e77a65 AP_AHRS: don't use accel/gyro from ExternalAHRS unless enabled 2024-03-14 09:33:55 +09:00
Pulak Gautam abe4e1632e AP_ExternalAHRS: added missing #if AHRS logging 2024-03-14 09:33:55 +09:00
Andrew Tridgell 324205e37a AP_ExternalAHRS: check for origin in pre-arm check 2024-03-14 09:33:55 +09:00
Andrew Tridgell 4810c81b25 AP_ExternalAHRS: make get_accel() and get_gyro() bool 2024-03-14 09:33:55 +09:00
Andrew Tridgell 1f1392ddbc AP_ExternalAHRS: added support for GPS disable and fwd flight
allow backends to determine if we are in fixed wing flight and/or the
GPS is disabled by the user
2024-03-14 09:33:55 +09:00
Andrew Tridgell 2895fd3bec AP_ExternalAHRS: added EAHRS_LOG_RATE and common logging
common logging for all EAHRS backends
2024-03-14 09:33:55 +09:00
Iampete1 b6fe7ea25f AP_Gernerator: IE 2400: MAV_SEVERITY level depends on error code 2024-03-14 09:33:55 +09:00
Andrew Tridgell 5646cfbd57 SITL: fixed the vehicle type of the simulated ship
this was broken by https://github.com/ArduPilot/ardupilot/pull/23763

we need to look for other places where we have assumed the MAVLink
field orderin in recent changes
2024-03-14 09:33:55 +09:00
Andrew Tridgell 252d133110 AP_Scripting: support precision loiter in quadplanes
and allow for moving landing target
2024-03-14 09:33:55 +09:00
Andrew Tridgell efa83d5d6d SITL: added moving precland simulator
added SIM_PLD_SHIP to make the precland location track the SIM_SHIP
location, giving a nice way of having a landing marker on a moving
ship
2024-03-14 09:33:55 +09:00
Andrew Tridgell e759268ab3 AP_Scripting: fixed race condition in ship landing
and fixed lua warnings
2024-03-14 09:33:55 +09:00
Andrew Tridgell fe31c672a9 AP_Scripting: added plane_precland lua script 2024-03-14 09:33:55 +09:00
Andrew Tridgell 89ffe01dad AP_Scripting: added docs for precland 2024-03-14 09:33:55 +09:00
Andrew Tridgell 3edab2a211 AP_Scripting: added bindings for AC_PrecLand 2024-03-14 09:33:55 +09:00
Andrew Tridgell c9bc4bcdd2 SITL: fixed precland simulator
fixed units of height, was mixed cm and m, now just m AMSL
2024-03-14 09:33:55 +09:00
Andrew Tridgell 409f3c37e3 AC_PrecLand: added get_target_location and get_target_velocity 2024-03-14 09:33:55 +09:00
Andrew Tridgell ae790750ed AP_TECS: fixed adjusting speed without airspeed sensor
the pitch trim variable that was not connected in aparm is needed to
allow tuning of the flight speed using PTCH_TRIM_DEG and
TRIM_THROTTLE.

This was broken in 4.4.x by this PR:

https://github.com/ArduPilot/ardupilot/pull/22191
2024-03-14 09:33:55 +09:00
Andy Piper 2a61cc73fe AP_HAL_ChibiOS: BlitzF745AIO update to ICM-42688
enable OSD
use minimal FPV config
enable compass probing
pull uart pins high in bootloader for ELRS
2024-03-14 09:33:55 +09:00
Andrew Tridgell aa1871a3f4 AP_HAL_SITL: fixed get_baud_rate() 2024-03-14 09:33:55 +09:00
Andrew Tridgell 65f7257601 AP_HAL_Linux: fixed get_baud_rate() 2024-03-14 09:33:55 +09:00
Andrew Tridgell 80cd126f99 AP_HAL_ESP32: fixed get_baud_rate() 2024-03-14 09:33:55 +09:00
Andrew Tridgell c94b5d837a AP_SerialManager: default GPS baud to 230400
this is the most common baudrate
2024-03-14 09:33:55 +09:00
Andrew Tridgell ae13e7dd2e AP_GPS: do initial probe at default baudrate
this makes for much faster probe for most users
2024-03-14 09:33:55 +09:00
Peter Barker 1e4c291d33 AP_GPS: correct check of reported antenna distance vs stated offset 2024-03-14 09:33:55 +09:00
Andrew Tridgell 09401ca316 AP_GPS: added option to decode RTCM injected data
this allows for redundent RTCM links (eg. WiFi and SiK links for light
show drones) without causing corruption into the GPS.

If the GPS_DRV_OPTION bit is set then we instantiate a separate RTCM3
decoder per mavlink channel, and only inject when we get a full packet
that passes the RTCM 24 bit CRC
2024-03-14 09:33:55 +09:00
Andrew Tridgell 127ea4ab95 GCS_MAVLink: pass channel number to AP_GPS on RTCM injection 2024-03-14 09:33:55 +09:00
Andrew Piper 66ccaee83b AP_GPS: fragments_received is a bitmask not a count 2024-03-14 09:33:55 +09:00
Paul Riseborough de080b2499 AP_TECS: Remove unused variable 2024-03-14 09:33:55 +09:00
Paul Riseborough 1654bacc2b AP_TECS: Add /0 protection 2024-03-14 09:33:55 +09:00
Paul Riseborough 1aeb0ba23c AP_TECS: Add option for speed to increase up to FBW max during descent 2024-03-14 09:33:55 +09:00
lthall 002bd5b1ea Copter: AC_AttitudeControl: RP_FILT_HZ to RPY_FILT_HZ 2024-03-14 09:33:54 +09:00
lthall ef45942a8a AC_CustomControl: RP_FILT_HZ to RPY_FILT_HZ 2024-03-14 09:33:54 +09:00
Andy Piper 3721b434e1 AC_AttitudeControl: ensure yaw gets a FLTD default 2024-03-14 09:33:54 +09:00
Iampete1 f1821ce4fc AC_AttitudeControl: fix reset_target_and_rate method 2024-03-14 09:33:54 +09:00
Randy Mackay 9ec47e0651 AP_Camera: fix video recording while armed 2024-03-14 09:33:54 +09:00
Andrew Tridgell ef911d30d8 AP_Param: fixed build of CubeOrange-periph 2024-03-14 09:33:54 +09:00
Andrew Tridgell dd1e91528d 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-03-14 09:33:54 +09:00
Peter Barker 08a45293f2 AP_BattMonitor: fix compilation when scripting in but scripted-battery out
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-03-14 09:33:54 +09:00
Rhys Mainwaring 1110dd7a7b AP_DDS: use msg_prefix in GCS_SEND_TEXT
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-03-14 09:33:54 +09:00
Rhys Mainwaring ed0a7d5e6e AP_DDS: use microxrcedds_gen default-container-prealloc-size
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-03-14 09:33:54 +09:00
Rhys Mainwaring 9a01419c27 AP_DDS: remove unused TFMessage variable
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-03-14 09:33:54 +09:00
Peter Barker 3f2e3615e5 AP_RCProtocol: CRSF: use subtraction with times, not time+timedelta 2024-03-14 09:33:54 +09:00
Andrew Tridgell fd6b3cda0e AP_RCProtocol: decode high duty-cycle CRSF frames using frame markers rather than timeouts
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-03-14 09:33:54 +09:00
Peter Barker 7b727a8ac1 AP_RCProtocol: correct CSRF->CRSF
Co-authored-by: Andy Piper <github@andypiper.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-03-14 09:33:54 +09:00
Andy Piper 69d3968b9f AP_RCProtocol: add tests for CRSF and fix protocol test
fixed RCProtocolTest on SITL and make it pass/fail with an exit code

Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-03-14 09:33:54 +09:00
rishabsingh3003 40068358c5 AC_Avoid: Remove sensor status checks 2024-03-12 11:30:17 +11:00
rishabsingh3003 a42f537e61 AP_Proximity: Improve get_status handling 2024-03-12 11:30:17 +11:00
rishabsingh3003 6a87f59d59 AP_RangeFinder: move multican to AP_CANSensor 2024-03-12 11:30:17 +11:00
rishabsingh3003 488bcf6125 AP_Proximity: move mutlican to AP_CANSensor 2024-03-12 11:30:17 +11:00
rishabsingh3003 f552247d4e AP_Arming: Remove MR72 2024-03-12 11:30:17 +11:00
rishabsingh3003 4aaefb7b9e AP_CANManager: Add multiCAN interface 2024-03-12 11:30:17 +11:00
rishabsingh3003 19b6b3bef9 AP_Arming: Add check for CAN MR72 2024-03-12 11:30:17 +11:00
rishabsingh3003 771a2da715 AP_Proximity: Add support for CAN MR72 2024-03-12 11:30:17 +11:00
rishabsingh3003 03ad0b9631 AP_CANMangaer: Add support for CAN MR72 2024-03-12 11:30:17 +11:00
bugobliterator 6fa4259b21 AP_GPS: broaden the acceptance criteria for GPS Yaw measurement 2024-02-14 09:21:15 +09:00
Iampete1 eba74e53c7 AP_Parachute: do relay conversion if ever enabled 2024-02-14 09:21:15 +09:00
Andrew Tridgell e36a6226a8 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-14 09:21:15 +09:00
Andrew Tridgell e2bccebfb8 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-14 09:21:15 +09:00
yjuav 9bf73db55e hwdef: add YJUAV_A6Ultra board support 2024-02-14 09:21:15 +09:00
Randy Mackay 1c41244fe5 Mount: Siyi waits for non-zero cam firmware version 2024-02-14 09:21:15 +09:00
David O'Connor ef10be5918 hwdef: add AnyLeaf H7 board 2024-02-14 09:21:15 +09:00
Andy Piper 3f8c4770b0 AP_RCProtocol: discriminate GHST and CRSF based on first byte
do not change to GHST baudrate unless it has been specifically configured
2024-02-14 09:21:15 +09:00
Andrew Tridgell 2c378f4ba0 HAL_Linux: fixed float calc of time for onboard flow 2024-02-14 09:21:15 +09:00
Andrew Tridgell 350be1b24f HAL_SITL: use integer maths for clocks
same fix as for HAL_Linux
2024-02-14 09:21:15 +09:00
Andrew Tridgell 55d2404e4c 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-14 09:21:15 +09:00
Andrew Tridgell c51d326f53 AP_Scripting: prevent double close in web server 2024-02-14 09:21:15 +09:00
Andrew Tridgell d98036990e AP_Scripting: prevent re-use of closed socket
this prevents a null pointer dereference after a close of a network
socket
2024-02-14 09:21:15 +09:00
Andrew Tridgell 7c47049076 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:43:57 +11:00
Andrew Tridgell 6e3369611e 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:52 +11:00
Andrew Tridgell 06a8aef998 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:44 +11:00
Andrew Tridgell 2d965684f6 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:32 +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