Commit Graph

22077 Commits

Author SHA1 Message Date
Andrew Tridgell a7b83b1e26 HAL_ChibiOS: allow for unbuffered writes without DMA 2020-01-16 20:36:54 +11:00
Andrew Tridgell b8f9f171e0 AP_Common: added IGNORE_RETURN() macro 2020-01-16 20:36:54 +11:00
Andrew Tridgell f0d1d3fa90 AP_GPS: added get_semaphore() 2020-01-16 20:36:54 +11:00
Andrew Tridgell dc3e345a05 AP_RTC: added get_semaphore() 2020-01-16 20:36:54 +11:00
Andrew Tridgell 6790df67a1 AP_SerialManager: added Hott telemetry 2020-01-16 20:36:54 +11:00
Andrew Tridgell f6c9c6fd8c AP_Vehicle: setup for Hott telem 2020-01-16 20:36:54 +11:00
Andrew Tridgell 28dcca4e1e HAL_SITL: added betaflight-x-rev frame type 2020-01-16 19:13:13 +11:00
Andrew Tridgell dc80df23e9 SITL: added betaflight-rev-x frame 2020-01-16 19:13:13 +11:00
Andrew Tridgell 134d8b941b AP_Motors: added betaflight-x-reversed frame type 2020-01-16 19:13:13 +11:00
Randy Mackay 6aff18d22d AP_Logger: remove non-error init messages 2020-01-16 16:47:28 +11:00
Patrick José Pereira 6518d6dc4d AP_HAL_LINUX: Add support for Raspberry Pi 4
The Raspberry Pi 4 uses a new BCM cpu, the BCM2711 with
a peripheral base address of 0xFE000000

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:03:34 +11:00
Patrick José Pereira d36157f314 AP_Baro: Add BME280 ID in BMP280
BME280 has the same memory layout than BMP280,
but with more features.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Patrick José Pereira 6230524636 AP_HAL_Linux: Add navigator board
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Patrick José Pereira d806081d40 AP_Notify: Add navigator board
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Patrick José Pereira dc44a17c46 AP_HAL: Add navigator board
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Andrew Tridgell 2ebfdefc11 AP_Logger: regain some logging IDs
this gains a lot of logging ID slots by moving elements before LOG_FORMAT_MSG
2020-01-15 21:30:38 +11:00
Peter Barker f504009287 AP_HAL_SITL: disable SITL stack checking due to memory corruption
There appears to be issues with pthread_attr_setstack.
2020-01-15 19:41:58 +11:00
Peter Hall a1fb44b782 AP_Scripting: regenerate bindings 2020-01-14 22:34:37 -07:00
Peter Hall d6689372e3 AP_Scripting: add to AHRS ands vehicle and add baro bindings 2020-01-14 22:34:37 -07:00
Peter Hall 850eee2f84 AP_Soaring: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall d16de83e3f AP_Landing: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall 84fe5f4e78 APM_Control: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall 0afa144f80 AP_TECS: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall e2c4d453e1 AP_OSD: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall f6897632f8 AP_AHRS: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall dd75609599 AP_NavEKF3: get_time_flying in vehicle 2020-01-14 22:34:37 -07:00
Peter Hall 2970334c0d AP_NavEKF2: get_time_flying in vehicle 2020-01-14 22:34:37 -07:00
Peter Hall c870df0351 AP_Compass: get_time_flying in vehicle 2020-01-14 22:34:37 -07:00
Peter Hall 7a620ca95c AP_Vehicle: add flying time and bool 2020-01-14 22:34:37 -07:00
Peter Hall 775e4c90da AP_AHRS: remove flying time and bool 2020-01-14 22:34:37 -07:00
Michael du Breuil 1f20cc10f8 AP_Param: Fix failing to invalidate the cached parameter count
This would cause a GCS to download fewer then the requested number of
parameters
2020-01-15 14:02:59 +11:00
Peter Barker f6bb94ff33 AP_HAL: add missing break statement in dsm code 2020-01-15 13:55:42 +11:00
Peter Barker 95054418f6 AP_ADSB: add missing break statement 2020-01-15 13:55:42 +11:00
Peter Barker 4d6f6c09fb AP_RCProtocol: add missing break statement 2020-01-15 13:55:42 +11:00
Peter Barker 4e40c39128 AP_Baro: add missing break statement 2020-01-15 13:55:42 +11:00
Peter Barker 41d34e9f88 AP_Airspeed: add missing break statement 2020-01-15 13:55:42 +11:00
Michael du Breuil d92c4dc892 AP_Rangefinder: Fix bad subgroup pointer for drivers 2020-01-15 12:13:44 +11:00
Andrew Tridgell 4f3725c16c SRV_Channel: change function to AP_Int16
this also removes the old parameter conversion code used for when we
first added the SERVO parameters. This was needed for conversion from
Copter 3.4 and Plane 3.7
2020-01-14 14:23:11 +11:00
Andrew Tridgell 7ef86c9bb1 AP_Param: added convert_parameter_width()
this allows for easy conversion of the width of a parameter without
changing indexes
2020-01-14 14:23:11 +11:00
Michael du Breuil 2291702473 AP_Scripting: Raise SITL default heap size 2020-01-13 20:06:31 -07:00
Michael du Breuil 51f79c1b10 AP_Scripting: Add support for UART drivers
Also improves the handling of uint32_t arguments
2020-01-13 20:06:31 -07:00
Michael du Breuil f0a50c51f6 AP_SerialManager: Add scripting ports 2020-01-13 20:06:31 -07:00
Peter Barker 9997cbf203 AP_AHRS: make ekf_type return from enum class
Eliminate default cases and rely on compiler to enforce all cases
handled in switch statement.  This will be important when we make EKF2
optional.
2020-01-14 11:58:11 +11:00
Peter Barker 968d8cf7d9 AP_AHRS_NavEKF: canonicalise use of get_active_NavEKF result
Some places had a default case, many didn't.
2020-01-14 11:58:11 +11:00
Peter Barker 62c0078d5f AP_Arming: move logging of armed/disarm events into AP_Arming base class 2020-01-14 11:39:36 +11:00
Peter Barker 6b94710e4e AP_Logger: include method and forced in armed log message 2020-01-14 11:39:36 +11:00
Peter Barker 3b8a2fb262 AP_Arming: log arming 2020-01-14 11:39:36 +11:00
Tatsuya Yamaguchi 2c9e56c4b2 AP_Scripting: allow scripts to get modes 2020-01-14 11:16:29 +11:00
Tatsuya Yamaguchi 1309101a4b AP_Vehicle: allow scripts to get modes 2020-01-14 11:16:29 +11:00
Peter Barker a9f62f196e GCS_MAVLink: consolidate places we snprintf statustexts 2020-01-14 10:38:43 +11:00
Peter Barker 9410d40b2f AP_OSD: reduce scope of WITH_SEMAPHORE
The backend write() calls don't look nasty ATM - but we should get in,
get out data and get out again ASAP.
2020-01-14 10:36:44 +11:00
Andy Piper d167dacfae AP_Logger: fix locking issues, uninitialized read and status message length
account for erased partial sectors when looking at wrapped logs
2020-01-14 10:25:42 +11:00
Bill Geyer bc7e15ab8b AC_InputManager: tradheli-Fix parameter metadata errors 2020-01-13 12:41:30 -05:00
Rishabh fd2c6baf5d AP_RangeFinder: added RNGFNDx_TYPE parameter description for the Lanbao lidar 2020-01-13 20:34:48 +11:00
murata b041a8206b AP_OpticalFlow: Deleted parameter descriptions without variables 2020-01-11 11:33:13 +09:00
Andrew Tridgell 8ae5dffd31 GCS_MAVLink: fixed valgrind error in mission upload
affects DO_JUMP
2020-01-11 08:29:34 +11:00
yaapu e9e02542f1 AP_Frsky_Telem: fix for missing WFQ scheduler initialization
this fixes a missing WFQ scheduler initialization and sets a rate limiter on
status text messages to prevent text corruption
2020-01-11 07:52:09 +11:00
Andrew Tridgell 3556f33051 AP_Frsky_Telem: fixed a race condition with statustext handling
this fixes an issue that can cause a hardfault. See this bug report:

