Commit Graph

14990 Commits

Author SHA1 Message Date
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