Commit Graph

20891 Commits

Author SHA1 Message Date
Andrew Tridgell 60a6f1b04a AP_HAL: removed most HAL_INS_* defines
not used any more
2019-08-28 06:54:11 +10:00
Andrew Tridgell 1c92ecc89f AP_InertialSensor: removed old method of specifying most IMUs
and removed dangerous default values for rotations
2019-08-28 06:54:11 +10:00
Andrew Tridgell 0667747506 HAL_ChibiOS: convert some more boards to new IMU specifiers 2019-08-28 06:54:11 +10:00
Andrew Tridgell 96180018fb AP_HAL: convert HAL_Linux to use HAL_INS_PROBE_LIST
makes for much simpler addition of new boards, especially with more
than one IMU
2019-08-28 06:54:11 +10:00
Jaaaky d7abd636ac AP_HAL_SITL: Fix build with --sitl-flash-storage option 2019-08-28 06:23:04 +10:00
Andrew Tridgell dcd9003831 Revert "AP_Mission: Better AUTO watchdog restore"
This reverts commit d774bf3ea5.
2019-08-27 13:18:12 -06:00
Andrew Tridgell 5ce4ff916e HAL_ChibiOS: fixed Pixhawk1 gyro orientation
this was broken by the recent switch to hwdef.dat for orientations
2019-08-27 19:29:37 +10:00
Andrew Tridgell c99923d500 AP_InertialSensor: require gyro orientations in LSM9DS probe
this prevents a bug where they are missing in hwdef.dat
2019-08-27 19:29:37 +10:00
Andrew Tridgell d40835c666 AP_Logger: use AP::FS().set_mtime() 2019-08-27 15:40:43 +10:00
Andrew Tridgell b489e8a655 AP_Filesystem: added set_mtime() call 2019-08-27 15:40:43 +10:00
Andrew Tridgell 0ffe2e75be HAL_ChibiOS: fixed warnings 2019-08-27 15:40:43 +10:00
Andrew Tridgell df4cb00970 AP_Logger: added LOG_FILE_TIMEOUT parameter
this allows for cards to be removed and re-inserted while continuing
logging
2019-08-27 15:40:43 +10:00
Andrew Tridgell b577787f68 AP_Scripting: use AP_Filesystem API 2019-08-27 15:40:43 +10:00
Andrew Tridgell 667b4e045a AP_Logger: convert to use AP_Filesystem 2019-08-27 15:40:43 +10:00
Andrew Tridgell fb50ec2a1d AP_Notify: convert to use AP_Filesystem 2019-08-27 15:40:43 +10:00
Andrew Tridgell d160f14856 AP_UAVCAN: convert to use AP_Filesystem 2019-08-27 15:40:43 +10:00
Andrew Tridgell a4860afd32 AP_Terrain: convert to use AP_Filesystem 2019-08-27 15:40:43 +10:00
Andrew Tridgell a4258639c8 AP_Proximity: use strtol instead of sscanf 2019-08-27 15:40:43 +10:00
Andrew Tridgell 9d760a2956 HAL_ChibiOS: disable re-entrancy in FATFS
not needed now we have a semaphore in AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell bf79b65e07 HAL_ChibiOS: simplify stubs code 2019-08-27 15:40:43 +10:00
Andrew Tridgell d1565a96c5 HAL_ChibiOS: wrap cacheBuffer functions
needed to avoid problem with end() method in UARTDriver shadowing with
F7 implementation of cache macros
2019-08-27 15:40:43 +10:00
Andrew Tridgell b867ef35c0 HAL_ChibiOS: use AP_Filesystem API 2019-08-27 15:40:43 +10:00
Andrew Tridgell 692abb11fa AP_Filesystem: define new filesystem API 2019-08-27 15:40:43 +10:00
Michael du Breuil 7fdc9fef12 AP_Scripting: Garbage collect after each run of a script
For some reason this resolves a memory leak in a tight loop of file
open, close. This also extends the memory debug printing to be a bit
more useful.
2019-08-27 13:54:54 +10:00
Michael du Breuil 1484a12f4b AP_HAL_Linux: Fix bad check order on heap_realloc 2019-08-27 13:54:54 +10:00
Michael du Breuil 2d40250f9b AP_HAL_SITL: Fix bad check order on heap_realloc 2019-08-27 13:54:54 +10:00
Andrew Tridgell b30f3697d2 HAL_ChibiOS: fixed build without ISR limit 2019-08-27 10:29:56 +10:00
Andrew Tridgell 97c56c068e HAL_ChibiOS: update board IDs for AP_Periph firmwares 2019-08-27 10:29:56 +10:00
Andrew Tridgell 63f39c2bd6 HAL_ChibiOS: fixed build of iomcu firmware 2019-08-27 10:29:56 +10:00
Andrew Tridgell 444af9e638 AP_BoardConfig: fixed AP_Periph build error 2019-08-27 10:29:56 +10:00
Andrew Tridgell e8e18959f7 AP_Baro: fixed baro build with AP_Periph
no GCS available
2019-08-27 10:29:56 +10:00
Andrew Tridgell a19e55e83c AP_Baro: added BMP388 driver 2019-08-27 10:29:56 +10:00
Andrew Tridgell 64921b64f5 HAL_ChibiOS: enable sensors in peripheral firmwares 2019-08-27 10:29:56 +10:00
Andrew Tridgell fa76d1fbe6 HAL_ChibiOS: disable watchdog save in bootloader 2019-08-27 10:29:56 +10:00
Andrew Tridgell 5cbe85ee19 HAL_ChibiOS: allow for ADC and clock overrides 2019-08-27 10:29:56 +10:00
Andrew Tridgell dc89d10ccf HAL_ChibiOS: added hwdef.dat for CUAV_GPS 2019-08-27 10:29:56 +10:00
Andrew Tridgell c8806acaf5 HAL_ChibiOS: use AP_PERIPH env var 2019-08-27 10:29:56 +10:00
Andrew Tridgell cbc83d68cd HAL_ChibiOS: allow for CAN enable override on F4 2019-08-27 10:29:56 +10:00
Andrew Tridgell fb68fa8bc9 HAL_ChibiOS: fixed typo for 512k F4 parts 2019-08-27 10:29:56 +10:00
Andrew Tridgell e51a1a88df HAL_ChibiOS: initial hwdef-bl.dat for CUAV CAN GPS 2019-08-27 10:29:56 +10:00
Andrew Tridgell 66ab585a24 HAL_ChibiOS: setup defaults for CAN app versions 2019-08-27 10:29:56 +10:00
Andrew Tridgell d711bed405 HAL_ChibiOS: set default node ID of 117
this allows for flight controllers without DNA support
2019-08-27 10:29:56 +10:00
Andrew Tridgell ababe1e81d HAL_ChibiOS: disable UART support in f103-periph bootloader 2019-08-27 10:29:56 +10:00
Andrew Tridgell 2facfe0baa HAL_ChibiOS: support empty UART_ORDER
for CAN bootloader without uart support
2019-08-27 10:29:56 +10:00
Andrew Tridgell f4576ec8f3 AP_Compass: reduce firmware size for AP_Periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell 0ec3f80bbe AP_Compass: enable LIS3MDL on I2C and RM3100 on SPI 2019-08-27 10:29:56 +10:00
Andrew Tridgell 9a7b52fd15 HAL_ChibiOS: added hwdef.dat for f103-periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell 16bdaaa1af HAL_ChibiOS: added support for STM31F10x for AP_Periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell 24e05e96e7 AP_HAL: define support for LIS3MDL_I2C and RM3100_SPI 2019-08-27 10:29:56 +10:00
Andrew Tridgell 01472aa795 AP_FlashStorage: added support for STM32F1xx 2019-08-27 10:29:56 +10:00
Andrew Tridgell 291d72601b AP_GPS: enabled reduced size for AP_Periph support 2019-08-27 10:29:56 +10:00
Andrew Tridgell f897eae89d AP_Param: enable reduced size support for AP_Periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell 88fbbfba09 AP_Vehicle: added AP_Periph vehicle type 2019-08-27 10:29:56 +10:00
Andrew Tridgell d005f066a9 StorageManager: enable use of a single storage region 2019-08-27 10:29:56 +10:00
Michael du Breuil 1e66457755 AP_Scripting: Allow the bindings to descirbe any build dependencies needed
Scripting has a hard requirement on AP_Terrain being available, this
allows us to emit a cleaner error message if you have disabled terrain
but not scripting
2019-08-27 09:45:35 +10:00
Peter Barker 5d9b332bcb GCS_MAVLink: log exectuted COMMAND_LONG and COMMAND_INT packets 2019-08-27 09:32:00 +10:00
Peter Barker 631725f817 AP_Logger: add Write_Command for writing out received mavlink commands 2019-08-27 09:32:00 +10:00
Peter Barker 5010de9560 AP_Notify: add static asserts for array size
We index into these arrays so ensuring their size is worthwhile
2019-08-27 09:29:11 +10:00
Michael du Breuil ee3fcf49c6 AP_BattMonitor: Detect bad configuration of failsafes 2019-08-26 18:57:59 +01:00
Michael du Breuil e47f97c5d3 AP_HAL: Fix bad buffer termination 2019-08-26 18:57:59 +01:00
Stone white ec911710c9 hwdef: Enable Spektrum 3.3V VDD Power on fmuv5 2019-08-26 17:27:02 +10:00
Michael du Breuil 56e35e0712 AP_HAL_ChibiOS: Remove almost redundant code duplication from the HAL 2019-08-26 17:24:09 +10:00
Andrew Tridgell 66dc36ef88 AP_Logger: ifdef out _need_rtc_update 2019-08-26 15:41:44 +10:00
Andrew Tridgell 4418495c99 AP_Logger: use UNUSED_RESULT
Co-Authored-By: Francisco Ferreira <OXINARF@users.noreply.github.com>
2019-08-26 15:41:44 +10:00
Andrew Tridgell 8e58cb993d AP_Logger: fix timestamp on log files opened before GPS lock 2019-08-26 15:41:44 +10:00
Andrew Tridgell ffe0f338d3 HAL_ChibiOS: enable utime() API 2019-08-26 15:41:44 +10:00
murata 1a8e644437 AP_Logger: GPA/GPA2 Change the unit of DELTA. 2019-08-26 14:22:47 +10:00
Andrew Tridgell 4ca48f225d SITL: send vicon data at 70ms intervals
this matches the max rate that EK2 will accept this data
2019-08-26 12:27:31 +10:00
Andrew Tridgell cfc37f2089 GCS_MAVLink: log corrected timestamp for vision data
this allows for debugging of link lag issues
2019-08-26 12:27:31 +10:00
Andrew Tridgell 414d3eb670 AP_NavEKF2: don't fuse GPS when EK2_GPS_TYPE=3
when using a vision position system, the user may have vision derived
GPS data coming in using GPS_INPUT msgs. We should not fuse these when
EK2_GPS_TYPE=3 as we end up fusing both vision data and GPS data,
which does not work with the current EK2 code