https://discuss.ardupilot.org/t/hexa-crash-after-watchdog-reset/50917

ObjectArray is not thread safe
2020-01-10 19:43:36 +11:00
Andrew Tridgell 74ca9033e2 AP_RCProtocol: fixed support for 22ms multi-frame DSM 2020-01-09 17:38:52 +11:00
Andrew Tridgell 39b738e407 AP_RCProtocol: expand test suite for multi-frame protocols 2020-01-09 17:38:52 +11:00
Andrew Tridgell 6218537ff7 SITL: fixed segv in SITL RCProtocolTest 2020-01-09 17:38:52 +11:00
Randy Mackay f1047adca5 SRV_Channel: add NeoPixelx to function param description 2020-01-09 11:38:37 +09:00
Peter Barker 3074855ea3 AP_HAL_SITL: correct port numbers in diagnostic output 2020-01-09 09:43:56 +11:00
Andrew Tridgell 5588229f68 AP_RCProtocol: fixed scaling on FPort RSSI
make it match OpenTX
2020-01-09 07:08:11 +11:00
Peter Barker 2f60f783d4 SITL: add simulated Frsky devices 2020-01-08 23:53:48 +11:00
Peter Barker 0c8e6f212d AP_HAL_SITL: add simulated frsky support 2020-01-08 23:53:48 +11:00
Andrew Tridgell da2f60ae95 AP_SerialManager: ensure users can't break SERIAL0_PROTOCOL
this prevents users from setting SERIAL0_PROTOCOL to something that
prevents them accessing the board. This can happen when users are
trying to setup SLCAN
2020-01-08 20:55:25 +11:00
Peter Barker ac25b90dda RC_Channel: factor out a do_aux_function_armdisarm method 2020-01-08 18:36:02 +11:00
Peter Barker 10976344b8 RC_Channel: let RC_Channel indicate AUX_FUNC::ARMDISARM needs no initialisation
All users set this.
2020-01-08 18:36:02 +11:00
Peter Barker 4c5c5fff72 AP_Scripting: add some pointers on how to work with bindings 2020-01-07 19:29:12 -07:00
Peter Barker 2c5e07cb09 AP_Logger: log battery and cell information using instance numbers 2020-01-08 13:00:17 +11:00
Rajat Singhal 552191925b SITL: Add OA BendyRuler params for Airsim Lidar, rename file 2020-01-08 09:10:54 +09:00
Rajat Singhal dccb95efce AP_Proximity: Fix Airsim Proximity sector update
Distance equals least distance in that sector rather than last point sampled
2020-01-08 09:10:54 +09:00
CUAVcaijie 7e89591e90 HAL_ChibiOS: Modify the default orientation of the compass 2020-01-08 07:33:51 +11:00
Andrew Tridgell fced7d78fc HAL_ChibiOS: fixed clock src for I2C4 on H7 2020-01-08 05:56:23 +11:00
Andrew Tridgell db777c56b9 AP_GPS: provide yaw feedback in GPS_RAW_INT and GPS2_RAW
allow GPS to display status of GPS yaw for moving baseline and NMEA
2020-01-07 12:37:35 +11:00
Andrew Tridgell e40c570615 AP_GPS: faster config of moving baseline
thanks to MdB for suggestion
2020-01-07 12:37:35 +11:00
Andrew Tridgell ebceab9aa0 AP_Compass: don't probe for ICM20948 on AP_Periph 2020-01-07 12:37:35 +11:00
Andrew Tridgell e660532f67 AP_GPS: fixes from PR review 2020-01-07 12:37:35 +11:00
Andrew Tridgell 41289fe945 AP_GPS: adjust lag for MB RTK ublox
rover will lag by about 40ms
2020-01-07 12:37:35 +11:00
Andrew Tridgell b86c43aa66 AP_GPS: prefer RTK MB rover when it has yaw available
this ensures that yaw data is time aligned with position and velocity
data
2020-01-07 12:37:35 +11:00
Andrew Tridgell 261465ef96 AP_GPS: split out update_primary() from update()
this makes the selection of primary GPS a lot clearer, with less
nesting of if statements
2020-01-07 12:37:35 +11:00
Andrew Tridgell 93aaf98672 AP_GPS: added automatic u-blox moving baseline configuration
this uses GPS_TYPE and GPS_TYPE2 to setup two u-blox F9 receivers in a
RTK moving baseline configuration
2020-01-07 12:37:35 +11:00
Andrew Tridgell 71a0f3a1dc AP_GPS: added RTCMv3 parser
will be used for moving baseline support
2020-01-07 12:37:35 +11:00
Matt Lawrence 189fee556f AC_WPNav: Circle mode pilot control of rate & radius 2020-01-07 09:30:33 +09:00
Peter Barker 7a5b8136ad AP_AHRS_NavEKF: inform all running EKFs that takeoff or touchdown is expected
Several other methods in here poke both EKFs like this.
2020-01-07 11:06:36 +11:00
Peter Hall af08379d1b AP_Motors: MatrixTS remove output_to_motors 2020-01-07 10:40:22 +11:00
Peter Hall 615695c1bc AP_Motors: MatrixTS: defualt to normal Matrix setup 2020-01-07 10:40:22 +11:00
Peter Hall 4aa0dfa2aa AP_Motors: output_motor_mask update 2020-01-07 10:40:22 +11:00
Michael du Breuil 5da062b850 AP_Scripting: Forward declare lua_new_uint32_t 2020-01-06 16:02:50 -07:00
Andy Piper a469a31528 AP_HAL_SITL: prevent dump_stack_trace() blowing up on macOS 2020-01-06 14:57:46 +11:00
Jaaaky 1817280e01 AP_Logger: fix 'last_file' may be used uninitialized with debug build 2020-01-06 14:53:03 +11:00
Randy Mackay 188fdfb1b8 GCS_MAVLink: send optflow message even if no height estimate 2020-01-06 11:36:43 +09:00
Andrew Tridgell 43172bdd57 HAL_ChibiOS: switch non-composite USB ID
use newly allocated 0x1209/0x5740
2020-01-06 11:43:15 +11:00
Andrew Tridgell 793b867706 HAL_ChibiOS: switched to new USB VID for dual-CDC boards 2020-01-06 09:55:26 +11:00
Andrew Tridgell a2d40d040a AP_UAVCAN: added logging of CAN ESC status 2020-01-05 15:25:56 +11:00
Andrew Tridgell 58fcd4601a AP_Logger: added CESC message for logging CAN ESC status 2020-01-05 15:25:56 +11:00
Andrew Tridgell b4966f21d8 AP_UAVCAN: added logging of UAVCAN actuator::Status messages
this allows for logging of CAN servo status
2020-01-05 15:25:56 +11:00
Andrew Tridgell 2666853100 AP_Logger: added CSRV logging for CAN servo status 2020-01-05 15:25:56 +11:00
Andrew Tridgell 22f8221427 AP_SerialManager: implement new UART option bits 2020-01-03 17:32:23 +11:00
Andrew Tridgell bb5c1d07e1 HAL_ChibiOS: implement new UART option bits 2020-01-03 17:32:23 +11:00
Andrew Tridgell 4eccea2607 AP_HAL: define more UART option bits 2020-01-03 17:32:23 +11:00
Andrew Tridgell ab0f1a8887 HAL_ChibiOS: added max uarts check 2020-01-03 17:32:23 +11:00
Andrew Tridgell 0d31e614ed HAL_ChibiOS: added ALT(1) configs for more boards
this allows more boards to use the FPort protocol
2020-01-03 17:32:23 +11:00
Andy Piper 54b6e7b264 AP_Logger: mavlink backend needs to be the last backend
be really careful to catch aborted erases
take care to protect shared structures in io thread
if flash corruption is detected try and recover whole files
overwrite format in erase to make sure erase happens
output useful messages at critical times
a block is 64k a sector is 4k, rename internal variables appropriately
cope with log wrapping when sending log listings over mavlink
2020-01-02 18:18:04 +11:00
Andrew Tridgell 61f8e6f0d1 HAL_ChibiOS: added alt config for USART6 on MatekF765-Wing 2020-01-02 12:13:55 +11:00
Andrew Tridgell 296a4cb086 HAL_ChibiOS: re-format and fix chibios_hwdef.py for flake8 2020-01-02 09:52:57 +11:00
Andrew Tridgell 9c2b5a05bd HAL_ChibiOS: fixed python3 error 2020-01-02 09:52:57 +11:00
Andrew Tridgell 1b528137f7 GCS_MAVLINK: cope with AP_Frsky_Telem being created after init
may be created by the FPort backend
2020-01-02 09:52:57 +11:00
Andrew Tridgell f8847bf569 AP_RCProtocol: auto-create Frsky_Telem object when needed for FPort 2020-01-02 09:52:57 +11:00
Andrew Tridgell 9579e64a03 AP_Frsky_Telem: make get_telem_data() static
auto-create the object when it is needed for FPort
2020-01-02 09:52:57 +11:00
Andrew Tridgell c5df48faa7 HAL_ChibiOS: break out make_line() for PAL_LINE defines 2020-01-02 09:52:57 +11:00
Andrew Tridgell 33182a9f11 AP_RCProtocol: use RC_OPTIONS fport pad option 2020-01-02 09:52:57 +11:00
Andrew Tridgell 7769cf5316 RC_Channel: added FPort pad option 2020-01-02 09:52:57 +11:00
Andrew Tridgell 60a13f4eeb AP_BoardConfig: added BRD_ALT_CONFIG parameter
allow for alternative hw configs to be selected
2020-01-02 09:52:57 +11:00
Andrew Tridgell 66dd5925cf HAL_ChibiOS: added support for alternative pin configs 2020-01-02 09:52:57 +11:00
Andrew Tridgell 06a9baeb9b HAL_ChibiOS: adjust fmuv3 SPI priority
fixes an issue with SPI4 assignment
2020-01-02 09:52:57 +11:00
Andrew Tridgell a30e637484 HAL_ChibiOS: fixed bug in UART pin assignment
this fixes an issue with the setting of pullup/pulldown on UARTs. It
also adds enforcement of DMA assignment for DMA required peripherals
2020-01-02 09:52:57 +11:00
Andrew Tridgell 8ffd1050eb HAL_ChibiOS: fixed build on STM32F3 2020-01-02 09:52:57 +11:00
Andrew Tridgell b1ca7380be HAL_ChibiOS: re-implement half-duplex using HDSEL switching
this makes half-duplex more reliable on UARTs with pullups or level
shifters
2020-01-02 09:52:57 +11:00
Andrew Tridgell faf34970e1 HAL_ChibiOS: automatically control pullup/pulldown on inverted UARTs
this makes setup of sport telemetry much easier
2020-01-02 09:52:57 +11:00
Andrew Tridgell 8792adb6f0 AP_FlashStorage: implement erase() method 2020-01-02 09:52:57 +11:00
Andrew Tridgell 58e915155d HAL_ChibiOS: fixed panic to output error every 500ms 2020-01-02 09:52:57 +11:00
Andrew Tridgell a733690f80 StorageManager: use hal.storage->erase() 2020-01-02 09:52:57 +11:00
Andrew Tridgell 8fdbb88827 HAL_ChibiOS: implement erase() method on Storage in HAL_ChibiOS 2020-01-02 09:52:57 +11:00
Andrew Tridgell 12b6f73d83 AP_HAL: added erase() method to Storage class 2020-01-02 09:52:57 +11:00
Andrew Tridgell fd5ff97b59 AP_RCProtocol: support FPort telemetry data
get SPort data from AP_FrSky_Telem
2020-01-02 09:52:57 +11:00
Andrew Tridgell 49f81fbd18 AP_FrSky_Telem: allow for external library to send SPort data
this provides the API needed for AP_RCProtocol_FPort to send
passthrough data over FPORT
2020-01-02 09:52:57 +11:00
Andrew Tridgell e9dded98ce HAL_ChibiOS: enable UART6 for use as RC input on MatekF765-Wing 2020-01-02 09:52:57 +11:00
Andrew Tridgell a72eaabc96 AP_RCProtocol: support FPort RSSI 2020-01-02 09:52:57 +11:00
Andrew Tridgell 6447cc2519 HAL_ChibiOS: support receiver RSSI 2020-01-02 09:52:57 +11:00
Andrew Tridgell 63c199a600 AP_IOMCU: support RSSI from receiver 2020-01-02 09:52:57 +11:00
Andrew Tridgell 6599fd49a2 AP_IOMCU: don't use pulse input for FPORT 2020-01-02 09:52:57 +11:00
Andrew Tridgell 9332c08c46 AP_RCProtocol: added FPort protocol support 2020-01-02 09:52:57 +11:00
Peter Barker 4cc7df8e15 SITL: emit hit-ground via mavlink
This lets autotest look for it
2020-01-01 22:10:43 +11:00
Andrew Tridgell 270844745f AP_Compass: limit rotations we try to ROTATION_MAX_AUTO_ROTATION 2020-01-01 16:59:27 +11:00
Andrew Tridgell f908e56154 AP_Math: define ROTATION_MAX_AUTO_ROTATION
we don't want to use ROTATION_PITCH_7 in our auto rotation mix, as it
is too close to level
2020-01-01 16:59:27 +11:00
Randy Mackay 2e02ee1df8 AP_OADatabase: send_adsb uses vehicle's current altitude 2020-01-01 13:38:41 +09:00
Randy Mackay 985a15709a AP_OADatabase: available regardless of hal-minimize-features
In Copter with minimize feature set the entire AP_PathPlanning feature including the database are unavailable
Rover has enough space for the database even with minimise features set
2020-01-01 13:38:41 +09:00
Randy Mackay 50b4dd2599 AP_OAPathPlanner: slow updates to 1hz, timeout to 3sec 2020-01-01 13:38:41 +09:00
Randy Mackay 28e707466b AP_OABendyRuler: integrate oadb ekf-offset change 2020-01-01 13:38:41 +09:00
Randy Mackay f87ae7d445 AP_Math: add vector2f::offset_bearing 2020-01-01 13:38:41 +09:00
Randy Mackay dac84f4a9d AP_Proximity: integrate oadb ekf-offset change 2020-01-01 13:38:41 +09:00
Randy Mackay fe5ba3ccdb AP_OADatabase: replace Location with offset from origin 2020-01-01 13:38:41 +09:00
Randy Mackay 449b8d124b AP_Proximity: remove unused get_horizontal_distance 2020-01-01 13:38:41 +09:00
Randy Mackay 10108819b1 AP_Proximity: sf40c combines seven readings for oadb 2020-01-01 13:38:41 +09:00
Randy Mackay 1d6519af72 AP_Proximity: always use 8 sectors and fix ignore areas 2020-01-01 13:38:41 +09:00
Randy Mackay 37f2fc3ffe AP_OABendyRuler: integrate static object radius 2020-01-01 13:38:41 +09:00
Randy Mackay 674d631fb1 AP_OADatabase: calculate object radius based on distance and beam width
also all object database items are normal importance
2020-01-01 13:38:41 +09:00
Randy Mackay 1d79ff11b8 AP_Proximity: integrate oadb::queue_push argument swap 2020-01-01 13:38:41 +09:00
Randy Mackay f60ec91993 AP_Proximity: remove unnecessary const from database_push
also shorten current_vehicle_bearing argument to just current_heading
2020-01-01 13:38:41 +09:00
Randy Mackay 1ba5f4626d AP_OADatabase: remove unnecessary const on arguments
also swap order of angle and distance arguments to be consistent with proximity library
2020-01-01 13:38:41 +09:00
Peter Hall df3ffb215e RC_Channel: add Flap input 2020-01-01 08:11:01 +11:00
Andrew Tridgell b98d5834b4 AP_UAVCAN: fixed build on Linux 2019-12-31 11:38:30 +11:00
Andrew Tridgell 6bd7364f24 AP_KDECAN: fixed build error on Linux 2019-12-31 11:38:30 +11:00
Andrew Tridgell e1f89c2c0d AP_PiccoloCAN: fixed build error on Linux
_thread_name too short
2019-12-31 11:38:30 +11:00
Andy Piper 52f59fb573 AP_InertialSensor: more accurately compute INS noise taking throttle into account and adding frequency noise noisily
make SITL fast-sampling correct
2019-12-31 10:34:02 +11:00
Andy Piper 8b0fc1207d AP_HAL_SITL: record throttle value instead of motors on/off 2019-12-31 10:34:02 +11:00
Andy Piper a6a020b3c7 SITL: record throttle value instead of motors on/off 2019-12-31 10:34:02 +11:00
murata 91e09338ea GCS_MAVLInk: Judgment of non-existence value by PARAM_SET 2019-12-31 10:12:01 +11:00
Andrew Tridgell ece777098c AP_BattMonitor: added SUI SMBUS battery backend
originally by Kelly Schrock
2019-12-30 09:50:04 -07:00
Andrew Tridgell f68b9bafd8 HAL_ChibiOS: fixed H7 I2C timing
we were running the clock at too low speed. This affected the SSD1306 display
2019-12-30 16:10:44 +11:00
Andrew Tridgell f1dfb2e401 AP_Camera: fixed build on navio 2019-12-30 13:02:04 +11:00
Andrew Tridgell f10adebb10 AP_Camera: made runcam CAM_RC_TYPE an enable parameter 2019-12-30 13:02:04 +11:00
Andrew Tridgell 2afac6ea13 AP_SerialManager: added runcam to available serial protocols 2019-12-30 13:02:04 +11:00
Andrew Tridgell 9d8821f3d7 AP_Vehicle: make init_vehicle() public
and protect against double call.

