Forum >10 DOF Mems IMU Sensor Can't Initialize With Beetle BLE
ArduinoGeneral

10 DOF Mems IMU Sensor Can't Initialize With Beetle BLE

userHead Account cancelled 2020-03-18 17:40:12 2375 Views1 Replies
Product SKU: SEN0140
IDE: Arduino IDE v 1.8.12
Libraries:
- FreeSixIMU https://github.com/DFRobot/FreeSixIMU
- HMC5883 https://github.com/DFRobot/DFRobot_QMC5883.git
- BMP280 https://github.com/DFRobot/DFRobot_BMP280.git

Jumping straight into the problem, I am attempting to get any sort of output from the 10 DOF Mems IMU Sensor and have been following the tutorial on the docs (https://wiki.dfrobot.com/10_DOF_Mems_IM ... U__SEN0140).

I currently have the board wired up like this: https://imgur.com/a/lxMd4zP

I am using this code provided in the docs to run a simple test:
Code: Select all
#include <FreeSixIMU.h>
#include <FIMU_ADXL345.h>
#include <FIMU_ITG3200.h>
#include <Wire.h>
float angles[3]; // yaw pitch roll
// Set the FreeSixIMU object
FreeSixIMU sixDOF = FreeSixIMU();
void setup() {
Serial.begin(9600);
Wire.begin();
Serial.println("In setup");
Serial.println("About to delay");
delay(5);
Serial.println("Before sixDOF.init");
sixDOF.init(); //begin the IMU
Serial.println("Just began the IMU");
delay(5);
}
void loop() {
Serial.println("Before get angles");
sixDOF.getEuler(angles);
Serial.println("After get angles");
Serial.println(angles[0]);
Serial.println(angles[0]);
Serial.println(" | ");
Serial.println(angles[1]);
Serial.println(" | ");
Serial.println(angles[2]);
delay(100);
}
Using a few Serial.println statements, I noticed it gets hung up on line 20 (sixDOF.init(); //begin the IMU).
The Bluno Beetle was able to work with a test that simply printed hello world to the serial monitor in a loop, so I believe the problem is with the sensor. Does anyone have any way to fix this error or know of any other ways to debug the device?