Commit Graph

15116 Commits

Author SHA1 Message Date
Randy Mackay 8daa8cba1f AR_AttitudeControl: record desired turn rate and speed for logging 2017-10-26 19:44:26 +09:00
Michael du Breuil 0cee2f2896 AP_BattMonitor: Require all backends to provide init 2017-10-26 20:10:08 +11:00
Andrew Tridgell 3402d07651 HAL_PX4: fixed a race condition on i2c init
we could call init on two devices with the same name, which caused
init_ok to be false. This could cause the SMBus battery to fail to
initialise

Thanks to Michael duBreuil for finding this!
2017-10-26 18:21:56 +11:00
Peter Barker 62f7acff52 SITL: reduce max accel of simulated rover 2017-10-26 14:45:19 +11:00
Andrew Tridgell e340fac2e0 AP_Motors: avoid float exception for small expo
very small values of the thrust expo cause a floating point
exception. As zero is a documented value meaning linear we need to
handle this.
2017-10-25 21:15:58 +11:00
Jacob Walser d5896287b7 AP_Param: Add set_by_name and set_and_save_by_name helpers 2017-10-25 21:07:09 +11:00
hiro2233 7d304073ed SITL: fixed include case sensitive
On case sensitive cygwin feature enabled, this build ok.
2017-10-25 20:59:55 +11:00
Andrew Tridgell 381e2fd69a SRV_Channel: added get_motor_function()
for correct handling of motors 8 and above
2017-10-25 11:39:11 +11:00
Andrew Tridgell 45d6f3bf75 AP_Motors: fixed motor channel handling 2017-10-25 11:39:11 +11:00
Patrick José Pereira 9693da751e AP_common: Add stdio.h when using SITL_printf
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-10-24 22:55:56 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas c7c2c4ff2c AC_AttitudeControl: use floating-point multiplication instead of a more expensive floating-point division 2017-10-23 09:20:17 -07:00
Andrew Tridgell fc237ee9a0 AP_Motors: merge fixed from rebase 2017-10-22 15:52:50 +11:00
Andrew Tridgell efea83e424 AP_Motors: fixed MotorsMatrix set_update_rate() 2017-10-22 15:52:50 +11:00
Andrew Tridgell 0682d30ebd SRV_Channel: ensure channel_mask is setup 2017-10-22 15:52:50 +11:00
Andrew Tridgell 1e62b5d5c7 AP_Motors: many to one mapping of motors
this allows multiple outputs for one motor number
2017-10-22 15:52:50 +11:00
Andrew Tridgell 39fd25bb36 SRV_Channel: added get_output_channel_mask()
will be used by AP_Motors
2017-10-22 15:52:50 +11:00
Andrew Tridgell 03e1f6967f AP_Motors: removed enable() API
all output channels are already enabled by SRC_Channels::enable_aux_servos()
2017-10-22 15:52:50 +11:00
Andrew Tridgell ed272833c3 SRV_Channel: don't treat k_motorN specially 2017-10-22 15:52:50 +11:00
Michael du Breuil b0e18de576 AP_GPS: Remove detect helpers for MTK/SIRF when minimizing the build
Removes 16 bytes
2017-10-22 03:03:29 +01:00
Andrew Tridgell 5bd92b4b7e AP_TECS: improved support for VTOL transitions 2017-10-21 18:50:01 +11:00
Andrew Tridgell c5cd1b873c SITL: use thread for FlightAxis comms
this allows us to run SITL at a much higher framerate than RF can
provide, and results in the EKF being much happier
2017-10-21 11:57:59 +11:00
Andrew Tridgell 7def86ae96 HAL_SITL: don't run IO at more than 100Hz
save some CPU for faster frame rates
2017-10-21 11:57:05 +11:00
Georgii Staroselskii 8a28556ae1 AP_Notify: use RCOutputRGBLedInverted for Edge 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 03ac8621bf AP_BattMonitor: add Edge PM preset 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 4e2028c32f AP_HAL: Edge: enable Heat PWM 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 79c14a92a9 AP_HAL_Linux: adapt Heat_Pwm for Edge 2017-10-20 13:03:08 -07:00
Alexey Bulatov 069c98b8a9 AP_InertialSensor: Edge: add sensor's rotation YAW_90 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 710594eee3 AP_Compass: enable compass on Edge 2017-10-20 13:03:08 -07:00
Georgii Staroselskii db9f427617 AP_HAL: Edge: add compass settings
Use HMC5883L as default before UAVCAN Linux support is in place
2017-10-20 13:03:08 -07:00
Georgii Staroselskii ac6f7511bd AP_InertialSensor: examples: print temperature 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 4f2d8f8df4 AP_InertialSensor: use ICM backend for Edge 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 4e6fab228c AP_HAL_Linux: add SPI devices for Edge 2017-10-20 13:03:08 -07:00
Staroselskii Georgii 3ade179700 AP_HAL_Linux: make use of RCInput_Navio2 in Edge 2017-10-20 13:03:08 -07:00
Staroselskii Georgii 2a99bb0c95 AP_HAL: use Raspberry Pi GPIO and Util classes for Edge
As it's a yet another Raspberry Pi based board, we may reuse the code.
2017-10-20 13:03:08 -07:00
Staroselskii Georgii 2a7e8d66ee AP_HAL_Linux: add Edge support
Just some usual boilerplate code.
2017-10-20 13:03:08 -07:00
Georgii Staroselskii 2dd68243a2 AP_HAL: add Edge support 2017-10-20 13:03:08 -07:00
Georgii Staroselskii ef3cad7833 AP_Notify: add RCOutputRGBLedInverted
Some RGB leds controlled with an inverted logic. This class addresses
this.
2017-10-19 15:09:49 -07:00
Peter Barker bb2573f945 GCS_MAVLink: send mission item requests to correct destination
The correct destination is the GCS which last set the mission count,
not the last GCS that requested it!
2017-10-19 20:52:24 +11:00
Michael du Breuil 2b4cf54797 AP_Landing: Deepstall: Small style fixes 2017-10-17 14:37:11 -07:00
Michael du Breuil d166832de4 AP_Landing: Deepstall implement log(), reset all integrators 2017-10-17 14:37:11 -07:00
Michael du Breuil 2909f77235 DataFlash: Remove PIDL and a DSTL for a deepstall specific message 2017-10-17 14:37:11 -07:00
Michael du Breuil f8ac4efb1d PID: Add a full reset method 2017-10-17 14:37:11 -07:00
Michael du Breuil df8049778e AP_Landing: Support CCW deepstall 2017-10-17 14:37:11 -07:00
Michael du Breuil a0a16b8369 AP_Mission: Load yaw heading for landing commands 2017-10-17 14:37:11 -07:00
Michael du Breuil 0007e5eb80 AP_Landing: Support scaling aileron controls 2017-10-17 14:37:11 -07:00
Georgii Staroselskii d214a36e0a AP_HAL_Linux: reset duty cycle before setting period
On kernels 4.7+ duty_cycle should always be less than period.
Otherways, we'll get a EINVAL.

