Commit Graph

12478 Commits

Author SHA1 Message Date
Murilo Belluzzo 3f1896b9b7 RingBuffer: Remove 'old style' version 2016-10-27 14:24:10 +11:00
Murilo Belluzzo c112e1c889 DataFlash: Make use of ByteBuffer class
This patch replaces the 'old style' ringbuffer by the ByteBuffer class.
An effort was made to keep the exchange as close as possible from a
drop-in replacement to minimize the risk of introducing bugs.

Although the exchange opens opportunities for improvement and
simplification of this class.
2016-10-27 14:24:10 +11:00
Lucas De Marchi 80cf1207b7 AP_HAL_VRBRAIN: UARTDriver: fix writting with failures
When the buffer wraps and we do it in 2 steps, we can't actually do the
second part if it fails or if we wrote less bytes than we intended,
otherwise we will corrupt the data being sent.
2016-10-27 14:23:43 +11:00
Lucas De Marchi 68fc08fe52 AP_HAL_VRBRAIN: fix resetting TX buffer
We can't give the TX buffer 16 bytes more since next time begin() is
called it will compare the buffer size to the value the caller is trying
to set.  In this case we would free and alloc the buffer again each time
begin was called.
2016-10-27 14:23:43 +11:00
Murilo Belluzzo e8bfcf02a0 VRBRAIN UARTDriver: Make use of ByteBuffer class
This patch replaces the 'old style' ringbuffer by the ByteBuffer class.
An effort was made to keep the exchange as close as possible from a
drop-in replacement to minimize the risk of introducing bugs.

Although the exchange opens opportunities for improvement and
simplification of this class.

While at it, just like in the write case, explain why we are stopping.
2016-10-27 14:23:43 +11:00
Lucas De Marchi 4df627693d AP_HAL_PX4: UARTDriver: fix writting with failures
When the buffer wraps and we do it in 2 steps, we can't actually do the
second part if it fails or if we wrote less bytes than we intended,
otherwise we will corrupt the data being sent.

While at it, just like in the write case, explain why we are stopping.
2016-10-27 14:23:43 +11:00
Lucas De Marchi 4346f1dd83 AP_HAL_PX4: fix resetting TX buffer
We can't give the TX buffer 16 bytes more since next time begin() is
called it will compare the buffer size to the value the caller is trying
to set.  In this case we would free and alloc the buffer again each time
begin was called.
2016-10-27 14:23:43 +11:00
Murilo Belluzzo c7a65a026c AP_HAL_PX4: UARTDriver: Make use of ByteBuffer class
This patch replaces the 'old style' ringbuffer by the ByteBuffer class.
An effort was made to keep the exchange as close as possible from a
drop-in replacement to minimize the risk of introducing bugs.

Although the exchange opens opportunities for improvement and
simplification of this class.
2016-10-27 14:23:43 +11:00
Lucas De Marchi 26650049c0 AP_HAL_Linux: UARTDriver: fix writting/reading with failures
When the buffer wraps and we do it in 2 steps, we can't actually do the
second part if it fails or if we wrote less bytes than we intended,
otherwise we will corrupt the data being sent.
2016-10-27 14:23:42 +11:00
Murilo Belluzzo ce81c45f80 AP_HAL_Linux: UARTDriver: Make use of ByteBuffer class
This patch replaces the 'old style' ringbuffer by the ByteBuffer class.
An effort was made to keep the exchange as close as possible from a
drop-in replacement to minimize the risk of introducing bugs.

Although the exchange opens opportunities for improvement and
simplification of this class.
2016-10-27 14:23:42 +11:00
Murilo Belluzzo 8526b25654 RingBuffer: Add a faster method to read a single byte 2016-10-27 14:23:42 +11:00
Michael du Breuil deec4ec6af Compass: Rework compass calibrator
Summary of significant changes:
  -Autsave doesn't depend on STREAM_EXTRA3
  -Don't risk only saving one compass on copter if CAL_ALWAYS_REBOOT is set
  -Only calibrate compasses that are both health and marked for use (there was a inconsistency in handling the mask)
  -Fix incorrect failure reporting on DO_ACCEPT_MAG_CAL with a mask of 0 if a channel was specifically not started
  -Fix not starting the buzzer if the delay is set to 0 seconds
  -Always send MAG_CAL_REPORT until its acknowledged
  -Correct the field in MAG_CAL_REPORT for autosave to indicate if the compass had actually been saved, rather then being scheduled to be saved
  -Remmove unused public interfaces
