Commit Graph

22611 Commits

Author SHA1 Message Date
yaapu fed8ecc3b0 AP_Frsky_Telem: fix for protocol=4 GAlt=0 and GSPd=0
This fixes protocol 4 GPS altitude and speed error, both were reported as constant 0
for cal_gps_position() was never called
2020-03-31 13:09:35 +11:00
Peter Barker a3e2e156e7 AP_HAL_Linux: do not create ConsoleDevices for Replay or examples
Uusally problems evidence themsleves with stdin not working correctly -
for example, "git add -p" skipping through all queries as if the
user was just pressing enter.
2020-03-31 11:22:21 +11:00
Andrew Tridgell 21e93dae34 GCS_MAVLink: send only old value for readonly param set
this prevents a condition where the GCS can display the wrong value if
the 2nd PARAM_VALUE is lost

Note that groundstations can tell the set failed due to readonly in
the following ways:

 1) look for the statustext: Param write denied (PARAMNAME)

 2) see that the value came back with the old value, with index of
   65535

 3) can repeat the send, looking for (1) and (2)

Michael has proposed we add a PARAM_VALUE mavlink2 flags
extension. That would be nice, but we should still make this change to
fix the issue with mavlink 1.0
2020-03-31 11:19:58 +11:00
Peter Barker 55d37e5d0e GCS_MAVLink: correct slowing down of waypoint re-requests
These re-requests shouldn't be slowed down by a factor of 20.

This was a left-over from when we did these in terms of 20ms intervals
(50Hz loop rate)
2020-03-31 11:15:04 +11:00
Peter Barker ca7fcc093c GCS_MAVLink: correct return type on get_stream_slowdown_ms
Only used in one place.  On slow links may have caused us to re-request
a waypoint too often.  "Too often" is still >1s intervals.
2020-03-31 11:15:04 +11:00
Peter Barker 0b756547be GCS_MAVLink: add stream_slowdown to MAV message 2020-03-31 11:13:11 +11:00
Peter Barker be6ed0be9f AP_Logger: add stream_slowdown to MAV message 2020-03-31 11:13:11 +11:00
Peter Barker 46a014b399 AP_Notify: remove recursive call to play in next_action
Infinite recursion is bad.