It makes sense to set duty_cycle to 0, as
duty_cycle doesn't really make sense without a proper period.

A proper way to handle these errors might be to call pwm_adjust_config
in every pwmchip backend but it's unrealistic to hope that all vendors
will do it quickly.
2017-10-17 13:28:34 -07:00
Michael du Breuil dbf67aa38a AP_Mission: Remove duplicated code associated with copy the waypoint location 2017-10-16 10:02:33 -07:00
Peter Barker 6536bf39b3 DataFlash: add DataFlash_AllTypes sample output 2017-10-10 16:51:19 +11:00
Peter Barker 466d6e619e DataFlash: correct nanf log output 2017-10-10 16:51:19 +11:00
Andrew Tridgell c8b6be6736 AP_Motors: fixed scaling of servo outputs
thanks to bnsgeyer for noicing this in issue #6977

this will break existing dual-heli setups, but there are so few people
flying them so far that I think it is a worthwhile change
2017-10-10 11:02:34 +11:00
Tom Pittenger 39dc608bea AP_L1: update constraint Nu comment to match sourcecode
fixes https://github.com/ArduPilot/ardupilot/issues/7054
2017-10-09 17:01:37 -07:00
Andrew Tridgell 74265f523a SITL: support -roll180 option to frames 2017-10-10 10:57:38 +11:00
Andrew Tridgell 6a6f9681ab AP_InertialSensor: allow for 1,1,1 accel scaling
this supports simple accel calibration
2017-10-10 10:57:38 +11:00
Andrew Tridgell f513c1c8dd AP_InertialSensor: support rotated IMUs in SITL 2017-10-10 10:57:38 +11:00
Andrew Tridgell d5cab1140a AP_InertialSensor: added simple_accel_cal()
this is useful for mass market vehicles where a full 3D accel cal is
too complex.
2017-10-10 10:57:38 +11:00
Francisco Ferreira 02586b0a2e
AP_Rangefinder: search buses 0 and 1 for Maxbotix I2C driver 2017-10-09 11:57:02 +01:00
Francisco Ferreira be1f0801a3
AP_HAL: stop defining a default Lightware I2C bus
When a specific bus isn't defined we now search I2C buses 0 and 1
2017-10-09 11:57:02 +01:00
Francisco Ferreira bb46eaedaa
AP_Rangefinder: look in buses 0/1 when Lightware I2C bus isn't defined 2017-10-09 11:57:02 +01:00
Randy Mackay 7e5f98b535 APM_Control: fix throttle and steering integrator calc 2017-10-07 14:55:16 +09:00
Andrew Tridgell f00f650f4f AP_Notify: fixed internal toshiba LED
we need to probe for both internal and external on all boards, not just
FMUv3
2017-10-07 12:34:47 +11:00
Michael du Breuil 0300f86913 AP_GPS: u-blox: Log unconfigured messages 2017-10-06 12:53:32 +01:00
Michael du Breuil 8719c2903a DataFlash: Log U-Blox config progress 2017-10-06 12:53:32 +01:00
Peter Barker fa95edc260 DataFlash: factor out a Log_Write_IMUDT_instance 2017-10-06 01:42:01 +01:00
Peter Barker 06a2e05be5 DataFlash: log cell voltages with correct packet type 2017-10-06 01:42:01 +01:00
Peter Barker 79ba2b357f DataFlash: factor out a Log_Write_Current_instance 2017-10-06 01:42:01 +01:00
Peter Barker 8d3267a731 DataFlash: factor out a Log_Write_Compass_instance 2017-10-06 01:42:01 +01:00
Peter Barker a7063393b4 DataFlash: factor out a Log_Write_IMU_instance 2017-10-06 01:42:01 +01:00
ChristopherOlson 7e086e8c4d AP_Motors: Fix DDFP so tail motor doesn't start without Channel 8 high 2017-10-05 13:41:34 +11:00
Leonard Hall d28182435e AP_Motors: allow for negative thrust expo
This allows for motors with a thrust curve that decreases with demand.
2017-10-05 13:40:36 +11:00
Andrew Tridgell 5646afac1c AP_Compass: avoid double detection of the AK09916
with an ICM20948 we can double detect the compass due to the i2c pass-thru
2017-10-04 11:49:06 +11:00
priseborough efdc651d1a AP_NavEKF2: Require reboot after changing ALT_SOURCE parameter
Toggling between alt sources in flight using the parameter can have unpredictable effects due to the various height offsets and the possibility that the data source may be unavailable.
2017-10-04 00:24:15 +01:00
Andrew Tridgell e1f8e7bc58 AP_Motors: cope with H vs X frame in HeliQuad 2017-10-03 10:16:41 +11:00
Andrew Tridgell 09c3eeaf0c AP_Motors: improved heli-quad yaw control 2017-10-03 10:16:41 +11:00
Andrew Tridgell a7713da703 AP_Motors: reserve collective range for attitude control 2017-10-03 10:16:41 +11:00
Andrew Tridgell f07aac396c AP_Motors: support inverted flight for helicopters 2017-10-03 10:16:41 +11:00
Andrew Tridgell f2efea4e1d AC_AttitudeControl: added inverted flight support
for helis
2017-10-03 10:16:41 +11:00
Andrew Tridgell 55d5fe843e AP_Motors: added Heli_Quad backend
supporting collective pitch quadcopters
2017-10-03 10:16:41 +11:00
Lucas De Marchi 4d5aed1d69 AP_HAL_Linux: UARTDevice: never be the controlling terminal
If we are the controlling terminal for a tty device we will receive a
SIGHUP when the device disappears. Currently what happens is that we
simply stop the whole process. We don't want to fall off the sky due
to a bad device. This can happen for any reason, but it's more likely
if the UART is behind a USB connection.
2017-10-02 11:05:09 -07:00
Peter Barker d7638389ce DataFlash: factor out a Log_Write_Baro_instance 2017-09-29 11:16:44 +01:00
Lucas De Marchi 5ebc8c2cb3 AP_HAL_Linux: ToneAlarm: ifdef out bogus message
These messages are only valid in a small subset of Linux boards (those
based on BBB and variants).  The ToneAlarm class should actually be
split allowing different implementations, but for now let's just disable
the message.
2017-09-28 09:00:26 -07:00
Lucas De Marchi 7edde571e1 AP_HAL: RCOutput_Tap: make LEDs blink on non-Aero ESCs
The protocol defines bits for controlling possible LEDs. On Aero the ESC
firmware simply ignores these bits and blink with a fixed frequency.
Add logic to be able to blink the ESC if not flashed with the Aero
version of the firmware.
2017-09-28 08:59:52 -07:00
Lucas De Marchi 2c3054cbae AP_HAL: RCOutput_Tap: remove feedback from ESCs
This is not currently working on Aero, the only user of it right now,
and it has been commented out. Remove dead code.
2017-09-28 08:59:52 -07:00
Lucas De Marchi d3a1ed9792 AP_HAL: RCOutput_Tap: fix comment with protocol bits 2017-09-28 08:59:52 -07:00
Michael du Breuil 3023fac4d0 AP_GPS: SBF enable comment block logging
This is intended to help with GCS's injecting custom data to the GPS
2017-09-27 19:29:32 +01:00
Michael du Breuil 561acb372e AP_GPS: SBF send port enable string on start
Also prohibts SBF, GSOF, NOVA drivers from getting config strings not
meant for them
2017-09-27 19:29:32 +01:00
Michael du Breuil bfbec02736 AP_GPS: SBF track the GPS error bits 2017-09-27 19:29:32 +01:00
Michael du Breuil 0d522663b2 AP_GPS: SBF: fix the PVTMode to support PPK (and baseline) units 2017-09-27 19:29:32 +01:00
Michael du Breuil 80b71b9ced AP_GPS: SBF: Validate that configuration was accepted
Note: The config string of "spm, Rover, StandAlone+SBAS+DGPS+RTK\n" is
incompatible with AsteRx-M FW 3.6.3 and will result in refusing to
arm/pass configuration checks
2017-09-27 19:29:32 +01:00
Michael du Breuil 20988b9f05 AP_GPS: SBF respect GPS_AUTO_CONFIG 2017-09-27 19:29:32 +01:00
Lucas De Marchi 2fc6e52431 AP_Compass: use IST8310 and HMC5883 as external mags 2017-09-27 09:25:34 -07:00
Lucas De Marchi 58ae139b8f AP_HAL: add possible external compasses for aero 2017-09-27 09:25:34 -07:00
Francisco Ferreira 6e286a2e66
AP_Compass: re-enable QMC5883 compass driver by default
This reverts commit a657daf635
2017-09-27 12:24:36 +01:00
Andrew Tridgell 08344557d9 AP_HAL: fixed missing LPS25H define 2017-09-27 16:42:31 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas 09baac8f25 AP_GPS: Preserve the instance number, otherwise it will get set to zero
Signed-off-by: Dr.-Ing. Amilcar Do Carmo Lucas <amilcar.lucas@iav.de>
2017-09-26 23:15:10 -07:00
Dr.-Ing. Amilcar Do Carmo Lucas 8b9fb19061 AP_GPS: Added const just to be explicit (NFC)
Signed-off-by: Dr.-Ing. Amilcar Do Carmo Lucas <amilcar.lucas@iav.de>
2017-09-26 23:15:10 -07:00
Dr.-Ing. Amilcar Do Carmo Lucas 175b7c5389 AP_GPS: spellcheck in coment (NFC) 2017-09-26 23:15:10 -07:00
Aaron Wang Shi 6a82e3aecd AP_HAL_Linux: Add debug message in RCInput_RPI _timer_tick() 2017-09-25 21:11:56 -07:00
Aaron Wang Shi ccde7cfdd4 AP_HAL_Linux: Restart RCInput_RPI DMA sampling if it stops 2017-09-25 21:10:54 -07:00
Lucas De Marchi 903ef4d065 AP_SmartRTL: update example to new API and fix object copy
ahrs should be a reference to DummyVehicle::ahrs, otherwise it will
act on a different object.

