rmackay9
21d72bb49b
AP_InertialSensor: increase acceptable Z accel offset to be 3.0 G
...
Note: Z offsets do tend to be larger than x and y offsets
2012-11-23 00:34:42 +09:00
Andrew Tridgell
655446feec
INS: make it possible to do accel cal on a different serial port
2012-11-21 21:41:34 +11:00
Andrew Tridgell
3646b4b846
INS: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:31:23 +11:00
Andrew Tridgell
bbb2bbc721
INS: set the acceptable calibration error equal on all axes
2012-11-20 19:28:49 +11:00
Andrew Tridgell
b9fb683236
INS: show calibration values on failure
...
this will help debug bad calibrations
2012-11-20 19:28:15 +11:00
Andrew Tridgell
e2afc9ea18
INS: get check for send_msg the right way around!
...
I broke this in my previous commit
2012-11-20 19:10:30 +11:00
Andrew Tridgell
4174cfd4a7
INS: disable accel calibration on the 1280
...
this would put us well over 128k in sketch size
2012-11-20 18:41:04 +11:00
Andrew Tridgell
98a806fb90
INS: make calibrate_accel() return a bool
...
this will allow APM to auto set MANUAL_LEVEL to 1
2012-11-20 18:32:27 +11:00
Andrew Tridgell
2a70138ad1
INS: fixed raw accel offset for APM1
...
we now get reasonable offset values
2012-11-20 18:32:27 +11:00
Andrew Tridgell
f2744f8ff7
INS: use vector subtraction to make code clearer
2012-11-20 18:32:27 +11:00
rmackay9
317b719a62
AP_InertialSensor: correct typo to datasheet's filename
2012-11-20 00:37:42 +09:00
rmackay9
e2b1cb7e8d
AP_InertialSensor: changes after review with Tridge.
...
sanity checking added to accelerometer calibration routine.
user feedback is sent using gcs_send_text_fmt instead of Serial.printf.
moved ins parameters to new eeprom number to avoid conflicts with older parameters.
other small changes including renaming of functions and parameters.
2012-11-07 19:21:15 +09:00
rmackay9
e835cef181
AP_InertialSensor: merge in calibration features from IMU library
...
add gauss-newton method of accelerometer calibration
2012-11-07 19:20:27 +09:00
rmackay9
1cd4b08fac
AP_AHRS: added scheduler parameter to init
...
Required by the AP_AHRS_MPU6000 class which needs to disable timed processes that could interfere with it's communication with the mpu6000
2012-09-29 13:51:21 +09:00
rmackay9
4bca609b9f
AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
...
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
rmackay9
2fd9022f03
ArduCopter: bug fix to DMP initialisation (it was freezing due to SPI bus conflicts)
2012-09-28 18:34:23 +09:00
Andrew Tridgell
3306ba95a7
MPU6k: save 72 bytes of memory
...
the buffer can be on the stack
2012-09-18 13:58:50 +10:00
rmackay9
8624b0138e
AP_InertialSensor_Stub: added num_samples_available method to fix HIL build
2012-09-10 11:38:13 +09:00
rmackay9
d8142c2351
AP_InertialSensor_MPU6000: move _last_sample_time_micros to capture time data_interrupt was called
2012-09-10 11:38:08 +09:00
rmackay9
bd3eab7c0f
AP_InertialSensor: use AP_TimerProcess's queue_process to run read from MPU6000 after any currently running processes complete
2012-09-10 11:38:03 +09:00
rmackay9
3901387c8d
AP_InertialSensor: changed read of sensor from MPU6000 to happen immediately
...
This reduces the delay between when data arrives and when it is used
by up to 1ms.
Added num_samples_available method to all InertialSensors to allow
main loop timing to be synced with sensors.
2012-09-10 11:37:33 +09:00
rmackay9
67252c8a9b
AP_InertialSensor_MPU6000: bug fix. DMP was being enabled by default so although the results were not being used, this caused a delay in the main loop
2012-08-28 17:02:07 +09:00
uncrustify
3f0efe4570
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.h
2012-08-21 19:03:14 -07:00
uncrustify
91d52b6290
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Oilpan.h
2012-08-21 19:03:14 -07:00
uncrustify
c47127fb80
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Stub.h
2012-08-21 19:03:14 -07:00
uncrustify
c3de56ba94
uncrustify libraries/AP_InertialSensor/AP_InertialSensor.h
2012-08-21 19:03:14 -07:00
uncrustify
9d7ca3a876
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp
2012-08-21 19:03:14 -07:00
uncrustify
bc6d3811bc
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Oilpan.cpp
2012-08-21 19:03:14 -07:00
uncrustify
a946ed762b
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Stub.cpp
2012-08-21 19:03:14 -07:00
uncrustify
78f95e5cce
uncrustify libraries/AP_InertialSensor/examples/MPU6000/MPU6000.pde
2012-08-21 19:03:14 -07:00
Andrew Tridgell
0491188c03
MPU6000: fixed some build warnings
2012-08-09 16:19:21 +10:00
Andrew Tridgell
e9d0ae3e7f
AP_Param: update remaining libraries for new constructor syntax
2012-08-08 12:11:57 +10:00
rmackay9
23a1e33e20
AP_InertialSensor_MPU6000: another attempt at fixing the SITL build
2012-07-28 17:19:19 +09:00
rmackay9
06a4aaa763
AP_InertialSensor_MPU6000: changed DMP memory definition (dmpMem) to const uint8_t to remove SITL compile errors (hopefully)
...
Removed unused 'dump' variable from dmp_load_mem to reduce compiler warnings
2012-07-28 16:33:04 +09:00
rmackay9
ea4e56309d
AP_InertialSensor_Oilpan: changed initialisation order of parameters to remove compiler warning
2012-07-28 15:22:37 +09:00
rmackay9
dfea845c37
AP_InertialSensor: methods added to access DMP functionality
2012-07-28 14:14:43 +09:00
Jason Short
25c3ed6c4b
Oilpan ADC parameters added
...
including a function that configures each Accel Axis
Defaults matching old behavior
Added param group
2012-07-18 22:57:11 -07:00
Andrew Tridgell
02b9ea4dfe
MPU6k: removed an unused variable
2012-06-29 21:54:09 +10:00
Craig Elder
fe742f1c23
IMU: expose IMU_PRODUCT_ID as EEPROM Variable
...
this will allow us to log the Product ID in tlogs
2012-05-09 18:30:36 -07:00
Craig Elder
c323a71933
AP_InertialSensor: Return product ID from sensor initialization
...
this exposes the product ID to the IMU Layer
2012-05-09 18:30:36 -07:00
Craig Elder
b824a87b90
MPU6000: Fixed Scaling on Accelerometers Rev C vs Rev D
...
Rev C have non standard scaling factor that is 1/2 of the data sheet
Rev D chips conform to the specification
2012-05-09 18:30:35 -07:00
Andrew Tridgell
76a3fd9a4e
MPU6k: added suspend/resume on init
2012-05-01 12:06:54 +10:00
Andrew Tridgell
07e8360970
InertialSensor: fixed HIL build
2012-03-10 10:34:34 +11:00
Andrew Tridgell
f46fba54dc
AP_InertialSensor: added a get_gyro_drift_rate() interface
...
this returns the expected max drift rate for the particular type of
gyro being used
2012-03-10 10:34:33 +11:00
Andrew Tridgell
ff4f7ccc65
InertionSensor: update for new Ch6() interface
2012-03-10 10:34:32 +11:00
Andrew Tridgell
a052aa8435
AP_InertialSensor: added new_data_available() interface
2012-03-10 10:34:28 +11:00
Randy Mackay
98f3386ea0
Arduino 1.0 - changed all #includes of "WProgram.h", "wiring.h" and "WConstants.h to "Arduino.h".
...
Modified FastSerial's write function to return size_t (number of bytes written).
2012-01-28 12:25:47 +09:00
Andrew Tridgell
9ef1c421bd
MPU6k: don't init the Wire library
...
we don't use Wire any more
2011-12-28 20:41:53 +11:00
Andrew Tridgell
1cb8728a6b
MPU6000: protect the driver from double initialisation
...
initialising twice can lockup the driver
2011-12-28 16:00:48 +11:00
Andrew Tridgell
f2bbfb1296
MPU6000: minor fixes
...
the hardware functions should be private, and cs_pin should be uint8_t
2011-12-28 16:00:48 +11:00