See https://github.com/ArduPilot/ardupilot/issues/13868
2020-03-31 11:06:30 +11:00
Peter Barker 7028f1adba GCS_MAVLink: GCS_FTP: remove redundant more_pending variable
This is taken care of by the "break" statements
2020-03-31 10:38:13 +11:00
Peter Barker a09ac895e9 GCS_MAVLink: remove dead assignment
This value is never used
2020-03-31 10:38:13 +11:00
Peter Barker 2b08af69bc AP_GPS: fix dereference-of-nullptr warning from scan-build
This is kind-of a false positive as this in practise could never be
nullptr.
2020-03-31 10:37:16 +11:00
Michael du Breuil 18baf18041 GCS_MAVLink: Remove redundant assignment to the command
This is done internally by the conversion to mission_item_int_t
2020-03-31 10:35:49 +11:00
Peter Barker 609b66a053 AP_NavEKF3: rename struct log_NKF2a to log_XKF2 2020-03-31 10:25:59 +11:00
Peter Barker 8a28fa2244 AP_Logger: rename struct log_NKF2a to log_XKF2 2020-03-31 10:25:59 +11:00
Gone4Dirt c97cc71382 AP_Camera: Correct trigger behaviour when cmd is switched off then on again 2020-03-31 10:05:40 +11:00
Gone4Dirt d813ee27de AP_Mission: Added immediate trigger for DO_SET_CAM_TRIGG_DIST 2020-03-31 10:05:40 +11:00
Randy Mackay cca361a942 AP_VisualOdom: minor format and comment fixes 2020-03-30 20:31:38 +09:00
Randy Mackay ecf5abc1f2 GCS_MAVLink: minor format fix 2020-03-30 20:20:08 +09:00
Randy Mackay 7a48a3f354 AP_Math: minor comment fix 2020-03-30 20:20:02 +09:00
Henry Wurzburg a637073dad AP_HAL_Chibios: add tenth PWM output to MatekF405-Wing 2020-03-30 11:23:14 +11:00
Peter Barker aeb45bf146 AP_Logger: fix extremely unlikely nullptr dereference in SITL sanity checks 2020-03-29 08:07:29 +11:00
Michael du Breuil 75b133926f AP_Scripting: Cleanups to remove false posive warnings 2020-03-28 21:16:09 +11:00
Michael du Breuil d50e9865bd AP_Scripting: Delete the lua object if we failed to allocate the required memory 2020-03-28 21:16:09 +11:00
Michael du Breuil 6753e99604 AP_Scripting: Add a return around luaL_error
This is the normal method of calling luaL_error which longjmp's away,
and it helps the static analysis tools realize that anything afterwards
will not be reached
2020-03-28 21:16:09 +11:00
Andrew Tridgell e7fdf8fad1 GCS_MAVLink: reduced delay between ftp packets 2020-03-28 15:28:03 +11:00
Andrew Tridgell 5c9ae33151 GCS_MAVLink: support variable sized packets in burst read
this allows packet size to be tailored to the transport
2020-03-28 15:28:03 +11:00
Andrew Tridgell 8a84dbc19e GCS_MAVLink: slow down telemetry during ftp 2020-03-28 15:28:03 +11:00
Andrew Tridgell 5047eb88e2 AP_Scripting: use @ROMFS 2020-03-28 15:28:03 +11:00
Andrew Tridgell 10c709a5a1 AP_Filesystem: use @ROMFS 2020-03-28 15:28:03 +11:00
Andrew Tridgell a8f7212d79 AP_Filesystem: fixed open for write in ROMFS 2020-03-28 15:28:03 +11:00
Andrew Tridgell e0957c2bcc HAL_ChibiOS: include hwdef.dat in ROMFS
this allows download via ftp
2020-03-28 15:28:03 +11:00
Andrew Tridgell c1d4a5bd35 GCS_MAVLINK: prevent closedir() with nullptr 2020-03-28 15:28:03 +11:00
Andrew Tridgell 8d1bf46dab AP_Param: use smaller param area for all 1M flash boards 2020-03-28 15:28:03 +11:00
Andrew Tridgell ebec738b88 AP_Scripting: enable lua scripts in ROMFS 2020-03-28 15:28:03 +11:00
Andrew Tridgell ea57b7b3cd HAL_ChibiOS: embed ROMFS files from hwdef directory
this allows for a scripts/ directory under hwdef board directory to
embed lua scripts
2020-03-28 15:28:03 +11:00
Andrew Tridgell 28082774b6 GCS_MAVLink: use new DirHandle for directory listings 2020-03-28 15:28:03 +11:00
Andrew Tridgell a91c587ef3 AP_Scripting: use new DirHandle for directory listings 2020-03-28 15:28:03 +11:00
Andrew Tridgell b5cc1f236a AP_Logger: use new DirHandle for directory listings 2020-03-28 15:28:03 +11:00
Andrew Tridgell 6583f7c13e AP_Filesystem: added VFS system for multiple backends 2020-03-28 15:28:03 +11:00
Andrew Tridgell 98542d0c0b AP_ROMFS: added directory listing interface 2020-03-28 15:28:03 +11:00
Andrew Tridgell 6360c67858 AP_OSD: avoid build when OSD disabled 2020-03-28 15:28:03 +11:00
Andrew Tridgell 822460ce7d HAL_ChibiOS: fixed strdup() on ChibiOS 2020-03-28 15:28:03 +11:00
Peter Barker 051a7dc298 AP_NavEKF: add onboard LogMessage documentation 2020-03-27 08:05:53 +11:00
Peter Barker 7f0e722a33 AP_Logger: add onboard LogMessage documentation 2020-03-27 08:05:53 +11:00
Andrew Tridgell 6d42e9502b AP_Compass: fixed unreg compass check for AP_Periph
this fixes detection of compasses on peripherals where
COMPASS_MAX_UNREG_DEV is 0
2020-03-26 18:10:13 +11:00
Daniel Magree b3ff81648b Nav_EKF3: varInnovBodyVel assigned the innovation covariance, rather than inverse 2020-03-25 21:52:49 +11:00
Andrew Tridgell 0f6f684bab AP_Airspeed: expose get_corrected_pressure()
needed for AP_Periph
2020-03-25 20:37:00 +11:00
Henry Wurzburg c34c857123 AP_Logger: update logger meta-data, add to gitignore 2020-03-25 14:20:53 +11:00
Peter Hall 53caf516f9 SRV_Channel: add missing ProfiLED description values 2020-03-24 13:37:20 +09:00
Andrew Tridgell f299a4af33 RC_Channel: added RC_OPTION bit for protocol logging 2020-03-24 09:10:36 +09:00
Andrew Tridgell 087da57858 AP_RCProtocol: added logging of RC prototol input bytes 2020-03-24 09:10:36 +09:00
bugobliterator edaf9fa086 AP_Scripting: remove unused user of realloc from lua 2020-03-24 10:32:14 +11:00
bugobliterator 8215537f99 HAL_ChibiOS: deprecate realloc for ChibiOS build, so as to return error when used 2020-03-24 10:32:14 +11:00
bugobliterator afea703aaf AP_HAL: ensure libc realloc is available for all platforms except ChibiOS 2020-03-24 10:32:14 +11:00
bugobliterator 89d03f0243 AP_HAL_ChibiOS: implement standard realloc method 2020-03-24 10:32:14 +11:00
bugobliterator c615bd9874 AP_HAL: implement standard realloc method 2020-03-24 10:32:14 +11:00
bugobliterator 88de9572aa AP_Common: use standard realloc method from HAL 2020-03-24 10:32:14 +11:00
Rishabh 59af2fcbbb AP_WindVane: Fix duplicate values in Param 2020-03-24 10:26:04 +11:00
Rishabh 44d35942b6 AP_RSSI: Fix duplicate values in ANA_PIN 2020-03-24 10:26:04 +11:00
Rishabh 9e8894139c AP_BattMonitor: Fix duplicate values in VOLT_PIN param 2020-03-24 10:26:04 +11:00
Peter Barker f4f2caeef2 AP_Tuning: avoid name collision with Copter's PTUN message 2020-03-22 18:35:14 +11:00
Peter Barker 2b5f15fe78 AP_TECS: add missing field documentation in TECS and TEC2 2020-03-22 18:35:14 +11:00
Peter Barker 35ad582440 AP_Logger: correct various onboard log message documentation 2020-03-22 18:35:14 +11:00
Peter Barker cf0875bb00 AC_AutoTune: add missing axis field to ATUN message 2020-03-22 18:35:14 +11:00
Peter Barker af62d7d7b6 AP_GyroFFT: inline used-only-once Log_Write parameters
This simplifies the code a little (no need to make these constants you
need to go and look up), and also makes external parsing easier.
2020-03-22 18:35:14 +11:00
Henry Wurzburg 8155f5dcbf AP_TECS: fix typos in logger message meta-data 2020-03-22 10:04:53 +11:00
Henry Wurzburg 7bb5d92dcc AP_Logger: fix typos in logger message meta-data 2020-03-22 10:04:53 +11:00
Peter Barker 1065317332 AC_AutoTune: add documentation for ATUN log message 2020-03-21 09:34:43 +11:00
Peter Barker fa50b5f76d AP_Logger: add more metadata for logged messages
LogStructure: add MAG log information

