Commit Graph

29769 Commits

Author SHA1 Message Date
Ryan Beall 9f1620f346 AP_Baro.cpp: if not define out AP Periph 2022-05-26 11:32:45 +10:00
Ryan Beall f9840386bc AP_Baro.cpp: fix fabsf and use non-fixed temperature for calibration 2022-05-26 11:32:45 +10:00
Ryan Beall 16f0df04dc AP_Baro.cpp: Atmospheric Model Correction 2022-05-26 11:32:45 +10:00
Randy Mackay 27b66443b2 AP_Vehicle: mode reason added for dead reckon failsafe 2022-05-25 20:05:21 +09:00
Randy Mackay 86eea9468a AP_Arming: add DEADRECKON_FAILSAFE disarm reason 2022-05-25 20:05:21 +09:00
Randy Mackay 5b40808ee8 AP_Logger: error subsystem added for dead reckon failsafe 2022-05-25 20:05:21 +09:00
Randy Mackay eafb118b47 AP_NavEKF3: set filter status dead_reckoning bit 2022-05-25 20:05:21 +09:00
Randy Mackay 6553b9145a AP_NavEKF: filter status gets dead_reckoning bit 2022-05-25 20:05:21 +09:00
Randy Mackay e37bf9ad53 AP_NavEKF3: drag fusion for att and velAiding
also add dragTimeout
2022-05-25 20:05:21 +09:00
Randy Mackay 61c4643aed AP_NavEKF3: minor comment fix 2022-05-25 20:05:21 +09:00
Peter Barker e9426b2ff3 AP_ExternalAHRS: correct compilation if AP_Baro_ExternalAHRS isn't available 2022-05-25 18:19:00 +10:00
Peter Barker c5f1d1db28 AP_Generator: inhibit maintenance warning based on GEN_OPTIONS bit 2022-05-25 18:17:05 +10:00
Peter Barker bc0befc737 AP_Generator: mask MaintenanceRequired out from error bits in prearm
Turns out the generator sets this bit when it reaches the
maintenance-required state.

Mask it out from the error bits so the user can still fly.