This also corrects the member initialization order: only pass a copy
or reference of an object to a constructor if it has already been
initialized.
2017-09-26 03:01:21 +01:00
Lucas De Marchi c745908b14 AP_Landing: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 67e02e3c55 AP_L1_Control: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 15527d762f APM_Control: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 61a629d766 AP_TECS: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi bfd13dfe87 global: use static method to construct AP_AHRS_DCM 2017-09-26 03:01:21 +01:00
Lucas De Marchi cd1ff7b86f AP_AHRS: DCM: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi beabae6a98 global: use static method to construct AP_AHRS_NavEKF 2017-09-26 03:01:21 +01:00
Lucas De Marchi e2a9d9c001 AP_AHRS: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi c9fbf7b722 global: use static method to construct AP_NavEKF3 2017-09-26 03:01:21 +01:00
Lucas De Marchi bd6145af6d AP_NavEKF3: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi e2fe36357a global: use static method to construct AP_NavEKF2 2017-09-26 03:01:21 +01:00
Lucas De Marchi 3c04f4e4d1 AP_NavEKF2: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 46e8d9b6d1 AP_Avoidance: add static create method for AP_Avoidance_* 2017-09-26 03:01:21 +01:00
Lucas De Marchi cce51ec1c3 AP_ADSB: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 1baccdaf85 AC_InputManager: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi b29a183a74 AC_PrecLand: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 122f3d110b AP_Terrain: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi beabccf9ef AP_LandingGear: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 31db77e47b global: use static method to construct AP_Parachute 2017-09-26 03:01:21 +01:00
Lucas De Marchi 88dea049b4 AP_Parachute: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi e1733a5a99 AC_Sprayer: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi b09e0c3261 AP_RSSI: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi e68c5a4668 AC_Avoidance: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi b05610870c global: use static method to construct AP_Rally 2017-09-26 03:01:21 +01:00
Lucas De Marchi 2f2abc2924 AP_Rally: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 52686ec838 AC_Fence: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 563f9bfe89 AP_Mount: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi ddde53f84c AP_Camera: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi df29015533 AP_ServoRelayEvents: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 13d7f58036 global: use static method to construct AP_Relay 2017-09-26 03:01:21 +01:00
Lucas De Marchi 87d2bf22f2 AP_Relay: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 8b5d799885 AP_Frsky_Telem: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi b022c02029 global: use static method to construct AP_BattMonitor 2017-09-26 03:01:21 +01:00
Lucas De Marchi bd8f0a9e93 AP_BattMonitor: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 69b6d95cb2 global: use static method to construct AP_Board_Config{,_CAN} 2017-09-26 03:01:21 +01:00
Lucas De Marchi ef3edc531c AP_BoardConfig: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi c10a91964f AP_RCMapper: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 72fd2d6f05 global: use static method to construct AP_SerialManager 2017-09-26 03:01:21 +01:00
Lucas De Marchi 04866e9f76 AP_SerialManager: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi fbe0d9761c global: use static method to construct AP_OpticalFlow 2017-09-26 03:01:21 +01:00
Lucas De Marchi 04c3dca3ce AP_OpticalFlow: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 39aee74b29 AP_Arming: make constructor protected 2017-09-26 03:01:21 +01:00
Lucas De Marchi b36a5919f5 global: use static method to construct AP_Mission
This also move the initialization to be in the header for those that
weren't already to maintain consistency.
2017-09-26 03:01:21 +01:00
Lucas De Marchi ef50783268 AP_Mission: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi de5e044b02 global: use static method to construct AP_RPM 2017-09-26 03:01:21 +01:00
Lucas De Marchi aefae9381e AP_RPM: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 40fd1b346c global: remove rangefinder from AP_AHRS_NavEKF
AP_AHRS_NavEKF doesn't use the rangefinder, it just delegates the
calls to the right estimator.

For libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp the initialization
order has also been modified to match the order on vehicles. It's more
correct since it passes a reference when EKF2/EKF3 are already
constructed, while thos constructors use a pointer.  Ideally these
should be moved to an init() method though, or use a get_instance().
2017-09-26 03:01:21 +01:00
Lucas De Marchi 9027a55696 global: use static method to construct RangeFinder 2017-09-26 03:01:21 +01:00
Lucas De Marchi 2e80b2e1d0 AP_RangeFinder: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi b3d8c0fc08 AP_Mount: use DataFlash_Class::instance()
Instead of requiring DataFlash_Class reference to be passed
on the init() function, get it from the singleton directly.
2017-09-26 03:01:21 +01:00
Lucas De Marchi 53c82b4aaf global: use static method to construct DataFlash_Class 2017-09-26 03:01:21 +01:00
Lucas De Marchi a25320d522 DataFlash: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 6aaa00d915 AP_LeakDetector: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 9463dbb408 AP_Notify: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi de680dac5b global: use static method to construct AP_Scheduler 2017-09-26 03:01:21 +01:00
Lucas De Marchi d3e12eb899 AP_Scheduler: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 8094482f21 global: use static method to construct AP_GPS 2017-09-26 03:01:21 +01:00
Lucas De Marchi 2cb2727a31 AP_GPS: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 87b30b4552 global: use static method to construct AP_InertialSensor 2017-09-26 03:01:21 +01:00
Lucas De Marchi d566567d87 AP_InertialSensor: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi c1a957fbf3 global: use static method to construct Compass 2017-09-26 03:01:21 +01:00
Lucas De Marchi 320260a151 AP_Compass: add static create method 2017-09-26 03:01:21 +01:00
Lucas De Marchi 91feec0e14 global: use static method to construct AP_Baro 2017-09-26 03:01:21 +01:00
Lucas De Marchi c5c1d5abfe AP_Baro: add static create method 2017-09-26 03:01:21 +01:00
Michael du Breuil c34104b369 APM_Control: Simpify yaw controller trig 2017-09-25 16:49:54 -07:00
Michael du Breuil eb9dd8c5a2 AP_Landing: Fix an error when computing the course offset for deepstall 2017-09-25 15:34:25 -07:00
Lucas De Marchi 54a4a78795 AP_Common: do not include version.h/ap_version.h
The interface provided by each vehicle should be used to get the
version.
2017-09-23 21:37:45 -07:00
Lucas De Marchi 9e7bda83bf DataFlash: add temporary workaround for macro usage
Make DataFlash correctly save the git version. We should think about a
better solution, like it was done on GCSMavlink, but this is the minimal
change to make it possible to move includes of version.h to their
respective users.
2017-09-23 21:37:45 -07:00
Lucas De Marchi ec935cf0fe GCS_MAVLink: refactor send_banner() to use AP_FWVersion 2017-09-23 21:37:45 -07:00
Lucas De Marchi ed2b8d3476 GCS_MAVLink: refactor send_autopilot_verison() to use AP_FWVersion
Make the method use the getter directly to get a reference of
AP_FWVersion and work out everything that needs to be sent. This allows
us to remove ifdefs and replace with runtime if/else.

