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
Randy Mackay
3b36178a0b
BattMon_Bebop: init members in constructor
2015-07-23 21:49:29 +09:00
Jean-Baptiste Dubois
f6aba6c952
HAL_Linux: add read_obs_data to RCOutput_Bebop
2015-07-23 21:49:28 +09:00
Jean-Baptiste Dubois
35ae562dbe
AP_BattMonitor: Add battery support for Bebop Hardware
2015-07-23 21:49:27 +09:00
Andrew Tridgell
54254c89d7
AP_Arming: control rudder arming with ARMING_RUDDER parameter
...
allow for 3 states:
0: no rudder arming
1: arm only
2: arm and disarm
2015-07-23 21:48:50 +10:00
Lucas De Marchi
8240e5ae65
AP_Compass: AK8963: reduce bytes read
...
We are not using INFO and ST1 registers, so there's no need to read
extra 2 bytes for each transaction.
2015-07-23 17:44:36 +10:00
Lucas De Marchi
2b9c46e1ff
AP_Compass: AK8963: don't oversample AK8963
...
Reduce the frequency with which MPU9250 reads AK8963 to reduce the
chance of errors.
2015-07-23 17:44:36 +10:00
Lucas De Marchi
6c2ceea165
AP_Compass: AK8963: remove author and connection comment
...
Authorship and how sensor is connected get outdated (as it already is).
Our code is on git so let it track who wrote each line.
2015-07-23 17:44:36 +10:00
Staroselskii Georgii
8ab33c46ce
AP_Compass: revisited AK8963 code
...
Reduced duplication a bit and revisited the update method which is now
split into several logical hunks.
2015-07-23 17:44:36 +10:00
Lucas De Marchi
fffedae3e0
AP_Compass: AK8963: reduce stack usage and zero out buffers
...
Since we are not using MPU9250's fifo to get samples from AK8963 we will
always read only 1 sample (+ control registers).
2015-07-23 17:44:35 +10:00
Lucas De Marchi
37734886a5
AP_Compass: AK8963: remove repeated comments
...
No need to repeat the same comments on 3 different places. Instead add a
single comment to explain how start_measurements() and read_raw() are
related.
2015-07-23 17:44:35 +10:00
Lucas De Marchi
27d95b67a8
AP_Compass: AK8963: remove state machine
...
Don't use a state machine in AK8963: the start_measurements() method
should be called only once. Even if there's a magnetic sensor overflow
the only thing we should do is to discard the new data.
This also moves the _collect_samples() method to be inside _update()
since it's the only place it should be called from, the one running on
the timer thread.
2015-07-23 17:44:35 +10:00
Lucas De Marchi
e232543fca
AP_Compass: AK8963: change initialization and rename methods
...
We need to check the AK8963's id before anything else Here we are
reordering the calls to _calibrate() and _check_id(). After that we
don't need to read and write again the AK8963_CNTL1 register.
While at it do some renames as well:
- _configure() -> _setup_mode(): since now there's a
_bus->configure() it became confusing what actually it's
doing.
- make error messages say what we were actually trying to do but
couldn't. Also remove PSTR since this is linux-only.
- start_conversion() -> start_measurements(): We are instructing the
bus to start to get the samples, not to tell the chip to start an
analog->digital conversion like in other sensors.
2015-07-23 17:44:35 +10:00
Lucas De Marchi
ae5d9baddb
AP_Compass: AK8963: remove defines not used anymore
...
The MPUREG_PWR_MGMT_1 defines were used when we cared about the MPU9250
initialization code. Now all initialization is done by the MPU9250 class
itself, so remove these defines.
Also remove AK8983_SELFTEST_MAGNETIC_FIELD_ON that is never used and let
the defines always with 2 bytes to improve readability.
2015-07-23 17:44:34 +10:00
Lucas De Marchi
cae895bfdf
AP_Compass: AK8963: group members together
...
Besides being semantically related, this removes the hole due to
alignment. The size is the same since the hole is actually turned into
padding.
2015-07-23 17:44:34 +10:00
Lucas De Marchi
28d3d775a4
AP_Compass: AK8963: remove resolution member
...
We only use the highest one and there's no intention to support the
14bits one. Just use the define rather than saving it as a member.
2015-07-23 17:44:34 +10:00
Lucas De Marchi
86b3312112
AP_Compass: AK8963: factor out common code of read_raw()
...
Similar code was added in the read_raw() implementation for each bus.
Add a new POD struct read_raw to contain the registers from the AK8963
and use it instead as argument.
2015-07-23 17:44:33 +10:00
dgrat
d941174978
AP_Compass: AK8963: enhance the readability
...
Reduce the deepness of indentation and fix coding style.
2015-07-23 17:44:33 +10:00
Randy Mackay
28c722c157
AC_Circle: rate change takes effect immediately
2015-07-23 16:21:20 +09:00
Tom Pittenger
d51e6d466b
AP_HAL_SITL: add support for airspeed failures
2015-07-23 14:38:06 +10:00
Tom Pittenger
250dcd31a2
SITL: Add ARSP_FAIL param
...
This will allow testing pitot tube hardware failures
2015-07-23 14:38:06 +10:00
Staroselskii Georgii
d7ac725a64
AP_HAL_Linux: fixed signal handler in RCInput_Navio
...
DMA is getting stopped in the separate method now. This is the best we
can get at the current time. It does yield slightly better experience
and works in the majority of cases.
The patch is a no bulletproof solution, though.
There's a possibility of corruption in case of e.g. a SIGKILL. There's
no signal framework at the time and the commit doesn't add one. That's
why all signals are handled in the same erroneous way. This is not a
good nor a final solution to the issue.
For the issue at hand a better fix might be porting the code to kernel
space but it's a rather tediuos task that we cannot undertake in the
couple of weeks.
2015-07-23 08:51:38 +10:00
Staroselskii Georgii
8528a7d159
AP_HAL_Linux: added deinit logic for RCInput_Navio
...
DMA needs to be stopped if a panic occurs.
2015-07-23 08:51:37 +10:00
Staroselskii Georgii
f4d14f73ba
AP_HAL_Linux: extended panic handling with RCInput deinitialization
...
The issue has already come up. There's no deinitialization mechanisms at the moment. As APM is rather software than firmware on Linux, there're some clean-up work that needs to be done. This commit triggers deinitialization of RCInput on a panic.
2015-07-23 08:51:37 +10:00
Vladislav Zakharov
97b51a4bcb
AP_HAL: Added deinit() method to RCInput
...
Add a deinit() counterpart. This is needed for some ports that require some deinitializtion logic. The default implementation is empty. I'm not sure whether we need to inforce it for all.
2015-07-23 08:51:37 +10:00
Tom Pittenger
9737c426eb
SITL: Gazebo index out of bound
...
- imu_orientation_quat[size=3] is fed to Quaternion[size=4] which causes an index-out-of-range problem
2015-07-22 21:33:46 +10:00
Michael du Breuil
59dda49cce
AP_GPS: Fix missing reserved fields in the UBX-RXM-RAWX message
2015-07-22 21:31:10 +10:00
Michael du Breuil
09fef505e0
AP_GPS: With a ublox driver, accept a packet if it will fit in the buffer
2015-07-22 21:31:10 +10:00
Michael du Breuil
22b16b4532
AP_GPS: Enable selecting what GNSS system to use if the reciever supports it
...
Ublox 7 and 8 seires use a UBX-CFG-GNSS message to enable satellite constellations. The default value does not enable any additional ones, and any constellations the reciever doesn't report knowing about are not configured.
2015-07-22 21:31:10 +10:00
Michael du Breuil
47592a1953
AP_GPS: Raise the baud rate on a ublox GPS if using RAW logging
...
the implementation leaves an easy path forward for providing a different startup blob for all the GPS's if raw logging is enabled
2015-07-22 21:31:09 +10:00
Michael du Breuil
19bb96b9cb
AP_GPS: Improve startup logic for detecting what gps is connected
...
Remove race condition on sending intial blob to the GPS, it was possible to send a blob that got the GPS configured enough to allow the autodetect to take over (and then some drivers like ublox would not finish sending the blob, which has potential details that the driver might have needed to send)
Limit the delay to checking for NMEA gps to only checking after all the available baud rates have been checked
Since a UBlox will actually report having DGPS (due to SBAS or RTCM data) actually report this as the highest supported mode
2015-07-22 21:31:09 +10:00
Arthur Benemann
e3398648d7
GCS_MAVLink: fix debug formatting
2015-07-21 21:41:34 +09:00
Randy Mackay
521f3dc4b9
GCS_MAVLink: only forward msg once per channel
...
Issue found and alternative fix provided by Arthur Benemann
2015-07-21 21:41:32 +09:00
Randy Mackay
6f72d202fe
GPS: fix parameter descriptions
2015-07-21 19:50:12 +09:00
Randy Mackay
e31f2d26c4
MotorsMulticopter: move get_hover_throttle_as_pwm to protected
...
No functional change
2015-07-21 16:27:04 +09:00
Randy Mackay
c7c6228b5d
MotorsMulticopter: remove virtual from set_yaw_headroom
2015-07-21 16:27:01 +09:00
Randy Mackay
157c97447d
AC_AttControlHeli: init passthrough_yaw
2015-07-21 16:26:27 +09:00
Randy Mackay
8b4805bfcb
AC_AttControl_heli: add MotorsHeli include
2015-07-21 16:25:56 +09:00
Randy Mackay
bf2bf2e3fa
AC_AttControl_Multi: new multirotor specific attitude control class
2015-07-21 16:25:53 +09:00
Randy Mackay
93dd7dd970
AC_AttControl: get_boosted_throttle purely virtual
2015-07-21 16:25:50 +09:00
Randy Mackay
4843be49de
AP_MotorsTri: remove call to empty parent Init
...
Also rename uses of Multirotor to Multicopter
2015-07-21 16:25:48 +09:00
Randy Mackay
f906934dfa
AP_MotorsSingle: remove call to empty parent Init
...
Also rename uses of Multirotor to Multicopter
2015-07-21 16:25:45 +09:00
Randy Mackay
112e934072
AP_MotorsMatrix: remove call to empty parent Init
...
Also rename uses of Multirotor to Multicopter
2015-07-21 16:25:43 +09:00
Randy Mackay
b1a4a6bf0a
AP_Motors_Coax: remove call to empty parent Init
...
Also rename uses of Multirotor to Multicopter
2015-07-21 16:25:40 +09:00
Randy Mackay
4d1dfd94f5
AP_MotorsMulticopter: multicopter features moved in from parent
...
Also rename from multirotor to multicopter
2015-07-21 16:25:37 +09:00
Randy Mackay
7355ac9cb8
AP_MotorsHeli: implement empty slow start method
2015-07-21 16:25:34 +09:00
Randy Mackay
a3fab10ef4
AP_MotorsHeli: init roll_radio_passthrough
2015-07-21 16:25:31 +09:00
Randy Mackay
c9dedbd3b2
AP_Motors: remove multicopter only features
...
Also rename uses of Multirotor to Multicopter
2015-07-21 16:25:28 +09:00
Robert Lefebvre
abb6eba291
AP_MotorsHeli: Change allow_arming check to use _rotor_speed_estimate
...
In future, this will be used to check actual rotor speed (measured) if available, to prevent trying to arm with the rotor spinning.
2015-07-21 16:25:21 +09:00
Robert Lefebvre
9fcbc77ce0
AP_MotorsHeli: Create rotor_speed_above_critical accessor
2015-07-21 16:25:11 +09:00
Robert Lefebvre
992c9c75bb
AP_MotorsHeli: Create parameter_check method.
2015-07-21 16:25:04 +09:00
Robert Lefebvre
e2fe640e6c
Copter: Clean up helicopter allow_arming() function
2015-07-21 16:24:58 +09:00
Robert Lefebvre
61d6c5aa1d
AP_Motors: Creation of AP_Motors_Multirotor class
2015-07-21 16:24:38 +09:00
Lucas De Marchi
5c9bf90d94
SITL: use ARRAY_SIZE macro
2015-07-21 14:25:19 +09:00
Lucas De Marchi
fd5d25b1d5
AP_Compass: use ARRAY_SIZE macro
2015-07-21 14:25:17 +09:00
Lucas De Marchi
3136b8916c
DataFlash: use ARRAY_SIZE macro
2015-07-21 14:25:15 +09:00
Lucas De Marchi
d8b70dc0c5
AP_Scheduler: use ARRAY_SIZE macro
2015-07-21 14:25:13 +09:00
Lucas De Marchi
fdc6a75124
AP_Menu: use ARRAY_SIZE macro
2015-07-21 14:25:10 +09:00
Lucas De Marchi
0471de2342
AP_Math: use ARRAY_SIZE macro
2015-07-21 14:25:09 +09:00
Lucas De Marchi
eda4879f3f
AP_InertialSensor: use ARRAY_SIZE macro
2015-07-21 14:25:07 +09:00
Lucas De Marchi
3f472fb9e1
AP_HAL_VRBRAIN: use ARRAY_SIZE macro
2015-07-21 14:25:05 +09:00
Lucas De Marchi
473415a3c2
AP_HAL_SITL: use ARRAY_SIZE macro
2015-07-21 14:25:03 +09:00
Lucas De Marchi
d4d56aef1a
AP_HAL_PX4: use ARRAY_SIZE macro
2015-07-21 14:25:01 +09:00
Lucas De Marchi
cfc2972e51
AP_HAL_Linux: use ARRAY_SIZE macro
2015-07-21 14:24:58 +09:00
Lucas De Marchi
b83708f77f
AP_HAL: use ARRAY_SIZE macro
2015-07-21 14:24:56 +09:00
Lucas De Marchi
9d59b43920
AP_GPS: use ARRAY_SIZE macro
2015-07-21 14:24:54 +09:00
Lucas De Marchi
4a595bd797
APM_Control: use ARRAY_SIZE
2015-07-21 14:24:52 +09:00
Lucas De Marchi
fb2eb262e7
AP_Math: use ARRAY_SIZE instead of defining another one
2015-07-21 14:24:49 +09:00
Randy Mackay
73ff01dc68
AP_Notify: replace unsigned int with uint8_t
2015-07-21 13:52:03 +09:00
Lucas De Marchi
1bba105be4
AP_Notify: don't manually define number of notify devices
...
Like b211b86
(AP_HAL_Linux: don't manually define number of spi devices)
did for spi.
2015-07-21 13:52:00 +09:00
Peter Barker
65813f308e
DataFlash: fix incorrect comment
2015-07-21 13:11:00 +09:00
Randy Mackay
8225e58454
AP_Motors: throttle_min method in 0 to 1000 range
...
Previously the pwm range value was returned. This value is only used by
the multicopter attitude controller's angle boost function.
2015-07-20 20:44:46 +09:00
Randy Mackay
6bf6442396
MotorsMatrix; protect against divide by zero
...
This should never happen but just to be safe
2015-07-20 20:44:43 +09:00
Randy Mackay
fa60c3dce8
MotorsCoax: fix output_armed_stabilized min thr limit
2015-07-20 20:44:36 +09:00
Randy Mackay
8a308205ce
MotorsSingle: fix output_armed_stabilized min thr limit
2015-07-20 20:44:32 +09:00
Randy Mackay
bd9a605086
MotorsTri: fix output_armed_stabilized min thr limit
...
_min_throttle is in the pwm range but was being used as if in the 0 to
1000 range
2015-07-20 20:44:23 +09:00
Randy Mackay
e53c46bd8f
MotorsMatrix: fix output_armed_stabilized min thr limit
...
_min_throttle was being used as if it were in the 0 to 1000 range when
in fact it is in the pwm range. This meant the lower limit was too low.
2015-07-20 20:44:14 +09:00
Jean-Baptiste Dubois
7dcfe1c667
RCOutput_Bebop: group channels write
2015-07-20 09:23:13 +10:00
Andrew Tridgell
3b1b7ea029
AP_GPS: fixed time handling with NMEA driver
2015-07-20 09:15:32 +10:00
Julien BERAUD
a852e48f37
AP_GPS_NMEA: fix gps startup
...
when no valid gps data, gps would restart in a loop. Take the frame without
gps fix into account for frame counting
2015-07-20 09:14:15 +10:00
John Hsu
14e462706d
SITL: added gazebo SITL shim
2015-07-20 09:10:48 +10:00
John Hsu
c34ddb7fb8
HAL_SITL: added gazebo SITL model support
2015-07-20 09:10:48 +10:00
Randy Mackay
a61129f7f8
GCS_MAVLink: add support for send_mission_item_reached
2015-07-19 12:14:09 +09:00
Randy Mackay
766ccea3be
Mission: fix bug causing first do-cmd to be run many times
...
The symptom was that if the very first command in the mission was a
do-command, it would be run after every nav-command that didn't have
another do-command before it.
2015-07-17 12:15:08 +09:00
Randy Mackay
429346f4bc
AP_Mission: add missing breaks to case statement
2015-07-17 12:15:06 +09:00
Randy Mackay
0acfcbfa81
NavEKF: use primary compass instead of first instance
...
Thanks very much to staroselskii for finding this bug
2015-07-17 10:02:42 +09:00
Randy Mackay
cedc9a8670
Compass: add last_update_usec per instance
2015-07-17 10:02:41 +09:00
Andrew Tridgell
69cfe11455
AP_Arming: raise accel arming threshold to 0.75
...
arming issues due to accel inconsistency are too common
2015-07-17 09:50:19 +10:00
Andrew Tridgell
18de1c2c47
GCS_MAVLink: send AHRS2 even if we don't have a secondary position
2015-07-17 08:24:49 +10:00
Andrew Tridgell
6009ae55b1
AP_Math: fixed build of eulers example sketch
2015-07-17 08:24:49 +10:00
Randy Mackay
cc0ab26f5d
Mount: fix init of mode
...
Mode was being set from MNT_DEFTL_MODE parameter before that parameter's
value had been initialised from eeprom
2015-07-16 14:14:01 +09:00
Jean-Baptiste Dubois
9e5d13c1de
RCOutput_Bebop: use CLOCK_MONOTONIC instead of CLOCK_REALTIME
...
CLOCK_MONOTONIC is not affected by discontinuous jumps in the system time.
2015-07-15 12:08:44 +02:00
Robert Lefebvre
14882bc6a8
AC_AttitudeControl: Remove unused takeoff jump #define
2015-07-14 20:16:58 +09:00
Robert Lefebvre
e1902e2289
AP_MotorsHeli: Remove unused _dt variable.
2015-07-14 20:13:43 +09:00
Randy Mackay
7d2fe3cc2b
AP_GPS_UBlox: remove unused member
2015-07-14 15:02:15 +09:00
Randy Mackay
2c33250bee
AP_GPS_UBlox: send_next_rate_update always runs all steps
...
Moving the if, endif checks within the case statement ensures the state
machine goes through all 10 states
2015-07-14 15:02:13 +09:00
Randy Mackay
4b015d2091
AP_GPS: remove compiler warnings
2015-07-14 15:02:10 +09:00
Randy Mackay
df3a04e284
AP_GPS: reduce fake Ublox hdop to 130
2015-07-14 15:02:08 +09:00
Andy Piper
5ccc58ffb4
AP_GPS: Read actual hDOP value from UBLOX messages
...
Before we were reading the position DOP and calling it hDOP. Since the
other drivers actualy read hDOP it seem best to do the same.
Fixes issue 462.
2015-07-14 15:02:03 +09:00
Paul Riseborough
610595bfb9
AP_NavEKF: Prevent position drift between arming and takeoff when using OF
2015-07-13 10:54:36 +09:00
Randy Mackay
2b4aaf2368
SITL: add vibe monitor and SIM_ACC2_RND to sitl
2015-07-12 16:50:30 +09:00
Paul Riseborough
8b4b0b9576
AP_NavEKF: Add accelerometer clip monitoring and isolation
...
Isolates an accelerometer that is clipping and attempts to use the one that is clipping less.
2015-07-12 16:49:19 +09:00
Staroselskii Georgii
72820303d4
AP_HAL_Linux: set higher SPI speed for Navio
...
We can set a higher speed on newer Linux kernels since
52469b2a38
.
The older ones will just floor the value.
2015-07-10 18:59:18 +10:00
Peter Barker
0028910428
AP_InertialNav: take reference to variable we are trying to update
...
There are no callers to this function. Perhaps it should be removed?
2015-07-10 18:56:20 +10:00
Andrew Tridgell
4e0c2c5a9b
AP_HAL: defined default log and terrain directories for bebop
...
the /var filesystem is wiped on boot on Bebop. Use these as a
temporary workaround
2015-07-10 16:46:31 +10:00
Andrew Tridgell
6df33dd3f4
AP_InertialSensor: fixed MPU6000_SPI bus initialisation
...
we need _spi for get_semaphore()
2015-07-10 16:46:30 +10:00
Julien BERAUD
954ec71630
HAL_Linux: added rcout implementation for bebop
2015-07-10 16:46:30 +10:00
Julien BERAUD
51c3c499e2
AP_Compass: support AK8963 on I2C
2015-07-10 16:46:30 +10:00
Julien BERAUD
0b41da0dea
AP_Compass: rework to make the bus generic for AK8963
...
Supporting only MPU9250, prepare to implement another bus, i.e i2c on the
bebop
2015-07-10 16:46:29 +10:00
Julien BERAUD
0cd584c293
AP_Compass: fix rotation for bebop AK8963
...
Set the correct rotation for bebop
2015-07-10 16:46:29 +10:00
Julien BERAUD
7dd0b5fae6
AP_Compass: removed _spi_sem and _spi
2015-07-10 16:46:29 +10:00
Julien BERAUD
d407737434
AP_Baro: added MS5607 support
2015-07-10 16:46:29 +10:00
Julien BERAUD
3cf952d1f8
AP_InertialSensor: add fifo support for MPU6000
...
And remove the use of data rdy in this case
2015-07-10 14:24:09 +10:00
Julien BERAUD
8a76ff53bd
AP_InertialSensor: add i2c bus driver for MPU6050
2015-07-10 14:24:09 +10:00
Julien BERAUD
1679728730
AP_InertialSensor: Configure SPI as a generic bus for MPU6000
...
Add the possibility to implement an i2c bus communication for the
MPU6050 on parrot bebop
2015-07-10 14:24:09 +10:00
Julien BERAUD
f0bed711cf
AP_HAL: added AK8963 I2C defines
2015-07-10 14:23:18 +10:00
Julien BERAUD
e0b59942b0
AP_HAL: changed log directories for bebop
2015-07-10 14:23:18 +10:00
Julien BERAUD
5c414b4ca2
AP_HAL: Fix Compass I2C address for Bebop
2015-07-10 14:23:18 +10:00
Julien BERAUD
8d6123928f
AP_HAL: Add i2c bus numbers and addresses
2015-07-10 14:23:18 +10:00
Julien BERAUD
bef8001a09
AP_HAL: added MS5607 baro define
2015-07-10 14:23:17 +10:00
Julien BERAUD
eea7ea8488
AP_HAL: split MPU6000 INS defines for I2C and SPI
2015-07-10 14:23:17 +10:00
Julien BERAUD
7275e33e79
AP_HAL: add the possibility to have more than 1 i2c
...
Bebop drone has 3 i2c
2015-07-10 14:23:17 +10:00
Andrew Tridgell
a6f62c208e
AP_HAL: added bebop Linux board type
2015-07-10 10:22:59 +10:00
Julien BERAUD
b32259307d
AP_GPS: Add baudrate 230400 for GPS
...
Needed by bebop gps by default
2015-07-10 10:12:52 +10:00
Andrew Tridgell
282efe2d57
AP_Baro: fixed example to run accumulate at 50Hz
2015-07-10 09:59:35 +10:00
Andrew Tridgell
c83d5b1f08
AP_Compass: only build AK8963 driver on Linux
...
must match MPU9250 build
2015-07-09 11:57:27 +10:00
Andrew Tridgell
f4a9f9876f
HAL_PX4: make usb_connected() more robust
...
thanks to a suggestion from Phillip Kocmoud, this should fix issues
with the XUAV-X2
2015-07-08 11:19:07 +10:00
Randy Mackay
2f8a7f316f
Notify: enable toshibaLED for NAVIO
2015-07-07 20:08:19 +09:00
Staroselskii Georgii
402f46c56f
AP_Airspeed: fixed a typo in the ARSPD_DEFAULT_PIN define
...
There was a redundant elif for Linux builds.
2015-07-07 21:02:21 +10:00
Randy Mackay
1d732ddf62
Mount: param desc rename from MAVLink to 3DR Solo
2015-07-07 13:29:24 +09:00
mirkix
1b0f482d37
AP_RangeFinder: Add support for HC-SR04 Range Finder connected to BBB
2015-07-07 08:00:33 +10:00
Randy Mackay
d192b3ccea
Compass: set device id for ak8963 and hmc5843
2015-07-06 21:04:46 +09:00
Randy Mackay
ad1f9c4829
DataFlash: add ORGN message
2015-07-06 12:11:49 +09:00
Randy Mackay
03356a8d3a
OptFlow: fix parameter descriptions
2015-07-06 11:37:38 +09:00
dgrat
f56f584233
Compass: Improved field rounding in learning
...
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2015-07-06 11:31:58 +10:00
Daniel Frenzel
c49e44d02c
HAL_LInux: RCInput for Navio
...
Cleaned the code a bit
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2015-07-06 11:19:33 +10:00
kozinalexey
20a04bad77
AP_GPS: request RMC message in NMEA driver
2015-07-06 11:16:12 +10:00
dzollo
5d5d9dc137
AP_GPS: Fix max/min bug on SBP buffering. Log messages whether SBP driver recognizes the msg_type or not.
2015-07-06 10:53:35 +10:00
Lucas De Marchi
efec7723ff
AP_InertialSensor: reset the MPU9250 chip on startup
...
Now that the initialization of MPU9250 is shared between the
AP_InertialSensor and other drivers using it as a backend, we can reset
the MPU9250 in order to put it in a known state.
2015-07-06 10:48:07 +10:00
Lucas De Marchi
1deb837e70
AP_Compass: Use common function in MPU9250 for initialization
2015-07-06 10:48:07 +10:00
Lucas De Marchi
eb4e2ac2e5
AP_InertialSensor: factor out MPU9250 initialization
...
Now we have the initialization code split in 2 parts:
1) Making sure the MPU9250 chip is alive and working: this is now in a
static function that may be called by other drivers that use MPU9250 as
backend.
2) The configuration of gyro and accel. Once the first part is completed
successfully the AP_InertialSensor_MPU9250 finishes the configuration of
the sensors it uses.
The only change in behavior here is that before we would try 25 time (5x
inside _hardware_init time 5x inside _init_sensor() that calls the first
function) to "boot the chip" and now we are doing "only" 5.
2015-07-06 10:48:07 +10:00
Lucas De Marchi
953bfbd3fe
AP_InertialSensor: provide static methods for spi transactions
...
Add static methods to do the SPI transactions and provide the wrapper
methods when we have an instance of the object. This is useful so these
methods can be called from other contexts when the AP_InertialSensor
hasn't been initialized yet.
2015-07-06 10:48:07 +10:00
Lucas De Marchi
fde43a77b3
AP_HAL_Linux: allow to change spi device state
...
Allowing to change the SPI device state allows us to save the
information whether the device was already initialized and avoid 2
separate drivers to initialize it.
2015-07-06 10:48:06 +10:00
Lucas De Marchi
384d650a23
AP_HAL: allow to have spi device state
2015-07-06 10:48:06 +10:00
Staroselskii Georgii
26c8007c96
AP_Compass: updated backend detect method
...
Uses reimplemented AK8963 driver. There's also no need trying to detect this
compass twice. Actually, it might even be bad, because the current code can
allocate an AK8963 object twice.
2015-07-06 10:48:06 +10:00
Staroselskii Georgii
7a417d1151
AP_Compass: AK8963 rework
...
Got rid of extra abstraction layer. There is no need for that now.
2015-07-06 10:48:06 +10:00
mirkix
f82344358f
AP_InertialSensor: Change BBBMINI standard orientation
2015-07-06 10:12:39 +10:00
mirkix
e6363ea95d
AP_HAL_Linux: BBBMINI uses /dev/i2c-2
2015-07-06 10:09:21 +10:00
Lucas De Marchi
b211b86204
AP_HAL_Linux: don't manually define number of spi devices
...
It's error-prone, let's make the compiler define it for us.
2015-07-06 10:07:22 +10:00
Lucas De Marchi
82314ee4a3
AP_Common: add helper macro ARRAY_SIZE
2015-07-06 10:07:21 +10:00
Andrew Tridgell
1f58e0080a
SITL: fixed some build warnings
2015-07-06 09:21:49 +10:00
Andrew Tridgell
8f41d97548
AP_Math: fixed build error on PX4
...
variable set but not used with recent longitude_scale change
2015-07-06 08:19:57 +10:00
Andrew Tridgell
099392d3ca
AP_Math: don't optimise longitude_scale on faster CPUs
...
it causes problems with replay
2015-07-05 17:27:53 +10:00
Andrew Tridgell
88a90495b2
HAL_SITL: allow for more data before GPS pipe flush
2015-07-04 15:14:39 +10:00
Andrew Tridgell
21c895f6f3
AP_GPS: prevent extra NMEA messages causing rapid fix rates
...
unexpected messages could cause the GPS driver to report a very high
fix rate, which can confuse the EKF
2015-07-03 22:08:05 +10:00
Paul Riseborough
4fb7beba4b
AP_NAvEKF: Prevent failure due to magnetometer fusion numerical errors
...
If a badly conditioned covariance matrix causes negative innovation variances, then the filter will diverge. The previous approach of increasing process noise was not effective in some cases, so a hard reset of the covariance matrix has been adopted to guarantee recovery.
This fixes a numerical error observed using the replay on flight log which had significant periods of compass rejection.
2015-07-02 18:07:22 +10:00
Randy Mackay
43b1694c76
Compass: add third compass to PRIMARY param description
2015-07-02 14:19:30 +09:00
Peter Barker
844f050cf3
DataFlash: correct zero-byte-file handling in CLI
...
-rw-rw-r-- 1 pbarker pbarker 2105344 Jul 1 16:10 1.BIN
-rw-rw-r-- 1 pbarker pbarker 0 Jul 1 19:35 2.BIN
-rw-rw-r-- 1 pbarker pbarker 2494464 Jul 1 16:58 3.BIN
-rw-rw-r-- 1 pbarker pbarker 128503808 Jul 1 20:22 4.BIN
-rw-rw-r-- 1 pbarker pbarker 3 Jul 1 19:46 LASTLOG.TXT
Before fix:
2 logs
Log 3 in logs/3.BIN of size 2494464 2015/7/1 6:58
Log 4 in logs/4.BIN of size 128503808 2015/7/1 10:22
After Fix:
4 logs
Log 1 in logs/1.BIN of size 2105344 2015/7/1 6:10
Log 2 in logs/2.BIN of size 0 2015/7/1 9:35
Log 3 in logs/3.BIN of size 2494464 2015/7/1 6:58
Log 4 in logs/4.BIN of size 128503808 2015/7/1 10:22
If the last file was zero bytes, no files would be shown.
2015-07-02 08:53:18 +10:00
Andrew Tridgell
5b0394eb05
AP_Compass: start MPU9250 driver at low speed
...
this raises the chances of successful init of the MPU9250
2015-07-02 08:48:06 +10:00
Staroselskii Georgii
d40b45c9ae
AP_InertialSensor: disable reset on MPU9250
...
The Compass library is initialized before the InertialSensor. AK8963 with
MPU9250 as backend already takes care of resetting MPU9250. The problem with
also resetting it in the MPU9250 initialization code is that if the reset
happens during an internal I2C transaction, the AK8963 may hang. So here we
remove the reset inside MPU9250. There still a possibility that the first
MPU9250 initialization is not successful and it resets the chip, but it's not
happening in tests.
2015-07-01 20:44:09 +03:00
Andrew Tridgell
5f0302ed9f
HAL_Linux: fixed chaining of getopt calls
2015-07-01 20:44:07 +10:00
Andrew Tridgell
355575f793
HAL_Linux: fixed chaining of getopt instances
2015-07-01 15:42:07 +10:00
Andrew Tridgell
c8a6a02be1
HAL_Linux: don't do chardev test on subtype NONE
...
otherwise replay is broken
2015-07-01 15:36:34 +10:00
Andrew Tridgell
0679552cf7
GCS_MAVLink: regenerate headers
2015-07-01 12:02:44 +10:00
Andrew Tridgell
44b7c75a4c
GCS_MAVLink: merged upstream mag cal messages for APM
2015-07-01 12:00:23 +10:00
tcr3dr
41e4c2720d
AP_Param: Explicitly casts AP_CLASSTYPE parameter.
2015-07-01 11:32:11 +10:00
tcr3dr
9d26bc6958
HAL_SITL: Adds polyfill for feenableexcept on OS X.
2015-07-01 11:32:01 +10:00
tcr3dr
523acc1c54
AP_Menu: Corrects string null comparison in AP_Menu.
2015-07-01 11:31:54 +10:00
Tom Pittenger
457d3be4d7
AP_BoardConfig: add user-defined serial number
...
new param: BRD_SERIAL_NUM
// @Description: User-defined serial number of this vehicle, it can be any arbitrary number you want and has no effect on the autopilot
// @Range: -32767 to 32768 (any 16bit signed number)
2015-06-30 17:20:15 +10:00
Andrew Tridgell
281f6d9caa
HAL_Linux: cope with expansion of storage from 4096 to 16k
2015-06-30 16:45:49 +10:00
Gustavo Jose de Sousa
87776d8a4b
Storage: define LINUX_STORAGE_SIZE correctly
...
The value for LINUX_STORAGE_SIZE was defined inconsistently against the one
defined for Linux boards in HAL_STORAGE_SIZE. That led to some values not
being written to the storage when running the test binary built at
libraries/StorageManager/examples/StorageTest.
2015-06-30 16:37:08 +10:00
Peter Barker
cabea266e7
DataFlash: pull out common mission logging code
2015-06-30 16:23:35 +10:00
Peter Barker
d85b247706
DataFlash: Log_Write_SysInfo - pull out common logging startup messages
2015-06-30 16:23:34 +10:00
Peter Barker
c5c39a77a3
DataFlash: method to flush ringbuffer to fd
2015-06-30 16:19:22 +10:00
Andrew Tridgell
686b1137fa
AP_NavEKF: added vehicle specific initial gyro bias uncertainty
2015-06-30 16:16:26 +10:00
Andrew Tridgell
761b39be03
HAL_Linux: removed extra include
2015-06-30 15:09:52 +10:00
Andrew Tridgell
1296da56bb
AP_Terrain: fixed terrain path handling
2015-06-30 15:08:10 +10:00
Andrew Tridgell
a3c7297d8e
HAL_Linux: fixed setting of custom directories
2015-06-30 15:08:10 +10:00
Víctor Mayoral Vilches
f592981a60
TerrainIO: Support custom_terrain_directory
2015-06-30 14:36:43 +10:00
Víctor Mayoral Vilches
c06abeb02e
DataFlash_File: Support custom_log_directory
2015-06-30 14:36:42 +10:00
Víctor Mayoral Vilches
2e7a4aa1e6
HAL_Linux: Implement custom dir. methods
2015-06-30 14:36:42 +10:00
Víctor Mayoral Vilches
e5a90c7a34
AP_HAL: Util, add custom terrain and log methods
2015-06-30 14:36:00 +10:00
Víctor Mayoral Vilches
5c4ae15deb
HAL_Linux: Make use of GetOptLong
...
Use GetOptLong to process long args, support
custom terrain and log directories and update
_usage().
2015-06-30 14:36:00 +10:00
Víctor Mayoral Vilches
309511dc08
HAL_Linux: UARTDriver, const device_path
...
Class member set to const and set_device_path
accepts a const char* now.
2015-06-30 14:36:00 +10:00
Víctor Mayoral Vilches
790f4ec56c
HAL_Linux: Util fix indentation
2015-06-30 14:35:59 +10:00
Andrew Tridgell
ac3200fd32
AP_InertialSensor: make max_abs_offsets a single float, not a vector
2015-06-30 10:51:43 +10:00
Gustavo Jose de Sousa
0fcd98c804
AP_InertialSensor: disable debug on LSM9DS0
2015-06-30 10:28:05 +10:00
Gustavo Jose de Sousa
c168e19e73
AP_InertialSensor: fix coding style with uncrustify on LSM9DS0
...
This commit makes backend source code for LSM9DS0 comply with the configuration
files "uncrustify_cpp.cfg" and "uncrustify_headers.cfg".
2015-06-30 10:28:02 +10:00
Gustavo Jose de Sousa
2f2a627002
AP_InertialSensor: use runtime GPIO drdy pins numbers instead C constant macros
...
As we intend to eventually get board related parameters from a configuration
file, this commit makes the GPIO numbers for data-ready pins be instance
variables instead of from C constant macros.
Another advantage of using instance variables in this context is the
possibility of using more than one LSM9DS0.
2015-06-30 10:27:59 +10:00
Gustavo Jose de Sousa
0ef914adac
AP_InertialSensor: don't take SPI semaphore if not necessary on LSM9DS0
...
If the data-ready polling is done entirely on GPIO pins, it isn't necessary to
hold the semaphore before we now we have data to consume. In that case, only
take the SPI semaphore if there's new data available.
On the other hand, if at least one SPI transaction is done in order to check
for new data, then it makes sense to take the semaphore beforehand.
2015-06-30 10:27:57 +10:00
Gustavo Jose de Sousa
a82ab25ed3
AP_InertialSensor: use bitfield macros instead of literal values on LSM9DS0
...
This commit makes accel and gyro initialization routines use bitfield macros
instead of hardcoding the literal value when wrinting on registers. That is
less prone to typos and a lot of times self-explanatory. Also, due to the
latter, the long comments explaining each register field were removed (any
detail can be checked on the datasheet).
2015-06-30 10:27:54 +10:00
Gustavo Jose de Sousa
1572324315
AP_InertialSensor: add macros for LSM9DS0 registers' bitfields
2015-06-30 10:27:51 +10:00
Gustavo Jose de Sousa
033409c629
AP_InertialSensor: set max abs calibration offset for LSM9DS0
2015-06-30 10:27:48 +10:00
Gustavo Jose de Sousa
42eb73a1d1
AP_InertialSensor: add LSM9DS0 backend
...
This adds the backend driver for LSM9DS0. This implementation is based on the
legacy driver coded by Víctor Mayoral Vilches (under folder LSM9DS0) and makes
some necessary adaptations and fixes in order to work properly. The legacy
driver folder was removed.
2015-06-30 10:27:46 +10:00
Gustavo Jose de Sousa
c340e072f2
AP_InertialSensor: use accel instance max abs offset instead of a constant value
...
The calibration on LSM9DS0 was giving offsets between 4.0 and 4.2 on x-axis and
around 3.6 on y-axis. It turned out that those offsets were actually right.
The maximum absolute values of calibration offset should be a sensor
characteristic rather than a constant value for all sensors.
The constant value previously used (3.5 m/s/s for all axes) is set here as a
default maximum absolute calibration offset for every instance to keep it
working.
2015-06-30 10:27:44 +10:00
Lucas De Marchi
623c5f0713
AP_HAL_Linux: check if I2C device is chardev
2015-06-30 09:10:54 +10:00
Lucas De Marchi
acc571c2c5
AP_HAL_Linux: add function to check if path is chardev
...
Utility function to allow checking if a certain path is a character
device.
2015-06-30 09:10:54 +10:00
Lucas De Marchi
a4c1b0d75f
AP_HAL_Linux: add constructor to find I2C bus reliably
...
The device number in /dev may not be reliable from one boot to another
due to the initialization order of each bus.
For example, in Minnow Board Max, the exposed I2C buses may be i2c-7 and
i2c-8 or i2c-8 and i2c-9 depending if the platform driver in the kernel
is initialized before or after the PCI.
It also may change with different version and configuration of the DT or
UEFI used making another kernel driver to bind to the device. This means that
for Minnow Board Max we need to use something like below to pass to the
constructor:
static const char * const i2c_devpaths[] = {
/* UEFI with lpss set to ACPI */
"/devices/platform/80860F41:05",
/* UEFI with lpss set to PCI */
"/devices/pci0000:00/0000:00:18.6",
NULL
};
The devpath here is the one returned by udev with the following command:
udevadm info -q path /dev/<i2c-device>
In contrary to the device number in /dev/i2c-N, this path in sysfs is
stable across reboots and can only change if there's a change in the
UEFI firmware or the board's device tree.
This patch assumes the currently supported boards don't have this
problem so it's not touching them.
2015-06-30 09:10:54 +10:00
Lucas De Marchi
ec5d0b6c08
AP_HAL_Linux: reorder members and methods and use C++ initializer
2015-06-30 09:10:53 +10:00
Michael du Breuil
a382ce2b0c
AP_GPS: Add support for logging ublox RXM-RAWX messages
...
Can only record 32 satellites raw info before memory corruption occurs. (And raised the limit on normal RXM-RAW messages to 22)
2015-06-30 09:05:49 +10:00
Michael du Breuil
d665c85c20
DataFlash: Add RXM-RAWX logging messages
2015-06-30 09:05:48 +10:00
mirkix
38a8a772f8
AP_GPS: Add fix status 3D+DGPS
2015-06-30 09:00:31 +10:00
Andrew Tridgell
15efae5a48
HAL_SITL: use SITL_NUM_CHANNELS
2015-06-30 08:55:02 +10:00
Andrew Tridgell
f8944ab6be
SITL: define number of RC out channels
2015-06-30 08:54:46 +10:00
Vladislav Zakharov
be4b6033e4
AP_HAL_Linux: Navio RCInput reimplemented.
2015-06-29 16:45:43 +10:00
Vladislav Zakharov
e505eb2cd8
AP_HAL_Linux: Changes in Scheduler: Added defines for delays, RCIN_RERIOD changed
2015-06-29 16:45:42 +10:00
Przemek Lekston
90378b21da
AP_BattMonitor: Fix battery monitor Floating Point Exception in SITL
...
Adds a sanity check to avoid division by zero when BATT_CAPACITY is set to 0.
2015-06-29 16:42:52 +10:00
Andrew Tridgell
ff88932091
SITL: setup turbulence in JSBSim
2015-06-29 11:25:59 +10:00
Andrew Tridgell
92c9779d18
HAL_SITL: pass turbulence to simulators
2015-06-29 11:25:44 +10:00
Randy Mackay
ef20676c67
GPS: fix INJECT_TO param desc and add definition
...
No functional change
2015-06-27 16:31:03 +09:00
Randy Mackay
0264b1aa84
AC_Circle: set only xy position targets
2015-06-27 15:43:49 +09:00
Randy Mackay
0b9c7c2a3b
SerialManager: add SToRM32 to protocol param description
2015-06-27 11:18:17 +09:00
Víctor Mayoral Vilches
ab5f1b3a24
BusTest: Fix compilation error with AP_ADC
2015-06-26 21:59:22 +10:00
Peter Barker
723c37bcf7
DataFlash: backend/frontend split
2015-06-26 16:02:50 +10:00
Andrew Tridgell
21c8a2d94a
AP_Common: override new and delete on all platforms to zero memory
...
this guarantees that all classes get zero initial members when
they are dynamically allocated.
2015-06-26 15:55:19 +10:00
Andrew Tridgell
eeb97800ae
AC_AttitudeControl: allow for tail pass-thru in ACRO mode
...
this allows for all channels to be passed through
2015-06-26 12:45:38 +09:00
Michael du Breuil
e45f3537cf
APM_Control: Remove duplicate include statements
2015-06-25 10:23:47 +10:00
Michael du Breuil
aa04c81e3c
APM_Control: Fix a typo in the docstring for YAW2SRV_SLIP
2015-06-25 10:22:36 +10:00
Tom Pittenger
e6122d1a4e
AP_Mission: ensure cache coherence on mission resume
...
- when resuming a mission we should read the value from storage of the same index to ensure we're not continuing an old cached version of the mission item.
- inherent problem: DO commands will continue and will be unaffected unless the new mission has a different DO_ command structure. If so, a set_current_cmd() or reset() should be issued by the GCS.
2015-06-25 10:21:06 +10:00
Andrew Tridgell
a81590f7ac
HAL_SITL: prevent FPE on zero range with optflow
2015-06-25 10:08:53 +10:00
Randy Mackay
9f17fc17ab
NavEKF: update parameter descriptions
2015-06-24 16:25:14 +09:00
Paul Riseborough
87e6a24154
AP_NavEKF: Add public method to reset EKF height datum and baro alt
2015-06-24 16:25:11 +09:00
Randy Mackay
1e3e65e443
AC_AttControl: add shift_ef_yaw_target
...
This allows shifting the target heading in case the EKF shifts it's
heading estimate
2015-06-24 11:49:32 +09:00
Paul Riseborough
e3ccb74e12
AP_NavEKF: Publish amount of in-flight yaw angle reset
2015-06-24 11:49:29 +09:00
Gustavo Jose de Sousa
c72dc9bd45
AP_InertialSensor: make single rotation on MPU9250
...
The previous implementation made some boards apply two rotations to suit
their default orientation. That was happening because there was an
unconditional rotation being done (commented as "rotate for bbone
default").
This commit makes that unconditional rotation as a default rotation
instead and adjusts the former additional rotations to be single
rotations.
2015-06-22 17:45:20 +10:00
Gustavo Jose de Sousa
3dad768e8b
AP_InertialSensor: log failure to initialize after max attempts on MPU9250
...
This happens for example when you are trying to use an SPI speed that's
above the one supported by the sensor or the controller.
2015-06-22 17:45:20 +10:00
Gustavo Jose de Sousa
587471ab54
AP_InertialSensor: disable I2C on MPU9250
...
As the datasheet says: "To prevent switching into I2C mode when using
SPI, the I2C interface should be disabled by setting the I2C_IF_DIS
configuration bit."
We also reset the sensor like PX4Firmware does for initializing the
MPU6000. See: ee1d8cd770/src/drivers/mpu6000/mpu6000.cpp (L695)
2015-06-22 17:45:20 +10:00
Michael du Breuil
6cd81ae1fb
APM_Control: Add PID logging to yaw controller
2015-06-22 15:41:44 +10:00
Michael du Breuil
225c946af0
DataFlash: Add PIDS for steering logging
2015-06-22 15:41:44 +10:00
Robert Lefebvre
11214b3414
AP_Motors: move constraints to set_throttle
2015-06-22 13:52:59 +09:00
Grant Morphett
84ac8abc42
AP_Mount: Fixed a bug with wrapping of panning angles.
2015-06-22 09:32:26 +09:00
Andrew Tridgell
a424686d2f
DataFlash: reduce future merge conflicts
...
an enum makes it easier to merge new messages
2015-06-20 16:18:50 +10:00
Andrew Tridgell
81e6d88560
StorageManager: fixed hang in erase()
...
found by coverity
2015-06-20 15:00:57 +10:00
Andrew Tridgell
4eab27abe9
AP_InertialSensor: fixed logic bug in MPU6000 init
...
thanks to coverity
2015-06-20 14:53:04 +10:00
Andrew Tridgell
131b345ccc
APM_Control: cleanup some coverity warnings
2015-06-20 13:30:32 +10:00
Andrew Tridgell
322a61635f
SITL: allow extra arguments to be passed to last_letter
2015-06-19 16:39:46 +10:00
Robert Lefebvre
0c92565d23
AP_MotorsHeli: add Critical Rotor Speed param, use to switch off runup_complete
2015-06-19 15:10:53 +09:00
Robert Lefebvre
3ad6700c5d
AP_MotorsHeli: add getters for rotor speed
2015-06-19 15:10:51 +09:00
Robert Lefebvre
8b917b82ee
AP_MotorsHeli: Simplify set_desired_rotor_speed function definition
2015-06-19 15:10:50 +09:00
Robert Lefebvre
79e8c8f7f7
AP_MotorsHeli: whitespace fixes
2015-06-19 15:10:47 +09:00
Georacer
b375a8debf
SITL: Allows last_letter to start at the location specified by the SITL arguments
2015-06-19 12:49:29 +10:00
Leonard Hall
cfc388934b
AC_AttControl: add set_accel_roll_max
...
Also equivalents for pitch and yaw
2015-06-18 23:06:33 +09:00
mirkix
7c55689aad
AP_HAL_Linux: Fix loading Firmware
2015-06-18 10:13:49 +10:00
Paul Riseborough
6ba8cd05ff
AP_NavEKF: Fix bug preventing GPS vertical velocity being used
...
This fixes a bug that prevents GPS velocity being used permanently if there is a temporary unavailability
2015-06-18 09:01:21 +10:00
mirkix
a1d478909a
AP_BattMonitor: Add Linux support for example
2015-06-18 09:00:01 +10:00
mirkix
d169fea9ec
AP_AHRS: Add Linux support for example
2015-06-18 08:59:16 +10:00
mirkix
588a16dec2
AP_InertialSensor: Add Linux support for VibTest example
2015-06-18 08:48:23 +10:00
Andrew Tridgell
de11b5394e
GCS_MAVLink: support NSH shell with SERIAL_CONTROL
2015-06-17 20:30:10 +10:00
Andrew Tridgell
a0594bd50e
GCS_MAVLink: regenerate headers
2015-06-17 20:30:10 +10:00
Andrew Tridgell
bdbe1a7553
GCS_MAVLink: added SERIAL_CONTROL_DEV_SHELL
2015-06-17 20:30:09 +10:00
Andrew Tridgell
d909f11ba3
HAL_PX4: added implementation of NSH shell stream
2015-06-17 20:30:09 +10:00
Andrew Tridgell
7f239f5d46
AP_HAL: added get_shell_stream()
2015-06-17 17:04:15 +10:00
Andrew Tridgell
4fe092fead
AP_InertialSensor: panic on bad gyro or accel sample rates
2015-06-17 15:01:23 +10:00
Andrew Tridgell
d3b85eb792
AP_InertialSensor: use driver supplied sample rate
...
this will work with a wider range of sensors
2015-06-17 14:44:19 +10:00
Andrew Tridgell
e91bfdfc1c
AP_InertialSensor: fixed VibTest example build
2015-06-17 14:15:58 +10:00
Andrew Tridgell
feb928dcd3
DataFlash: fixed build warnings
2015-06-17 13:10:26 +10:00
Andrew Tridgell
c9988d8b37
AP_NavEKF: rely on delta_velocity and delta_angles always being available
2015-06-17 13:10:26 +10:00
Andrew Tridgell
bc0ae630a1
AP_InertialSensor: always provide delta_velocity and delta_angles
...
this makes the NavEKF code simpler
2015-06-17 13:10:26 +10:00
Andrew Tridgell
a115182041
AP_NavEKF: fixed minimum deltat to be 100us
2015-06-17 13:10:26 +10:00
Andrew Tridgell
c221959d5a
AP_NavEKF: fixed corrected del velocity to use both accels
2015-06-17 13:10:25 +10:00
Andrew Tridgell
f831c16238
AP_InertialSensor: use fixed sensor sample times
...
this uses fixed sample times for PX4 IMUs, rather than reported
timestamps. It avoids timing jitter caused by the over-sampling in
the PX4 drivers
2015-06-17 13:03:56 +10:00
Andrew Tridgell
f77ffd30f6
AP_GPS: fixed HIL GPS driver to make have vertical velocity sticky
2015-06-17 12:46:56 +10:00
Randy Mackay
9d81856580
InertialSensor: fix name of get_delta_velocity method
2015-06-17 12:46:54 +10:00
Randy Mackay
384755e271
Dataflash: add IMT messages
2015-06-17 12:46:54 +10:00
Andrew Tridgell
727be87d84
AP_InertialSensor: support HIL functions for delta_velocity and delta_angles
2015-06-16 09:53:55 +10:00
Andrew Tridgell
4677c189e0
HAL_SITL: support balloon model
2015-06-15 09:20:56 +10:00
Andrew Tridgell
83cc60a699
SITL: added simple balloon simulator
...
for testing balloon release code in plane
2015-06-15 09:20:55 +10:00
Andrew Tridgell
5e80f0cf72
APM_Control: allow for multiple stop calls in autotune
2015-06-15 09:20:54 +10:00
Andrew Tridgell
9bd8e215b2
AP_Mission: enable DO_AUTOTUNE_ENABLE
2015-06-15 09:20:54 +10:00
Andrew Tridgell
08acde2766
AP_Mission: added ALTITUDE_WAIT NAV command
...
used for HAB launch
2015-06-15 09:20:54 +10:00
Andrew Tridgell
c415bfe766
GCS_MAVLink: regenerate headers
2015-06-15 09:20:54 +10:00
Andrew Tridgell
3ef44459c8
GCS_MAVLink: added ALTITUDE_WAIT message
2015-06-15 09:17:27 +10:00
Randy Mackay
69e59b2d99
GCS_MAVLink: update version after adding LANDING_TARGET
2015-06-12 21:37:09 +09:00
Randy Mackay
835a203566
GCS_MAVLink: generate after adding LANDING_TARGET
2015-06-12 21:37:07 +09:00
Randy Mackay
94aec19336
GCS_MAVLink: import LANDING_TARGET from upstream
2015-06-12 21:37:04 +09:00
Randy Mackay
76fdfdfcf2
GCS_MAVLink: do not send_vibration on APM2
2015-06-12 21:37:01 +09:00
Randy Mackay
0d239d2746
DataFlash: disable vibration logging on APM2
...
Also remove unnecessary include
2015-06-12 21:36:59 +09:00
Randy Mackay
8ceccd778d
InertialSensor: disable vibration checks on APM2
...
Also bug fix get_accel_clip_count's instance check
2015-06-12 21:36:56 +09:00
Randy Mackay
642aa74530
GCS_MAVLink: add send_vibration
2015-06-12 21:36:42 +09:00
Randy Mackay
581e43bd0e
GCS_MAVLink: update version after adding VIBRATION msg
2015-06-12 21:36:39 +09:00
Randy Mackay
afbb670e73
GCS_MAVLink: generate after adding VIBRATION message
2015-06-12 21:36:36 +09:00
Randy Mackay
e677a100c6
GCS_MAVLink: add VIBRATION message to common.xml
2015-06-12 21:36:34 +09:00
Randy Mackay
f0f262eb04
DataFlash: add Log_Write_Vibration
2015-06-12 21:36:28 +09:00
Randy Mackay
1289208244
LowPassFilter: add get method
2015-06-12 21:36:24 +09:00
Randy Mackay
0db7acc628
InertialSensor: calc vibration and accel clipping
2015-06-12 21:36:22 +09:00
Tom Pittenger
3544549cf4
AP_GPS: Allow switching primary GPS instance with 1 sat difference
...
Rapid switching between GPS receivers can cause real problems.
Switch if:
1) secondary GPS has 1 more satellite for at least 20 seconds
OR
2) secondary GPS has 2 more satellites for at least 5 seconds
Fixes https://github.com/diydrones/ardupilot/pull/2320
2015-06-11 21:33:06 +10:00
Andrew Tridgell
dea36c1ae9
HAL_PX4: fixed build on non-PX4 systems
2015-06-11 15:17:02 +10:00
Andrew Tridgell
88655b48e1
HAL_PX4: added px4_param stub functions
...
this replaces the PX4 parameter system with stub functions that fail
all parameter find calls
2015-06-11 13:31:41 +10:00
Randy Mackay
0b6323d5ed
Mount: default MNT_TYPE to servo gimbal if rc outputs defined
2015-06-10 16:47:08 +09:00
Randy Mackay
03a336d496
RC_Channel: update_aux_servo_function made public
2015-06-10 16:47:06 +09:00
Eugene Shamaev
40a5aa497a
HAL_PX4: added rc_bind for DSM bind
2015-06-10 17:19:09 +10:00
Eugene Shamaev
8cb367eaf8
AP_HAL: added rc_bind rcin method
2015-06-10 17:19:08 +10:00
Lucas De Marchi
b3da1579c1
AP_Notify: rename member to initialized
...
We are not only checking if there was an error, but if it was already
initialized. Let's make it explicit by inverting the value we store.
2015-06-10 16:39:01 +10:00
Lucas De Marchi
3f8dab41c4
AP_Notify: fix wrong boolean check
...
Check by false instead of checking by -1. Fix the following compiler warning
with gcc 5.1.0:
ardupilot/libraries/AP_Notify/ToneAlarm_Linux.cpp:64:13: warning: comparison of constant '-1' with boolean expression is always false [-Wbool-compare]
if (err == -1) {
^
Also change the initialization code not to use -1.
2015-06-10 16:39:01 +10:00
Andrew Tridgell
979a571d68
AP_HAL: fixed example build
2015-06-10 09:27:41 +10:00
Andrew Tridgell
d6af9fd0ee
HAL_PX4: prevent uavcan motor spin up while booting
2015-06-09 19:45:01 +10:00
Andrew Tridgell
6a33aeef67
HAL_PX4: cope with multi-instance actuator_outputs uORB
...
we need to subscribe to all of them
2015-06-09 19:45:00 +10:00
Andrew Tridgell
2167675b3d
AP_RangeFinder: update for upstream merge
2015-06-09 19:44:20 +10:00
Andrew Tridgell
23d291f144
AP_Notify: update for upstream merge
2015-06-09 19:44:20 +10:00
Andrew Tridgell
333778bac1
HAL_PX4: updates for upstream merge
2015-06-09 19:44:20 +10:00
Andrew Tridgell
02aa6983a7
APM_Control: fixed FF handling in steering controller
2015-06-09 13:28:26 +10:00
Andrew Tridgell
5105d510b8
APM_Control: added pid_info and FF to steering controller
...
used for realtime ground steering tuning
2015-06-09 12:48:55 +10:00
Andrew Tridgell
c44ab01be8
AP_HAL: use noreturn attribute on panic
...
should reduce coverity warnings
2015-06-08 21:09:08 +10:00
Randy Mackay
aa7a151fe5
AC_WPNav: init flags
...
Resolves Coverity warning
2015-06-08 14:46:39 +09:00
Randy Mackay
bb382a65e8
AC_Circle: init members and flags
...
Removed unused dir flag
Resolves Coverity warning
2015-06-08 14:46:37 +09:00
Randy Mackay
1bf0139162
AC_Sprayer: init flags
...
Resolves warning from Coverity
2015-06-08 14:46:35 +09:00
Randy Mackay
d2f93dd379
AC_PosControl: init flags
...
Resolves warning from Coverity
2015-06-08 14:46:32 +09:00
Randy Mackay
d366c30358
AP_RangeFinder: fix potential out-of-bounds read
...
Issue found by Coverity
2015-06-08 14:46:21 +09:00
Randy Mackay
2849430341
AP_Motors: init flags
...
resolves coverity issue
2015-06-08 14:46:16 +09:00
Randy Mackay
ac76562638
RangeFinder: init state and drivers
...
resolves a coverity defect
2015-06-08 14:46:14 +09:00
Randy Mackay
7bbaeac55f
OpticalFlow: init _last_update_ms member
...
This resolves a defect found with coverity
2015-06-08 14:46:11 +09:00
Eugene Shamaev
ca482cf44a
StorageManager: added example sketch
2015-06-08 10:05:05 +09:00
Eugene Shamaev
c6c6e2dc13
AP_GPS: add comments to example sketch
2015-06-08 10:04:36 +09:00
Max Basescu
32994a5b1e
AP_HAL_AVR: Changed constrain_period to use RC_OUTPUT bounds instead of RC_INPUT
...
Done in order to get full range of motion for servo output
2015-06-05 21:03:03 +10:00
Max Basescu
de50217809
AP_HAL: Added RC_OUTPUT_MIN_PULSEWIDTH set to 400 and RC_OUTPUT_MAX_PULSEWIDTH set to 2100
...
For use in AP_HAL_AVR in RCOutput_APMx
2015-06-05 21:03:03 +10:00
Randy Mackay
382f5d087f
AC_PosControl: explicitly set set_alt_target_from_climb_rate params
2015-06-05 15:51:02 +09:00
Randy Mackay
6ea60aa662
AC_PosControl: remove default from set_alt_target_from_climb_rate
2015-06-05 15:15:03 +09:00
Randy Mackay
11fee21f06
AC_PosControl: init accel_last_z_cms
2015-06-05 15:06:34 +09:00
Randy Mackay
b8e3fe8f26
Mount: AlexMos fix to stop crashing before init
2015-06-05 12:31:16 +09:00
Randy Mackay
66d2328163
Mount: Alexmos save 4 bytes of RAM
2015-06-05 12:31:14 +09:00
Randy Mackay
7a8fe5f4d4
Mount: Alexmos formatting fixes
2015-06-05 12:31:12 +09:00
Tim Ryan
d7fe6bfe0d
Terrain: cast grid_spacing to fix OSX clang error
2015-06-04 21:01:34 +09:00
Lucas De Marchi
1d39f548dc
AP_HAL: remove aliases FUNCTOR_[BIND|TYPEF]_VOID
...
Nobody is using them anymore, so kill them.
2015-06-04 13:37:41 +09:00
Lucas De Marchi
98a1a05933
AP_Scheduler: stop using alias FUNCTOR_BIND_VOID
2015-06-04 13:37:40 +09:00
Andrew Tridgell
2de8c26c06
AP_Arming: allow pre_arm_checks() to be subclassed
...
this allows for vehicle specific arming checks
2015-06-04 13:26:39 +10:00
Andrew Tridgell
dbff6cab43
HAL_Linux: added udp example to help
2015-06-03 21:47:01 +10:00
Paul Riseborough
d3f83e8ec6
AP_NavEKF: Improve gyro bias learning rate for plane and rover
...
This patch increases initial gyro bias uncertainty and plane and rover specific process noise to improve the rate of gyro bias learning.
This reduces the likelihood of a navigation failure due to rapid temperature changes in the inertial sensors causing rapid changes in zero rate offset.
The increase in process noise cannot be applied to Copter due to different numerical stability limits arising from the faster update rate.
2015-06-03 11:46:17 +10:00
Andrew Tridgell
367a87591a
AP_Param: fixed build of eedump_apparam
2015-06-03 11:46:00 +10:00
Andrew Tridgell
9a7b283322
AP_GPS: fixed enable of RXM_RAW on uBlox on Pixhawk
...
if version detection was disabled this would never trigger
2015-06-02 16:52:08 +10:00
Grant Morphett
7d1bf75aa8
DataFlash: Moving parameter logging to be after all systems have started
...
Moved Log_Write_Parameters to be public so we can call it from the
vehcile code at the end of the startup sequence.
We needed to do this because parameters like COMPASS_EXTERNAL are
modified by the startup code and if we log the parameters too early we
will be recording the wrong value.
2015-06-01 20:22:43 +09:00
Randy Mackay
9c28d61a5c
Mission: protect against endless loops of do-commands
2015-06-01 18:11:54 +09:00
Andrew Tridgell
e234844905
RC_Channel: fixed example sketch
2015-06-01 18:05:50 +10:00
Andrew Tridgell
767aeedf01
AP_Mission: fixed example sketch
2015-06-01 18:05:38 +10:00
Andrew Tridgell
b2a5de8a63
AP_Scheduler: fixed example sketch
2015-06-01 17:42:32 +10:00
Andrew Tridgell
214b61bfc0
AP_InertialSensor: fixed example build
2015-06-01 17:35:15 +10:00
Andrew Tridgell
3edac37929
AP_Math: removed unused include in example
2015-06-01 17:35:03 +10:00
Andrew Tridgell
407fbc7261
AP_Menu: remove unused AP_Vehicle.h include
2015-06-01 17:34:48 +10:00
Andrew Tridgell
9fa1e15238
AP_Menu: removed example sketch
...
not very useful
2015-06-01 17:34:34 +10:00
Andrew Tridgell
5c86005160
AP_HAL: removed spurious delay example
2015-06-01 17:28:45 +10:00
Andrew Tridgell
1bd61ae96e
AP_HAL: no need to include AP_Vehicle_Type.h here any more
2015-06-01 17:28:24 +10:00
Andrew Tridgell
d746e8fa29
AP_Motors: mark examples as nobuild
...
waiting for fix from Rob
2015-06-01 17:27:33 +10:00
Andrew Tridgell
7f408cae02
AP_PerfMon: convert example from .pde to .cpp
2015-06-01 17:07:09 +10:00
Andrew Tridgell
421c7e02ae
StorageManager: convert example from .pde to .cpp
2015-06-01 17:07:08 +10:00
Andrew Tridgell
6c1c2dd8bd
RC_Channel: convert example from .pde to .cpp
2015-06-01 17:07:08 +10:00
Andrew Tridgell
fce95178e7
PID: convert example from .pde to .cpp
2015-06-01 17:07:08 +10:00
Andrew Tridgell
3b48f68cce
GCS_MAVLink: convert example from .pde to .cpp
2015-06-01 17:07:07 +10:00
Andrew Tridgell
89c4e6fc21
GCS_Console: convert example from .pde to .cpp
2015-06-01 17:07:07 +10:00
Andrew Tridgell
b7f0735c2b
Filter: convert example from .pde to .cpp
2015-06-01 17:07:07 +10:00
Andrew Tridgell
e734f24cc1
DataFlash: convert example from .pde to .cpp
2015-06-01 17:07:07 +10:00
Andrew Tridgell
ae4cfe3f2f
AP_Scheduler: convert example from .pde to .cpp
2015-06-01 17:07:06 +10:00
Andrew Tridgell
b2fb2c676e
AP_RangeFinder: convert example from .pde to .cpp
2015-06-01 17:07:06 +10:00
Andrew Tridgell
330d8f5c3a
AP_Parachute: convert example from .pde to .cpp
2015-06-01 17:07:06 +10:00
Andrew Tridgell
637f8430c9
AP_OpticalFlow: convert example from .pde to .cpp
2015-06-01 17:07:06 +10:00
Andrew Tridgell
24e2e4b35e
AP_Notify: convert example from .pde to .cpp
2015-06-01 17:07:05 +10:00
Andrew Tridgell
83b46243db
AP_Mount: convert example from .pde to .cpp
2015-06-01 17:07:05 +10:00
Andrew Tridgell
89baf2bdf1
AP_Motors: convert example from .pde to .cpp
2015-06-01 17:07:05 +10:00
Andrew Tridgell
d1ed4c863c
AP_Mission: convert example from .pde to .cpp
2015-06-01 17:07:04 +10:00
Andrew Tridgell
4d040bbb94
AP_Math: convert example from .pde to .cpp
2015-06-01 17:07:04 +10:00
Andrew Tridgell
7f7113c1de
AP_InertialSensor: convert example from .pde to .cpp
2015-06-01 17:07:04 +10:00
Andrew Tridgell
ca8482b4d6
AP_HAL_PX4: convert example from .pde to .cpp
2015-06-01 17:07:04 +10:00
Andrew Tridgell
dd10cbc976
AP_HAL_Linux: convert example from .pde to .cpp
2015-06-01 17:03:44 +10:00
Andrew Tridgell
f9aa1d1a8b
AP_HAL_FLYMAPLE: convert example from .pde to .cpp
2015-06-01 17:03:44 +10:00
Andrew Tridgell
36b19b26ce
AP_HAL: convert example from .pde to .cpp
2015-06-01 17:03:40 +10:00
Andrew Tridgell
379b130d0a
AP_HAL_Empty: convert example from .pde to .cpp
2015-06-01 17:03:37 +10:00
Andrew Tridgell
0cc31c2db5
AP_HAL_AVR: convert example from .pde to .cpp
2015-06-01 17:03:37 +10:00
Andrew Tridgell
e18a2df64e
AP_GPS: convert example from .pde to .cpp
2015-06-01 16:58:11 +10:00
Andrew Tridgell
7320a35ad2
AP_GPS: convert example from .pde to .cpp
2015-06-01 16:58:11 +10:00
Andrew Tridgell
c18c84fbe1
AP_Declination: convert example from .pde to .cpp
2015-06-01 16:58:11 +10:00
Andrew Tridgell
d6a1bd98e6
AP_Compass: convert example from .pde to .cpp
2015-06-01 16:58:11 +10:00
Andrew Tridgell
191cdb8bc1
AP_Common: convert example from .pde to .cpp
2015-06-01 16:58:11 +10:00
Andrew Tridgell
debe7db861
AP_BattMonitor: convert example from .pde to .cpp
2015-06-01 16:58:11 +10:00
Andrew Tridgell
4368f922a3
AP_Baro: convert example from .pde to .cpp
2015-06-01 16:58:10 +10:00
Andrew Tridgell
e66b56970e
AP_Airspeed: convert example from .pde to .cpp
2015-06-01 16:58:10 +10:00
Andrew Tridgell
edab50ab5a
AP_AHRS: convert example from .pde to .cpp
2015-06-01 16:58:10 +10:00
Andrew Tridgell
0cfdb9af8a
AP_ADC: convert example from .pde to .cpp
2015-06-01 16:58:10 +10:00
Andrew Tridgell
a62c450f86
AC_PID: convert example from .pde to .cpp
2015-06-01 16:58:10 +10:00
Andrew Tridgell
2b828a794e
AP_Math: fixed example build
2015-06-01 16:36:54 +10:00
Andrew Tridgell
04ba5fa0bd
AP_AHRS: pass EKF into constructor
...
this makes it possible for var_info in vehicle code to be in text
segment
2015-06-01 16:16:24 +10:00
Andrew Tridgell
f50ee4c44c
GCS_MAVLink: all vehicles now use functors
2015-06-01 15:18:33 +10:00
Andrew Tridgell
9379e79489
DataFlash: all vehicles now use functors
2015-06-01 15:18:32 +10:00
Andrew Tridgell
f24e69f4a0
AP_Vehicle: all vehicles now use functors
2015-06-01 15:18:32 +10:00
Andrew Tridgell
dd691ae75c
AP_Scheduler: all vehicles now use functors
2015-06-01 15:18:31 +10:00
Andrew Tridgell
ec2d429513
AP_Mission: all vehicles now use functors
2015-06-01 15:18:31 +10:00
Andrew Tridgell
bd5a58e4c4
AP_Menu: all vehicles now use functors
2015-06-01 15:18:31 +10:00
Andrew Tridgell
4dd47ead0e
AP_HAL: removed old fastdelegate code
2015-06-01 15:18:30 +10:00
Andrew Tridgell
9ed0ee12fb
AP_Vehicle: all vehicle types now use functors
2015-06-01 15:06:31 +10:00
Andrew Tridgell
96737a3982
SITL: fixed yaw wrap in simulated AntennaTracker
2015-06-01 14:08:45 +10:00
Andrew Tridgell
d57eca9de8
HAL_SITL: enable simulated antenna tracker
2015-06-01 12:53:50 +10:00
Andrew Tridgell
edb54cabb5
SITL: added simulated antenna tracker
2015-06-01 12:53:30 +10:00
Andrew Tridgell
14bdfe2889
SITL: started to use C++11 variable initialisation
2015-06-01 08:04:51 +10:00
Andrew Tridgell
b541bfb739
SITL: fixed build warnings
2015-05-30 22:51:38 +10:00
Andrew Tridgell
d5da9fcca6
AP_NavEKF: fixed build warnings
2015-05-30 22:51:30 +10:00
Andrew Tridgell
6a2c585632
AP_InertialSensor: fixed build warnings
2015-05-30 22:51:19 +10:00
Andrew Tridgell
ac3fc2f373
AP_HAL: fixed build warnings
2015-05-30 22:51:09 +10:00
Andrew Tridgell
084521243e
AP_GPS: fixed some build warnings
2015-05-30 22:51:00 +10:00
Andrew Tridgell
249b339e6c
HAL_SITL: fixed a build warning
2015-05-30 22:16:37 +10:00
Andrew Tridgell
73445fdae9
DataFlash: added error checking and fixed a warning
2015-05-30 22:16:22 +10:00
Andrew Tridgell
1088e72fda
AP_Vehicle: make copter use functors
2015-05-30 15:21:22 +09:00
Robert Lefebvre
1424b17a83
AP_Motors_Heli: Change default RSC_SETPOINT to 700
2015-05-29 17:46:25 +09:00
Robert Lefebvre
4da54783fd
AC_AttitudeControl_Heli: Semantic Change. Motor Runup to Rotor Runup.
2015-05-29 17:46:23 +09:00
Robert Lefebvre
d24664ccf9
AP_MotorsHeli: Semantic change. Motor Runup to Rotor Runup
2015-05-29 17:46:18 +09:00
Robert Lefebvre
65ca09600c
AP_Motors: Heli eliminate _dt member and fix rsc_runup calculation
2015-05-29 17:46:09 +09:00
Robert Lefebvre
18bac524a3
Copter: TradHeli, change Rate FF LPF to 10Hz
2015-05-29 17:46:05 +09:00
Andrew Tridgell
f39063e023
DataFlash: don't do PID logging on APM2
2015-05-29 16:32:05 +10:00
Randy Mackay
19b021f729
RCMap: added RebootRequired param description
2015-05-28 19:32:38 +09:00
svefro
b02bbcd289
RCMap: added Reboot required to rcmap parameter descriptions
...
Added Reboot required to rcmap throttle, yaw, pitch, roll
2015-05-28 19:32:20 +09:00
Andrew Tridgell
b6eba0842a
DataFlash: fixed CAM message format
2015-05-27 22:10:39 +10:00
Andrew Tridgell
00ca493860
AP_AHRS: prevent a floating exception in update_trig
2015-05-27 22:10:39 +10:00
Randy Mackay
b121d83beb
RC_Channel: add EPM, LandingGear to FUNCTION param description
2015-05-27 18:05:01 +09:00
Andrew Tridgell
8454246fae
AP_Param: make it safe to change the type of a parameter
...
if the type is changed then the value will revert to its default value
2015-05-27 15:29:40 +10:00
Andrew Tridgell
95ff71940c
DataFlash: fixed rebase errors
2015-05-27 14:28:50 +10:00
Andrew Tridgell
8f34ed5b76
DataFlash: added PIDA message
...
for logging Z accel PID in copter
2015-05-27 14:28:50 +10:00
Andrew Tridgell
a57889e3b0
GCS_MAVLink: re-generate headers
2015-05-27 14:28:49 +10:00
Andrew Tridgell
0ed7fda41d
GCS_MAVLink: added ACCZ and STEER PID_TUNING axes
2015-05-27 14:28:49 +10:00
Andrew Tridgell
521dae1c65
AC_AttitudeControl: use set_desired_rate() on PID controllers
...
this sets them up for logging of PIDs
2015-05-27 14:28:49 +10:00
Andrew Tridgell
3ec8857fbc
AC_PID: added set_desired_rate() interface
...
used to setup _pid_info for logging
2015-05-27 14:28:48 +10:00
Andrew Tridgell
6000bb0c32
AC_PID: log desired rate for VFF as well as AFF
2015-05-27 14:28:48 +10:00
Andrew Tridgell
b45ab52015
DataFlash: added desired rate to PID logging
2015-05-27 14:28:48 +10:00
Andrew Tridgell
86a3bca88c
APM_Control: added FF parameters to roll and pitch controllers
...
these are much easier to tune with the new PID_TUNING messages
2015-05-27 14:28:47 +10:00
Robert Lefebvre
353879cd2b
AC_AttitudeControl_Heli: Add Rate Accel FF to Yaw control
2015-05-27 14:28:47 +10:00
Robert Lefebvre
366f87c91c
AC_HELI_PID: Add Acceleration FF method.
2015-05-27 14:28:47 +10:00
Robert Lefebvre
7ab628521e
DataFlash: Add Acceleration Feedforward to PID_Info.
2015-05-27 14:28:47 +10:00
Robert Lefebvre
810b12a1ac
AC_AttitudeControlHeli: Change Rate Yaw FF LPF from 5Hz to 10Hz.
2015-05-27 14:28:46 +10:00
Andrew Tridgell
e79a21d8c2
AC_PID: fill in desired rate for heli PID
2015-05-27 14:28:46 +10:00
Andrew Tridgell
d148c38f68
DataFlash: added desired rate to PID_Info
2015-05-27 14:28:45 +10:00
Andrew Tridgell
0fe04a93ce
GCS_MAVLink: rebuilt headers
2015-05-27 14:28:45 +10:00
Andrew Tridgell
cc80fdf593
GCS_MAVLink: added PID_TUNING message
2015-05-27 14:28:45 +10:00
Andrew Tridgell
216a78a9f0
APM_Control: added get_pid_info() interface
2015-05-27 14:28:44 +10:00
Robert Lefebvre
23adf2773c
AC_AttitudeControl: Remove To-Do comments for Attitude Rate logging.
2015-05-27 14:28:44 +10:00
Robert Lefebvre
967071ca62
AC_PID: Integrate PID Logging functionality.
2015-05-27 14:28:44 +10:00
Robert Lefebvre
753be18c17
DataFlash: Add PID Logging Method
2015-05-27 14:28:44 +10:00
Andrew Tridgell
d8df31c023
SITL: initialise a couple of variables to prevent a valgrind error
2015-05-27 11:54:18 +10:00
Andrew Tridgell
2a22ae5404
DataFlash: support 64 bit TimeUS log dumping
2015-05-27 11:54:18 +10:00
Andrew Tridgell
1400d0155c
AP_Mount: fixed valgrind error with gimbal code
2015-05-27 11:54:17 +10:00
Andrew Tridgell
4705be97bf
AP_HAL: support %lld and %llu in internal printf
...
useful for log messages with 64 bit timestamps
2015-05-27 11:54:17 +10:00
Peter Barker
8be9e99fad
AP_InertialSensor_PX4: 64-bit timestamps for ACCx and GYRx messages
2015-05-27 11:54:17 +10:00
Peter Barker
988f3277de
DataFlash: 64-bit timestamps for ACCx and GYRx messages
2015-05-27 11:54:17 +10:00
Peter Barker
f489f6b696
AP_InertialSensor: use 64-bit timestamps in dataflash logs
2015-05-27 11:54:17 +10:00
Peter Barker
9ae85ed9ab
APM_Control/AP_AutoTune: use 64-bit timestamps for dataflash logs
2015-05-27 11:54:17 +10:00
Peter Barker
457f77314e
AP_TECS: use 64-bit timestamps for dataflash logs
2015-05-27 11:54:16 +10:00
Peter Barker
feb85ef7d5
AP_GPS: unused SBP struct gets 64-bit timestamp
2015-05-27 11:54:16 +10:00
Peter Barker
4d67ccb338
AP_GPS: use 64-bit timestamps for dataflash logs
2015-05-27 11:54:16 +10:00
Peter Barker
9e0b5910e2
AP_Terrain: use 64-bit timestamps for dataflash logs
2015-05-27 11:54:16 +10:00
Peter Barker
88015503ac
SITL: use 64-bit timestamps for dataflash logs
2015-05-27 11:54:16 +10:00
Peter Barker
617043f468
DataFlash: convert GPS and CAM dataflash messages to 64-bit timestamps
...
GPS structures remove 32-bit apm_time and replace with standard time_us
Significant change to GPS and GPS2 messages:
Add TimeUS as first field
Remove T field
Due to length restrictions on labels:
Renamed TimeMS to GMS (Gps MilliSeconds)
Renamed Week to GWk (Gps WeeK)
Renamed RelAlt to RAlt
Significant change to CAM messages:
Removed GPSTime (uin32_t), added TimeUS (uint64_t)
2015-05-27 11:54:15 +10:00
Peter Barker
769982b8f2
DataFlash: use 64-bit timestamps for dataflash logs
2015-05-27 11:54:14 +10:00
Randy Mackay
114c4f4077
AP_Match: fix example sketch
2015-05-27 09:47:24 +09:00
Randy Mackay
fb2d29364e
Mount_SToRM32_serial: fix angle request
2015-05-26 21:05:29 +09:00
Randy Mackay
9b04a67e63
Mount_SToRM32_serial: rename sent_do_mount_control
2015-05-26 21:05:26 +09:00
Randy Mackay
72eb25b166
Mount: add SToRM32 serial to front end
2015-05-26 21:05:24 +09:00
Sergey Kirillov
c133511431
Mount: add SToRM32 serial support
2015-05-26 21:05:22 +09:00
Sergey Kirillov
69959a4214
SerialManager: add SToRM32 serial enum and baudrates
2015-05-26 21:05:19 +09:00
Andrew Tridgell
c7044c4f91
AP_Terrain: make terrain request times per channel
...
otherwise we can miss sending one if we send first to a channel not
being listened to
2015-05-26 17:27:51 +10:00
Andrew Tridgell
3a9d7363ea
HAL_VRBRain: fixed functor comparison
2015-05-26 15:17:06 +10:00
Andrew Tridgell
e589ca9b80
HAL_Flymaple: fixed functor comparison
2015-05-26 15:16:51 +10:00
Andrew Tridgell
7e264b44df
HAL_Linux: fixed functor comparison
2015-05-26 15:14:50 +10:00
Andrew Tridgell
96b921d4cc
AP_Scheduler: fixed example build
2015-05-26 14:37:14 +10:00
Andrew Tridgell
4fdfa47ca3
GCS_MAVLink: removed BUILD_DELEGATES code
...
no longer needed
2015-05-26 14:35:12 +10:00
Andrew Tridgell
8624a262e7
DataFlash: removed BUILD_DELEGATES code
...
no longer needed
2015-05-26 14:35:04 +10:00
Andrew Tridgell
83e6181024
AP_Vehicle: removed BUILD_DELEGATES code
...
no longer needed
2015-05-26 14:34:58 +10:00
Andrew Tridgell
e3f8e22fc6
AP_Mission: removed BUILD_DELEGATES code
...
no longer needed
2015-05-26 14:34:51 +10:00
Andrew Tridgell
85f87b6d9c
AP_Menu: removed BUILD_DELEGATES code
...
no longer needed
2015-05-26 14:34:47 +10:00
Andrew Tridgell
1a2b02a563
AP_HAL: removed AVR special case
...
no longer needed
2015-05-26 14:34:13 +10:00
Andrew Tridgell
7db9da6545
AP_Scheduler: removed delegate ptr handling
...
no longer needed
2015-05-26 14:33:30 +10:00
Andrew Tridgell
edc21cfa38
AP_Compass: make having no compass backends non-fatal
...
thanks to Daniel for spotting this
2015-05-26 14:23:40 +10:00
Andrew Tridgell
43fb1202f2
HAL_PX4: fixed functor comparison with NULL
2015-05-26 13:54:38 +10:00
Lucas De Marchi
0daeeb9518
ArduPlane: Start using new Functor implementation
...
It both reduces flash size and move symbols to read-only sections.
The scheduler_tasks table is one known not to be in read-only section before due
to the FastDelegate implementation. Before and after this patch:
ArduPlane $ size ArduPlane.elf{.old,}
text data bss dec hex filename
733368 8252 67352 808972 c580c ArduPlane.elf.old
730632 8236 64792 803660 c434c ArduPlane.elf
ArduPlane $ nm -C ArduPlane.elf.old|grep scheduler_tasks
0000000000402800 t _GLOBAL__sub_I__ZN5Plane15scheduler_tasksE
00000000006b54c0 B Plane::scheduler_tasks
ArduPlane $ nm -C ArduPlane.elf|grep scheduler_tasks
0000000000490900 R Plane::scheduler_tasks
As can be seen above, now the scheduler_tasks symbol is in a read-only data
section and in all of them we decreased the total size.
For APM2 we have a little increase in the text size size.
ArduPlane $ size ArduPlane.elf{.old,}
text data bss dec hex filename
241940 942 4447 247329 3c621 ArduPlane.elf.old
242222 942 4431 247595 3c72b ArduPlane.elf
ArduPlane $ nm -C ArduPlane.elf.old|grep scheduler_tasks
00001f8f T Plane::scheduler_tasks
ArduPlane $ nm -C ArduPlane.elf|grep scheduler_tasks
00001f8f T Plane::scheduler_tasks
2015-05-26 13:46:55 +10:00
Lucas De Marchi
84f399ec3c
APMrover2: Start using new Functor implementation
...
It both reduces flash size and move symbols to read-only sections.
The scheduler_tasks table is one known not to be in read-only section before due
to the FastDelegate implementation. Before and after this patch:
APMrover2 $ size APMrover2.elf{.old,}
text data bss dec hex filename
611406 4832 40920 657158 a0706 APMrover2.elf.old
609686 4824 38936 653446 9f886 APMrover2.elf
APMrover2 $ nm -C APMrover2.elf{.old,} |grep tasks
0000000000696f80 B Rover::scheduler_tasks
000000000047c440 R Rover::scheduler_tasks
As can be seen above, now the scheduler_tasks symbol is in a read-only data
section and in all of them we decreased the total size.
For APM2 we have a similar situation, but the table was already in text section
because it was using plain C pointers:
APMrover2 $ size APMrover2.elf{.old,}
text data bss dec hex filename
189518 1038 3494 194050 2f602 APMrover2.elf.old
189216 1038 3480 193734 2f4c6 APMrover2.elf
APMrover2 $ nm -C APMrover2.elf{.old,} |grep tasks
00001f92 T Rover::scheduler_tasks
00001f8a T Rover::scheduler_tasks
2015-05-26 13:46:55 +10:00
Lucas De Marchi
20ef7efaf6
AP_HAL: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:55 +10:00
Lucas De Marchi
c894a1349e
DataFlash: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:54 +10:00
Lucas De Marchi
6ae2591cad
AP_Terrain: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:54 +10:00
Lucas De Marchi
9764bb2452
AP_Notify: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:54 +10:00
Lucas De Marchi
3aa46e3213
AP_InertialSensor: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:53 +10:00
Lucas De Marchi
4c97d92982
AP_HAL_Linux: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:53 +10:00
Lucas De Marchi
9b7c1d8f93
AP_HAL_FLYMAPLE: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:53 +10:00
Lucas De Marchi
dcf992b558
AP_HAL_AVR: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:53 +10:00
Lucas De Marchi
435613de69
AP_Frsky_Telem: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:53 +10:00
Lucas De Marchi
95627cf412
AP_Compass: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:52 +10:00
Lucas De Marchi
df5652fa87
AP_Baro: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:52 +10:00
Lucas De Marchi
ca7db5cdc1
AP_Arming: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:52 +10:00
Lucas De Marchi
cc1fbddc95
AP_Airspeed: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:52 +10:00
Lucas De Marchi
f7dc19554f
AP_ADC: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:51 +10:00
Lucas De Marchi
9f0af5b9cb
AP_HAL: add fallback implementation of functor macros
2015-05-26 13:46:51 +10:00
Lucas De Marchi
83efb9280b
AP_HAL: use variadic templates in FastDelegate
...
Now that we are using C++11 we can use variadic templates to simplify
the FastDelegate classes. It also simplifies moving away from the
FastDelegate implementation.
2015-05-26 13:46:51 +10:00
Lucas De Marchi
78b00784fb
AP_Scheduler: allow to use functor
2015-05-26 13:46:50 +10:00
Lucas De Marchi
58847bffd6
GCS_MAVLink: allow to use functor
2015-05-26 13:46:50 +10:00
Lucas De Marchi
cd308b5e2f
DataFlash: allow to use functor
2015-05-26 13:46:50 +10:00
Lucas De Marchi
384a3bfcc3
AP_Mission: allow to use functor
2015-05-26 13:46:50 +10:00
Lucas De Marchi
70525fa2c1
AP_Menu: allow to use functor
2015-05-26 13:46:50 +10:00
Lucas De Marchi
4b5cf24a81
Allow to change to functor implementation
...
Start to add code behind APM_BUILD_FUNCTOR to support changing the
functor implementation (without breaking the build while the change is
not complete).
2015-05-26 13:46:49 +10:00
Lucas De Marchi
a1e1503e1a
AP_HAL: Add Functor implementation
...
This is a Functor implementation that should cover the use cases we have
for FastDelegate. In contrary to the latter, it can be constructed at
compile time so the compiler can safely put it in a read-only section
which covers the cases in which we are not using it.
2015-05-26 13:46:49 +10:00
Lucas De Marchi
5dfb3ed70c
AP_Scheduler: replace tabs with spaces
2015-05-26 13:46:49 +10:00
Lucas De Marchi
82d22992bd
GCS_MAVLink: Do not compare delegate to NULL
...
Use the simpler "if (delegate_name)" since it allows simpler
implementation in the class, i.e. the bool operator rather than having
to compare to another object.
2015-05-26 13:46:49 +10:00
Lucas De Marchi
ff398dbf0c
AP_Menu: Do not compare delegate to NULL
...
Use the simpler "if (delegate_name)" since it allows simpler
implementation in the class, i.e. the bool operator rather than having
to compare to another object.
2015-05-26 13:46:48 +10:00
Lucas De Marchi
acdcdc35fa
AP_HAL_SITL: Do not compare delegate to NULL
...
Use the simpler "if (delegate_name)" since it allows simpler
implementation in the class, i.e. the bool operator rather than having
to compare to another object.
2015-05-26 13:46:48 +10:00
Lucas De Marchi
9ef870c08a
AP_HAL_AVR: Do not compare delegate to NULL
...
Use the simpler "if (delegate_name)" since it allows simpler
implementation in the class, i.e. the bool operator rather than having
to compare to another object.
2015-05-26 13:46:48 +10:00
Lucas De Marchi
57386434d1
AP_ADC: remove AP_ADC_HIL
...
It's not being used and it's actually broken: it references
AP_ADC_HIL::read() that doesn't exist.
2015-05-26 13:46:48 +10:00
Randy Mackay
d777166c6f
AP_MotorsTri: revert tail servo to Ch7
2015-05-25 22:27:38 +09:00
Randy Mackay
1a1fa7ca4b
AP_MotorsHeli: add comment to avoid param conflict
2015-05-25 22:13:49 +09:00
Randy Mackay
4c94a69e33
AP_MotorsCoax: resolve param conflict with TradHeli
2015-05-25 22:13:47 +09:00
Randy Mackay
78b49fb4c6
AP_MotorsSingle: resolve param conflict with TradHeli
...
Also rename servo reverse parameters to be consistent with tricopter
2015-05-25 22:13:45 +09:00
Randy Mackay
8dc7cf7fa8
AP_MotorsTri: YAW_SV_REV values -1 or +1
...
Also resolve parameter conflict with TradHeli
2015-05-25 22:13:43 +09:00
Randy Mackay
71e4bccecb
AP_Motors: init members in constructor
...
Also add f to end of float constants
2015-05-25 22:13:41 +09:00
Robert Lefebvre
915236f1f5
AC_AttitudeControl: Non-functional comment change
...
Don't encourage future misuse of g.rc3
2015-05-25 22:13:37 +09:00
Robert Lefebvre
e87ca6de6f
AC_PosControl: Change motors.get_throttle_out
...
to get_throttle to follow function renaming in AP_Motors
2015-05-25 22:13:34 +09:00
Robert Lefebvre
b8181b6b90
AP_Motors: RCMAP fix
...
Remove all RC Input channels passed as reference into AP_Motors. All input handling self-contained inside AP_Motors.
Rework Tricopter to use internal servo calcs.
2015-05-25 22:13:32 +09:00
Andrew Tridgell
527fc2a610
SITL: use 127.0.0.1 to improve reliability on windows
2015-05-25 22:02:18 +10:00
Andrew Tridgell
563be63d00
SITL: try to get speedup accurate on both windows and linux
2015-05-25 21:48:42 +10:00
Andrew Tridgell
2b2259a6d7
SITL: use more granrular sleeps for windows
2015-05-25 17:05:44 +10:00
Andrew Tridgell
c06d81a06a
SITL: use autotest_dir
...
this allows for the aircraft directory for SITL to be packaged without
the source tree
2015-05-25 13:04:46 +10:00
Andrew Tridgell
3daee9c8bc
HAL_SITL: added --autotest-dir option
2015-05-25 13:04:17 +10:00
Andrew Tridgell
4f37926aea
SITL: fixed gimbal build on PX4
2015-05-25 12:39:40 +10:00
Andrew Tridgell
958d8b4787
GCS_MAVLink: update from upstream headers
2015-05-25 12:20:27 +10:00
Andrew Tridgell
e7abc07898
HAL_SITL: enable --gimbal option
...
instantiates a MAVLink gimbal
2015-05-25 12:20:26 +10:00
Andrew Tridgell
7f5b206c55
SITL: added gimbal simulator class
2015-05-25 12:20:26 +10:00
Andrew Tridgell
2f7facba40
GCS_MAVLink: removed old MAVLink 0.9 headers
2015-05-25 10:19:47 +10:00
Andrew Tridgell
d96e62cce7
AP_Mount: update gimbal for changed quaternion API
2015-05-25 09:08:45 +10:00
Andrew Tridgell
2a8f645d81
AP_Math: use matrix3 euler312 operations in quaternion library
2015-05-25 09:08:31 +10:00
Andrew Tridgell
7aa7e03169
AP_Math: added euler312 functions (for gimbal)
2015-05-25 09:03:11 +10:00
Andrew Tridgell
2bb5f677c7
SITL: removed earth frame rates
2015-05-25 09:03:10 +10:00
Andrew Tridgell
8dce5e11d6
HAL_SITL: removed earth-frame rates
2015-05-25 09:03:10 +10:00
Andrew Tridgell
19419fd901
AP_Mount: fixed reporting of MAVLink gimbal position to GCS
2015-05-24 15:24:02 +10:00
Andrew Tridgell
b61f7fa2f6
AP_AHRS: enable EKF by default on plane
...
now we have arming checks enabled by default I think this is the best
choice
2015-05-23 17:17:44 +10:00
Andrew Tridgell
efd958f0b0
AP_NavEKF: rename file to remove spaces
...
spaces in file names break shell scripts
2015-05-23 17:14:52 +10:00
Andrew Tridgell
2d53a1ff9a
SITL: fixed airspeed in last_letter
2015-05-23 11:37:21 +10:00
Andrew Tridgell
ae6ac1b82d
SITL: fixed airspeed in CRRCSim
2015-05-23 11:35:56 +10:00
Andrew Tridgell
da5d5c9936
SITL: fixed airspeed pass-thru from simulators
2015-05-23 11:24:10 +10:00
Andrew Tridgell
e7f3716e8c
HAL_SITL: pass in wind speed to C++ simulators
2015-05-23 11:04:13 +10:00
Andrew Tridgell
091a1e7fe0
SITL: fixed wind support in JSBSim
2015-05-23 11:03:57 +10:00
Andrew Tridgell
4486ddc53e
DataFlash: changed TimeUS to SampleUS for raw IMU logging
...
this prevents a problem with an upcoming patch from Peter
2015-05-22 17:58:18 +10:00
Jonathan Challinger
28731d2bdc
AP_Motors: add throttle filter input constraint from -100 to 1100
2015-05-22 16:12:27 +09:00
Andrew Tridgell
60221f5e9c
SITL: use sendto() in CRRCSim
...
this makes us robust to restart of client or server
2015-05-22 16:07:45 +10:00
Andrew Tridgell
6cbd291dd2
HAL_SITL: make model name case insensitive
2015-05-22 16:07:44 +10:00
Andrew Tridgell
9336914598
AP_HAL: added sendto socket method
2015-05-22 16:07:44 +10:00
Andrew Tridgell
4e117bc90f
HAL_SITL: support last_letter simulator
2015-05-22 16:07:44 +10:00
Andrew Tridgell
b35c21fbe2
SITL: fixed socket recv error check
2015-05-22 16:07:43 +10:00
Andrew Tridgell
e487d95c1b
SITL: added direct support for last_letter simulator
2015-05-22 16:07:43 +10:00
Robert Lefebvre
bcc3fa0526
AC_HELI_PID: Pass default FF param setting in constructor
2015-05-22 09:38:28 +09:00
Robert Lefebvre
73bafa131e
AP_MotorsHeli: Overload output()
...
To protect it from future interference from Multirotor code.
2015-05-22 09:38:23 +09:00
Robert Lefebvre
d3ce68a8ca
AP_MotorsHeli: Overload update_throttle_filter()
...
Do not reset filter to zero when disarmed to allow collective pitch servo movement.
2015-05-22 09:38:20 +09:00
Peter Barker
6299a8c90d
autotest: drain control socket in SITL
...
fixes SITL on plane
2015-05-22 08:09:15 +10:00
Andrew Tridgell
cd66ce1c74
HAL_SITL: don't advance clock on garbage SIM input
2015-05-21 21:17:22 +10:00
Andrew Tridgell
605b8b4ece
AP_Math: converted rotations example to cpp
...
this is just a test conversion before we start converting on-mass
2015-05-21 13:41:20 +10:00
Andrew Tridgell
062c9406bd
AP_Math: fixed rotations example build
2015-05-21 13:37:44 +10:00
Andrew Tridgell
a1a3212131
AP_Common: moved NOINLINE define to AP_Common.h
2015-05-21 09:35:26 +10:00
Andrew Tridgell
fb97c16a84
AP_Param: make data pointer const
2015-05-21 07:48:52 +10:00
Andrew Tridgell
84726e4a3a
GCS_MAVLink: use APM_BUILD_DELEGATES
2015-05-21 07:48:52 +10:00
Andrew Tridgell
f8aef57ec3
DataFlash: use APM_BUILD_DELEGATES
2015-05-21 07:48:51 +10:00
Andrew Tridgell
0847bd2608
AP_Scheduler: use APM_BUILD_DELEGATES
2015-05-21 07:48:51 +10:00
Andrew Tridgell
e7ba2c8d93
AP_Mission: use APM_BUILD_DELEGATES
2015-05-21 07:48:51 +10:00
Andrew Tridgell
3a300575bc
AP_Menu: use APM_BUILD_DELEGATES
2015-05-21 07:48:51 +10:00
Andrew Tridgell
98d2b9b3aa
AP_Vehicle: added APM_BUILD_DELEGATES macro
2015-05-21 07:48:50 +10:00
Andrew Tridgell
c3aa8d67fa
AP_Arming: convert to delegates
2015-05-21 07:48:50 +10:00
Andrew Tridgell
71b550d7b5
GCS_MAVLink: support member functions for rover
2015-05-21 07:48:47 +10:00
Andrew Tridgell
b5d930be61
DataFlash: support member functions for rover
2015-05-21 07:48:47 +10:00
Andrew Tridgell
1237772479
AP_Scheduler: support member functions for rover
2015-05-21 07:48:46 +10:00
Andrew Tridgell
12cbf7888f
AP_Mission: support member functions for rover
2015-05-21 07:48:46 +10:00
Andrew Tridgell
db13f657a8
AP_Menu: support member functions for rover
2015-05-21 07:48:46 +10:00
Andrew Tridgell
e1e85ecc3d
AP_Progmem: simpler PROGMEM header
2015-05-21 07:48:46 +10:00
Andrew Tridgell
abfb601db6
AP_Progmem: added pgm_read_block()
2015-05-21 07:48:45 +10:00
Andrew Tridgell
d57fcf7e46
AP_HAL: added workaround for AVR delegates in PROGMEM
2015-05-21 07:48:45 +10:00
Andrew Tridgell
be587beedc
AP_HAL: disable nagle on sockets for faster local operation
2015-05-21 07:48:45 +10:00
Andrew Tridgell
b0932548d8
AP_GPS: enable NMEA GPS on AntennaTracker
...
we have enough flash space for it
2015-05-21 07:30:21 +10:00
Andrew Tridgell
411a96b4b3
AP_NavEKF: take at most 30s to accept DCM attitude
...
velocity noise on the GPS can cause DCM to take a long time to
converge. If it takes longer than 30s then allow EKF to start
2015-05-20 15:22:15 +10:00
Andrew Tridgell
7a76f72bf5
AP_AHRS: added uptime_ms() interface
2015-05-20 15:22:14 +10:00
ziltoid2
23787cf695
AP_Baro: use ground_temperature instead of calibration_temperature for alt calculation
2015-05-20 11:42:21 +10:00
Andrew Tridgell
92c4c5cbcf
AP_NavEKF: change using_gps threshold to 4s
...
this means plane will continue to use dead reckoning with GPS 3D lock
for 4s
2015-05-19 20:52:39 +10:00
Paul Riseborough
69ca654194
AP_NavEKF: Update declination when we know our location
...
This ensures that when we start using GPS, that the EKF will be using the correct declination for that location
If declination is not known it defaults to zero
2015-05-19 20:35:52 +10:00
Paul Riseborough
c1c5e3598a
AP_NavEKF: Enforce alignment of realigned earth mag field with declination
...
This prevents bad inertial or GPS data combined with the post takeoff heading alignment check used by plane from resulting in earth field states that have an incorrect declination
2015-05-19 20:35:52 +10:00
Paul Riseborough
b1d8805114
AP_NavEKF: Reduce takeoff detection sensitivity
...
This patch reworks the in-air transition criteria to reduce the likelihood of false positives and to ensure that there will be enough ground speed to make the heading check work reliably.
2015-05-19 20:35:52 +10:00
Randy Mackay
d1808c645d
AC_PosControl: recalc leash length on speed or accel change
...
This resolves an issue in which do-set-speed would not take effect until
one waypoint too late in a mission.
2015-05-19 18:16:39 +09:00
Andrew Tridgell
5514a9f690
AP_NavEKF: base EKF decisions on vehicle class
...
using the vehicle class rather than the build macros allows this to
work correctly in replay
2015-05-19 15:21:22 +10:00
Andrew Tridgell
92daa15ccc
AP_AHRS: on plane and rover make AHRS unhealthy when EKF not initialised
...
planes and rovers need full absolute position from the EKF if the EKF
is going to be used. We don't want users to arm without full
capabilities
2015-05-19 15:21:21 +10:00
Andy Piper
c600c1a746
DataFlash: log Gyro and Accel Health for IMUs.
...
Log the health of the various IMUs under GyHlt and AcHlt.
(Names are shortened to get inside the string array limit).
2015-05-19 13:13:35 +09:00
Andrew Tridgell
0619247992
HAL_Linux: don't advance time in delay() and delay_microseconds()
...
this could cause time to go backwards in Replay. Thanks to Peter for
finding this
2015-05-19 13:17:15 +10:00
Andrew Tridgell
29f0561ce4
AP_AHRS: reject EKF for plane when we have GPS and aren't fusing
...
plane users would prefer to use GPS in this case
2015-05-17 21:24:57 +10:00
Andrew Tridgell
6154db5cf8
AP_NavEKF: added using_gps status bit
2015-05-17 21:24:57 +10:00
Randy Mackay
0077cac1b7
AC_WPNav: rename stop to brake
2015-05-17 14:44:33 +09:00
Andrew Tridgell
80c20b5cf2
DataFlash: use L for latitude/longitude in DF messages
2015-05-16 14:04:31 +10:00
Tom Pittenger
e987173ffb
AP_NavEKF: float to double promotion via tan instead of tanf
2015-05-16 08:21:49 +10:00
Tom Pittenger
5f677c2b5b
AP_Math: float to double promotion via cos instead of cosf
2015-05-16 08:21:49 +10:00
Tom Pittenger
7b95241306
AP_HAL_SITL: float to double promotion via cos instead of cosf
2015-05-16 08:21:37 +10:00
Tom Pittenger
4f1dd2c8a4
AC_AttitudeControl: compiler warning stuff
...
float to double promotion via cos & sin instead of cosf & sinf
(this code is commented out but in case it ever gets included it would be nice to be correct
2015-05-16 08:21:36 +10:00
Andrew Tridgell
aaa35bd1ec
AP_InertialSensor: using atan2f() gives more accurate euler corrections
...
thanks to Jon and Paul!
2015-05-16 08:19:18 +10:00
Andrew Tridgell
9e723ef907
AP_InertialSensor: added calibrate_trim() function
...
used for redoing trim calculation
2015-05-16 07:56:34 +10:00
Andrew Tridgell
b564ba0868
AP_InertialSensor: fixed AHRS_TRIM calculation again
2015-05-16 07:56:33 +10:00
Andrew Tridgell
2475ee9630
AP_Compass: setup HIL/SITL for two compasses
2015-05-16 07:06:04 +10:00
Andrew Tridgell
ab687ab0f5
DataFlash: added double to list of format strings
...
thanks to Dario <proyectoire@gmail.com> for noticing this
2015-05-15 21:14:49 +10:00
Jonathan Challinger
159599879f
AP_InertialSensor: simplify and correct AHRS_TRIM computation
2015-05-15 21:03:03 +10:00
Andrew Tridgell
d7e4310df0
DataFlash: Lat can be negative in POS
2015-05-15 17:55:50 +10:00
Randy Mackay
559684b257
GCS_MAVLink: fix flow control check
...
Thanks to Tridge for spotting is
2015-05-15 15:39:34 +09:00
Andrew Tridgell
b0a90df135
DataFlash: fixed double Init of DF object
...
thanks to Michael De Breuil
2015-05-15 16:33:10 +10:00
Randy Mackay
763c671d0a
GCS_Console: fix example sketch after mavlink_comm_port to array
2015-05-15 15:07:32 +09:00
Randy Mackay
85eeba93c0
GCS_MAVLink: mavlink_comm_port to array
2015-05-15 15:07:31 +09:00
Randy Mackay
facbfaf31f
SerialManager: support for 4th mavlink channel
2015-05-15 15:07:24 +09:00
Randy Mackay
62e7e8cc7d
GCS_MAVLink: add support for 4th mavlink chan on PX4
2015-05-15 15:07:23 +09:00
Andrew Tridgell
74485c5754
DataFlash: added Log_Write_POS() call
...
write AHRS position to DF log
2015-05-15 14:28:08 +10:00
Andrew Tridgell
3370ec62a1
HAL_SITL: fix for multi-compass SITL
2015-05-15 14:25:44 +10:00
Andrew Tridgell
91b4ba3588
AP_Compass: allow for more than one compass in HIL/SITL
2015-05-15 14:25:44 +10:00
Andrew Tridgell
11f70da8b4
DataFlash: fixed incorrect change to GPS message
2015-05-15 14:25:43 +10:00
Randy Mackay
ade4f81c77
Compass: fix example sketch
2015-05-15 11:53:28 +09:00
Paul Riseborough
bd91b9727f
AP_NavEKF: Add pre-arm check for horizontal inertial errors
...
This check will declare the EKF as unhealthy if the horizontal position innovations exceed a threshold before motors are armed.
This will help to prevent a takeoff with bad inertial data caused by bad accel or gyro offsets.
2015-05-15 10:35:25 +09:00
Randy Mackay
1b13250fd8
RC_Channel: small parameter description change
2015-05-14 10:33:08 +09:00
Randy Mackay
61c851885f
AC_WPNav: remove unused set_spline_dest_and_vel
2015-05-13 22:40:08 +09:00
Randy Mackay
7056484ef0
Copter: fix spline overshoot
2015-05-13 22:40:06 +09:00
Randy Mackay
56b92e7d8c
AC_PID: fix example sketch
2015-05-13 17:55:39 +09:00
Paul Riseborough
c2ac80cc63
AP_AHRS: Prevent copter from switching to DCM unless EKF has severe errors
2015-05-13 16:11:13 +09:00
Randy Mackay
3f8b832075
InertialSensor: fix example sketch
2015-05-13 10:13:51 +09:00
Randy Mackay
3bcd97fcd1
Parachute: increase deployment duration to 2sec
2015-05-12 22:08:20 +09:00
Randy Mackay
5560d3dba1
BattMonitor: fix example sketch
2015-05-12 21:34:24 +09:00
Randy Mackay
e080b2acce
AP_Arming: use accel_calibrated_ok_all
2015-05-12 16:32:22 +09:00
Randy Mackay
1f14eec4ea
InertialSensor: accel_calibrated_all_ok replaces calibrated
...
This checks that the current number of accelerometers matches the number
of calibrated accels in order to catch accel failures at boot
2015-05-12 16:32:16 +09:00
Randy Mackay
0d72f3ac29
AP_HAL: fix example sketches
2015-05-12 14:42:15 +09:00
Andrew Tridgell
8bf2baef70
AP_InertialSensor: fixed primary accel/gyro in replay
2015-05-11 11:19:11 +10:00
Andrew Tridgell
f40c96de9d
SITL: add 'quad' and 'copter' as aliases for quadcopter
2015-05-11 09:19:53 +10:00
Andrew Tridgell
2a47cc3c81
HAL_SITL: cleanup command line handling
2015-05-11 08:48:42 +10:00
Andrew Tridgell
bab94c8a04
SITL: close high fds before launching JSBSIM
2015-05-11 08:06:10 +10:00
Andrew Tridgell
414f4125de
AP_HAL: use FD_CLOEXEC to prevent sockets being inherited in SITL
2015-05-11 08:05:51 +10:00
Andrew Tridgell
7692889248
SIM_JSBSim: added elevon and vtail support
2015-05-10 21:57:39 +10:00
Andrew Tridgell
aa9853179c
SITL: fixed startup yaw
2015-05-10 21:57:19 +10:00
Andrew Tridgell
5687adbdba
HAL_SITL: support JSBSim backend
2015-05-10 21:02:20 +10:00
Andrew Tridgell
692fc18698
AP_HAL: protect Socket.h from double include
2015-05-10 21:02:04 +10:00
Andrew Tridgell
c136d65c25
SITL: added initial JSBSim simulator backend
2015-05-10 21:01:49 +10:00
Andrew Tridgell
8ec98a5ec9
SITL: make it possible to connect two SITL instances together
...
this adds --client to set uartC as a tcp client rather than a TCP
server
2015-05-10 15:36:18 +10:00
Andrew Tridgell
3991e0c476
DataFlash: fixed sign of sv in GRAW message
2015-05-10 12:15:04 +10:00
Andrew Tridgell
3529e02675
AP_AHRS: if we have 3 gyros then only use first two
...
the 3rd gyro on a PH2 has a lot more noise as it is not vibration
isolated
2015-05-09 21:00:49 +10:00
Paul Riseborough
cb59570938
AP_NavEKF: Remove bug preventing external selection of optical flow mode
2015-05-09 18:31:18 +10:00
Randy Mackay
3390d9932e
AP_AHRS: fix example sketch
2015-05-09 12:23:05 +09:00
Tom Pittenger
2deb0e08ea
AP_NavEKF: replace fabs() with fabsf()
2015-05-09 09:57:27 +10:00
Tom Pittenger
79605de8f5
AP_Mission: replace fabs() with fabsf()
2015-05-09 09:57:27 +10:00
Tom Pittenger
e20ffa8c75
AP_Math: replace fabs() with fabsf()
2015-05-09 09:57:27 +10:00
Tom Pittenger
1c8efb25a8
AP_HAL_SITL: replace fabs() with fabsf()
2015-05-09 09:57:26 +10:00
Tom Pittenger
4b6d0d8e24
AP_HAL: replace fabs() with fabsf()
2015-05-09 09:57:26 +10:00
Tom Pittenger
9d74f57ed3
AP_PID: replace fabs() with fabsf()
2015-05-09 09:57:26 +10:00
Tom Pittenger
70bef20a29
AC_AttitudeControl: replace fabs() with fabsf()
2015-05-09 09:57:26 +10:00
Andrew Tridgell
1127b716c4
SITL: lower the default noise
...
prevents problems calibrating the gyro
2015-05-09 07:22:37 +10:00
Andrew Tridgell
2552acbf12
AP_Arming: fixed accel cal test in arming
...
use a per-imu time of last cal pass, and triple accel threshold for
IMU3. Raise threshold to 0.5 for IMU1/IMU2
2015-05-08 21:01:52 +10:00
Tom Pittenger
d94c95a6ef
GCS_MAVLink: return true if mission recieve is complete
...
when handing a mission item, and that is the last item, return true so that whoever is handling this knows we have a new mission list. From here we can log a new mission
2015-05-08 21:01:51 +10:00
Paul Riseborough
a232606fc9
AP_NavEKF: Prevent EKF yaw errors due to fast yaw spins
...
Prolonged yaw rotations with gyro scale factor errors can cause yaw errors and gyro bias estimation errors to build up to a point where EKF health checks fail.
This patch introduces the following protections:
1) The assumed yaw gyro error is scaled using a filtered yaw rate and an assumed 3% scale factor error (MPU6000 data sheet)
2) When the filtered yaw rate magnitude is greater than 1 rad/sec, the Z gyro bias process noise is zeroed and the state variance set to zero to inhibit modification of the bias state
3) When the filtered yaw rate magnitude is greater than 1 rad/sec, the magnetometer quaternion corrections are scaled by a factor of four to maintain tighter alignment with the compass
2015-05-08 16:47:31 +09:00
Paul Riseborough
08382373f1
AP_NavEKF: Reduce likelihood of in-air switch to GPS with a bad heading
...
Increases magnetometer weighting on yaw corrections when there there is no other aiding to constrain yaw drift.
Prevents switch to GPS if magnetometer data is failing innovation checks which indicates a bad yaw angle
2015-05-08 16:47:29 +09:00
Randy Mackay
3781f133d7
AC_AttControlHeli: remove unused definitions
2015-05-08 14:50:38 +09:00
Randy Mackay
bef5633ed5
AC_AttControlHeli: use params from parent class
2015-05-08 14:50:36 +09:00
Randy Mackay
7951346d72
AC_AttControl: bf_feedfoward_save made more concise
2015-05-08 14:29:49 +09:00
Randy Mackay
3d9a6a69e2
MotorsHeli: COLYAW to float
2015-05-08 14:14:36 +09:00
Randy Mackay
edfa206bb8
Motors_Heli: nest heli params
2015-05-08 14:14:35 +09:00
Randy Mackay
68b05a4ca2
AP_Motors: is_throttle_mix_min returns bol
2015-05-08 14:14:32 +09:00
Leonard Hall
cf45a1cf3a
AC_AttitudeControl: add get accel and save ff
2015-05-08 14:14:30 +09:00
Leonard Hall
1900cc7582
AC_AttitudeControl: Enable FF by default
2015-05-08 14:14:21 +09:00
Leonard Hall
0f894ac1a8
AP_Motors: Rename and move Throttle Mix / Comp
2015-05-08 14:14:17 +09:00
Jonathan Challinger
142e018a18
AP_NavEKF: fix bug causing takeoff to fail
2015-05-08 09:15:45 +09:00
Randy Mackay
fa4ba456b4
GPS: fix example sketches
2015-05-07 14:01:14 +09:00
Andrew Tridgell
afc9812d0b
AP_InertialSensor: update VibTest after moving messages info DataFlash
2015-05-07 13:25:37 +10:00
Andrew Tridgell
7d90033a36
AP_InertialSensor: support raw accel and gyro dataflash logging
2015-05-07 12:08:30 +10:00
Andrew Tridgell
21d805422d
DataFlash: added defines for raw accel and gyro logging
2015-05-07 12:08:04 +10:00
Andrew Tridgell
f5140e25b0
AP_InertialSensor: updated VibTest for latest PX4 interfaces
2015-05-07 10:51:52 +10:00
Andrew Tridgell
cbdc9f0706
SITL: fixed autotest SITL
2015-05-06 10:09:43 +10:00
Andrew Tridgell
2369e06815
AP_HAL: fixed SITL build on windows
2015-05-06 09:07:03 +10:00
Andrew Tridgell
b09fcfc20e
HAL_Linux: cope with systems without I2C_RDRW_IOCTL_MAX_MSGS
...
such as my ubuntu 14.04 laptop :-)
2015-05-05 21:42:46 +10:00
Andrew Tridgell
6a8da06d19
HAL_SITL: hook in CRRCSim backend
2015-05-05 21:42:46 +10:00
Andrew Tridgell
93d5101bf9
SITL: added CRRCSim simulation connection
2015-05-05 21:42:45 +10:00
Andrew Tridgell
4c11002976
AP_HAL: added HAL_OS_SOCKETS define
...
used for systems with BSD sockets
2015-05-05 21:34:19 +10:00
Andrew Tridgell
08b9ed3342
AP_HAL: added socket handling class
2015-05-05 21:34:19 +10:00
Randy Mackay
9dede2f0ec
Math: remove duplicate HALF_SQRT_2 definition
2015-05-05 14:23:14 +09:00
Randy Mackay
151707cb0a
Filter: replace 2*M_PI_F with M_2PI_F
2015-05-05 14:22:52 +09:00
Peter Barker
463270e0ee
AP_AHRS: avoid FPE when we don't have a compass reading
2015-05-05 15:02:35 +10:00
Andrew Tridgell
77a2b4acf6
AP_Math: removed fast_atan
2015-05-05 13:57:22 +10:00
Andrew Tridgell
872583f441
AC_AttitudeControl: removed fast_atan
2015-05-05 13:57:16 +10:00
Andrew Tridgell
8ba5272b0e
AP_Scheduler: fixed PSTR() usage
2015-05-05 13:54:27 +10:00
Andrew Tridgell
88fb7ddff8
AP_Param: fixed PSTR() usage
2015-05-05 13:54:15 +10:00
Andrew Tridgell
089e63f987
AP_InertialSensor: fixed PSTR handling
...
must use PSTR on code compiled for AVR
2015-05-05 13:54:00 +10:00
Andrew Tridgell
31693e332e
AP_InertialSensor: use non-PSTR printf
...
this is not built on AVR
2015-05-05 13:48:34 +10:00
Andrew Tridgell
730644eaeb
AP_Mount: use M_PI_F instead of (float)M_PI
2015-05-05 13:44:25 +10:00
Andrew Tridgell
84ac721340
AC_AttitudeControl: use M_PI_F instead of (float)M_PI
2015-05-05 13:44:19 +10:00
Andrew Tridgell
f9114f849b
Filter: revert AP_Math class change
2015-05-05 13:27:07 +10:00
Andrew Tridgell
bcc6c7d380
AP_Param: revert AP_Math class change
2015-05-05 13:27:07 +10:00
Andrew Tridgell
a140a5e77f
AP_NavEKF: revert AP_Math class change
2015-05-05 13:27:07 +10:00
Andrew Tridgell
7c9e3d4b58
AP_Mount: revert AP_Math class change
2015-05-05 13:27:06 +10:00
Andrew Tridgell
0b897e04bb
AP_Math: revert AP_Math class change
2015-05-05 13:27:06 +10:00
Andrew Tridgell
e6a8a6da07
AP_InertialSensor: revert AP_Math class change
2015-05-05 13:27:06 +10:00
Andrew Tridgell
015fce5183
AP_Compass: revert AP_Math class change
2015-05-05 13:27:06 +10:00
Andrew Tridgell
d2167633f0
AP_Camera: revert AP_Math class change
2015-05-05 13:27:06 +10:00
Andrew Tridgell
48fb7f8159
AP_BARO: revert AP_Math class change
2015-05-05 13:27:05 +10:00
Andrew Tridgell
4d4a607b80
AP_AHRS: revert AP_Math class change
2015-05-05 13:27:05 +10:00
Andrew Tridgell
c08b62f9e4
AC_WPNAV: revert AP_Math class change
2015-05-05 13:27:05 +10:00
Andrew Tridgell
33555b7f12
AC_PID: revert AP_Math class change
2015-05-05 13:27:05 +10:00
Andrew Tridgell
aa1bfb1ca7
AC_Fence: revert AP_Math class change
2015-05-05 13:27:04 +10:00
Andrew Tridgell
326b0b33ea
AC_AttitudeControl: revert AP_Math class change
2015-05-05 13:27:04 +10:00
Andrew Tridgell
936fbbb362
AP_Math: removed AP_Math class
2015-05-05 13:27:03 +10:00
Tom Pittenger
7fd285f483
AC_WPNav: Compiler warnings: nuke fast_atan2()
...
per Randy's suggestion, fast_atan2() is no longer necessary over atan2() because only copter uses it and copter is no longer supported on future builds of APM
ccd578664f (commitcomment-11025083)
2015-05-05 13:27:03 +10:00
Tom Pittenger
4ec2fb3a9c
AP_Math: Compiler warnings: nuke fast_atan2()
...
per Randy's suggestion, fast_atan2() is no longer necessary over atan2() because only copter uses it and copter is no longer supported on future builds of APM
ccd578664f (commitcomment-11025083)
2015-05-05 13:27:02 +10:00
Tom Pittenger
1b84bbc3e7
AC_WPNav: Compiler warnings: add in the appropriate whitrespace
2015-05-05 13:27:02 +10:00
Tom Pittenger
0e076d6dc8
AP_InertialSensor: compile warnings: format not a string literal, argument types not checked
...
PSTR() goofs things up when using hal.console->printf_P()
2015-05-05 13:27:02 +10:00
Tom Pittenger
6acd92be1e
AP_RangeFinder: compiler warnings: compare signed to unsigned
2015-05-05 13:27:02 +10:00
Tom Pittenger
9e98c68099
AP_InertialSensor: compile warnings: format not a string literal, argument types not checked
...
PSTR() goofs things up when using hal.console->printf_P()
2015-05-05 13:27:01 +10:00
Tom Pittenger
d823541eb1
AP_Scheduler: compile warnings: format not a string literal, argument types not checked
...
PSTR() goofs things up when using hal.console->printf_P()
2015-05-05 13:27:01 +10:00
Tom Pittenger
bfd1b2b11a
AP_Param: compile warnings: format not a string literal, argument types not checked
2015-05-05 13:27:01 +10:00
Tom Pittenger
b9771ca37c
AP_Param: compile warnings: float to double. print statements require doubles
2015-05-05 13:27:00 +10:00
Tom Pittenger
330e4126bb
Ap_Math: compile warnings: float to double. use atan2f instead of atan2
2015-05-05 13:27:00 +10:00
Tom Pittenger
440438fdda
AP_Param: compiler warnings: apply is_zero(float) or is_equal(float)
...
due to an include cross-dependency between ap_param and ap_math, I punted and reimplemented is_equal() for this one function in the header
2015-05-05 13:26:58 +10:00
Tom Pittenger
820f0bf02a
AP_Math: compiler warnings: float to double promotion
...
cast as float because we're in magical template land where T minus T means promote to double
2015-05-05 13:26:58 +10:00
Tom Pittenger
1c3ad00aa7
AP_Math: compiler warnings: use double for the constant so the template can handle it
2015-05-05 13:26:57 +10:00
Tom Pittenger
6e6f481ecb
AP_Math: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:56 +10:00
Tom Pittenger
98c5137107
AP_HAL_PX4: compiler warnings: float to doubles
2015-05-05 13:26:56 +10:00
Tom Pittenger
54f4d4b07c
AP_PID: compiler warnings: reordered constructor
2015-05-05 13:26:56 +10:00
Tom Pittenger
0b29848277
AP_Baro: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:56 +10:00
Tom Pittenger
d275e6711d
AP_HAL_VRBRAIN: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:55 +10:00
Tom Pittenger
20f47417d5
AP_AHRS: compiler warnings: apply is_zero(float) or is_equal(float) and float to doubles
2015-05-05 13:26:55 +10:00
Tom Pittenger
94ffc9b942
AC_Fence: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:55 +10:00
Tom Pittenger
1bca81eaed
AC_AttitudeControl: compiler warnings: apply is_zero(float) or is_equal(float) and float to doubles
2015-05-05 13:26:55 +10:00
Tom Pittenger
6d1b517aae
Filter: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:55 +10:00
Tom Pittenger
913d00f525
AP_WPNav: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:54 +10:00
Tom Pittenger
98ca790cb9
AP_DataFlash: compiler warnings: float to double
2015-05-05 13:26:54 +10:00
Tom Pittenger
4ac1f8a2fa
AP_Mount: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:54 +10:00
Tom Pittenger
9b53961a7d
AP_NavEKF: compiler warnings: float to double
2015-05-05 13:26:52 +10:00
Tom Pittenger
3276eec30e
AP_NavEKF: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:52 +10:00
Tom Pittenger
35f7a466e5
AP_Math: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:52 +10:00
Tom Pittenger
a5d2f3a82f
AP_Math: compiler warnings: float to double
2015-05-05 13:26:52 +10:00
Tom Pittenger
d09ef4783d
AP_Compass: compiler warnings: reorder constructors
2015-05-05 13:26:52 +10:00
Tom Pittenger
ad11a57f57
AP_Compass: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:51 +10:00
Tom Pittenger
820199635b
AP_InertialSensors: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:51 +10:00
Tom Pittenger
01180d52c4
AP_PID: compiler warnings: apply is_zero(float)
2015-05-05 13:26:51 +10:00
Tom Pittenger
ac4e7b2b03
AP_Math: compiler warnings: apply is_equal(float)
2015-05-05 13:26:51 +10:00
Tom Pittenger
c93c773de2
AP_Math: change is_equal and is_zero to static class for better visability
2015-05-05 13:26:50 +10:00
Tom Pittenger
3cb2221315
AP_IntertialSensor: double to float warning
2015-05-05 13:26:50 +10:00
Tom Pittenger
bdda11b327
AP_Math: compiler warning: is_zero special case for vector3.h in a template
2015-05-05 13:26:50 +10:00
Andrew Tridgell
878eb88c3a
AP_GPS: avoid expanding the ublox buffer on APM2
2015-05-05 13:25:34 +10:00
Micheal Knight
ee85d37ee2
AP_GPS: added logging of RXM_RAW messages for UBlox
...
this will allow for post-flight RTK processing of DF logs
2015-05-05 13:25:34 +10:00
Andrew Tridgell
f8e09da50e
DataFlash: added GRAW raw GPS message
...
for saving RXM_RAW for post flight RTK
2015-05-05 13:25:34 +10:00
Andrew Tridgell
42c6801d61
SITL: reformat SITL code with astyle
2015-05-05 11:49:54 +10:00
Andrew Tridgell
c81ad1d622
HAL_SITL: reformat HAL_SITL with astyle
2015-05-05 10:59:07 +10:00
Lucas De Marchi
d640bc8345
AP_HAL_Linux: use kernel's limit of msgs per I2C transaction
...
Instead of hardcoding 8 as the limit for I2C msgs, use whatever the
kernel exported to us. In upstream this is 42 so it means we can group
together 21 addr/data pair instead of only 8.
2015-05-05 09:56:44 +10:00
Andrew Tridgell
d8791134f9
HAL_SITL: need to use fabs() for double checking
2015-05-05 09:45:59 +10:00
Andrew Tridgell
b9abf30785
HAL_SITL: removed unused cygwin code
2015-05-05 09:45:58 +10:00
Andrew Tridgell
5158f91263
HAL_SITL: converted command line code to getopt_cpp
2015-05-05 09:45:58 +10:00
Andrew Tridgell
a58a663085
SITL: fixed build on APM2
2015-05-05 09:45:58 +10:00
Andrew Tridgell
35d22b9d57
AP_HAL: added getopt_cpp class
...
a simple port of getopt_long to C++
2015-05-05 09:45:58 +10:00
Andrew Tridgell
438f954379
DataFlash: fixed some build warnings
2015-05-05 09:45:58 +10:00
Andrew Tridgell
d8ca0658d7
AP_Mount: fixed some build warnings
2015-05-05 09:45:58 +10:00
Andrew Tridgell
b2b5c8cd18
HAL_SITL: fixed some build warnings
2015-05-05 09:45:58 +10:00
Andrew Tridgell
a7c3125bcc
AP_GPS: fixed warnings in SBP driver
2015-05-05 09:45:57 +10:00
Andrew Tridgell
212e0ec002
StorageManager: fix for HAL_SITL rename
2015-05-05 09:45:57 +10:00
Andrew Tridgell
fa688a7b14
RC_Channel: fix for HAL_SITL rename
2015-05-05 09:45:57 +10:00