James Cotton
d2842169ee
Sensors: Need to support MPU6000 for revision 3
2012-09-26 04:04:48 -05:00
James Cotton
88b483f37d
PIOS_MPU6000: Make the driver perform the rotation to bring it into the OP
...
coordinate system
Previously there were hacks spread throughout to deal with various ways of
positioning the chips. Now the driver structure specifies the rotation
of the chip relative to the board layout and the output X/Y/Z are already
in OP convention.
This flag seems to do the right thing for Revolution, CC3D, and RevoMini
2012-09-11 01:46:22 -05:00
James Cotton
daad1d6f8f
Sensors: Scope some variables to suppress warnings
2012-08-25 17:12:37 -05:00
James Cotton
c5fda8208b
TOFIX: For now hardcode a reversed orientation of MPU6000 for RevoMini
2012-08-25 14:41:03 -05:00
James Cotton
0decce582b
Got all the sensors reading
2012-08-25 14:19:15 -05:00
James Cotton
221ae05ef6
Perform the update every cycle. Mag rate of 0.001 seems to work well.
2012-07-27 13:20:30 -05:00
James Cotton
abb0caa6bd
Try a different mag nulling algorithm.
2012-07-27 13:14:18 -05:00
James Cotton
880d58e4d9
Changes to mag nulling from D-Lite. Perform update only when we have a new
...
vector sufficiently different from the previous one.
2012-07-26 20:38:16 -05:00
James Cotton
c587ceebfd
Make the mag offset nulling convergence rate come from the UAVO. When it is
...
set to zero nulling does not occur to allow us to still calibrate the sensors.
2012-07-25 11:23:27 -05:00
James Cotton
3b57b492d0
Mag bias tracking seems to work
2012-07-25 11:19:39 -05:00
James Cotton
1a5af9dafb
Remove some old debugging code
2012-07-25 11:10:10 -05:00
James Cotton
d1e6dcc2f0
First pass implementation of William Premerlani's magnetometer bias correction
2012-07-25 11:07:40 -05:00
James Cotton
5649813c2b
Make sure to always compare BiasCorrectedRaw against its enum. Also reversed
...
the order of TRUE,FALSE in the definition to make it safer anyway.
2012-07-21 17:24:58 -05:00
James Cotton
d36663dbbd
Treat the GyroBias UAVO like a state estimate of the actual gyro bias so now we
...
subtract that from the raw sensor readings to get the Gyros UAVO value
2012-07-21 15:14:45 -05:00
James Cotton
7cdf47c1d4
Make the sensors code only apply the GyroBias from the UAVO which is now coming
...
consistently only from the attitude module
2012-07-21 13:51:20 -05:00
James Cotton
70606a46a1
Include initial gyro bias calibration into the level calibration of revo like
...
it is with CC.
2012-06-13 23:07:23 -05:00
James Cotton
9c1fa2dfc6
Revert "Get mag before gyros so that when gyro chip is acting up we still see mag data."
...
This reverts commit d2a3e39bbf
.
2012-06-12 13:10:24 -05:00
James Cotton
d2a3e39bbf
Get mag before gyros so that when gyro chip is acting up we still see mag data.
...
Helpful for board diagnostics.
2012-06-09 11:06:41 -05:00
James Cotton
836e34a483
Change revo sensors to update at 500 Hz and make sure in all cases it waits for
...
the relevant queue to provide data. Also disable the quaternion stabilization
flag.
2012-05-12 13:12:56 -05:00
James Cotton
6c0dc80978
Shuffle more stack sizes around
2012-05-05 11:33:47 -05:00
James Cotton
b0ef456ccb
Kickstart MPU6000 if there is no data
2012-04-13 20:29:41 -05:00
James Cotton
a0d1b00ade
Cover an edge condition for the MPU6000 IRQ not firing
2012-04-13 19:37:30 -05:00
James Cotton
e82323af32
Make revolution work with the FreeRTOS queue based MPU6000 driver
2012-04-03 03:41:52 -05:00
Corvus Corax
0742c88a98
enabled optional rtation of Revolution board
2012-03-26 05:25:52 +02:00
Corvus Corax
d32dd0ccd4
Fixed fmod() versus fmodf() usage in flight/...
2012-03-26 04:16:54 +02:00
James Cotton
2f8049e20a
Update the bootloader hw version for the mpu6000 board and make the sensor code
...
and initialization respond appropriately. Enable hte L3GD20 and BMA180.
Let the board type determine which is used.
2012-03-22 00:41:37 -05:00
James Cotton
a77a859e5c
Using some config switches to get this board up and running
2012-03-21 00:48:31 -05:00
James Cotton
7961aba83c
Clean up a few more compiler warnings
...
Conflicts:
flight/PiOS/Common/pios_ms5611.c
2012-03-03 13:32:56 -06:00
James Cotton
91a226fc12
Sometimes the mag stops updating so kickstart it
2012-03-03 13:31:46 -06:00
James Cotton
a778c45d6f
For L3GD20 sensor task run at the sensor speed
2012-01-28 10:11:30 -06:00
James Cotton
13447ac907
Fix the MPU6000 implementation
2012-01-28 00:21:58 -06:00
James Cotton
b4435d0b35
For L3GD20 sensor task on revo update gyro once per physical sample
2012-01-26 23:29:12 -06:00
James Cotton
e4df3202e0
L3GD20: Update sensor task for revo to use the new queue
2012-01-25 22:50:19 -06:00
James Cotton
205aabe895
L3GD20: Make this sensor push data onto a FreeRTOS queue so that the sensor
...
reading task can block according. Also now the gyro data is sent to
stabilization multiple times per update of the attitude loop.
2012-01-25 01:20:07 -06:00
James Cotton
f8e59443b8
If the BMA180 isn't read when an IRQ fires (because the flash chip has claimed
...
the bus) then it won't fire another interrupt until read. For now this is
dealt with in the sensor loop by forcing a read when the fifo is empty.
2012-01-21 10:13:46 -06:00
James Cotton
6d72678086
Add timeout in the sensor task for reading sensors to stop the watchdog firing.
...
All sensors should later be converted to use FreeRTOS queues.
2012-01-21 08:32:41 -06:00
James Cotton
ce2d0fcbb1
L3GD20 data now running through IRQ -> FIFO
2012-01-17 19:36:32 -06:00
James Cotton
35025303cd
Getting data from gyro.
2012-01-17 19:29:38 -06:00
James Cotton
cc47520baa
Checking ID on ST gyro works
2012-01-04 23:23:42 -06:00
James Cotton
0fbcf7723d
Code to disable all gyros. All modules now running.
2012-01-04 22:37:15 -06:00
James Cotton
0cc18e7dcf
Add files for new L3DG20 sensor
2012-01-04 20:33:54 -06:00
James Cotton
25dfb5463e
Add option to switch to using the MPU6000 accel instead of BMA180. Disabled by
...
default.
2011-12-29 02:08:13 -06:00
James Cotton
bf98630851
Add streaming the sensor data out of the serial port
2011-12-26 17:52:45 -06:00
James Cotton
9bf06bbd3e
Force the loading of the sensor gains and biases at the beginning
2011-12-24 16:14:28 -06:00
James Cotton
1092ac3184
Use the scale and bias terms for hte mag and accel
2011-12-24 15:58:12 -06:00
James Cotton
dd89d232ba
Add a magnetometer bias term although currently hardcoded to my board
2011-12-15 00:57:19 -06:00
James Cotton
2240ad924a
Fix the orientation of the magnetometer
2011-12-15 00:46:43 -06:00
James Cotton
9148bb2c65
Make sure the sensors module grabs the sesor biases initially.
2011-12-14 10:38:43 -06:00
James Cotton
a37a17a4fb
Created a separate Sensor module and Attitude module for revolution
2011-12-12 21:40:39 -06:00