Commit Graph

7205 Commits

Author SHA1 Message Date
Jonathan Challinger
074ee49cd0 AP_InertialSensor_PX4: interleave accel and gyro samples by time 2015-03-12 12:50:28 +11:00
Jonathan Challinger
addf80b669 AP_InertialSensor_PX4: explicitly configure sensors, publish deltas 2015-03-12 12:50:27 +11:00
Jonathan Challinger
b5131b7b64 AP_InertialSensor: add coning.py example 2015-03-12 12:50:27 +11:00
Jonathan Challinger
2a547f329b AP_InertialSensor: allow backends to publish delta velocities and angles 2015-03-12 12:50:27 +11:00
Jonathan Challinger
155c173ed1 AP_InertialSensor: rename _rotate_and_offset to _publish 2015-03-12 12:50:27 +11:00
Jonathan Challinger
502446d821 AP_InertialSensor: use LowPassFilter2pVector3f 2015-03-12 12:50:27 +11:00
Jonathan Challinger
0133f0bb57 LowPassFilter2p: split into LowPassFilter2pfloat and LowPassFilter2pVector3f 2015-03-12 12:50:27 +11:00
ustas
a2d5ac6805 AP_GPS: add includes for success build example sketch
include AP_Scheduler.h for achieve build GPS_UBLOX_passthrough example
2015-03-11 21:30:31 +09:00
mirkix
4f1dd85e47 AP_HAL: Add test sketch for RC input to RC output pass through 2015-03-11 21:14:15 +09:00
Randy Mackay
12724e9556 AC_PID: remove include of stdio.h 2015-03-11 20:40:05 +09:00
Randy Mackay
cc0d5b9ced AC_PI_2D: replace set_filt_hz method with filt_hz
Thanks to Jonathan Challinger for spotting this bug
2015-03-11 17:28:36 +09:00
Randy Mackay
c10b0b34ca AC_PID: replace set_filt_hz method with filt_hz
Thanks to Jonathan Challinger for spotting this bug
Also add sanity check to filt_hz
2015-03-11 17:28:20 +09:00
Jonathan Challinger
88ec13b10d AC_PosControl: fix build 2015-03-11 10:00:00 +09:00
Randy Mackay
50d2e98aa4 AC_AttControl: init throttle_hover in constructor 2015-03-10 22:10:36 +09:00
Randy Mackay
965db2c7f7 AC_PosControl: add comments and defines for jerk limits 2015-03-10 22:10:34 +09:00
Jonathan Challinger
4408c1b935 AC_PosControl: 2d jerk constraint in accel_to_lean_angles 2015-03-10 22:10:32 +09:00
Jonathan Challinger
9871b95586 AC_PosControl: fix dt sanity checking 2015-03-10 22:10:30 +09:00
Jonathan Challinger
e7efe23fb5 GCS_MAVLink: reserve message IDs for future feature additions 2015-03-10 15:30:14 +09:00
Randy Mackay
5e26450a6f AP_Motors: make THR_LOW_COMP a variable instead of param 2015-03-10 12:20:27 +09:00
Leonard Hall
007c96a3d8 AP_Motors: Low throttle compensation setters 2015-03-10 12:20:21 +09:00
Leonard Hall
6275ee0289 AP_Motors: Check for battery voltage reading fail 2015-03-10 12:20:19 +09:00
Randy Mackay
5f26a36060 INS: protect against two calibrations running at the same time 2015-03-09 17:58:38 +11:00
Randy Mackay
f9c6e35d19 INS: add calibrating method 2015-03-09 17:58:38 +11:00
Randy Mackay
b0e7990c90 INS: set gyro_cal_ok only after completing calibration 2015-03-09 17:58:37 +11:00
Andrew Tridgell
aec7907571 AP_InertialSensor: updated comment on accel check in gyro cal 2015-03-09 17:58:36 +11:00
Andrew Tridgell
494e909703 AP_InertialSensor: ensure accel cal completion messages get through 2015-03-09 07:36:50 +11:00
Andrew Tridgell
38bde56523 AP_InertialSensor: continue finding best gyro after convergence
with multiple gyros if we are still calibrating one of the gyros then
keep looking for better values for the already converged gyros.
2015-03-08 07:49:38 +11:00
Andrew Tridgell
20a4c98bac AP_InertialSensor: use accelerometers to prevent bad gyro cal
if the board is rotating at a steady rate we can end up with a bad
gyro calibration. This can happen on a steadily moving platform such
as a ship.