This change makes it possible to run EK2 and EK3 in parallel in a
Vicon, wityh EK2 using VISION_POSITION_ESTIMATE data and EK3 using
GPS_INPUT (with yaw) data.
2019-08-26 12:27:31 +10:00
Jaaaky fee3136b44 AP_Baro: Fix floating point exception with watchdog reset
Fixes #12132
2019-08-26 12:24:21 +10:00
Henry Wurzburg 00c111651a ChiBios: Omnibusf4pro hwdef tweak to allow active or passive buzzer 2019-08-26 12:22:53 +10:00
Andrew Tridgell aeb58cede1 HAL_ChibiOS: I2C timeout should be send+recv, not MAX(send,recv)
MAX() is right for SPI, not I2C
2019-08-26 09:13:39 +10:00
Andrew Tridgell 4027d61e17 AP_Scheduler: log I2C ISR count 2019-08-26 09:13:39 +10:00
Andrew Tridgell 7d5c0e92ae AP_Logger: added logging of I2C ISR count 2019-08-26 09:13:39 +10:00
Andrew Tridgell 578e5dfdaa HAL_ChibiOS: add up i2c ISR count 2019-08-26 09:13:39 +10:00
Andrew Tridgell 9741ac0b64 AP_HAL: added I2C ISR count to PersistentData 2019-08-26 09:13:39 +10:00
Jaaaky d774bf3ea5 AP_Mission: Better AUTO watchdog restore
This allows to run any commands following the last nav_waypoint
that may be required or change flight behavior for following wps
2019-08-25 06:40:34 -06:00
Andrew Tridgell f8cfbb8062 HAL_ChibiOS: added ISR limit on I2C
this will prevent any possibility of an I2C interrupt storm. This is
designed to address the most likely cause of #11642
2019-08-25 17:12:16 +10:00
Andrew Tridgell b8602abdeb AP_InternalError: added error for i2c isr error 2019-08-25 17:12:16 +10:00
Peter Barker 2acc53ec17 GCS_MAVLink: break out of loop statement once we have a result 2019-08-24 15:33:50 +10:00
Peter Barker 052e721622 GCS_MAVLink: tweak timings debug messages 2019-08-24 15:33:50 +10:00
Peter Hall db87285153 AR_WPNav: add oa_wp_bearing_cd function 2019-08-24 09:05:29 +09:00
Peter Hall c445362fae AR_WPNav: fix wp_bearing_cd calc 2019-08-23 14:44:37 +09:00
murata 4754710e60 RangeFinder: Change to coding style (NFC)
RangeFinder: RangeFinder: Change to coding style (NFC)
2019-08-23 10:11:30 +09:00
Peter Barker 2049e86dda AP_Param: optionally return parameter flags in AP_Param::find(...) 2019-08-22 09:23:56 +10:00
Peter Barker 70daf0010b AP_Param: add param flag bit indicating internal-use-only 2019-08-22 09:23:56 +10:00
Peter Barker 9cf9497552 AP_Mission: mark MIS_TOTAL as internal-use-only 2019-08-22 09:23:56 +10:00
Peter Barker 4f9d1ada33 GCS_MAVLink: deny setting MIS_TOTAL parameter
Closes #11413

