Commit Graph

34928 Commits

Author SHA1 Message Date
Henry Wurzburg
e55702fe3c AP_Camera:fix OPTIONS bitmask 2024-01-04 08:25:48 +09:00
muramura
4765ba8218 AP_InertialSensor: Specify the number of arrays by sizeof 2024-01-04 10:24:44 +11:00
Michael du Breuil
f9fdd152ee AP_Relay: allow hwdef to provide more then 6 relays 2024-01-03 22:44:42 +00:00
jamming
6fe7a1408e hwdef: Add support for BMI088 on Pixhawk6c 2024-01-04 07:17:24 +11:00
Peter Barker
68d8a2606d AP_InertialSensor: SITL: call logging singleton methods only if available 2024-01-03 18:33:41 +11:00
Peter Barker
3ed8a434ce AP_AHRS: add missing SITL header include
the singleton is used in this file
2024-01-03 18:33:10 +11:00
Peter Barker
b43f4f78a3 SITL: add missing includes for SITL object 2024-01-03 18:33:10 +11:00
Peter Barker
8fb1f6f02c AP_Camera: correct compilation when AP_CAMERA_RELAY_ENABLED is 0
... like on skyviper-v2450
2024-01-03 18:05:08 +11:00
Peter Barker
ed1ae3b5f1 chibios_hwdef.py: add quiet option to remove parsing debug output 2024-01-03 18:04:37 +11:00
Peter Barker
dd0a7a551b AP_AHRS: do not compile AP_AHRS.cpp if AP_AHRS_ENABLED is 0
on Periph we end up not having a default backend, which is a compilation failure
2024-01-03 17:35:54 +11:00
Peter Barker
f4d51fd8f5 AP_OpticalFlow: cope if AP_AHRS_ENABLED is 0 2024-01-03 17:35:54 +11:00
Peter Barker
1e41030167 AP_AHRS: cope with AP_INERTIAL_SENSOR being 0 2024-01-03 17:35:54 +11:00
Peter Barker
eec43c204f AP_Compass: cope with AP_INERTIAL_SENSOR being 0 2024-01-03 17:35:54 +11:00
Peter Barker
78087da03c GCS_MAVLink: correct compilation when AP_MISSION_ENABLED is false 2024-01-03 16:16:47 +11:00
Peter Barker
6d2c857db9 AP_Arming: correct compilation when AP_MISSION_ENABLED is false 2024-01-03 16:16:47 +11:00
Peter Barker
17f311ef32 AP_Vehicle: correct compilation when AP_MISSION_ENABLED is false 2024-01-03 16:16:47 +11:00
Peter Barker
368593c2c6 AP_Mission: correct compilation when AP_MISSION_ENABLED is false 2024-01-03 16:16:47 +11:00
Iampete1
a44cba03ef AP_Logger: Write_PID: add reset and I terms set flags 2024-01-03 12:28:59 +09:00
Iampete1
d53b73468b AC_PID: add reset and I term set flags to PIDInfo 2024-01-03 12:28:59 +09:00
Iampete1
9146458d4a AC_PID: remove unused set_integrator methods 2024-01-03 12:28:59 +09:00
Iampete1
2d75b0312e AC_PID: return P and D as output with slew limit and sum limit applyed 2024-01-03 12:28:59 +09:00
Iampete1
5065770e30 AC_PID: tidy interface 2024-01-03 12:28:59 +09:00
Andrew Tridgell
a841e9c109 AP_Scripting: don't throw an exception on out of sockets in accept()
normal lua sockets don't throw an exception on accept, it just returns
nil
2024-01-03 12:14:47 +11:00
Andrew Tridgell
791a0a3230 AP_Networking: use HAL objects more directly
and fix a ms/us bug
2024-01-03 12:14:47 +11:00
Andrew Tridgell
f5bee94cba AP_Networking: added evtimer wrapper 2024-01-03 12:14:47 +11:00
Andrew Tridgell
cc8c671cb7 HAL_ChibiOS: don't link evtimer in chibios_board.mk 2024-01-03 12:14:47 +11:00
Andrew Tridgell
f0a1a19f8b AP_Networking: allow discard test to be paused 2024-01-03 12:14:47 +11:00
Andrew Tridgell
ab24d8768f AP_Networking: disable on MacOSX 2024-01-03 12:14:47 +11:00
Andrew Tridgell
f96810bb22 AP_RCProtocol: fixed example build 2024-01-03 12:14:47 +11:00
Andrew Tridgell
702fe9c18d AP_Networking: only enable networking on Linux, ChibiOS and SITL 2024-01-03 12:14:47 +11:00
Andrew Tridgell
983a680b2b AP_Networking: small improvement to ethernet throughput 2024-01-03 12:14:47 +11:00
Andrew Tridgell
af47beebfc AP_Networking: fixed discard test on PPP
and fixed byte order bug
2024-01-03 12:14:47 +11:00
Andrew Tridgell
8fcc7d5a51 AP_Networking: fixed ChibiOS backend with 16 bit timer 2024-01-03 12:14:47 +11:00
Andrew Tridgell
229a527fed AP_Networking: use BinarySemaphore 2024-01-03 12:14:47 +11:00
Andrew Tridgell
1e7ca34531 AP_HAL: socket native fix 2024-01-03 12:14:47 +11:00
Andrew Tridgell
34c737de36 HAL_Linux: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
adffd93894 SITL: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
213cdcef4b AP_Scripting: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
b3fbc7edb0 AP_RCProtocol: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
f8d64afc69 AP_IRLock: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
69df468b88 AP_HAL_SITL: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
931bae5b88 AP_HAL_Linux: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
ef67fa4293 AP_HAL: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell
cbb3e27519 AP_HAL: added SocketAPM_native
this is a varient of SocketAPM that always uses native sockets
(ie. doesn't go via AP_Networking lwip)
2024-01-03 12:14:47 +11:00
Andrew Tridgell
2048631526 AP_Networking: ensure PPP does not dominate the CPU 2024-01-03 12:14:47 +11:00
Andrew Tridgell
7e29452082 AP_Networking: fix for linux build 2024-01-03 12:14:47 +11:00
Andrew Tridgell
985816ebc2 AP_Networking: don't enable PPP by default 2024-01-03 12:14:47 +11:00
Andrew Tridgell
ec5ff94f3e AP_Networking: cleanup string to IP handling
use SocketAPM methods
2024-01-03 12:14:47 +11:00
Andrew Tridgell
3d5251dfe8 AP_HAL: added inet_str_to_addr to SocketAPM 2024-01-03 12:14:47 +11:00
Andrew Tridgell
812ac6bc0a AP_Networking: allow for --enable-ppp to enable networking 2024-01-03 12:14:47 +11:00
Andrew Tridgell
9d5a54259e AP_Networking: new location for lwip 2024-01-03 12:14:47 +11:00
Andrew Tridgell
418897c443 HAL_ChibiOS: removed old lwip options 2024-01-03 12:14:47 +11:00
Andrew Tridgell
ce6adcfe83 AP_HAL_Linux: added PRIORITY_NET 2024-01-03 12:14:47 +11:00
Andrew Tridgell
ec5c0b82e7 AP_HAL: added PRIORITY_NET 2024-01-03 12:14:47 +11:00
Andrew Tridgell
bfcb8f361e AP_HAL_ESP32: added PRIORITY_NET 2024-01-03 12:14:47 +11:00
Andrew Tridgell
936bbeda88 AP_HAL_ChibiOS: added PRIORITY_NET 2024-01-03 12:14:47 +11:00
Andrew Tridgell
9456b585fa HAL_ChibiOS: don't link lwip bindings from ChibiOS 2024-01-03 12:14:47 +11:00
Andrew Tridgell
d289ba0181 AP_Networking: removed SLIP
PPP is the better choice
2024-01-03 12:14:47 +11:00
Andrew Tridgell
22938e99ea AP_Networking: added ArduPilot HAL port of lwip 2024-01-03 12:14:47 +11:00
Andrew Tridgell
b28912c351 HAL_SITL: cope with no _sitl state 2024-01-03 12:14:47 +11:00
Andrew Tridgell
5748adbf44 HAL_ChibiOS: allow for networking without ethernet 2024-01-03 12:14:47 +11:00
Andrew Tridgell
1d9d599bb0 AP_Networking: allow for PPP on ChibiOS 2024-01-03 12:14:47 +11:00
Andrew Tridgell
94ea22d16f AP_Networking: separate thread for sendfile 2024-01-03 12:14:47 +11:00
Andrew Tridgell
8e132e44cf AP_HAL: improved sockaddr_in compatibility 2024-01-03 12:14:47 +11:00
Andrew Tridgell
1bceee1863 AP_Scripting: added WEB_SENDFILE_MIN parameter
allows for sendfile tuning and disable
2024-01-03 12:14:47 +11:00
Andrew Tridgell
b72b4b5bc0 SITL: added required headers with new SITL header structure 2024-01-03 12:14:47 +11:00
Andrew Tridgell
da7c556f77 AP_InertialSensor: avoid fcntl.h
allows mixing of lwip and sockets
2024-01-03 12:14:47 +11:00
Andrew Tridgell
671bcdad18 HAL_SITL: avoid socket headers in .h files
this makes mixing SITL and lwip sockets possible
2024-01-03 12:14:47 +11:00
Andrew Tridgell
e53729f331 AP_HAL: make Socket.cpp safe for lwip and SITL usage 2024-01-03 12:14:47 +11:00
Andrew Tridgell
896b95654c AP_Networking: added PPP support 2024-01-03 12:14:47 +11:00
Andrew Tridgell
e2dac53fca AP_Networking: added SLIP support 2024-01-03 12:14:47 +11:00
Andrew Tridgell
1627f7f61a AP_OSD: added PPP 2024-01-03 12:14:47 +11:00
Andrew Tridgell
2cb177ef72 AP_SerialManager: added PPP serial type 2024-01-03 12:14:47 +11:00
Peter Barker
7e51811a24 AP_HAL_Linux: cope with HAL_WITH_DSP being false 2024-01-03 11:45:31 +11:00
Peter Barker
75ebef32cf AP_HAL_ESP32: cope with HAL_WITH_DSP being false 2024-01-03 11:45:31 +11:00
Peter Barker
d5ddbad27f HAL_ChibiOS_Class: adjust for dsp disappearing from HAL constructor 2024-01-03 11:45:31 +11:00
Peter Barker
9e5edefc4a AP_HAL: guard against DSP being compiled out of code 2024-01-03 11:45:31 +11:00
Peter Barker
f83b561566 AP_HAL_SITL: guard against DSP being compiled out of code 2024-01-03 11:45:31 +11:00
Andrew Tridgell
635c764c6f AP_HAL: added BinarySemaphore test 2024-01-03 07:37:05 +11:00
Andrew Tridgell
9c1e145c8f AP_PiccoloCAN: reimplement with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
f0aa2a65e4 HAL_SITL: reimplement CAN with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
7059f980b8 HAL_SITL: implement BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
036ae93cbb AP_DroneCAN: reimplement with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
e22e07fbbd AP_CANManager: reimplement with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
5d1eb145cd HAL_ESP32: implement BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
8f8048e4cd HAL_Linux: reimplement CAN with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
bdb8a08724 HAL_Linux: implement BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
c0d0aeee86 HAL_ChibiOS: reimplement CAN with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell
8a027eddb0 HAL_ChibiOS: implement BinarySemaphore
and removed event handles
2024-01-03 07:37:05 +11:00
Andrew Tridgell
c2011570f7 HAL_ChibiOS: use chSysLock for CAN critical section
this avoids an assert in some code paths that combine with hrt
functions
2024-01-03 07:37:05 +11:00
Andrew Tridgell
a52c71f380 AP_HAL: implement BinarySemaphore
and removed event handles
2024-01-03 07:37:05 +11:00
Andrew Tridgell
d1fcb76c9f AP_HAL: ensure all UARTDriver implementations have receive_time_constraint_us
this fixes NMEA over network ports
2024-01-02 20:59:50 +11:00
Andrew Tridgell
85537c2e97 AP_NMEA_Output: fixed NMEA output altitude
the key fix is to multiply hdop by 0.01. It was being passed as a
uint16_t which led to it being swallowed by the %f in the format
string
2024-01-02 20:59:50 +11:00
Peter Barker
4dae077787 GCS_MAVLink: return MAV_RESULT_COMMAND_INT_ONLY if command-long support not compiled in 2024-01-02 18:58:07 +11:00
Aleksey Ploskov
81ab6a9461 AP_NMEA_Output: fix time format 2024-01-02 16:29:50 +11:00
Oleksiy Protas
e855c9f46a AP_HAL_SITL: ensure stdint include 2024-01-02 13:42:58 +11:00
Peter Barker
467daeb4a6 hwdef: tidy checking of is-bootloader-build 2024-01-02 13:00:15 +11:00
Brad Bosch
0a5407a1a7 AP_VideoTX: Restore use of the VTX_MAX_POWER parameter
This functionality was lost when a significant rewrite of this code was done in commit 0658f06030
2024-01-02 12:00:22 +11:00
alexklimaj
c53d3ae09b hwdef: ARK_CANNODE add rangefinder 2024-01-02 11:58:35 +11:00
Henry Wurzburg
c9b8be7213 AP_Parachute:upate metadata in line with new relay functions 2024-01-02 11:46:46 +11:00
Peter Mullen
a83ed6b730 AP_Scripting: Add LUA interface to access Range Finder state 2024-01-02 11:31:02 +11:00
Peter Mullen
2cc63f52a1 AP_RangeFinder: Add LUA interface to access Range Finder state 2024-01-02 11:31:02 +11:00
Mirko Denecke
9cd85f2a2f AR_Motors: fix support for omni vehicles 2024-01-02 11:27:53 +11:00
Henry Wurzburg
f02973b454 AC_Fence:expand FENCE_AUTOENABLE description 2024-01-02 10:52:45 +11:00
Andrew Tridgell
cfa28c5246 HAL_SITL: fixed unbuffered UART writes in SITL
this was causing PPP to slow down by about 1000x due to duplicate
writes
2024-01-02 08:12:37 +11:00
Andrew Tridgell
0a8faa83d9 HAL_ChibiOS: allow for up to 12.5MBps on H7 UARTs
use 8x oversampling instead of 16x oversampling
2024-01-02 08:12:37 +11:00
Andrew Tridgell
c1016ae52e HAL_SITL: cope with no _sitl state 2024-01-02 08:12:37 +11:00
Andrew Tridgell
ac49480f6a HAL_SITL: disable FG view by default 2024-01-02 08:12:37 +11:00
Andrew Tridgell
15d3ec3113 AP_ESC_Telem: allow IOMCU to work in example fw
example firmwares don't instantate AP_ESC_Telem
2024-01-02 08:12:37 +11:00
Andrew Tridgell
ce9c7dfdd1 AP_ADSB: fixed a crash in ADSB when baro not healthy
zero pressure leads to a floating point exception
2024-01-02 08:12:37 +11:00
Andrew Tridgell
9428e41301 SITL: fixed running example firmwares
don't call model update with no sitl instance
2024-01-02 08:12:37 +11:00
Andrew Tridgell
7b5b1ba59f AP_HAL: fixed build without MSG_NOSIGNAL
for older MacOSX
2024-01-02 08:12:37 +11:00
Henry Wurzburg
319202a233 AP_ExternalAHRS: add InertialLabs to type parameter 2024-01-01 13:18:08 +11:00
alexklimaj
e9f51a96cb hwdef: ARKV6X add USART6 to serial list 2024-01-01 13:17:06 +11:00
njwhite
03ae94706e AP_AHRS: Don't Switch to DCM to get Better GPS if DCM Isn't Using GPS
Look at the parameter to see if DCM uses GPS; if not don't prefer DCM for using GPS.
2024-01-01 13:16:04 +11:00
Iampete1
81d4804d53 AP_Scripting: examples: update examples for fixed io.open behaviour 2024-01-01 13:15:37 +11:00
Andrew Tridgell
687c5887af HAL_ESP32: allow for building of examples and tool firmware on ESP32
use waf build target to find the right library name
2023-12-31 09:55:16 +11:00
Andrew Tridgell
4b908077c2 HAL_ESP32: push S3 to 500Hz 2023-12-31 09:55:02 +11:00
Andrew Tridgell
e79f0201bd AP_HAL: added esp32s3empty 2023-12-31 09:55:02 +11:00
Andrew Tridgell
e2f82ed9bc HAL_ESP32: added esp32s3empty target 2023-12-31 09:55:02 +11:00
Andrew Tridgell
6fb99d6b1e AP_Scripting: fixed use after free bug
found with valgrind
2023-12-29 11:33:58 +11:00
Andrew Tridgell
1d0fc4e87c AP_ExternalAHRS: fixed InertialLabs gyro/accel data
this fixes a flapping CI test
2023-12-29 06:29:52 +11:00
Randy Mackay
6c24f80669 AC_Avoidance: Dijsktras comment and const fix 2023-12-28 08:45:23 +09:00
Randy Mackay
58b6429893 AC_Avoidance: oapathplanner gets fast-waypoint option 2023-12-28 08:45:23 +09:00
Randy Mackay
607fa40431 AR_WPNav: send next destination to OA 2023-12-28 08:45:23 +09:00
Randy Mackay
a1e03cbbe1 AC_Avoidance: bendy ruler comment update 2023-12-28 08:45:23 +09:00
Randy Mackay
cb1853b9bb AC_Avoidance: Dijkstra's returns control when clear of obstacles 2023-12-28 08:45:23 +09:00
Randy Mackay
5aeabc5779 AC_Avoidance: path planner accepts next destination 2023-12-28 08:45:23 +09:00
Randy Mackay
82984577d2 AC_Avoidance: path planner avoids timeout when first activated 2023-12-28 08:45:23 +09:00
Randy Mackay
6fed0dbc7a AC_WPNav: OA supports fast waypoints with dijkstras 2023-12-28 08:45:23 +09:00
Randy Mackay
0c8f427d42 AC_WPNav: OA handles failure to set wp on deactivation
This may never happen in practice but just in case
2023-12-28 08:45:23 +09:00
Randy Mackay
8546dfaf4d AC_WPNav: add force_stop_at_next_wp 2023-12-28 08:45:23 +09:00
Randy Mackay
bf2b0f890f AC_WPNav: record next destination
This allows AC_WPNav_OA to completely restore the path on deactivation
2023-12-28 08:45:23 +09:00
Randy Mackay
d01a330588 AC_Avoidance: constify get_shortest_path_point 2023-12-28 08:45:23 +09:00
Andrew Tridgell
1e626a70cb hwdef: added MatekL431-Serial 2023-12-27 05:13:14 -07:00
Andrew Tridgell
6c2a7b8cfd AP_SerialManager: expose HAVE_SERIAL_xxx in config 2023-12-27 05:13:14 -07:00
Andrew Tridgell
46171a7c79 hwdef: give a more useful error message on no bootloader 2023-12-27 21:45:13 +11:00
Henry Wurzburg
ea3dc78a96 AP_Relay:correct function param metadata
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2023-12-26 22:28:37 -07:00
Tom Pittenger
47fdf2295c AP_Scripting: add bindings for ahrs.wind_alignment and ahrs.head_wind 2023-12-26 10:20:23 +11:00
Tom Pittenger
39e7209e33 AP_AHRS: move wind helper functions from AP_Landing 2023-12-26 10:20:23 +11:00
Tom Pittenger
7a9c6eea9c AP_Landing: move wind helper functions to AP_AHRS 2023-12-26 10:20:23 +11:00
Tom Pittenger
813c732a83 AP_Baro: slow down Baro offset slew 2023-12-26 10:17:56 +11:00
Andrew Tridgell
74c2855be3 HAL_SITL: implement begin(0) on UARTs
the begin(0) is used to claim a uart for the current thread in
ChibiOS, we need to ignore it on SITL and not change baudrate
2023-12-26 06:21:42 +11:00
Andrew Tridgell
2842166b06 AP_ExternalAHRS: avoid uart owner issue
ensure we own uart before read
2023-12-26 06:21:42 +11:00
Andy Piper
57ac86edd9 AP_IOMCU: fix occasional startup internal errors with mixing
allow DIRECT_PWM pages to be smaller than max channels
correct some over-eager register clearing in the global interrupt handler (NFC)
only sent TX events when using shared DMA (NFC)
zero out rx packet code and size to prevent errors with spurious callbacks
add a comment and check for offsets that are codes
2023-12-24 14:39:05 +11:00
Andrew Tridgell
d2d2067f1c HAL_ChibiOS: fixed micros and millis on boards without 1MHz clock 2023-12-24 10:10:14 +11:00
Henry Wurzburg
5c1ed968b1 AP_Motors:expand heli tail param metadata 2023-12-20 17:50:38 -05:00
Andrew Tridgell
f3303c9272 HAL_SITL: use uint64_div1000()
match ChibiOS
2023-12-21 09:09:11 +11:00
Andrew Tridgell
4a59097b5e HAL_ChibiOS: use C implemention of div1000 2023-12-21 09:09:11 +11:00
Andrew Tridgell
49c3536ca7 AP_Math: added uint64_div1000()
and test suite
2023-12-21 09:09:11 +11:00