Commit Graph

33975 Commits

Author SHA1 Message Date
Iampete1
9e9aaed1b5 AC_PID: Simplify update_error method by calling update all 2023-10-03 11:27:07 +11:00
Randy Mackay
18bf9669b0 AP_Mount: Xacti get_param_name_str returns empty string on failure 2023-10-03 11:24:10 +11:00
Randy Mackay
046cf5630e AP_Mount: Xacti uses GCS_SEND_TEXT 2023-10-03 11:24:10 +11:00
Randy Mackay
288f7b5650 AP_Mount: Xacti take pic reliability improved 2023-10-03 11:24:10 +11:00
Randy Mackay
4ba6375d38 AP_Mount: Xacti does not report cannot take pic 2023-10-03 11:24:10 +11:00
Iampete1
3429276224 AP_InertialSensor: add INS_RAW_LOG_OPT to allow raw logging of post, and pre+post on primary or all gyros 2023-10-03 10:24:58 +11:00
Michael du Breuil
9e32456003 AP_Motors: Add a seprate spool down time, if it's 0 use spool up time 2023-10-03 08:04:56 +09:00
Peter Barker
0cc9484b2d AP_RCTelemetry: remove some uses of gcs singleton 2023-10-03 09:47:38 +11:00
Andrew Tridgell
da0870f616 HAL_ChibiOS: enable mavlink bindings for ADSB periph 2023-10-02 21:45:28 +11:00
Andrew Tridgell
bf229b3dc1 HAL_SITL: enable ADSB simulator in SITL periph 2023-10-02 21:45:28 +11:00
Andrew Tridgell
92c0e7f860 GCS_MAVLink: use mavlink_frame_char_buffer()
and remove unnecessary extra mavlink_get_channel_status() function
2023-10-02 21:45:28 +11:00
Andrew Tridgell
ac3f4f0c5e GCS_MAVLink: use mavlink_XXX_encode_status() in example code 2023-10-02 21:45:28 +11:00
Andrew Tridgell
be01fcfdfd SITL: use mavlink_XXX_encode_status()
this avoids clobbering sequence numbers and fixes race conditions
2023-10-02 21:45:28 +11:00
Andrew Tridgell
18f3ab98e4 HAL_SITL: allow for I2C simulated devices in SITL AP_Periph
this allows for SMBbus batteries and other I2C simulated devices
2023-10-02 21:45:28 +11:00
Andrew Tridgell
5f5de52984 GCS_MAVLink: allow for mavlink bindings only in GCS_MAVLink
this is used by SITL periph to allow for mavlink based simulators
2023-10-02 21:45:28 +11:00
Andrew Tridgell
4ca2277f1a AP_Scripting: added logging to EFI_Halo6000.lua driver
allows for log analysis of current/voltage
2023-09-30 17:15:36 +10:00
Andrew Tridgell
4cabe0f223 AP_GPS: prevent use of blended GPS with moving baseline
when moving baseline is enabled the rover is slaved to the base for
position and velocity, adding no additional useful data. Only the yaw
comes from the rover
2023-09-30 09:05:08 +10:00
Andrew Tridgell
4e61fb3f26 AP_GPS: allow GPS moving baseline rover at 3Hz
users with busy CAN bus often get significiantly lower GPS rates on a
moving baseline rover, preventing arming. This PR relaxes the required
frame rate as the EKF is quite happy with 3Hz yaw and the yaw is the
only data consumed from a moving baseline rover
2023-09-30 09:05:08 +10:00
Andrew Tridgell
4a181ede62 AP_TECS: fixed descent or lack of climb bug
this fixes a state where we either cannot climb or descend in an
uncontrolled manner in a TECS controlled mode

the conditions under which this happened were:

- _use_synthetic_airspeed_once was true due to quadplane takeoff
- we left _thr_clip_status as MAX from previous use of synthetic airspeed
- then run without airspeed