LogStructure: add MODE log information

LogStructure: add PID log information

AP_Logger: add ATT information

AP_Logger: add documentation for BAT log message

LogStructure: add RCIN and RCOU messages

AP_Logger: add VIBE message information
2020-03-21 09:34:43 +11:00
Peter Barker de36b6a16a AP_Logger: add LoggerMessage metadata for GPS message 2020-03-20 13:05:46 +11:00
Peter Barker 55ee3362b9 AP_Logger: add example of documentation for a log structure 2020-03-20 13:05:46 +11:00
Peter Barker 6c56f24e30 AP_TECS: add documentation for TECS and TEC2 2020-03-20 13:05:46 +11:00
Andrew Tridgell fc0b2ef920 HAL_ChibiOS: added half-duplex protection for non-inverted
to prevent output bytes being seen as input bytes we disable half
duplex during transmit. This was previously only done for non-inverted
UARTs. This patch enables it whether we are inverted or not. This
greatly reduces the number of bad input bytes.
2020-03-20 12:37:52 +11:00
Andrew Tridgell 6b35497129 AP_RCProtocol: moved fport variables into class
reduced pollution of global namespace
2020-03-20 12:37:52 +11:00
Andrew Tridgell a1069d85cb AP_RCProtocol: fixed bug in FPort parser
if we got invalid frame->type values we would overrun the buffer and
cause memory corruption. This was the cause of the bug Polarijet found
2020-03-20 12:37:52 +11:00
Peter Hall 3f7ab6289d AP_Scripting: move scripting_test.lua from examples to tests 2020-03-19 15:28:39 -07:00
Peter Hall 524d59ad78 AP_Scripting: add math and strings test scripts 2020-03-19 15:28:39 -07:00
Randy Mackay 05b563cf54 AP_Scripting: fixup comment in set-target-location example script 2020-03-19 15:17:11 -07:00
Randy Mackay 0846746932 AP_Scripting: add copter-fly-vertical-circle example script 2020-03-19 15:17:11 -07:00
Randy Mackay fa0fb9ef34 AP_Scripting: add set-target-velocity example script 2020-03-19 15:17:11 -07:00
Randy Mackay d7fb84c765 AP_Scripting: make bindings 2020-03-19 15:17:11 -07:00
Randy Mackay 60b3c6ca94 AP_Scripting: add bindings for start_takeoff and set_target_velocity_NED 2020-03-19 15:17:11 -07:00
Randy Mackay 849adcd678 AP_Vehicle: add start_takeoff and set_target_velocity_NED for use in scripting 2020-03-19 15:17:11 -07:00
Peter Hall d37efe1b38 AP_Scripting: regenerate bindings 2020-03-19 14:59:34 -07:00
Peter Hall 67bfedd845 AP_Scripting: add button example script 2020-03-19 14:59:34 -07:00
Peter Hall f5052b68a8 AP_Scripting: add binding for AP_Button get_button_state 2020-03-19 14:59:34 -07:00
Peter Hall ecd7e12dd3 AP_Button: add crude debouncing and get_button_state function 2020-03-19 14:59:34 -07:00
Peter Barker a59c3670c8 AP_HAL_ChibiOS: stash lr_thd in watchdog hardfault handler 2020-03-19 16:03:58 +11:00
Peter Barker 97b07d9c84 GCS_MAVLink: add option to get the autopilot to hard-fault itself 2020-03-19 16:03:58 +11:00
Andrew Tridgell f00314a5d1 AP_GPS: removed dead blending code 2020-03-17 12:13:54 +11:00
Andrew Tridgell 9fa034d1de AP_GPS: fixed antenna offset for blending
we were accessing beyond the end of the antenna_offset array
2020-03-17 12:13:54 +11:00
Peter Barker 0665c379de AP_Compass: correct use of incorrect backend-count macro 2020-03-17 11:25:16 +11:00
Patrick José Pereira 1635054c4f AP_Math: Add missing constexpr
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-03-17 10:23:47 +11:00
Peter Barker c9f2b9ff87 AR_AttitudeControl: correct spelling error in param docs 2020-03-16 17:44:35 +11:00
Patrick José Pereira e65cc35fb0 AP_HAL_Linux: Use template to generate raspberry pins
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-03-15 22:35:50 -07:00
Andrew Tridgell 5a4b648cf5 HAL_ChibiOS: disable flash fallback for boards with FRAM
this saves on flash and prevents confusing results when fram fails
2020-03-14 13:47:25 +11:00
Nick Exton 741abaf760 AP_Param: Add static assert on NVM struct sizes 2020-03-14 13:47:25 +11:00
Nick Exton 4cd39a4619 HAL_ChibiOS: improved selection of storage backend 2020-03-14 13:47:25 +11:00
Nick Exton f9ec9c037a AP_RAMTRON: improved driver robustness
- added retries on all operations
- detect errors with a CRC
- fixed detection of fujitsu devices
2020-03-14 13:47:25 +11:00
Andy Piper 104dd7cd75 AP_HAL_ChibiOS: remove board subtype for OmnibusNanoV6 2020-03-14 10:20:46 +11:00
Andrew Tridgell add7615ed9 AP_HAL: removed unnecessary subtypes 2020-03-14 08:35:32 +11:00
Andrew Tridgell 986ad0dc27 HAL_ChibiOS: removed unnecessary subtype defines 2020-03-14 08:35:32 +11:00
Andrew Tridgell c3f2117590 HAL_ChibiOS: fixed R9Pilot board ID 2020-03-14 07:05:22 +11:00
Peter Barker 4c19eb4bab AP_NavEKF3: use compass reference rather than repeatedly asking AHRS for it 2020-03-13 08:26:18 +11:00
Peter Barker 903d81c263 AP_NavEKF2: use compass reference rather than repeatedly asking AHRS for it 2020-03-13 08:26:18 +11:00
Peter Barker 8679e95fca AP_Logger: add comments about message_writer being leaked
These are really "shouldn't happen", and only happen at startup, so
impact of the memory leak is quite limited.

