Daniel Frenzel
b9c0f34897
AP_Scheduler example
...
Fixed build problem with "make linux"
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2015-08-10 19:49:38 +10:00
Andrew Tridgell
9352f05133
GCS_MAVLink: fixed bug setting parameters to default values
...
in copter if you try to set RATE_RLL_D to 0 when you haven't
prevviously changed it then it would set it, but would revert on the
next reboot. This is because of the special case handling of a set to
the "default" value. That default value is unaware of the PID
constructors
this fixes that behaviour by forcing a save if the parameter changes
value
2015-08-10 17:27:02 +10:00
Andrew Tridgell
269f1fd99a
AP_Param: replaced set_param_by_name with set_float
...
read for bugfix in GCS_MAVLink
2015-08-10 17:25:29 +10:00
Michael du Breuil
c29b19f768
AP_GPS: Fix a typo on spelling received
2015-08-08 13:22:04 +09:00
Michael du Breuil
c8c34f54cc
AP_HAL_SITL: Add hdop to ublox sitl sim (as well as vdop to be reported)
2015-08-08 13:22:02 +09:00
Lucas De Marchi
cf1273668e
AP_InertialSensor: refactor constructors to avoid leak
...
We were previously leaking the AP_MPU6000_BusDriver if the
~AP_InertialSensor_MPU6000::detect*() failed. In order to avoid the
leak move the repeated code in a single private _detect() member that
receives everything as argument. Then this method takes ownership of the
objects.
By a adding a destructor to AP_InertialSensor_MPU6000 it becomes easier to
free the objects it takes ownership of.
2015-08-08 14:12:22 +10:00
Lucas De Marchi
c3063f0ab2
AP_InertialSensor: MPU6000: be agnostic to I2C bus/address
...
This decision is better made by the caller rather than polluting the
driver with board-specific details.
2015-08-08 14:12:22 +10:00
Lucas De Marchi
4d4dac867e
AP_InertialSensor: pass backend instead of pointer to function
...
Different detect() function might need different arguments and passing a
pointer to function here is cumbersome. For example, it forces to have a
method like "detect_i2c2" rather than allowing hal.i2c2 to be passed as
parameter.
2015-08-08 14:12:22 +10:00
Gustavo Jose de Sousa
d3eebdb6aa
AP_InertialSensor: L3G4200D: add probe code
...
This driver works properly but had the initialization logic missing. Add
the support to probe it.
2015-08-08 14:12:22 +10:00
Lucas De Marchi
55279664c2
AP_InertialSensor: remove out of place ifdef
...
AP_InertialSensor isn't a good place to comment about board issues.
2015-08-08 14:12:21 +10:00
Lucas De Marchi
2e76d998df
AP_InertialSensor: remove unused enum bus_speed
...
The methods actually use the enum from AP_HAL::SPIDeviceDriver, so don't
declare a new one. The I2C implementation is empty; if we actually start
to use it we'd better move the bus abstraction to HAL.
2015-08-08 14:12:21 +10:00
Lucas De Marchi
f3f54157be
AP_InertialSensor: fix copying wrong number of bytes
...
We should copy only the bytes we read, not the maximum number.
2015-08-08 14:12:21 +10:00
Lucas De Marchi
209e1924a5
AP_InertialSensor: fix whitespace usage
2015-08-08 14:12:21 +10:00
Michael du Breuil
bc26eaab63
AP_GPS: Ublox: fall back to the DOP if hDOP hasn't come in yet
...
Provides a stable fallback, and can be considered fairly safe from the perspective that it provides a worse value then the hDOP under almost all scenarios.
2015-08-07 21:21:48 +10:00
Lucas De Marchi
3851862f60
AP_InertialSensor: remove unused drivers
...
Nobody is using these drivers, they need to be rewritten using the
backend logic and give the false impression they are supported.
2015-08-07 20:57:49 +10:00
Gustavo Jose de Sousa
0d1d960899
StorageManager: remove unnecessary calculations on addr for next area
...
When writting or reading a block, if the block doesn't fit the area where it begins, the next base address is always zero. Thus the calculations to define the next value of addr are unnecessary.
Here's a quick validity proof using the previous calculations:
First: Considering the case where the block doesn't fit it's first area:
That means that (count + addr > length), what makes:
count = length - addr; (1)
So the following operations:
addr += count;
addr -= length;
Are the same as doing:
addr = addr + count - length; (2)
Using (1) and (2) we have:
addr = addr + length - addr - length = 0
Second: When the block fits the area where it's at:
That means that variable count is not changed,
thus (n -= count) evaluates to 0, which makes the loop exit.
Another change was (b += count;) being moved after the condition to break the loop, since we just need to move the block pointer when it doesn't fit the first area.
2015-08-07 20:52:20 +10:00
Randy Mackay
f009c2ddb9
Motors_Multicopter: add MOT_THR_MIX_MAX parameter
...
Allows controlling the prioritisation of throttle vs attitude control
during active flight
2015-08-07 17:39:09 +09:00
Randy Mackay
4aef64c153
OpticalFlow_Linux: reworked driver
...
remove PANICs from init
return semaphore if init fails
add successful initialisation check before attempting to read from sensor
structure made private where possible
formatting fixes
check I2C reads succeed
add request_measurement to request sensor to produce measurement
quit after 20 of previous 40 reads fail
throttle reads to 10hz max
2015-08-07 15:51:11 +09:00
Víctor Mayoral Vilches
ed3366aaae
AP_OpticalFlow: Add support for Linux
...
Add a Linux userspace driver for the PX4FLOW sensor.
2015-08-07 15:50:41 +09:00
Randy Mackay
42c7b4a116
BattMon_SMBus: remove unnecessary I2C semaphore give
2015-08-07 15:50:38 +09:00
Randy Mackay
66469d7529
Compass_HMC5843: remove unnecessary i2c semaphore give
2015-08-07 15:50:36 +09:00
Randy Mackay
5776620062
DataFlash: consolidate GPS, GPS2 messages
...
Remove unused dgps_numch, dgps_age from GPS2
Add U field (for use) to both GPS and GPS2
2015-08-05 15:46:46 +09:00
Andrew Tridgell
7e2e78c1af
AP_AHRS: protect against zero deltat in DCM
...
fixes issue #2657
2015-08-05 15:21:00 +10:00
Randy Mackay
a81d756ce1
AC_WPNav: remove unused definitions
2015-08-05 14:14:55 +09:00
Randy Mackay
fb9cc124c8
AC_WPNav: replace hardcoded 0.02 with pos_control dt
2015-08-05 14:14:54 +09:00
Leonard Hall
8195f45d6c
AC_WPNav: fix spline height loss
2015-08-05 14:14:49 +09:00
Michael du Breuil
c704102dcd
AP_GPS: Default the value of hdop to 99.99 if no value has been read yet.
2015-08-04 22:10:02 +09:00
Randy Mackay
136853a750
Rally: rename RALLY_HOME_INC param to INCL_HOME
...
Also default include-home to 1 only for copter
Also minor formatting and comment changes
2015-08-04 21:25:44 +09:00
KiwiHC16
e0e2ed519c
Rally: add RALLY_HOME_INC param to use Home as a Rally point
2015-08-04 21:25:41 +09:00
Julien BERAUD
39b42a4e6e
AP_Compass_AK8963: suspend timer while reading
...
Protection in case a timer falls while reading data, because it could end up
with corrupted data
2015-08-03 22:50:08 +09:00
Julien BERAUD
0aa2fe7a0b
AP_Compass_AK8963: fix sem handling
...
In case of error or zeroed data, the i2c semaphore wasn't given.
It happened at first startup on Bebop and caused a failure:
"PANIC: failed to take _bus->sem 100 times in a row..."
2015-08-03 20:57:46 +09:00
Leonard Hall
1a583c5382
AP_Motors: calc_roll_pwm based on throttle pwm range
2015-08-03 14:12:49 +09:00
Randy Mackay
9067abc037
AHRS_NavEKF: fix blended accel to use primary accel
2015-08-01 17:19:45 +09:00
Randy Mackay
7d2c0079ff
Terrain: set HAL capabilities bit
2015-07-31 14:50:26 +09:00
Randy Mackay
d0aa1a89cd
GCS_MAVLink: retrieve capabilities from HAL
2015-07-31 14:50:22 +09:00
Randy Mackay
810973ce95
HAL: define capability bitmask
2015-07-31 14:50:19 +09:00
squilter
c946ce72e8
GCS_MAVLink: add optional param to support capability bitmask
2015-07-31 14:50:10 +09:00
Andrew Tridgell
212898d02b
AP_InertialSensor: don't use INT_STATUS drdy to lower SPI bus speed
...
as pointed out by Lucas in PR#2604 this is probably a bad idea
2015-07-30 14:05:20 +10:00
Grant Morphett
538a077ae8
SITL: fix coverity warning - removed unused variable heli_servos
2015-07-30 12:37:09 +10:00
Grant Morphett
08f5305519
DataFlash: fix coverity warnings - add param init in constructor
2015-07-30 12:37:09 +10:00
Grant Morphett
e2eda97ec6
AP_InertialSensor: fix coverity warnings - param init in construct
2015-07-30 12:37:08 +10:00
Grant Morphett
312184dd13
AP_Baro: coverity fixes - add param init in constructor
2015-07-30 12:37:08 +10:00
Andrew Tridgell
087e729748
AP_GPS: re-enable SBAS config on APM2 for uBlox
2015-07-30 11:04:31 +10:00
Andrew Tridgell
9c776736c1
AP_AHRS: use delta_velocity and delta_angle in DCM
...
this prevents an aliasing effect by using the correct delta velocity
time value for each accelerometer sample used
2015-07-30 11:04:31 +10:00
Andrew Tridgell
b6beeb6f2f
AP_GPS: save some memory and code space on APM2 for ublox
...
don't include structures we don't need for low end CPUs
2015-07-30 08:46:20 +10:00
Randy Mackay
8aa7a3cffc
GPS: suppress compile warning
2015-07-29 16:53:18 +09:00
Randy Mackay
be6089e903
GPS: fix compile warning for NMEA logging
2015-07-29 16:53:16 +09:00
Randy Mackay
5732a6a144
Baro: update climb rate only if healthy
2015-07-29 16:32:49 +09:00
Andrew Tridgell
45a7c37734
HAL_Linux: added bcast flag for udp broadcast
2015-07-29 16:46:53 +10:00
Andrew Tridgell
eca0940bc7
AP_HAL: allow for broadcast packets on UDP IPv4
2015-07-29 16:46:33 +10:00
Andrew Tridgell
17b5d54f6b
GCS_MAVLink: use a larger log send queue for Linux
...
often on UDP or TCP with more bandwidth
2015-07-29 14:19:47 +10:00
Andrew Tridgell
3e4b0b9869
AP_HAL: added pollout() function to socket API
2015-07-29 14:19:46 +10:00
Andrew Tridgell
b99740cb93
HAL_Linux: sped up UDP transfers by about 25x
...
allow more than 1 packetised transfer per tick
2015-07-29 14:19:46 +10:00
Andrew Tridgell
25fe2b3fb0
AP_GPS: added optional NMEA debug log
...
compile time option for debugging
2015-07-29 11:07:01 +10:00
Andrew Tridgell
a5c7aa1b19
HAL_Linux: allow startup before network bringup
...
this makes it possible to bootup ardupilot before the desired network
interface is available. This is very useful for when using 3G dongles
in aircraft
2015-07-29 09:55:47 +10:00
Andrew Tridgell
55fc66ec65
HAL_Linux: implemented TCP server as a single driver
...
the wait flag just changes startup behaviour. The TCP server should
always be a server with listen and accept. We don't need two drivers
2015-07-29 09:37:57 +10:00
Andrew Tridgell
596ecde70d
AP_HAL: added listen and accept APIs to socket API
2015-07-29 09:07:41 +10:00
Andrew Tridgell
b07f7e873f
AP_HAL: added pollin() interface for Socket API
2015-07-29 08:58:02 +10:00
Andrew Tridgell
f72d9c6393
HAL_Linux: replace recvfrom with recv
2015-07-29 08:39:29 +10:00
Andrew Tridgell
5067359ed7
AP_HAL: fixed socket destructor
2015-07-29 08:39:16 +10:00
Andrew Tridgell
3f3aaa3c50
HAL_Linux: removed 0 timeout from sendto call
2015-07-29 08:36:50 +10:00
Staroselskii Georgii
aa3efecef3
AP_HAL_Linux: fixed _parseDevicePath() in LinuxUARTDRiver
...
The current implementation doesn't throw an error on a malformed path string.
i.e. udp:192.168.1.1.14550 instead of udp:192.168.1.1:14550 may result in a memory leak or whatsoever.
The commit fixes the issue and outputs a nice error message if anything's wrong.
2015-07-29 08:36:09 +10:00
Staroselskii Georgii
0362128265
AP_HAL_Linux: renamed TCPClientDevice
2015-07-29 08:36:09 +10:00
Staroselskii Georgii
211acbec9c
AP_HAL_Linux: renamed TCPServerDevice
...
A more appropriate name for the class.
2015-07-29 08:36:08 +10:00
Staroselskii Georgii
a3f47878a2
AP_HAL_Linux: made UARTDriver use TCPServerDevice
2015-07-29 08:36:08 +10:00
Staroselskii Georgii
56f760f022
AP_HAL_Linux: added TCPServerDevice
2015-07-29 08:36:08 +10:00
Staroselskii Georgii
eacc085289
AP_HAL_Linux: made UARTDriver use TCPClientDevice
2015-07-29 08:36:07 +10:00
Staroselskii Georgii
a5ef931f5c
AP_HAL_Linux: added TCPClientDevice
2015-07-29 08:36:07 +10:00
Staroselskii Georgii
6e34dd9669
AP_HAL_Linux: got rid of TCP connection
2015-07-29 08:36:07 +10:00
Staroselskii Georgii
de6b2b4bce
AP_HAL_Linux: made UARTDriver use ConsoleDevice
2015-07-29 08:36:07 +10:00
Staroselskii Georgii
a9c9d91f09
AP_HAL_Linux: added ConsoleDevice
2015-07-29 08:36:06 +10:00
Staroselskii Georgii
6ec67a9bfd
AP_HAL_Linux: made UARTDriver use UDPDevice
2015-07-29 08:36:06 +10:00
Staroselskii Georgii
1881878c3a
AP_HAL_Linux: added UDPDevice
2015-07-29 08:36:06 +10:00
Staroselskii Georgii
656399541f
AP_HAL_Linux: encapsulated LinuxUARTDriver::_deallocate_buffers
2015-07-29 08:36:06 +10:00
Staroselskii Georgii
f117134443
AP_HAL_Linux: made UARTDriver use UARTDevice
2015-07-29 08:36:05 +10:00
Staroselskii Georgii
acd180ae96
AP_HAL_Linux: added UARTDevice
2015-07-29 08:36:05 +10:00
Staroselskii Georgii
6b94fd7603
AP_HAL_Linux: added SerialDevice interface
...
Adds the interface that will be used for encapsulating various mediums
that can be used in the Linux port.
2015-07-29 08:36:05 +10:00
Staroselskii Georgii
dacbdb57c4
AP_HAL_Linux: added _serial_start_connection
2015-07-29 08:36:05 +10:00
Staroselskii Georgii
44198bd4eb
AP_HAL_Linux: encapsulated LinuxUARTDriver::allocate_buffers
2015-07-29 08:36:04 +10:00
Staroselskii Georgii
94de9416fe
AP_HAL_Linux: use defines instead of hardcoding fd numbers in UARTDriver
2015-07-29 08:36:04 +10:00
Staroselskii Georgii
1a588263e4
AP_HAL: added destructor for Socket
2015-07-29 08:34:43 +10:00
Staroselskii Georgii
4411c1fed4
AP_HAL: improved constness of Socket API
2015-07-29 08:24:24 +10:00
Michael du Breuil
5c9d248407
AP_GPS: Fix copy/paste error in ublox (uncovered by coverity)
2015-07-28 18:01:02 +09:00
Randy Mackay
0bf1d04172
AC_AttControl: relax earth frame rate targets along with bf
2015-07-28 15:16:22 +09:00
rentt
ad32a98e29
Scheduler: fix compiler warning in example sketch
...
printf except a unsigned long value, but the hal.scheduler->millis() return a uint32_t
2015-07-28 12:06:46 +09:00
Tom Pittenger
0c9cec7958
SITL: param SITL_ARSP_FAIL should be a float instead of byte
...
this param was meant to represent an airspeed which is a float
2015-07-28 11:03:13 +10:00
Andrew Tridgell
c86ff1ac25
RC_Channel: prevent floating exception on bad MIN/MAX/TRIM values
2015-07-27 12:04:03 +10:00
Tom Pittenger
01161135d6
AP_InitialSensor_MPU6000: compiler warning - init order
2015-07-27 10:30:17 +09:00
Tom Pittenger
93c6ed0ea2
AC_WPNav: compiler warnings: float to double
2015-07-27 10:30:15 +09:00
Randy Mackay
5032cf9fbc
Copter: init multicopter flags
...
Resolves coverity warning
Also fixed indentation
2015-07-25 14:00:29 +09:00
Michael du Breuil
9d53aa77eb
AP_GPS: Add reboot required docstring
2015-07-25 10:56:19 +09:00
Randy Mackay
b13921a7aa
Mount_SToRM32: find gimbal channel on startup
2015-07-25 10:53:05 +09:00
Randy Mackay
e7df54ca75
GCS_MAVLink: static find_by_mavtype method
2015-07-25 10:53:03 +09:00
Randy Mackay
e092902613
GCS_MAVLink: add find_by_mavtype
2015-07-25 10:52:59 +09:00
Peter Barker
1ee330ebb2
DataFlash: CLI log dumping - don't truncate lines that contain doubles
...
We currently print doubles out as if they were floats. The ftoa_engine isn't something to replicate for doubles lightly!
2015-07-24 08:08:51 +10:00
Peter Barker
39b2cdcc3c
AP_Menu: avoid segmentation fault
...
Insufficient input would cause a segfault
2015-07-24 08:05:13 +10:00
Randy Mackay
3dfb447fd7
BattMon: has_current true for Bebop
...
The bebop does not actually provide current but it does estimate the
percentage of battery remaining
2015-07-23 21:49:32 +09:00
Randy Mackay
8403b504d1
BattMon: add Bebop to monitor param description
2015-07-23 21:49:32 +09:00
Randy Mackay
9482578c60
BattMon: Bebop always uses bebop batt monitor
2015-07-23 21:49:31 +09:00
Randy Mackay
84b6ab0707
BattMon_Bebop: use ARRAY_SIZE
...
Also remove printf of failure message, instead we should add the battery
monitor health to the SYS_STATUS message sent to the ground station
2015-07-23 21:49:30 +09:00