This is needed for the call from AP_BoardConfig
2019-12-30 13:02:04 +11:00
Andrew Tridgell 296090bb11 AP_BoardConfig: call init_vehicle()
this allows a single location for init_vehicle
2019-12-30 13:02:04 +11:00
Andy Piper d8a58ebda4 AP_Camera: allow features override. Report OSD support. 2019-12-30 13:02:04 +11:00
Andy Piper 318a23537d AP_Camera: allow roll right to also enter menu 2019-12-30 13:02:04 +11:00
Andy Piper afcbc5ffdb AP_Camera: fixup OSD menu switching and button timings 2019-12-30 13:02:04 +11:00
Andy Piper 86d9cf7249 AP_Camera: better OSD control logic 2019-12-30 13:02:04 +11:00
Andy Piper fcc7b58b5f RC_Channel: add runcam osd control option 2019-12-30 13:02:04 +11:00
Andy Piper 7ad9ce0a01 AP_Camera: add RunCam TYPE and CONTROL options for menu/OSD control 2019-12-30 13:02:04 +11:00
Andy Piper 6f979d5f7f AP_HAL_ChibiOS: define OSD_ENABLED as 1 rather than ENABLED 2019-12-30 13:02:04 +11:00
Andy Piper afa232cc7e AP_RCProtocol: fix example compile on macos 2019-12-30 13:02:04 +11:00
Andy Piper 3ea05fa78b AP_Vehicle: add common parameter and scheduling management. Add runcam. 2019-12-30 13:02:04 +11:00
Andy Piper debc13965a AP_Scheduler: add common tasks from AP_Vehicle and manage them 2019-12-30 13:02:04 +11:00
Andy Piper c16c60a761 AP_Arming: add camera arming checks 2019-12-30 13:02:04 +11:00
Andy Piper e166e90c1d AP_RCMapper: add singleton 2019-12-30 13:02:04 +11:00
Andy Piper a09c18386e AP_OSD: allow osd to be disabled 2019-12-30 13:02:04 +11:00
Andy Piper 3cba76123b RC_Channel: add support for RunCam camera control
make read_3pos_switch and enum public
2019-12-30 13:02:04 +11:00
Andy Piper 0eddc8b589 AP_Camera: implementation of the RunCam device protocol for RC camera control
Allows control of 2-key and 5-key OSD menus and recording start/stop
OSD is disabled while in the RunCam menu but reinstated on exit
add arming checks to prevent arming while the OSD menu is enabled
2019-12-30 13:02:04 +11:00
Andy Piper c9b96a5e79 AP_SerialManager: add support RunCam serial protocol 2019-12-30 13:02:04 +11:00
Siddharth Purohit 3278ac2e63 AP_UAVCAN: remove unnecessary scary message UC Node Down 2019-12-27 17:42:57 +11:00
CUAVcaijie ccd54409f3 HAL_ChibiOS: Adding SPI devices for CUAV_GPS 2019-12-26 15:51:44 +11:00
CUAVcaijie 2df2e5c275 HAL_ChibiOS: Fix DMA of SPI1 TX on STM32F412 2019-12-26 15:50:18 +11:00
CUAVcaijie 8daa8f34c9 AP_Baro: added averaging of CAN baro output 2019-12-26 12:21:41 +11:00
Andrew Tridgell 4b4642dd4d HAL_ChibiOS: allow handling of much higher receiver baudrates with DMA
this uses two DMA RX bouncebuffers to minimise the time with DMA
disabled so that we can handle much higher baudrates
2019-12-26 10:42:48 +11:00
Andrew Tridgell 58292821b3 HAL_ChibiOS: fix DMA on UARTs for F303 2019-12-26 10:42:48 +11:00
Andrew Tridgell 652d137594 HAL_ChibiOS: fixed DMA channels for f3 USART2 2019-12-26 10:42:48 +11:00
Andrew Tridgell c6322c7c98 GCS_MAVLink: send abs throttle in VFR_HUD 2019-12-24 15:14:03 +11:00
Peter Barker 01710c035e GCS_MAVLink: handle proximity and rangefinder messages 2019-12-24 12:08:54 +11:00
Peter Barker 708a6f99a6 SRV_Channel: remove default case in get_limit_pwm
All cases are currently handled, and this is something people should
probably think about if they're introducing another case!
2019-12-24 11:50:03 +11:00
Michael du Breuil 8bd4f2b097 AP_RangeFinder: Allow the VL53L1X to be put into short range mode 2019-12-24 11:40:47 +11:00
Michael du Breuil 224ea744e3 AP_Rangefinder: Reset the VL53L1X before setup
A number of the config steps make the assumption they are running from
the sensors default power on state. If you do a soft reset of the
vehicle without killing power to the sensor this means the second time
you configure the sensor you will start from a state which didn't match
the base assumptions and can lead to the sensor preforming signficantly
differently then it was intended to. This issues a soft reset, and waits
for it to reboot before proceeding with configuration. If it's a
watchdog reset we don't want to spend long enough to have ensured the
sensor reset, so we say the sensor setup completely failed and don't use
it, as not using it will be less erroneous then using a misconfigured
sensor.
2019-12-24 11:40:47 +11:00
Andrew Tridgell 7b4b88d568 AP_Declination: re-generate mag tables
max interpolate error between -60 and 60 latitude is 13.86 mGauss
2019-12-24 11:33:10 +11:00
Andrew Tridgell 79bbd3ce9f AP_Declination: update generate script
added ability to display max error
2019-12-24 11:33:10 +11:00
Peter Hall 956c3f29a3 AP_BLHeli: allow connection with reversable ESCs 2019-12-24 10:50:16 +11:00
Andrew Tridgell 6eb86c6cdb HAL_ChibiOS: removed PB1 and PB0 TIM1 complementary channels for F76x
these do not work, possibly a datasheet bug
2019-12-23 21:46:57 +11:00
Andrew Tridgell c8c6c80aef HAL_ChibiOS: switch MatekF765 to timer 12
fixes PWM 5 and 6
2019-12-23 21:46:57 +11:00
Andrew Tridgell e52a3b9978 AP_InertialSensor: default fast sampling on
if we have a first IMU capable of fast sampling then we want it
enabled by default
2019-12-23 09:55:07 +11:00
Andrew Tridgell ccd1ce406c HAL_ChibiOS: scale uart rx buffer size with baudrate
this ensures we have enough buffer space for a RTK GPS, as well as for
high speed comms with a companion computer
2019-12-23 09:54:36 +11:00
Oliver Walters 9229efbf81 AP_PiccoloCAN: Always use bulk ESC commands 2019-12-22 09:48:40 +11:00
Oliver Walters fadc968b38 AP_PiccoloCAN: Improve arm/disarm ESC behaviour
- When disarmed, broadcast a "software disable" command to all ESC on the bus
- This means that ESC will reject any PWM commands
- When armed, ensure each ESC is enabled before sending PWM commands
2019-12-22 09:48:40 +11:00
Oliver Walters 431b07bba0 SRV_Channel: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Oliver Walters 5fa54f3986 GCS_MAVLink: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Oliver Walters 7c3391d0d8 AP_BoardConfig: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Oliver Walters 2e0d2e2db0 AP_Arming: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Andrew Tridgell 9821d52b72 AP_PiccoloCAN: added selective build of PiccoloCAN 2019-12-22 09:48:40 +11:00
Oliver Walters ace0006a4e AP_PiccoloCAN: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Andrew Tridgell 1248519b11 HAL_ChibiOS: account for empty uarts in uart count
this fixes uart count on MatekF405-Wing
2019-12-22 08:27:17 +11:00
Andrew Tridgell 750718bdd3 RC_Channel: simplify channel check in get_pwm() 2019-12-20 19:51:46 -07:00
Andrew Tridgell b69afff6a7 AP_Scripting: increase heap size (again) 2019-12-20 19:51:46 -07:00
Andrew Tridgell 07415d06ab AP_Scripting: added RCIN example script 2019-12-20 19:51:46 -07:00
Andrew Tridgell e86c6b047a AP_Scripting: regen bindings for Lua 2019-12-20 19:51:46 -07:00
Andrew Tridgell 32215be29f AP_Scripting: added rc input bindings 2019-12-20 19:51:46 -07:00
Andrew Tridgell dfd7b022fd RC_Channel: added get_pwm() function for Lua 2019-12-20 19:51:46 -07:00
Pierre Kancir d332773689 AP_Compass: add register to checked ones and remove single-use goto
Also fix comment on TMRC register setting
2019-12-21 09:07:20 +11:00
Pierre Kancir d6563bff7d AP_Compass: probe for RM3100 2019-12-21 09:07:20 +11:00
Andrew Tridgell 6f6fbb5b48 HAL_ChibiOS: make pwm pin pulldown 2019-12-20 16:50:48 +11:00
Andrew Tridgell f732a482fe HAL_ChibiOS: support wider range of clock frequencies 2019-12-20 16:50:48 +11:00
Andrew Tridgell cfed364dd0 AP_ROMFS: fixed build warning 2019-12-20 16:50:48 +11:00
Andrew Tridgell a9946b41e9 HAL_ChibiOS: added f103-Trigger board 2019-12-20 16:50:48 +11:00
Andrew Tridgell a87e3e41f0 HAL_ChibiOS: make Pixhawk4 GPS2 connection clearer 2019-12-20 12:34:26 +11:00
Peter Barker d1bbe4f03b GCS_MAVLink: correct output when ROUTING_DEBUG is set
This is a define in the code itself, so rarely a problem
2019-12-20 10:00:07 +11:00
Andrew Tridgell 6ff303adf4 RC_Channel: added comment on odd inheritance 2019-12-19 14:52:33 +11:00
Andrew Tridgell dd73eac08c GCS_MAVLink: support MAV_CMD_FIXED_MAG_CAL_YAW 2019-12-18 17:20:37 +11:00
Andrew Tridgell 09d7e732b7 AP_Compass: added mag_cal_fixed_yaw()
this is a fast compass calibration that uses a yaw value provided by
the user.
2019-12-18 17:20:37 +11:00
Andrew Tridgell d422825715 HAL_ChibiOS: removed per-board AP_FEATURE_RTSCTS and AP_FEATURE_SBUS_OUT
not needed any more
2019-12-18 17:18:44 +11:00
Andrew Tridgell fc867b1596 HAL_ChibiOS: automatically set AP_FEATURE_SBUS_OUT 2019-12-18 17:18:44 +11:00
Andrew Tridgell 88e5e54770 AP_BoardConfig: removed duplicate define for RTSCTS 2019-12-18 17:18:44 +11:00
Andrew Tridgell b3459c024c HAL_ChibiOS: automatically set AP_FEATURE_RTSCTS 2019-12-18 17:18:44 +11:00
Randy Mackay 0288b3d43c AP_BattMonitor: set default I2C bus for Solo and Maxell drivers 2019-12-18 15:54:42 +11:00
Randy Mackay 0d034821d1 AP_BattMonitor: Maxell cell voltages timeout after 5sec 2019-12-18 15:54:42 +11:00
Randy Mackay a5a1d2812a AP_Scripting: example to check battery cycle count 2019-12-18 15:54:42 +11:00
Randy Mackay fdf8d4b2ee AP_Scripting: add binding for BattMonitor's get_cycle_count method 2019-12-18 15:54:42 +11:00
murata 44a8702d94 AP_BattMonitor: Maxell battery on any I2C bus 2019-12-18 15:54:42 +11:00
Randy Mackay 300c0aafb1 AP_BattMonitor: add cycle count for smbus batteries 2019-12-18 15:54:42 +11:00
Andrew Tridgell b99d6e075c HAL_ChibiOS: change CUAVv5Nano volt scale to 18.000 2019-12-18 15:50:34 +11:00
Peter Barker ebbcd00873 GCS_MAVLink: send statustext to all GCSs until update_send is called
until update_send it called we don't mark channels as streaming, so
send_statustext won't send to that channel.

