Skip to content

Commit

Permalink
fix magnetometer
Browse files Browse the repository at this point in the history
  • Loading branch information
harlem88 committed Apr 6, 2016
1 parent b98ed6f commit 07a0203
Show file tree
Hide file tree
Showing 6 changed files with 83 additions and 28 deletions.
3 changes: 1 addition & 2 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

74 changes: 73 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,73 @@
# UDOOBluLib
# UDOOBluLib

Library for control Udoo Blu board (bluetooth low energy)
(http://http://www.udoo.org/wp-content/uploads/2014/12/logoogo.png)

# Usage

*For a working implementation of this project see the `example/`.*

1. Include the library as local library project or add the dependency in your build.gradle.
repositories {
maven {
url "http://dl.bintray.com/harlem88/maven"
}
}

...

dependencies {
compile 'org.udoo:udooblulib:0.1'
}

2. In your `onCreate` method in Application class, bind the `UdooBluManager`.

@Override
public void onCreate() {
super.onCreate();
mUdooBluManager = new UdooBluManager(this);

}

public UdooBluManager getBluManager(){
return mUdooBluManager;
}

3. Connect ble device:

mUdooBluManager.connect(address1, new IBleDeviceListener() {
@Override
public void onDeviceConnected() {
udooBluManager.discoveryServices(address1);
}

@Override
public void onServicesDiscoveryCompleted() {
lunchGloveFragment(address1, address2);
}

@Override
public void onDeviceDisconnect() {

}
});

4. Enable notification

udooBluManager.enableSensor(address1, UDOOBLESensor.ACCELEROMETER, true);
udooBluManager.setNotificationPeriod(address1, UDOOBLESensor.ACCELEROMETER);

5. Listen notification

udooBluManager.enableNotification(address1, true, UDOOBLESensor.ACCELEROMETER, new OnCharacteristicsListener() {
@Override
public void onCharacteristicsRead(String uuidStr, byte[] value, int status) {
}

@Override
public void onCharacteristicChanged(String uuidStr, byte[] rawValue) {
Point3D point3D = UDOOBLESensor.ACCELEROMETER.convert(rawValue);
if (point3D != null)
subscriber.onNext(point3D.toFloatArray());
}
});
2 changes: 1 addition & 1 deletion UDOOBluLib.iml → UDOOBluLibMaster.iml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id="UDOOBluLib" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<module external.linked.project.id="UDOOBluLibMaster" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="java-gradle" name="Java-Gradle">
<configuration>
Expand Down
19 changes: 3 additions & 16 deletions bluGloveCarExample/bluGloveCarExample.iml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id=":bluGloveCarExample" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="UDOOBluLib" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<module external.linked.project.id=":bluGloveCarExample" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="UDOOBluLibMaster" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="android-gradle" name="Android-Gradle">
<configuration>
Expand Down Expand Up @@ -77,12 +77,9 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/data-binding-info" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/data-binding-layout-out" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.databinding/adapters/1.0-rc5/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.databinding/library/1.0-rc5/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/animated-vector-drawable/23.2.1/jars" />
Expand All @@ -92,34 +89,24 @@
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-vector-drawable/23.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/io.reactivex/rxandroid/1.1.0/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
</content>
<orderEntry type="jdk" jdkName="Android API 23 Platform (1)" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" exported="" name="commons-io-2.4" level="project" />
<orderEntry type="library" exported="" name="compilerCommon-2.0.0-rc1" level="project" />
<orderEntry type="library" exported="" name="juniversalchardet-1.0.3" level="project" />
<orderEntry type="library" exported="" name="compilerCommon-2.0.0-rc1" level="project" />
<orderEntry type="library" exported="" name="antlr4-4.5" level="project" />
<orderEntry type="library" exported="" name="baseLibrary-2.0.0-rc1" level="project" />
<orderEntry type="library" exported="" name="antlr4-annotations-4.5" level="project" />
<orderEntry type="library" exported="" name="antlr4-runtime-4.5" level="project" />
<orderEntry type="library" exported="" name="antlr-runtime-3.5.2" level="project" />
<orderEntry type="library" exported="" name="org.abego.treelayout.core-1.0.1" level="project" />
<orderEntry type="library" exported="" name="support-annotations-24.0.0-alpha1" level="project" />
<orderEntry type="library" exported="" name="org.abego.treelayout.core-1.0.1" level="project" />
<orderEntry type="library" exported="" name="library-1.0-rc5" level="project" />
<orderEntry type="library" exported="" name="animated-vector-drawable-23.2.1" level="project" />
<orderEntry type="library" exported="" name="support-vector-drawable-23.2.1" level="project" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,9 @@ public Point3D convert(final byte[] value) {
@Override
public Point3D convert(final byte [] value) {
// Multiply x and y with -1 so that the values correspond with the image in the app
float x = (float) ((short) ((value[0] << 8) | (value[1] & 0xff))) / 6842;
float y = (float) ((short) ((value[2] << 8) | (value[3] & 0xff))) / 6842;
float z = (float) ((short) ((value[4] << 8) | (value[5] & 0xff))) / 6842;
float x = (float) ((short) ((value[1] << 8) | (value[0] & 0xff))) / 6842;
float y = (float) ((short) ((value[3] << 8) | (value[2] & 0xff))) / 6842;
float z = (float) ((short) ((value[5] << 8) | (value[4] & 0xff))) / 6842;

return new Point3D(x , y , z);
}
Expand Down
7 changes: 2 additions & 5 deletions udooblulib/udooblulib.iml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/docs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotations" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
Expand All @@ -98,9 +97,7 @@
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
<excludeFolder url="file://$MODULE_DIR$/build/libs" />
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
<excludeFolder url="file://$MODULE_DIR$/build/poms" />
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
</content>
<orderEntry type="jdk" jdkName="Android API 23 Platform (1)" jdkType="Android SDK" />
Expand All @@ -117,10 +114,10 @@
<orderEntry type="library" exported="" name="antlr4-runtime-4.5" level="project" />
<orderEntry type="library" exported="" name="antlr4-annotations-4.5" level="project" />
<orderEntry type="library" exported="" name="antlr-runtime-3.5.2" level="project" />
<orderEntry type="library" exported="" name="org.abego.treelayout.core-1.0.1" level="project" />
<orderEntry type="library" exported="" scope="TEST" name="hamcrest-core-1.3" level="project" />
<orderEntry type="library" exported="" name="ST4-4.0.8" level="project" />
<orderEntry type="library" exported="" name="org.abego.treelayout.core-1.0.1" level="project" />
<orderEntry type="library" exported="" name="support-v4-23.2.1" level="project" />
<orderEntry type="library" exported="" scope="TEST" name="hamcrest-core-1.3" level="project" />
<orderEntry type="library" exported="" name="commons-codec-1.10" level="project" />
<orderEntry type="library" exported="" name="library-1.0-rc5" level="project" />
<orderEntry type="library" exported="" scope="TEST" name="junit-4.12" level="project" />
Expand Down

0 comments on commit 07a0203

Please sign in to comment.