Commit Graph

30664 Commits

Author SHA1 Message Date
Andrew Tridgell 4dba724fc7 AP_Vehicle: removed num_dynamic_notches limit in dynamic harmonic
use INS_MAX_NOTCHES instead, allowing for more ESCs to be added by lua
scripts
2022-10-24 22:23:32 +09:00
Andrew Tridgell 3e8fd1800f Filter: allow for expansion of dynamic filters
this allows for the number of dynamic filters on a harmonic notch
filter to expand at runtime, which allows for ESC RPMs to be populated
from other than AP_Motors, such as with lua scripts or for fwd motors
in a SLT quadplane
2022-10-24 22:23:32 +09:00
Andrew Tridgell cca7a540ea SITL switched to motor_mask for which actuators are motors
this allows for any output to be an ESC, which allows for proper
simulation of quadplanes with ESCs on outputs 5-8 or 9-12, for testing
notch filtering
2022-10-24 22:23:32 +09:00
Andrew Tridgell ead4974b01 SITL: support playback of new GPS log format 2022-10-24 22:23:32 +09:00
Andrew Tridgell 0e09a07de0 AP_GPS: fixed resolution of KSXT parsing for NMEA
needs to be double precision for lat/lon
2022-10-24 22:23:32 +09:00
Andrew Tridgell 4a6673c04e AP_GPS: added logging to more serial GPS backends 2022-10-24 22:23:32 +09:00
Andrew Tridgell 6e3ca69ae6 AP_GPS: improve GPS debug logging
use timestamped data allowing for much more precise playback
2022-10-24 22:23:32 +09:00
Leonardo Garcia 9b78f6af08 AP_InertialSensor: Fix BMI085 accel scaling
Original BMI088 has 24G range so it was hardcoded for *scale* within
read_fifo_accel. Added a class variable accel_range which is assigned
the correct value when the sensor type is received (16.0 or 24.0).
2022-10-24 22:23:32 +09:00
Andrew Tridgell b99952e7f3 GCS_MAVLink: prevent segv in ftp
if the user disables ftp by changing BRD_OPTIONS after ftp has started
then we could dereference a nullptr
2022-10-24 22:23:32 +09:00
Andrew Tridgell e9a5c2553a AP_Scripting: added rc:get_aux_cached() example 2022-10-24 22:23:32 +09:00
Andrew Tridgell 71696b9fb0 AP_Scripting: added get_aux_cached() RC binding 2022-10-24 22:23:32 +09:00
Andrew Tridgell 9ccf043884 RC_Channel: added cache of aux functions for scripting
allows for scripting to act on aux functions
2022-10-24 22:23:32 +09:00
Andrew Tridgell 1a49c33a4a AP_Common: added setonoff() method for bitmask 2022-10-24 22:23:32 +09:00
Andrew Tridgell 04fb0b8ebc AP_Scripting: added relay get() binding 2022-10-24 22:23:32 +09:00
Andrew Tridgell dcecff3bef AP_Relay: added get() method for scripting 2022-10-24 22:23:32 +09:00
Andrew Tridgell 5c9e222366 HAL_ChibiOS: fixed build error with gcc 11.3 2022-10-24 22:23:32 +09:00
Andrew Tridgell bc14301e58 AP_Scripting: fixed use of clock and time in lua
not available on stm32
2022-10-24 22:23:32 +09:00
Andrew Tridgell 80302ba27c GCS_MAVLINK: fixed warning in ftp build with gcc 11.3 2022-10-24 22:23:32 +09:00
Andrew Tridgell 4fab724c76 RC_Channel: add winch enable to option param docs for Copter 2022-10-14 17:13:10 +09:00
Iampete1 8877f45578 AP_Scripting: clear alocated i2c devices on scripting stop 2022-10-14 17:13:10 +09:00
Iampete1 bc1c2bbed4 AP_Scripting: add maunal i2c binding allowing read of sequentual registers 2022-10-14 17:13:10 +09:00
Iampete1 e7ee0ce526 AP_Scripting: allow maunal apobject bindings 2022-10-14 17:13:10 +09:00
Andrew Tridgell 8031dd2be8 AP_Vehicle: implement 1M/2M warnings
encourage users to run the right firmware for their boards
2022-10-14 17:13:10 +09:00
Andrew Tridgell 3bf18422cd hwdef: added warning messages about flash size 2022-10-14 17:13:10 +09:00
Andrew Tridgell b6e7236d3c HAL_ChibiOS: make check_limit_flash_1M() available in main firmware 2022-10-14 17:13:10 +09:00
Andrew Tridgell 88795dac18 AP_Airspeed: use DEVID to maintain lineup of CAN sensors
persist DEVID and use it to ensure that we keep the order of DroneCAN
sensors between boots. It still allows for a sensor to be swapped out
for a new one, while keeping slot of the one that hasn't been removed
2022-10-14 17:13:10 +09:00
davidsastresas 4c9156eab9 AP_NMEA_Output.cpp: Fix conversion precision issue:
We were casting the location in integer 32 bits
to float, and making fabsf in float as well, so
we were losing precision translated in about 40 cm
minimum variation in position for the NMEA output.

