Skip to content
This repository was archived by the owner on Jul 20, 2025. It is now read-only.

Commit d126c0c

Browse files
committed
Added fuser example script
1 parent bcdb325 commit d126c0c

File tree

3 files changed

+54
-2
lines changed

3 files changed

+54
-2
lines changed

examples/fuser.js

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
var MetaWear = require('../index.js')//require('metawear');
2+
var ref = require('ref')
3+
4+
async function mainAsync(mac) {
5+
var device = await new Promise((resolve, reject) => MetaWear.discoverByAddress(mac.toLowerCase(), d => resolve(d)))
6+
await new Promise((resolve, reject) => {
7+
device.connectAndSetUp(error => {
8+
if(error == null) resolve(null)
9+
else reject(error)
10+
})
11+
})
12+
13+
let acc = MetaWear.mbl_mw_acc_get_acceleration_data_signal(device.board)
14+
let gyro = MetaWear.mbl_mw_gyro_bmi160_get_rotation_data_signal(device.board)
15+
16+
let fuser = await new Promise((resolve, reject) => {
17+
//ArrayType(ref.refType(AnonymousDataSignal));
18+
console.log("creating fuser? ")
19+
console.log(acc)
20+
console.log(gyro)
21+
MetaWear.mbl_mw_dataprocessor_fuser_create(acc, new MetaWear.ArrayDataSignalP([gyro]), 1, ref.NULL, MetaWear.FnVoid_VoidP_DataProcessorP.toPointer((ctx, pointer) => {
22+
if (!pointer) {
23+
reject("Failed to create fuser")
24+
} else {
25+
resolve(pointer);
26+
}
27+
}))
28+
console.log("fuser created?")
29+
})
30+
31+
MetaWear.mbl_mw_datasignal_subscribe(fuser, ref.NULL, MetaWear.FnVoid_VoidP_DataP.toPointer((ctx, pointer) => {
32+
var data = pointer.deref();
33+
var values = data.parseValue({'nElem': 2});
34+
35+
let acc = values[0]
36+
let gyro = values[1]
37+
38+
console.log(`acc: (${acc.x},${acc.y},${acc.z}), gyro; (${gyro.x},${gyro.y},${gyro.z})`)
39+
}))
40+
41+
MetaWear.mbl_mw_gyro_bmi160_enable_rotation_sampling(device.board)
42+
MetaWear.mbl_mw_acc_enable_acceleration_sampling(device.board)
43+
44+
MetaWear.mbl_mw_gyro_bmi160_start(device.board)
45+
MetaWear.mbl_mw_acc_start(device.board)
46+
47+
process.openStdin().addListener("data", data => {
48+
MetaWear.mbl_mw_debug_reset(device.board)
49+
})
50+
}
51+
52+
mainAsync(process.argv[2])

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "metawear",
3-
"version": "0.2.0",
3+
"version": "0.3.0",
44
"author": "Stephen Schiffli <[email protected]>",
55
"license": "SEE LICENSE IN LICENSE",
66
"description": "Official JavaScript SDK for MetaWear",

0 commit comments

Comments
 (0)