2016-10-27 14:04:33 +11:00
floaledm 6869dace08 AP_Frsky_Telem: moved msg queueing of fw string 2016-10-26 09:49:30 -07:00
floaledm 56432f04d3 AP_Frsky_Telem: fixed airspeed; now same as VFR_HUD 2016-10-26 09:36:22 -07:00
Mathieu OTHACEHE 5e42800b5e Disco: add LED support
Use RGBLed generic implementation to support Disco LED.
2016-10-26 11:56:11 -03:00
Leonard Hall 42672de606 AC_PosControl: set Alt_Hold filter for PID not just D
We normally don't use the D term here so setting the filter for PID not
just D lets us smooth the throttle response.
2016-10-26 21:00:43 +09:00
Francisco Ferreira 5a7f9a38fe DataFlash: fix RCIN and RCOU structure types 2016-10-26 10:10:19 +09:00
murata 762a66c9e5 AP_GPS_SBF: Adjust the initial value of HDOP 2016-10-26 09:54:59 +11:00
Peter Barker 2bd13af43d AP_Param: unhide groups when generating parameters in autotest 2016-10-26 09:53:14 +11:00
Peter Barker dd7d41b1f3 SITL: unhide groups when generating parameters in autotest 2016-10-26 09:53:14 +11:00
Andrew Tridgell d2287caf1c HAL_SITL: removed old servo slew rate code 2016-10-25 20:39:38 +11:00
Andrew Tridgell 5e03358b0b SITL: added servo filtering
SIM_SERVO_SPEED is servo time constant in seconds
2016-10-25 20:39:38 +11:00
Lucas De Marchi 539b727e5e AP_HAL_Linux: Remove misleading constant
The constant passed to cflag is BOTHER, meaning the actual baud is set
in the other specific members.  Don't define B* constants as they are
misleading here and this is why it doesn't work with e.g.
cfset[io]speed()... that function expect a B* constant which in Linux
is not the speed, but an index to an array with speeds.
2016-10-25 16:55:33 +11:00
Francisco Ferreira 3a89421c70 AP_BattMonitor: remove Bebop fixed capacity
Bebop, Bebop2 and Disco all use this class but it was always setting the capacity to the Bebop one, overriding the parameter
2016-10-24 09:24:11 -03:00
Martin Evans 0e19b8c9a0 AP_HAL_Linux: Set initial rotation on Dark to None 2016-10-24 10:00:24 -02:00
Martin Evans 6f6112d7c2 AP_HAL_Linux: Add setting for GPIO for Dark board
Just like other RPI-based boards.
2016-10-24 10:00:24 -02:00
Martin Evans d2d3119b66 AP_HAL_Linux: PCA9685: Add quinary address 2016-10-24 10:00:06 -02:00
Martin Evans 37b85fd3cd AP_HAL: Add Dark Linux board 2016-10-24 09:59:02 -02:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Peter Barker d188504b8b AC_Fence: remove unused variable _boundary_revalidate 2016-10-24 08:57:56 -02:00
Peter Barker 6e72c899d1 AP_GPS: AP_GPS_GSOF: remove unused variable 2016-10-24 08:57:56 -02:00
Peter Barker 216a6493c9 AP_Compass: AP_Compass_LSM9DS1: remove unused variable 2016-10-24 08:57:56 -02:00
Peter Barker 64154feaef DataFlash: remove unused semaphore variables 2016-10-24 08:57:56 -02:00
Peter Barker c664eec93b AC_WPNav: remove unused variable _last_update 2016-10-24 08:57:56 -02:00
Peter Barker 6f200cdc3d SITL: SIM_Rover: remove unused variables 2016-10-24 08:57:55 -02:00
Peter Barker e17a71c6cc AP_GPS: AP_GPS_NOVA: remove unused variables 2016-10-24 08:57:55 -02:00
Peter Barker d3422d1653 SITL: SIM_Tracker: remove unused variable 2016-10-24 08:57:55 -02:00
Peter Barker 5dad8745d5 DataFlash: remove bogus function declaration 2016-10-24 08:57:55 -02:00
Andrew Tridgell 9d6a5c6f04 HAL_PX4: make ready_to_arm state latching
this fixes a race condition in the handling of the px4io safety switch
2016-10-24 13:36:04 +11:00
Peter Barker 17883f6683 AP_InertialSensor: fix INS_generic example (call BoardConfig.init()) 2016-10-24 11:00:22 +09:00
Andrew Tridgell 2a44e6a7d7 HAL_PX4: cope with no px4io on FMUv2
don't open px4fmu twice
2016-10-23 17:15:32 +11:00
Andrew Tridgell 68f0777dac AP_Param: fixed bug with deeply nested parameter trees
enumeration could loop forever if the IDs overlapped due to 8 bit
masking
2016-10-23 15:27:42 +11:00
Andrew Tridgell 7bf81c44b0 AP_BoardConfig: allow programmatic setting of default safety mask 2016-10-21 11:53:34 +11:00
Andrew Tridgell 0bd3b8ecbd AP_BoardConfig: fixed bug in fmu safety mask set 2016-10-21 09:10:55 +11:00
Andrew Tridgell c825c7b4cc HAL_PX4: disable FMU outputs again on re-engaging of safety switch 2016-10-21 09:10:55 +11:00
Andrew Tridgell 8cb93ae7c3 AP_BoardConfig: call PWM_SERVO_IGNORE_SAFETY on fmu as well 2016-10-21 09:10:55 +11:00
Andrew Tridgell 07c09ad6dc AP_BoardConfig: expanded bitmask to 14 channels for safety mask 2016-10-21 09:10:55 +11:00
Andrew Tridgell d2e4b73eda Revert "GCS_MAVLink: default to MAVLink2 enabled"
Reverting change to MAVLink2 by default until SiK radio firmware issue
with ECC is sorted out
2016-10-21 07:55:02 +11:00
Andrew Tridgell 1171b33419 AP_TECS: added TECS_SYNAIRSPEED parameter
this allows for the synthetic airspeed estimate to be used in TECS
2016-10-20 13:22:39 +11:00
Andrew Tridgell 7ee42d3a7e AP_TECS: fixed missing doc comment 2016-10-20 13:22:22 +11:00