This uses the accelerometers to detect the steady movement and not
accept the gyro calibration
2015-03-08 07:48:16 +11:00
Andrew Tridgell
434d094993 AP_InertialSensor: allow MAVLink packets to flow during accelcal
this uses the snoop functionality of GCS_MAVLink to allow the delay
callback to be used during accel calibration
2015-03-07 21:56:39 +11:00
Andrew Tridgell
af7765c57c GCS_MAVLink: fixed typo 2015-03-07 13:54:58 +11:00
Andrew Tridgell
ac848dc103 GCS_MAVLink: zero packet data before reply in serial control 2015-03-07 13:53:44 +11:00
Randy Mackay
7675160e33 Notify: add firmware update flag and implement for OreoLED 2015-03-06 17:26:51 +09:00
Jace A Mogill
442d07a6c9 Notify: OreoLED fast startup with solid green
For manual flight modes: Solid white in front, red in rear
For automatic flight modes: Breathing white in front, red in rear
Loss of RC: Alternating red/black in front and rear

merge with fast green
2015-03-06 17:26:45 +09:00
Jonathan Challinger
e2383581cc AC_AttitudeControl: relax_bf_rate_controller resets rate integrators 2015-03-06 14:02:57 +09:00
Leonard Hall
3ad9b1a06b AP_MotorsMatrix: remove incorrect throttle limit flag 2015-03-06 14:02:55 +09:00
Leonard Hall
20de383084 AC_AttControl: accel limiting for angular control only if feed forward enabled 2015-03-06 14:02:52 +09:00
Jonathan Challinger
d148039f65 AP_Motors: stricter batt_voltage misconfiguration check 2015-03-06 14:02:49 +09:00
Leonard Hall
7de5bccc93 AC_PosControl: remove THR_HOVER parameter
Parameter is set by main code so no need to store to eeprom
2015-03-06 14:02:46 +09:00
Leonard Hall
9866eaded1 AC_PosControl: rename p_alt_pos to p_pos_z
Also pid_alt_accel to pid_accel_z
2015-03-06 14:02:44 +09:00
Leonard Hall
349f1aeceb AC_PosControl: use 2-axis PI controller 2015-03-06 14:02:42 +09:00
Leonard Hall
8d4f0ec80c AC_PosControl: integrate PID input filter 2015-03-06 14:02:39 +09:00
Randy Mackay
e4d48fdc92 AC_AttControlHeli: separate accel max for roll, pitch
renamed _accel_y_max to _accel_yaw_max
2015-03-06 14:02:36 +09:00
Leonard Hall
51455af51a AC_AttConHeli: integrate PID input filter 2015-03-06 14:02:35 +09:00
Leonard Hall
792b2a2eb3 AC_AttControl: separate accel max for roll, pitch, yaw
Also add:
Rate filters
rename rate filter defines
d-term only filter for roll, pitch rate control
accessors to save max accel for roll, pitch, yaw
fix for duplicate ACCEL_Y_MAX param
2015-03-06 14:02:33 +09:00
Leonard Hall
9833c91b2b AC_AttControl: get_max_rate_step_bf_roll, pitch and yaw 2015-03-06 14:02:30 +09:00
Leonard Hall
f00025e5c9 AC_AttControl: accessor for rate feedforward 2015-03-06 14:02:27 +09:00
Leonard Hall
691fb8947e AC_AttControl: accessor for rate_bf_targets 2015-03-06 14:02:25 +09:00
Leonard Hall
784a4ce51a AC_AttControl: increase max angle overshoot to 30deg 2015-03-06 14:02:23 +09:00
Leonard Hall
eb084f7c58 AC_AttControl: bf yaw control uses input filtered PID 2015-03-06 14:02:21 +09:00
Leonard Hall
11a19803e0 Motors: add accessors for motor logging
accessor include get_roll, get_pitch, get_yaw, throttle input
2015-03-06 14:01:58 +09:00
Leonard Hall
34a5bc8b33 AC_PI_2D: 2-axis PI controller 2015-03-06 14:01:56 +09:00
Leonard Hall
046949ea8a AC_HELI_PID: add input filter and restructure
Also removed unused initial_ff from construtor
2015-03-06 14:01:54 +09:00
Leonard Hall
517448e536 AC_PID: add input filtering and restructure 2015-03-06 14:01:52 +09:00
Andrew Tridgell
2aae594371 GCS_MAVLink: handle serial loopback in routing 2015-03-04 20:24:11 +11:00
Andrew Tridgell
086f878bdc HAL_PX4: split IO thread into separate IO and storage threads
this prevents a blocked microSD card from blocking IO to the FRAM,
causing parameter changes not to be sticky
2015-03-04 20:18:17 +11:00
Andrew Tridgell
58c92b0158 GCS_MAVLink: added SCALED_IMU3 logging 2015-03-04 19:30:08 +11:00
Andrew Tridgell
79be500e04 GCS_MAVLink: re-generate headers 2015-03-04 19:29:28 +11:00
Andrew Tridgell
eeacbe518b GCS_MAVLink: update from upstream XML 2015-03-04 19:21:24 +11:00
Randy Mackay
f5f7cd540f Motors: fix example sketches 2015-03-03 21:39:24 +09:00
Leonard Hall
cf8c211c35 Motors: fix thrust curve and add constraint 2015-03-03 15:49:07 +09:00
Leonard Hall
3e960dfc3b Motors: add get_voltage_comp_gain
This clarifies that lift_max is the inverse of the battery voltage gain
compensation
2015-03-03 15:49:04 +09:00
Leonard Hall
997c6f0868 Motors: move battery resistance calcs to parent
Moving from MotorsMatrix to parent Motors class allows these to be used
from other frame types
Also initialise battery resistance
2015-03-03 15:49:02 +09:00
Randy Mackay
09d7cdbc23 Motors: batt_voltage_filt becomes filter object 2015-03-03 15:49:00 +09:00
Randy Mackay
4b78b2ce80 Filter: add get method to LowPassFilter 2015-03-03 15:48:58 +09:00
Leonard Hall
529c6fed3a Motors: move over current throttle limiting to parent
Moving from MotorsMatrix to parent Motors class allows this to be used
from other frame types
2015-03-03 15:48:54 +09:00
Randy Mackay
812473fd9a MotorsMatrix: use get_hover_throttle_as_pwm 2015-03-03 15:48:52 +09:00
Randy Mackay
1a9d3125ef Motors: _hover_out to pct * 10 instead of pwm 2015-03-03 15:48:50 +09:00
Leonard Hall
6b7bdf64bd Motors: move batt voltage lift_max calcs to parent
Moving from MotorsMatrix to parent Motors class allows them to be used
by other frame types
Also added sanity check of batt_voltage_min
2015-03-03 15:48:48 +09:00
Randy Mackay
c549b58eb7 MotorsMatrix: remove check of throttle_curve_enabled 2015-03-03 15:48:46 +09:00
Randy Mackay
5fb3de48ee MotorsTri, Single, Coax: use new thrust curve 2015-03-03 15:48:44 +09:00
Randy Mackay
2eaa4a8445 Motors: remove old throttle curve 2015-03-03 15:48:42 +09:00
Leonard Hall
751dbb7df7 Motors: move thrust curve and volt scaling to parent
Moving from MotorsMatrix to Motors allows it to be used from other frames
2015-03-03 15:48:41 +09:00
Randy Mackay
80b498f598 Motors: add loop_rate to test sketch 2015-03-03 15:48:39 +09:00
Randy Mackay
7ab76dbd0e Motors: add loop_rate to constructor for all frames 2015-03-03 15:48:34 +09:00
Randy Mackay
77d4b3a2ae Motors: add loop_rate to constructor 2015-03-03 15:48:32 +09:00
Leonard Hall
ec9d7dd99e Motors: minor comment fixes 2015-03-03 15:48:30 +09:00
Leonard Hall
1d0ee68116 Motors: over current throttle limiting 2015-03-03 15:48:28 +09:00
Randy Mackay
1217ab9579 BattMon: add get_type method 2015-03-03 15:48:24 +09:00
Randy Mackay
f6523c0997 Motors: Add THR_LOW_CMP to adjust low throttle inputs affect on attitude control 2015-03-03 15:48:21 +09:00
Leonard Hall
83e3e2fec2 Motors: thrust curve and voltage scaling for matrix supported frames 2015-03-03 15:48:19 +09:00
Leonard Hall
5b0bd49ff2 Motors: configurable yaw headroom for matrix frames 2015-03-03 15:48:15 +09:00
Randy Mackay
51213235b4 OreoLED_PX4: available only on PX4 2015-03-02 16:58:17 +09:00
Randy Mackay
f1ce70e748 Notify: disable oreoled by default 2015-03-02 16:58:14 +09:00
Randy Mackay
89cd74c35f Notify: OreoLED supports handle_led_control
includes support for send bytes ioctl
2015-03-02 16:58:12 +09:00
Randy Mackay
90cac02bd7 Notify: OreoLED fix to fade-in when armed 2015-03-02 16:58:10 +09:00
Randy Mackay
35a3a52f29 Notify: add support for handle_led_control 2015-03-02 16:58:06 +09:00
Randy Mackay
9159c7107d GCS_MAVLink: version update after LED_CONTROL added 2015-03-02 16:58:03 +09:00
Randy Mackay
26d54398e2 GCS_MAVlink: generate after LED_CONTROL added 2015-03-02 16:58:01 +09:00
Randy Mackay
3fdabb3667 GCS_MAVlink: define LED_CONTROL in ardupilotmega.xml 2015-03-02 16:57:59 +09:00
Randy Mackay
b8ef765b3e Notify: add OreoLED to PX4 2015-03-02 16:57:56 +09:00
Randy Mackay
0a33a7c15a Notify: OreoLED_PX4 driver 2015-03-02 16:57:50 +09:00
Jonathan Challinger
e9bbe062f3 AC_PosControl: modify accel_to_lean_angles to apply filters before yaw rotation 2015-02-24 16:41:03 +09:00
Andrew Tridgell
1f417dce86 AP_SerialManager: added note on external converter requirement for Frsky
thanks to Luis for the suggestion
2015-02-24 10:19:42 +11:00
Andrew Tridgell
a6d76b4e03 AP_RangeFinder: added PX4-PWM rangefinder
uses PWM input driver to read a rangefinder
2015-02-23 14:15:14 +11:00
Randy Mackay
b650d39786 InertialSensor: remove product_id set to zero 2015-02-21 09:14:33 +09:00
Jonathan Challinger
7b0e806db1 AP_Mount: correct status_msg to conform to MAVLink specification 2015-02-21 08:33:50 +09:00
Andrew Tridgell
3a51bac0d0 AP_Arming: use new enum for home_is_set 2015-02-21 10:13:43 +11:00
Andrew Tridgell
a53395cdb8 AP_Common: added HomeState enum from copter 2015-02-21 10:13:17 +11:00
Andrew Tridgell
6781a8d329 AP_AHRS: fixed get_position for EKF to use correct relative altitude
we need to use the EKF relative height plus the current AHRS home
2015-02-21 10:12:53 +11:00
Andrew Tridgell
869fb23062 HAL_SITL: implement SIM_GPSDRIFTALT 2015-02-21 08:33:01 +11:00
Andrew Tridgell
63c792bc1c SITL: added SIM_GPSDRIFTALT simulation control 2015-02-21 08:32:49 +11:00
Randy Mackay
73e00108e4 Mount: SToRM32 remove unnecessary include 2015-02-20 11:27:15 +09:00
Randy Mackay
23f0bab5d6 Mount: integrate SToRM32 backend 2015-02-20 11:05:40 +09:00
Randy Mackay
92c7949355 Mount: SToRM32 mount backend 2015-02-20 11:05:31 +09:00
Andrew Tridgell
b21c00fcf9 AP_L1_Control: changed default L1 tuning to 20
this is more appropriate for most aircraft
2015-02-19 16:19:33 +11:00
Andrew Tridgell
ec70042d25 APM_Control: raise default IMAX to 3000
on the first flight users often need more I gain to overcome poor
choices for the P gain
2015-02-19 16:15:33 +11:00
Andrew Tridgell
6959cdbf15 RC_Channel: fixed usage of _reverse to be consistent
users could set RCn_REV to 0 and get very confusing results
2015-02-18 12:47:56 +11:00
Andrew Tridgell
26ac29840c AP_Common: added UNUSED_FUNCTION macro
useful for functions that are only in some builds
2015-02-18 11:12:43 +11:00
Andrew Tridgell
50a11c7d5a AP_Mount: added an alternative tilt-only gimbal control method
this adds some nice control characteristics based on work by Paul and
Arthur, but is tilt only
2015-02-16 16:48:55 +11:00
Andrew Tridgell
9b2d44d6ed AP_InertialSensor: use delay_microseconds_boost()
this gives much more consistent timing for PX4
2015-02-16 12:19:13 +11:00
Andrew Tridgell
18131eae13 HAL_PX4: added delay_microseconds_boost()
implemented using hrt callback with sem_post wrapper
2015-02-16 12:19:13 +11:00
Andrew Tridgell
c63540f7b1 AP_HAL: added delay_microseconds_boost()
this will be used by wait_for_sample() to boost priority for a short
period at the end of each delay_microseconds()
2015-02-16 11:52:37 +11:00
Andrew Tridgell
f54d799bff AP_InertialSensor: added TIMING_DEBUG code for finding loop timing issues 2015-02-16 10:12:10 +11:00
Randy Mackay
8e75c9580c InertialNav: get_origin returns zero when no origin
If the EKF has not yet set the origin return location of all zeros
instead of uninitialised location
2015-02-15 11:17:37 +09:00
Andrew Tridgell
04bef5ccf3 AP_InertialSensor: don't skip delay if we are a bit early
this produces a bit more even timing
2015-02-14 12:25:44 +11:00
Andrew Tridgell
619196b6b3 HAL_PX4: fixes for new PX4 device paths 2015-02-14 12:25:44 +11:00
Andrew Tridgell
38d63d51a5 AP_RangeFinder: change for new PX4 device paths 2015-02-14 12:25:44 +11:00
Andrew Tridgell
995311f807 AP_OpticalFlow: change for new PX4 device paths 2015-02-14 12:25:44 +11:00
Andrew Tridgell
9f7e20090c AP_Notify: change for new PX4 device paths 2015-02-14 12:25:43 +11:00
Andrew Tridgell
4537acb898 AP_InertialSensor: change for new PX4 device paths 2015-02-14 12:25:43 +11:00
Andrew Tridgell
99ed508903 AP_Compass: change for new PX4 paths 2015-02-14 12:25:43 +11:00
Andrew Tridgell
beeb9173ea AP_Baro: change for new PX4 paths 2015-02-14 12:25:43 +11:00
Andrew Tridgell
26a77dc502 AP_Airspeed: change for new PX4 paths 2015-02-14 12:25:43 +11:00
Andrew Tridgell
001643d5a3 HAL_PX4: always use the hrt semaphore based delay
the up_udelay() could cause too much timing jitter
2015-02-14 12:25:43 +11:00
Andrew Tridgell
7f0060b881 HAL_PX4: reduce the amount of time between loop() calls
500usec is too long for 400Hz copter
2015-02-14 12:25:43 +11:00
myly10
7bb079b348 AP_Parachute.cpp: Typo correction. 2015-02-13 16:16:10 +09:00
Staroselskii Georgii
75cd41a7c1 AP_HAL_Linux: added NavioAnalogIn 2015-02-12 12:57:45 +11:00
Staroselskii Georgii
b5aef01f72 AP_ADC: added ADS1115 support 2015-02-12 12:57:45 +11:00
Staroselskii Georgii
195aa5fc6b AP_HAL_Linux: take the semaphore in SPIUARTDriver for shorter periods of time 2015-02-12 12:52:56 +11:00
Staroselskii Georgii
64da7f0360 AP_HAL_Linux: fix macro that defines number of I/O callbacks 2015-02-12 12:52:56 +11:00
Staroselskii Georgii
5b21bd2f1d AP_HAL_Linux: make Ublox transactions shorter 2015-02-12 12:52:56 +11:00
Staroselskii Georgii
4034004194 AP_HAL_Linux: switch NavIO to kernel CS handling 2015-02-12 12:52:56 +11:00
Paul Riseborough
9f552eaa4b AP_NavEKF: Fix bug that resets position to origin when vehicle arms 2015-02-12 12:40:55 +11:00
Paul Riseborough
b8d3da3846 AP_NavEKF: Report last known position when vehicle is disarmed 2015-02-12 12:40:55 +11:00
Andrew Tridgell
4aa8a012de GCS_MAVLink: re-generate headers (updated stdint.h usage) 2015-02-12 09:13:17 +11:00
Andrew Tridgell
991afa9999 GCS_MAVLink: re-generate headers 2015-02-12 09:03:34 +11:00
Andrew Tridgell
7a6d91035e GCS_MAVLink: merge upstream changes 2015-02-12 09:03:22 +11:00
Andrew Tridgell
55041c7a7a AP_NavEKF: prevent division by zero in SmallEKF 2015-02-12 09:02:59 +11:00
Andrew Tridgell
db9c8548a5 HAL_VRBrain: call parent Util constructor 2015-02-11 20:57:28 +11:00
Andrew Tridgell
ebacb2b496 HAL_PX4: call parent Util constructor 2015-02-11 20:57:28 +11:00
Jonathan Challinger
59cf1c29ff AP_HAL_VRBRAIN: attempt to initialize USB while soft-disarmed 2015-02-11 20:57:28 +11:00
Jonathan Challinger
e908fcafb1 AP_HAL_PX4: attempt to initialize USB while soft-disarmed 2015-02-11 20:57:27 +11:00
Jonathan Challinger
50466848f7 AP_NavEKF: use hal.util soft_armed state 2015-02-11 20:25:11 +11:00
Jonathan Challinger
180c85817d AP_AHRS: remove armed state, use hal.util soft_armed state 2015-02-11 20:25:11 +11:00
Jonathan Challinger
aa7776ea59 AP_HAL: add soft_armed state to hal.util 2015-02-11 20:25:10 +11:00
Andrew Tridgell
fdcd5ca1a1 GCS_MAVLink: re-generate headers 2015-02-11 20:14:08 +11:00
Andrew Tridgell
b227f8463f GCS_MAVLink: merge upstream mavlink changes 2015-02-11 20:13:27 +11:00
Andrew Tridgell
8cfe8c5823 GCS_MAVLink: moved send_autopilot_version() to common code 2015-02-11 19:50:40 +11:00
Andrew Tridgell
8e35baaef8 GCS_MAVLink: re-generate headers 2015-02-11 19:13:31 +11:00
Jonathan Challinger
0d1f0f4eb0 GCS_MAVLink: add AUTOPILOT_VERSION_REQUEST 2015-02-11 19:11:30 +11:00