Andrew Tridgell
65537bdaca
AP_BattMonitor: cope with NaN in consumed_mah
2023-08-26 21:12:42 +10:00
Andrew Tridgell
202e71482f
HAL_ChibiOS: support CKS32F407 MCU
...
based on STM32F407
2023-08-26 21:12:42 +10:00
Asif Khan
e3f0904616
GCS_MAVLink: move handling of all do-set-roi to AP_Mount library
2023-08-26 17:55:53 +10:00
Asif Khan
3927521aa6
AP_Mount: move handling of all do-set-roi to AP_Mount library
2023-08-26 17:55:53 +10:00
Andrew Tridgell
725a2227ca
AP_AHRS: return estimates from state structure
...
this lowers CPU usage and fixes race conditions
2023-08-26 17:13:10 +10:00
Peter Barker
149921792c
SITL: document SIM_ACCx_BIAS_y
2023-08-26 16:15:58 +10:00
Asif Khan
dffeaf0897
AP_Mount: Siyi fix for continuous zoom
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-08-26 14:46:31 +09:00
muramura
0ab76afb4d
AP_BattMonitor: Change to floating value multiplication
2023-08-26 08:59:12 +10:00
Andrew Tridgell
999919424b
hwdef: allow for MCO pin to be configured
...
this allows for hwdef.dat lines like this:
PA8 MCO1 RCC
PC9 MCO2 RCC
you can control the scaling by defining the following:
- STM32_MCO1SEL
- STM32_MCO1PRE_VALUE
- STM32_MCO2SEL
- STM32_MCO2PRE_VALUE
2023-08-25 07:37:12 +10:00
Peter Barker
a2d5244b10
GCS_MAVLink: accept mount commands as command_int
2023-08-24 22:07:12 +10:00
Peter Barker
02d1eca49b
AP_Mount: accept mount commands as command_int
2023-08-24 22:07:12 +10:00
MallikarjunSE
00879e9b0b
AP_HAL_ChibiOS/hwdef: Add hwdef for Sierra True series periphs
2023-08-24 17:47:05 +10:00
MallikarjunSE
5e6591fa58
AP_HAL_ChibiOS/hwdef: Add hwdef for Sierra-PrecisionPoint
2023-08-24 17:45:31 +10:00
Andrew Tridgell
5f47a94e2b
AP_RangeFinder: use NaN for invalid rangefinder data
2023-08-24 13:06:40 +10:00
Andrew Tridgell
1b6c329de5
SITL: use NaN for invalid rangefinder data
...
needed to cope properly with terrain errors leading to negative
rangefinder data
2023-08-24 13:06:40 +10:00
Andrew Tridgell
f076f7c4f1
HAL_SITL: use nan to indicate no actuator value
...
this allows for multiple periph nodes, each providing a subset of
motors/servos
2023-08-24 13:06:40 +10:00
Andrew Tridgell
3a8fd367ad
AP_ESC_Telem: use SIM_CAN_SRV_MSK and fixed throttle dependency
...
RPM should not depend on "throttle", it is per motor
2023-08-24 13:06:40 +10:00
Andrew Tridgell
4e71023018
SITL: added SIM_CAN_SRV_MSK
...
mask of outputs that will come from the CAN SITL peripheral
2023-08-24 13:06:40 +10:00
Andrew Tridgell
b72f4a3cd8
HAL_SITL: enable GPIO and RC output in periph
2023-08-24 13:06:40 +10:00
Andrew Tridgell
823ac579cd
HAL_SITL: added debug for multicast startup
...
useful for CI diagnosis
2023-08-24 13:06:40 +10:00
Andrew Tridgell
4a07f7a4eb
HAL_SITL: block in MC read for packet in AP_Periph
...
can't advance time without a new multicast packet
2023-08-24 13:06:40 +10:00
Andrew Tridgell
4c2ca1e028
AP_FETtecOneWire: fixed build on periph
2023-08-24 13:06:40 +10:00
Andrew Tridgell
1144036a8d
HAL_SITL: support servo and ESC output in SITL AP_Periph
...
use another UDP socket back to the main firmware from peripheral
2023-08-24 13:06:40 +10:00
Andrew Tridgell
51af21f6d9
HAL_Linux: removed ESC scaling, moved to AP_HAL
2023-08-24 13:06:40 +10:00
Andrew Tridgell
49f1e5d1db
HAL_ChibiOS: removed ESC scaling, moved to AP_HAL
2023-08-24 13:06:40 +10:00
Andrew Tridgell
64040bfab4
AP_HAL: move ESC scaling up to AP_HAL level
2023-08-24 13:06:40 +10:00
Andrew Tridgell
b76e2342db
HAL_SITL: added "Waiting for" message
...
this is needed for test.CAN autotest as it waits for periph startup
2023-08-24 13:06:40 +10:00
Andrew Tridgell
6d81f34db8
HAL_SITL: added --defaults handling to periph SITL
2023-08-24 13:06:40 +10:00
Andrew Tridgell
65ced84a0e
HAL_SITL: handle periph voltage/current and improve timing
2023-08-24 13:06:40 +10:00
Andrew Tridgell
2380849b4d
AP_Torqeedo: allow build for periph
2023-08-24 13:06:40 +10:00
Andrew Tridgell
0a04043c4c
AP_CANManager: allow SITL CAN with speedup
2023-08-24 13:06:40 +10:00
Andrew Tridgell
9cde659545
SITL: disable gimbal and ADSB in SITL periph
...
lack of MAVLink makes these problematic
2023-08-24 13:06:40 +10:00
Andrew Tridgell
a42a2fec2a
HAL_SITL: implement multicast comms for SITL AP_Periph
2023-08-24 13:06:40 +10:00
Andrew Tridgell
5d4bf9fc14
AP_AHRS: fixed build for SITL periph
2023-08-24 13:06:40 +10:00
Andrew Tridgell
9706a207b1
AP_Terrain: fixed build for periph
...
needed for SITL periph rangefinder
2023-08-24 13:06:40 +10:00
Andrew Tridgell
791d0acefe
SITL: removed GPS FIFO
2023-08-24 13:06:40 +10:00
Andrew Tridgell
3752750f0a
AP_Mount: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
85c2c3609b
AP_HAL_SITL: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
8ed289a514
AP_HAL_Linux: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
6a54c5e952
AP_HAL: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
39153a1c01
AP_HAL_ChibiOS: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
babd2d2033
AP_GPS: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
232509ad7a
AP_DroneCAN: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Andrew Tridgell
b55c1d7193
AP_CANManager: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Ryan Friedman
1839db7c1f
AP_ExternalAHRS: Allow multiple external AHRS GPS instances
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-24 12:01:32 +10:00
Ryan Friedman
01cd42d1e7
AP_GPS: Allow multiple external AHRS GPS instances
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-24 12:01:32 +10:00
Nick Exton
fad1f35d93
GCS_MAVLink: Remove unreachable return in handle_command_mount()
2023-08-24 11:57:55 +10:00
Pierre Kancir
d78fe1ad99
AP_HAL_SITL: fix possible divide by 0 on synth.hpp
2023-08-24 07:46:20 +10:00
Ryan Friedman
d31896a545
AP_DDS: Stub out external odom
...
* Implement frame ID checking and test it
* Implement the visual odom function that does narrowing to floats
* Normalize quaternions from ROS
* Supply 0 error to EKF
* Handle external odomo only if HAL_VISUALODOM_ENABLED is defined
* Implement odom timestamping and improve docs
* Add unit tests
* Add a CONFIG file for DDS
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-24 07:46:06 +10:00
Tom Pittenger
732cd31f27
GCS_MAVLink: MSG_HOME_POSITION to use NaN for invalid
2023-08-23 08:53:29 -07:00
Andy Piper
f7c86cc06a
AP_NavEKF: fallback to no baro on boards that have no baro
2023-08-23 18:25:26 +10:00
Paul Riseborough
5aa7bd0b7a
AP_NavEKF3: Allow operation with EK3_SRCx_POSZ = 0 (NONE)
2023-08-23 18:25:26 +10:00
Paul Riseborough
2572c9be48
AP_NavEKF: Allow EK3_SRCx_POSZ to be set to 0 (NONE)
2023-08-23 18:25:26 +10:00
Andy Piper
c57efa1b20
AP_NavEKF3: allow high values of EK3_ALT_M_NSE for boards without baros
2023-08-23 18:25:26 +10:00
Randy Mackay
9d09739044
AP_Mount: Viewpro supports get rangefinder distance
2023-08-23 18:09:56 +10:00
Andy Piper
8f644f473c
AP_Vehicle: add autotune options
2023-08-23 18:06:22 +10:00
Andy Piper
ee883b6ad0
APM_Control: allow autotune FLTD and FLTT updates to be disabled
2023-08-23 18:06:22 +10:00
Peter Barker
81326a17db
hwdef: qiotek: correct HAL_BATT_MONITOR_DEFAULT define name
2023-08-23 17:20:20 +10:00
Tom Pittenger
ed43f095ce
AP_HAL_ChibiOS: add AP_BATTERY_ESC_TELEM_OUTBOUND_ENABLED to defaults_periph
2023-08-22 16:14:36 -07:00
Tom Pittenger
21ead4e8e3
AP_Battery: add param _ESC_ID to write to ESC_Telem
2023-08-22 16:14:36 -07:00
Tom Pittenger
dbe0aac73f
AP_ESC_Telem: update_telem_data to be public
2023-08-22 16:14:36 -07:00
Tom Pittenger
5ddb649ed1
Update libraries/AP_Networking/AP_Networking.cpp
...
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2023-08-22 09:25:42 -07:00
muramura
4bad05c49c
AP_Logger:AP_Networking: If initialization fails, the process is terminated
2023-08-22 09:25:42 -07:00
muramura
75a279a11d
AP_Networking: Delete entity class pointer
2023-08-22 09:25:42 -07:00
Andrew Tridgell
847c7980c7
AP_DDS: use AP_ExternalControl for velocity control
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Andrew Tridgell <tridge60@gmail.com>
2023-08-22 18:21:23 +10:00
Andrew Tridgell
0f624089f8
AP_ExternalControl: external control library for MAVLink,lua and DDS
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Andrew Tridgell <tridge60@gmail.com>
2023-08-22 18:21:23 +10:00
Andy Piper
37a3f85a9a
AP_HAL_ChibiOS: add 8 bi-directional dshot channels to KakuteH7-Wing
2023-08-22 11:08:14 +10:00
Andrew Tridgell
4f0ba39b64
AP_Param: fixed parameter defaults array length handling
...
we need to add up the total for all comma separated parameter files
2023-08-22 11:07:30 +10:00
Willian Galvani
158b99c20a
AP_MotorsUGV: add asymmetry factor for skid-steering
...
Co-authored-by: Iampete1 <iampete@hotmail.co.uk>
2023-08-22 09:14:42 +09:00
Peter Barker
b141cca3d5
GCS_MAVLink: pass mavlink_message_t to handle_command_*_packet
...
the "special case" blocks are getting longer and longer. Merge the switch statements for the command type to be handled by passing around the message.
2023-08-22 10:11:33 +10:00
Andrew Tridgell
aaec99ae31
hwdef: removed baro from HolybroG4_GPS
...
not included in production versions, and baro is not generally a good
idea on a GPS due to impact of airflow
also disable unused IMU, SPI bus and 2nd I2C and re-enable 2nd CAN as
helical units have dual CAN
2023-08-22 09:37:20 +10:00
Peter Barker
1dd5778956
GCS_MAVLink: correct placement of AP_MAVLINK_MISSION_SET_CURRENT_ENABLED
2023-08-22 09:09:54 +10:00
Peter Barker
b4a9c0ec1e
AP_RPM: include backend header
...
in the case you're inlcuding the RPM library but no backends we don't know the shape of the backend class, so we can't call the update-esc-telem method.
2023-08-22 09:09:54 +10:00
Peter Barker
84b3c9e267
SITL: reset balancebot to vertical in a kinmetically consistent manner
...
The hard-reset of all state variables means we feed the EKF inconsistent gyro data. Attempt to upright the vehicle with a simple p-gain when it is disarmed, as if someone is pushing the thing back upright
2023-08-21 22:09:04 +10:00
Michelle Rossouw
26bbd6536a
SITL: Improve Blimp dynamics and fin motion to be more realistic, allow SITL loop rate to be changed and add more logging
2023-08-21 21:01:47 +10:00
Peter Barker
efa680f1e0
AP_HAL_ChibiOS: add hwdef for bootloader for MatekL431-RC
2023-08-20 17:37:44 +10:00
Fred Kummer
7c6551af9b
AP_DroneCAN: allow sending negative RawCommands to ESCs
2023-08-19 20:27:58 +10:00
Andrew Tridgell
24139d661a
AP_RCProtocol: allow for fport without FRSky telem
2023-08-19 20:27:24 +10:00
Peter Barker
ca549e1887
hwdef: add MatekL431-RC for RC input
2023-08-19 20:27:24 +10:00
Peter Barker
103caac92c
AP_HAL_ChibiOS: add support for DroneCAN RCInput packets
2023-08-19 20:27:24 +10:00
Peter Barker
b8a80817e4
AP_RCProtocol: add support for DroneCAN RCInput packets
2023-08-19 20:27:24 +10:00
Peter Barker
1e8d256bc2
AP_DroneCAN: add support for DroneCAN RCInput packets
2023-08-19 20:27:24 +10:00
Peter Barker
48b9172f5b
RC_Channel: add note about copying parameter to AP_Periph
2023-08-19 20:27:24 +10:00
Ryan Friedman
e14afa6f2b
AP_DDS: Add AP_DDS_config.h for feature defines
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-18 08:35:24 +10:00
Tom Pittenger
27f9a54a54
AP_HAL_ChibiOS: fix CubeRed default MAC Address
2023-08-17 13:51:54 +10:00
Tom Pittenger
7e62904d5e
AP_Networking:fix default MAC address UID
2023-08-17 13:51:54 +10:00
Peter Barker
5a0f0915ed
AP_RPM: tidy constructors and use of config.h
2023-08-17 09:22:41 +10:00
Peter Barker
8df2d4998b
AP_Math: improve gating of use of AP_InternalError library
...
- gate calls into library directly on the define
- INTERNAL_ERROR becomes empty if library not compiled in
2023-08-17 09:16:46 +10:00
Peter Barker
94e61a263d
AP_InternalError: improve gating of use of AP_InternalError library
...
- gate calls into library directly on the define
- INTERNAL_ERROR becomes empty if library not compiled in
2023-08-17 09:16:46 +10:00
Peter Barker
bb6f0ae527
AP_HAL_ChibiOS: improve gating of use of AP_InternalError library
...
- gate calls into library directly on the define
- INTERNAL_ERROR becomes empty if library not compiled in
2023-08-17 09:16:46 +10:00
Peter Barker
c2f4fb5def
hwdef: use APJ_BOARD_ID mapping for ACNS-CM4Pilot
2023-08-17 09:13:54 +10:00
Peter Barker
19bd97a893
chibios_hwdef.py: permit board ID to be specified as a string
2023-08-17 09:13:54 +10:00
Peter Barker
b8978ad73a
hwdef: explicitly state no-bootloader-embedding on some boards
2023-08-17 08:37:31 +10:00
Peter Barker
a11df25490
chibios_hwdef.py: enforce presence of bootloader if embedding desired
2023-08-17 08:37:31 +10:00
yunjiuav
f92073fa4d
HAL_ChibiOS: modify APJ_BOARD_ID of YJUAV_A6SE
2023-08-17 08:35:18 +10:00
Michael du Breuil
a0efcc7bdc
AP_ESC_Telem: Correct a regression with calclulating active_esc_mask
...
Credit to @casrya on github for spotting this (#24665 ), and
investigating. The intent here was to bail out only if no data was
within the timeout, which I had messed up in a bad refactor.
2023-08-17 08:34:29 +10:00
Paul Riseborough
e3c0175bb4
AP_NavEKF3: Update EK3_GLITCH_RADIUS metadata
2023-08-16 17:56:43 +10:00
Paul Riseborough
842882355f
AP_NavEKF3: increase innovation variance instead of clipping innovations
2023-08-16 17:56:43 +10:00
Paul Riseborough
573bd7c7f3
AP_NavEKF3: Provide option to clip velocity and position innovations
2023-08-16 17:56:43 +10:00
Andy Piper
7896b04365
AP_HAL_ChibiOS: betafpv F450 AIO hwdef
2023-08-16 17:51:23 +10:00
Henry Wurzburg
b1fc5bd69f
AP_HAL_ChibiOS: add missing bootloader binaries
2023-08-16 17:49:00 +10:00
Peter Barker
2ce61cce58
AP_Generator: rename generator define to fix feature extraction
...
pattern-matching requires a regular pattern. Renaming the class would be bad, so just rename the define
2023-08-16 17:35:59 +10:00
Peter Barker
7273c8416a
AP_HAL_ChibiOS: prevent Periph bricking problem when paniccing early
...
if Periph panics before we mark the scheduler as initialised then we don't watchdog, which we really need to do on periph nodes so they can be re-flashed conveniently.
2023-08-16 17:21:30 +10:00
Peter Barker
4d3e7bd3da
AC_Fence: remove old polygon fence conversion code
2023-08-16 17:13:31 +10:00
Peter Barker
83cecdd229
AP_RPM: correct compilation when AP_RPM_ESC_TELEM_ENABLED is disabled
2023-08-15 18:06:58 -07:00
Tom Pittenger
d8e9379289
AP_RPM: add writing to outbound ESC_Telem
2023-08-16 06:35:05 +10:00
Tom Pittenger
15b8700a2c
Revert "AP_RPM: enable AP_RPM to set ESC Telemetry"
...
This reverts commit 1e633df3de
.
2023-08-16 06:35:05 +10:00
Andrew Tridgell
3e3c086ab7
SITL: build the whole simulator as double precision
2023-08-15 22:39:23 +10:00
Andrew Tridgell
ba7d94d5ad
HAL_SITL: mark all as double precision
2023-08-15 22:39:23 +10:00
Ryan Friedman
2c5f90adca
AP_DDS: Enable the DDS parameter by default
...
* DDS is still disabled by default in all builds for the library level compile flag
* This parameter was blocking running ROS 2 automated testing in CI
* This can be changed once ENABLE_DDS compiler flag is enabled in SITL or for the 4.5 release
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-15 18:32:39 +10:00
Shiv Tyagi
0d87479314
AP_Scripting: make follow bindings dependant on AP_FOLLOW_ENABLED
2023-08-15 09:57:35 +10:00
Shiv Tyagi
6251b3e3f3
AP_Follow: add and use AP_FOLLOW_ENABLED
2023-08-15 09:57:35 +10:00
Tom Pittenger
932ed9ff28
AP_Mission: show tag or jump index on WP change
2023-08-14 16:55:04 -07:00
muramura
62aee72820
GCS_MAVLink: Change a number to a defined name
2023-08-15 08:36:59 +09:00
Peter Barker
f2066d8e58
GCS_MAVLink: remove ap_message<->mavlinkid mappings for unused ids
2023-08-15 09:14:27 +10:00
Peter Barker
9d74b3d2d9
AP_NMEA_Output: remove from 1MB boards
2023-08-15 08:45:30 +10:00
Peter Barker
7764d1d904
GCS_MAVLink: add build_options.py option to remove rallypoint protocol
2023-08-15 08:37:17 +10:00
Peter Barker
941e9785d4
AP_GPS_NOVA: avoid infinite reading of bytes
...
if we have a very fast stream of garbage coming in available() may never return 0
2023-08-15 08:36:13 +10:00
yjuav
ac993753eb
Modify the LED light pins and adjust the direction of the IMU and COMPASS sensors.
2023-08-15 08:35:26 +10:00
yunjiuav
5671e502d3
HAL_ChibiOS: added YJUAV_A6SE support
2023-08-15 08:35:26 +10:00
Peter Barker
0dae9b46ee
SRV_Channel: correct description of SERVO_RC_FS_MSK
2023-08-15 08:16:16 +10:00
Peter Barker
b8c1367aac
SRV_Channel: avoid using bad RC data in passthrough code
...
we may not have valid input but not be at the stage of declaring an RC failsafe.
2023-08-15 08:16:16 +10:00
Peter Barker
808fcbda0e
GCS_MAVLink: fix airspeed cal / format commands via non-USB telemetry
2023-08-15 08:13:32 +10:00
Andy Piper
75c1ad6efa
AP_HAL_ChibiOS: explicitly set dshot rate when using iomcu
2023-08-15 06:53:48 +10:00
Andy Piper
c4cfc5dbe4
AP_IOMCU: fix eventing mask and some minor cleanups
2023-08-15 06:53:48 +10:00
Andy Piper
2af3d53eac
AP_IOMCU: use a command queue for dshot commands and telemetry requests to avoid losing data
2023-08-15 06:53:48 +10:00
Andy Piper
c6c78a9c32
AP_HAL_ChibiOS: ensure reverse and reversible masks are applied to iomcu
2023-08-15 06:53:48 +10:00
Andy Piper
d9f42236ad
AP_IOMCU: support dshot600 on f103
2023-08-15 06:53:48 +10:00
Andy Piper
52dbac1de7
AP_HAL_ChibiOS: run STM32F103 core clock at 72Mhz on 24Mhz oscillators
2023-08-15 06:53:48 +10:00
Andy Piper
33c40eaba3
AP_HAL_ChibiOS: add iomcu dshot for Pixhawk1, Pixhawk5X and fmuv5
2023-08-15 06:53:48 +10:00
Andy Piper
876f4f7a8f
AP_HAL_ChibiOS: dshot iofirmware for Durandal, Pixhawk6C, CubePurple and CubeYellow
2023-08-15 06:53:48 +10:00
Andy Piper
af256f4b1b
AP_IOMCU: output mcuid on f103 if able to
2023-08-15 06:53:48 +10:00
Andy Piper
9ac683a350
GCS_Common: report ARM CPUID on startup
2023-08-15 06:53:48 +10:00
Andy Piper
9db5d0bf9b
AP_IOMCU: reduce latency for oneshot
...
correctly update outmode modes when requested
get ARM CPUID and display in startup banner
ensure correct rc input timing on 1Khz iofirmware
2023-08-15 06:53:48 +10:00
Andy Piper
cf9a3ada28
GCS_MAVLink: print out IOMCU mcuid on startup
2023-08-15 06:53:48 +10:00
Andy Piper
1c646d2986
AP_HAL_ChibiOS: use f103 iofirmware for Pixhawk6X
2023-08-15 06:53:48 +10:00
Andy Piper
c057cc5485
AP_HAL_ChibiOS: add get_output_mode() and use it to print correct banner for iomcu
...
add support for undef of STM32 lines and DMA_NOMAP
add support for F103 running at 24Mhz
add f103 variants of iofirmware
reduce memory usage in iomcu for new model
correct pwm output reporting
split iofirmware into config + mcu to allow f103 definition
don't enable non-existant timers on F103
2023-08-15 06:53:48 +10:00
Andy Piper
7b96f66413
AP_IOMCU: add support for getting output mode and mcuid
...
give an appropriate MCUID on F103
2023-08-15 06:53:48 +10:00
Andy Piper
2dd4f3f581
AP_BoardConfig: control dshot availability with HAL_WITH_IO_MCU_DSHOT
...
correct parameter id for BRD_IO_DSHOT
2023-08-15 06:53:48 +10:00
Andy Piper
c631b79dde
AP_HAL: add get_output_mode() and HAL_WITH_IO_MCU_DSHOT
2023-08-15 06:53:48 +10:00
Andy Piper
83fddd0d61
AP_HAL_ChibiOS: enable iomcu-dshot on CubeBlack
2023-08-15 06:53:48 +10:00
Andy Piper
bb730e8e24
AP_IOMCU: inverted locking model 2
2023-08-15 06:53:48 +10:00
Andy Piper
ec1edea1da
AP_IOMCU: add support for shared DMA to iomcu-dshot
...
new event-based update() loop for iomcu to allow for DMA channel sharing
spin event loop at 2Khz to give dshot thread ample access to DMA channels
correct transmission complete callbacks
ensure peripheral is re-enabled on DMA resumption
ensure DMA transactions do not get clobbered by locking
restructure callbacks for shared and non-shared DMA cases
ensure RC updates happen at 1Khz
increase expected delay at startup
2023-08-15 06:53:48 +10:00
Andy Piper
10a612566a
AP_HAL_ChibiOS: ensure shared DMA works in IOMCU
...
enable TIM4 in shared mode on IOMCU for dshot
stop the PWM peripheral in rcout DMA swapping on IOMCU to prevent UART corruption
provide debugging options on iomcu dshot
support unshared DMA with iomcu dshot
optimize rcout on iomcu
tune iomcu stack for 8 channels
2023-08-15 06:53:48 +10:00
Andy Piper
3c42f1b7d9
AP_HAL_ChibiOS: disable stack checking on iomcu
2023-08-15 06:53:48 +10:00
Andy Piper
9611baf148
AP_Vehicle: soft reboot iomcu on soft reboot
2023-08-15 06:53:48 +10:00
Andy Piper
837c81af5e
AP_HAL_ChibiOS: fix sending of dshot commands to all channels
2023-08-15 06:53:48 +10:00
Andy Piper
e6e0543b8a
AP_IOMCU: propagate dshot rates through to IOMCU
...
implement dshot ESC telemetry
add support for channel enablement/disablement
add stack checks and reporting for MSP stack
wait correct timeout in tickless mode
ensure that dshot sees all pwm updates as the occur in order to maintain periodicity
ensure dshot options are propagated on reset
implement dshot commands
ensure oneshot/125 and mode are setup correctly
add instrumentation for process stack
prevent illegal recursive locks
ignore requests for dshot 600
add support for soft reboot of iomcu
2023-08-15 06:53:48 +10:00
bugobliterator
9a21297cd1
AP_HAL_ChibiOS: add support for DShot on IOMCU
...
set timer counter size to be a byte wide
use HAL_DSHOT_ENABLED instead of DISABLE_DSHOT
build iomcu-dshot from existing iomcu
correct defines for DMAR size on iomcu
allow iomcu dshot rate to be configured from FMU
correct DMA allocation for dshot on iomcu
allow debug builds on iofirmware
ensure dshot is enabled on iomcu dshot
support proper iomcu dshot output thread triggered by FMU
allow selective disablement of serial LEDs and passthrough
disable serial LEDs and passthrough on iomcu-dshot
propagate ESC telemetry to iomcu
dshot_send_groups() for iomcu
remove use of ICU on iomcu for dshot. only allocate possible DMA channels
rename serial passthrough and dshot defines
update dshot docs
resize dshot iomcu main stack to minimum
correct dshot prescaler usage and bit_width_mul calculation
use ChibiOS in tickless mode on iomcu-dshot so that virtual timers can be used
propagate dshot commands to iomcu
passthrough oneshot125 to iomcu
2023-08-15 06:53:48 +10:00
Andy Piper
f233a65580
AP_HAL_ChibiOS: add global interrupt handlers for TIM15 and TIM17 on F1
2023-08-15 06:53:48 +10:00
Andy Piper
9642343e8e
AP_BLHeli: normalize motor index correctly for iomcu running dshot
2023-08-15 06:53:48 +10:00
Andy Piper
0b4838475d
AP_SerialLED: configure serial LED feature based on hal availability
2023-08-15 06:53:48 +10:00
Andy Piper
4c8b346512
AP_BoardConfig: check IOMCU is enabled when checking dshot
2023-08-15 06:53:48 +10:00
Andy Piper
1b210f8ea9
AP_HAL: support accessors for dshot_period_us
...
add support for selectively disabling serial LEDs and passthrough
provide mutator to allow iomcu to set dshot rate
support HAL_SERIAL_ESC_COMM_ENABLED and DISABLE_SERIAL_ESC_COMM
update dshot docs
make default serial led enablement dependent on dshot
2023-08-15 06:53:48 +10:00
Andy Piper
eacc29e81e
AP_Math: do not use internal_error() on iofirmware
2023-08-15 06:53:48 +10:00
bugobliterator
4ce32c74de
AP_HAL: add default DISABLE_DSHOT as false
...
use HAL_ENABLE_DSHOT instead of DISABLE_DSHOT
2023-08-15 06:53:48 +10:00
bugobliterator
b8af6da623
AP_BoardConfig: add ability to change dshot firmware
2023-08-15 06:53:48 +10:00
bugobliterator
ad428ac060
AP_IOMCU: add support for sending DShot function command
...
add support for dshot on iomcu
add support for updating to dshot iofirmware
2023-08-15 06:53:48 +10:00
Peter Barker
771f8855b7
AP_Logger: correct use of nullptr in SITL structure sanity checks
...
A developer might be able to craft a fault such that s could be nullptr here. They would need to work at it, but we can do better.
2023-08-14 22:25:50 +10:00
Andrew Tridgell
0d97b308b2
GCS_MAVLink: fixed corruption of FTP reply component ID
...
this led to not being able to do FTP transfers with
support.ardupilot.org unless MissionPlanner used the same component ID
as the support engineer GCS
2023-08-14 22:25:23 +10:00
alexklimaj
738a4c638a
hwdef: arkv6x default to no IO MCU
2023-08-14 12:06:25 +10:00
Peter Barker
90929205e9
SRV_Channel: correct RC channel failsafe mask
...
this is a 32-bit parameter.
2023-08-14 11:21:06 +10:00
Andrew Tridgell
484312df93
AP_NavEKF3: fixed race condition in updateFilterStatus()
...
filter status was initially set to zero then updated. This interacts
with the IMU filtering code which checks filter status from a
different thread to determine active_EKF_type(). When the race
condition is hit then the IMU we are running notch filters on changes
for a single sample, causing a notch filter glitch
2023-08-12 17:47:56 +10:00
Andy Piper
205e6bebc7
AP_HAL_ChibiOS: fix incorrect removal of HAL_I2C_INTERNAL_MASK undef in SkystarsH743HD
2023-08-12 14:00:11 +10:00
Michelle Rossouw
e4d44c1006
SITL: Make SIM_Aircraft use double precision to stop SITL's short-range teleporting
2023-08-12 10:49:02 +10:00
Tom Pittenger
2b30fbcfb2
AP_HAL_ChibiOS: disable RPM by default on Periph
2023-08-11 13:31:45 -07:00
Tom Pittenger
0de754bff3
AP_RPM: prepare for AP_Periph
2023-08-11 13:31:45 -07:00
Tom Pittenger
41024b7f02
AP_TemperatureSensor: add Source Pitot_tube
2023-08-11 13:20:51 -07:00
olliw42
2f58d082f0
GCS_Common: brackets missing in switch case
2023-08-11 12:11:43 -07:00
arshPratap
47efaf9c62
AP_DDS: Added ROS 2 service support
2023-08-11 13:35:49 +10:00
arshPratap
5f17e33b39
AP_Arming: Added DDS Method for Arming/Disarming
2023-08-11 13:35:49 +10:00
Peter Barker
7f8df080f8
SITL: correct compilation for CubeOrange-SimOnHardware
...
../../libraries/SITL/SIM_GPS.cpp: In member function 'void SITL::GPS::send_gsof(const uint8_t*, uint16_t)':
../../libraries/SITL/SIM_GPS.cpp:1292:24: error: 'AP_InternalError' has not been declared
1292 | INTERNAL_ERROR(AP_InternalError::error_t::flow_of_control);
2023-08-11 12:40:59 +10:00
Ryan Friedman
5b21834827
AP_GPS: Switch to sparse endian to make it portable
...
* Instead of custom algorithm to reduce flash and code maintenance
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-11 11:21:41 +10:00
Peter Barker
e638925ee0
AP_HAL_ChibiOS: chibios_hwdef.py: fix minor bugs
...
also mark as flake8-clean
2023-08-11 10:41:02 +10:00
Peter Barker
536f3ac922
chibios_hwdef.py: minor flake8 fixes
...
whitespace, long lines, ambiguous variables etc
2023-08-11 10:41:02 +10:00
Peter Barker
65cc16c51d
SITL: add descriptions for simulated IMU scale factors
2023-08-11 10:34:02 +10:00
Andrew Tridgell
44c5754e36
AP_Airspeed: increased timeout on DroneCAN airspeed data
...
the data is sent at 20Hz, which means a single lost packet with 10Hz
reading resulted in an unhealthy sensor
2023-08-11 10:33:36 +10:00
Andrew Tridgell
faa4d28851
AP_Airspeed: fixed handling of unhealthy airspeed
...
this fixes a bug introduced in
https://github.com/ArduPilot/ardupilot/pull/22416 which results in
using bad airspeed data on timeout. The prev_health variable is
updated by the get_pressure call
2023-08-11 10:33:36 +10:00
Peter Barker
cbd2b199eb
SITL: factor simulated GPS
2023-08-11 10:01:56 +10:00
olliw42
e2599252a1
AP_Mount: use backend instead of _backends[instance]
2023-08-11 07:55:05 +09:00
Andrew Tridgell
8ff37bc79c
AP_Networking: fixed duplicate parameters in wiki
...
defining two parameter tables in one file causes duplicates
2023-08-10 13:34:14 -07:00
Andy Piper
f787e940b3
AP_HAL_ChibiOS: change incorrect I2C internal mask from SkystarsH7HD bdshot
2023-08-10 16:16:16 +10:00
davidsastresas
767710340a
AP_Mount: Viewpro sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
25e8bd1f42
AP_Mount: Xacti sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
d242a968f3
AP_Mount: Siyi sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
55aa1b5a32
AP_Mount: Backend sends gimbal_device_id in device_attitude_status_send
2023-08-10 14:37:30 +09:00
davidsastresas
073e93dfec
AP_Camera: MAVLinkCamV2 sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
9bca2740b2
AP_Camera: backend sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
6a9b457be3
GCS_Common: autopilot_state_for_gimbal_device sends angular_velocity_z
2023-08-10 14:37:30 +09:00
Ryan Friedman
578ba20df0
GCS_MAVLink: Use renamed visual odom function
...
* Now called pose instead of position
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-10 13:58:00 +09:00
Ryan Friedman
1615038e57
AP_VisualOdom: Change name from position to pose
...
* The function takes position (linear) + orientation (angular), therefore it's a pose, not a position
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-10 13:58:00 +09:00
Andrew Tridgell
c8b2622f45
AP_BattMonitor: fixed reset_remaining() for INAxxx and LTC2946
...
these can use the generic reset_remaining() call in the backend
2023-08-10 07:43:25 +10:00
Andrew Tridgell
5722cb584d
AP_Scripting: added BattEstimate lua script
...
this estimates state of charge from resting voltage while disarmed
2023-08-10 07:43:25 +10:00
Peter Barker
6097f1aa61
GCS_MAVLink: allow removal of preflight commands to fail the autopilot
2023-08-10 07:11:22 +10:00
Tom Pittenger
aefc2a8492
AP_RPM: enable AP_RPM to set ESC Telemetry
2023-08-09 12:02:31 -07:00
Randy Mackay
ee07d6bec8
AP_DroneCAN: get/set param timeout after 0.1 sec
2023-08-09 18:10:35 +10:00
Randy Mackay
6fe31396d9
AP_DroneCAN: improve get/set param comments
2023-08-09 18:10:35 +10:00
Peter Barker
77b8c96eae
GCS_MAVLink: add build_options.py option to remove fencepoint protocol
...
also gate more code on defines
Saves ~2kB
2023-08-09 17:53:54 +10:00
Peter Barker
e54baf41f6
AP_Frsky_Telem: add build_options.py option to remove fencepoint protocol
...
also gate more code on defines
Saves ~2kB
2023-08-09 17:53:54 +10:00
Peter Barker
c300beae69
AC_Fence: add build_options.py option to remove fencepoint protocol
...
also gate more code on defines
Saves ~2kB
2023-08-09 17:53:54 +10:00
Andy Piper
9212a24248
AP_HAL_ChibiOS: properly support CRSF on HEEWING-F405
...
update HeeWing F405 README to reflect VTX pinout
2023-08-09 17:44:14 +10:00
Peter Barker
aa5466c6e2
AP_Torqeedo: remove use of HAL_BUILD_AP_PERIPH
...
turn torqeedo off in chibios_hwdef.py instead for Periph
2023-08-09 17:39:49 +10:00
Peter Barker
ceab0180ec
AP_HAL_ChibiOS: remove use of HAL_BUILD_AP_PERIPH
...
turn torqeedo off in chibios_hwdef.py instead for Periph
2023-08-09 17:39:49 +10:00
Peter Barker
a8bb397eb7
AP_MSP: remove references to HAL_BUILD_AP_PERIPH
...
HAL_MSP_ENABLED is already explicitly off in chibios_hwdef.py for Periph
2023-08-09 17:39:49 +10:00
Peter Barker
fb0ebf75ca
AP_RangeFinder: move rangefinder rotation default down into AP_Periph
2023-08-09 17:39:49 +10:00
Peter Barker
68e3b1e79b
AP_HAL_ChibiOS: move rangefinder rotation default down into AP_Periph
2023-08-09 17:39:49 +10:00
Henry Wurzburg
af34b1e43b
AP_Vehicle: add failsafe protections to Mode Takeoff
2023-08-09 17:33:58 +10:00
Andrew Tridgell
2832f8ca76
AP_Arming: fixed auto-enable of fence with forced arm
...
when a user forced armed and had FENCE_AUTOENABLE=3 for enable on
arming then the fence did not enable
2023-08-09 16:08:42 +10:00
Tom Pittenger
0d0ba0f656
AP_TemperatureSensor: add support for MCP9601
2023-08-09 15:49:30 +10:00
Ryan Friedman
6a2a852450
SITL: Implement GSOF SIM
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-09 12:26:10 +10:00
Asif Khan
f26528edba
AP_Mount: fix GIMBAL_MANAGER_SET_PITCHYAW not working correctly when using multiple gimbals
2023-08-09 10:03:34 +09:00
Asif Khan
47977b1635
AP_Camera: add parameter CAMx_MNT_INST for associating camera with corresponding mount
2023-08-09 10:03:34 +09:00
Asif Khan
ea9f4a79f5
AP_Mount: fix sending camera information and settings for each backend
2023-08-09 10:03:34 +09:00
Asif Khan
09e949173d
AP_Camera: fix sending camera information and settings for each backend
2023-08-09 10:03:34 +09:00
Peter Barker
13c83ee9f8
GCS_MAVLink: enable sending of RELAY_STATUS message
2023-08-09 07:44:07 +10:00
Peter Barker
1e18ca595f
AP_Relay: enable sending of RELAY_STATUS message
2023-08-09 07:44:07 +10:00
Peter Barker
67988320a7
hwdef: disable sending of RELAY_STATUS on mimimized boards
2023-08-09 07:44:07 +10:00
Ryan Friedman
be5d846af0
AP_DDS: Switch topic to cmd_vel
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-08 15:35:43 +10:00
Ryan Friedman
9b0f485fee
AP_DDS: Add velocity control DDS subscriber
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-08 15:35:43 +10:00
bnsgeyer
53100c8e96
SITL: fix vertical axis dynamics for autorotation
2023-08-07 22:10:09 -04:00
Andy Piper
fe56a6aedd
AP_HAL_ChibiOS: allow 8 bdshot channels on mRoControlZeroH7
2023-08-08 11:50:56 +10:00
Peter Barker
53d5d1b9a9
AP_HAL_ChibiOS: break out include files for firmware defaults
2023-08-08 11:45:50 +10:00
Peter Barker
5670b8a062
AP_RangeFinder: compile mavlink rangefinder in only if HAL_GCS_ENABLED
2023-08-08 11:39:45 +10:00
Peter Barker
e6ac368972
AP_GPS: make AP_GPS_MAV dependent on HAL_GCS_ENABLED
2023-08-08 11:33:54 +10:00
Peter Barker
6ee9f01ffb
AP_GPS: avoid use of mavlink constructs when GCS not compiled in
2023-08-08 11:33:54 +10:00
Peter Barker
bf005731a9
AP_GPS: tidy is_healthy calculations
...
this removes some duplicate code and simplifies the flow of control
2023-08-08 11:31:18 +10:00
Peter Barker
009172685e
AP_HAL_ChibiOS: avoid use of MINIMIZE_FEATURES define in Copter directory
2023-08-08 10:35:19 +10:00
Peter Barker
3fea8d16f1
AP_HAL: remove MINIMIZE_FEATURES define
2023-08-08 10:35:19 +10:00
Peter Barker
646704c5dc
AP_HAL_ChibiOS: remove MINIMIZE_FEATURES define
2023-08-08 10:35:19 +10:00
Peter Barker
d6979e62f0
GCS_MAVLink: handle mag cal as both COMMAND_LONG and COMMAND_INT
2023-08-08 10:06:13 +10:00
Peter Barker
d50c429355
AP_Compass: handle mag cal as both COMMAND_LONG and COMMAND_INT
2023-08-08 10:06:13 +10:00
Tom Pittenger
1e83e61b25
AP_Networking: fix build for periph
2023-08-07 17:04:27 -07:00
Iampete1
5c09a16a80
AP_BattMonitor: add health logging
2023-08-08 10:04:12 +10:00
Michael du Breuil
935fad54ad
AP_ESC_Telem: Fix some time wrap issues that can lead to using stale data if a ESC stops responding
2023-08-08 09:53:48 +10:00
Michael du Breuil
c1e6f130dd
AP_HAL_ChibiOS: CubeOrange map EXTERN_DRDY and !EXTERN_CS to ADC
2023-08-08 09:16:56 +10:00
Ryan Friedman
843a14ee57
SITL: Add heading and speed_2d utils
...
* These are also needed by the upcoming GSOF PR
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-07 08:40:58 -07:00
Henry Wurzburg
8d86503ed5
AP_Motors: correct metadata for H_DDFP_SPIN_MIN param
2023-08-07 07:36:47 -04:00
Ryan Friedman
e0b23ddf8f
AP_HAL_SITL: Rename LORD to MicroStrain
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-07 19:16:03 +10:00
Ryan Friedman
109c894929
AP_HAL: Rename LORD to MicroStrain
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-07 19:16:03 +10:00
Ryan Friedman
7c2baa75d9
SITL: Rename LORD to MicroStrain
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-07 19:16:03 +10:00
Ryan Friedman
cb480d2855
AP_ExternalAHRS: Rename LORD to MicroStrain
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-07 19:16:03 +10:00
Peter Barker
5d52d7f78b
SITL: add description for SIM_BATT_VOLTAGE
2023-08-07 15:32:31 +10:00
Iampete1
63666ea83a
AP_Scripting: generator: fix dependancy start and end miss-match
2023-08-07 12:33:01 +10:00
muramura
9374b374de
AP_Networking: Change message level from DEBUG to INFO
2023-08-06 17:37:17 -07:00
Peter Barker
37de51f1d4
hwdef: remove un-needed lines in KakuteH7 config
...
these are the default values, and KakuteH7 isn't minimized
2023-08-06 17:36:25 -07:00
Andrew Tridgell
0333e92cbc
hwdef: update SIYI_N7 hwdef
...
the N7 isn't the same as the Durandal. It has 1 CAN bus, and 2 less
UARTs, and an extra compass. This fixes the hwdef.dat to match the
schematic
2023-08-06 09:23:45 +10:00
Andrew Tridgell
e1fad5ee38
AP_Compass: allow override of IST8310 orientation
...
this allows for vendor GPS modules and internal compass which use a
different orientation
2023-08-06 09:23:45 +10:00
Andrew Tridgell
5af7fdf330
AP_Networking: use host byte order addresses internally
...
this should make the lua API easier to handle, as it can manipulate
uint32_t easily
2023-08-06 09:20:08 +10:00
Andrew Tridgell
8ddaf17184
AP_Vehicle: update networking at 10Hz
2023-08-06 09:20:08 +10:00
Andrew Tridgell
fd70f5c7d7
AP_Networking: split ChibiOS code into its own backend
2023-08-06 09:20:08 +10:00