Randy Mackay
ba9bb22c3c
AP_Scripting: add camera-change-settings applet
2024-09-03 09:04:39 +09:00
Randy Mackay
79983944c6
AP_Scripting: change_camera_setting binding
2024-09-03 09:04:39 +09:00
Randy Mackay
1f14c2ca6b
AP_Mount: Siyi implements change_setting
2024-09-03 09:04:39 +09:00
Randy Mackay
78d88d11a3
AP_Camera: add change settings
2024-09-03 09:04:39 +09:00
Willian Galvani
11e05b1436
AP_HAL: add BMP390 option for navigator
2024-09-02 11:37:40 -03:00
Ryan Friedman
02d01ce392
AP_DDS: Remove duplicate instructions
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-02 12:24:31 +10:00
cuav-chen2
18cb1f3899
HAL_ChibiOS: change battery scale for CUAV-7-Nano flight controller
2024-09-02 12:23:08 +10:00
Thomas Watson
89c9e59c55
AP_DroneCAN: DNA_Server: polish db methods
...
No compiler output change.
2024-09-02 11:53:24 +10:00
Peter Barker
a0c57291d7
AP_InertialSensor: correct compilation when logging disabled
2024-09-02 11:53:12 +10:00
Peter Barker
864a7a2a4b
AP_GPS: define GPS_BLENDED_INSTANCE any time AP_GPS_BLENDED_ENABLED
...
otherwise someone can explicity ebable it but not have a blended instance ID
2024-09-02 11:53:12 +10:00
Peter Barker
e9baf3d15a
AP_DAL: add and use pr/EK3_FEATURE_OPTFLOW_FUSION
2024-09-02 11:53:12 +10:00
Peter Barker
02c6784c11
AP_NavEKF3: add and use pr/EK3_FEATURE_OPTFLOW_FUSION
2024-09-02 11:53:12 +10:00
Peter Barker
c5b9d1dcbb
AP_AHRS: add and use pr/EK3_FEATURE_OPTFLOW_FUSION
2024-09-02 11:53:12 +10:00
David Buzz
04292a280c
AP_HAL_ESP32: scheduler timing information was lying to us
...
This reverts commit 010cfa2f4c
.
AP_HAL_ESP32: scheduler timing information was lying to us, this puts it back so both 'esp32buzz' and 'esp32s3empty' loop rates are "better than before. Still terrible, but an improvement
revert of part of pr #27181
2024-09-02 09:21:45 +10:00
Thomas Watson
e99b0fd7b9
AP_HAL: increase overtime margin on ESP32
2024-09-02 09:21:08 +10:00
Thomas Watson
6c2daabd21
AP_Scheduler: make overtime margin definable
...
Also warn about overtime on ESP32 which is most likely to hit it.
2024-09-02 09:21:08 +10:00
Ferruccio Vicari
5b2dcc3a0c
AP_Motors: fix DDVP tail servo initialization
2024-09-01 18:03:20 -04:00
Clyde McQueen
cc06f7099c
AC_WPNav: lower WPNAV_SPEED min to 10 cm/s
2024-08-30 07:55:50 +09:00
Maxim Buzdalov
15d6e664d8
AP_Notify: Fix compilation error in GPIO_LED_1.cpp
2024-08-29 09:37:50 +10:00
bugobliterator
957e92aca1
AP_HAL_ChibiOS: use CubePilot-CANMod's Serial Order
2024-08-28 18:20:29 +10:00
Henry Wurzburg
e6351b6a41
AP_Notify:correct and expand 1 led flash sequences
2024-08-28 18:19:26 +10:00
Henry Wurzburg
4a72373624
AP_GPS:fix metadata typo
2024-08-28 15:31:08 +10:00
Henry Wurzburg
1631e85fe8
AP_GPS:add note to old param names to avoid confusion
2024-08-27 12:00:14 +10:00
Iampete1
3c6e5691e4
Filter: LowPassFilter: use `calc_lowpass_alpha_dt` helper
2024-08-27 11:21:22 +10:00
Iampete1
5453f3a0cc
AP_DroneCAN: register handle_actuator_status_Volz callback and fix logging
2024-08-27 11:18:18 +10:00
Peter Barker
46db6c12c1
SITL: correct use of simulated GPS data
...
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
uses the elements out of the simulated GPS data "d", rather than going to the parameters in teh simulated GPS "backends".
2024-08-27 11:14:09 +10:00
Peter Barker
3c0c2bfa67
AP_Math: add a test for rand_float
2024-08-27 11:09:13 +10:00
Peter Barker
84bcea73e1
AP_Math: correct range of returned value for rand_float on real hardware
2024-08-27 11:09:13 +10:00
Andrew Tridgell
6de6de694a
AP_Math: allow rand_float() on STM32
2024-08-27 11:09:13 +10:00
Peter Barker
ee6bd4fca0
AP_RangeFinder: number enum entries
...
we log these so they should be numbered
2024-08-27 11:05:32 +10:00
Wu
a33a0d1579
HAL_ChibiOS: fixed the imu orientation of RadiolinkPIX6
2024-08-27 10:26:50 +10:00
Randy Mackay
5bcbf56a47
AP_Mount: Siyi ZT6 set lens fix
...
ZT6 has RGB and Thermal image sensors only
2024-08-27 10:23:47 +10:00
Randy Mackay
0874202aa1
AP_Mount: Siyi ZT6 hardware id fix
2024-08-27 10:23:47 +10:00
Peter Barker
c79ba79ed1
AP_Logger: AllTypes example: freshen output file
2024-08-27 10:19:26 +10:00
Peter Barker
1c15488e35
AP_Common: add comment on top of float16 storage
...
there are multiple standards for storing these values
2024-08-27 10:19:26 +10:00
Peter Barker
b4e3b6cdd5
AP_Logger: add support for logging float16
2024-08-27 10:19:26 +10:00
Peter Barker
4e27c51aa1
AP_NavEKF3: do not log DefaultAirspeed if logging not started
...
if we are not going to use this value ourselves then we certainly should not add it to the replay log
2024-08-27 10:15:10 +10:00
Peter Barker
00dc15063e
AP_NavEKF: avoid copying all but the best element when recalling time-horizon data
2024-08-27 10:07:52 +10:00
Iampete1
98d9890bf1
AP_ICEngine: convert from local servo endpoints and rc channel params
2024-08-27 09:37:34 +10:00
Iampete1
51963f497b
RC_Channel: add ICEngine start / stop aux function
2024-08-27 09:37:34 +10:00
Iampete1
eee2d2f57e
SRV_Channel: add methods to set defualt and save min/max values
2024-08-27 09:37:34 +10:00
Peter Barker
39b4b80a5f
AP_GPS: create real AP_GPS_Blended backend
2024-08-27 09:26:06 +10:00
Peter Barker
a65cd27435
AP_Beacon: allow hwdefs to override number of beacons
...
... also a few other variables.
Also move these out of the main header file as one is internal and the others should go in the ocnfig. in case the values are used elsewhere
2024-08-26 13:48:02 +10:00
Ryan Friedman
284faf08ee
AP_GSOF: Use sparse endian instead of custom code
...
* This saves flash
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-26 13:31:49 +10:00
Willian Galvani
616d74f1b0
AP_Scripting: add note about generating code for extension fields
2024-08-24 14:18:53 +01:00
Wu
52c94e2a5b
AP_HAL_ChibiOS: add SPA06 baro for RadiolinkPIX6
2024-08-23 18:38:27 +10:00
Andy Piper
98f3a4b7d5
AP_InertialSensor: allow backend filters to be updated independently from a separate thread
2024-08-23 18:34:28 +10:00
Tatsuya Yamaguchi
62e3c6a6a9
AC_AttitudeControl: update comment to reflect the current logic in is_active_xy()
2024-08-23 07:14:50 +10:00
jamming
988d50fd9b
hwdef: Add IST8310 and RM3100 Compass support for HolybroG4_GPS
2024-08-22 08:57:18 +10:00
jamming
a3c930be7b
AP_HAL_ChibiOS: Add a new target HolybroG4 DroneCAN Airspeed
2024-08-22 08:56:22 +10:00
Andy Piper
9c588d6ae2
AP_HAL_ChibiOS: do not include NeoPixel in minimum pulse separation
2024-08-21 17:24:01 +10:00
Randy Mackay
0d568b500a
AP_Scripting: message_interval example handles 0hz
2024-08-21 11:41:50 +09:00
Andrew Tridgell
d3a1d515cb
AP_Scripting: added TECS tuning to revert param script
2024-08-21 06:46:56 +10:00
Andrew Tridgell
1b4fb403f2
AP_NavEKF2: added EK2_OPTIONS
...
this allows for disabling of external navigation data (such as visual
odomotry) in EKF2. This is very useful when using EKF2 as a fallback
and truth reference when testing visual odomotry on EKF3
2024-08-21 06:32:34 +10:00
Peter Barker
2e1364e3b0
autotest: include SBF when testing GPS backends work
2024-08-21 06:31:41 +10:00
Peter Barker
07b27d76be
SITL: correct and augment SBF simulator
...
- checksum calculation was including header parts in CRC twice
- need to send DOP message to make EKF happy
- need to supply own number of satellites
- must pad packets to a multiple of 4 bytes
2024-08-21 06:31:41 +10:00
Peter Barker
3bde446538
AP_GPS: SBF: avoid FPE when undulation is DNF
2024-08-21 06:31:41 +10:00
chiara de saint giniez
c9f648b97c
SITL: SBF driver
2024-08-21 06:31:41 +10:00
Peter Barker
ebc8a71c36
GCS_MAVLink: allow cancelling of mission upload by sending MISSION_CLEAR_ALL
2024-08-20 20:46:41 +10:00
Peter Barker
c0735d136c
GCS_MAVLink: factor out a check_receiving_cancel method
...
allow reuse of this logic
2024-08-20 20:46:41 +10:00
Peter Barker
8ee7bf2dcb
AP_GPS: change GPS_TYPE value 10 from SBF to Septentrio
2024-08-20 20:45:45 +10:00
Peter Barker
b86380bbc6
AP_Camera: create and use an option_is_enabled
2024-08-20 14:50:23 +10:00
Ryan Friedman
d859e9aa55
AP_GSOF: Disable packet1 test for now
...
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Ryan Friedman
724e61fa70
Tools: factor out common library for GSOF
...
* Add tests too
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Ryan Friedman
921ef6cd36
AP_GSOF: factor out common library for GSOF
...
* Add tests too
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Ryan Friedman
f8295cb52b
AP_GPS: factor out common library for GSOF
...
* Add tests too
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-08-20 14:50:05 +10:00
Andrew Tridgell
669cb6563b
AP_GPS: allow for EAHRS_SENSORS to not include GPS
...
this allows external AHRS GPS to not be presented to AP_GPS as a
possible driver
2024-08-20 10:27:01 +10:00
Thomas Watson
7c5a46bac2
AP_DroneCAN: DNA_Server: arrange db methods into more logical order
2024-08-20 10:22:55 +10:00
Thomas Watson
b38766c469
AP_DroneCAN: DNA_Server: clarify comments with consistent terminology
2024-08-20 10:22:55 +10:00
Thomas Watson
9669b4e85d
AP_DroneCAN: DNA_Server: rename db methods to use consistent terminology
...
Also use snake_case like the rest of Ardupilot.
2024-08-20 10:22:55 +10:00
Thomas Watson
ddf74e2da4
AP_DroneCAN: DNA_Server: rename node record structure
...
Rename NodeData to NodeRecord to provide a more specific name and match
the record term used in the comments. Also nominally allows stuff to be
associated with the nodes that's not the record, as expanding the record
is hard.
Additionally, rename the `hwid` field to `uid` as that's what's used in
the rest of the code.
2024-08-20 10:22:55 +10:00
Thomas Watson
e22f26e507
AP_DroneCAN: DNA_Server: briefly document database to guide cleanup
2024-08-20 10:22:55 +10:00
Iampete1
4ab976178e
SRV_Channels: find_channel: use channel mask remove need for search over all channels
2024-08-20 09:41:58 +10:00
Peter Barker
b1ae1591fb
AP_TemperatureSensor: add AP_TEMPERATURE_SENSOR_BACKEND_DEFAULT_ENABLED
2024-08-20 09:34:21 +10:00
Andrew Tridgell
faf769d8cd
AP_Param: throw error if we lose parameters
...
if we can't save a parameter due to the queue size not being large
enough then there is a coding error, likely the code trying to save
large numbers of parameters while armed
2024-08-20 09:30:22 +10:00
Iampete1
d0d5dfddda
AP_ESC_Telem: getters: check index is in range first
2024-08-20 09:14:11 +10:00
Iampete1
f9f8c2aa29
AP_ESC_Telem: add `telemdata.valid` method to simplify code
2024-08-20 09:14:11 +10:00
Iampete1
64c2a1070f
AP_ESC_Telem: SITL: fill in extended status values
2024-08-20 09:14:11 +10:00
Iampete1
be80f83679
AP_ESC_Telem: add getters for extended status values
2024-08-20 09:14:11 +10:00
timtuxworth
c2a5554e9f
AP_Vehicle: Bindings for crosstrack in Lua
2024-08-20 09:10:42 +10:00
timtuxworth
8a93c6a264
AP_Scripting: Bindings for crosstrack in Lua
2024-08-20 09:10:42 +10:00
Iampete1
b811791863
Filter: examples: TransferFunctionCheck: add support for varable DT low pass
2024-08-20 09:09:41 +10:00
Iampete1
e2ce21a237
Filter: LowPassFilter: split into two classes for constant and variable dt
2024-08-20 09:09:41 +10:00
Iampete1
7d7333a91f
Filter: example: TransferFunctionCheck: override constant dt filter
2024-08-20 09:09:41 +10:00
Iampete1
ee8a8f0254
SITL: SIM_Battery: provde dt in voltage filter apply function
2024-08-20 09:09:41 +10:00
Iampete1
89297737ea
AP_InertialSensor: move to new constant dt low pass filter class
2024-08-20 09:09:41 +10:00
Iampete1
44918b0e75
AP_ICEngine: move to new constant dt low pass filter class
2024-08-20 09:09:41 +10:00
Iampete1
1d589c5244
AP_GyroFFT: move to new constant dt low pass filter class
2024-08-20 09:09:41 +10:00
Iampete1
5cc63d7e6f
APM_Control: move to new constant dt low pass filter class
2024-08-20 09:09:41 +10:00
Loki077
0c29d4280c
AP_Scripting: AP_ESC_Telem method update
...
-Updated AP_ESC_Telem methods to use ESC_TELEM_MAX_ESCS instead of NUM_SERVO_CHANNELS.
- the place where the function returns bool adding skip check.
2024-08-19 21:16:41 +10:00
Loki077
46c98d6c95
AP_Scripting: added lua binding get_last_update for efi and esc
2024-08-19 21:16:41 +10:00
Loki077
94059ed7bc
AP_ICEngine: Add Option to Control the direction of Cranking.
...
Added the 5th bit to the ICE_OPTION parameter to enable CRANK_DIR_REVERSE control, specifically for managing Hirth engine direction using AP_ICEngine_TCA9554.
2024-08-19 20:21:57 +10:00
Lokesh-Ramina
54ec26a80a
AP_EFI: Adding EFIS log for Hirth
...
- Added EFIS log for Hirth engine
- Added ThM to help understand the engine logs better
- Updated the field names to keep the total length 64-characters long.
- Added Bitfield for the EFIS log to log all errors.
2024-08-19 07:11:50 +10:00
Andrew Tridgell
1fe21b6120
QURT: allow for external compasses
...
this allows for additional compasses on I2C
2024-08-17 13:20:00 +10:00
Pierre Kancir
f1dd2bb2e8
AP_HAL_Linux: SITL: add missing header for timeval struct on alpine linux
2024-08-15 22:33:42 +10:00
Pierre Kancir
3e4241ee7f
AP_HAL: add missing header for timeval struct on alpine linux
2024-08-15 22:33:42 +10:00
Pierre Kancir
102547968f
SITL: add missing header for timeval struct on alpine linux
2024-08-15 22:33:42 +10:00
Peter Barker
ca9a504c4f
AP_Camera: move defintiion of HAL_RUNCAM_ENABLED into AP_Camera_config.h
2024-08-15 18:15:05 +10:00
Gone4Dirt
1de229debc
AP_MotorsHeli_RSC: Make variables in constructor const
2024-08-14 23:39:01 -04:00
Gone4Dirt
7271a469fd
AP_MotorsHeli: Move heli logging down to motors
2024-08-14 23:39:01 -04:00
Peter Barker
60c2e4278c
AP_Compass: avoid use of MAV_RESULT if mavlink bindings not used
2024-08-14 19:40:31 +10:00
Peter Barker
571f18bb69
AP_Terrain: gate mavlink includes on HAL_GCS_ENABLED
...
avoids trying to include headers which have not been generated"
2024-08-14 19:39:16 +10:00
Peter Barker
ba305025c4
AP_Notify: use default value for DEFAULT_NTF_LED_TYPES for NavIO2
...
this is the default default value for this define
2024-08-14 19:38:48 +10:00
Peter Barker
b47bcc4429
AP_Notify: use default DEFAULT_NTF_LED_TYPES on unrecognised Linux boards
...
now have two ifndef blocks, one of which defaults things on recognized linux boards, the other generically.
Preparation for removing the defaultin for Linux boards in this file
2024-08-14 19:38:48 +10:00
Peter Barker
7c2ee8d53c
AP_Notify: use DEFAULT_NTF_LED_TYPES for chibios boards
...
default is the same as what ChibiOS sets
2024-08-14 19:38:48 +10:00
root
c854830702
AP_VideoTX:add additional freq bands(RushFPV 3.3GHz)
2024-08-13 21:32:56 +10:00
James O'Shannessy
39f7d7a3ad
AP_ExternalAHRS: Allow InertialLabs to be used as build option properly
...
build_options cannot autodetect InertialLabs since the feature is extracted as AP_EXTERNAL_AHRS_INERTIALLABS_ENABLED (without the underscore).
This allows you to define in/out InertialLabs properly.
2024-08-13 21:32:11 +10:00
Andrew Tridgell
d225683d69
AP_GPS: fixed unconfigured uBlox pre-arm
...
when GPS_GNSS_MODE is zero (the default) we could get stuck trying to
configure the GNSS for F9P
2024-08-13 10:49:09 +10:00
Peter Barker
8c6a427107
AP_Vehicle: correct compilation when network port registering disabled
...
the ports member doesn't exist in this case
2024-08-13 10:46:45 +10:00
Peter Barker
f32f3beceb
AP_Networking: correct compilation when network port registering disabled
...
ports doesn't exist if this condition is false
2024-08-13 10:46:45 +10:00
Peter Barker
1dc87a0903
AP_OpticalFlow: simplify condition used for building onboard optical flow in
...
we're not being consistent in the use of defines to protect this feature; fix that
2024-08-13 10:45:31 +10:00
Andy Piper
edbe339f48
AP_Logger: correctly read file header for block logger
2024-08-13 10:44:35 +10:00
Peter Barker
3194fa1385
AP_Scripting: correct compilation when AP_SCRIPTING_SERIALDEVICE_ENABLED false
2024-08-13 10:43:29 +10:00
Peter Barker
6c788c6ae0
AP_Math: correct warning on fabsF
...
2024-08-08T01:51:53.6780446Z ../../libraries/AP_Math/vector3.cpp:432:9: warning: absolute value function 'fabsf' given an argument of type 'const double' but has parameter of type 'float' which may cause truncation of value [-Wabsolute-value]
2024-08-08T01:51:53.6781336Z if (fabsF(cosv) >= 1) {
2024-08-08T01:51:53.6781583Z ^
2024-08-08T01:51:53.6781930Z ../../libraries/AP_Math/ftype.h:50:18: note: expanded from macro 'fabsF'
2024-08-08T01:51:53.6782342Z #define fabsF(x) fabsf(x)
2024-08-08T01:51:53.6782572Z ^
2024-08-08T01:51:53.6789178Z ../../libraries/AP_Math/vector3.cpp:633:16: note: in instantiation of member function 'Vector3<double>::angle' requested here
2024-08-08T01:51:53.6789800Z template class Vector3<double>;
2024-08-13 10:42:23 +10:00
Andy Piper
08bf7c6163
AP_HAL_ChibiOS: Flywoo H743 Pro
2024-08-13 10:20:15 +10:00
Thomas Watson
e12f345bae
AP_DroneCAN: DNA_Server: make lower level database tasks private
...
All the higher level database operations need to be locked for the whole
duration of the operation, so nobody should be using the lower-level
tasks or raw read/write functions. We can also remove the locks from
them.
The database can now safely be used by multiple servers.
2024-08-13 09:58:44 +10:00
Thomas Watson
4097e9fa42
AP_DroneCAN: DNA_Server: move allocation operation to db
...
Must be locked for the whole operation due to the find free/add
read-modify-write.
Preserves the previous behavior of sending back an ID of 0 in case of
allocation failure, for better or worse.
2024-08-13 09:58:44 +10:00
Thomas Watson
f406c62449
AP_DroneCAN: DNA_Server: move node info update operation to db
...
Must be locked for the whole operation due to the occupied check and
addition read-modify-write.
2024-08-13 09:58:44 +10:00
Thomas Watson
e79437d04a
AP_DroneCAN: DNA_Server: move init operation into db
...
Must be locked for the whole operation due to the get/add
read-modify-write.
2024-08-13 09:58:44 +10:00
Thomas Watson
01e285c681
AP_DroneCAN: DNA_Server: move database tasks to db class
...
The server should not have raw read/write access to the database so the
database needs to take over the tasks.
2024-08-13 09:58:44 +10:00
Thomas Watson
a9774d2334
AP_DroneCAN: DNA_Server: move storage read/write to its own class
...
There is (currently) only one storage area that is used by all servers,
so it needs to be managed by its own class shared among them.
The occupied mask is also moved as it reflects the storage contents and
so can't be stored by each server.
2024-08-13 09:58:44 +10:00
Iampete1
f6da3ce764
AC_AutoTune: add support for testing tune via aux function
2024-08-13 08:57:44 +09:00
Iampete1
94d3e2673a
AC_AutoTune: Multi and Heli: only load tuned gains if a axis has completed successfully
2024-08-13 08:57:44 +09:00
Iampete1
9da6f321a0
RC_Channel: add autotune switch
2024-08-13 08:57:44 +09:00
Peter Barker
c3b6127b1b
AP_ExternalAHRS: correct VectorNAV handling of error term
2024-08-13 08:38:21 +10:00
Peter Barker
f389549d5d
AP_InertialSensor: correct warnings on static_assert requiring a message
2024-08-13 08:38:00 +10:00
Peter Barker
ce03fd3ed9
AC_AutoTune: remove unused variable from heli autotune
2024-08-12 13:30:26 -04:00
Peter Barker
748fe538ea
AP_Winch: correct compilation when backends compiled out
2024-08-12 18:28:27 +10:00
Peter Barker
27a7a21805
AP_Compass: correct compilation when logging disabled
2024-08-12 18:28:07 +10:00
Peter Barker
610ba486ad
AP_MSP: cut more code out based on defines
2024-08-12 18:07:21 +10:00
Peter Barker
5c3aa91721
AP_RCTelemetry: add missing gate for AP_VIDEOTX_ENABLED
...
possible nullptr issue?
2024-08-12 17:52:04 +10:00
Peter Barker
92dd71203e
AP_VideoTX: correct include to use config.h
...
need to avoid random headers in these config files!
2024-08-12 17:52:04 +10:00
Peter Barker
53e9fe0805
AP_Mount: correct compilation with HAL_MOUNT_SET_CAMERA_SOURCE_ENABLED off
2024-08-12 17:50:59 +10:00
Tom Pittenger
a014bcb5bd
AP_RPM: Allow more instances
2024-08-10 22:37:03 +10:00
mikefenghao
ff30224079
AP_HAL_ChibiOS:added new hardware PixPilot-V6PRO
2024-08-10 11:06:33 +10:00
Peter Barker
e75903d6fa
AP_Baro: replace gcs().send_text with GCS_SEND_TEXT
2024-08-09 14:53:55 -07:00
Peter Barker
127e634589
GCS_MAVLink: add and use Battery backend internal-use-only flag
...
sometimes the information from a backend is very useful for logging, but not via telemetry.
Add an option bit to signify this
2024-08-08 09:12:08 +10:00
Peter Barker
8ee09c299e
AP_BattMonitor: add and use Battery backend internal-use-only flag
...
sometimes the information from a backend is very useful for logging, but not via telemetry.
Add an option bit to signify this
2024-08-08 09:12:08 +10:00
Iampete1
34549cf0cb
AP_ESC_Telem: add logging of power percentage
2024-08-07 11:23:35 +01:00
Iampete1
8ec3d0f0a9
AP_DroneCAN: populate ESC power percentage
2024-08-07 11:23:35 +01:00
Andy Piper
a974f3fd42
AP_Motors: add access to per-motor thrust values
2024-08-07 18:45:50 +10:00
Andy Piper
fd19c3f401
AP_Vehicle: support per-motor throttle based notches
2024-08-07 18:45:50 +10:00
Peter Barker
e23e58fc17
SITL: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
4dac24796d
GCS_MAVLink: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
c0b905f6e6
AR_Motors: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
7c1d37f374
AP_VisualOdom: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
bfd97bf0cd
AP_Soaring: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
fd418ca59d
AP_RangeFinder: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
cee45a2fc2
AP_Radio: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
96b5fa6e93
AP_Proximity: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
496bbde384
AP_Mount: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
78afaebe55
AP_Logger: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
52d5b4e684
AP_LandingGear: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
9a1aece9ab
AP_HAL_ESP32: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
23b7e0f64d
AP_HAL_ChibiOS: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
f7767d7fd0
AP_Generator: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
4d24e7bbf0
AP_Follow: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
fa4e90a3bb
AP_Compass: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
ffb2a32144
AP_Camera: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
4565eed5ad
AP_BoardConfig: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
f5e55b9a12
AP_Beacon: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
d205e2e5cf
AP_BattMonitor: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
ec5eb88217
AP_Baro: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
edf42f799c
AP_AdvancedFailsafe: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
5db0eecb99
AC_Fence: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Peter Barker
bf09835509
AC_AutoTune: use GCS_SEND_TEXT rather than gcs().send_text
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +10:00
Andy Piper
b6717e541a
AP_MSP: use highest ESC temp rather than motor temp
2024-08-07 18:10:56 +10:00
Andy Piper
f6984024c3
AP_ESC_Telem: use highest ESC temp rather than motor temp
2024-08-07 18:10:56 +10:00
Andy Piper
102f483623
AP_OSD: use highest ESC temp rather than motor temp
2024-08-07 18:10:56 +10:00
Andy Piper
189cc9d549
AP_HAL_ChibiOS: correctly uninvert RX/TX on F4 with inverter support
2024-08-07 17:34:34 +10:00
Andy Piper
c8989837bc
AP_HAL_ChibiOS: KakuteF4-Wing
2024-08-07 17:34:34 +10:00
Andy Piper
30ce705765
AP_HAL_ChibiOS: fix TMotor H743 with BMI270
2024-08-07 17:30:44 +10:00
Bob Long
078a86ad96
AP_Camera: fix altitude units in CAMERA_FOV_STATUS
2024-08-07 17:08:49 +10:00
Peter Barker
b6426516b8
AP_HAL_SITL: work around bug in dash
...
dash doesn't search the path for scripts, so allow user to specify path to ArduPilot scripts
2024-08-07 17:03:52 +10:00
George Zogopoulos
1f01f75036
AP_NavEKF3: Corrected logged units
2024-08-07 17:02:28 +10:00
Nicole Ashley
126d54bc93
AP_Vehicle: Initialise i-BUS telemetry when enabled
2024-08-07 14:01:44 +10:00
Nicole Ashley
e2c7b489a1
AP_OSD: Add i-BUS telemetry serial protocol value
2024-08-07 14:01:44 +10:00
Nicole Ashley
6f42acc01f
AP_SerialManager: Add serial protocol for i-BUS telemetry
2024-08-07 14:01:44 +10:00
Nicole Ashley
8040e7c502
AP_IBus_Telem: Initial implementation
...
Allows telemetry data to be sent to receivers that support the
i-BUS protocol (FlySky and Turnigy).
2024-08-07 14:01:44 +10:00
Peter Barker
70b23733ac
AR_Motors: make AP_Motors::PWMType enum class
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-06 18:15:35 +10:00
Peter Barker
70a1bc7606
AP_Motors: make AP_Motors::PWMType enum class
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-06 18:15:35 +10:00
Peter Barker
a211b66472
AP_BLHeli: make AP_Motors::PWMType enum class
...
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-06 18:15:35 +10:00
Leonard Hall
a4a9113cde
AC_Autotune: Fix bug introduced in #27370
2024-08-06 17:45:04 +10:00
George Zogopoulos
9df4796b70
AP_Scripting: Typo fixes
2024-08-06 14:03:27 +10:00
Peter Barker
bc80358e9b
AP_Camera: rely on AHRS for position, not GPS
...
our location may not be coming from a GPS
2024-08-06 12:11:30 +10:00
Peter Barker
b65a5a904c
AP_SerialManager: tweak error message
2024-08-06 11:36:33 +10:00
Pradeep CK
0e53eb74df
AP_ESC_Telem: addition of ESC extended status message
...
- Conditional compilation definition : AP_EXTENDED_ESC_TELEM_ENABLE
- ESCX log structure
- Update functionalities for ESCX status message
- ESCX DroneCAN callback
2024-08-06 10:57:36 +10:00
Pradeep CK
c7216c05b8
AP_DroneCAN: addition of ESC extended status message
...
- Conditional compilation definition : AP_EXTENDED_ESC_TELEM_ENABLE
- ESCX log structure
- Update functionalities for ESCX status message
- ESCX DroneCAN callback
2024-08-06 10:57:36 +10:00
Peter Barker
516c2a853f
hwdef: add named Pixhack-v3 board
...
allows for building this on the custom build server
2024-08-06 10:29:05 +10:00
Iampete1
c271771a1e
AP_ICEngine: stop engine in E-Stop
2024-08-06 09:56:44 +10:00
Peter Barker
cbdbbf436c
AP_SerialManager: add warning iffrsky already configured
2024-08-06 09:46:56 +10:00
Peter Barker
6151b84c86
AP_LTM_Telem: disable LTM telemetry by default
...
we have a custom build server if this is required
2024-08-06 09:30:49 +10:00
Peter Barker
cb57beaf8f
AP_Hott_Telem: disable Hott telemetry by default
...
we now have a custom build server
2024-08-06 09:30:49 +10:00
YI-BOYANG
559a6e8f65
AP_HAL_ChibiOS: hwdef for GEPRCF745BTHD
2024-08-06 09:12:23 +10:00
Thomas Watson
a164abaafb
AP_Scripting: add REPL applet
...
Implements a reasonably comfortable REPL accessible over serial entirely
as a loadable script.
Also accessible over MAVLink using QGroundControl's MAVLink Console and
the new mavport module.
2024-08-06 09:08:04 +10:00
Thomas Watson
87d2b017aa
AP_Scripting: add mavport module
...
Abstracts the MAVLink SERIAL_CONTROL message to be usable as a Lua port,
in particular the DEV_SHELL device supported by QGroundControl's MAVLink
Console.
2024-08-06 09:08:04 +10:00
Thomas Watson
5ec3313c31
AP_HAL: remove never-overridden get_shell_stream function
...
The only caller is now gone and nobody ever overrode it to do return
more than nullptr.
2024-08-06 09:08:04 +10:00
Thomas Watson
abae008250
GCS_MAVLink: remove vestigial SERIAL_CONTROL_DEV_SHELL support
...
The HAL always returns nullptr so the function always returns, which is
handled already by the default.
2024-08-06 09:08:04 +10:00
Peter Barker
923b5185c6
AP_HAL_ChibiOS: rename OFFBOARD_GUIDED to AP_PLANE_OFFBOARD_GUIDED_SLEW_ENABLED
...
and remove comparison vs ENABLED
2024-08-05 10:20:14 +10:00
Peter Barker
ba2bec07fa
AP_HAL_ChibiOS: add env option to omit hwdef.dat from romfs
2024-08-05 10:20:14 +10:00
Andrew Tridgell
9543eecf23
HAL_ChibiOS: fixed AP_FILESYSTEM_ROMFS_ENABLED for peripherals with defaults.parm
...
now that defaults are in ROMFS we must enable
AP_FILESYSTEM_ROMFS_ENABLED
2024-08-04 17:36:31 +10:00
Andrew Tridgell
7bdb8d770d
SRV_Channel: added AM32 to the SERVO_DSHOT_ESC param docs
...
setting 3 works well with AM32
2024-08-04 07:31:22 +10:00
Andrew Tridgell
d48f9ef12c
AP_Scripting: added example copter_deploy.lua
2024-08-03 14:29:51 +10:00
Andrew Tridgell
ebad1631d7
AP_Scripting: added arm_force() and baro get_altitude_difference()
2024-08-03 14:29:51 +10:00
Andrew Tridgell
6a1d09959b
AP_Arming: added arm_force() for scripting
2024-08-03 14:29:51 +10:00
EternAlmox
2ad7177a39
AP_HAL_ChibiOS: added MFT-SEMA100
2024-08-02 18:40:59 +10:00
Peter Barker
bc1c305629
AP_HAL: default SITL and Linux to have 4MB of "flash"
2024-08-02 16:29:57 +10:00
Peter Barker
894b99fce5
AP_HAL: remove unused HAL_MINIMIZE_FEATURES define
2024-08-02 16:29:57 +10:00
Peter Barker
9049aeaff6
GCS_MAVLink: accept mavlink standard force arm/disarm value for forced arming
...
the mavlink standard specifies just one value to do either arm or disarm. Conform to that standard
2024-08-02 16:29:13 +10:00
DisCoLabIITK
e929cc21b1
AP_CustomControl: Update README.md
...
Adding step for changes that need to be done in the AC_CustomControl_config.h file to prevent error while compilation.
2024-08-01 10:23:14 +10:00
Pierre Kancir
d9eabcf411
AP_Vehicle: fix compile when AP_EXTERNAL_CONTROL_ENABLED disabled
2024-08-01 10:00:07 +10:00
Henry Wurzburg
e4fc9b0b58
AC_Fence:Add AUTOENABLE deprecation warning
...
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2024-08-01 09:39:41 +10:00
Peter Barker
90ee339806
AC_PID: rename pid setters to include set_ in the names
2024-07-31 18:43:42 +10:00
Peter Barker
7f4074a22c
AC_AutoTune: rename pid setters to include set_ in the names
2024-07-31 18:43:42 +10:00
Peter Barker
fae3b39b15
AC_AttitudeControl: rename pid setters to include set_ in the names
2024-07-31 18:43:42 +10:00
Iampete1
21ad679b61
AP_HAL_ChibiOS: GPIO: read: support virtual read of IOMCU pins
2024-07-31 18:13:01 +10:00
Iampete1
60d579dc88
AP_HAL_ChibiOS: GPIO: Check IOMCU after local pins for speed
2024-07-31 18:13:01 +10:00
Iampete1
624ab00c3e
AP_HAL_ChibiOS: RCOut banner: check for GPIO on IOMCU
2024-07-31 18:13:01 +10:00
Iampete1
98c5eff7f0
AP_IOMCU: add GPIO mask getter and GPIO virtual read
2024-07-31 18:13:01 +10:00
Andy Piper
b9bde4c488
AP_HAL_ChibiOS: add servo outputs as motors to FoxeerF405v2
2024-07-31 17:27:44 +10:00
Henry Wurzburg
847b8eab25
HWDEF:fix CUAV-7-Nano default batt monitor
2024-07-31 17:13:09 +10:00
Henry Wurzburg
9b041be8a1
AC_Fence: correct prearm message
2024-07-31 17:01:07 +10:00
Eric Katzfey
9ef76de0c9
AP_HAL_QURT: Added support for dual mavlink streams
2024-07-31 10:00:35 +10:00
Peter Barker
d7caf1e6b5
AP_Math: remove method operator
...
remove the metho operator from the class.
This means this will no longer work:
Quaternion q{0,1,2,3};
q(5,6,7,8);
.... that used to set the quaternion componets, but is an odd / atypical syntax to use
2024-07-31 08:54:37 +10:00
Peter Barker
cac2c63e72
AC_PID: remove method operator
...
remove the metho operator from the class.
This means this will no longer work:
Quaternion q{0,1,2,3};
q(5,6,7,8);
.... that used to set the quaternion componets, but is an odd / atypical syntax to use
2024-07-31 08:54:37 +10:00
Hayden Donald
52ba8e8513
AP_Scripting: Change serial depends HAL_GCS to AP_SERIALMANAGER
...
Serial bindings were dependant on HAL_GCS_ENABLED but this is not ideal, it should be dependant on AP_SERIALMANAGER_ENABLED so that serial can function without GCS
2024-07-31 08:27:34 +10:00
“Jane_ZeroOne”
d43dd5227a
AP_HAL_ChibiOS: add ZeroOneX6
2024-07-30 20:07:31 +10:00
Iampete1
26c51a8002
AP_TemperatureSensor: add logging option to only log sensors with no source
2024-07-30 11:07:17 +10:00
Iampete1
600d9eb7a8
AP_BattMonitor: Sum: report average temperature
2024-07-30 11:00:49 +10:00
Iampete1
45647718cb
AP_BattMonitor: ESC: integrate consumed mah if not provided by ESC
2024-07-30 10:59:17 +10:00
Thomas Watson
dc4d1bacdd
AP_Scripting: adjust string metatable setup to fix sandbox integrity
...
In Lua, strings are the only type that come with a default metatable.
The metatable must be shared by all string objects, and it is set to be
the `string` library table each time that library is opened. In
Ardupilot's scripting engine, the last script to load then has access to
the string metatable as the library is opened fresh for each script, as
its `string` library will have been set to the metatable.
Therefore, if two scripts are loaded, A first and B second, and script B
executes e.g. `string.byte = "haha"`, then `string.byte()` and
`s:byte()` for script B are broken. Because the metatable is shared,
this also breaks `s:byte()` for script A, which violates the integrity
of the sandbox.
Fix the issue by disabling the metatable setup functionality when the
string libary is opened, then manually opening an additional copy of the
library (which won't be given to any script) and setting it as the
string metatable during intialization.
This will break any script that modifies the string metatable for
constructive purposes, but such a script could have been broken if it
weren't the only script running anyway.
2024-07-30 10:54:00 +10:00
Peter Barker
95281e5c17
hwdef: turn monior thread back on on some boards
...
most of these boards probably don't need it, but to make a PR no-binary-output...
2024-07-30 10:52:36 +10:00
Peter Barker
90b2a2acaa
hwdef: change HAL_NO_MONITOR_THREAD out for HAL_MONITOR_THREAD_ENABLED
...
... and use a default value for peripherals
2024-07-30 10:52:36 +10:00
Thomas Watson
3a834e83c7
AP_Scripting: reference script environment directly
...
Referencing the original function to run is of questionable value and
the only user uses it to grab the script environent from the upvalues.
Instead, use a reference to the script environment table directly.
2024-07-30 10:33:56 +10:00
Thomas Watson
15255a36e4
AP_Scripting: reference function to run separately
...
Some bits of the code in the require machinery use the `lua_ref` to
access the script environment. However, this can change after the script
is rescheduled and it returns an arbitrary function to run next.
Resolve this by introducing `run_ref` which is specifically a reference
to the function to run next. `lua_ref` is preserved for the script
lifetime.
2024-07-30 10:33:56 +10:00
Thomas Watson
da006d427d
AP_Scripting: add test for require() after rescheduling
...
It can end up broken due to incorrect assumptions about the executed
function's upvalues, which might change after rescheduling.
2024-07-30 10:33:56 +10:00
Peter Barker
be377da6a4
GCS_MAVLink: add build option to not send RC_CHANNELS_RAW
...
we keep this around in case we break old OSD setups
2024-07-30 10:29:58 +10:00
Peter Barker
6f5ea5a5e9
RC_Channel: rework duplicate-rc-options check to use a Bitmask
...
just for the memory saving.
Co-authored-by: muramura <ma2maru@gmail.com>
2024-07-30 10:28:42 +10:00
Peter Barker
93704c573c
SITL: add documentation for SIM_ENGINE_FAIL and SIM_ENGINE_MUL
2024-07-30 09:21:26 +09:00
Peter Barker
9397ece55a
AC_AutoTune: make axis-type enum-class
...
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-07-30 10:20:26 +10:00
Peter Barker
f3766b831a
AP_HAL_ChibiOS: make include file mistakes nicer to interpret
2024-07-30 09:57:01 +10:00
Thomas Watson
6acfc98cf4
AP_Scripting: factor out ap_object checker
...
Reduces flash usage.
Saves ~160B.
2024-07-30 09:55:25 +10:00
Thomas Watson
212256731f
AP_Scripting: improve object allocation efficiency
...
Make new_X return the new object instead of having to grab it to
configure it.
Saves ~1.3K.
2024-07-30 09:55:25 +10:00
Thomas Watson
3e05cd9729
AP_Scripting: factor out field access argument error
...
Saves ~830B.
2024-07-30 09:55:25 +10:00
Thomas Watson
575ed6224f
AP_Scripting: improve binding index function efficiency
...
Move the string checks into the load functions to avoid duplicating it
for each binding.
Also sync up the return types to avoid an unnecessary conversion.
Saves ~1.5K.
2024-07-30 09:55:25 +10:00
Thomas Watson
e66d2a1495
AP_Scripting: remove redundant memsets
...
Matches current generator behavior.
2024-07-30 09:55:25 +10:00
Thomas Watson
837b17e82e
AP_Scripting: more intelligently manage Lua stack
...
The Lua stack is guaranteed to have at least LUA_MINSTACK (default 20)
slots upon entry to C. Check to see if we might need more than that
minimum and only in that case call the function to check and resize the
stack. In virtually all cases the check can then be optimized away.
Additionally remove the redundant "Out of stack" message. Lua already
says "stack overflow" and a null message is valid.
Saves ~330B.
2024-07-30 09:55:25 +10:00
Thomas Watson
7212e35fb0
AP_Scripting: slightly improve codegen
...
Get singleton pointer closer to where it is used.
Saves ~170B.
2024-07-30 09:55:25 +10:00
Thomas Watson
60a9f1722c
AP_DroneCAN: DNA_Server: unify bitmask handling
...
Put documentation with each bitmask and use the object directly. Node ID
range checks can be removed as the bitmask itself checks and we don't
expect to trip them.
Substantially cleans up the code.
2024-07-30 09:49:43 +10:00
Thomas Watson
56593574a9
AP_DroneCAN: DNA_Server: miscellaneous cleanup
2024-07-30 09:49:43 +10:00
Thomas Watson
5e0bb99dbb
AP_DroneCAN: DNA_Server: fix handling of empty entry
...
Replaces the check for a CRC of 0 with a check that the hwid is 0.
Substantially reduces 1/256 chance that a particular node ID couldn't be
stored.
2024-07-30 09:49:43 +10:00
Thomas Watson
9aeab7b424
AP_DroneCAN: DNA_Server: use 0 as unknown ID
...
Slightly reduces flash usage and probably is clearer.
2024-07-30 09:49:43 +10:00
Thomas Watson
8d57533f1c
AP_DroneCAN: DNA_Server: fix cases involving use of invalid node IDs
2024-07-30 09:49:43 +10:00
Thomas Watson
a9317b1a07
AP_DroneCAN: correct and validate allowed NODE range
...
Node IDs >= 128 don't exist, and IDs 126 and 127 are "reserved for
network maintenance tools" according to the spec.
2024-07-30 09:49:43 +10:00
Thomas Watson
485a9387b1
AP_DroneCAN: DNA_Server: clean up storage failure handling
...
The StorageManager read_block/write_block methods only return failure if
an out of bounds access is performed. Assert statically that this does
not happen.
Also remove the now-impossible failed to add node state.
2024-07-30 09:49:43 +10:00
Thomas Watson
cd8519321b
AP_DroneCAN: DNA_Server: search for valid nodes after magic check
...
Ensures the occupation mask doesn't get populated with junk if the magic
is not valid.
2024-07-30 09:49:43 +10:00
Thomas Watson
c1f59186fa
AP_DroneCAN: DNA_Server: make reset method private
2024-07-30 09:49:43 +10:00
Ian Burwell
6b4e11090c
AP_Scripting: Add BQ40Z shutdown example
...
This example intercepts PREFLIGHT_REBOOT_SHUTDOWN COMMAND_LONG's and if
param1==2, it shuts down the BQ40Z smart battery BMS. Otherwise it
passes through the COMMAND_LONG as a COMMAND_INT (this required updating
the gcs:run_command_int to return a MAV_RESULT rather than a bool).
2024-07-30 09:40:10 +10:00
Ian Burwell
9d34fa2a5e
AP_Scripting: Add I2C transfer bindings
...
This adds bindings for an I2CDevice's transfer() function, an example,
and removes the nil return hint from the get_device() docs as it never
actually returns nil.
2024-07-30 09:40:10 +10:00
Iampete1
838fbc2b3b
AP_Param: Fix `ENABLE_DEBUG` enabled error with no embedded param
2024-07-30 08:51:09 +10:00
Bob Long
64fc60ce32
AP_HAL_SITL: initialize rcout safety state
...
This allows BRD_SAFETY_DEFLT=1 to work correctly for SITL.
2024-07-30 08:44:31 +10:00
BLash
d7ecf5fbc5
AP_ExternalAHRS_VectorNav: Consolidate EAH3 definition to single method
...
Resolve SITL failures due to multiply defined logger message by pulling the call to a single method
2024-07-29 15:52:29 +10:00
BLash
1d1bb5724e
AP_ExternalAHRS_VectorNav: Address review comments
...
Remove unnecessary header
Switch parameters to default initialization
Change pointer casting to prevent a const_cast, and remove doubled sync byte when echoing ASCII messages
Fix Valgrind report by preventing use of nmea_printf on buffers which may not be null-terminated
2024-07-29 15:52:29 +10:00
BLash
50980ee03e
AP_ExternalAHRS_VectorNav: Update SIM to match new message definitions
...
Redefine messages to 3 INS packets, and send as appropriate
Resolve SITL failures due to too-long logger message headers
2024-07-29 15:52:29 +10:00
BLash
d4ca5fe868
AP_ExternalAHRS_VectorNav: Split IMU and EKF message
...
In AHRS Mode, split the single message to an IMU packet and an AHRS packet; in EKF Mode, split the two messages into an IMU message, an EKF packet, and a GNSS packet.
Simplify message header definition to consolidate and eliminate the need for static asserts
Update healthy logic and use to represent new packet structure
Replace EAH3 message with messages per-packet
Add Ypr as configured output in the EKF message
2024-07-29 15:52:29 +10:00
George Zogopoulos
e227187e72
AP_TECS: Converted parameter TKOFF_MODE to TKOFF_OPTIONS
2024-07-29 15:50:32 +10:00
George Zogopoulos
b163e13964
AP_TECS: Fixes to reset state
...
These concern the TAKEOFF flight stage and address #27147 .
* Logging metadata fixes
* Disabled continuous TECS reset during takeoff
* Fixed bug in reached_speed_takeoff calculation
* Limited SPDWEIGHT=2 to only first part of takeoff climb
* _post_TO_hgt_offset set to constant
* Takeoff I-gain now defaults to 0 and is used
* Use at least TRIM_THROTTLE during the climb
* Updated description of TECS_TKOFF_IGAIN with new behaviour
* Forced max throttle while below TKOFF_LVL_ALT
* Added throttle constraints in no-airspeed mode
Additionally, set_min_throttle() has been created, that allows one to
set the minimum TECS throttle for the next update_pitch_throttle() loop.
Additionally, the throttle limits system has been reworked. TECS will
receive external throttle limits from Plane and will always take them
into account and respect them.
2024-07-29 15:50:32 +10:00
cuav-chen2
08c8ef379b
HAL_ChibiOS: Added support for CUAV-7-Nano flight controller
2024-07-29 12:25:53 +10:00
Peter Barker
317fab2f19
AP_Mission: add and use an option_is_set method
2024-07-29 10:37:52 +10:00
Thomas Watson
bbde876353
hwdef: remove EKF opinion from FlywooF745
...
No effect as lines have always been commented out, but not useful and
EKF2 is not something to encourage.
Verified no compiler output change.
2024-07-29 09:32:22 +10:00
Peter Barker
16c2e23ee7
AP_Mount: allow AP_MOUNT_BACKEND_DEFAULT_ENABLED to be overridden
2024-07-28 12:00:02 +10:00
Peter Barker
debf3cb28e
hwdef: SpeedyBeeF405WING: restrict mount support to the servo gimbal
2024-07-28 12:00:02 +10:00
Peter Barker
84efdd5700
hwdef: SpeedyBeeF405WING: remove landing gear support
2024-07-28 12:00:02 +10:00
Andrew Tridgell
2ce6532698
AP_Math: updated EulerAngles.pdf link
2024-07-27 11:14:10 +10:00
Andrew Tridgell
98733882f5
AP_Math: added comments and a test for euler ordering
...
our main euler functions did not have a comment on the ordering
convention
2024-07-27 11:14:10 +10:00
yaapu
5b7aaae008
AP_Frsky_Telem: fix for HAL_WITH_FRSKY_TELEM_BIDIRECTIONAL = 0
2024-07-26 20:12:40 +10:00
muramura
e86d5e113f
AP_Filesystem: BOOL for binary types
2024-07-26 20:12:05 +10:00
Leonard Hall
bb1758ecb1
AC_Autotune: Add ABORT state for consistency between tests
2024-07-26 20:11:42 +10:00
Leonard Hall
bea2c5b59b
AC_Autotune: Clean up Multi Variables and non functional changes
2024-07-26 20:11:42 +10:00
Peter Barker
78dc5a7b5d
hwdef: FlyingMoonF427: remove MAX7456
2024-07-26 20:10:38 +10:00
Peter Barker
5b5dd638c1
hwdef: FlyingMoonH743: remove MAX7456
2024-07-26 20:10:38 +10:00
Randy Mackay
44b3217178
AP_Camera: type param desc gets topotek
2024-07-26 12:55:24 +10:00
Randy Mackay
62a03f18d8
AP_Camera: type param desc gets viewpro and xacti
2024-07-26 12:55:24 +10:00
Andy Piper
a560f89b35
AP_HAL_ChibiOS: update logging docs for 2RAW H743
2024-07-26 10:39:38 +10:00
Andy Piper
74f72db4eb
AP_HAL_ChibiOS: rename 2RAWH743 to IFLIGHT_2RAW_H7
2024-07-26 10:39:38 +10:00
Andy Piper
278595cf83
AP_HAL_ChibiOS: add support for sdcard to iFlight 2RAW
2024-07-26 10:39:38 +10:00
Peter Barker
7f97e897e2
AP_Camera: add sanity check for Siyi lens change
2024-07-25 12:18:51 +10:00
muramura
f1e67ba747
AP_Mount: SWITCH statement to table reference
2024-07-25 12:18:51 +10:00
muramura
9f2da4a763
AP_Mission: Change division to multiplication
2024-07-25 11:33:55 +10:00
Peter Barker
a0ac6f22df
AP_CANManager: use a switch statement to tidy driver allocation
2024-07-25 11:09:07 +10:00
Andrew Tridgell
23f628f26b
hwdef: fixes for BotBloxSwitch
2024-07-25 10:57:04 +10:00
Leonard Hall
2ab3d0b3b0
AC_AttitudeControl: Add Landed Gain Backoff
2024-07-25 09:50:35 +10:00
muramura
84ff78f5c6
AP_Notify: Perform common checks first
2024-07-25 09:50:03 +10:00
James O'Shannessy
66817e207f
AP_InertialSensor: Check the gyro/accel id has not been previously registered
...
If the Gyro/Accel ID is already in the registered list, do not try to add it again.
This stops an issue seen on a CubeOrangePlus BG3 where, during the very first boot after a parameter wipe, software incorrectly registers a fourth IMU.
The Fourth IMU is registered because the AUX IMU is the same DevID as the third ICM45686.
2024-07-25 09:49:35 +10:00
Luca Pescante
028017e38e
ArduCopter/RC_Channel: add option 219
...
(Transmitter Tuning)
2024-07-25 09:40:13 +10:00
bugobliterator
8a4b925c71
AP_HAL_ChibiOS: add support for PPP between CubeRed Primary and Secondary
2024-07-25 09:37:16 +10:00
bugobliterator
4909ad4e4f
AP_Networking: add debug code for PPP
2024-07-25 09:37:16 +10:00
bugobliterator
993d694fbb
AP_HAL_ChibiOS: allow setup for low noise clock mismatch tolerant UART line
2024-07-25 09:37:16 +10:00
bugobliterator
025077b6f4
AP_HAL_ChibiOS: add support for recording UART Rx errors
2024-07-25 09:37:16 +10:00
mduclehcm
25a406e633
AP_Mount: Conditionally define `serial_instance` to fix unused variable compile error
...
- Wrapped the definition of `serial_instance` with preprocessor directives to ensure it is only defined when necessary.
- This resolves the compile error caused by the unused variable when no features requiring `serial_instance` are enabled.
2024-07-25 09:35:46 +10:00
Paul Riseborough
4904c718a5
AP_NavEKF3: Fix yaw alignment bug
...
When the yaw is aligned to the GPS yaw, the recordYawResetsCompleted() function should be called the same as for any other yaw reset.
2024-07-25 09:34:48 +10:00
rishabsingh3003
07b6c57173
AP_TemperatureSensor: Extend analog sensor backend to 5th order polynomial
2024-07-24 17:53:08 +10:00
rishabsingh3003
3ab3388752
AP_ESC_Telem: Add ifndef before defining ESC_TELEM_MAX_ESCS
2024-07-24 17:45:24 +10:00
Randy Mackay
2b64787099
AP_Mount: topotek spelling fix
2024-07-24 17:28:24 +10:00
Randy Mackay
cfd1e98333
AP_Mount: topotek safely parses version
2024-07-24 17:28:24 +10:00
Randy Mackay
1b77751aef
AP_SmartRTL: add point made public
2024-07-24 17:22:44 +10:00
Henry Wurzburg
76abc6850f
Filter: add "source" to option 5
2024-07-24 17:20:30 +10:00
Randy Mackay
a1579bc31e
SITL: integrate SlungPayload
2024-07-24 17:09:06 +10:00
Randy Mackay
5c2b758f42
SITL: add SlungPayload
2024-07-24 17:09:06 +10:00
George Zogopoulos
e170710de9
SITL: Glider improvements
...
Fixed balloon going below ground.
Enabled glider torque logging.
2024-07-24 17:03:48 +10:00
Peter Barker
478d26d69c
AP_Notify: rename LED_1 pin define to AP_NOTIFY_GPIO_LED_1_PIN
2024-07-24 09:13:50 +10:00
Peter Barker
a4577685a7
AP_HAL_ChibiOS: rename LED_1 pin define to AP_NOTIFY_GPIO_LED_1_PIN
2024-07-24 09:13:50 +10:00
Peter Barker
cc190f537f
AP_OSD: correct compilation with AP_RRSI_ENABLED false
...
Co-authored-by: David Buzz <davidbuzz@gmail.com>
2024-07-24 09:11:39 +10:00
Peter Barker
1afa801b19
AP_LTM_Telem: correct compilation with AP_RRSI_ENABLED false
...
Co-authored-by: David Buzz <davidbuzz@gmail.com>
2024-07-24 09:11:39 +10:00
Andy Piper
ccfbfddf7e
AC_Fence: address minor review comments
2024-07-24 08:24:06 +10:00
Andy Piper
55075961b2
AP_Mission: address minor review comments
2024-07-24 08:24:06 +10:00
Andrew Tridgell
68f2593089
AC_Fence: fixed FENCE_AUTOENABLE=2
...
needs to auto-enable on takeoff complete
2024-07-24 08:24:06 +10:00
Andy Piper
5bc3727145
AC_Fence: support FENCE_OPTIONS on copter
2024-07-24 08:24:06 +10:00
Andy Piper
29a320b310
AC_Avoidance: correctly set back away speed for minimum alt fences
2024-07-24 08:24:06 +10:00
Andy Piper
37e0923ec2
AP_Arming: allow precise wording of fence pre-arm messages
2024-07-24 08:24:06 +10:00
Andy Piper
f0456f29dd
AC_Fence: always disable Min Alt fence on landing
...
allow precise pre-arm messages
2024-07-24 08:24:06 +10:00
Andy Piper
255fac215f
AP_Mission: generic fence handling in missions
2024-07-24 08:24:06 +10:00
Andy Piper
04dd7de1ed
AC_Fence: disable fences for landing by suppressing in the fence check rather than using a state machine
...
simplify takeoff auto-enablement
2024-07-24 08:24:06 +10:00
Andy Piper
d5c6f3fe06
AC_Fence: add reset_fence_floor_enable() and use it in plane when landing is aborted
2024-07-24 08:24:06 +10:00
Peter Barker
a4c7819117
AC_Fence: clear breach of disabled fence
...
skip breach checks if no fences
correct initialisation of _num_fences in the case of no fences in eeprom
2024-07-24 08:24:06 +10:00
Andy Piper
3fabec4158
AP_Arming: ensure fence enablement on arming is inverted on disarming
2024-07-24 08:24:06 +10:00
Andy Piper
174d5f07bb
AC_Fence: ensure fence enablement on arming is inverted on disarming
...
correct detection of polyfence
2024-07-24 08:24:06 +10:00
Andy Piper
f0f8187c7f
AC_Fence: add ability to auto-enable fence floor while doing fence checks
...
control copter floor fence with autoenable
autoenable floor fence with a margin
check for manual recovery only after having checked the fences
make auto-disabling for minimum altitude fence an option
output message when fence floor auto-enabled
re-use fence floor auto-enable/disable from plane
auto-disable on landing
do not update enable parameter when controlling through mavlink
make sure get_enabled_fences() actually returns enabled fences.
make current fences enabled internal state rather than persistent
implement auto options correctly and on copter
add fence names utility
use ExpandingString for constructing fence names
correctly check whether fences are enabled or not and disable min alt for landing in all auto modes
add enable_configured() for use by mavlink and rc
add events for all fence types
make sure that auto fences are no longer candidates after manual updates
add fence debug
make sure rc switch is the ultimate authority on fences
reset auto mask when enabling or disabling fencing
ensure auto-enable on arming works as intended
simplify printing fence notices
reset autofences when auot-enablement is changed
2024-07-24 08:24:06 +10:00
Andy Piper
370b0d7b9c
AP_Logger: add events for all fence types
2024-07-24 08:24:06 +10:00
Andy Piper
0288e1e79c
RC_Channel: use fence enable_configured()
2024-07-24 08:24:06 +10:00
Andy Piper
d16615923d
AP_Frsky_Telem: use fence enable_configured()
2024-07-24 08:24:06 +10:00
Andy Piper
0c6ea4790d
AP_Common: fix initialization of ExpandingString so that it can be used on the stack
...
zero out passed in buffers for ExpandingString
2024-07-24 08:24:06 +10:00
Andy Piper
3dbcbe0026
AP_Arming: do not enable minimim altitude fence on arming
...
call appropriate fence method for auto-enablement
2024-07-24 08:24:06 +10:00
Andy Piper
8287d4f2d0
AC_Avoidance: take into account minimum altitude fence when calculating climb rate
2024-07-24 08:24:06 +10:00
Andy Piper
95b39f64e3
AP_Mission: add comment about new fence API
2024-07-24 08:24:06 +10:00
Andy Piper
f73154349b
GCS_MAVLink: use bitmask based enablement for fences
2024-07-24 08:24:06 +10:00
Bob Long
230269bed8
HAL_ChibiOS: add adjustable wdg timeout for hwdefs
...
This allows the watchdog timeout to be adjusted in the hwdef.dat file,
so that critical nodes like ESCs can recover more quickly.
2024-07-23 19:53:38 +10:00
Andrew Tridgell
03bdbea77c
hwdef: enable relay support in MatekL431-DShot fw
...
the PWM expansion boards can also be used for relay control, often
combined with PWM output
2024-07-23 18:42:56 +10:00
Rhys Mainwaring
4354072d34
SITL: SIM_Rover: add simulation for omni3 mecanum rover
...
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-07-23 13:27:04 +10:00
James O'Shannessy
ce0ae33c5b
AP_HAL_ChibiOS: Capture the case where the persistent parameter is the newer format INSn_ACC_ID
...
This fixes the handling of the newer INSn_* parameters when loading those stored in persistent memory.
2024-07-23 12:06:18 +10:00
James O'Shannessy
c771440ea4
AP_InertialSensor: Fix persistent storing of IMU Z Scale
...
Fixes INSn_ACCSCAL_Z not being stored in persistent storage when bootloader is flashed.
2024-07-23 11:59:49 +10:00
xiaozhou
e2cb4ba232
AP_Mount: Topotek image tracking fix
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-23 10:51:09 +10:00
xiaozhou
69e4005bb6
AP_Mount: Topotek retrieves model name
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-23 10:51:09 +10:00
xiaozhou
858aff5f4f
AP_Mount: Topotek handles new version format
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-23 10:51:09 +10:00
muramura
7731fc09e2
AP_HAL_SITL: If HAL_CAN_WITH_SOCKETCAN is undefined, treat it as NONE
2024-07-23 10:47:16 +10:00
Michael du Breuil
edaddc0431
AP_TECS: Use aircraft stall speed
...
When stall prevention is enabled we were scaling from the aircraft's
minimum flight speed. However this is normally already picked as being
above the stall speed, and for a variety of reasons we may want to pin
the aircraft at a higher minimum speed. But if the aircraft was
commanded to fly to close to that minimum speed as soon as it banked for
a pattern it would command a increase in speed to keep it away from
stalling. However if your minimum speed is far from stalling this
increase was incorrect. To make it worse what this actually results in
happening is an aircraft diving for more speed (over 10 m/s on some
aircraft) as well as descending to gain that speed resulting in over 200
foot deviations in altitude control.
2024-07-23 10:37:24 +10:00
Michael du Breuil
5005809e74
AP_Vehicle: add stall speed parameter for plane
2024-07-23 10:37:24 +10:00
Thomas Watson
b64ed6ca56
AP_Scripting: dynamically load some binding objects
...
Only create the binding object (singleton metatable/userdata or C
function reference) once the user first references a particular
singleton or userdata creation function. Once created, the object is
stored into the script's environment so it doesn't get recreated on the
next reference and there isn't any further overhead. The userdatas are
no longer shared between scripts which imposes a slight memory penalty
for multiple scripts using the same singleton but this avoids an
additional lookup time cost.
Userdata and ap_objects aren't eligible for this optimization as the C++
code might want a particular metatable at any time.
Saves ~9.3K Lua heap.
2024-07-23 10:34:52 +10:00
Thomas Watson
059af2117d
AP_Scripting: place bindings into global table
...
The global table is then used as the __index metamethod of each state's
environment table. Avoids the overhead of loading binding objects into
each state. The binding objects are immutable from Lua so sandboxing is
not violated.
Does have the slight downside that a script can no longer know all the
binding names by enumerating _ENV.
Saves ~700B of memory per loaded script.
2024-07-23 10:34:52 +10:00
Thomas Watson
9cbec043d0
AP_Scripting: remove __call metamethod from singleton metatables
...
The __call metamethod was set to the metatable itself. With __call not
present, Lua will try to call the metatable (and fail), which is the
same behavior as with the __call metamethod set to the metatable.
Saves ~2K Lua heap.
2024-07-23 10:34:52 +10:00