Commit Graph

22600 Commits

Author SHA1 Message Date
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
Siddharth Purohit
faacd03e3a AP_Common: add method that can help to put contraint on accessor type 2020-02-19 13:59:53 +09:00
Siddharth Purohit
1d2985e967 AP_Param: add method to find key of top level group variable by pointer 2020-02-19 13:59:53 +09:00
Siddharth Purohit
8a7dcafa0f SITL: add parameter MAG_DEVID in SITL 2020-02-19 13:59:53 +09:00
Siddharth Purohit
8d227d401a AP_Compass: modify compass driver to support consistent ordering and hotplugging 2020-02-19 13:59:53 +09:00
Siddharth Purohit
545331024f AP_NavEKF3: Primary compass is always at serial number 0 2020-02-19 13:59:53 +09:00
Siddharth Purohit
4cca1c307c AP_NavEKF2: Primary compass is always at serial number 0 2020-02-19 13:59:53 +09:00
Siddharth Purohit
7da331535c AP_Arming: add arming message for compass not detected but assigned 2020-02-19 13:59:53 +09:00
Siddharth Purohit
defc1b5fcb ArduCopter: add arming message for compass not detected but assigned 2020-02-19 13:59:53 +09:00
Siddharth Purohit
653fad44d4 AP_Arming: Primary Compass is always at serial# 0 2020-02-19 13:59:53 +09:00
Peter Barker
baf375e7a0 AP_WheelEncoder: add param docs for new PID filter parameters 2020-02-19 15:09:16 +11:00
Peter Barker
e85a4dcd7d AP_Soaring: remove empty Units: parameter doc entries
These break parameter generation
2020-02-19 15:09:16 +11:00