Andrew Tridgell
0f4da25e68
AP_Scheduler: make sure we run remaining tasks on overrun
...
when a task overruns its time, we can still run the rest of the tasks
in the task list
2013-10-13 21:41:01 +11:00
Andrew Tridgell
a5788dde8f
HAL_AVR: added Scheduler.set_timer_speed() support
2013-10-13 11:03:37 +09:00
Andrew Tridgell
7ef187fcfd
AP_HAL: added optional set_timer_speed() scheduler API
...
will be used by copter to reduce interrupt load on APM2
2013-10-13 11:03:35 +09:00
Andrew Tridgell
4de2a654ab
AP_Mount: changed ahrs to be a const reference
...
saves a bit of code
2013-10-13 11:03:24 +09:00
Andrew Tridgell
34770fe6bf
HAL_AVR: fixed SPI bus speed switching
...
this fixes a bug in changing the bus speed between devices
2013-10-13 11:03:17 +09:00
Randy Mackay
f2f61af125
HAL_AVR: scheduler interrupt 500hz for APM2
2013-10-13 11:03:13 +09:00
Andrew Tridgell
9833900f91
AP_InertialSensor: run MPU6000 sensor register reads at 8MHz
...
run other register IO at 500kHz
2013-10-13 11:03:08 +09:00
Andrew Tridgell
04836ea763
HAL_AVR: set initial bus speed on MPU6k to 500kHz, then change to 8MHz
...
this should allow us to work even with older chips. See the MPU6000
product specification, which says max 20MHz for sensor and interrupt
regs, and max 1MHz for all other regs
2013-10-13 11:03:06 +09:00
Andrew Tridgell
5ccf8409b4
AP_HAL: added an optional spi.set_bus_speed() API
...
this will be used by MPU6000 on APM2 to change speed after init
2013-10-13 11:03:04 +09:00
Andrew Tridgell
4dc2f4bd58
HAL_AVR: spi3 at 8mhz for mpu6k and ms5611
2013-10-13 11:03:02 +09:00
John Arne Birkeland
f6038f36bf
HAL_AVR: Improved AVRTimer micros() and millis()
...
- More efficient code by using 16-bit timer
- micros() now has proper 1 us resolution and less overhead
- millis() has less overhead
- removed unneeded/unwanted initializatin of timers in AVRTimer::init()
2013-10-13 11:03:00 +09:00
Andrew Tridgell
5ba34b38c1
HAL_AVR: added specialised transfer functions for MPU6k and APM1 ADC
...
this saves quite a lot of time in interrupts
2013-10-13 11:02:57 +09:00
Andrew Tridgell
d60a68fd9c
AP_Baro: check baro at exactly 100Hz
...
prevent waits for samples
2013-10-13 11:02:53 +09:00
Randy Mackay
499bc52c5b
Perfmon: fixes to work with HAL
2013-10-13 11:02:49 +09:00
Andrew Tridgell
e34cc6dd9a
HAL_PX4: added some UART debugging
...
this may help to track down USB issues
2013-10-13 12:43:25 +11:00
Andrew Tridgell
55ba536331
HAL_SITL: fixed a warning
2013-10-12 13:13:00 +11:00
Andrew Tridgell
84336bc74e
AP_TECS: added initial flight_stage handling
2013-10-12 13:12:43 +11:00
Andrew Tridgell
2b80df6319
AP_SpdHgtControl: added FightStage parameter to update_pitch_throttle()
...
will be used for special landing handling
2013-10-12 13:12:16 +11:00
Andrew Tridgell
0f0b040891
AP_Camera: added set_trigger_distance() call
2013-10-11 21:37:27 +11:00
Andrew Tridgell
1c7a44a595
GCS_MAVLink: regenerate mavlink headers
2013-10-11 21:37:27 +11:00
Andrew Tridgell
8198bfe756
MAVLink: added MAV_CMD_DO_SET_CAM_TRIGG_DIST
2013-10-11 21:36:50 +11:00
Andrew Tridgell
63bee0b2d8
HAL_PX4: disable checks for in_timerprocess
...
these are not valid in this form for the way the timer thread works on
PX4.
2013-10-11 16:06:35 +11:00
Andrew Tridgell
25d3e5b7e9
AP_GPS: changed fake GPS fix to have a latitude/longitude
...
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2013-10-11 16:06:35 +11:00
Andrew Tridgell
ae1fd4baa4
HAL_AVR: reduce the latency of semaphore waits
...
this reduces the average cost of waiting for the MPU6000 semaphore
from the main loop
2013-10-10 15:41:51 +11:00
Andrew Tridgell
cfa1b5353f
AP_Scheduler: show slips only for SCHED_DEBUG>1
...
this allows us to see PERF reports in copter without console writes
slowing things down
2013-10-10 15:41:34 +11:00
Andrew Tridgell
dd4b9275fd
AP_Scheduler: improved the accuracy of the scheduling code
...
prevent accumulated micros() errors in run()
2013-10-10 14:14:39 +11:00
Randy Mackay
1a070e61f0
BattMon: amp-per-volt reduced to 17 (was 18.002)
2013-10-10 11:14:01 +09:00
Andrew Tridgell
eb0176d509
GCS_Console: don't build this example
...
it doesn't build any more
2013-10-10 09:54:20 +11:00
Andrew Tridgell
b3af59cc0c
AP_InertialSensor: don't build L3G4200D example
2013-10-10 09:54:20 +11:00
Andrew Tridgell
fc7f3c8aa6
AP_HAL: fixed example build
2013-10-10 09:54:20 +11:00
Andrew Tridgell
a04c056598
AP_InertialSensor: remove unused get_last_sample_time_micros()
2013-10-10 09:54:19 +11:00
Craig3DRobotics
e5501bf911
AP_BattMonitor: Updated parameter descriptions
2013-10-09 15:33:03 -07:00
Andrew Tridgell
cd65e2109d
AP_BattMonitor: fixed type in docs
2013-10-10 07:22:05 +11:00
Andrew Tridgell
0d682e74c1
HAL_Linux: run threads a bit more slowly
...
this was just wasting cycles
2013-10-10 07:21:38 +11:00
Andrew Tridgell
8f79a03c25
HAL_Linux: use larger UART buffers
...
might as well use the memory
2013-10-10 07:21:38 +11:00
Randy Mackay
13cf7c96cd
GPSGlitch: parameters for accel and always-ok-radius
2013-10-09 13:02:14 +09:00
Andrew Tridgell
5d685385eb
AP_InertialSensor: use gyro sample count on L3G4200D
...
this gives more even timing in ArduCopter
2013-10-08 19:20:34 +11:00
Andrew Tridgell
6444b0bddd
AP_InertialSensor_L3G4200D: a sample is only available if gyro had a sample
2013-10-08 19:20:34 +11:00
Andrew Tridgell
e5e4cdee18
AP_InertialSensor: added wait_for_sample() API call
...
this waits for a new INS sample to arrive, using whatever method is
most efficient on each INS type
2013-10-08 17:31:15 +11:00
Andrew Tridgell
67db1cedaa
HAL_PX4: fixed delay_microseconds() on PX4
...
we could underflow and delay a very long time!
2013-10-08 17:31:15 +11:00
Andrew Tridgell
f59d0099a4
AP_Notify: fixed RGBLED on PX4 with latest PX4Firmware
...
now needs a RGBLED_MODE_ON
2013-10-08 14:55:10 +11:00
Randy Mackay
9aea577eb1
BattMonitor: correct default pins for PX4
2013-10-08 10:28:48 +09:00
Andrew Tridgell
c17a5e5ed1
AP_InertialSensor: added a small delay in accel calibration
...
allows threads to run on Linux
2013-10-08 11:50:54 +11:00
Andrew Tridgell
1ccd6bb7ef
AP_Compass: don't wait more than 1ms for compass sample
...
this prevents 5ms delays in compass accumulate
2013-10-08 11:50:54 +11:00
Andrew Tridgell
28b4ae1c3a
HAL_Linux: improved latency of timed semaphores
2013-10-08 11:50:54 +11:00
Andrew Tridgell
6fa55d101f
AP_Baro: fixed I2C semaphore handling for BMP085 driver
2013-10-08 11:50:54 +11:00
Andrew Tridgell
f286369990
AP_Compass: fixed orientation on Linux
2013-10-08 11:50:54 +11:00
Andrew Tridgell
83c942a512
AP_Compass: prevent NULL deref on enable mag while running
2013-10-08 11:50:53 +11:00
Andrew Tridgell
77e8061170
AP_Common: added product ID for L3G4200D
2013-10-08 11:50:53 +11:00
Andrew Tridgell
a216e1d239
HAL_Linux: don't prevent write while timer is busy
...
the timer can block on I2C writes, which causes the main loop to run
2013-10-08 11:50:53 +11:00