GCS_MAVLink: conform to parameter protocol requirements while ignoring sets

GCS_MAVLink: use internal-use-only param bit
2019-08-22 09:23:56 +10:00
Randy Mackay 257152aa55 SITL: sailboat motor enabled only for sailboat-motor frame 2019-08-21 19:34:13 +09:00
Randy Mackay 0ce1ce9c4f SITL: minor format changes for sailboat 2019-08-21 19:34:13 +09:00
Peter Barker 592c7acc4c AP_RTC: add clarifying comment on get_time_utc 2019-08-21 09:38:41 +10:00
Peter Barker 46c880089c AP_RTC: tighten types on get_system_clock_utc
None of these components should ever be negative - given its source is
only ever seconds-since-epoch.
2019-08-21 09:38:41 +10:00
Peter Hall 4492c09b3b AP_HAL_SITL: Scheduler skip set stack on Cygwin 2019-08-20 15:59:32 -07:00
murata 851ee24c99 AP_RangeFinder: Clarify the purpose of input registers 2019-08-20 14:36:29 +01:00
Gone4Dirt 5239d86d13 AP_RPM: Added Arduino RPM Sensor Debug Tool
This debug tool has been created to help users correctly impliment
and debug various RPM sensors when an oscilloscope is unavailable.

The RPM Sensor wiki will direct to this tool to help users.
2019-08-20 09:13:09 +10:00
mhefny 1e41f7cc61 SITL: add Webots support and examples 2019-08-19 19:36:25 +10:00
mhefny c1c32ab615 AP_HAL_SITL: add Webots support 2019-08-19 19:36:25 +10:00
Andrew Tridgell 992016069a AP_InertialSensor: fixed watchdog on AHRS trim gyro wait 2019-08-19 14:37:46 +10:00
Peter Barker 914e6c5497 AP_HAL_Linux: check return value of system command
Compilation fails on disco without this patch as system is declared with
attribute warn_unused_result
2019-08-19 14:37:13 +10:00
Peter Barker 5f2dd57cca AP_Radio: add missing override keywords
AP_Radio doesn't compile without these patches.
2019-08-19 14:36:16 +10:00
Peter Barker 03c439f9ab GCS_MAVLink: make update_sensor_status_flags private 2019-08-17 17:45:03 +10:00
Andrew Tridgell 8ef2046f7b AP_IOMCU: use blocking writes to uart
this avoids the issue of arming failing due to a non-zero protocol count
2019-08-17 17:36:41 +10:00
Andrew Tridgell 8080efbc6a HAL_ChibiOS: allow for blocking unbuffered uarts
this is used by AP_IOMCU to avoid a race condition where the mutex is
busy on write() causing a zero-length write and delayed output
2019-08-17 17:36:41 +10:00
Andrew Tridgell 454717cf6f AP_IOMCU: cleanup IO protocol and add logging
this cleans up the IOMCU protocol structures now we don't need to be
compatible with the old nuttx based protocol and adds logging of IOMCU
errors
2019-08-17 17:36:41 +10:00
Andrew Tridgell 984542fa53 AP_IOMCU: fixed error handling for short packets
this prevents short packets from the IOMCU being processed. A short
enough read could be processed as a valid status packet, which would
lead to invalid values for safety flag and servo voltage