Fixing this requires putting in a virtual destructor on the
MessageWriter class - this and the calls add up to several hundred bytes
of flash.
2020-03-12 15:10:42 +11:00
Andrew Tridgell 87b97f8bee AP_Scripting: added a VTOL failsafe example script
if fwd motor is lost try to make best effort to get home
2020-03-12 08:36:40 +11:00
Andrew Tridgell e815b97c66 AP_Scripting: regenerate bindings 2020-03-12 08:36:40 +11:00
Andrew Tridgell 564740f06b AP_Scripting: added get_vibration and get_target_location bindings 2020-03-12 08:36:40 +11:00
Andrew Tridgell 393a8785f3 AP_AHRS: implement get_vibration method on AHRS 2020-03-12 08:36:40 +11:00
Andrew Tridgell d192544107 AP_Vehicle: added get_target_location() method
for scripting
2020-03-12 08:36:40 +11:00
Andrew Tridgell be7e142888 AP_Scripting: regenerate bindings for RPM 2020-03-12 08:36:40 +11:00
Andrew Tridgell 609b535dda AP_Scripting: added RPM interface 2020-03-12 08:36:40 +11:00
Andrew Tridgell 39fc324854 GCS_MAVLink: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Andrew Tridgell 4f54d9b75f AP_WindVane: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Andrew Tridgell ed37ebede8 AP_Logger: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Andrew Tridgell a93aa27cc1 AP_ICEngine: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Andrew Tridgell 0f83da7e16 AP_Hott_Telem: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Andrew Tridgell 429c21b887 AC_Autorotation: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Andrew Tridgell 22ce90af34 AP_RPM: changed get_rpm() API to be scripting compatible
return a bool and use a reference for the value
2020-03-12 08:36:40 +11:00
Peter Barker 934d05f4ff AP_Compass: correct incorrect and misleading comment 2020-03-11 22:24:36 +11:00
Peter Barker 621d029207 AP_Vehicle: add warning about get_scheduler_task implementations
We don't initialise these values we pass in.  Considering how few times
we need to get this right, requiring it of the implementation would seem
to make sense and save a few bytes.
2020-03-11 22:23:56 +11:00
Andrew Tridgell aaf828c9d4 GCS_MAVLink: consider NO_CHANGE as success for bootloader flash
this prevents GCS users from seeing "update failed"
2020-03-11 16:30:06 +11:00
Andrew Tridgell d8b33bcac9 AP_InertialSensor: suppress expected errors from invensense IMUs 2020-03-11 16:30:06 +11:00
Andrew Tridgell 1540cf958b HAL_ChibiOS: improve error messages for flashing bootloader
send progress as statustext messages
2020-03-11 16:30:06 +11:00
Andrew Tridgell cf7c2b1475 HAL_ChibiOS: suppress SPI timeout error for expected delay 2020-03-11 16:30:06 +11:00
Andrew Tridgell 65cd223023 HAL_ChibiOS: implement in_expected_delay() 2020-03-11 16:30:06 +11:00
Andrew Tridgell 58b4b523fd AP_HAL: added in_expected_delay()
allows for error message suppression when delays are expected
2020-03-11 16:30:06 +11:00
Randy Mackay 06b62107c7 AC_PosControl: move freeze_ff_z to be with other z-axis methods
Also minor comment fix to get_stopping_point_xy
2020-03-11 10:39:18 +09:00
Leonard Hall 25f1a4a4e1 AC_WPNav: add shift_wp_origin_to_current_pos_xy
also add shift_wp_origin_and_destination_to_stopping_point_xy
2020-03-11 10:39:18 +09:00
Leonard Hall 29332ac112 AC_PosControl: add relax_velocity_controller_xy 2020-03-11 10:39:18 +09:00
Andrew Tridgell d35fff5186 HAL_ChibiOS: set CS pins high while in bootloader
this appears to be the root cause of the parameter resets on
CubeOrange. We need to ensure the CS pin is not floating or random
noise on the SPI bus for FRAM can cause the FRAM to become corrupt
2020-03-11 09:53:06 +11:00
Gone4Dirt 537a259ab6 AP_Mission: added to rewind mission on resume with MAV_CMD_DO_SET_RESUME_REPEAT_DIST 2020-03-11 09:48:40 +11:00
Peter Barker ebfa910774 GCS_MAVLink: GCS_Dummy: add missing CR to console output of statustexts
send_text and friends don't expect the caller to add the CR; the GCS
will add one.  Since we're jsut emitting to console, add one ourselves.
2020-03-10 19:07:08 +11:00
Peter Barker 1db081b095 AP_Vehicle: move AP_PARM_KEY_DUMP function up to AP_Vehicle base class
Common to all vehicles now, including Tracker
2020-03-10 11:00:14 +11:00
Peter Barker d0edfd2c0d AP_HAL_ChibiOS: VRUBrain-v51: reduce AP_MAX_EMBEDDED_PARAM to 1024
Stops us overflowing on Copter and Plane builds
2020-03-10 10:50:18 +11:00
Peter Barker f8058bcf70 AP_HAL_Linux: avoid segfaults during early panics
singletons failing to be singleton can cause the segfaults.  This is
more a tidiness thing - but better not to have cascading failures.
2020-03-10 10:45:09 +11:00
Peter Barker 19249a13fd AP_Scripting: tell the user where their scripts directory is on failure 2020-03-10 08:43:03 +09:00
Peter Hall e95e996cc4 AP_Scripting: Add led matrix examples 2020-03-10 10:37:26 +11:00
Peter Hall bf76a8c727 AP_Scripting: update LED_roll example 2020-03-10 10:37:26 +11:00
Peter Hall 3002089396 AP_HAL_SITL: update function names 2020-03-10 10:37:26 +11:00
Peter Hall e1c2977adc AP_Notify: support ProfiLEDs 2020-03-10 10:37:26 +11:00
Peter Hall fe5779fd88 AP_HAL_ChibiOS: add support for ProfiLEDs 2020-03-10 10:37:26 +11:00
Peter Hall 6ab13333c2 AP_HAL: support ProfiLEDs 2020-03-10 10:37:26 +11:00
Peter Hall f1fee1ebc5 AP_SerialLED: support ProfiLEDs 2020-03-10 10:37:26 +11:00
Peter Hall 8dccea4a15 AP_Scripting: regenerate bindings 2020-03-10 10:37:26 +11:00
Peter Hall 426f5e6180 AP_Scripting: support ProfiLEDs 2020-03-10 10:37:26 +11:00
Peter Hall 001f71e3de SRV_Channel: add ProfiLED ouputs 2020-03-10 10:37:26 +11:00
Andrew Tridgell 16f34778fc HAL_ChibiOS: added f103-HWESC target 2020-03-04 16:21:06 +11:00
Andrew Tridgell bca1bd2c72 HAL_ChibiOS: added f303-HWESC firmware 2020-03-04 16:21:06 +11:00
Randy Mackay 1486421581 AP_Scripting: rename arming-check-batt-temp example script 2020-03-04 11:28:10 +09:00
Randy Mackay 8d12c25555 AP_Vehicle: formatting fixes 2020-03-03 10:06:38 -07:00
Randy Mackay 2526aaeb74 AP_Scripting: set-target-location example script 2020-03-03 10:06:38 -07:00
Randy Mackay ae8c8b71b2 AP_Scripting: make bindings 2020-03-03 10:06:38 -07:00
Randy Mackay 989241a6bd AP_Scripting: fix limits on Location alt field binding 2020-03-03 10:06:38 -07:00
Randy Mackay e8699ab9fe AP_Scripting: add Location.alt to bindings 2020-03-03 10:06:38 -07:00
Randy Mackay 1e2fc444b6 AP_Scripting: add set_target_location binding 2020-03-03 10:06:38 -07:00
Randy Mackay 6f5d733ba9 AP_Vehicle: add set_target_location method 2020-03-03 10:06:38 -07:00
Peter Hall fc0d845b6c AP_Scripting: add NMEA decode example 2020-03-03 09:57:07 -07:00
Peter Barker 12f7337030 AP_Radio: correct for recent semaphore bool/void changes 2020-03-03 21:56:33 +09:00
Peter Barker a32e54ea17 AP_Arming: correct toymode compilation for recent disarm-reason changes 2020-03-03 21:56:33 +09:00
Rishabh f3e66055e5 GCS_MAVLink: Alert GCS if user tries calibration while vehicle is armed 2020-03-03 11:37:19 +11:00
Rishabh cbccdfa8a3 AP_Compass: Alert GCS if user tries to calibrate compass while vehicle is armed 2020-03-03 11:37:19 +11:00
Peter Barker d1f74faed7 AP_Notify: remove bad HIGH/LOW defines
These are just terrible defines to have in a header which can be
included into random files.  These symbols can confuse construction of
enumerations, for example.
2020-03-03 10:46:06 +11:00
Peter Barker 09562e1f13 AP_HAL_Linux: use constants for high/low rather than defines, like ChibiOS
These are really bad defines to have hanging around for general use.
2020-03-03 10:46:06 +11:00
Peter Barker 1a123e5f8d AP_HAL_ChibiOS: avoid referencing flash sector/page 22 on 1MB boards 2020-03-03 10:13:53 +11:00
Peter Barker c917cd4dbb AP_HAL_Linux: make a static-const hal references references to external symbol 2020-03-03 10:12:14 +11:00
Peter Barker 2d2fdf8bd0 AP_HAL_ChibiOS: make a static-const hal a reference to the external symbol 2020-03-03 10:12:14 +11:00
Peter Hall 2f036c65f3 AP_Motors: MotorsMulticopter fix floating boost output 2020-03-02 18:22:30 +09:00
Peter Hall 71f1755c97 AP_Scripting: update plane-wind-fs example 2020-02-27 18:33:56 -07:00
Peter Hall 6587653e14 AP_Scripting: regnerate bindings 2020-02-27 18:07:31 -07:00
Peter Hall 129dc16bdb AP_Scripting: add mission scripting example 2020-02-27 18:07:31 -07:00
Peter Hall 46714d69a5 AP_Mission: add get id functions for scripting 2020-02-27 18:07:31 -07:00
Peter Hall 370b6473a2 AP_Scripting: add AP_Mission bindings 2020-02-27 18:07:31 -07:00
Andrew Tridgell fbbba887e5 AP_Notify: implement SIM_LED_LAYOUT
added support for luminousbee layout
2020-02-27 13:12:26 +11:00
Andrew Tridgell 09b272b840 SITL: added SIM_LED_LAYOUT parameter
for layout of simulated LEDs
2020-02-27 13:12:26 +11:00
Andrew Tridgell ccc7d48c20 HAL_ChibiOS: reserve plenty of DMA memory for luminousbee4 2020-02-27 13:12:26 +11:00
Andrew Tridgell e582432a2f AP_Scripting: regen bindings 2020-02-27 13:12:26 +11:00
Andrew Tridgell 2277e22bc7 AP_SerialLED: added define for LED limit 2020-02-27 13:12:26 +11:00
Andrew Tridgell 5ad4ceef71 AP_SerialLED: allow more than 32 LEDs 2020-02-27 13:12:26 +11:00
Andrew Tridgell fe86d8bb0c AP_Scripting: adjust for updated LED API 2020-02-27 13:12:26 +11:00
Andrew Tridgell dbba89a024 AP_Notify: allow up to 64 LEDs on a pin 2020-02-27 13:12:26 +11:00
Andrew Tridgell 09d10df3a3 HAL_SITL: allow more than 32 LEDs on a pin 2020-02-27 13:12:26 +11:00
Andrew Tridgell 669b98c6df HAL_ChibiOS: allow more than 32 WS2812 LEDs on a pin 2020-02-27 13:12:26 +11:00
Andrew Tridgell 5d15d867b5 AP_HAL: adjust LED API to allow more than 32 LEDs on a pin 2020-02-27 13:12:26 +11:00
Andrew Tridgell 5bfd607300 HAL_ChibiOS: added luminousbee4 flight controller 2020-02-27 13:12:26 +11:00
Peter Barker fbe2e75b9f GCS_MAVLink: divide time allowed to send messages fairly 2020-02-27 08:49:59 +11:00
murata c6f12e519b AP_SerialManager: Add a description 2020-02-26 12:18:40 +11:00
Bill Geyer bf345b0dd4 AC_AttitudeControlHeli: update filter parameter desc mins 2020-02-26 08:02:27 +09:00
Randy Mackay aff854f485 AC_AttitudeControl: update param ranges 2020-02-26 08:02:27 +09:00
Randy Mackay 6297306492 AP_LandingGear: add OPTIONS param to auto deploy and retract 2020-02-26 08:01:00 +09:00
Randy Mackay cc33c8d116 AP_Scripting: make bindings 2020-02-25 19:55:54 +09:00
Randy Mackay c0bc696b86 AP_Scripting: add arming-check-batt-temp example script 2020-02-25 19:55:54 +09:00
Randy Mackay ccaa74655c AP_Scripting: support external authorisation for arming 2020-02-25 19:55:54 +09:00
Randy Mackay 05a8e34d5c AP_Arming: support auxiliary authorisation 2020-02-25 19:55:54 +09:00
Randy Mackay 2ee5f9dcc5 AP_Logger: ARM msg logs ArmChecks as uint32_t 2020-02-25 19:55:54 +09:00
Randy Mackay df8bf27a7f AP_Arming: get_enabled_checks returns uint32_t 2020-02-25 19:55:54 +09:00
Randy Mackay 8ad9a49900 AP_Mount: ignore rc trim when calculating desired mount angles 2020-02-25 17:38:24 +09:00
Randy Mackay cd38940ecf RC_Channel: formatting fixes 2020-02-25 17:38:24 +09:00
Randy Mackay 77d5165c01 RC_Channel: add norm_input_ignore_trim
same as norm_input but ignores the trim value
2020-02-25 17:38:24 +09:00
Andrew Tridgell 8f83bf5e80 AP_Compass: fixed in-flight learning for all compasses
after recent changes only first compass was learnt

