|
|
|
@ -446,8 +446,13 @@ MPU6000::init()
@@ -446,8 +446,13 @@ 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) { |
|
|
|
|
::close(_gyro_topic); |
|
|
|
|
_gyro_topic = -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
@ -938,7 +943,9 @@ MPU6000::measure()
@@ -938,7 +943,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); |
|
|
|
|