note that this can also impact users with an airspeed sensor if they
disable it or it fails in flight, particularly during a climb
2023-09-28 20:37:41 +10:00
Peter Barker
f358ddd771 AP_GPS: add an AP_GPS_FixType header
useful when you need nice symbols for the numbers, but are not compiling the GPS headers in
2023-09-27 14:14:57 -07:00
Samuel Tabor
40f62949b3 Send lat lon in SIM_STATE as int32_t extensions 2023-09-27 14:14:37 -07:00
Tom Pittenger
8c4d00e6f2 SITL: add a thermal at home 2023-09-27 12:19:00 -07:00
Peter Barker
ef8cd449ec GCS_MAVLink: handle MAV_CMD_DO_FLIGHTTERMINATION as both long and int 2023-09-27 11:27:45 -07:00
Tom Pittenger
eeb7dc26fb AP_ICEngine: minor OPTIONS param spelling fix 2023-09-27 08:43:27 -07:00
Michael du Breuil
e8deb491de AP_ICEngine: Add an option to disable starting while disarmed 2023-09-27 08:43:27 -07:00
Peter Barker
8cfdf10cf1 AP_Vehicle: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Peter Barker
132b04562d AP_Notify: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Peter Barker
e2975a67e7 AP_HAL_ChibiOS: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Peter Barker
0824eca776 AP_GPS: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Peter Barker
9a054876ff AP_Compass: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Paul Riseborough
75789bd94d AC_PosControl: Add monitoring and reporting of forward accel saturation 2023-09-27 11:43:45 +10:00
Andrew Tridgell
936d6ed378 RC_Channel: added VFWD_THR_OVERRIDE 2023-09-27 11:43:45 +10:00
Andrew Tridgell
9c7c995185 AP_ICEngine: added ICE_DISABLED state 2023-09-27 11:43:45 +10:00
Pierre Kancir
01f94e9aa5 AP_Logger: don't virtual out_of_time_for_writing_messages for DF
This save use some flash against the solution with override
2023-09-27 08:15:42 +10:00
Pierre Kancir
06836b947f AP_Logger: make some functions final 2023-09-27 08:15:42 +10:00
Pierre Kancir
2fff57708a RC_Channel: Remove static from get_override_mask and make const 2023-09-27 08:15:42 +10:00
Pierre Kancir
247a72b823 AP_Logger: fix warning for implicit overrided function 2023-09-27 08:15:42 +10:00
Clyde McQueen
924a391d55 AP_Scripting: add sub bindings for joystick buttons 2023-09-27 08:14:36 +10:00
Clyde McQueen
5e11ccaa32 AP_JSButton: reserve 4 button functions for script access 2023-09-27 08:14:36 +10:00
Buenobarbie
5748e7b840 AP_Scripting: New script example 2023-09-27 08:14:15 +10:00
daniel.li
ec601684e6 AP_Baro: Fix GCS DPS310 HWID issue
DPS280/DPS310 use the same driver(AP_Baro_DPS280.cpp/h), but it is necessary to distinguish between the two.
2023-09-27 08:11:52 +10:00
Peter Barker
486ed2965e AP_AHRS: add AP_AHRS_DCM_ENABLED
preliminary commit to add the bulk of the changes which are not problematic
2023-09-27 08:00:54 +10:00
Peter Barker
34a508bfd8 AP_VisualOdom: visualodom requires DCM to work 2023-09-27 08:00:54 +10:00
Peter Barker
eb05093f34 AP_Compass: compass calibration requires DCM 2023-09-27 08:00:54 +10:00
Randy Mackay
7a56d887b9 AP_Winch: Options param for init state and verbose output 2023-09-27 06:48:06 +09:00
Peter Barker
0f6bf8994f GCS_MAVLink: handle MAV_CMD_AIRFRAME_CONFIGURATION as both LONG and INT 2023-09-26 11:37:42 +10:00
Andy Piper
ad126cc96e AP_SerialManager: only enable configuration ports that are available 2023-09-26 11:31:08 +10:00
Andy Piper
82452758b4 AP_HAL_ChibiOS: write out serial ports that are available when configuring 2023-09-26 11:31:08 +10:00
Iampete1
7bbd4a7c7d AP_Scripting: add some missing dependencies 2023-09-26 11:29:42 +10:00
Iampete1
82628c2559 AP_Scripting: bindings: allow GCS without high latency 2023-09-26 11:29:42 +10:00
Iampete1
6ae2fc2ca0 AP_Scripting: support per method dependencies 2023-09-26 11:29:42 +10:00
Randy Mackay
bb6d0ec9ca AP_Scripting: winch-test simplification 2023-09-26 11:12:19 +10:00
Randy Mackay
200bc6c849 AP_Mission: image-stop-capture fix for instance 2023-09-26 10:53:22 +10:00
Randy Mackay
b08fa29574 AP_Mission: start-image-capture with all zeros takes single pic
fails if no cameras configured
2023-09-26 10:53:22 +10:00
Randy Mackay
999a3fe8d9 AP_Camera: image-stop-capture fix for instance 2023-09-26 10:53:22 +10:00
Randy Mackay
fb35d97abf AP_Camera: start-image-capture with all zeros takes single pic
returns failed if no cameras configured
2023-09-26 10:53:22 +10:00
Randy Mackay
9e3ab558b3 AP_Camera: take_pic and take_multiple_pic report success
Methods return success if at least one backend succeeds
2023-09-26 10:53:22 +10:00
Randy Mackay
66337af882 AP_Camera: fix reporting of mount take_picture 2023-09-26 10:53:22 +10:00
Iampete1
f9c8ad8de8 AP_Generator: IE 650/800: does have fuel remaining 2023-09-26 10:47:50 +10:00
Iampete1
9599318fff AC_PID: apply PD limit in such that limit flag is set and reported P and D terms are correct 2023-09-26 10:41:05 +10:00
Iampete1
93ccec3203 AP_Logger: Write_PID: add PD sum limit flag 2023-09-26 10:41:05 +10:00
Iampete1
5def9e7038 AP_Logger: PID move limit to flag bit 2023-09-26 10:41:05 +10:00
Leonard Hall
029950ef05 APM_Control: Support PD Max 2023-09-26 10:41:05 +10:00
Leonard Hall
8068f72be3 AP_WheelEncoder: Support PD Max 2023-09-26 10:41:05 +10:00
Leonard Hall
df014a2c05 AC_CustomControl: Support PD Max 2023-09-26 10:41:05 +10:00
Leonard Hall
ac0244e430 AC_AttitudeControl: Support PD Max 2023-09-26 10:41:05 +10:00
Leonard Hall
3de0bcefdb AC_PID: Support PD Max 2023-09-26 10:41:05 +10:00
AndKe
2030e6c9e2 SMBus :expanded SoloBMS to 6s 2023-09-26 10:17:02 +10:00
Henry Wurzburg
a901d23de4 AP_TECS: correct/expand param metadata re synth airspeed 2023-09-26 09:04:51 +10:00
Peter Barker
429dbefade AP_AHRS: fill in error string when invalid backend specified 2023-09-25 08:11:23 +10:00
Peter Barker
34bceb8eec SITL: log achieved speedup rate 2023-09-23 19:49:02 +10:00
Peter Barker
4791e6f367 AP_Generator: use HAL_LOGGING_ENABLED 2023-09-23 13:59:42 +10:00
Asif Khan
65be0bd1ba GCS_MAVLink: add MAV_CMD_IMAGE_STOP_CAPTURE support
Co-authored-by: Zachary Zalass <zachzalass@gmail.com>
2023-09-21 21:05:01 +10:00
Asif Khan
844d552b22 AP_Mission: add MAV_CMD_IMAGE_STOP_CAPTURE support
Co-authored-by: Zachary Zalass <zachzalass@gmail.com>
2023-09-21 21:05:01 +10:00
Asif Khan
f30af5e072 AP_Camera: add MAV_CMD_IMAGE_STOP_CAPTURE support
Co-authored-by: Zachary Zalass <zachzalass@gmail.com>
2023-09-21 21:05:01 +10:00
Asif Khan
518feedf41 AP_Mission: add MAV_CMD_START_CAPTURE support in mission 2023-09-21 21:05:01 +10:00
Asif Khan
2cc080620c AP_Camera: fix MAV_CMD_START_CAPTURE handling 2023-09-21 21:05:01 +10:00
Andrew Tridgell
89bd6ab218 AP_GPS: implement the GPS_DRV_OPTION for ellisoid height in mode drivers
this allows a lot more drivers to use the GPS_DRV_OPTION but to use
ellisoid height. Particularly useful for DroneCAN GPS modules

using ellisoid height instead of AMSL is useful in some specialised
application
2023-09-21 19:36:26 +10:00
Peter Barker
fc722b5efc AP_Tuning: add and use AP_TUNING_ENABLED 2023-09-21 07:07:58 +10:00
Peter Barker
1208938d3b SITL: fix balancebot yaw reset to be kinimatically consistent
... or at least closer to it.

We were hard-resetting the yaw to zero when the vehicle was upright.  That makes for huge simulated gyro rates, and that means the differences between the gyros can be huge sample-to-sample, so we can get gyros-inconsistent errors.

Fix things so we don't reset yaw at the same time as pitch, and also twist the vehicle to point North again when disarmed.
2023-09-20 22:59:41 +10:00
James O'Shannessy
70bee8e67a AP_HAL_ChibiOS: Explicitly include InternalError
Debug builds utilise internal error in the Util class.

The include was being passed up from Logger->LoggerMessageWriter->LoggerBackend->Bitmask.
Periph Builds tend not to have HAL_LOGGING_ENABLED, and so the include was not present.
2023-09-20 19:51:48 +10:00
Peter Barker
8e57d66a0d AP_AHRS: move AP_AHRS_DCM::groundspeed_vector into correct file 2023-09-20 19:06:10 +10:00
Peter Barker
b44682d1a6 GCS_MAVLink: handle CAN_FORWARD as both command_INT and COMMAND_LONG 2023-09-20 17:50:56 +10:00
Peter Barker
3c93fd3c5f AP_CANManager: handle CAN_FORWARD as both command_INT and COMMAND_LONG 2023-09-20 17:50:56 +10:00
Andy Piper
2c44d75f27 AP_HAL: relax F4 notch constraints slightly to allow triple notch on quads 2023-09-20 17:37:24 +10:00
Andy Piper
36fc7521ea AP_HAL_ChibiOS: modify prescaler based on dshot type 2023-09-20 17:35:44 +10:00
Andy Piper
5c0f049739 AP_HAL: simplify prescaler calculation and allow choosing highest frequency
Update tests to reflect BLHeli_S requirements and add in L431
2023-09-20 17:35:44 +10:00
Peter Barker
53d12ab46d AP_AHRS: rename EKFType::NONE to EKFType::DCM 2023-09-20 17:15:10 +10:00
Henry Wurzburg
4a15d9cc1b AP_TempertureSensor:clarify temp sourec for pitot tube 2023-09-19 10:15:45 -07:00
Peter Barker
d2ad165a4a RC_Channel: correct compilation with COMPASS_CAL_ENABLED off 2023-09-19 16:54:59 +10:00
Peter Barker
acf437b258 AP_Compass: correct compilation with COMPASS_CAL_ENABLED off 2023-09-19 16:54:59 +10:00
Peter Barker
12a06ee0ae AP_AHRS: make a pair of methods static on AP_AHRS_Backend
these don't use any information from the specific backend, but they are called within the backends so making them static on that class is handy
2023-09-19 13:20:15 +10:00
Peter Barker
a5bfd58524 AP_AHRS: remove un-needed AP_AHRS_Backend::getCorrectedDeltaVelocityNED
over-kill, and can be derived from backend biases if required
2023-09-19 12:51:31 +10:00
Andy Piper
1b1e5b1085 hwdef: correct inversion pin on MambaF405v2
correct battery setup for MambaF405v2
provide suitable serial defaults for MambaF405v2
reallocate DMA channels to allow full DMA on USART3 and NeoPixel on MambaF405v2
add camera control pin to MambaF405v2
2023-09-19 11:43:58 +10:00
Peter Barker
9bcd9df7dd AP_AHRS: move load_watchdog_home into correct cpp file
NFC, just moving the code out of the DCM backend file
2023-09-19 11:35:45 +10:00
Peter Barker
622b83da9e AP_AHRS: move set_home method into correct .cpp file
NFC, just moving the code in prepration for allowing DCM to be compiled out
2023-09-19 11:35:45 +10:00
Peter Barker
f8a4dd02d9 AP_AHRS: simplify specification of primary IMU indices
given that DCM doesn't specify to use the primary accel or gyro when fetching the data from the Ins library, it shouldn't be special-cased here when asked what the primary IMU and accel are.  Note that this was asking for the *configured* backend type, rather than the active EKF type, making these clauses even stranger.

This also changes the definition of the "primary IMU index" to be whichever gyro is active rather than the accel.  Since we don't currently split primary gyro/primary accel, this is a reasonable change.
2023-09-19 11:34:37 +10:00
Peter Barker
e83b6bcfcb AP_AHRS: remove get_primary_IMU_index from public interface 2023-09-19 11:34:37 +10:00
Peter Barker
0b4007d22c AP_AHRS: make comment match code behaviour in airspeed DCM-fallback
the comment here was incorrect; we do not need EKF3 to have a good wind estimate to fall back to DCM here.

Also restructure the code to make it more obvious that this is what's going on.
2023-09-19 11:30:45 +10:00
Peter Barker
c30bceb2a0 AP_AHRS: return location inside backend_results structure
with the change to cache results inside AP::ahrs().state we no longer need to worry about the backend's attempts to project the last-known-location forwards according to amount of time elapsed since that last-known-location was calculated.
2023-09-19 11:25:49 +10:00