See
https://discuss.ardupilot.org/t/break-in-latest-master-in-flight-compass-calibration/52602
2020-02-25 12:40:27 +11:00
Peter Barker 727c12c388 GCS_MAVLink: move initialisation of serial and gcs to AP_Vehicle 2020-02-25 11:50:55 +11:00
Peter Barker 2ede027635 AP_Vehicle: move initialisation of serial and gcs to AP_Vehicle 2020-02-25 11:50:55 +11:00
Peter Barker 2b7af4d70b AP_Vehicle: fold init_vehicle back into AP_Vehicle init method 2020-02-25 11:47:52 +11:00
Peter Barker a7c493d037 AP_BoardConfig: fold init_vehicle back into AP_Vehicle init method 2020-02-25 11:47:52 +11:00
Peter Hall 0ca6b7cf77 AP_HAL_ChibiOS: retry neopixel until successful send 2020-02-25 11:15:55 +11:00
Peter Barker e2c9f6a8a1 GCS_MAVLink: add flags to MAV dataflash log
holds various pieces of simple information about a link
2020-02-25 10:59:22 +11:00
Peter Barker 10c9bc3659 AP_Logger: add flags to MAV dataflash log
holds various pieces of simple information about a link
2020-02-25 10:59:22 +11:00
Gone4Dirt d813a70c8d AP_Mission: Added force resume for when MIS_RESTART=1 2020-02-25 10:05:12 +11:00
Andy Piper 3b25a8ae2e AP_GyroFFT: adjust default FFT lengths for boards that can cope and are likely to have BMI088 2020-02-25 08:35:09 +11:00
Andy Piper 509341957f AP_HAL: check for div0 in quinn's estimator 2020-02-25 08:35:09 +11:00
Andy Piper 507bd9eea9 AP_InertialSensor: add in user-specified background noise when there is no rpm noise 2020-02-25 08:35:09 +11:00
Andrew Tridgell 41b74ec014 HAL_ChibiOS: use DNA by default for all AP_Periph builds
this makes multiple sensors of the same type on the bus easier
2020-02-22 12:28:16 +11:00
Andrew Tridgell 6139860a64 HAL_ChibiOS: use default USB IDs for fmuv3 2020-02-22 12:17:05 +11:00
Peter Barker 4d0c61970d ArduSub: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker 347f64264d RC_Channel: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker f8f4ed7ee0 GCS_MAVLink: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker 1e82ae4676 AP_Scripting: log disarm method 2020-02-22 12:16:29 +11:00
Peter Barker 7b9cdd6d06 AP_Arming: log disarm method 2020-02-22 12:16:29 +11:00
Andy Piper 41b41c05f3 AP_InertialSensor: scale SITL motor noise by SIM_VIB_MOT_MULT 2020-02-22 11:15:37 +11:00
Andy Piper 2033cf3b4a SITL: add SIM_VIB_MOT_MULT to allow motor noise to have a different amplitude to the fixed frequency noise 2020-02-22 11:15:37 +11:00
Andy Piper c0c61660b0 SITL: quadplane updates 2020-02-22 11:15:37 +11:00
Andy Piper dcdd1707f7 AP_HAL_SITL: make throttle comply with quadplane dynamics 2020-02-22 11:15:37 +11:00
Andy Piper 0e9b2a26c5 AP_InertialSensor: SITL the raw sample rate is not the same as the sensor rate
use regulated time for frequency noise to avoid spurious harmonics
SITL sensors must be true separate instances
don't compile in FFT structures if DSP disabled
2020-02-22 11:15:37 +11:00
Andy Piper a16bb2f188 AP_Scheduler: allow registration of tasks at loop rate 2020-02-22 11:15:37 +11:00
Andy Piper 7663c67eec AP_Arming: gyrofft arming checks 2020-02-22 11:15:37 +11:00
Andy Piper 6613d4da3d AP_Vehicle: add FFT configuration and initialization
add arming checks to validate FFT performance
allow gyros to be sampled at either the fastloop rate or gyro rate.
add gyro and parameter update loops for GyroFFT
add GYRO_FFT aux function
save FFT results on disarm
2020-02-22 11:15:37 +11:00
Andy Piper 4c1816a983 Copter: port betaflight in-flight fft analysis to arducopter and expose as a log message
add harmonic notch tracking mode
call AP_GyroFFT::update_freq_hover() from update_throttle_hover()
move gyrofft configuration and control to AP_Vehicle
move fft logging to fft library
2020-02-22 11:15:37 +11:00
Andy Piper 6f5b991f28 Filter: add harmonic notch dynamic tracking mode
move definition of HNF_MAX_HARMONICS
2020-02-22 11:15:37 +11:00
Andy Piper 127a0e9b41 AP_HAL_Linux: add in empty dsp driver 2020-02-22 11:15:37 +11:00
Andy Piper 7d36bc4422 AP_GyroFFT: new FFT library for motor peak analysis using HAL DSP abstraction
add dynamic gyro windows
control inclusion based on HAL_WITH_DSP and GYROFFT_ENABLED
target appropriate ARM cpus
constrain window sizes to be achievable
improve FFT signal accuracy through configurable window overlap and quinn's estimator
calculate energy weighted center frequency
add support for learning hover frequency and throttle reference
calculate power spectrum rather than amplitude
record noise as a per-bin power spectrum
calculate true SNR per-bin and use that to determine there is a signal
add user config for SNR signal level
constrain frequency scanning to MAXHZ
calculate and learn the peak bandwidth at the configured attenuation
allow enabling/disabling dynamically through rc function
MAXHZ should be below Nyquist
Incorporate full range of MAXHZ to MINHZ
update FFT analysis in a separate thread
allocate memory in a specific region
constrain window size by CPU class
do not allocate any resources when not enabled
Prevent self-check and analysis interfering with each other
put configuration and initialization to AP_Vehicle
add logging
fix significant issues with threading, locking and sample buffer access
use both calculated noise peaks together with the harmonic notch configuration to detemine which peak represents the fundamental harmonic that should be tracked
record harmonic fit
add CMSIS 5 libraries and headers
allow larger FFT lengths on Linux and SITL
2020-02-22 11:15:37 +11:00
Andy Piper 7571b4d95c AP_HAL_SITL: SITL version of DSP implementation 2020-02-22 11:15:37 +11:00
Andy Piper 495a89459f AP_HAL_Empty: empty implementation of HAL FFT 2020-02-22 11:15:37 +11:00
Andy Piper 3d0cf7e12a AP_HAL_ChibiOS: hardware M4-Cortex and M7-Cortex (and H7) implementation of HAL FFT abstraction
implements an FFT engine based on the betaflight feature using ARM hardware accelerated CMSIS library
make the FFT feature optional
add dynamic gyro windows
add quinns and candans estimators and record in DSP state
disable DSP for boards with limited flash
calculate power spectrum rather than amplitude
start/analyse version of analysis to support threading
allocate memory in a specific region
constrain window size by CPU class
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Andy Piper f4a99a1589 AP_HAL: hardware abstraction for FFT.
control inclusion of FFT based on HAL_WITH_DSP and HAL_GYROFFT_ENABLED. target appropriate ARM cpus
define hanning window and quinn's estimator
start/analyse version of FFT to support threading
allocate memory in a specific region
calculate frequency and noise bandwidth of two noisiest peaks
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Andy Piper 3d9776dd6d AP_InertialSensor: expose statically filtered gyro values for FFT analysis and allow sampling to gyro window for FFT analysis.
FFT windows can be dynamically allocated
add harmonic notch dynamic tracking mode
unwind gyro window allocation in the case of failure
allow access to harmonic notch harmonics
2020-02-22 11:15:37 +11:00
bnsgeyer 593ff6818d AC_WPNAV:make speed changes during missions obey WPNAV_ACCEL
Includes commits by rmackay9
AC_WPNav: fixup max speed acceleration
AC_WPNav: simplify the initialisation of poscontrol's max speed
          Changed at Leonard's request to keep things simpler