Note that there's also a bug fix: we were not setting flight_custom_version
to zero in case GIT_VERSION wasn't defined.
2017-09-23 21:37:45 -07:00
Lucas De Marchi 370e10281b AP_Common: AP_FWVersion: add pointers to git hash strings
Keeping the hash strings on this struct allow to handle them
the same way on common code and remove ifdefs.
2017-09-23 21:37:45 -07:00
Andrew Tridgell 678bd084b7 AP_Compass: added IST8310 on FMUv3 I2C 2017-09-23 08:07:18 +10:00
davidaroyer cb270a9acf AP_RangeFinder: cleanup variable names in uLanding driver 2017-09-22 18:08:27 +01:00
davidaroyer 8284fb1093 AP_RangeFinder: update uLanding driver for new firmware data format 2017-09-22 18:08:27 +01:00
fnoop 149188de12 AP_HAL: Add size() method to RingBuffer ObjectArray 2017-09-22 09:56:00 -07:00
fnoop 3ddd9a6bca AP_HAL: RingBuffer: Prefix private members with underscore 2017-09-22 09:55:49 -07:00
Andrew Tridgell 2c68b5dac3 AP_Airspeed: fixed airspeed autocal
don't use negative pressures
2017-09-22 18:24:29 +10:00
Mark Whitehorn dedb40ce0b SITL: add parameter to simulate reversed pitot tube order 2017-09-22 18:21:09 +10:00
Mark Whitehorn f32f51f843 AP_Airspeed: eliminate airspeed positive bias 2017-09-22 18:21:09 +10:00
Lucas De Marchi 3847825fba AP_HAL_Linux: make Aero use Tap ESC
This allows controlling the motors from Linux on Intel Aero RTF given
the right FPGA firmware is in place.
2017-09-21 07:59:20 -07:00
Lucas De Marchi 68b3e5ccab AP_HAL: aero: define uart RCOutput_Tap 2017-09-21 07:59:20 -07:00
Lucas De Marchi 51665a2ea9 AP_HAL: RCOutput_Tap: split baudrate set for Linux and Nuttx
On Linux (and in most of posix-like systems) the baudrate set in struct
termios via cfset[io]speed is actually the index of the standard
baudrates, it's not the baudrate per se (hence the use of B* macros).

