Implemented first Hangar-Service

Dependencies:   CalibrateMagneto QuaternionMath

Fork of SML2 by TobyRich GmbH

Revision:
4:e759b8c756da
Child:
11:d21275e60ebb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Magnetometer.cpp	Fri Jan 23 13:00:46 2015 +0000
@@ -0,0 +1,16 @@
+#include "Magnetometer.h"
+#define DEBUG "BMX055-Mag"
+#include "Logger.h"
+
+Magnetometer::Magnetometer(I2C &i2c) : I2CPeripheral(i2c, 0x10 << 1 /* address */) {
+    write_reg(0x4B, 0x83); // softreset and powermode=suspend
+    wait_ms(3); // page 18
+    
+    const uint8_t chip_id = read_reg(0x40);
+    if (chip_id == 0x32) {
+        INFO("Bosch Sensortec BMX055-Magneto ready");
+    } else {
+        WARN("Bosch Sensortec BMX055-Magneto not found (chip ID=0x%02x, expected=0x32)", chip_id);
+    }
+}
+