2020-02-22 08:53:41 +09:00
Randy Mackay fc2e15651e AC_PosControl: allow smaller changes in max speed and accel
also small changes in max speed for z-axis
2020-02-22 08:53:41 +09:00
ashvath100 1c77df9169 SITL: Rename morse-rover to morse-skid 2020-02-21 08:23:54 +09:00
yaapu b4bdc76a53 AP_RCProtocol: handle 0x10 and 0x00 frames, check scheduler delay and fix incoming crc
Respond to 0x10 when the rx is controlling bandwidth, else respond only to 0x00
but in this case never exceed a max number of consecutive frames.
Always respond to polling and if necessary send a null frame.
moved delay check after get_telem_data() to account for scheduler time
align incoming to outgoing crc
2020-02-21 09:29:15 +11:00
yaapu 0c5618c9e7 AP_Frsky_Telem: add semaphores to ahrs access and fix potential array out of bounds access
use a semaphore for non atomic ahrs calls and fix a potential array out of bounds
access for faster than sport telemetry links.
2020-02-21 07:54:59 +11:00
Pierre Kancir 95ee01082f AP_HAL_SITL: update search for dumpstack.sh 2020-02-20 20:41:26 +11:00
Andy Piper 387b5e7002 AP_Camera: bug fixes to support 5-key remote RunCams
allow the boot-time recording state to be configured
only process events on state transitions. Simplifies logic and debugging.
support regular Split 2s
allow menu enter/exit in 5-key mode
match betaflight with 5-Key OSD which requires an "enter" key
2020-02-20 19:58:43 +11:00
Andrew Tridgell 20ea1a3dc7 GCS_MAVLink: don't send statustext from other than main thread
This fixes high stack usage in the RCIN thread when it notifies the
GCS of a new RCIN protocol. The problem is severe when signing is
enabled, as signing adds over 500 bytes to stack cost of sending a
mavlink msg