Add some periodically-run code to complain about maintenance-required,
separate from the prearm checks.
2022-05-25 18:17:05 +10:00
Peter Barker c496985e37 SITL: SIM_RichenPower sets MaintenanceRequired error flag
Turns out the generator does set this flag when the generator reaches
its maintenance required state.
2022-05-25 18:17:05 +10:00
bugobliterator 1934b4a738 AP_HAL: move function definitions to cpp to save flash 2022-05-25 18:14:46 +10:00
bugobliterator 76d6170ec9 AP_HAL_ChibiOS: add mechanism to set register rw register using device name for SPI 2022-05-25 18:14:46 +10:00
bugobliterator e26ffc4ec5 AP_HAL: add mechanism to set register rw register using device name for SPI 2022-05-25 18:14:46 +10:00
Peter Barker 4272b2c264 AP_AccelCal: limit COMMAND_ACKs accepted for vehicle pose confirmation 2022-05-25 17:55:55 +10:00
Peter Barker be21091619 GCS_MAVLink: pass mavlink_command_ack_t to accelcal library
The library needs to look at the content of the packet.  Given that GCS_MAVLink is already within handle_command_ack, decoding it there makes sense.
2022-05-25 17:55:55 +10:00
Peter Barker dcc1818ee2 AP_AccelCal: pass mavlink_command_ack_t to accelcal library
The library needs to look at the content of the packet.  Given that GCS_MAVLink is already within handle_command_ack, decoding it there makes sense.
2022-05-25 17:55:55 +10:00
Peter Barker dd2283d73b AP_Airspeed: add SITL backend 2022-05-25 17:52:44 +10:00
Andy Piper 0cd3636dfb AR_Motors: make sure ESC type is initialized early 2022-05-25 17:06:08 +10:00
Andy Piper 3d9639181e AP_Motors: make sure ESC type is initialized early 2022-05-25 17:06:08 +10:00
Andy Piper e95d116979 SRV_Channel: add BLHeli_S ESC type 2022-05-25 17:06:08 +10:00
Andy Piper cabaef6173 AP_HAL_ChibiOS: add BLHeli_S ESC type and use it to control bitwidths 2022-05-25 17:06:08 +10:00
Andy Piper 35a37cb84b AP_HAL: add BLHeli_S ESC type and use it to control bitwidths
adjust BLHeli_S bitwidth and ticks to support more ESC variants.
2022-05-25 17:06:08 +10:00
Ruffalo-sunghwan 988eb67298 AP_Common : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan e4a4fbe17a AP_ADSB : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 499c5dfc96 AP_Compass : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 746e85740f AP_FETtecOneWire : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 001643eb4f AP_Airspeed : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 3f1779a5a1 AP_Landing : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 7fb9d21cbf AC_AttitudeControl : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 40071aacc6 AP_Torqeedo : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 286e0f261e AP_TECS : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 86cd266010 AP_RangeFinder : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 51451d29e1 GCS_MAVLink : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 5a4d61e3a4 AP_NavEKF3 : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan dc07747199 SITL : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan e0d14d900a SRV_Channel : correct comment spelling 2022-05-24 20:27:45 +09:00
Peter Barker e6e45eda97 SITL: populate rangefinder ranges for inbuilt sims
These values are returned for the SITL rangefinder backend, type=100
2022-05-24 10:38:57 +10:00
Peter Barker 51246fda45 AP_RangeFinder: enable SITL rangefinder for sim-on-hardware 2022-05-24 10:38:57 +10:00
Peter Barker 73190d075a SITL: add support for SIM_OH_MASK (sim-on-hardware output enable mask 2022-05-24 10:35:32 +10:00
Peter Barker 2913c8d9e9 AP_HAL_ChibiOS: add support for SIM_OH_MASK (sim-on-hardware output enable mask 2022-05-24 10:35:32 +10:00
Peter Barker 488509353a SITL: add support for Plane SITL-on-hw 2022-05-24 10:35:32 +10:00
Peter Barker 16883565e2 AP_HAL: add support for Plane SITL-on-hw 2022-05-24 10:35:32 +10:00
Peter Barker 0f48557ec2 AP_HAL: fix compilation for sitl-on-hw 2022-05-24 10:35:32 +10:00
Andy Piper ccbe62589e AP_Logger: add W25Q128 variant 2022-05-24 10:32:34 +10:00
Andrew Tridgell cf4768454f AP_BoardConfig: expose BRD_SAFETYENABLE on all boards
default BRD_SAFETYENABLE to 0 on boards with no safety switch, which
gives us the same behaviour as before, but users can choose to enable
the safety

this fixes two problems:

  - CAN servos and ESCs work on boards with no safety switch
    (eg. MatekH743 with CAN)

  - during startup we could get spurious outputs before out aircraft
    type is setup
2022-05-22 14:58:12 +10:00
Andrew Tridgell c8b328c3a1 HAL_ChibiOS: always start with safety enabled
we want it enabled during early boot to prevent incorrect ESC and
servo output
2022-05-22 14:58:12 +10:00
Peter Barker c8f1d2f023 AP_MSP: allow baro backends to be individually compiled out
filtering by define name is the most useful bit
2022-05-22 12:11:45 +10:00
Peter Barker e2f5443a1e hwdef: skyviper-v2450: compile in only ICM20789 2022-05-22 12:11:45 +10:00
Peter Barker 8cd0922f01 AP_UAVCAN: allow baro backends to be individually compiled out 2022-05-22 12:11:45 +10:00
Peter Barker b863f8a331 AP_Baro: allow baro backends to be individually compiled out 2022-05-22 12:11:45 +10:00
Andrew Tridgell 11a06aa6cb SRV_Channel: re-fixed typo 2022-05-22 12:07:37 +10:00
Andrew Tridgell cc06327526 AP_UAVCAN: allow CAN output for function==0 and allow for 32 CAN servos 2022-05-22 12:07:37 +10:00
Andrew Tridgell aa9083e94c SRV_Channel: only support 32 channels on 2M flash boards
save flash on smaller boards
2022-05-22 12:07:37 +10:00
Andrew Tridgell e185e1252b SRV_Channel: added a SERVO_32_ENABLE parameter
save on param count for most users
2022-05-22 12:07:37 +10:00
Andrew Tridgell ed01d33ef8 SRV_Channel: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 4557c8ad04 AP_ToshibaCAN: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 7f6196b550 AP_RobotisServo: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell f00a227b33 AP_Motors: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell bb8ebeebe2 AP_KDECAN: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell f530761174 AP_HAL_Linux: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 113b4cec38 AP_HAL: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 7aea559bdb AP_HAL_ESP32: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 1d9abefbb1 AP_HAL_ChibiOS: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell d33734ee85 AP_ESC_Telem: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 7ed8e8d3b6 AP_BoardConfig: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell f3ce44ef2c AP_BLHeli: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Iampete1 32f8062b3e SITL: move to 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 a5928b752e SRV_Channels: set channels above 16 to GPIO by defualt 2022-05-22 12:07:37 +10:00
Iampete1 48b3549158 AP_Logger: RCOUT only log if there is a valid output channel 2022-05-22 12:07:37 +10:00
Iampete1 d1e02e4fdd SRV_Channel: add invalid mask for GPIO outputs 2022-05-22 12:07:37 +10:00
Iampete1 a36848cba5 SITL: JSON Master: only copy the first 16 servos 2022-05-22 12:07:37 +10:00
Iampete1 e03aed3aa7 AP_BLHeli: support upto 32 servo outputs 2022-05-22 12:07:37 +10:00
Iampete1 117b67c9e2 AR_MotorsUGV: convert to 32 bit motor mask 2022-05-22 12:07:37 +10:00
Iampete1 43832649ec AP_Motors: convert to 32 bit motor mask 2022-05-22 12:07:37 +10:00
Iampete1 7d3368fa33 GCS_MAVLink: send servo raw 17-32 using port 1 2022-05-22 12:07:37 +10:00
Iampete1 077401df69 SRV_Channel: add upto 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 c4df741af9 AP_SerialLED: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 031115577a AP_HAL_SITL: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 7fc691d8d5 AP_HAL_ChibiOS: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 cabdd82e71 AP_HAL: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 572ebf29da SITL: move to 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 6921763b02 AP_Voltz: update MASK Bitmask 2022-05-22 12:07:37 +10:00
Iampete1 d1e45c93d6 AP_UAVCAN: update ESC_BM and SRV_BM Bitmask 2022-05-22 12:07:37 +10:00
Iampete1 51a631b523 AP_PiccoloCAN: update ESC_BM Bitmask 2022-05-22 12:07:37 +10:00
Iampete1 8110b9ac2d AP_Logger: add loging of servo out 15 to 32 2022-05-22 12:07:37 +10:00
Andrew Tridgell bda280bcf1 AP_Scripting: cope better with high P gains in quicktune
if we lower the D gain, then lower P and I by the same ratio before we
start on the P gain

Also added parameters to disable filter changes and control PI ratios
2022-05-21 13:20:27 +10:00
Tom Pittenger 798f985ee5 AP_InertialSensor: relax is_still() threshold for SITL.. which is pretty darn still all the time for Plane 2022-05-20 10:52:47 -07:00
Randy Mackay 2382e58f04 AP_InertialSensor: extend ENABLE_MASK param desc IMUs 4 to 7 2022-05-19 07:54:24 +10:00
Clyde McQueen 25fd69b947 AP_HAL_SITL: init ArduSub pwm_output to [1500, ...]
Signed-off-by: Clyde McQueen <clyde@mcqueen.net>
2022-05-19 07:53:52 +10:00
Andrew Tridgell 8106291bfe AP_UAVCAN: added CAN_Dx_UC_ESC_OF parameter
this allows for an offset in ESC numbering for much more efficient CAN
bandwidth usage.

For example, on a coaxial OctoQuad quadplane the ESCs are typically
setup as outputs 5 to 12. An ideal setup is to split these over 2 CAN
buses, with one CAN bus for the top layer and the one bus for the
bottom layer (allowing for VTOL flight with one bus failed).

Without this offset parameter you would be sending RawCommand messages
like this:

bus1: [ 0, 0, 0, 0, ESC1, ESC2, ESC3, ESC4 ]
bus2: [ 0, 0, 0, 0, 0, 0, 0, 0, ESC1, ESC2, ESC3, ESC4 ]

this is very wasteful of bus bandwidth, with bus1 using 3x the
bandwidth it should and bus2 using 4x the bandwidth it should (the
above will take 3 can frames for bus1, and 4 can frames for bus 2)

With this patch you can set:

CAN_D1_UC_ESC_OF = 4
CAN_D2_UC_ESC_OF = 8

and you will get this on the bus:

bus1: [ ESC1, ESC2, ESC3, ESC4 ]
bus2: [ ESC1, ESC2, ESC3, ESC4 ]

that takes just 1 can frame per send on each bus
2022-05-18 21:23:30 +10:00
Randy Mackay e0023a99bc AP_NavEKF3: replace AP_HAL::millis() with dal.millis() 2022-05-18 17:59:57 +10:00
Peter Barker 434f49e6b6 AP_Motors: correct initialised_ok state for HeliDual+Quad
initialised_ok was being set to false when frame/class was set as the
method was not overridden and thus Heli's set_frame_and_class was
setting initialised_ok to false.  When the init_output method was called
it would be unconditionally reset to true.
2022-05-18 12:25:26 +09:00
Peter Barker 8402149572 AP_Vehicle: run prearm checks on all vehicles @1Hz, displaying @0.0333Hz 2022-05-18 12:25:26 +09:00
Peter Barker 53e8ab6af8 AP_Arming: run prearm checks on all vehicles @1Hz, displaying @0.0333Hz 2022-05-18 12:25:26 +09:00
Iampete1 af58ca52c1 AP_HAL_ChibiOS: allocate_heap_memory use single malloc 2022-05-18 08:20:32 +10:00
Iampete1 66cdfb015b AP_Scripting: always free the heap and remove scripts 2022-05-18 08:20:32 +10:00
Andrew Tridgell f683461e8c AP_Mission: allow NAV_VTOL_TAKEOFF in is_takoff_next() 2022-05-18 06:43:16 +10:00
Andrew Tridgell f39ffee3f9 AP_Vehicle: added QLAND_INSTEAD_OF_RTL mode reason 2022-05-18 06:43:16 +10:00
Andrew Tridgell 457568d3c5 SITL: removed SIM_WIND_DELAY 2022-05-17 19:34:32 +10:00
Andrew Tridgell 962d92acf5 AP_HAL: use array for airspeed pin value 2022-05-17 19:34:32 +10:00
Andrew Tridgell 7dc5da1247 HAL_SITL: cleanup SITL airspeed handling
fixed handling of EAS2TAS, and fixed ratio per sensor.

Removed the wind delay code (which was never being used). We should
add a generic delay filter if we need this again
2022-05-17 19:34:32 +10:00
Andrew Tridgell 2dea725d80 SITL: fixed up airspeed parameters
use a separate airspeed structure and separate ratio per sensor
2022-05-17 19:34:32 +10:00
Andrew Tridgell 61a27698da AP_Airspeed: fixed airspeed cal on 2nd airspeed sensor
we need to use the pressure from the sensor we are calibrating
2022-05-17 19:34:32 +10:00
Andrew Tridgell 234abece59 AP_EFI: added fuel usage integration for Lutan EFI
allows for EFI_COEF1 and EFI_COEF2 to be set to get fuel consumption
on GCS
2022-05-17 10:35:24 +10:00
Peter Barker 3cb104f537 AP_Logger: log airspeed primary changes 2022-05-17 10:27:57 +10:00
Peter Barker 19190fb134 AP_Airspeed: log airspeed primary changes 2022-05-17 10:27:57 +10:00
Peter Barker 016c9d8239 AP_OSD: correct compilation without OSD_ENABLED
The max7456 header file is guarded by his macro
2022-05-17 10:26:50 +10:00
Joshua Henderson d002fde67e AP_Param: eedump_apparam fix accessing uninit var 2022-05-17 10:26:18 +10:00
murata d2053d4449 AP_Vehicle: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 0245d0bae1 AP_SerialManager: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 6e91b364e0 AP_Scripting: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 16d7f69949 AP_Scheduler: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 46f75e7e53 AP_RobotisServo: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 272230793d AP_RAMTRON: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata cc75b931f9 AP_Radio: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 261d97062c AP_Param: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata cd9b4b48ae AP_OSD: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata c143fb0a5a AP_NavEKF2: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 70f0636c90 AP_IOMCU: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 2d8a81986f AP_Hott_Telem: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 15a39c1649 AL_HAL: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 234bb5409d AP_BoardConfig: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 8d1b1a2caf AP_BLHeli: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata a78dceb5a0 AP_Baro: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata f14f08a6ee AP_Avoidance: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 7eda7d757a AP_ADC: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 970af16251 GCS_MAVLink: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata d478a40edc AP_Mount: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 6102e094be AP_Logger: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 9d2ffdc028 AP_HAL_ESP32: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 1e485c20fc AP_CANManager: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 5728d2fd7c AP_RangeFinder: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 324f5e3ac9 AP_InertialSensor: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata e007b21f9e AP_HAL_ChibiOS: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata a19d4b65fc AP_Compass: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata c6ea688d52 AP_BoardConfig: Increase the number of digits in the board serial number
Co-authored-by: Joshua Henderson <hendjoshsr71@gmail.com>
2022-05-17 09:08:43 +10:00
Iampete1 069b81819d RC_Channel: notify Airmode switch 2022-05-16 16:13:53 +09:00
Peter Barker b0ceee2c42 RC_Channel: use reference while iterating to find string for aux func 2022-05-16 13:34:36 +10:00
murata 59dcf18558 AC_AttitudeControl: Shorten survival time of automatic variables 2022-05-16 09:08:02 +09:00
Peter Barker dd4ec47aa2 SITL: SIM_MS5525: add simulated airspeed offset to raw pressure 2022-05-16 09:50:52 +10:00
Leonard Hall 0d863aa736 AC_AttitudeControl: Allow diabling of slew limit 2022-05-14 22:31:43 +09:00
khanasif786 53f931c98d AP_Scripting: changed MAV_SEVERITY_EMERGENCY to INFO for origin set 2022-05-13 09:12:37 +09:00
Lokesh Ramina adfb2f9cad AP_HAL_Chibios: add_12Mhz_Clock_stm32F405
There was no option for 12Mhz for STM32F405
2022-05-12 17:40:21 +10:00
Peter Barker ad4c29748e AP_NavEKF: getYawData also provides number of clipping models
In the case of the compass calibrator we do not want to use the GSF
result if any model is degenerate.  We've had a compass calibrate in
flight 180-degrees out from what it should have.
2022-05-11 17:45:47 +10:00
Peter Barker 437b313544 AP_Compass: do not use GSF if any model has been clipped 2022-05-11 17:45:47 +10:00
Peter Barker 087d5ec6c7 AP_Mission: support *10 multipler when storing/retrieving radius in NAV_LOITER_TURNS 2022-05-11 17:40:35 +10:00