fixes issue #12030
2019-08-17 17:36:41 +10:00
Andrew Tridgell afc8a70ce4 HAL_ChibiOS: fixed a bug in wait_timeout() on UARTs
wait_timeout() could return true on a read of less bytes than are
expected.
2019-08-17 17:36:41 +10:00
Peter Barker 35c2406b17 AP_HAL_ChibiOS: add missing override keywords
This was causing CubeOrange not to build
2019-08-17 13:25:05 +10:00
Michael du Breuil e05047bb0b AP_Scripting: Remove unneeded function, add some more enums 2019-08-17 10:41:27 +09:00
Randy Mackay a8fd04ddf9 AC_Avoidance: Dijkstra's returns oa-not-required if path has been completed 2019-08-17 09:42:43 +09:00
Randy Mackay 452be5fd94 AC_Avoidance: Dijkstra skips calcs if current loc is same as destination 2019-08-17 09:42:43 +09:00
Randy Mackay bed21b43e1 AP_OAPathPlanner: minor fix to return original origin and dest upon failure
this has no functional effect because the consumers are not using the origin_new and destination_new unless the ret_state was OA_SUCCESS
2019-08-17 09:42:43 +09:00
Randy Mackay aeb98c7555 AC_WPNav: integrate OAPathPlanner
includes these changse:
get_wp_distance_to_destination always uses oa unadjusted destination
get_wp_bearing_to_destination always uses oa unadjusted destination
stop vehicle if object avoidance fails
OA adjusted altitude interpolated from original track
2019-08-17 09:42:43 +09:00
Randy Mackay 6361a9a204 AC_WPNav: constify get_wp_destination 2019-08-17 09:42:43 +09:00
Peter Barker 53f8aa2b92 AP_Landing: correct format string 2019-08-16 13:47:39 +10:00
Peter Barker 83b7857349 AP_RTC: add example for RTC functions 2019-08-16 13:47:13 +10:00
Rajat Singhal ad9093251e SITL: Remove unused includes 2019-08-15 20:03:31 +10:00
Rajat Singhal 4af8813014 AP_Proximity: Add license info in Airsim lidar backend 2019-08-15 20:03:31 +10:00
Rajat Singhal 4e847342b1 SITL: Add license info in Airsim files 2019-08-15 20:03:31 +10:00
Peter Barker 169013cae2 SITL: allow starting location to come from parameters 2019-08-15 18:00:35 +10:00
Peter Barker 94d2ce13d2 AP_HAL_SITL: allow starting location to come from parameters 2019-08-15 18:00:35 +10:00
Peter Barker 24405f1b23 SITL: correct and add comment 2019-08-15 18:00:35 +10:00
Peter Barker f7b47679bb SITL: remove home_str from constructor 2019-08-15 15:16:11 +10:00
Peter Barker cdab58d598 AP_HAL_SITL: remove home_str from constructor
No Aircraft was actually using this in the constructor, so it's really
adding overhead for no good reason.
2019-08-15 15:16:11 +10:00
Peter Barker 1b3e2e3c8b AP_HAL_Linux: add missing override keywords 2019-08-15 15:14:23 +10:00
Tom Pittenger e70ff1b30a AP_Mission: update NAV_DELAY comment that said wrong ID number 2019-08-14 10:45:29 -07:00
Peter Barker b860676f12 AP_Mission: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 6af3149adc AP_Logger: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 8c21a279ea AP_GPS: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker c16504e33e AP_Baro: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 9197ebc3b2 AP_Airspeed: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 98eca63201 AP_AHRS: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Peter Barker 74670a77be GCS_MAVLink: avoid allocating a GCS_MAVLINK per mavlink channel 2019-08-14 18:25:43 +10:00
Peter Barker 13c22c667d AP_UAVCAN: add missing override keywords 2019-08-14 16:33:29 +10:00
Peter Barker 54b200a777 AP_HAL_ChibiOS: add missing uavcan-related override keywords 2019-08-14 16:33:29 +10:00
Randy Mackay 973caf26f7 AP_ToshibaCAN: constify some local variables 2019-08-14 13:29:14 +09:00
Randy Mackay fbf5ecfe8c AP_ToshibaCAN: ensure motors are off when vehicle is disarmed 2019-08-14 13:29:14 +09:00
Peter Hall 4afcc9c289 SITL: sailboat allow motor sailing 2019-08-14 09:26:01 +09:00
Peter Barker 20be080325 AP_Logger: correct example to add required override keywords 2019-08-14 09:41:54 +10:00
Peter Barker 67bf00c1c3 GCS_MAVLink: ensure payload space before sending message ack
Also add comment about how we shouldn't be sending this message at all.
2019-08-13 16:48:17 +10:00
Peter Barker bb542ca39a GCS_MAVLink: queue AUTOPILOT_VERSION for sending instead of direct-send
Also allows the message to be requested for streaming or with
REQUEST_MESSAGE