Calculating the streaming mask could have been done as part of the init
call, but this fix may allow for information getting to the user in the
case that the streaming parameters are all zero, too.
2019-12-18 14:36:58 +11:00
Andrew Tridgell 5098e3f79e AP_ICEngine: added ICE_OPTIONS
option to kill ignition on RC failsafe. This is needed for some RC
model clubs
2019-12-18 12:28:41 +11:00
Mark Whitehorn 7e8aecac50 AC_AttitudeControl: simplify body-frame roll axis swapping 2019-12-18 08:33:29 +11:00
Mark Whitehorn bb9b116574 AC_AttitudeControl: fix argument order in tailsitter bodyframe roll input methods
increase allowed yaw error in tailsitter bodyframe roll modes
add combined bodyframe roll method
delete old versions of body-frame roll input methods
invert mc_controls
2019-12-18 08:33:29 +11:00
Mark Whitehorn 68dcab3edb AP_Motors: add copter tailsitter differential torque frames 2019-12-18 08:33:29 +11:00
Randy Mackay 2e09acc2ae AP_Logger: add error code for rtl missing rangefinder 2019-12-17 20:02:01 +09:00
Randy Mackay 3ca28e27c6 AC_WPNav: add get_terrain_source and rename existing method
this allows RTL to determine which source of terrain data will be used which is required when building the return path
2019-12-17 20:02:01 +09:00
giacomo892 1763be2c03 RC_Channel: added LOITER switch for plane 2019-12-17 16:14:53 +11:00
Andrew Tridgell 9b4764eb1f SITL: fixed airsim example scripts 2019-12-17 15:40:00 +11:00
Andrew Tridgell 061d778bfd SITL: improved AirSim quadX tuning
and move params to normal location, so they are found with
sim_vehicle.py
2019-12-17 15:40:00 +11:00
Andrew Tridgell d657fed34a SITL: fixed accuracy of lat/lon in AirSim 2019-12-17 15:40:00 +11:00