aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpx4dev <px4@purgatory.org>2012-12-23 11:25:15 -0800
committerpx4dev <px4@purgatory.org>2012-12-23 11:25:15 -0800
commitd5aa7631187d441084b637cd9543267eaf3a07db (patch)
tree7b255a48f45a5fa121a55a950d7135a2ed76fbf3
parentf40e4d13aa1c6cd854b848f1cd0c3a017e719138 (diff)
parenta8451a2d1873b1e242d55926a70dae0d65024bbe (diff)
downloadpx4-firmware-d5aa7631187d441084b637cd9543267eaf3a07db.tar.gz
px4-firmware-d5aa7631187d441084b637cd9543267eaf3a07db.tar.bz2
px4-firmware-d5aa7631187d441084b637cd9543267eaf3a07db.zip
Merge pull request #107 from PX4/gyros_parallel
Made MPU-6000 gyro optional
-rw-r--r--apps/drivers/mpu6000/mpu6000.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/apps/drivers/mpu6000/mpu6000.cpp b/apps/drivers/mpu6000/mpu6000.cpp
index ed79440cc..55b7cfa85 100644
--- a/apps/drivers/mpu6000/mpu6000.cpp
+++ b/apps/drivers/mpu6000/mpu6000.cpp
@@ -446,8 +446,12 @@ MPU6000::init()
// write_reg(MPUREG_PWR_MGMT_1,MPU_CLK_SEL_PLLGYROZ);
usleep(1000);
- /* do CDev init for the gyro device node */
- ret = _gyro->init();
+ /* do CDev init for the gyro device node, keep it optional */
+ int gyro_ret = _gyro->init();
+
+ if (gyro_ret != OK) {
+ _gyro_topic = -1;
+ }
return ret;
}
@@ -938,7 +942,9 @@ MPU6000::measure()
/* and publish for subscribers */
orb_publish(ORB_ID(sensor_accel), _accel_topic, &_accel_report);
- orb_publish(ORB_ID(sensor_gyro), _gyro_topic, &_gyro_report);
+ if (_gyro_topic != -1) {
+ orb_publish(ORB_ID(sensor_gyro), _gyro_topic, &_gyro_report);
+ }
/* stop measuring */
perf_end(_sample_perf);