We weren't checking for buffer space before sending this out, so it was
a possible source of corruption.
2019-08-13 16:29:45 +10:00
Andrew Tridgell 5e40921b42 HAL_ChibiOS: fixed reboot hold in bootloader
thanks to Tom for noticing this
2019-08-12 22:21:13 -07:00
Peter Barker e18174e4ac AP_Logger: correct use of uninitialised stack value 2019-08-13 10:43:05 +10:00
Anthony Velte 5d2f114947 AP_HAL_SITL: Add scrimmage simulator support 2019-08-13 10:07:26 +10:00
Anthony Velte 92a9ab6c6d SITL: Add scrimmage simulator support 2019-08-13 10:07:26 +10:00
Peter Barker 1adda1ccf0 AP_Compass: move automatic declination setting into AP_Compass itself 2019-08-13 10:02:13 +10:00
Andrew Tridgell 8d7262994b AP_GPS: support yaw in GPS_INPUT mavlink GPS
useful for Vicon setups
2019-08-12 10:25:40 +10:00
Randy Mackay c7ca9c04f8 AP_Math: add comment to vector2f::point_on_segment 2019-08-10 12:21:01 +09:00
Randy Mackay a1a2733926 AC_Avoidance: reduce OA path planner look ahead and margin param defaults 2019-08-09 15:51:26 +09:00
Peter Barker a5ec64fc99 AC_Fence: tidy get_breach_distance
The polygon fence will soon be able to supply a breach distance -
prepare for that.
2019-08-08 16:47:41 +09:00