|
|
|
@ -50,10 +50,10 @@ int sensor_loop() { |
|
|
|
|
|
|
|
|
|
// Sensor init
|
|
|
|
|
std::vector<std::pair<Sensor *, bool>> sensors_init; // Sensor, required
|
|
|
|
|
sensors_init.push_back({&bmx055_accel, true}); |
|
|
|
|
sensors_init.push_back({&bmx055_gyro, true}); |
|
|
|
|
sensors_init.push_back({&bmx055_magn, true}); |
|
|
|
|
sensors_init.push_back({&bmx055_temp, true}); |
|
|
|
|
sensors_init.push_back({&bmx055_accel, false}); |
|
|
|
|
sensors_init.push_back({&bmx055_gyro, false}); |
|
|
|
|
sensors_init.push_back({&bmx055_magn, false}); |
|
|
|
|
sensors_init.push_back({&bmx055_temp, false}); |
|
|
|
|
|
|
|
|
|
sensors_init.push_back({&lsm6ds3_accel, true}); |
|
|
|
|
sensors_init.push_back({&lsm6ds3_gyro, true}); |
|
|
|
@ -63,6 +63,7 @@ int sensor_loop() { |
|
|
|
|
|
|
|
|
|
sensors_init.push_back({&light, true}); |
|
|
|
|
|
|
|
|
|
bool has_magnetometer = false; |
|
|
|
|
|
|
|
|
|
// Initialize sensors
|
|
|
|
|
std::vector<Sensor *> sensors; |
|
|
|
@ -75,10 +76,18 @@ int sensor_loop() { |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if (sensor.first == &bmx055_magn || sensor.first == &mmc5603nj_magn) { |
|
|
|
|
has_magnetometer = true; |
|
|
|
|
} |
|
|
|
|
sensors.push_back(sensor.first); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (!has_magnetometer) { |
|
|
|
|
LOGE("No magnetometer present"); |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
PubMaster pm({"sensorEvents"}); |
|
|
|
|
|
|
|
|
|
while (!do_exit) { |
|
|
|
|