fixes issue #13615
2020-02-20 10:39:29 +11:00
Michael du Breuil d7a59bc449 AP_Scripting: Reduce the sleep time with no scripts
Lowering the sleep time when no scripts are pending, causes starting a
REPL session to respond much faster (this cuts the latency from up to 10
seconds to 1 second before the session is ready to start).

Also lowers the default scripting debug level to hide the statustext
from users, as in the general case this is just a spammy message if it
occurs, and we should be finding better reporting bits to get this to
the user.
2020-02-19 13:24:23 -07:00
Andrew Tridgell 772438f3ed AP_NavEKF3: fixed use of antenna position when switching GPS primary
when GPS primary switches we were using a position which had not been
corrected for antenna offset. This was used for calculating the reset
for sensor change.

This fixes that (trivial fix) and also fixes a similar issue on
position reset
2020-02-19 18:12:54 +11:00
Andrew Tridgell 9030590a88 AP_NavEKF2: fixed use of antenna position when switching GPS primary
when GPS primary switches we were using a position which had not been
corrected for antenna offset. This was used for calculating the reset
for sensor change.

This fixes that (trivial fix) and also fixes a similar issue on
position reset
2020-02-19 18:12:54 +11:00
Andrew Tridgell b49a76bb20 AP_Filesystem: fixed EOF on file read
should return number of bytes read. This fixes an issue with MAVProxy
ftp client
2020-02-19 18:11:41 +11:00
Andrew Tridgell 1cb711d35d AP_Filesystem: make SITL take paths relative to starting directory
this makes SITL filesystem behave more like a real device
2020-02-19 18:11:41 +11:00
Siddharth Purohit f00a39af52 AP_Compass: run style script on Compass.cpp 2020-02-19 13:59:53 +09:00