On Linux it's possible to set the baudrate by passing the baudrate
itself to TCSETS2 ioctl.  Unfortunately it's not possible to include
asm/termbits.h and termios.h in the same compilation unit, so we need to
split it. Here we split into a Linux and a NuttX implementation.
2017-09-21 07:59:20 -07:00
Lucas De Marchi 58a76adc13 AP_HAL: RCOutput_Tap: allow different device to be used 2017-09-21 07:59:20 -07:00
Lucas De Marchi f6b1099896 AP_HAL: move in tap esc implementation
This can be shared with Linux.
2017-09-21 07:59:20 -07:00
Peter Barker 3af5be76aa DataFlash: protect write fd with semaphore
If the sensor threads are using WriteBlock they may pass the _write_fd
== -1 check but then have that set to -1 by the main thread
2017-09-20 11:33:07 +01:00
Randy Mackay 953adc506d GCS_MAVLink: add break in default case
non-functional change but removes some warnings in eclipse editors
2017-09-20 12:14:38 +09:00
Peter Barker d0c2898ebc GCS_MAVLink: move handling of SET_GPS_GLOBAL_ORIGIN up 2017-09-19 15:44:23 +09:00
Randy Mackay f029303d96 AP_Arming: check ahrs and gps differ by less than 10m 2017-09-19 10:30:15 +09:00
Randy Mackay 07c195a865 GCS_MAVLink: add send_ekf_origin 2017-09-19 10:30:15 +09:00
Peter Barker 6bd7089718 GCS_MAVLink: implement handling of MAV_CMD_DO_SET_MODE 2017-09-19 01:24:11 +01:00
Peter Barker 8507763a1c GCS_MAVLink: create _handle_set_mode for common msg and cmd-long code 2017-09-19 01:24:11 +01:00
Peter Barker d1b47e863d DataFlash: resolve race conditions with IMU logging thread 2017-09-19 09:40:11 +10:00
Peter Barker 0f54cc9b22 AP_HAL_SITL: implement in_main_thread 2017-09-19 09:40:11 +10:00
Peter Barker b7bfef3cdf AP_HAL_QURT: make in_main_thread const and override 2017-09-19 09:40:11 +10:00
Peter Barker 9cb23f6108 AP_HAL_VRBRAIN: make in_main_thread const and override 2017-09-19 09:40:11 +10:00
Peter Barker 8d208ea514 AP_HAL_PX4: make in_main_thread const and override 2017-09-19 09:40:11 +10:00
Peter Barker 044cac42e8 AP_HAL_Linux: make in_main_thread const and override 2017-09-19 09:40:11 +10:00
Peter Barker 68652867e1 AP_HAL: make in_main_thread public, pure and virtual 2017-09-19 09:40:11 +10:00
mirkix 93b3970141 SITL: Add tilthvec frame 2017-09-18 21:20:39 +10:00
Rufus Wong 9491f7da55 AP_Compass: Add break to prevent fallthrough of PIXRACER to PIXHAWK_PRO 2017-09-18 19:57:22 +10:00
Andrew Tridgell 7ade37bd4e SITL: added SIM_GPS_ALT_OFS
this is used to give a bad GPS height in SITL, which is very useful for
testing origin vs home issues
2017-09-18 10:24:45 +10:00