Also, even if using double and fabsF, we were still
rounding up last 2 decimals, so now the logic is
done in degree * 10e7 to not loose precision and
then converted properly before building the string
2022-10-14 17:13:10 +09:00
Andrew Tridgell 0118b8a27f AP_ICEngine: report when engine goes into run state 2022-10-14 17:13:10 +09:00
Andrew Tridgell f489af18eb AP_Vehicle: check for motors being nullptr
this can happen with plane with Q_ENABLE=0
2022-10-14 17:13:10 +09:00
Andrew Tridgell 902b60c88e AP_BoardConfig: fixed BRD_SAFETY_MASK
this was being omitted on most boards since we changed to
SERVOn_FUNCTION=-1 method for GPIO
2022-10-14 17:13:10 +09:00
Andrew Tridgell e7a5bcf6aa AP_Param: fixed handling of long lines in defaults.parm
lines longer than 100 bytes were causing the parsing to stop
2022-10-14 17:13:10 +09:00
Kirill Shilov 84986fda01 hwdef: AIRLink: USART2 enabled in hwdef 2022-10-04 16:50:08 +09:00
Andy Piper 6fc232af92 AP_GyroFFT: correct ref_energy indexing that could lead to free memory read
Fix doc spelling mistakes
2022-10-04 16:50:08 +09:00
Andy Piper a012e9a740 AP_Logger: ensure that we don't read the same block more than once, dramatically increasing performance. 2022-10-04 16:50:08 +09:00
Andrew Tridgell ce103fe101 hwdef: reduce flash usage to allow build 2022-10-04 16:50:08 +09:00
Andrew Tridgell 9415d9fc40 AP_Scripting: delay getting EFI backend
allow for AP_EFI startup after scripting
2022-10-04 16:50:08 +09:00
Andrew Tridgell 24ef595af6 AP_Scripting: changed bindings to ap_object 2022-10-04 16:50:08 +09:00
Andrew Tridgell fe2cc8315a AP_Scripting: convert HFE driver to get_backend 2022-10-04 16:50:08 +09:00
Andrew Tridgell 5d3a34ab10 AP_RPM: added AP_RPM_config.h 2022-10-04 16:50:08 +09:00
Andrew Tridgell 920d7e1bc5 AP_EFI: switched to AP_EFI_config.h 2022-10-04 16:50:08 +09:00
Andrew Tridgell be18ed8245 AP_EFI: convert to using ap_object approach 2022-10-04 16:50:08 +09:00
Andrew Tridgell 1a68678dd6 AP_Scripting: added mag_heading example 2022-10-04 16:50:08 +09:00
Andrew Tridgell a3c6bd0a9c AP_Scripting: added EFI HFE driver 2022-10-04 16:50:08 +09:00
Andrew Tridgell 710eb1046a AP_Scripting: added EFI_HFE tester 2022-10-04 16:50:08 +09:00
Andrew Tridgell 8fe3310ff3 AP_HAL: added id_signed for CANFrame
makes for more efficient lua processing
2022-10-04 16:50:08 +09:00
Andrew Tridgell 1ee32bff88 AP_Scripting: update bindings for new fields 2022-10-04 16:50:08 +09:00
Andrew Tridgell 9b789ac47f AP_EFI: added more fields
fill in 3 remaining fields available in MAVLink
2022-10-04 16:50:08 +09:00
Andrew Tridgell 7f0d71ef98 AP_Scripting: added EFI testing script 2022-10-04 16:50:08 +09:00
Andrew Tridgell 6b08b2a2fd AP_Scripting: added EFI_SkyPower driver 2022-10-04 16:50:08 +09:00
Andrew Tridgell 23e2b6a374 AP_EFI: removed array from cylinder_status
this array was never used and just makes doing drivers harder. Removed
to reduce complexity
2022-10-04 16:50:08 +09:00
Joshua Henderson 75abceeb85 AP_EFI: add EFI scripting driver 2022-10-04 16:50:08 +09:00
Andrew Tridgell 7b975a1b71 AP_Scripting: update docs 2022-10-04 16:50:08 +09:00
Joshua Henderson d71496206f AP_Scripting: add scripting EFI bindings 2022-10-04 16:50:08 +09:00
Joshua Henderson c1f2c1a382 AP_Vehicle: EFI increase loop rate to 50Hz 2022-10-04 16:50:08 +09:00
Andrew Tridgell d492d017e8 AP_PiccoloCAN: fix for new param set 2022-10-04 16:50:08 +09:00
Reilly Callaway 10eb5d3867 AP_PiccoloCAN: SendECU throttle commands over CAN 2022-10-04 16:50:08 +09:00
Reilly Callaway 26116675bf AP_EFI: Add Currawong ECU packet decoding 2022-10-04 16:50:08 +09:00
Reilly Callaway 6f6725019a AP_EFI: Add ECU density parameter for Currawong fuel flow calculations 2022-10-04 16:50:08 +09:00
Reilly Callaway af07ec124b AP_EFI: Add Currawong ECU to known types 2022-10-04 16:50:08 +09:00
Reilly Callaway be580bbbf8 AP_PiccoloCAN: Add Currawong ECU message handling 2022-10-04 16:50:08 +09:00
Reilly Callaway 95f28b3693 AP_PiccoloCAN: Add Currawong ECU piccolo protocol 2022-10-04 16:50:08 +09:00
Reilly Callaway 49b7efe4cb AP_EFI: Add currawong ECU EFI backend 2022-10-04 16:50:08 +09:00
Reilly Callaway d3ee4ebf64 AP_Math: Add kg/m^3 to g/cm^3 conversion define 2022-10-04 16:50:08 +09:00
Andrew Tridgell 232c31053e AP_UAVCAN: support sending pulses as PWM for DroneCAN actuators 2022-10-04 16:50:08 +09:00
Andy Piper a5a8bfaf43 Filter: optimize notch filter frequency updates when the requested frequency has not changed 2022-10-04 16:50:08 +09:00
yaapu 99a73a6a12 AP_MSP: move arming status to MSP telemetry base class 2022-10-04 16:50:08 +09:00
yaapu 9e0425495e AP_OSD: New per screen PARAMs for OSD overlay resolution and font
This adds
 OSDn_TXT_RES to select SD/HD overlay resoloution
 OSDn_FONT_INDEX for font index selection

