Commit Graph

13646 Commits

Author SHA1 Message Date
Andrew Tridgell 024d3b71e7 HAL_Linux: use a semaphore in suspend_timer_procs()
this is the start of multi-core aware code
2014-08-22 21:13:11 +10:00
Andrew Tridgell dcdb53584b AP_InertialSensor: use lockless structures in MPU9250 driver
this avoids suspending timers when transferring data between main
thread and SPI read thread
2014-08-22 21:13:11 +10:00
Andrew Tridgell 7343de2893 AP_Notify: avoid suspend_timer_procs() by using atomic updates in ToshibaLED_PX4 2014-08-22 21:13:11 +10:00
Randy Mackay 7d350735df TradHeli: update AttControlHeli constructor
reference to rc_1, rc2 are replaced with constant updates during
acro_run
2014-08-22 16:29:02 +09:00
Randy Mackay 2cd6d986d5 TradHeli: call passthrough_bf_roll_pitch_rate_yaw 2014-08-22 16:29:00 +09:00
Randy Mackay 691a3d8126 AC_AttControlHeli: add passthrough_bf_roll_pitch_rate_yaw 2014-08-22 16:28:57 +09:00
Robert Lefebvre 968f1d64ae Logging: Fix comment error. 2014-08-22 16:28:54 +09:00
Robert Lefebvre a4f710a363 TradHeli: Add yaw-only rate request function for flybar acro mode. 2014-08-22 16:28:52 +09:00
Robert Lefebvre 3316fe8f63 TradHeli: Reset flybar passthrough to false when exiting Acro mode. 2014-08-22 16:28:50 +09:00
Robert Lefebvre f5ddaab35b TradHeli: Set Flybar passthrough mode in Acro Initialization function. 2014-08-22 16:28:47 +09:00
Robert Lefebvre 7d3e22af59 AC_AttitudeControl_Heli: Add use_flybar_passthrough accessor function. 2014-08-22 16:28:45 +09:00
Robert Lefebvre 9b1d9e3cf0 AC_AttitudeControl_Heli: Add passthrough_to_motor_roll_pitch function. 2014-08-22 16:28:42 +09:00
Robert Lefebvre 82061bc65d TradHeli: Add pointer for pilot roll/pitch inputs to attitude_control constructor. To be used for flybar passthrough. 2014-08-22 16:28:40 +09:00
Robert Lefebvre 5c04af6d20 AC_AttitudeControl_Heli: Create Flybar Passthrough flag which will be used for control pass-through. 2014-08-22 16:28:38 +09:00
Craig Elder 0ab3e40e92 Frame Parameters: Updated Mode Switch order 2014-08-21 13:34:42 -07:00
Randy Mackay 2abb13e480 Git: ignore Build.AntennaTracker 2014-08-20 14:40:18 +09:00
Randy Mackay c87283af98 Copter: remove inav check
the EKF check works reliably but attempts to check the inertial nav for
errors has not been successful.  I could not find a way to reliably
catch flyaways without also introducing false positives (and thus
unwanted LANDings)
2014-08-20 14:39:56 +09:00
Andrew Tridgell 43e8b36e5b AP_RangeFinder: removed use of hrt_absolute_time() 2014-08-20 09:10:25 +10:00
Andrew Tridgell 5c9e5fbc11 AP_InertialSensor: removed use of hrt_absolute_time() 2014-08-20 09:10:24 +10:00
Andrew Tridgell e143acd8bf HAL_VRBRAIN: minimise use of hrt_absolute_time() 2014-08-20 09:10:24 +10:00
Andrew Tridgell 48247b6adc HAL_PX4: minimise usage of hrt_absolute_time() 2014-08-20 09:10:24 +10:00
Andrew Tridgell 9f6d1f987b AP_Compass: removed use of hrt_absolute_time() 2014-08-20 08:41:28 +10:00
Andrew Tridgell 5280d8936d AP_Baro: remove usage of hrt_absolute_time()
use a single time base in all code
2014-08-20 08:41:15 +10:00
Andrew Tridgell a14f8dbd0a AP_InertialSensor_MPU9250: use micros64() and millis64() 2014-08-20 08:02:34 +10:00
Andrew Tridgell 071323a736 HAL_VRBRAIN: added millis64() and micros64() 2014-08-20 08:01:44 +10:00
Andrew Tridgell 1241da466b HAL_PX4: added millis64() and micros64() 2014-08-20 08:01:06 +10:00
Andrew Tridgell ead82ee581 HAL_Linux: implement millis64() and micros64() 2014-08-20 08:00:21 +10:00
Andrew Tridgell 6450c84987 HAL_Empty: added dummy millis64() and micros64() 2014-08-20 07:59:21 +10:00
Andrew Tridgell 5a55101703 HAL_SITL: added millis64() and micros64() 2014-08-20 07:57:45 +10:00
Andrew Tridgell 7439d34a5d AP_HAL: add millis64() and micros64() on faster boards
this can be used for much simpler scheduling, without any wrap
handling
2014-08-20 07:55:19 +10:00
Andrew Tridgell d01fa3bfbd AP_Baro: prevent reading the MS5611 too fast
setup the timer start after we've started the conversion to prevent
reading faster than the MS5611 is able to produce values
2014-08-19 21:16:13 +10:00
Andrew Tridgell b9dc2335ee HAL_Linux: run timer thread at average 1kHz without drift
this avoids drift in the 1kHz timer, to avoid bias in the IMU
filtering
2014-08-19 20:03:34 +10:00
Andrew Tridgell 3c2ab31415 AP_InertialSensor: get rid of data_ready for MPU9250
when running off a 1kHz timer and reading at 1kHz it is better to
double sample than it is to skip a sample, as skipping samples will
throw the filter off, whereas a double sample will have minimal effect
2014-08-19 20:03:33 +10:00
Andrew Tridgell a627cd2af2 Copter: run Linux boards at 100Hz for now
we should be able to do 400Hz in future
2014-08-19 20:03:33 +10:00
Andrew Tridgell 9e01c657e5 AP_InertialSensor: update MPU9250 driver for 1kHz operation
use a time base sample wait, with 1kHz sampling
2014-08-19 20:03:33 +10:00
Andrew Tridgell 532e9aace4 AP_InertialSensor: fixed timer bug in HIL sensors 2014-08-19 20:03:33 +10:00
Andrew Tridgell 8f280d212b HAL_Linux: don't use usleep() in suspend_timer_procs()
usleep can cause a large delay with PREEMPT kernel
2014-08-19 20:03:33 +10:00
Andrew Tridgell 94e14f5dcb HAL_Linux: split off RCOutput class to be specific to PXF and ERLE
this fixes the Replay tool
2014-08-19 20:03:33 +10:00
Andrew Tridgell 2ce219aeb8 HAL_Linux: split RCInput class into generic and PRU implementations
this will make it easier for other boards (such as NAVIO) to implement
their own RCInput mechanism
2014-08-19 20:03:33 +10:00
Andrew Tridgell e629a8d67a Linux: added example startup script for plane 2014-08-19 20:03:33 +10:00
Randy Mackay a693907429 Copter: add ACRO_EXPO param values 2014-08-19 12:51:27 +09:00
Andrew Tridgell 12239de00d AP_InertialSensor: fix data_ready return for L3GD20 2014-08-19 10:14:20 +10:00
Andrew Tridgell 21ff578cb0 HAL_VRBrain: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell 0a20d0db60 HAL_PX4: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell b4be93113c HAL_Linux: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell 7286e7acd2 AP_InertialSensor: fixed build errors on APM2 2014-08-19 10:08:17 +10:00
Andrew Tridgell 15a7f63d7e Plane: set GPS non-blocking
the new GPS driver only ever needs a non-blocking port
2014-08-19 10:08:17 +10:00
Andrew Tridgell 90f306cd3c Copter: set GPS non-blocking
the new GPS driver only ever needs a non-blocking port
2014-08-19 10:08:17 +10:00
Andrew Tridgell 655db3c2d5 AntennaTracker: set GPS non-blocking
the new GPS driver only ever needs a non-blocking port
2014-08-19 10:08:17 +10:00
Andrew Tridgell 06c77c167e Rover: set GPS non-blocking
the new GPS driver only ever needs a non-blocking port
2014-08-19 10:08:17 +10:00