Skip to content

Commit

Permalink
Merge pull request #45 from sparkfun/release-candidate
Browse files Browse the repository at this point in the history
Merging release candidate
  • Loading branch information
PaulZC authored Apr 29, 2020
2 parents aa2e207 + 405a434 commit 52bcc37
Show file tree
Hide file tree
Showing 20 changed files with 310 additions and 36 deletions.
2 changes: 1 addition & 1 deletion examples/Example10-PrintPacket/Example10-PrintPacket.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,15 +26,15 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Wire1.begin();

//The first argument is the I2C address of the sensor, either 0x4B (default) or 0x4A
//The second is the I2C port to use. Wire, Wire1, softWire, etc.
myIMU.begin(0x4A, Wire1);
myIMU.begin(0x4A, Wire1);

Wire1.setClock(400000); //Increase I2C data rate to 400kHz

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -23,7 +23,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
4 changes: 2 additions & 2 deletions examples/Example13-TimeStamp/Example13-TimeStamp.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,7 +26,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
4 changes: 2 additions & 2 deletions examples/Example14-TwoSensors/Example14-TwoSensors.ino
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -28,7 +28,7 @@ BNO080 myIMU2; //Closed I2C ADR jumper - goes to address 0x4A

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
6 changes: 3 additions & 3 deletions examples/Example15-RawReadings/Example15-RawReadings.ino
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -23,7 +23,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down Expand Up @@ -84,4 +84,4 @@ void loop()

Serial.println();
}
}
}
86 changes: 86 additions & 0 deletions examples/Example17-EulerAngles/Example17-EulerAngles.ino
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
/*
Using the BNO080 IMU
Example : Euler Angles
By: Paul Clark
Date: April 28th, 2020
Based on: Example1-RotationVector
By: Nathan Seidle
SparkFun Electronics
Date: December 21st, 2017
License: This code is public domain but you buy me a beer if you use this and we meet someday (Beerware license).
Feel like supporting our work? Buy a board from SparkFun!
https://www.sparkfun.com/products/14586
This example shows how to output the Euler angles: roll, pitch and yaw.
The yaw (compass heading) is tilt-compensated, which is nice.
https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles
https://github.com/sparkfun/SparkFun_MPU-9250-DMP_Arduino_Library/issues/5#issuecomment-306509440
It takes about 1ms at 400kHz I2C to read a record from the sensor, but we are polling the sensor continually
between updates from the sensor. Use the interrupt pin on the BNO080 breakout to avoid polling.
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>

#include "SparkFun_BNO080_Arduino_Library.h"
BNO080 myIMU;

void setup()
{
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Wire.begin();

//Are you using a ESP? Check this issue for more information: https://github.com/sparkfun/SparkFun_BNO080_Arduino_Library/issues/16
// //=================================
// delay(100); // Wait for BNO to boot
// // Start i2c and BNO080
// Wire.flush(); // Reset I2C
// IMU.begin(BNO080_DEFAULT_ADDRESS, Wire);
// Wire.begin(4, 5);
// Wire.setClockStretchLimit(4000);
// //=================================

if (myIMU.begin() == false)
{
Serial.println(F("BNO080 not detected at default I2C address. Check your jumpers and the hookup guide. Freezing..."));
while (1)
;
}

Wire.setClock(400000); //Increase I2C data rate to 400kHz

myIMU.enableRotationVector(50); //Send data update every 50ms

Serial.println(F("Rotation vector enabled"));
Serial.println(F("Output in form roll, pitch, yaw"));
}

void loop()
{
//Look for reports from the IMU
if (myIMU.dataAvailable() == true)
{
float roll = (myIMU.getRoll()) * 180.0 / PI; // Convert roll to degrees
float pitch = (myIMU.getPitch()) * 180.0 / PI; // Convert pitch to degrees
float yaw = (myIMU.getYaw()) * 180.0 / PI; // Convert yaw / heading to degrees

Serial.print(roll, 1);
Serial.print(F(","));
Serial.print(pitch, 1);
Serial.print(F(","));
Serial.print(yaw, 1);

Serial.println();
}
}
4 changes: 2 additions & 2 deletions examples/Example2-Accelerometer/Example2-Accelerometer.ino
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -23,7 +23,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
4 changes: 2 additions & 2 deletions examples/Example3-Gyro/Example3-Gyro.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,7 +26,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
4 changes: 2 additions & 2 deletions examples/Example4-Magnetometer/Example4-Magnetometer.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,7 +26,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
4 changes: 2 additions & 2 deletions examples/Example5-StepCounter/Example5-StepCounter.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,7 +26,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
4 changes: 2 additions & 2 deletions examples/Example6-MetaData/Example6-MetaData.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,7 +26,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Reading Metadata Example");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -27,7 +27,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -37,7 +37,7 @@ byte activityConfidences[9]; //This array will be filled with the confidence lev

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand All @@ -54,7 +54,7 @@ void setup()

//Send data update every 50ms, with sensor specific config word
//Pass in a pointer to our activityConfidences array as well
myIMU.enableActivityClassifier(50, enableActivities, activityConfidences);
myIMU.enableActivityClassifier(50, enableActivities, activityConfidences);

Serial.println(F("Activity Classifier enabled"));
}
Expand All @@ -66,7 +66,7 @@ void loop()
{
//getActivityClassifier will modify our activityConfidences array
//It will return the most likely activity as well.
byte mostLikelyActivity = myIMU.getActivityClassifier();
byte mostLikelyActivity = myIMU.getActivityClassifier();

Serial.print("Most likely activity: ");
printActivityName(mostLikelyActivity);
Expand Down
6 changes: 3 additions & 3 deletions examples/Example9-Calibrate/Example9-Calibrate.ino
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -26,7 +26,7 @@ BNO080 myIMU;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down Expand Up @@ -84,7 +84,7 @@ void loop()
{
Serial.println("Calibration data failed to store. Please try again.");
}

//myIMU.endCalibration(); //Turns off all calibration
//In general, calibration should be left on at all times. The BNO080
//auto-calibrates and auto-records cal data roughly every 5 minutes
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Hardware Connections:
Attach the Qwiic Shield to your Arduino/Photon/ESP32 or other
Plug the sensor onto the shield
Serial.print it out at 9600 baud to serial monitor.
Serial.print it out at 115200 baud to serial monitor.
*/

#include <Wire.h>
Expand All @@ -29,7 +29,7 @@ byte imuRSTPin = 7;

void setup()
{
Serial.begin(9600);
Serial.begin(115200);
Serial.println();
Serial.println("BNO080 Read Example");

Expand Down Expand Up @@ -63,4 +63,3 @@ void loop()
Serial.println();
}
}

Loading

0 comments on commit 52bcc37

Please sign in to comment.