Right now support is limited to MSP Displayport OSD devices
2022-10-04 16:50:08 +09:00
Randy Mackay 2e70b585b4 AP_Mount: remove set_mode overrides
The mode state is local to the driver and does not depend upon successful communication with the gimbal
2022-10-04 16:50:08 +09:00
yaapu 871627eb2d AP_OSD: Fixed UART thread ownership for the MSP DisplayPort OSD Backend 2022-10-04 16:50:08 +09:00
Henry Wurzburg c49fede360 SRV_Channel: change sw and output names to match new MOUNT params 2022-10-04 16:50:08 +09:00
Henry Wurzburg 9e365dfc36 RC_Channel: change sw and output names to match new MOUNT params 2022-10-04 16:50:08 +09:00
Michael du Breuil 6a5ad848a4 AP_Arming: Expose ARMING_OPTIONS to all vehicles 2022-10-04 16:50:08 +09:00
murata 40a03367f3 AP_InertialSensor: Allow gyro counts to be returned 2022-10-04 16:50:08 +09:00
Andy Piper b159268af2 AP_InertialSensor: make sure dynamic notches always get updates so that slew limiting is not too aggressive 2022-10-04 16:50:08 +09:00
Andy Piper c468958e60 Filter: constrain harmonic notch center frequency changes to be within a slew limit
raise notch filter slew for smaller aircraft
ensure NotchFilter init() resets the center frequency
2022-10-04 16:50:08 +09:00
Andy Piper c232cf3d4f AP_Vehicle: make sure notches are not spurious disabled when not using throttle notch 2022-10-04 16:50:08 +09:00
Yuri 95ec0185c4 AP_HAL_ChibiOS: define skyviper short board names 2022-10-04 16:50:08 +09:00
Yuri 0dd396daeb GCS_MAVLink: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri b11a280b6d AP_Radio: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri 0c7aadc8f8 AP_Logger: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri b6eca86a96 AP_HAL_SITL: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri ebe27b95a9 AP_HAL_Linux: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri 8519ccfa2f AP_HAL_ESP32: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri 4a2cb5f3dd AP_HAL_ChibiOS: define CubeOrange-SimOnHardWare short board name 2022-10-04 16:50:08 +09:00
Yuri acb4702689 AP_HAL_ChibiOS: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Yuri d9b19b797d AP_HAL: increase short board names to 23 chars 2022-10-04 16:50:08 +09:00
Peter Barker 5647db13ea AP_GPS: use default case for sending blob
This structure avoids a compiler warning that a statement isn't reachable when all backends are compiled out.
2022-10-04 16:50:08 +09:00
Peter Barker eacfbc599e AP_GPS: no init blobs for SBF/GSOF/NOVA/SITL 2022-10-04 16:50:08 +09:00
Peter Barker 1bb7d045c7 AP_GPS: cycle through baud rates for SBF/GSOF/NOVA/SITL 2022-10-04 16:50:08 +09:00
Iampete1 d1d020fb50 SRV_Channel: adjust trim, check all channels for range limit 2022-10-04 16:50:08 +09:00
Paul Riseborough 829def567b AP_NavEKF3: Allow wind states to recover faster when airspeed sensor failed 2022-10-04 16:50:08 +09:00
Andrew Tridgell 2afbbfde21 AP_Airspeed: allow EKF checking without wind max 2022-10-04 16:50:08 +09:00
Paul Riseborough 02e30b067f AP_Airspeed: Update documentation for used parameter index warnings 2022-10-04 16:50:08 +09:00
Andrew Tridgell 3303ca717e AP_Logger: fixed missing doc field 2022-10-04 16:50:08 +09:00
Paul Riseborough a782f849da AP_Airspeed: remove unsupported parameter units descriptor 2022-10-04 16:50:08 +09:00
Paul Riseborough bd0d320fe4 AP_Airspeed: Add tuning advice for ARSP_WIND_GATE 2022-10-04 16:50:08 +09:00
Paul Riseborough b3f289d3d1 AP_Airspeed: Add hysteresis to consistency check 2022-10-04 16:50:08 +09:00
Paul Riseborough 3d2fbf9438 AP_TECS: Assume flight at cruise speed if speed measurement not available 2022-10-04 16:50:08 +09:00
Paul Riseborough fa06e3e612 AP_Airspeed: Enable use of EKF3 to check airspeed health 2022-10-04 16:50:08 +09:00
Paul Riseborough a49eca341e AP_Logger: Fix ARSP data type string 2022-10-04 16:50:08 +09:00
Paul Riseborough 9f523547ca AP_Logger: Add consistency test ratio to ASPD logging 2022-10-04 16:50:08 +09:00
Paul Riseborough f613c4088e AP_AHRS: Add accessor function for airspeed health monitoring 2022-10-04 16:50:08 +09:00
Paul Riseborough 66e26bb5cc AP_NavEKF3: Allow reporting of airspeed consistency for a deselected sensor 2022-10-04 16:50:08 +09:00
Paul Riseborough 037cf9d2e9 AP_NavEKF3: Add accessor function for airspeed health monitoring 2022-10-04 16:50:08 +09:00
Paul Riseborough 991959ddf7 AP_NavEKF3: Enable monitoring of unhealthy airspeed sensors
Innovations and innovation test ratios will still be calculated and reported for an unhealthy sensor, but the EKF states wnd covariance matrix will not be modified.
2022-10-04 16:50:08 +09:00
Andy Piper ec7b9aa272 AP_RPM: fix reporting of RPM from the harmonic notch 2022-10-04 16:50:08 +09:00
Andrew Tridgell 37da615334 AP_Motors: added a SPIN_MIN check
and check SPIN_ARM <= SPIN_MIN
2022-10-04 16:50:08 +09:00
Andrew Tridgell 2fcd371857 AP_BoardConfig: load CUAVv6X defaults when detected 2022-10-04 16:50:08 +09:00
Andrew Tridgell bcd8ccf038 AP_Param: make load_defaults_file() available on ChibiOS 2022-10-04 16:50:08 +09:00
Andrew Tridgell b77db1f590 hwdef: added CUAV_V6X default parameters 2022-10-04 16:50:08 +09:00
Andrew Tridgell 6bb477715d AP_CANManager: disable SLCAN when armed
this disables SLCAN if enabled using CAN_SLCAN_CPORT and
SERIALn_PROTOCOL=22 when we are armed, to reduce load on the CAN
thread from the very inefficient SLCAN processing
2022-10-04 16:50:08 +09:00
Andrew Tridgell 6a048da6ad hwdef: reduced memory usage on MatekF405-CAN board 2022-10-04 16:50:08 +09:00
Andy Piper 71e860feec AP_HAL_ChibiOS: make sure SkystarsH7HD has functioning VTX on Camera 1 by default 2022-10-04 16:50:08 +09:00
Andy Piper 23c6ea320c AP_HAL_ChibiOS: put RX on UART1 on Skystars H7HD bdshot
make sure VTX has power on Skystars H7HD at boot
2022-10-04 16:50:08 +09:00
Andy Piper f3fbc6691e AP_HAL_ChibiOS: hwdef for bdshot variant of SkystarsH7HD
Correct bootloader storage location for SkystarsH7HD
2022-10-04 16:50:08 +09:00
yaapu bc26aabafb ArduPlane: fixed roll and pitch for OSD VTOL view 2022-10-04 16:50:08 +09:00
Bob Long c170f1bccf AP_Mission: initialize jump-tracking in init() 2022-10-04 16:50:08 +09:00
Peter Barker 5f1388f366 AP_Mission: zero frame field when filling mavlink_int from mavlink_cmd
Callers should be filling their bits in after calling this.
2022-10-04 16:50:08 +09:00
Andrew Tridgell c52f620127 AP_NavEKF3: fixed EKF3 origin alt inconsistency
always use common origin, and adjust output posD for difference
between public and local lane origin heights
2022-10-04 16:50:08 +09:00
Peter Barker c39129d4fe AP_RPM: correct SITL backend compilation if RPM disabled in SITL 2022-10-04 16:50:08 +09:00
Andy Piper 202bbc3fab AP_VideoTX: ensure that Tramp changes are broadcast to the GCS 2022-10-04 16:50:08 +09:00
Andy Piper 4b06cafcc0 AP_VideoTX: fix potential buffer overrun bug 2022-10-04 16:50:08 +09:00
Andy Piper 7fafc49321 AP_VideoTX: add lookup tables for VTX power settings
correct settings when power set is received
add support for capturing all supported power levels
learn power levels in SmartAudio 2.1
add better support for VTX power levels
don't set power to 0 if in pitmode
add option for iNav compatibility
support non-conforming SmartAudio implementations
re-enable pitmode on SmartAudio 2.0
add support for "blind" VTX setting
2022-10-04 16:50:08 +09:00
Andrew Tridgell b293a8cdff hwdef: rename board at request of vendor
there are multiple AtomRCF405 boards
2022-10-04 16:50:08 +09:00
Andrew Tridgell ed53dc0988 SITL: fixed tailsitter airspeed in RF9 2022-09-13 14:19:47 +09:00
Andrew Tridgell 6dc63e5d86 AP_Scripting: added set_rpm_scale example 2022-09-13 14:19:47 +09:00
Andrew Tridgell d3461452ef AP_Scripting: added set_rpm_scale API 2022-09-13 14:19:47 +09:00
Andrew Tridgell e7ab8147b3 AP_ESC_Telem: support set_rpm_scale() call for scripting 2022-09-13 14:19:47 +09:00
Iampete1 d066588c91 AC_Fence: always clear breaches 2022-09-12 08:57:42 +09:00
olliw42 64b1277a66 AP_Mount: storm integrates find_by_mavtype_and_compid
Note that this forces users to set their gimbal's component id while before any component id was acceptable
2022-09-12 08:44:38 +09:00
Randy Mackay 7c9b487779 AP_Mount: gremsy integrates find_by_mavtype_and_compid 2022-09-12 08:44:38 +09:00
olliw42 c034f8a099 GCS_MAVLink: add find_by_mavtype_and_compid 2022-09-12 08:44:38 +09:00
Iampete1 64d9413871 hwdef: Hitec-Airspeed: disable UART to save flash 2022-09-11 14:02:18 +10:00
Andrew Tridgell a0530a4816 hwdef: fixed FlyingmoonF427 servo rail voltage 2022-09-11 08:29:12 +10:00
Andrew Tridgell ee5fc4ad8e AP_Airspeed: use row_times_mat 2022-09-11 07:57:16 +10:00
Andrew Tridgell 0d7da89ef1 SITL: fixed rotation of airspeed in tailsitters in FlightAxis 2022-09-11 07:57:16 +10:00
Andrew Tridgell 5470c6435e AP_Math: rename * operator for vector3f * matrix3f 2022-09-11 07:57:16 +10:00
Michael du Breuil 5282dba42a GCS_MAVLink: Rate limit blocking accel calibrations
This allows us to drop any queued commands that may have arrived while
we were calibrating. Rather then entering a second and unexpected
calibration.
2022-09-09 08:52:14 +10:00
Andrew Tridgell dd89d68107 hwdef: added AtomRC F405 board 2022-09-09 07:14:51 +10:00
Iampete1 f3dc805978 AP_Motors: Block Spoolup: stop advance from ground idle 2022-09-07 17:03:03 +01:00
Andy Piper 2de992dcf1 AP_ESC_Telem: avoid FPE on macos
use floats for rpm in API calls
2022-09-07 17:03:03 +01:00
Randy Mackay ff91bbd762 AP_Motors: add spoolup block 2022-09-07 17:03:03 +01:00
Andy Piper b9280630f5 AP_ESC_Telem: add are_motors_running() based on rpm feedback
add spin armed rpm to SITL
use floats for rpm in API calls
implement is_telemetry_active()
simulate ESC telemetry in SITL
2022-09-07 17:03:03 +01:00
Andy Piper ab64480d2b SITL: add spin armed rpm 2022-09-07 17:03:03 +01:00
Iampete1 e72e5a2751 AP_Motors: add pre-arm check 2022-09-07 17:54:16 +10:00
Michael du Breuil ff94ef1c60 GCS_MAVLink: Check for mission space before sending items 2022-09-07 17:52:23 +10:00
Randy Mackay 152ef7f78f AP_Mission: do-gimbal-manager-pitchyaw command supports multiple gimbals 2022-09-07 16:09:07 +09:00
Randy Mackay f932add7ea AP_Mount: mav-cmd-do-gimbal-manager-pitchyaw supports multiple gimbals 2022-09-07 16:09:07 +09:00
Randy Mackay 73d817b985 AP_Mount: add access for primary instance 2022-09-07 16:09:07 +09:00
Randy Mackay 76096899ac AP_Mount: add 2nd instance 2022-09-07 16:09:07 +09:00