GitHub - Razor-AHRS/razor-9dof-ahrs: AHRS Firmware for the SparkFun 9DOF Razor IMU and SparkFun 9DOF Sensor Stick (original) (raw)
Razor AHRS v1.4.2
9 Degree of Measurement Attitude and Heading Reference System for Sparkfun 9DOF Razor IMU (SEN-10125 and SEN-10736) and SparkFun 9DOF Sensor Stick (SEN-10183, SEN-10321 and SEN-10724)
Infos, updates, bug reports, contributions and feedback: https://github.com/ptrbrtz/razor-9dof-ahrs
Download
Clone the repository on GitHub or download as .zip.
Tutorial
You find a detailed tutorial in the Wiki.
Quick setup
Razor AHRS Firmware and Processing Test Sketch
Select your hardware in Arduino/Razor_AHRS/Razor_AHRS.ino under "USER SETUP AREA" / "HARDWARE OPTIONS". Upload the firmware using Arduino.
Run Processing/Razor_AHRS_test/Razor_AHRS_test.pde using Processing.
Optional: Mac OS X / Unix / Linux C++ Interface
Compile test program:
g++ Example.cpp RazorAHRS.cpp -Wall -D_REENTRANT -lpthread -o example
Run it:
Sorry, no Windows support. But you could try to compile using cygwin.
Optional: Android Interface
About Razor AHRS and Android Bluetooth: Bluetooth seems to be even more picky on Android than it is anyway. Be sure to have a look at the section about Android Bluetooth in the tutorial.
Compiling and running the test app: Open up your Android-ready Eclipse and import both projects using File → Import... → General → Existing Projects into Workspace with the root folder being Android/. Then build and run the test app from Eclipse.
Building your own app:
- Your app needs to target Android 2.0 (API Level 5) or later. The RazorAHRS Library Project has to be present in your Workspace. Add the library to your app under
Project Properties→Android→Library. - In case you want yaw/heading to reference "true north" and not just magnetic north, you can use the included
DeclinationHelperclass to find out about declination at your current position. - You have to specify these uses-permissions in the AndroidManifest.xml:
android.permission.BLUETOOTHandandroid.permission.BLUETOOTH_ADMIN - If you want to use the DeclinationHelper class you also need:
android.permission.ACCESS_FINE_LOCATIONandandroid.permission.ACCESS_COARSE_LOCATION
Donation
If the code and the tutorial helped you and you'd like to buy me a beer to say thanks, I'll be happy and say cheers!
PayPal: